Télécharger mrctrace.procedur

Retour à la liste

Numérotation des lignes :

  1. * MRCTRACE PROCEDUR AF221230 16/11/03 21:15:12 9139
  2. DEBPROC MRCTRACE TAB1*'TABLE' TOL1*'FLOTTANT';
  3. *
  4. * --------------------------------------------------------
  5. * Procedure MRCTRACE
  6. * Procedure pour imprimer les surface limites et/ou les enveloppe
  7. * des efforts statiques + sismiques selon le modele à trois couche
  8. * de MARTI (voir EFFMARTI)
  9. *
  10. * Develeppers:
  11. * Alberto FRAU
  12. * DEN/DANS/DM2S/SEMT/EMSI
  13. * Nicolas ILE
  14. * DEN/DANS/DM2S/SEMT/EMSI
  15. *
  16. * INPUT:
  17. *
  18. * En entree on utilise une table TAB1. Un indice de la table TAB1
  19. * indique si la definition de la surface limite doit etre faite pour
  20. * la couche extrene, interne ou intermediaire:
  21. * TAB1.'TYPE_COUCHE' MOT pour indiquer le type de couche
  22. * 'COUCHE_EXT' couche externe
  23. * 'COUCHE_INT' couche interne
  24. * 'COUCHE_COR' couche intermediaire
  25. *
  26. * 1er option: TAB1.'TYPE_COUCHE' = 'COUCHE_EXT' (couche externe)
  27. * ou TAB1.'TYPE_COUCHE' = 'COUCHE_INT' (couche interne)
  28. *
  29.  
  30. * TAB1.'NX' nombre de decoupage
  31. * pour la surface limite en direction 1
  32. * TAB1.'NY' nombre de decoupage
  33. * pour la surface limite en direction 2
  34. * TAB1.'FCK' resistance caracteristique beton
  35. * TAB1.'FSK_1' resistance caracteristique acier
  36. * direction 1
  37. * TAB1.'FSK_2' resistance caracteristique acier
  38. * direction 2
  39. * TAB1.'RHO_1_EXT' taux acier direction 1 couche exter
  40. * TAB1.'RHO_2_EXT' taux acier direction 2 couche exter
  41. * TAB1.'RHO_1_INT' taux acier direction 1 couche inter
  42. * TAB1.'RHO_2_INT' taux acier direction 2 couche inter
  43. * TAB1.'GAMMA_C' coeficient gamma_c
  44. * TAB1.'ALPA_C' coeficient alpha
  45. * TAB1.'NU_C' coeficient nu
  46. * TAB1.'GAMMA_S' coeficient gamma_s
  47. * TAB1.'EFFORT_STATIQUE' effort statique (optionelle)
  48. * TAB1.'EFFORT_SEISME' matrice caracteristique
  49. * seisme (optionelle)
  50. * TAB1.'ENROBAGE_EXT' enrobage externe (optionelle)
  51. * TAB1.'ENROBAGE_INT' enrobage interne (optionelle)
  52. *
  53. * OUTPUT:
  54. *
  55. * 1er option: TAB1.'TYPE_COUCHE' = 'COUCHE_EXT' (couche externe)
  56. * ou TAB1.'TYPE_COUCHE' = 'COUCHE_INT' (couche interne)
  57. *
  58. * TT1: table d'output
  59. * TT1.'LIMITE_E' Surface limite externe
  60. * TT1.'LIMITE_I' Surface limite interne
  61. * TT1.'ELLIPSOIDE_E' Enveloppe ellipsoide couche
  62. * externe (si present dans la
  63. * TAB1 les MCHML des efforts)
  64. * TT1.'ELLIPSOIDE_I' Enveloppe ellipsoide couche
  65. * interne (si present dans la
  66. * TAB1 les MCHML des efforts)
  67. * TT1.'RECTANGLE_E' Enveloppe rectangulaire couche
  68. * externe (si present dans la
  69. * TAB1 les MCHML des efforts)
  70. * TT1.'RECTANGLE_I' Enveloppe ellipsoide couche
  71. * interne (si present dans la
  72. * TAB1 les MCHML des efforts)
  73. *
  74. *
  75. * 2eme option: TAB1.'TYPE_COUCHE' = 'COUCHE_EXT' (couche externe)
  76. * ou TAB1.'TYPE_COUCHE' = 'COUCHE_INT' (couche interne)
  77. *
  78. * TT1: table d'output
  79. * TT1.'LIMITE_SHEAR' Surface limite couche
  80. * intermediaire
  81. * TT1.'ELLIPSOIDE_SHEAR' Enveloppe rectangulaire
  82. * couche intermediaire (si present
  83. * dans la TAB1 les MCHML
  84. * des efforts)
  85. * TT1.'RECTANGLE_SHEAR' Enveloppe rectangulaire
  86. * couche intermediaire (si present
  87. * dans la TAB1 les MCHML
  88. * des efforts)
  89. *
  90. * --------------------------------------------------------
  91. *
  92. * Type of surface
  93. 'SI' ('EXIST' TAB1 'TYPE_COUCHE');
  94. TPY1 = TAB1.'TYPE_COUCHE';
  95. 'SI' ('NEG' ('TYPE' TPY1) 'MOT');
  96. 'MESS' 'Input Error ...';
  97. 'QUIT' MRCTRACE;
  98. 'FINSI';
  99. 'SINON';
  100. 'MESS' 'Input Error ...';
  101. 'QUIT' MRCTRACE;
  102. 'FINSI';
  103. *
  104. *
  105. 'SI' (('EGA' TPY1 'COUCHE_INT') 'OU' ('EGA' TPY1 'COUCHE_EXT'));
  106. *
  107. * -------------- Couche externe et interne ---------------------
  108. *
  109. * controle
  110. 'SI' ('EXIST' TAB1 'NX');
  111. NX1 = TAB1.'NX';
  112. 'SI' ('NEG' ('TYPE' NX1) 'ENTIER');
  113. 'MESS' 'Input Error ...';
  114. 'QUIT' MRCTRACE;
  115. 'FINSI';
  116. 'SINON';
  117. 'MESS' 'Input Error ...';
  118. 'QUIT' MRCTRACE;
  119. 'FINSI';
  120. 'SI' ('EXIST' TAB1 'NY');
  121. NY1 = TAB1.'NY';
  122. 'SI' ('NEG' ('TYPE' NY1) 'ENTIER');
  123. 'MESS' 'Input Error ...';
  124. 'QUIT' MRCTRACE;
  125. 'FINSI';
  126. 'SINON';
  127. 'MESS' 'Input Error ...';
  128. 'QUIT' MRCTRACE;
  129. 'FINSI';
  130. 'SI' ('EXIST' TAB1 'FCK');
  131. FC1 = TAB1.'FCK';
  132. 'SI' ('NEG' ('TYPE' FC1) 'FLOTTANT');
  133. 'MESS' 'Input Error ...';
  134. 'QUIT' MRCTRACE;
  135. 'FINSI';
  136. 'SINON';
  137. 'MESS' 'Input Error ...';
  138. 'QUIT' MRCTRACE;
  139. 'FINSI';
  140. 'SI' ('EXIST' TAB1 'FSK_1');
  141. FSX = TAB1.'FSK_1';
  142. 'SI' ('NEG' ('TYPE' FSX) 'FLOTTANT');
  143. 'MESS' 'Input Error ...';
  144. 'QUIT' MRCTRACE;
  145. 'FINSI';
  146. 'SINON';
  147. 'MESS' 'Input Error ...';
  148. 'QUIT' MRCTRACE;
  149. 'FINSI';
  150. 'SI' ('EXIST' TAB1 'FSK_2');
  151. FSY = TAB1.'FSK_2';
  152. 'SI' ('NEG' ('TYPE' FSY) 'FLOTTANT');
  153. 'MESS' 'Input Error ...';
  154. 'QUIT' MRCTRACE;
  155. 'FINSI';
  156. 'SINON';
  157. 'MESS' 'Input Error ...';
  158. 'QUIT' MRCTRACE;
  159. 'FINSI';
  160. 'SI' ('EXIST' TAB1 'RHO_1_EXT');
  161. RSXE = TAB1.'RHO_1_EXT';
  162. 'SI' ('NEG' ('TYPE' RSXE) 'FLOTTANT');
  163. 'MESS' 'Input Error ...';
  164. 'QUIT' MRCTRACE;
  165. 'FINSI';
  166. 'SINON';
  167. 'MESS' 'Input Error ...';
  168. 'QUIT' MRCTRACE;
  169. 'FINSI';
  170. 'SI' ('EXIST' TAB1 'RHO_2_EXT');
  171. RSYE = TAB1.'RHO_2_EXT';
  172. 'SI' ('NEG' ('TYPE' RSYE) 'FLOTTANT');
  173. 'MESS' 'Input Error ...';
  174. 'QUIT' MRCTRACE;
  175. 'FINSI';
  176. 'SINON';
  177. 'MESS' 'Input Error ...';
  178. 'QUIT' MRCTRACE;
  179. 'FINSI';
  180. 'SI' ('EXIST' TAB1 'RHO_1_INT');
  181. RSXI = TAB1.'RHO_1_INT';
  182. 'SI' ('NEG' ('TYPE' RSXI) 'FLOTTANT');
  183. 'MESS' 'Input Error ...';
  184. 'QUIT' MRCTRACE;
  185. 'FINSI';
  186. 'SINON';
  187. 'MESS' 'Input Error ...';
  188. 'QUIT' MRCTRACE;
  189. 'FINSI';
  190. 'SI' ('EXIST' TAB1 'RHO_2_INT');
  191. RSYI = TAB1.'RHO_2_INT';
  192. 'SI' ('NEG' ('TYPE' RSYI) 'FLOTTANT');
  193. 'MESS' 'Input Error ...';
  194. 'QUIT' MRCTRACE;
  195. 'FINSI';
  196. 'SINON';
  197. 'MESS' 'Input Error ...';
  198. 'QUIT' MRCTRACE;
  199. 'FINSI';
  200. 'SI' ('EXIST' TAB1 'GAMMA_C');
  201. GAMC = TAB1.'GAMMA_C';
  202. 'SI' ('NEG' ('TYPE' GAMC) 'FLOTTANT');
  203. 'MESS' 'Input Error ...';
  204. 'QUIT' MRCTRACE;
  205. 'FINSI';
  206. 'SINON';
  207. 'MESS' 'Input Error ...';
  208. 'QUIT' MRCTRACE;
  209. 'FINSI';
  210. 'SI' ('EXIST' TAB1 'ALPA_C');
  211. ALP1 = TAB1.'ALPA_C';
  212. 'SI' ('NEG' ('TYPE' ALP1) 'FLOTTANT');
  213. 'MESS' 'Input Error ...';
  214. 'QUIT' MRCTRACE;
  215. 'FINSI';
  216. 'SINON';
  217. 'MESS' 'Input Error ...';
  218. 'QUIT' MRCTRACE;
  219. 'FINSI';
  220. 'SI' ('EXIST' TAB1 'NU_C');
  221. NU1 = TAB1.'NU_C';
  222. 'SI' ('NEG' ('TYPE' NU1) 'FLOTTANT');
  223. 'MESS' 'Input Error ...';
  224. 'QUIT' MRCTRACE;
  225. 'FINSI';
  226. 'SINON';
  227. 'MESS' 'Input Error ...';
  228. 'QUIT' MRCTRACE;
  229. 'FINSI';
  230. 'SI' ('EXIST' TAB1 'GAMMA_S');
  231. GAMS = TAB1.'GAMMA_S';
  232. 'SI' ('NEG' ('TYPE' GAMS) 'FLOTTANT');
  233. 'MESS' 'Input Error ...';
  234. 'QUIT' MRCTRACE;
  235. 'FINSI';
  236. 'SINON';
  237. 'MESS' 'Input Error ...';
  238. 'QUIT' MRCTRACE;
  239. 'FINSI';
  240. *
  241. *
  242. * Normalisation
  243. CC1 = ENTI(FC1/100000);
  244. SI (CC1 > 1);
  245. FC1 = FC1/100000;
  246. FSX = FSX/100000;
  247. FSY = FSY/100000;
  248. FINSI;
  249. *
  250. * initialisation des tables pour la procedure g_ulti2D
  251. TBL1 = TABLE;
  252. TBL1.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_EXT';
  253. TBL1.'S11' = 0.0;
  254. TBL1.'S22' = 0.0;
  255. TBL1.'S12' = 0.0;
  256. TBL1.'FCK' = FC1;
  257. TBL1.'FSK_1' = FSX;
  258. TBL1.'FSK_2' = FSY;
  259. TBL1.'RHO_1' = RSXE;
  260. TBL1.'RHO_2' = RSYE;
  261. TBL1.'GAMMA_C' = GAMC;
  262. TBL1.'ALPA_C' = ALP1;
  263. TBL1.'NU_C' = NU1;
  264. TBL1.'GAMMA_S' = GAMS;
  265. *
  266. TBL2 = TABLE;
  267. TBL2.'TYPE_COUCHE' = 'CHAINE' 'COUCHE_INT';
  268. TBL2.'S11' = 0.0;
  269. TBL2.'S22' = 0.0;
  270. TBL2.'S12' = 0.0;
  271. TBL2.'FCK' = FC1;
  272. TBL2.'FSK_1' = FSX;
  273. TBL2.'FSK_2' = FSY;
  274. TBL2.'RHO_1' = RSXI;
  275. TBL2.'RHO_2' = RSYI;
  276. TBL2.'GAMMA_C' = GAMC;
  277. TBL2.'ALPA_C' = ALP1;
  278. TBL2.'NU_C' = NU1;
  279. TBL2.'GAMMA_S' = GAMS;
  280. * Determination of resistances (Steel and concrete)
  281. *
  282. FXSE = ((FSX)*(RSXE))/(GAMS);
  283. FYSE = ((FSY)*(RSYE))/(GAMS);
  284. FXSI = ((FSX)*(RSXI))/(GAMS);
  285. FYSI = ((FSY)*(RSYI))/(GAMS);
  286. FC = ((ALP1)*((FC1)/(GAMC)));
  287. FC = FC*NU1;
  288. *
  289. * Determination du domain Sig11 et Sig22
  290. XMIN1E = ((-1.0)*(FC + FXSE));
  291. XMAX1E = ((1.0)*(FXSE));
  292. DX1E = ((XMAX1E - XMIN1E)/(NX1));
  293. L_XE = 'PROG' XMIN1E 'PAS' DX1E XMAX1E;
  294. *
  295. YMIN1E = ((-1.0)*(FC + FYSE));
  296. YMAX1E = ((1.0)*(FYSE));
  297. DY1E = ((YMAX1E - YMIN1E)/(NY1));
  298. L_YE = 'PROG' YMIN1E 'PAS' DY1E YMAX1E;
  299. *
  300. XMIN1I = ((-1.0)*(FC + FXSI));
  301. XMAX1I = ((1.0)*(FXSI));
  302. DX1I = ((XMAX1I - XMIN1I)/(NX1));
  303. L_XI = 'PROG' XMIN1I 'PAS' DX1I XMAX1I;
  304. *
  305. YMIN1I = ((-1.0)*(FC + FYSI));
  306. YMAX1I = ((1.0)*(FYSI));
  307. DY1I = ((YMAX1I - YMIN1I)/(NY1));
  308. L_YI = 'PROG' YMIN1I 'PAS' DY1I YMAX1I;
  309. *
  310. *
  311. * Initialing void mesh element
  312. MAI1E = VIDE 'MAILLAGE';
  313. MAI1I = VIDE 'MAILLAGE';
  314. *
  315. * indicators ii and jj for the mesh creation
  316. II1 = 1;
  317. JJ1 = 2;
  318. I = 1;
  319. *
  320. * loop on all elements that composed the upper (or lower)
  321. * limit surface
  322. 'REPE' IND1 (NX1*NY1);
  323. *
  324. * Point 1
  325. X1E = 'EXTR' L_XE (II1);
  326. Y1E = 'EXTR' L_YE (JJ1 - 1);
  327. Z1E = 0.0;
  328. TBL1.'S11' = X1E;
  329. TBL1.'S22' = Y1E;
  330. TBL1.'S12' = Z1E;
  331. VAL1 = G_ULTI2D TBL1;
  332. 'SI' (('ABS'(VAL1)) '>' TOL1);
  333. Z1E = ((VAL1)**(0.5));
  334. 'FINSI';
  335. X1I = 'EXTR' L_XI (II1);
  336. Y1I = 'EXTR' L_YI (JJ1 - 1);
  337. Z1I = 0.0;
  338. TBL2.'S11' = X1I;
  339. TBL2.'S22' = Y1I;
  340. TBL2.'S12' = Z1I;
  341. VAL1 = G_ULTI2D TBL2;
  342. 'SI' (('ABS'(VAL1)) '>' TOL1);
  343. Z1I = ((VAL1)**(0.5));
  344. 'FINSI';
  345. *
  346. * Point 2
  347. X2E = 'EXTR' L_XE (II1 + 1);
  348. Y2E = 'EXTR' L_YE (JJ1 - 1);
  349. Z2E = 0.0;
  350. TBL1.'S11' = X2E;
  351. TBL1.'S22' = Y2E;
  352. TBL1.'S12' = Z2E;
  353. VAL2 = G_ULTI2D TBL1;
  354. 'SI' (('ABS'(VAL2)) '>' TOL1);
  355. Z2E = ((VAL2)**(0.5));
  356. 'FINSI';
  357. *
  358. X2I = 'EXTR' L_XI (II1 + 1);
  359. Y2I = 'EXTR' L_YI (JJ1 - 1);
  360. Z2I = 0.0;
  361. TBL2.'S11' = X2I;
  362. TBL2.'S22' = Y2I;
  363. TBL2.'S12' = Z2I;
  364. VAL2 = G_ULTI2D TBL2;
  365. 'SI' (('ABS'(VAL2)) '>' TOL1);
  366. Z2I = ((VAL2)**(0.5));
  367. 'FINSI';
  368. *
  369. * Point 3
  370. X3E = 'EXTR' L_XE (II1 + 1);
  371. Y3E = 'EXTR' L_YE (JJ1);
  372. Z3E = 0.0;
  373. TBL1.'S11' = X3E;
  374. TBL1.'S22' = Y3E;
  375. TBL1.'S12' = Z3E;
  376. VAL3 = G_ULTI2D TBL1;
  377. 'SI' (('ABS'(VAL3)) '>' TOL1);
  378. Z3E = ((VAL3)**(0.5));
  379. 'FINSI';
  380. X3I = 'EXTR' L_XI (II1 + 1);
  381. Y3I = 'EXTR' L_YI (JJ1);
  382. Z3I = 0.0;
  383. TBL2.'S11' = X3I;
  384. TBL2.'S22' = Y3I;
  385. TBL2.'S12' = Z3I;
  386. VAL3 = G_ULTI2D TBL2;
  387. 'SI' (('ABS'(VAL3)) '>' TOL1);
  388. Z3I = ((VAL3)**(0.5));
  389. 'FINSI';
  390. *
  391. * Point 4
  392. X4E = 'EXTR' L_XE (II1);
  393. Y4E = 'EXTR' L_YE (JJ1);
  394. Z4E = 0.0;
  395. TBL1.'S11' = X4E;
  396. TBL1.'S22' = Y4E;
  397. TBL1.'S12' = Z4E;
  398. VAL4 = G_ULTI2D TBL1;
  399. 'SI' (('ABS'(VAL4)) '>' TOL1);
  400. Z4E = ((VAL4)**(0.5));
  401. 'FINSI';
  402. X4I = 'EXTR' L_XI (II1);
  403. Y4I = 'EXTR' L_YI (JJ1);
  404. Z4I = 0.0;
  405. TBL2.'S11' = X4I;
  406. TBL2.'S22' = Y4I;
  407. TBL2.'S12' = Z4I;
  408. VAL4 = G_ULTI2D TBL2;
  409. 'SI' (('ABS'(VAL4)) '>' TOL1);
  410. Z4I = ((VAL4)**(0.5));
  411. 'FINSI';
  412. *
  413. * Creation of points for the upper surface element
  414. P1ES = X1E Y1E ((1.0)*(Z1E));
  415. P2ES = X2E Y2E ((1.0)*(Z2E));
  416. P3ES = X3E Y3E ((1.0)*(Z3E));
  417. P4ES = X4E Y4E ((1.0)*(Z4E));
  418. P1IS = X1I Y1I ((1.0)*(Z1I));
  419. P2IS = X2I Y2I ((1.0)*(Z2I));
  420. P3IS = X3I Y3I ((1.0)*(Z3I));
  421. P4IS = X4I Y4I ((1.0)*(Z4I));
  422. *
  423. * Creation of points for the lower surface element
  424. P1EI = X1E Y1E ((-1.0)*(Z1E));
  425. P2EI = X2E Y2E ((-1.0)*(Z2E));
  426. P3EI = X3E Y3E ((-1.0)*(Z3E));
  427. P4EI = X4E Y4E ((-1.0)*(Z4E));
  428. P1II = X1I Y1I ((-1.0)*(Z1I));
  429. P2II = X2I Y2I ((-1.0)*(Z2I));
  430. P3II = X3I Y3I ((-1.0)*(Z3I));
  431. P4II = X4I Y4I ((-1.0)*(Z4I));
  432. *
  433. * Creation of lines for the upper surface element
  434. OPTI ELEM SEG2;
  435. L1ES = 'DROIT' 1 P1ES P2ES;
  436. L2ES = 'DROIT' 1 P2ES P3ES;
  437. L3ES = 'DROIT' 1 P3ES P4ES;
  438. L4ES = 'DROIT' 1 P4ES P1ES;
  439. L1IS = 'DROIT' 1 P1IS P2IS;
  440. L2IS = 'DROIT' 1 P2IS P3IS;
  441. L3IS = 'DROIT' 1 P3IS P4IS;
  442. L4IS = 'DROIT' 1 P4IS P1IS;
  443. *
  444. * Creation of lines for the lower surface element
  445. L1EI = 'DROIT' 1 P1EI P2EI;
  446. L2EI = 'DROIT' 1 P2EI P3EI;
  447. L3EI = 'DROIT' 1 P3EI P4EI;
  448. L4EI = 'DROIT' 1 P4EI P1EI;
  449. L1II = 'DROIT' 1 P1II P2II;
  450. L2II = 'DROIT' 1 P2II P3II;
  451. L3II = 'DROIT' 1 P3II P4II;
  452. L4II = 'DROIT' 1 P4II P1II;
  453. *
  454. * Creation of the upper and lower surface element
  455. 'OPTI' 'ELEM' QUA4;
  456. ELEES = DALL L1ES L2ES L3ES L4ES;
  457. ELEEI = DALL L1EI L2EI L3EI L4EI;
  458. ELEIS = DALL L1IS L2IS L3IS L4IS;
  459. ELEII = DALL L1II L2II L3II L4II;
  460. *
  461. * Assembling the limit surfaces
  462. MAI1E = MAI1E ET ELEES ET ELEEI;
  463. MAI1I = MAI1I ET ELEIS ET ELEII;
  464. 'OUBL' ELES;
  465. 'OUBL' ELEI;
  466. 'OUBL' L1S;
  467. 'OUBL' L2S;
  468. 'OUBL' L3S;
  469. 'OUBL' L4S;
  470. 'OUBL' L1I;
  471. 'OUBL' L2I;
  472. 'OUBL' L3I;
  473. 'OUBL' L4I;
  474. 'OUBL' P1S;
  475. 'OUBL' P2S;
  476. 'OUBL' P3S;
  477. 'OUBL' P4S;
  478. 'OUBL' P1I;
  479. 'OUBL' P2I;
  480. 'OUBL' P3I;
  481. 'OUBL' P4I;
  482. *
  483. * Updating the index ii and jj
  484. 'SI' (II1 'EGA' NX1);
  485. II1 = 1;
  486. JJ1 = JJ1 + 1;
  487. 'SINON';
  488. II1 = II1 + 1;
  489. 'FINSI';
  490. I = I + 1;
  491. 'FIN' IND1;
  492. *
  493. * erasing the double points
  494. ELIM 0.001 MAI1E;
  495. ELIM 0.001 MAI1I;
  496. *
  497. TT1 = 'TABLE';
  498. TT1.'LIMITE_E' = MAI1E;
  499. TT1.'LIMITE_I' = MAI1I;
  500. *
  501. *
  502. * tracer l'enveloppe (optionelle)
  503. *
  504. * Control
  505. 'SI' ('EXIST' TAB1 'EFFORT_SEISME');
  506. CHL1 = TAB1.'EFFORT_SEISME';
  507. 'SI' ('NEG' ('TYPE' CHL1) 'MCHAML');
  508. 'MESS' 'Input Error ...';
  509. 'QUIT' MRCTRACE;
  510. 'FINSI';
  511. 'FINSI';
  512. 'SI' ('EXIST' TAB1 'EFFORT_STATIQUE');
  513. CHL2 = TAB1.'EFFORT_STATIQUE';
  514. 'SI' ('NEG' ('TYPE' CHL2) 'MCHAML');
  515. 'MESS' 'Input Error ...';
  516. 'QUIT' MRCTRACE;
  517. 'FINSI';
  518. 'FINSI';
  519. 'SI' ('EXIST' TAB1 'ENROBAGE_EXT');
  520. ENR1E = TAB1.'ENROBAGE_EXT';
  521. 'SI' ('NEG' ('TYPE' ENR1E) 'FLOTTANT');
  522. 'MESS' 'Input Error ...';
  523. 'QUIT' MRCTRACE;
  524. 'FINSI';
  525. 'FINSI';
  526. 'SI' ('EXIST' TAB1 'ENROBAGE_INT');
  527. ENR1I = TAB1.'ENROBAGE_INT';
  528. 'SI' ('NEG' ('TYPE' ENR1I) 'FLOTTANT');
  529. 'MESS' 'Input Error ...';
  530. 'QUIT' MRCTRACE;
  531. 'FINSI';
  532. 'FINSI';
  533. *
  534. 'SI' ('EGA' ('TYPE' (CHL1)) 'MCHAML');
  535. *
  536. * extraire les contraintes selon le modele de MARTI (statiques)
  537. N110E = 'EXTR' CHL2 'N11E' 1 1 1;
  538. N220E = 'EXTR' CHL2 'N22E' 1 1 1;
  539. N120E = 'EXTR' CHL2 'N12E' 1 1 1;
  540. N110I = 'EXTR' CHL2 'N11I' 1 1 1;
  541. N220I = 'EXTR' CHL2 'N22I' 1 1 1;
  542. N120I = 'EXTR' CHL2 'N12I' 1 1 1;
  543. *
  544. * extraire les contraintes selon le modele de MARTI (sismiques)
  545. * plus covariances
  546. N11N11E = 'EXTR' CHL1 'C11E' 1 1 1;
  547. N22N22E = 'EXTR' CHL1 'C22E' 1 1 1;
  548. N12N12E = 'EXTR' CHL1 'C33E' 1 1 1;
  549. N11N22E = 'EXTR' CHL1 'C12E' 1 1 1;
  550. N11N12E = 'EXTR' CHL1 'C13E' 1 1 1;
  551. N22N12E = 'EXTR' CHL1 'C23E' 1 1 1;
  552. N11N11I = 'EXTR' CHL1 'C11I' 1 1 1;
  553. N22N22I = 'EXTR' CHL1 'C22I' 1 1 1;
  554. N12N12I = 'EXTR' CHL1 'C33I' 1 1 1;
  555. N11N22I = 'EXTR' CHL1 'C12I' 1 1 1;
  556. N11N12I = 'EXTR' CHL1 'C13I' 1 1 1;
  557. N22N12I = 'EXTR' CHL1 'C23I' 1 1 1;
  558. *
  559. * calcul des contraintes (statiques)
  560. N110E = ((N110E)/((2.0)*(ENR1E)));
  561. N220E = ((N220E)/((2.0)*(ENR1E)));
  562. N120E = ((N120E)/((2.0)*(ENR1E)));
  563. N110I = ((N110I)/((2.0)*(ENR1I)));
  564. N220I = ((N220I)/((2.0)*(ENR1I)));
  565. N120I = ((N120I)/((2.0)*(ENR1I)));
  566. *
  567. * calcul des contraintes (sismique)
  568. N11N11E = ((N11N11E)/(((2.0)*(ENR1E))**(2)));
  569. N22N22E = ((N22N22E)/(((2.0)*(ENR1E))**(2)));
  570. N12N12E = ((N12N12E)/(((2.0)*(ENR1E))**(2)));
  571. N11N22E = ((N11N22E)/(((2.0)*(ENR1E))**(2)));
  572. N11N12E = ((N11N12E)/(((2.0)*(ENR1E))**(2)));
  573. N22N12E = ((N22N12E)/(((2.0)*(ENR1E))**(2)));
  574. N11N11I = ((N11N11I)/(((2.0)*(ENR1I))**(2)));
  575. N22N22I = ((N22N22I)/(((2.0)*(ENR1I))**(2)));
  576. N12N12I = ((N12N12I)/(((2.0)*(ENR1I))**(2)));
  577. N11N22I = ((N11N22I)/(((2.0)*(ENR1I))**(2)));
  578. N11N12I = ((N11N12I)/(((2.0)*(ENR1I))**(2)));
  579. N22N12I = ((N22N12I)/(((2.0)*(ENR1I))**(2)));
  580. *
  581. * scaling
  582. * CC1 = ENTI(FC1/100000);
  583. SI (CC1 > 1);
  584. N110E = N110E/100000;
  585. N220E = N220E/100000;
  586. N120E = N120E/100000;
  587. N110I = N110I/100000;
  588. N220I = N220I/100000;
  589. N120I = N120I/100000;
  590. *
  591. N11N11E = ((N11N11E)/((100000)**(2.0)));
  592. N22N22E = ((N22N22E)/((100000)**(2.0)));
  593. N12N12E = ((N12N12E)/((100000)**(2.0)));
  594. N11N22E = ((N11N22E)/((100000)**(2.0)));
  595. N11N12E = ((N11N12E)/((100000)**(2.0)));
  596. N22N12E = ((N22N12E)/((100000)**(2.0)));
  597. N11N11I = ((N11N11I)/((100000)**(2.0)));
  598. N22N22I = ((N22N22I)/((100000)**(2.0)));
  599. N12N12I = ((N12N12I)/((100000)**(2.0)));
  600. N11N22I = ((N11N22I)/((100000)**(2.0)));
  601. N11N12I = ((N11N12I)/((100000)**(2.0)));
  602. N22N12I = ((N22N12I)/((100000)**(2.0)));
  603. FINSI;
  604. * calcul des valeurs et vecteurs propres
  605. MAI1 = 0. 0. 0.;
  606. *
  607. MATXE = 'VIDE' 'RIGIDITE'/'RIGIDITE';
  608. MATXE = MATXE 'ET' ('MANU' 'RIGIDITE' MAI1 ('MOTS' 'UX' 'UY' 'UZ')
  609. ('PROG' N11N11E N11N22E N11N12E
  610. N11N22E N22N22E N22N12E
  611. N11N12E N22N12E N12N12E));
  612. MATXI = 'VIDE' 'RIGIDITE'/'RIGIDITE';
  613. MATXI = MATXI 'ET' ('MANU' 'RIGIDITE' MAI1 ('MOTS' 'UX' 'UY' 'UZ')
  614. ('PROG' N11N11I N11N22I N11N12I
  615. N11N22I N22N22I N22N12I
  616. N11N12I N22N12I N12N12I));
  617.  
  618. NORMATXE =
  619. (((N11N11E)**(2.0)) + ((N11N22E)**(2.0)) + ((N11N12E)**(2.0)) +
  620. ((N11N22E)**(2.0)) + ((N22N22E)**(2.0)) + ((N22N12E)**(2.0)) +
  621. ((N11N12E)**(2.0)) + ((N22N12E)**(2.0)) + ((N12N12E)**(2.0)))
  622. **(0.5);
  623. NORMATXI =
  624. (((N11N11I)**(2.0)) + ((N11N22I)**(2.0)) + ((N11N12I)**(2.0)) +
  625. ((N11N22I)**(2.0)) + ((N22N22I)**(2.0)) + ((N22N12I)**(2.0)) +
  626. ((N11N12I)**(2.0)) + ((N22N12I)**(2.0)) + ((N12N12I)**(2.0)))
  627. **(0.5);
  628. 'SI' (NORMATXE 'EGA' 0.0);
  629. NORMATXE = 1.0;
  630. 'FINSI';
  631. 'SI' (NORMATXI 'EGA' 0.0);
  632. NORMATXI = 1.0;
  633. 'FINSI';
  634. *
  635. XIDE1 = ('MASS' 'UX' MAI1 1.0) 'ET' (MASS 'UY' MAI1 1.0)
  636. 'ET' ('MASS' 'UZ' MAI1 1.0);
  637. *
  638. EIGE = 'VIBR' 'INTERVALLE' 0. 20000. 'BASSE' 3 (MATXE/NORMATXE)
  639. XIDE1 'IMPR' 'TBAS' 'MULT';
  640. EIGI = 'VIBR' 'INTERVALLE' 0. 20000. 'BASSE' 3 (MATXI/NORMATXI)
  641. XIDE1 'IMPR' 'TBAS' 'MULT';
  642. *
  643. 'SI' ('EXIST' (EIGE.MODES) 1);
  644. LAM1E = ((EIGE.MODES. 1 .FREQUENCE)*((2.0)*(PI)))**(2.0);
  645. NORVEC1E =
  646. ((('EXTR' (EIGE.MODES. 1 .DEFORMEE_MODALE) MAI1 'UX')**(2))
  647. + (('EXTR' (EIGE.MODES. 1 .DEFORMEE_MODALE) MAI1 'UY')**(2))
  648. + (('EXTR' (EIGE.MODES. 1 .DEFORMEE_MODALE) MAI1 'UZ')**(2)))
  649. **(0.5);
  650. VECT1E = (EIGE.MODES. 1 .DEFORMEE_MODALE)/(NORVEC1E);
  651. 'SINON';
  652. LAM1E = 0.0;
  653. NORVEC1E = 0.0;
  654. VECT1E = MANU CHPO MAI1 3 'UX' 0.0 'UY' 0.0 'UZ' 0.0;
  655. 'FINSI';
  656. 'SI' ('EXIST' (EIGE.MODES) 2);
  657. LAM2E = ((EIGE.MODES. 2 .FREQUENCE)*((2.0)*(PI)))**(2.0);
  658. NORVEC2E =
  659. ((('EXTR' (EIGE.MODES. 2 .DEFORMEE_MODALE) MAI1 'UX')**(2))
  660. + (('EXTR' (EIGE.MODES. 2 .DEFORMEE_MODALE) MAI1 'UY')**(2))
  661. + (('EXTR' (EIGE.MODES. 2 .DEFORMEE_MODALE) MAI1 'UZ')**(2)))
  662. **(0.5);
  663. VECT2E = (EIGE.MODES. 2 .DEFORMEE_MODALE)/(NORVEC2E);
  664. 'SINON';
  665. LAM2E = 0.0;
  666. NORVEC2E = 0.0;
  667. VECT2E = MANU CHPO MAI1 3 'UX' 0.0 'UY' 0.0 'UZ' 0.0;
  668. 'FINSI';
  669. 'SI' ('EXIST' (EIGE.MODES) 3);
  670. LAM3E = ((EIGE.MODES. 3 .FREQUENCE)*((2.0)*(PI)))**(2.0);
  671. NORVEC3E =
  672. ((('EXTR' (EIGE.MODES. 3 .DEFORMEE_MODALE) MAI1 'UX')**(2))
  673. + (('EXTR' (EIGE.MODES. 3 .DEFORMEE_MODALE) MAI1 'UY')**(2))
  674. + (('EXTR' (EIGE.MODES. 3 .DEFORMEE_MODALE) MAI1 'UZ')**(2)))
  675. **(0.5);
  676. VECT3E = (EIGE.MODES. 3 .DEFORMEE_MODALE)/(NORVEC3E);
  677. 'SINON';
  678. LAM3E = 0.0;
  679. NORVEC3E = 0.0;
  680. VECT3E = MANU CHPO MAI1 3 'UX' 0.0 'UY' 0.0 'UZ' 0.0;
  681. 'FINSI';
  682. 'SI' ('EXIST' (EIGI.MODES) 1);
  683. LAM1I = ((EIGI.MODES. 1 .FREQUENCE)*((2.0)*(PI)))**(2.0);
  684. NORVEC1I =
  685. ((('EXTR' (EIGI.MODES. 1 .DEFORMEE_MODALE) MAI1 'UX')**(2))
  686. + (('EXTR' (EIGI.MODES. 1 .DEFORMEE_MODALE) MAI1 'UY')**(2))
  687. + (('EXTR' (EIGI.MODES. 1 .DEFORMEE_MODALE) MAI1 'UZ')**(2)))
  688. **(0.5);
  689. VECT1I = (EIGI.MODES. 1 .DEFORMEE_MODALE)/(NORVEC1I);
  690. 'SINON';
  691. LAM1I = 0.0;
  692. NORVEC1I = 0.0;
  693. VECT1I = MANU CHPO MAI1 3 'UX' 0.0 'UY' 0.0 'UZ' 0.0;
  694. 'FINSI';
  695. 'SI' ('EXIST' (EIGI.MODES) 2);
  696. LAM2I = ((EIGI.MODES. 2 .FREQUENCE)*((2.0)*(PI)))**(2.0);
  697. NORVEC2I =
  698. ((('EXTR' (EIGI.MODES. 2 .DEFORMEE_MODALE) MAI1 'UX')**(2))
  699. + (('EXTR' (EIGI.MODES. 2 .DEFORMEE_MODALE) MAI1 'UY')**(2))
  700. + (('EXTR' (EIGI.MODES. 2 .DEFORMEE_MODALE) MAI1 'UZ')**(2)))
  701. **(0.5);
  702. VECT2I = (EIGI.MODES. 2 .DEFORMEE_MODALE)/(NORVEC2I);
  703. 'SINON';
  704. LAM2I = 0.0;
  705. NORVEC2I = 0.0;
  706. VECT2I = MANU CHPO MAI1 3 'UX' 0.0 'UY' 0.0 'UZ' 0.0;
  707. 'FINSI';
  708. 'SI' ('EXIST' (EIGI.MODES) 3);
  709. LAM3I = ((EIGI.MODES. 3 .FREQUENCE)*((2.0)*(PI)))**(2.0);
  710. NORVEC3I =
  711. ((('EXTR' (EIGI.MODES. 3 .DEFORMEE_MODALE) MAI1 'UX')**(2))
  712. + (('EXTR' (EIGI.MODES. 3 .DEFORMEE_MODALE) MAI1 'UY')**(2))
  713. + (('EXTR' (EIGI.MODES. 3 .DEFORMEE_MODALE) MAI1 'UZ')**(2)))
  714. **(0.5);
  715. VECT3I = (EIGI.MODES. 3 .DEFORMEE_MODALE)/(NORVEC3I);
  716. 'SINON';
  717. LAM3I = 0.0;
  718. NORVEC3I = 0.0;
  719. VECT3I = MANU CHPO MAI1 3 'UX' 0.0 'UY' 0.0 'UZ' 0.0;
  720. 'FINSI';
  721. *
  722. LAM1E = ((NORMATXE)*(LAM1E));
  723. LAM2E = ((NORMATXE)*(LAM2E));
  724. LAM3E = ((NORMATXE)*(LAM3E));
  725. LAM1I = ((NORMATXI)*(LAM1I));
  726. LAM2I = ((NORMATXI)*(LAM2I));
  727. LAM3I = ((NORMATXI)*(LAM3I));
  728. *
  729. * Autovaleurs (couche externe et interne)
  730. LL1E = (LAM1E)**(0.5);
  731. LL2E = (LAM2E)**(0.5);
  732. LL3E = (LAM3E)**(0.5);
  733. LL1I = (LAM1I)**(0.5);
  734. LL2I = (LAM2I)**(0.5);
  735. LL3I = (LAM3I)**(0.5);
  736. *
  737. * Autovecteur (couche externe et interne)
  738. VECT1EX = 'EXTR' VECT1E 'UX' MAI1;
  739. VECT1EY = 'EXTR' VECT1E 'UY' MAI1;
  740. VECT1EZ = 'EXTR' VECT1E 'UZ' MAI1;
  741. VECT2EX = 'EXTR' VECT2E 'UX' MAI1;
  742. VECT2EY = 'EXTR' VECT2E 'UY' MAI1;
  743. VECT2EZ = 'EXTR' VECT2E 'UZ' MAI1;
  744. VECT3EX = 'EXTR' VECT3E 'UX' MAI1;
  745. VECT3EY = 'EXTR' VECT3E 'UY' MAI1;
  746. VECT3EZ = 'EXTR' VECT3E 'UZ' MAI1;
  747. *
  748. VECT1IX = 'EXTR' VECT1I 'UX' MAI1;
  749. VECT1IY = 'EXTR' VECT1I 'UY' MAI1;
  750. VECT1IZ = 'EXTR' VECT1I 'UZ' MAI1;
  751. VECT2IX = 'EXTR' VECT2I 'UX' MAI1;
  752. VECT2IY = 'EXTR' VECT2I 'UY' MAI1;
  753. VECT2IZ = 'EXTR' VECT2I 'UZ' MAI1;
  754. VECT3IX = 'EXTR' VECT3I 'UX' MAI1;
  755. VECT3IY = 'EXTR' VECT3I 'UY' MAI1;
  756. VECT3IZ = 'EXTR' VECT3I 'UZ' MAI1;
  757. *
  758. * definition du maillage pour l'enveloppe
  759. MAI2E = 'VIDE' MAILLAGE;
  760. MAI2I = 'VIDE' MAILLAGE;
  761. ND1 = 8;
  762. ND2 = 8;
  763. LL_FHI1 = 'PROG' 0. 'PAS' (90./ND1) 90.;
  764. LL_FHI2 = 'PROG' 0. 'PAS' (89./ND2) 89.;
  765. II1 = 1;
  766. JJ1 = 2;
  767. *
  768. * boucle sur les points (on va definir la surface sur 8 quadrantes)
  769. * cordonée polaire fhi1 (plan xy) entre 0 pi/2
  770. * cordonée polaire fhi2 (azimuth) entre 0 pi/2
  771. 'REPE' IND1 (ND1*ND2);
  772. *
  773. * quadrant 1 fhi1 = [0 pi/2] fhi2 = [0 pi/2]
  774. VAL_FHI1 = ('EXTR' LL_FHI1 (II1));
  775. VAL_FHI2 = ('EXTR' LL_FHI2 (JJ1 - 1));
  776. X1_1EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  777. Y1_1EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  778. Z1_1EL = ((LL3E)*(SIN(VAL_FHI2)));
  779. VAL_FHI1 = ('EXTR' LL_FHI1 (II1 + 1));
  780. VAL_FHI2 = ('EXTR' LL_FHI2 (JJ1 - 1));
  781. X2_1EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  782. Y2_1EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  783. Z2_1EL = ((LL3E)*(SIN(VAL_FHI2)));
  784. VAL_FHI1 = ('EXTR' LL_FHI1 (II1 + 1));
  785. VAL_FHI2 = ('EXTR' LL_FHI2 (JJ1));
  786. X3_1EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  787. Y3_1EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  788. Z3_1EL = ((LL3E)*(SIN(VAL_FHI2)));
  789. VAL_FHI1 = ('EXTR' LL_FHI1 (II1));
  790. VAL_FHI2 = ('EXTR' LL_FHI2 (JJ1));
  791. X4_1EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  792. Y4_1EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  793. Z4_1EL = ((LL3E)*(SIN(VAL_FHI2)));
  794. X1_1E =
  795. ((X1_1EL)*(VECT1EX)) + ((Y1_1EL)*(VECT2EX)) + ((Z1_1EL)*(VECT3EX));
  796. Y1_1E =
  797. ((X1_1EL)*(VECT1EY)) + ((Y1_1EL)*(VECT2EY)) + ((Z1_1EL)*(VECT3EY));
  798. Z1_1E =
  799. ((X1_1EL)*(VECT1EZ)) + ((Y1_1EL)*(VECT2EZ)) + ((Z1_1EL)*(VECT3EZ));
  800. X2_1E =
  801. ((X2_1EL)*(VECT1EX)) + ((Y2_1EL)*(VECT2EX)) + ((Z2_1EL)*(VECT3EX));
  802. Y2_1E =
  803. ((X2_1EL)*(VECT1EY)) + ((Y2_1EL)*(VECT2EY)) + ((Z2_1EL)*(VECT3EY));
  804. Z2_1E =
  805. ((X2_1EL)*(VECT1EZ)) + ((Y2_1EL)*(VECT2EZ)) + ((Z2_1EL)*(VECT3EZ));
  806. X3_1E =
  807. ((X3_1EL)*(VECT1EX)) + ((Y3_1EL)*(VECT2EX)) + ((Z3_1EL)*(VECT3EX));
  808. Y3_1E =
  809. ((X3_1EL)*(VECT1EY)) + ((Y3_1EL)*(VECT2EY)) + ((Z3_1EL)*(VECT3EY));
  810. Z3_1E =
  811. ((X3_1EL)*(VECT1EZ)) + ((Y3_1EL)*(VECT2EZ)) + ((Z3_1EL)*(VECT3EZ));
  812. X4_1E =
  813. ((X4_1EL)*(VECT1EX)) + ((Y4_1EL)*(VECT2EX)) + ((Z4_1EL)*(VECT3EX));
  814. Y4_1E =
  815. ((X4_1EL)*(VECT1EY)) + ((Y4_1EL)*(VECT2EY)) + ((Z4_1EL)*(VECT3EY));
  816. Z4_1E =
  817. ((X4_1EL)*(VECT1EZ)) + ((Y4_1EL)*(VECT2EZ)) + ((Z4_1EL)*(VECT3EZ));
  818. *
  819. * quadrant 2 fhi1 = [pi/2 pi] fhi2 = [0 pi/2]
  820. VAL_FHI1 = ('EXTR' LL_FHI1 (II1)) + ((180.0)/(2.0));
  821. VAL_FHI2 = ('EXTR' LL_FHI2 (JJ1 - 1));
  822. X1_2EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  823. Y1_2EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  824. Z1_2EL = ((LL3E)*(SIN(VAL_FHI2)));
  825. VAL_FHI1 = (EXTR LL_FHI1 (II1 + 1)) + ((180.0)/(2.0));
  826. VAL_FHI2 = (EXTR LL_FHI2 (JJ1 - 1));
  827. X2_2EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  828. Y2_2EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  829. Z2_2EL = ((LL3E)*(SIN(VAL_FHI2)));
  830. VAL_FHI1 = (EXTR LL_FHI1 (II1 + 1)) + ((180.0)/(2.0));
  831. VAL_FHI2 = (EXTR LL_FHI2 (JJ1));
  832. X3_2EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  833. Y3_2EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  834. Z3_2EL = ((LL3E)*(SIN(VAL_FHI2)));
  835. VAL_FHI1 = (EXTR LL_FHI1 (II1)) + ((180.0)/(2.0));
  836. VAL_FHI2 = (EXTR LL_FHI2 (JJ1));
  837. X4_2EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  838. Y4_2EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  839. Z4_2EL = ((LL3E)*(SIN(VAL_FHI2)));
  840. X1_2E =
  841. ((X1_2EL)*(VECT1EX)) + ((Y1_2EL)*(VECT2EX)) + ((Z1_2EL)*(VECT3EX));
  842. Y1_2E =
  843. ((X1_2EL)*(VECT1EY)) + ((Y1_2EL)*(VECT2EY)) + ((Z1_2EL)*(VECT3EY));
  844. Z1_2E =
  845. ((X1_2EL)*(VECT1EZ)) + ((Y1_2EL)*(VECT2EZ)) + ((Z1_2EL)*(VECT3EZ));
  846. X2_2E =
  847. ((X2_2EL)*(VECT1EX)) + ((Y2_2EL)*(VECT2EX)) + ((Z2_2EL)*(VECT3EX));
  848. Y2_2E =
  849. ((X2_2EL)*(VECT1EY)) + ((Y2_2EL)*(VECT2EY)) + ((Z2_2EL)*(VECT3EY));
  850. Z2_2E =
  851. ((X2_2EL)*(VECT1EZ)) + ((Y2_2EL)*(VECT2EZ)) + ((Z2_2EL)*(VECT3EZ));
  852. X3_2E =
  853. ((X3_2EL)*(VECT1EX)) + ((Y3_2EL)*(VECT2EX)) + ((Z3_2EL)*(VECT3EX));
  854. Y3_2E =
  855. ((X3_2EL)*(VECT1EY)) + ((Y3_2EL)*(VECT2EY)) + ((Z3_2EL)*(VECT3EY));
  856. Z3_2E =
  857. ((X3_2EL)*(VECT1EZ)) + ((Y3_2EL)*(VECT2EZ)) + ((Z3_2EL)*(VECT3EZ));
  858. X4_2E =
  859. ((X4_2EL)*(VECT1EX)) + ((Y4_2EL)*(VECT2EX)) + ((Z4_2EL)*(VECT3EX));
  860. Y4_2E =
  861. ((X4_2EL)*(VECT1EY)) + ((Y4_2EL)*(VECT2EY)) + ((Z4_2EL)*(VECT3EY));
  862. Z4_2E =
  863. ((X4_2EL)*(VECT1EZ)) + ((Y4_2EL)*(VECT2EZ)) + ((Z4_2EL)*(VECT3EZ));
  864. *
  865. * quadrant 3 fhi1 = [pi 3pi/2] fhi2 = [0 pi/2]
  866. VAL_FHI1 = ('EXTR' LL_FHI1 (II1)) + ((180.0)/(1.0));
  867. VAL_FHI2 = ('EXTR' LL_FHI2 (JJ1 - 1));
  868. X1_3EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  869. Y1_3EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  870. Z1_3EL = ((LL3E)*(SIN(VAL_FHI2)));
  871. VAL_FHI1 = ('EXTR' LL_FHI1 (II1 + 1)) + ((180.0)/(1.0));
  872. VAL_FHI2 = ('EXTR' LL_FHI2 (JJ1 - 1));
  873. X2_3EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  874. Y2_3EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  875. Z2_3EL = ((LL3E)*(SIN(VAL_FHI2)));
  876. VAL_FHI1 = ('EXTR' LL_FHI1 (II1 + 1)) + ((180.0)/(1.0));
  877. VAL_FHI2 = ('EXTR' LL_FHI2 (JJ1));
  878. X3_3EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  879. Y3_3EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  880. Z3_3EL = ((LL3E)*(SIN(VAL_FHI2)));
  881. VAL_FHI1 = ('EXTR' LL_FHI1 (II1)) + ((180.0)/(1.0));
  882. VAL_FHI2 = ('EXTR' LL_FHI2 (JJ1));
  883. X4_3EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  884. Y4_3EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  885. Z4_3EL = ((LL3E)*(SIN(VAL_FHI2)));
  886. X1_3E =
  887. ((X1_3EL)*(VECT1EX)) + ((Y1_3EL)*(VECT2EX)) + ((Z1_3EL)*(VECT3EX));
  888. Y1_3E =
  889. ((X1_3EL)*(VECT1EY)) + ((Y1_3EL)*(VECT2EY)) + ((Z1_3EL)*(VECT3EY));
  890. Z1_3E =
  891. ((X1_3EL)*(VECT1EZ)) + ((Y1_3EL)*(VECT2EZ)) + ((Z1_3EL)*(VECT3EZ));
  892. X2_3E =
  893. ((X2_3EL)*(VECT1EX)) + ((Y2_3EL)*(VECT2EX)) + ((Z2_3EL)*(VECT3EX));
  894. Y2_3E =
  895. ((X2_3EL)*(VECT1EY)) + ((Y2_3EL)*(VECT2EY)) + ((Z2_3EL)*(VECT3EY));
  896. Z2_3E =
  897. ((X2_3EL)*(VECT1EZ)) + ((Y2_3EL)*(VECT2EZ)) + ((Z2_3EL)*(VECT3EZ));
  898. X3_3E =
  899. ((X3_3EL)*(VECT1EX)) + ((Y3_3EL)*(VECT2EX)) + ((Z3_3EL)*(VECT3EX));
  900. Y3_3E =
  901. ((X3_3EL)*(VECT1EY)) + ((Y3_3EL)*(VECT2EY)) + ((Z3_3EL)*(VECT3EY));
  902. Z3_3E =
  903. ((X3_3EL)*(VECT1EZ)) + ((Y3_3EL)*(VECT2EZ)) + ((Z3_3EL)*(VECT3EZ));
  904. X4_3E =
  905. ((X4_3EL)*(VECT1EX)) + ((Y4_3EL)*(VECT2EX)) + ((Z4_3EL)*(VECT3EX));
  906. Y4_3E =
  907. ((X4_3EL)*(VECT1EY)) + ((Y4_3EL)*(VECT2EY)) + ((Z4_3EL)*(VECT3EY));
  908. Z4_3E =
  909. ((X4_3EL)*(VECT1EZ)) + ((Y4_3EL)*(VECT2EZ)) + ((Z4_3EL)*(VECT3EZ));
  910. *
  911. * quadrant 4 fhi1 = [3pi/2 2pi] fhi2 = [0 pi/2]
  912. VAL_FHI1 = ('EXTR' LL_FHI1 (II1)) + (((3.0)*(180.0))/(2.0));
  913. VAL_FHI2 = ('EXTR' LL_FHI2 (JJ1 - 1));
  914. X1_4EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  915. Y1_4EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  916. Z1_4EL = ((LL3E)*(SIN(VAL_FHI2)));
  917. VAL_FHI1 = ('EXTR' LL_FHI1 (II1 + 1)) + (((3.0)*(180.0))/(2.0));
  918. VAL_FHI2 = ('EXTR' LL_FHI2 (JJ1 - 1));
  919. X2_4EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  920. Y2_4EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  921. Z2_4EL = ((LL3E)*(SIN(VAL_FHI2)));
  922. VAL_FHI1 = ('EXTR' LL_FHI1 (II1 + 1)) + (((3.0)*(180.0))/(2.0));
  923. VAL_FHI2 = ('EXTR' LL_FHI2 (JJ1));
  924. X3_4EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  925. Y3_4EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  926. Z3_4EL = ((LL3E)*(SIN(VAL_FHI2)));
  927. VAL_FHI1 = ('EXTR' LL_FHI1 (II1)) + (((3.0)*(180.0))/(2.0));
  928. VAL_FHI2 = ('EXTR' LL_FHI2 (JJ1));
  929. X4_4EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  930. Y4_4EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  931. Z4_4EL = ((LL3E)*(SIN(VAL_FHI2)));
  932. X1_4E =
  933. ((X1_4EL)*(VECT1EX)) + ((Y1_4EL)*(VECT2EX)) + ((Z1_4EL)*(VECT3EX));
  934. Y1_4E =
  935. ((X1_4EL)*(VECT1EY)) + ((Y1_4EL)*(VECT2EY)) + ((Z1_4EL)*(VECT3EY));
  936. Z1_4E =
  937. ((X1_4EL)*(VECT1EZ)) + ((Y1_4EL)*(VECT2EZ)) + ((Z1_4EL)*(VECT3EZ));
  938. X2_4E =
  939. ((X2_4EL)*(VECT1EX)) + ((Y2_4EL)*(VECT2EX)) + ((Z2_4EL)*(VECT3EX));
  940. Y2_4E =
  941. ((X2_4EL)*(VECT1EY)) + ((Y2_4EL)*(VECT2EY)) + ((Z2_4EL)*(VECT3EY));
  942. Z2_4E =
  943. ((X2_4EL)*(VECT1EZ)) + ((Y2_4EL)*(VECT2EZ)) + ((Z2_4EL)*(VECT3EZ));
  944. X3_4E =
  945. ((X3_4EL)*(VECT1EX)) + ((Y3_4EL)*(VECT2EX)) + ((Z3_4EL)*(VECT3EX));
  946. Y3_4E =
  947. ((X3_4EL)*(VECT1EY)) + ((Y3_4EL)*(VECT2EY)) + ((Z3_4EL)*(VECT3EY));
  948. Z3_4E =
  949. ((X3_4EL)*(VECT1EZ)) + ((Y3_4EL)*(VECT2EZ)) + ((Z3_4EL)*(VECT3EZ));
  950. X4_4E =
  951. ((X4_4EL)*(VECT1EX)) + ((Y4_4EL)*(VECT2EX)) + ((Z4_4EL)*(VECT3EX));
  952. Y4_4E =
  953. ((X4_4EL)*(VECT1EY)) + ((Y4_4EL)*(VECT2EY)) + ((Z4_4EL)*(VECT3EY));
  954. Z4_4E =
  955. ((X4_4EL)*(VECT1EZ)) + ((Y4_4EL)*(VECT2EZ)) + ((Z4_4EL)*(VECT3EZ));
  956. *
  957. * quadrant 5 fhi1 = [0 pi/2] fhi2 = [-pi/2 0]
  958. VAL_FHI1 = ('EXTR' LL_FHI1 (II1));
  959. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1 - 1));
  960. X1_5EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  961. Y1_5EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  962. Z1_5EL = ((LL3E)*(SIN(VAL_FHI2)));
  963. VAL_FHI1 = ('EXTR' LL_FHI1 (II1 + 1));
  964. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1 - 1));
  965. X2_5EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  966. Y2_5EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  967. Z2_5EL = ((LL3E)*(SIN(VAL_FHI2)));
  968. VAL_FHI1 = ('EXTR' LL_FHI1 (II1 + 1));
  969. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1));
  970. X3_5EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  971. Y3_5EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  972. Z3_5EL = ((LL3E)*(SIN(VAL_FHI2)));
  973. VAL_FHI1 = ('EXTR' LL_FHI1 (II1));
  974. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1));
  975. X4_5EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  976. Y4_5EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  977. Z4_5EL = ((LL3E)*(SIN(VAL_FHI2)));
  978. X1_5E =
  979. ((X1_5EL)*(VECT1EX)) + ((Y1_5EL)*(VECT2EX)) + ((Z1_5EL)*(VECT3EX));
  980. Y1_5E =
  981. ((X1_5EL)*(VECT1EY)) + ((Y1_5EL)*(VECT2EY)) + ((Z1_5EL)*(VECT3EY));
  982. Z1_5E =
  983. ((X1_5EL)*(VECT1EZ)) + ((Y1_5EL)*(VECT2EZ)) + ((Z1_5EL)*(VECT3EZ));
  984. X2_5E =
  985. ((X2_5EL)*(VECT1EX)) + ((Y2_5EL)*(VECT2EX)) + ((Z2_5EL)*(VECT3EX));
  986. Y2_5E =
  987. ((X2_5EL)*(VECT1EY)) + ((Y2_5EL)*(VECT2EY)) + ((Z2_5EL)*(VECT3EY));
  988. Z2_5E =
  989. ((X2_5EL)*(VECT1EZ)) + ((Y2_5EL)*(VECT2EZ)) + ((Z2_5EL)*(VECT3EZ));
  990. X3_5E =
  991. ((X3_5EL)*(VECT1EX)) + ((Y3_5EL)*(VECT2EX)) + ((Z3_5EL)*(VECT3EX));
  992. Y3_5E =
  993. ((X3_5EL)*(VECT1EY)) + ((Y3_5EL)*(VECT2EY)) + ((Z3_5EL)*(VECT3EY));
  994. Z3_5E =
  995. ((X3_5EL)*(VECT1EZ)) + ((Y3_5EL)*(VECT2EZ)) + ((Z3_5EL)*(VECT3EZ));
  996. X4_5E =
  997. ((X4_5EL)*(VECT1EX)) + ((Y4_5EL)*(VECT2EX)) + ((Z4_5EL)*(VECT3EX));
  998. Y4_5E =
  999. ((X4_5EL)*(VECT1EY)) + ((Y4_5EL)*(VECT2EY)) + ((Z4_5EL)*(VECT3EY));
  1000. Z4_5E =
  1001. ((X4_5EL)*(VECT1EZ)) + ((Y4_5EL)*(VECT2EZ)) + ((Z4_5EL)*(VECT3EZ));
  1002. *
  1003. * quadrant 6 fhi1 = [pi/2 pi] fhi2 = [-pi/2 0]
  1004. VAL_FHI1 = ('EXTR' LL_FHI1 (II1)) + ((180.0)/(2.0));
  1005. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1 - 1));
  1006. X1_6EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1007. Y1_6EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1008. Z1_6EL = ((LL3E)*(SIN(VAL_FHI2)));
  1009. VAL_FHI1 = ('EXTR' LL_FHI1 (II1 + 1)) + ((180.0)/(2.0));
  1010. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1 - 1));
  1011. X2_6EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1012. Y2_6EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1013. Z2_6EL = ((LL3E)*(SIN(VAL_FHI2)));
  1014. VAL_FHI1 = ('EXTR' LL_FHI1 (II1 + 1)) + ((180.0)/(2.0));
  1015. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1));
  1016. X3_6EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1017. Y3_6EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1018. Z3_6EL = ((LL3E)*(SIN(VAL_FHI2)));
  1019. VAL_FHI1 = ('EXTR' LL_FHI1 (II1)) + ((180.0)/(2.0));
  1020. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1));
  1021. X4_6EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1022. Y4_6EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1023. Z4_6EL = ((LL3E)*(SIN(VAL_FHI2)));
  1024. X1_6E =
  1025. ((X1_6EL)*(VECT1EX)) + ((Y1_6EL)*(VECT2EX)) + ((Z1_6EL)*(VECT3EX));
  1026. Y1_6E =
  1027. ((X1_6EL)*(VECT1EY)) + ((Y1_6EL)*(VECT2EY)) + ((Z1_6EL)*(VECT3EY));
  1028. Z1_6E =
  1029. ((X1_6EL)*(VECT1EZ)) + ((Y1_6EL)*(VECT2EZ)) + ((Z1_6EL)*(VECT3EZ));
  1030. X2_6E =
  1031. ((X2_6EL)*(VECT1EX)) + ((Y2_6EL)*(VECT2EX)) + ((Z2_6EL)*(VECT3EX));
  1032. Y2_6E =
  1033. ((X2_6EL)*(VECT1EY)) + ((Y2_6EL)*(VECT2EY)) + ((Z2_6EL)*(VECT3EY));
  1034. Z2_6E =
  1035. ((X2_6EL)*(VECT1EZ)) + ((Y2_6EL)*(VECT2EZ)) + ((Z2_6EL)*(VECT3EZ));
  1036. X3_6E =
  1037. ((X3_6EL)*(VECT1EX)) + ((Y3_6EL)*(VECT2EX)) + ((Z3_6EL)*(VECT3EX));
  1038. Y3_6E =
  1039. ((X3_6EL)*(VECT1EY)) + ((Y3_6EL)*(VECT2EY)) + ((Z3_6EL)*(VECT3EY));
  1040. Z3_6E =
  1041. ((X3_6EL)*(VECT1EZ)) + ((Y3_6EL)*(VECT2EZ)) + ((Z3_6EL)*(VECT3EZ));
  1042. X4_6E =
  1043. ((X4_6EL)*(VECT1EX)) + ((Y4_6EL)*(VECT2EX)) + ((Z4_6EL)*(VECT3EX));
  1044. Y4_6E =
  1045. ((X4_6EL)*(VECT1EY)) + ((Y4_6EL)*(VECT2EY)) + ((Z4_6EL)*(VECT3EY));
  1046. Z4_6E =
  1047. ((X4_6EL)*(VECT1EZ)) + ((Y4_6EL)*(VECT2EZ)) + ((Z4_6EL)*(VECT3EZ));
  1048. *
  1049. * quadrant 7 fhi1 = [pi 3pi/2] fhi2 = [-pi/2 0]
  1050. VAL_FHI1 = ('EXTR' LL_FHI1 (II1)) + ((180.0)/(1.0));
  1051. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1 - 1));
  1052. X1_7EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1053. Y1_7EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1054. Z1_7EL = ((LL3E)*(SIN(VAL_FHI2)));
  1055. VAL_FHI1 = ('EXTR' LL_FHI1 (II1 + 1)) + ((180.0)/(1.0));
  1056. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1 - 1));
  1057. X2_7EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1058. Y2_7EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1059. Z2_7EL = ((LL3E)*(SIN(VAL_FHI2)));
  1060. VAL_FHI1 = ('EXTR' LL_FHI1 (II1 + 1)) + ((180.0)/(1.0));
  1061. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1));
  1062. X3_7EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1063. Y3_7EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1064. Z3_7EL = ((LL3E)*(SIN(VAL_FHI2)));
  1065. VAL_FHI1 = ('EXTR' LL_FHI1 (II1)) + ((180.0)/(1.0));
  1066. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1));
  1067. X4_7EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1068. Y4_7EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1069. Z4_7EL = ((LL3E)*(SIN(VAL_FHI2)));
  1070. X1_7E =
  1071. ((X1_7EL)*(VECT1EX)) + ((Y1_7EL)*(VECT2EX)) + ((Z1_7EL)*(VECT3EX));
  1072. Y1_7E =
  1073. ((X1_7EL)*(VECT1EY)) + ((Y1_7EL)*(VECT2EY)) + ((Z1_7EL)*(VECT3EY));
  1074. Z1_7E =
  1075. ((X1_7EL)*(VECT1EZ)) + ((Y1_7EL)*(VECT2EZ)) + ((Z1_7EL)*(VECT3EZ));
  1076. X2_7E =
  1077. ((X2_7EL)*(VECT1EX)) + ((Y2_7EL)*(VECT2EX)) + ((Z2_7EL)*(VECT3EX));
  1078. Y2_7E =
  1079. ((X2_7EL)*(VECT1EY)) + ((Y2_7EL)*(VECT2EY)) + ((Z2_7EL)*(VECT3EY));
  1080. Z2_7E =
  1081. ((X2_7EL)*(VECT1EZ)) + ((Y2_7EL)*(VECT2EZ)) + ((Z2_7EL)*(VECT3EZ));
  1082. X3_7E =
  1083. ((X3_7EL)*(VECT1EX)) + ((Y3_7EL)*(VECT2EX)) + ((Z3_7EL)*(VECT3EX));
  1084. Y3_7E =
  1085. ((X3_7EL)*(VECT1EY)) + ((Y3_7EL)*(VECT2EY)) + ((Z3_7EL)*(VECT3EY));
  1086. Z3_7E =
  1087. ((X3_7EL)*(VECT1EZ)) + ((Y3_7EL)*(VECT2EZ)) + ((Z3_7EL)*(VECT3EZ));
  1088. X4_7E =
  1089. ((X4_7EL)*(VECT1EX)) + ((Y4_7EL)*(VECT2EX)) + ((Z4_7EL)*(VECT3EX));
  1090. Y4_7E =
  1091. ((X4_7EL)*(VECT1EY)) + ((Y4_7EL)*(VECT2EY)) + ((Z4_7EL)*(VECT3EY));
  1092. Z4_7E =
  1093. ((X4_7EL)*(VECT1EZ)) + ((Y4_7EL)*(VECT2EZ)) + ((Z4_7EL)*(VECT3EZ));
  1094. *
  1095. * quadrant 8 fhi1 = [3pi/2 2pi] fhi2 = [-pi/2 0]
  1096. VAL_FHI1 = ('EXTR' LL_FHI1 (II1)) + (((3.0)*(180.0))/(2.0));
  1097. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1 - 1));
  1098. X1_8EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1099. Y1_8EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1100. Z1_8EL = ((LL3E)*(SIN(VAL_FHI2)));
  1101. VAL_FHI1 = ('EXTR' LL_FHI1 (II1 + 1)) + (((3.0)*(180.0))/(2.0));
  1102. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1 - 1));
  1103. X2_8EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1104. Y2_8EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1105. Z2_8EL = ((LL3E)*(SIN(VAL_FHI2)));
  1106. VAL_FHI1 = ('EXTR' LL_FHI1 (II1 + 1)) + (((3.0)*(180.0))/(2.0));
  1107. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1));
  1108. X3_8EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1109. Y3_8EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1110. Z3_8EL = ((LL3E)*(SIN(VAL_FHI2)));
  1111. VAL_FHI1 = ('EXTR' LL_FHI1 (II1)) + (((3.0)*(180.0))/(2.0));
  1112. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1));
  1113. X4_8EL = (((LL1E)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1114. Y4_8EL = (((LL2E)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1115. Z4_8EL = ((LL3E)*(SIN(VAL_FHI2)));
  1116. X1_8E =
  1117. ((X1_8EL)*(VECT1EX)) + ((Y1_8EL)*(VECT2EX)) + ((Z1_8EL)*(VECT3EX));
  1118. Y1_8E =
  1119. ((X1_8EL)*(VECT1EY)) + ((Y1_8EL)*(VECT2EY)) + ((Z1_8EL)*(VECT3EY));
  1120. Z1_8E =
  1121. ((X1_8EL)*(VECT1EZ)) + ((Y1_8EL)*(VECT2EZ)) + ((Z1_8EL)*(VECT3EZ));
  1122. X2_8E =
  1123. ((X2_8EL)*(VECT1EX)) + ((Y2_8EL)*(VECT2EX)) + ((Z2_8EL)*(VECT3EX));
  1124. Y2_8E =
  1125. ((X2_8EL)*(VECT1EY)) + ((Y2_8EL)*(VECT2EY)) + ((Z2_8EL)*(VECT3EY));
  1126. Z2_8E =
  1127. ((X2_8EL)*(VECT1EZ)) + ((Y2_8EL)*(VECT2EZ)) + ((Z2_8EL)*(VECT3EZ));
  1128. X3_8E =
  1129. ((X3_8EL)*(VECT1EX)) + ((Y3_8EL)*(VECT2EX)) + ((Z3_8EL)*(VECT3EX));
  1130. Y3_8E =
  1131. ((X3_8EL)*(VECT1EY)) + ((Y3_8EL)*(VECT2EY)) + ((Z3_8EL)*(VECT3EY));
  1132. Z3_8E =
  1133. ((X3_8EL)*(VECT1EZ)) + ((Y3_8EL)*(VECT2EZ)) + ((Z3_8EL)*(VECT3EZ));
  1134. X4_8E =
  1135. ((X4_8EL)*(VECT1EX)) + ((Y4_8EL)*(VECT2EX)) + ((Z4_8EL)*(VECT3EX));
  1136. Y4_8E =
  1137. ((X4_8EL)*(VECT1EY)) + ((Y4_8EL)*(VECT2EY)) + ((Z4_8EL)*(VECT3EY));
  1138. Z4_8E =
  1139. ((X4_8EL)*(VECT1EZ)) + ((Y4_8EL)*(VECT2EZ)) + ((Z4_8EL)*(VECT3EZ));
  1140. *
  1141. *
  1142. * quadrant 1 fhi1 = [0 pi/2] fhi2 = [0 pi/2]
  1143. VAL_FHI1 = ('EXTR' LL_FHI1 (II1));
  1144. VAL_FHI2 = ('EXTR' LL_FHI2 (JJ1 - 1));
  1145. X1_1IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1146. Y1_1IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1147. Z1_1IL = ((LL3I)*(SIN(VAL_FHI2)));
  1148. VAL_FHI1 = ('EXTR' LL_FHI1 (II1 + 1));
  1149. VAL_FHI2 = ('EXTR' LL_FHI2 (JJ1 - 1));
  1150. X2_1IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1151. Y2_1IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1152. Z2_1IL = ((LL3I)*(SIN(VAL_FHI2)));
  1153. VAL_FHI1 = ('EXTR' LL_FHI1 (II1 + 1));
  1154. VAL_FHI2 = ('EXTR' LL_FHI2 (JJ1));
  1155. X3_1IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1156. Y3_1IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1157. Z3_1IL = ((LL3I)*(SIN(VAL_FHI2)));
  1158. VAL_FHI1 = ('EXTR' LL_FHI1 (II1));
  1159. VAL_FHI2 = ('EXTR' LL_FHI2 (JJ1));
  1160. X4_1IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1161. Y4_1IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1162. Z4_1IL = ((LL3I)*(SIN(VAL_FHI2)));
  1163. X1_1I =
  1164. ((X1_1IL)*(VECT1IX)) + ((Y1_1IL)*(VECT2IX)) + ((Z1_1IL)*(VECT3IX));
  1165. Y1_1I =
  1166. ((X1_1IL)*(VECT1IY)) + ((Y1_1IL)*(VECT2IY)) + ((Z1_1IL)*(VECT3IY));
  1167. Z1_1I =
  1168. ((X1_1IL)*(VECT1IZ)) + ((Y1_1IL)*(VECT2IZ)) + ((Z1_1IL)*(VECT3IZ));
  1169. X2_1I =
  1170. ((X2_1IL)*(VECT1IX)) + ((Y2_1IL)*(VECT2IX)) + ((Z2_1IL)*(VECT3IX));
  1171. Y2_1I =
  1172. ((X2_1IL)*(VECT1IY)) + ((Y2_1IL)*(VECT2IY)) + ((Z2_1IL)*(VECT3IY));
  1173. Z2_1I =
  1174. ((X2_1IL)*(VECT1IZ)) + ((Y2_1IL)*(VECT2IZ)) + ((Z2_1IL)*(VECT3IZ));
  1175. X3_1I =
  1176. ((X3_1IL)*(VECT1IX)) + ((Y3_1IL)*(VECT2IX)) + ((Z3_1IL)*(VECT3IX));
  1177. Y3_1I =
  1178. ((X3_1IL)*(VECT1IY)) + ((Y3_1IL)*(VECT2IY)) + ((Z3_1IL)*(VECT3IY));
  1179. Z3_1I =
  1180. ((X3_1IL)*(VECT1IZ)) + ((Y3_1IL)*(VECT2IZ)) + ((Z3_1IL)*(VECT3IZ));
  1181. X4_1I =
  1182. ((X4_1IL)*(VECT1IX)) + ((Y4_1IL)*(VECT2IX)) + ((Z4_1IL)*(VECT3IX));
  1183. Y4_1I =
  1184. ((X4_1IL)*(VECT1IY)) + ((Y4_1IL)*(VECT2IY)) + ((Z4_1IL)*(VECT3IY));
  1185. Z4_1I =
  1186. ((X4_1IL)*(VECT1IZ)) + ((Y4_1IL)*(VECT2IZ)) + ((Z4_1IL)*(VECT3IZ));
  1187. *
  1188. * quadrant 2 fhi1 = [pi/2 pi] fhi2 = [0 pi/2]
  1189. VAL_FHI1 = ('EXTR' LL_FHI1 (II1)) + ((180.0)/(2.0));
  1190. VAL_FHI2 = ('EXTR' LL_FHI2 (JJ1 - 1));
  1191. X1_2IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1192. Y1_2IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1193. Z1_2IL = ((LL3I)*(SIN(VAL_FHI2)));
  1194. VAL_FHI1 = (EXTR LL_FHI1 (II1 + 1)) + ((180.0)/(2.0));
  1195. VAL_FHI2 = (EXTR LL_FHI2 (JJ1 - 1));
  1196. X2_2IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1197. Y2_2IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1198. Z2_2IL = ((LL3I)*(SIN(VAL_FHI2)));
  1199. VAL_FHI1 = (EXTR LL_FHI1 (II1 + 1)) + ((180.0)/(2.0));
  1200. VAL_FHI2 = (EXTR LL_FHI2 (JJ1));
  1201. X3_2IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1202. Y3_2IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1203. Z3_2IL = ((LL3I)*(SIN(VAL_FHI2)));
  1204. VAL_FHI1 = (EXTR LL_FHI1 (II1)) + ((180.0)/(2.0));
  1205. VAL_FHI2 = (EXTR LL_FHI2 (JJ1));
  1206. X4_2IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1207. Y4_2IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1208. Z4_2IL = ((LL3I)*(SIN(VAL_FHI2)));
  1209. X1_2I =
  1210. ((X1_2IL)*(VECT1IX)) + ((Y1_2IL)*(VECT2IX)) + ((Z1_2IL)*(VECT3IX));
  1211. Y1_2I =
  1212. ((X1_2IL)*(VECT1IY)) + ((Y1_2IL)*(VECT2IY)) + ((Z1_2IL)*(VECT3IY));
  1213. Z1_2I =
  1214. ((X1_2IL)*(VECT1IZ)) + ((Y1_2IL)*(VECT2IZ)) + ((Z1_2IL)*(VECT3IZ));
  1215. X2_2I =
  1216. ((X2_2IL)*(VECT1IX)) + ((Y2_2IL)*(VECT2IX)) + ((Z2_2IL)*(VECT3IX));
  1217. Y2_2I =
  1218. ((X2_2IL)*(VECT1IY)) + ((Y2_2IL)*(VECT2IY)) + ((Z2_2IL)*(VECT3IY));
  1219. Z2_2I =
  1220. ((X2_2IL)*(VECT1IZ)) + ((Y2_2IL)*(VECT2IZ)) + ((Z2_2IL)*(VECT3IZ));
  1221. X3_2I =
  1222. ((X3_2IL)*(VECT1IX)) + ((Y3_2IL)*(VECT2IX)) + ((Z3_2IL)*(VECT3IX));
  1223. Y3_2I =
  1224. ((X3_2IL)*(VECT1IY)) + ((Y3_2IL)*(VECT2IY)) + ((Z3_2IL)*(VECT3IY));
  1225. Z3_2I =
  1226. ((X3_2IL)*(VECT1IZ)) + ((Y3_2IL)*(VECT2IZ)) + ((Z3_2IL)*(VECT3IZ));
  1227. X4_2I =
  1228. ((X4_2IL)*(VECT1IX)) + ((Y4_2IL)*(VECT2IX)) + ((Z4_2IL)*(VECT3IX));
  1229. Y4_2I =
  1230. ((X4_2IL)*(VECT1IY)) + ((Y4_2IL)*(VECT2IY)) + ((Z4_2IL)*(VECT3IY));
  1231. Z4_2I =
  1232. ((X4_2IL)*(VECT1IZ)) + ((Y4_2IL)*(VECT2IZ)) + ((Z4_2IL)*(VECT3IZ));
  1233. *
  1234. * quadrant 3 fhi1 = [pi 3pi/2] fhi2 = [0 pi/2]
  1235. VAL_FHI1 = ('EXTR' LL_FHI1 (II1)) + ((180.0)/(1.0));
  1236. VAL_FHI2 = ('EXTR' LL_FHI2 (JJ1 - 1));
  1237. X1_3IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1238. Y1_3IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1239. Z1_3IL = ((LL3I)*(SIN(VAL_FHI2)));
  1240. VAL_FHI1 = ('EXTR' LL_FHI1 (II1 + 1)) + ((180.0)/(1.0));
  1241. VAL_FHI2 = ('EXTR' LL_FHI2 (JJ1 - 1));
  1242. X2_3IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1243. Y2_3IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1244. Z2_3IL = ((LL3I)*(SIN(VAL_FHI2)));
  1245. VAL_FHI1 = ('EXTR' LL_FHI1 (II1 + 1)) + ((180.0)/(1.0));
  1246. VAL_FHI2 = ('EXTR' LL_FHI2 (JJ1));
  1247. X3_3IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1248. Y3_3IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1249. Z3_3IL = ((LL3I)*(SIN(VAL_FHI2)));
  1250. VAL_FHI1 = ('EXTR' LL_FHI1 (II1)) + ((180.0)/(1.0));
  1251. VAL_FHI2 = ('EXTR' LL_FHI2 (JJ1));
  1252. X4_3IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1253. Y4_3IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1254. Z4_3IL = ((LL3I)*(SIN(VAL_FHI2)));
  1255. X1_3I =
  1256. ((X1_3IL)*(VECT1IX)) + ((Y1_3IL)*(VECT2IX)) + ((Z1_3IL)*(VECT3IX));
  1257. Y1_3I =
  1258. ((X1_3IL)*(VECT1IY)) + ((Y1_3IL)*(VECT2IY)) + ((Z1_3IL)*(VECT3IY));
  1259. Z1_3I =
  1260. ((X1_3IL)*(VECT1IZ)) + ((Y1_3IL)*(VECT2IZ)) + ((Z1_3IL)*(VECT3IZ));
  1261. X2_3I =
  1262. ((X2_3IL)*(VECT1IX)) + ((Y2_3IL)*(VECT2IX)) + ((Z2_3IL)*(VECT3IX));
  1263. Y2_3I =
  1264. ((X2_3IL)*(VECT1IY)) + ((Y2_3IL)*(VECT2IY)) + ((Z2_3IL)*(VECT3IY));
  1265. Z2_3I =
  1266. ((X2_3IL)*(VECT1IZ)) + ((Y2_3IL)*(VECT2IZ)) + ((Z2_3IL)*(VECT3IZ));
  1267. X3_3I =
  1268. ((X3_3IL)*(VECT1IX)) + ((Y3_3IL)*(VECT2IX)) + ((Z3_3IL)*(VECT3IX));
  1269. Y3_3I =
  1270. ((X3_3IL)*(VECT1IY)) + ((Y3_3IL)*(VECT2IY)) + ((Z3_3IL)*(VECT3IY));
  1271. Z3_3I =
  1272. ((X3_3IL)*(VECT1IZ)) + ((Y3_3IL)*(VECT2IZ)) + ((Z3_3IL)*(VECT3IZ));
  1273. X4_3I =
  1274. ((X4_3IL)*(VECT1IX)) + ((Y4_3IL)*(VECT2IX)) + ((Z4_3IL)*(VECT3IX));
  1275. Y4_3I =
  1276. ((X4_3IL)*(VECT1IY)) + ((Y4_3IL)*(VECT2IY)) + ((Z4_3IL)*(VECT3IY));
  1277. Z4_3I =
  1278. ((X4_3IL)*(VECT1IZ)) + ((Y4_3IL)*(VECT2IZ)) + ((Z4_3IL)*(VECT3IZ));
  1279. *
  1280. * quadrant 4 fhi1 = [3pi/2 2pi] fhi2 = [0 pi/2]
  1281. VAL_FHI1 = ('EXTR' LL_FHI1 (II1)) + (((3.0)*(180.0))/(2.0));
  1282. VAL_FHI2 = ('EXTR' LL_FHI2 (JJ1 - 1));
  1283. X1_4IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1284. Y1_4IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1285. Z1_4IL = ((LL3I)*(SIN(VAL_FHI2)));
  1286. VAL_FHI1 = ('EXTR' LL_FHI1 (II1 + 1)) + (((3.0)*(180.0))/(2.0));
  1287. VAL_FHI2 = ('EXTR' LL_FHI2 (JJ1 - 1));
  1288. X2_4IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1289. Y2_4IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1290. Z2_4IL = ((LL3I)*(SIN(VAL_FHI2)));
  1291. VAL_FHI1 = ('EXTR' LL_FHI1 (II1 + 1)) + (((3.0)*(180.0))/(2.0));
  1292. VAL_FHI2 = ('EXTR' LL_FHI2 (JJ1));
  1293. X3_4IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1294. Y3_4IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1295. Z3_4IL = ((LL3I)*(SIN(VAL_FHI2)));
  1296. VAL_FHI1 = ('EXTR' LL_FHI1 (II1)) + (((3.0)*(180.0))/(2.0));
  1297. VAL_FHI2 = ('EXTR' LL_FHI2 (JJ1));
  1298. X4_4IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1299. Y4_4IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1300. Z4_4IL = ((LL3I)*(SIN(VAL_FHI2)));
  1301. X1_4I =
  1302. ((X1_4IL)*(VECT1IX)) + ((Y1_4IL)*(VECT2IX)) + ((Z1_4IL)*(VECT3IX));
  1303. Y1_4I =
  1304. ((X1_4IL)*(VECT1IY)) + ((Y1_4IL)*(VECT2IY)) + ((Z1_4IL)*(VECT3IY));
  1305. Z1_4I =
  1306. ((X1_4IL)*(VECT1IZ)) + ((Y1_4IL)*(VECT2IZ)) + ((Z1_4IL)*(VECT3IZ));
  1307. X2_4I =
  1308. ((X2_4IL)*(VECT1IX)) + ((Y2_4IL)*(VECT2IX)) + ((Z2_4IL)*(VECT3IX));
  1309. Y2_4I =
  1310. ((X2_4IL)*(VECT1IY)) + ((Y2_4IL)*(VECT2IY)) + ((Z2_4IL)*(VECT3IY));
  1311. Z2_4I =
  1312. ((X2_4IL)*(VECT1IZ)) + ((Y2_4IL)*(VECT2IZ)) + ((Z2_4IL)*(VECT3IZ));
  1313. X3_4I =
  1314. ((X3_4IL)*(VECT1IX)) + ((Y3_4IL)*(VECT2IX)) + ((Z3_4IL)*(VECT3IX));
  1315. Y3_4I =
  1316. ((X3_4IL)*(VECT1IY)) + ((Y3_4IL)*(VECT2IY)) + ((Z3_4IL)*(VECT3IY));
  1317. Z3_4I =
  1318. ((X3_4IL)*(VECT1IZ)) + ((Y3_4IL)*(VECT2IZ)) + ((Z3_4IL)*(VECT3IZ));
  1319. X4_4I =
  1320. ((X4_4IL)*(VECT1IX)) + ((Y4_4IL)*(VECT2IX)) + ((Z4_4IL)*(VECT3IX));
  1321. Y4_4I =
  1322. ((X4_4IL)*(VECT1IY)) + ((Y4_4IL)*(VECT2IY)) + ((Z4_4IL)*(VECT3IY));
  1323. Z4_4I =
  1324. ((X4_4IL)*(VECT1IZ)) + ((Y4_4IL)*(VECT2IZ)) + ((Z4_4IL)*(VECT3IZ));
  1325. *
  1326. * quadrant 5 fhi1 = [0 pi/2] fhi2 = [-pi/2 0]
  1327. VAL_FHI1 = ('EXTR' LL_FHI1 (II1));
  1328. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1 - 1));
  1329. X1_5IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1330. Y1_5IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1331. Z1_5IL = ((LL3I)*(SIN(VAL_FHI2)));
  1332. VAL_FHI1 = ('EXTR' LL_FHI1 (II1 + 1));
  1333. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1 - 1));
  1334. X2_5IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1335. Y2_5IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1336. Z2_5IL = ((LL3I)*(SIN(VAL_FHI2)));
  1337. VAL_FHI1 = ('EXTR' LL_FHI1 (II1 + 1));
  1338. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1));
  1339. X3_5IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1340. Y3_5IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1341. Z3_5IL = ((LL3I)*(SIN(VAL_FHI2)));
  1342. VAL_FHI1 = ('EXTR' LL_FHI1 (II1));
  1343. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1));
  1344. X4_5IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1345. Y4_5IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1346. Z4_5IL = ((LL3I)*(SIN(VAL_FHI2)));
  1347. X1_5I =
  1348. ((X1_5IL)*(VECT1IX)) + ((Y1_5IL)*(VECT2IX)) + ((Z1_5IL)*(VECT3IX));
  1349. Y1_5I =
  1350. ((X1_5IL)*(VECT1IY)) + ((Y1_5IL)*(VECT2IY)) + ((Z1_5IL)*(VECT3IY));
  1351. Z1_5I =
  1352. ((X1_5IL)*(VECT1IZ)) + ((Y1_5IL)*(VECT2IZ)) + ((Z1_5IL)*(VECT3IZ));
  1353. X2_5I =
  1354. ((X2_5IL)*(VECT1IX)) + ((Y2_5IL)*(VECT2IX)) + ((Z2_5IL)*(VECT3IX));
  1355. Y2_5I =
  1356. ((X2_5IL)*(VECT1IY)) + ((Y2_5IL)*(VECT2IY)) + ((Z2_5IL)*(VECT3IY));
  1357. Z2_5I =
  1358. ((X2_5IL)*(VECT1IZ)) + ((Y2_5IL)*(VECT2IZ)) + ((Z2_5IL)*(VECT3IZ));
  1359. X3_5I =
  1360. ((X3_5IL)*(VECT1IX)) + ((Y3_5IL)*(VECT2IX)) + ((Z3_5IL)*(VECT3IX));
  1361. Y3_5I =
  1362. ((X3_5IL)*(VECT1IY)) + ((Y3_5IL)*(VECT2IY)) + ((Z3_5IL)*(VECT3IY));
  1363. Z3_5I =
  1364. ((X3_5IL)*(VECT1IZ)) + ((Y3_5IL)*(VECT2IZ)) + ((Z3_5IL)*(VECT3IZ));
  1365. X4_5I =
  1366. ((X4_5IL)*(VECT1IX)) + ((Y4_5IL)*(VECT2IX)) + ((Z4_5IL)*(VECT3IX));
  1367. Y4_5I =
  1368. ((X4_5IL)*(VECT1IY)) + ((Y4_5IL)*(VECT2IY)) + ((Z4_5IL)*(VECT3IY));
  1369. Z4_5I =
  1370. ((X4_5IL)*(VECT1IZ)) + ((Y4_5IL)*(VECT2IZ)) + ((Z4_5IL)*(VECT3IZ));
  1371. *
  1372. * quadrant 6 fhi1 = [pi/2 pi] fhi2 = [-pi/2 0]
  1373. VAL_FHI1 = ('EXTR' LL_FHI1 (II1)) + ((180.0)/(2.0));
  1374. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1 - 1));
  1375. X1_6IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1376. Y1_6IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1377. Z1_6IL = ((LL3I)*(SIN(VAL_FHI2)));
  1378. VAL_FHI1 = ('EXTR' LL_FHI1 (II1 + 1)) + ((180.0)/(2.0));
  1379. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1 - 1));
  1380. X2_6IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1381. Y2_6IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1382. Z2_6IL = ((LL3I)*(SIN(VAL_FHI2)));
  1383. VAL_FHI1 = ('EXTR' LL_FHI1 (II1 + 1)) + ((180.0)/(2.0));
  1384. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1));
  1385. X3_6IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1386. Y3_6IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1387. Z3_6IL = ((LL3I)*(SIN(VAL_FHI2)));
  1388. VAL_FHI1 = ('EXTR' LL_FHI1 (II1)) + ((180.0)/(2.0));
  1389. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1));
  1390. X4_6IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1391. Y4_6IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1392. Z4_6IL = ((LL3I)*(SIN(VAL_FHI2)));
  1393. X1_6I =
  1394. ((X1_6IL)*(VECT1IX)) + ((Y1_6IL)*(VECT2IX)) + ((Z1_6IL)*(VECT3IX));
  1395. Y1_6I =
  1396. ((X1_6IL)*(VECT1IY)) + ((Y1_6IL)*(VECT2IY)) + ((Z1_6IL)*(VECT3IY));
  1397. Z1_6I =
  1398. ((X1_6IL)*(VECT1IZ)) + ((Y1_6IL)*(VECT2IZ)) + ((Z1_6IL)*(VECT3IZ));
  1399. X2_6I =
  1400. ((X2_6IL)*(VECT1IX)) + ((Y2_6IL)*(VECT2IX)) + ((Z2_6IL)*(VECT3IX));
  1401. Y2_6I =
  1402. ((X2_6IL)*(VECT1IY)) + ((Y2_6IL)*(VECT2IY)) + ((Z2_6IL)*(VECT3IY));
  1403. Z2_6I =
  1404. ((X2_6IL)*(VECT1IZ)) + ((Y2_6IL)*(VECT2IZ)) + ((Z2_6IL)*(VECT3IZ));
  1405. X3_6I =
  1406. ((X3_6IL)*(VECT1IX)) + ((Y3_6IL)*(VECT2IX)) + ((Z3_6IL)*(VECT3IX));
  1407. Y3_6I =
  1408. ((X3_6IL)*(VECT1IY)) + ((Y3_6IL)*(VECT2IY)) + ((Z3_6IL)*(VECT3IY));
  1409. Z3_6I =
  1410. ((X3_6IL)*(VECT1IZ)) + ((Y3_6IL)*(VECT2IZ)) + ((Z3_6IL)*(VECT3IZ));
  1411. X4_6I =
  1412. ((X4_6IL)*(VECT1IX)) + ((Y4_6IL)*(VECT2IX)) + ((Z4_6IL)*(VECT3IX));
  1413. Y4_6I =
  1414. ((X4_6IL)*(VECT1IY)) + ((Y4_6IL)*(VECT2IY)) + ((Z4_6IL)*(VECT3IY));
  1415. Z4_6I =
  1416. ((X4_6IL)*(VECT1IZ)) + ((Y4_6IL)*(VECT2IZ)) + ((Z4_6IL)*(VECT3IZ));
  1417. *
  1418. * quadrant 7 fhi1 = [pi 3pi/2] fhi2 = [-pi/2 0]
  1419. VAL_FHI1 = ('EXTR' LL_FHI1 (II1)) + ((180.0)/(1.0));
  1420. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1 - 1));
  1421. X1_7IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1422. Y1_7IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1423. Z1_7IL = ((LL3I)*(SIN(VAL_FHI2)));
  1424. VAL_FHI1 = ('EXTR' LL_FHI1 (II1 + 1)) + ((180.0)/(1.0));
  1425. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1 - 1));
  1426. X2_7IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1427. Y2_7IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1428. Z2_7IL = ((LL3I)*(SIN(VAL_FHI2)));
  1429. VAL_FHI1 = ('EXTR' LL_FHI1 (II1 + 1)) + ((180.0)/(1.0));
  1430. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1));
  1431. X3_7IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1432. Y3_7IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1433. Z3_7IL = ((LL3I)*(SIN(VAL_FHI2)));
  1434. VAL_FHI1 = ('EXTR' LL_FHI1 (II1)) + ((180.0)/(1.0));
  1435. VAL_FHI2 = (-1.0)*('EXTR' LL_FHI2 (JJ1));
  1436. X4_7IL = (((LL1I)*(COS(VAL_FHI1)))*(COS(VAL_FHI2)));
  1437. Y4_7IL = (((LL2I)*(SIN(VAL_FHI1)))*(COS(VAL_FHI2)));
  1438. Z4_7IL = ((LL3I)*(SIN(VAL_FHI2)));
  1439. X1_7I =
  1440. ((X1_7IL)*(VECT1IX)) + ((Y1_7IL)*(VECT2IX)) + ((Z1_7IL)*(VECT3IX));
  1441. Y1_7I =
  1442. ((X1_7IL)*(VECT1IY)) + ((Y1_7IL)*(VECT2IY)) + ((Z1_7IL)*(VECT3IY));
  1443. Z1_7I =
  1444. ((X1_7IL)*(VECT1IZ)) + ((Y1_7IL)*(VECT2IZ)) + ((Z1_7IL)*(VECT3IZ));
  1445. X2_7I =
  1446. ((X2_7IL)*(VECT1IX)) + ((Y2_7IL)*(VECT2IX)) + ((Z2_7EL)*(VECT3IX));
  1447. Y2_7I =
  1448. ((X2_7IL)*(VECT1IY)) + ((Y2_7IL)*(VECT2IY)) + ((Z2_7IL)*(VECT3IY));
  1449. Z2_7I =
  1450. ((X2_7IL)*(VECT1IZ)) + ((Y2_7IL)*(VECT2IZ)) + ((Z2_7IL)*(VECT3IZ));
  1451. X3_7I =
  1452. ((X3_7IL)*(VECT1IX)) + ((Y3_7IL)*(VECT2IX)) + ((Z3_7IL)*(VECT3IX));
  1453. Y3_7I =
  1454. ((X3_7IL)*(VECT1IY)) + ((Y3_7IL)*(VECT2IY)) + ((Z3_7IL)*(VECT3IY));
  1455. Z3_7I =
  1456. ((X3_7IL)*(VECT1IZ)) + ((Y3_7IL)*(VECT2IZ)) + ((Z3_7IL)*(VECT3IZ));
  1457. X4_7I =
  1458. ((X4_7IL)*(VECT1IX)) + ((Y4_7IL