Télécharger sissib.procedur

Retour à la liste

Numérotation des lignes :

  1. * SISSIB PROCEDUR AF221230 16/11/03 21:15:17 9139
  2. 'DEBPROC' SISSIB TAB1*'TABLE' MTAB2/'TABLE';
  3. *
  4. **********************************************************************
  5. *
  6. * PROCEDURE DE CALCUL SISMIQUE
  7. * ----------------------------
  8. *
  9. * DONNEES :
  10. * --------
  11. *
  12. * TABRESU = SISSIB TAB1 ;
  13. *
  14. * TAB1 : OBJET DE TYPE TABLE
  15. *
  16. * TAB1.'STRUCTURE' = TABLE BASE MODALE
  17. * TAB1.'AMORTISSEMENT' = LISTREEL
  18. * TAB1.'EXCITATION' = TABLE INDICEE PAR UN ENTIER (<EG 3 )
  19. *
  20. * TAB1.'EXCITATION'.I.DIRECTION = MOT X Y OU Z
  21. * TAB1.'EXCITATION'.I . 'SPECTRE' = EVOLUTION
  22. * TAB1.'EXCITATION'.I . 'AMORTISSEMENT' = LISTREEL
  23. * TAB1.'EXCITATION'.I . 'ACCELERATION_MAXIMALE' = REEL ACCELERATION
  24. * MAXIMALE DU SEISME
  25. * DANS LA DIRECTION I
  26. * (FACULTATIF)
  27. *
  28. * TAB1.'RECOMBINAISON_MODES' = 'MOT' 'SRSS' OU 'ROSENBLUETH' OU 'CQC'
  29. * OU 'DIX_POUR_CENT'
  30. * TAB1.'DUREE' = REEL (DUREE DE LA PARTIE FORTE DU SIGNAL (FACULTATIF,
  31. * OPTION ROSENBLUETH UNIQUEMENT )
  32. *
  33. * TAB1.'RECOMBINAISON_DIRECTIONS' = MOT (REGLE DE COMBINAISON DES
  34. * DIRECTIONS : QUADRATIQUE )
  35. *
  36. * TAB1.'SORTIES' = TABLE
  37. * TAB1.'SORTIES'.'DOMAINE' = MAILLAGE OU MODELE
  38. * TAB1.'SORTIES'.'DEPLACEMENTS' = LOGIQUE ( VRAI OU FAUX ) POUR
  39. * CALCUL DES DEPLACEMENTS
  40. * TAB1.'SORTIES'.'ACCELERATIONS' = LOGIQUE ( VRAI OU FAUX ) POUR
  41. * CALCUL DES ACCELERATIONS
  42. * TAB1.'SORTIES'.'CONTRAINTES' = LOGIQUE ( VRAI OU FAUX ) POUR
  43. * CALCUL DES CONTRAINTES
  44. * TAB1.'SORTIES'.'REACTIONS' = LOGIQUE ( VRAI OU FAUX ) POUR
  45. * CALCUL DES REACTIONS
  46. *
  47. * TAB1.'REPRISE' = TABLE FACULTATIVE DONNANT LES RESULTATS D'UN
  48. * CALCUL PRECEDENT
  49. * TAB1.'REPRISE'.'SPECTRE' = TABLE INDICEE PAR UN MOT X OU Y OU Z
  50. * TAB1.'REPRISE'.'SPECTRE'.'X'.PT1 = S (F1, EPS1) PT1 POINT SOUS
  51. * TENDANT LE MODE, S (F1, EPS1)
  52. * VALEUR DU SPECTRE EN
  53. * PSEUDO - ACCELERATION
  54. * TAB1.'REPRISE'.'COEFF'= TABLE INDICEE PAR ENTIERS DE 1 A NMOD
  55. * TAB1.'REPRISE'.'COEFF'.I = TABLE INDICEE PAR ENTIERS DE I A NMOD
  56. * TAB1.'REPRISE'.'COEFF'.I.J = PIJ REEL COEFFICIENT DE CORELATION
  57. *
  58. * TAB1.'IMPRESSION' = LOGIQUE ( VRAI OU FAUX) IMPRESSION AUTOMATIQUE
  59. * DE LA TABLE DE RESULTATS. FACULTATIF.
  60. * PAR DEFAUT FAUX
  61. * TAB1.'TRONCATURE' = LOGIQUE ( VRAI OU FAUX). FACULTATIF. PAR DEFAUT
  62. * FAUX PRISE EN COMPTE DES PSEUDOMODES QUI
  63. * DOIVENT ETRE INCLUS DANS LA BASE MODALE
  64. *
  65. * --------------- Option supplementaire ------------------------------
  66. *
  67. * TABRESU = SISSIB TAB1 TAB2;
  68. *
  69. * La procedure SISSIB autre que la deternimation de la reponse
  70. * dynamique d'une structure par la methode sprectrale calcule la
  71. * matrice correspondant à l'enveloppe des efforts pour les elements
  72. * coque et voile selon le modele de MARTI à  trois couches.
  73. *
  74. * La table TAB2 fourni les elements d'entrées pour ce calcul:
  75. *
  76. * TAB3: Table concernant le voile i-eme objet
  77. * de l'etude
  78. * .I: voile i
  79. * .'MAIL': Maillage (MAILLAGE) i-eme voile
  80. * .'MODE': Modele (MMODEL) i-eme voile
  81. * .'MATE': Materiau (MCHAML) i-eme voile
  82. * .'EPAISSEUR': Epaisseur (FLOTTANT)
  83. * .'ENROBAGE_E': Enrobage couche externe (FLOTTANT)
  84. * .'ENROBAGE_I': Enrobage couche interne (FLOTTANT)
  85. * .'COT_THETA': Cotg(theta) - facteur pour
  86. * .'DIR1': Direction 1 des axes locaux
  87. * .'DIR2': Direction 2 des axes locaux
  88. *
  89. * En sortie dans la TABRESU on a:
  90. *
  91. * TABRESU.'CONTRAINTES_MEMBRANE' sous table des efforts modaux
  92. * projetés selon le modele de MARTI.
  93. * .'VOIi' Liste des voiles objet de l'etudes.
  94. * La numerotation est progressive:
  95. * VOI1; VOI2 etc
  96. * . I efforts modaux projectees
  97. * - mode I
  98. * . J efforts modaux projectees
  99. * et amplifiees selon le coeficient
  100. * d'amplification deduit par le
  101. * spectre selon la direciton J
  102. * Composent MCHAML:
  103. * N11E, N22E, N12E, N11I N22I, N12I
  104. * M11T, M22T, M12T, V1T, V2T, VR
  105. * (voir notice EFFMARTI)
  106. * TABRESU.'COVARIANCE' sous table de la matrice
  107. * caracteristiques de l'enveloppe de
  108. * la reponse sismique pour les trois
  109. * couches (modele MARTI -
  110. * voir EFFMARTI)
  111. * .'VOIi' Liste des voiles objet de l'etudes.
  112. * La numerotation est progressive:
  113. * VOI1; VOI2 etc
  114. * Les composent du MCHAML sont:
  115. * C11E C22E C33E C12E C13E C23E
  116. * C11I C22I C33I C12I C13I C23I
  117. * C11V C22V C12V
  118. * plus presisement
  119. * couche extrene [C11E C12E C13E
  120. * C12E C22E C23E
  121. * C13E C23E C33E]
  122. * couche interne [C11I C12I C13I
  123. * C12I C22I C23I
  124. * C13I C23I C33I]
  125. * couche interm. [C11V C12V
  126. * C12V C22V]
  127. * ou:
  128. * (couche externe)
  129. * C11E = N11E_max^2
  130. * C22E = N22E_max^2
  131. * C33E = N12E_max^2
  132. * C12E = N11EN22E
  133. * (covaraice N11E, N22E)
  134. * C13E = N11EN12E
  135. * (covaraice N11E, N12E)
  136. * C23E = N22EN12E
  137. * (covaraice N22E, N12E)
  138. * (couche interne)
  139. * C11I = N11I_max^2
  140. * C22I = N22I_max^2
  141. * C33I = N12I_max^2
  142. * C12I = N11IN22I
  143. * (covaraice N11I, N22I)
  144. * C13I = N11IN12I
  145. * (covaraice N11I, N12I)
  146. * C23I = N22IN12I
  147. * (covaraice N22I, N12I)
  148. * (couche intermediaire)
  149. * C11V = V1_max^2
  150. * C22V = V2_max^2
  151. * C12V = V1V2
  152. * (covaraice V1,V2)
  153. *
  154. ***********************************************************************
  155. ZUN1 = 1 ; Z2PI = 2. '*' PI ;
  156. *
  157. * TABLE ZTABSOR POUR GESTION INTERNE DES SORTIES
  158. * PERMET DE GARDER LA PROGRAMMATION INITIALE
  159. * AVANT UNE REFONTE COMPLETE ENVISAGEABLE
  160. *
  161. ZTABSOR = 'TABLE' 'SORTIES' ;
  162. *
  163. * NB DE MODES MAILLAGE ;
  164. *
  165. ZTMOD = 'TABLE' TAB1.'STRUCTURE'.'MODES' ;
  166. ZNMOD = ( 'DIME' ZTMOD ) '-' 2 ;
  167. ZGEO1 = ZTMOD.'MAILLAGE' ;
  168. *
  169. * NB DE DIRECTION DE SEISMES ;
  170. *
  171. ZTAB2 = TAB1.'EXCITATION';
  172. ZNDIR = ( 'DIME' ZTAB2 ) '-' 1 ;
  173. *
  174. * Y A T IL UNE TABLE DE REPRISE
  175. *
  176. ZIREP = 0 ;
  177. 'SI' ( 'EXISTE' TAB1 'REPRISE' ) ;
  178. ZIREP = 1 ;
  179. 'FINSI' ;
  180. *
  181. * VERIFICATION DU MAILLAGE DE SORTIE
  182. *
  183. 'SI' ( 'EXISTE' ( TAB1.'SORTIES' ) 'DOMAINE' ) ;
  184. ZDOM1 =1 ;
  185. ZOB1 = TAB1.'SORTIES'.'DOMAINE' ;
  186. ZTABSOR . 'DOMAINE' = ZOB1 ;
  187. ZTYP1 = 'TYPE' ZOB1 ;
  188. 'SI' ( 'EGA' ZTYP1 'MMODEL ' ) ;
  189. ZMAI1 = 'EXTRAIRE' ZOB1 'MAIL' ;
  190. 'SINON' ;
  191. 'SI' ( 'EGA' ZTYP1 'MAILLAGE' ) ;
  192. ZMAI1 = ZOB1 ;
  193. 'SINO' ;
  194. 'MESSAGE' 'A L INDICE DOMAINE IL FAUT DONNER '
  195. 'UN OBJET DE TYPE MAILLAGE OU MODELE' ;
  196. 'ERREUR' 'PROC_SISSI' ;
  197. 'FINSI';
  198. 'FINSI' ;
  199. 'SINON' ;
  200. ZDOM1 = 0 ;
  201. 'FINSI' ;
  202. *
  203. * PRISE EN COMPTE DES PSEUDOMODES
  204. *
  205. ZPSEU = FAUX ;
  206. 'SI' ( 'EXISTE' TAB1 'TRONCATURE' ) ;
  207. ZPSEU1 = TAB1.'TRONCATURE' ;
  208. ZTYP3 = 'TYPE' ZPSEU1 ;
  209. 'SI' ( 'EGA' ZTYP3 'LOGIQUE ' ) ;
  210. ZPSEU = ZPSEU1 ;
  211. 'SINON' ;
  212. 'MESSAGE' 'A L INDICE TRONCATURE IL FAUT DONNER '
  213. 'UN OBJET DE TYPE LOGIQUE' ;
  214. 'ERREUR' 'PROC_SISSI' ;
  215. 'FINSI' ;
  216. 'FINSI' ;
  217. *
  218. ZTSOR = TAB1.'SORTIES' ;
  219. ZIDEPL = 0 ;
  220. ZIACCE = 0 ;
  221. ZICONT = 0 ;
  222. ZIREAC = 0 ;
  223. ZISOR = 0 ;
  224. *
  225. * VERIFICATION DE LA COMPATIBILITE DU TYPE DE SORTIES AVEC LES
  226. * DONNEES DE LA BASE MODALE
  227. *
  228. 'SI' ( 'EXISTE' ZTSOR 'DEPLACEMENTS' ) ;
  229. 'SI' ( ZTSOR . 'DEPLACEMENTS' ) ;
  230. ZIDEPL = 1 ;
  231. ZISOR = ZISOR + 1 ;
  232. ZTABSOR . ZISOR = 'MOT' 'DEPLACEMENTS' ;
  233. 'SI' ( 'NON' ( 'EXISTE' ( ZTMOD.ZUN1 ) 'DEFORMEE_MODALE' ) );
  234. 'MESSAGE' 'IL MANQUE LES DEFORMEES MODALES DANS LA BASE MODALE' ;
  235. 'ERREUR' 'PROC_SISSI' ;
  236. 'FINSI' ;
  237. 'FINSI' ;
  238. 'FINSI' ;
  239. 'SI' ( 'EXISTE' ZTSOR 'ACCELERATIONS' ) ;
  240. 'SI' ( ZTSOR . 'ACCELERATIONS' ) ;
  241. ZIACCE = 1 ;
  242. ZISOR = ZISOR + 1 ;
  243. ZTABSOR . ZISOR = 'MOT' 'ACCELERATIONS' ;
  244. 'SI' ( 'NON' ( 'EXISTE' ( ZTMOD.ZUN1 ) 'DEFORMEE_MODALE' ) );
  245. 'MESSAGE' 'IL MANQUE LES DEFORMEES MODALES DANS LA BASE MODALE' ;
  246. 'ERREUR' 'PROC_SISSI' ;
  247. 'FINSI' ;
  248. 'FINSI' ;
  249. 'FINSI' ;
  250. 'SI' ( 'EXISTE' ZTSOR 'CONTRAINTES' ) ;
  251. 'SI' ( ZTSOR . 'CONTRAINTES' ) ;
  252. ZICONT = 1 ;
  253. ZISOR = ZISOR + 1 ;
  254. ZTABSOR . ZISOR = 'MOT' 'CONTRAINTES' ;
  255. 'SI' ( 'NON' ( 'EXISTE' ( ZTMOD.ZUN1 ) 'CONTRAINTE_MODALE' ) );
  256. 'MESSAGE' 'IL MANQUE LES CONTRAINTES MODALES DANS LA BASE MODALE' ;
  257. 'ERREUR' 'PROC_SISSI' ;
  258. 'FINSI' ;
  259. 'FINSI' ;
  260. 'FINSI' ;
  261. 'SI' ( 'EXISTE' ZTSOR 'REACTIONS' ) ;
  262. 'SI' ( ZTSOR . 'REACTIONS' ) ;
  263. ZIREAC = 1 ;
  264. ZISOR = ZISOR + 1 ;
  265. ZTABSOR . ZISOR = 'MOT' 'REACTIONS' ;
  266. 'SI' ( 'NON' ( 'EXISTE' ( ZTMOD.ZUN1 ) 'REACTION_MODALE' ) );
  267. 'MESSAGE' 'IL MANQUE LES REACTIONS MODALES DANS LA BASE MODALE' ;
  268. 'ERREUR' 'PROC_SISSI' ;
  269. 'FINSI' ;
  270. 'FINSI' ;
  271. 'FINSI' ;
  272. *
  273. ZNSOR = ( 'DIME' ZTABSOR ) '-' 2 ;
  274. 'SI' ( ZDOM1 'EGA' 0 ) ;
  275. ZNSOR = ZNSOR '+' 1 ;
  276. 'FINSI' ;
  277. *
  278. 'SI' ( ZNSOR 'EGA' 0 ) ;
  279. 'MESSAGE' ' ' ;
  280. 'MESSAGE' 'ATTENTION IL FAUT DEFINIR UNE OU DES SORTIES '
  281. 'DANS TAB4' ;
  282. 'ERREUR' 'PROC_SISSI' ;
  283. 'FINSI' ;
  284. *
  285. * PRETRAITEMENT DES PSEUDOMODES
  286. *
  287. 'SI' ZPSEU ;
  288. ZTPSEU = 'TABLE' 'PSEUDO' ;
  289. ZT2 = TAB1.'STRUCTURE'.'PSEUDO_MODES' ;
  290. ZNPSEU = ( 'DIME' ZT2 ) '-' 1 ;
  291. ZIPS = 0 ;
  292. 'REPETER' ZLOO100 ZNPSEU ;
  293. ZIPS = ZIPS '+' 1 ;
  294. ZPSDIR = ZT2.ZIPS.'DIRECTION' ;
  295. ZTPSEUD = 'TABLE' 'PSEU_DIR' ;
  296. ZTPSEU.ZPSDIR = ZTPSEUD ;
  297. ZTPSEUD.'DEPLACEMENT' = ZT2.ZIPS.'DEPLACEMENT' ;
  298. 'SI' ( ZICONT 'EGA' 1 ) ;
  299. 'SI' ( 'EXISTE' ( ZT2.ZIPS ) 'CONTRAINTE' ) ;
  300. ZTPSEUD.'CONTRAINTE' = ZT2.ZIPS.'CONTRAINTE' ;
  301. 'SINON' ;
  302. 'MESSAGE' 'IL FAUT DONNER LES CONTRAINTES POUR LE PSEUDOMODE' ;
  303. 'ERREUR' 'PROC_SISSI' ;
  304. 'FINSI' ;
  305. 'FINSI' ;
  306. 'SI' ( ZIREAC 'EGA' 1 ) ;
  307. 'SI' ( 'EXISTE' ( ZT2.ZIPS ) 'REACTION' ) ;
  308. ZTPSEUD.'REACTION' = ZT2.ZIPS.'REACTION' ;
  309. 'SINON' ;
  310. 'MESSAGE' 'IL FAUT DONNER LES REACTIONS POUR LE PSEUDOMODE' ;
  311. 'ERREUR' 'PROC_SISSI' ;
  312. 'FINSI' ;
  313. 'FINSI' ;
  314. 'FIN' ZLOO100 ;
  315. 'FINSI' ;
  316. *
  317. * VERIFICATION DES DONNEES POUR LA COMBINAISON DES DIRECTIONS
  318. *
  319. 'SI' ( 'EXISTE' TAB1 'RECOMBINAISON_DIRECTIONS' ) ;
  320. ZMO2 = TAB1.'RECOMBINAISON_DIRECTIONS' ;
  321. 'SI' ( 'EGA' ZMO2 'QUADRATIQUE' );
  322. ZIRDIR = 1 ;
  323. 'SINON' ;
  324. 'MESSAGE' 'ERREUR DE DONNEE POUR LA COMBINAISON DES DIRECTIONS' ;
  325. 'ERREUR' 'PROC_SISSI' ;
  326. 'FINSI' ;
  327. 'SINON';
  328. 'MESSAGE' 'IL FAUT DONNER UNE REGLE DE COMBINAISON DES DIRECTIONS' ;
  329. 'ERREUR' 'PROC_SISSI' ;
  330. 'FINSI' ;
  331. *
  332. * VERIFICATION DES AMORTISSEMENTS
  333. *
  334. LAM1 = TAB1.'AMORTISSEMENT' ;
  335. ZAMAX1 = 'MAXI' LAM1 ;
  336. ZAMIN1 = 'MINI' LAM1 ;
  337. *
  338. ZI = 0 ;
  339. 'REPETER' ZLOOP3 ZNDIR;
  340. ZI = ZI '+' 1 ;
  341. ZLASP = ZTAB2.ZI.'AMORTISSEMENT' ;
  342. ZAMX1 = 'MAXI' ZLASP ;
  343. ZAMN1 = 'MINI' ZLASP ;
  344. *
  345. 'SI' ( ( ZAMAX1 '>' ZAMX1 ) 'OU' ( ZAMIN1 '<' ZAMN1 ) ) ;
  346. 'MESSAGE' 'AMORTISSEMENT STRUCTURE INCOMPATIBLE AVEC';
  347. 'MESSAGE' 'AMORTISSEMENT DES SPECTRES DU SEISME' ;
  348. 'ERREUR' 'PROC_SISSI' ;
  349. 'FINSI' ;
  350. *
  351. 'FIN' ZLOOP3 ;
  352. *
  353. * CREATION DES RAPPORTS Q/M ET Q/MW2
  354. *
  355. ZQSM = 'TABLE' 'FACTEUR_DE_PARTICIPATION' ;
  356. ZQSMW2 = 'TABLE' 'QSMW2' ;
  357. ZI = 0 ;
  358. 'REPETER' ZLOOP4 ZNMOD ;
  359. ZI = ZI '+' 1 ;
  360. ZFR = ZTMOD.ZI.'FREQUENCE' ;
  361. ZMG = ZTMOD.ZI.'MASSE_GENERALISEE' ;
  362. ZOMEG = Z2PI '*' ZFR ;
  363. ZOMEG2 = ZOMEG '*' ZOMEG ;
  364. *
  365. ZQSMI = 'TABLE' 'QSM' ;
  366. ZQSMW2I = 'TABLE' 'QSMW2' ;
  367. ZQSM.ZI = ZQSMI ;
  368. ZQSMW2.ZI = ZQSMW2I ;
  369. ZNQ = 3 ;
  370. ZDI = 0 ;
  371. 'REPETER' ZLOOP5 ZNQ ;
  372. ZDI = ZDI '+' 1 ;
  373. ZQ = ZTMOD.ZI.'DEPLACEMENTS_GENERALISES'.ZDI ;
  374. ZQSMI.ZDI = ZQ '/' ZMG ;
  375. ZQSMW2I.ZDI = ZQ '/' ( ZMG '*' ZOMEG2 ) ;
  376. 'FIN' ZLOOP5 ;
  377. 'FIN' ZLOOP4 ;
  378. *
  379. * ACCELERATION MAXIMALE DU SEISME
  380. *
  381. ZTGAM = 'TABLE' 'ACCELERATION_MAXIMALE' ;
  382. ZDIR = 0 ;
  383. 'REPETER' ZLOOP60 ZNDIR ;
  384. ZDIR = ZDIR '+' 1 ;
  385. 'SI' ( 'EXISTE' ( TAB1.'EXCITATION'.ZNDIR )
  386. 'ACCELERATION_MAXIMALE' ) ;
  387. ZTGAM.ZDIR = TAB1.'EXCITATION'.ZNDIR.'ACCELERATION_MAXIMALE' ;
  388. 'SINON' ;
  389. ZEVSPI = TAB1.'EXCITATION'.ZDIR.'SPECTRE' ;
  390. ZLSPI = 'EXTRAIRE' ZEVSPI 'ORDO' ZUN1 ;
  391. ZPTSP = 'DIME' ZLSPI ;
  392. ZTGAM.ZDIR = 'EXTRAIRE' ZLSPI ZPTSP ;
  393. 'FINSI' ;
  394. 'FIN' ZLOOP60 ;
  395. *
  396. * INITIALISATION DE LA TABLE DES RESULTATS
  397. *
  398. TRESU = 'TABLE' 'RESULATS' ;
  399. *
  400. * DETERMINATION DES VALEURS DES SPECTRES POUR CHAQUE MODE
  401. * ET CHAQUE DIRECTION
  402. *
  403. 'SI' ( ZIREP 'EGA' 1 ) ;
  404. ZTSPEC = TAB1.'REPRISE'.'SPECTRE' ;
  405. 'SINON' ;
  406. ZTSPEC = 'TABLE' 'SPECTRE' ;
  407. ZTREP = 'TABLE' 'REPRISE' ;
  408. ZTREP.'SPECTRE' = ZTSPEC ;
  409. TRESU.'REPRISE' = ZTREP ;
  410. *
  411. ZI = 0 ;
  412. 'REPETER' ZLOOP1 ZNMOD ;
  413. ZI = ZI '+' 1 ;
  414. ZXSI = 'EXTRAIRE' TAB1.'AMORTISSEMENT' ZI ;
  415. ZFR = ZTMOD.ZI.'FREQUENCE' ;
  416. ZDI = 0;
  417. ZTSPD = 'TABLE' 'SPEC_D' ;
  418. ZTSPEC.ZI = ZTSPD ;
  419. 'REPETER' ZLOOP10 ZNDIR ;
  420. ZDI = ZDI '+' 1 ;
  421. ZEVSPI = TAB1.'EXCITATION'.ZDI.'SPECTRE' ;
  422. ZLAMSPI = TAB1.'EXCITATION'.ZDI.'AMORTISSEMENT' ;
  423. ZNAM = 'DIME' ZLAMSPI ;
  424. 'SI' ( ZNAM 'EGA' 1 ) ;
  425. ZAMSP = 'EXTRAIRE' ZLAMSPI ZUN1 ;
  426. 'SI' ( ( 'ABS' ( ZXSI '-' ZAMSP) ) '&lt;EG' 1.E-4 ) ;
  427. ZLFRI = 'EXTRAIRE' ZEVSPI 'ABSC' ZUN1 ;
  428. ZLSPI = 'EXTRAIRE' ZEVSPI 'ORDO' ZUN1 ;
  429. ZTSPD.ZDI = 'EXP' ( 'IPOL' ( 'LOG' ZFR )
  430. ( 'LOG' ZLFRI ) ( 'LOG' ZLSPI ) );
  431. 'SINON' ;
  432. 'MESSAGE' 'ERREUR DANS LES AMORTISSEMENTS' ;
  433. 'ERREUR' 'PROC_SISSI' ;
  434. 'FINSI' ;
  435. 'SINON' ;
  436. ZLSPAM = 'PROG' ZNAM '*' 0.;
  437. ZIAM = 0 ;
  438. 'REPETER' ZLOOP11 ZNAM ;
  439. ZIAM = ZIAM '+' 1 ;
  440. ZLFRI = 'EXTRAIRE' ZEVSPI 'ABSC' ZIAM ;
  441. ZLSPI = 'EXTRAIRE' ZEVSPI 'ORDO' ZIAM ;
  442. 'REMPLACER' ZLSPAM ZIAM ('EXP' ( 'IPOL' ( 'LOG' ZFR )
  443. ( 'LOG' ZLFRI ) ( 'LOG' ZLSPI ) ) ) ;
  444. 'FIN' ZLOOP11 ;
  445. ZTSPD.ZDI = 'IPOL' ZXSI ZLAMSPI ZLSPAM ;
  446. 'FINSI' ;
  447. 'FIN' ZLOOP10 ;
  448. 'FIN' ZLOOP1 ;
  449. 'FINSI' ;
  450. *
  451. * CALCUL DES COEFFICIENTS DE CORELATION ENTRE MODES
  452. * SELON LES TYPES DE COMBINAISON SOUHAITEES
  453. *
  454. 'SI' ( ZIREP 'EGA' 1 ) ;
  455. ZTPIJ = TAB1.REPRISE.'PIJ' ;
  456. 'SINON';
  457. ZTPIJ = 'TABLE' 'COEFF' ;
  458. ZTREP.'PIJ' = ZTPIJ ;
  459. ZI = 0 ;
  460. 'REPETER' ZLOOP20 ZNMOD ;
  461. ZI = ZI '+' 1 ;
  462. ZTPI = 'TABLE' 'COEFF_I' ;
  463. ZTPIJ.ZI = ZTPI ;
  464. ZTPI.ZI = 1.0 ;
  465. *
  466. 'SI' ( ZI 'NEG' 1 ) ;
  467. ZNJ = ZI '-' 1 ;
  468. ZJ = 0 ;
  469. 'REPETER' ZLOOP21 ZNJ ;
  470. ZJ = ZJ '+' 1 ;
  471. ZMREC = TAB1.'RECOMBINAISON_MODES';
  472. ZXSI = 'EXTRAIRE' TAB1.'AMORTISSEMENT' ZI ;
  473. ZFRI = ZTMOD.ZI.'FREQUENCE' ;
  474. ZOMEGI = Z2PI '*' ZFRI ;
  475. ZXSJ = 'EXTRAIRE' TAB1.'AMORTISSEMENT' ZJ ;
  476. ZFRJ = ZTMOD.ZJ.'FREQUENCE' ;
  477. ZOMEGJ = Z2PI '*' ZFRJ ;
  478. 'SI' ( 'EGA' ZMREC 'SRSS' ) ;
  479. ZTPI.ZJ = 0. ;
  480. 'SINON';
  481. 'SI' ( 'EGA' ZMREC 'CQC' ) ;
  482. ZOM2I = ZOMEGI '*' ZOMEGI ;
  483. ZOM2J = ZOMEGJ '*' ZOMEGJ ;
  484. Z1 = 8.0 '*' ( ( ZXSI '*' ZXSJ '*' ZOMEGI '*' ZOMEGJ )
  485. '**' 0.5 ) ;
  486. Z2 = ZOMEGI '*' ZOMEGJ ;
  487. Z3 = ( ZOM2I - ZOM2J ) '**' 2 ;
  488. Z4 = 4. '*' ZXSI '*' ZXSJ '*' ZOMEGI '*' ZOMEGJ
  489. '*' ( ZOM2I '+' ZOM2J ) ;
  490. Z5 = 4. '*' ( ( ZXSI '**' 2 ) '+' ( ZXSJ '**' 2 ) )
  491. '*' ZOM2I '*' ZOM2J ;
  492. Z6 = ( ZXSI '*' ZOMEGI ) '+' ( ZXSJ '*' ZOMEGJ ) ;
  493. ZTPI.ZJ = Z1 '*' Z6 '*' Z2 '/' ( Z3 '+' Z4 '+' Z5 ) ;
  494. 'SINON' ;
  495. 'SI' ( 'EGA' ZMREC 'ROSENBLUETH' ) ;
  496. 'SI' ( 'EXISTE' TAB1 'DUREE' ) ;
  497. ZTDUR = TAB1.'DUREE' ;
  498. ZEPSI = ZXSI '+' ( 2. / ( ZOMEGI '*' ZTDUR ) ) ;
  499. ZEPSJ = ZXSJ '+' ( 2. / ( ZOMEGJ '*' ZTDUR ) ) ;
  500. ZFR1I = ZFRI '*' ( ( 1. '-'
  501. ( ZEPSI '*' ZEPSI ) ) '**' 0.5 ) ;
  502. ZFR1J = ZFRJ '*' ( ( 1. '-'
  503. ( ZEPSJ '*' ZEPSJ ) ) '**' 0.5 ) ;
  504. ZALF = ( ZFR1I '-' ZFR1J ) '/' ( ( ZFRI '*' ZEPSI )
  505. '+' ( ZFRJ '*' ZEPSJ ) ) ;
  506. ZTPI.ZJ = 1. '/' ( 1. '+' ( ZALF '*' ZALF ) ) ;
  507. 'SINON' ;
  508. 'MESSAGE' 'POUR LA METHODE DE ROSENBLUETH DONNER' ;
  509. 'MESSAGE' 'LA DUREE DU SIGNAL' ;
  510. 'ERREUR' 'PROC_SISSI' ;
  511. 'FINSI' ;
  512. 'SINON' ;
  513. 'SI' ( 'EGA' ZMREC 'DIX_POUR_CENT' ) ;
  514. ZDELT = 'ABS' ( 2. '*' ( ZFRJ '-' ZFRI ) '/'
  515. ( ZFRJ '+' ZFRI ) ) ;
  516. 'SI' ( ZDELT '&lt;EG' 0.1 ) ;
  517. ZTPI.ZJ = 1. ;
  518. 'SINON';
  519. ZTPI.ZJ = 0. ;
  520. 'FINSI';
  521. 'SINON' ;
  522. 'MESSAGE' 'ERREUR DE DONNEES POUR LA REGLE' ;
  523. 'MESSAGE' 'DE COMBINAISON DE MODES' ;
  524. 'ERREUR' 'PROC_SISSI' ;
  525. 'FINSI' ;
  526. 'FINSI' ;
  527. 'FINSI' ;
  528. 'FINSI' ;
  529. 'FIN' ZLOOP21;
  530. 'FINSI' ;
  531. 'FIN' ZLOOP20 ;
  532. 'FINSI';
  533. *
  534. *
  535. * ---------------------------------------------------------------
  536. * +++++++++++++++ CALCUL DE LA REPONSE +++++++++++++++++
  537. * ---------------------------------------------------------------
  538. *
  539. * REDUCTION DES DONNEES MODALES SUR LE DOMAINE D'ETUDE
  540. *
  541. ZTDEPL = 'TABLE' 'DEF_MOD' ;
  542. ZTCONT = 'TABLE' 'CONT_MOD' ;
  543. ZI = 0 ;
  544. 'REPETER' ZLOOP30 ZNMOD ;
  545. ZI = ZI '+' 1 ;
  546. ZPHI = ZTMOD.ZI.'DEFORMEE_MODALE' ;
  547. *
  548. * AJOUT DU TEST SUR LA NECESSITE D AVOIR LES CONTRAINTES MODALES
  549. * POUR LE CALCUL DE REPONSE F. PICARD LE 24 MAI 1993
  550. *
  551. 'SI' ( 'EGA' ZDOM1 0 ) ;
  552. 'SI' ( 'EGA' ZI 1 ) ;
  553. ZMAI1 = 'EXTRAIRE' ZPHI 'MAIL' 'NOMU' ;
  554. 'FINSI' ;
  555. 'SI' ( ( 'EGA' ZIDEPL 1 ) 'OU' ( 'EGA' ZIACCE 1 ) ) ;
  556. ZTDEPL.ZI = ZPHI ;
  557. 'FINSI';
  558. 'SI' ( 'EGA' ZICONT 1 ) ;
  559. ZCON= ZTMOD.ZI.'CONTRAINTE_MODALE';
  560. ZTCONT.ZI = ZCON ;
  561. 'FINSI' ;
  562. 'SINON' ;
  563. 'SI' ( ( 'EGA' ZIDEPL 1 ) 'OU' ( 'EGA' ZIACCE 1 ) ) ;
  564. ZTDEPL.ZI = 'REDU' ZPHI ZMAI1 ;
  565. 'FINSI';
  566. 'SI' ( 'EGA' ZICONT 1 ) ;
  567. ZCON= ZTMOD.ZI.'CONTRAINTE_MODALE';
  568. ZTCONT.ZI = 'REDU' ZCON ZOB1 ;
  569. 'FINSI' ;
  570. 'FINSI' ;
  571. 'FIN' ZLOOP30 ;
  572. *
  573. * REDUCTION DES PSEUDOMODES ET VERIFICATION DES DONNEES
  574. *
  575. 'SI' ZPSEU ;
  576. ZDIR = 0 ;
  577. ZDI0 = 0;
  578. 'REPETER' ZLOO101 ZNDIR ;
  579. ZDIR = ZDIR '+' 1 ;
  580. ZMORES = 'MOT' TAB1.'EXCITATION'.ZDIR.'DIRECTION' ;
  581. 'SI' ( 'EGA' ZMORES 'X' ) ;
  582. ZDI = 1 ;
  583. MODI = 'MOT' 'UX' ;
  584. 'FINSI' ;
  585. 'SI' ( 'EGA' ZMORES 'Y' ) ;
  586. ZDI = 2 ;
  587. MODI = 'MOT' 'UY' ;
  588. 'FINSI' ;
  589. 'SI' ( 'EGA' ZMORES 'Z' ) ;
  590. ZDI = 3 ;
  591. MODI = 'MOT' 'UZ' ;
  592. 'FINSI' ;
  593. 'SI' ( 'EXISTE' ZTPSEU ZDI ) ;
  594. ZTPSEUD = ZTPSEU.ZDI ;
  595. 'SI' ( 'EGA' ZDOM1 1 ) ;
  596. 'SI' ( 'EGA' ZIDEPL 1 ) ;
  597. ZCH2 = ZTPSEUD.'DEPLACEMENT' ;
  598. ZTPSEUD.'DEPLACEMENT' = 'REDU' ZCH2 ZMAI1 ;
  599. 'FINSI' ;
  600. 'SI' ( 'EGA' ZICONT 1) ;
  601. ZCO2 = ZTPSEUD.'CONTRAINTE' ;
  602. ZTPSEUD.'CONTRAINTE' = 'REDU' ZCO2 ZOB1 ;
  603. 'FINSI' ;
  604. 'FINSI' ;
  605. 'SINON' ;
  606. 'MESS' 'IL MANQUE LE PSEUDOMODE RELATIF A LA DIRECTION : ' ZMORES ;
  607. 'ERREUR' 'PROC_SISSI' ;
  608. 'FINSI' ;
  609. 'FIN' ZLOO101 ;
  610. 'FINSI' ;
  611. *
  612. * REPONSE PAR DIRECTION
  613. *
  614. * AJOUT DE TEST POUR LE CAS D UN SEISME MONODIRECTIONNEL OU BIDIRECTIONNEL
  615. * F. PICARD LE 24 MAI 1993
  616. *
  617. ZDIR = 0 ;
  618. ZDI0 = 0;
  619. 'REPETER' ZLOOP35 ZNDIR ;
  620. ZDIR = ZDIR '+' 1 ;
  621. ZMORES = 'MOT' TAB1.'EXCITATION'.ZDIR.'DIRECTION' ;
  622. TRESDIR = 'TABLE' 'RESULTATS_DIRECTIONS' ;
  623. TRESU.ZMORES = TRESDIR ;
  624. *------------------------------------------------------------
  625. * mise a jour pour prise en compte correcte des accelerations
  626. * F PICARD le 15 decembre 1993
  627. *------------------------------------------------------------
  628. 'SI' ( 'EGA' ZMORES 'X' ) ;
  629. ZDI = 1 ;
  630. MODI = 'MOT' 'UX' ;
  631. 'FINSI' ;
  632. 'SI' ( 'EGA' ZMORES 'Y' ) ;
  633. ZDI = 2 ;
  634. MODI = 'MOT' 'UY' ;
  635. 'FINSI' ;
  636. 'SI' ( 'EGA' ZMORES 'Z' ) ;
  637. ZDI = 3 ;
  638. MODI = 'MOT' 'UZ' ;
  639. 'FINSI' ;
  640. *----- fin mise a jour --------------*
  641. ZSOR = 0 ;
  642. 'REPETER' ZLOOP36 ZNSOR ;
  643. ZSOR = ZSOR '+' 1 ;
  644. ZMOSOR = 'MOT' ZTABSOR . ZSOR ;
  645. 'SI' ( ( 'EGA' ZMOSOR 'DEPLACEMENTS' )
  646. 'OU' ( 'EGA' ZMOSOR 'ACCELERATIONS' ) ) ;
  647. ZREP = ZTDEPL.ZUN1 '*' 0. ;
  648. 'SI' ( 'EGA' ZMOSOR 'ACCELERATIONS' ) ;
  649. ZVMOD = 'VALE' 'MODE' ;
  650. 'SI' ( 'EGA' ZVMOD 'FOUR' ) ;
  651. 'SI' ( 'EGA' MODI 'UX' );
  652. ZU = 'MANU' 'CHPO' ZMAI1 2 'UR' 1.0 'UT' -1.
  653. 'NATURE' 'DIFFUS' ;
  654. 'FINSI' ;
  655. 'SI' ( 'EGA' MODI 'UY' );
  656. ZU = 'MANU' 'CHPO' ZMAI1 2 'UR' 1.0 'UT' 1.
  657. 'NATURE' 'DIFFUS' ;
  658. 'FINSI' ;
  659. 'SINON' ;
  660. 'SI' ( ( 'EGA' ZVMOD 'AXIS' ) 'ET'
  661. ( ( 'EGA' MODI 'UX' ) 'OU' ( 'EGA' MODI 'UY' ) ) );
  662. 'MESS' 'UNE STRUCTURE AXISYMETRIQUE N EST EXCITABLE'
  663. ' QUE PAR UN SEISME VERTICAL' ;
  664. 'ERREUR' 'PROC_SISSI' ;
  665. 'FINSI' ;
  666. ZU = 'MANU' 'CHPO' ZMAI1 1 MODI 1.0 'NATURE' 'DIFFUS' ;
  667. 'FINSI';
  668. ZTRON = ZU ;
  669. ZK = 0 ;
  670. 'REPETER' ZLOOP38 ZNMOD ;
  671. ZK = ZK '+' 1 ;
  672. ZTRON = ZTRON '-' ( ZQSM.ZK.ZDI '*' ZTDEPL.ZK ) ;
  673. 'FIN' ZLOOP38 ;
  674. 'FINSI' ;
  675. 'FINSI';
  676. 'SI' ( 'EGA' ZMOSOR 'CONTRAINTES' ) ;
  677. ZREP = ZTCONT.ZUN1 '*' 0. ;
  678. 'FINSI' ;
  679. 'SI' ( 'EGA' ZMOSOR 'REACTIONS' ) ;
  680. ZREP = ZTMOD.ZUN1.'REACTION_MODALE' '*' 0. ;
  681. 'FINSI' ;
  682. ZI = 0 ;
  683. 'REPETER' ZLOOP37 ZNMOD ;
  684. ZI = ZI '+' 1 ;
  685. *
  686. *ON ASSOCIE LES BONS QN AUX BONNES DIRECTIONS DE SEISME
  687. *
  688. 'SI' ('EGA' ZMORES 'X');
  689. ZCOEFI = ZTSPEC.ZI.ZDIR '*' ZQSMW2.ZI.1;
  690. 'SI' ( 'EGA' ZMOSOR 'ACCELERATIONS' ) ;
  691. ZCOEFI = ZTSPEC.ZI.ZDIR '*' ZQSM.ZI.1 ;
  692. 'FINSI' ;
  693. 'FINSI';
  694. 'SI' ('EGA' ZMORES 'Y');
  695. ZCOEFI = ZTSPEC.ZI.ZDIR '*' ZQSMW2.ZI.2;
  696. 'SI' ( 'EGA' ZMOSOR 'ACCELERATIONS' ) ;
  697. ZCOEFI = ZTSPEC.ZI.ZDIR '*' ZQSM.ZI.2 ;
  698. 'FINSI' ;
  699. 'FINSI';
  700. 'SI' ('EGA' ZMORES 'Z');
  701. ZCOEFI = ZTSPEC.ZI.ZDIR '*' ZQSMW2.ZI.3;
  702. 'SI' ( 'EGA' ZMOSOR 'ACCELERATIONS' ) ;
  703. ZCOEFI = ZTSPEC.ZI.ZDIR '*' ZQSM.ZI.3 ;
  704. 'FINSI' ;
  705. 'FINSI';
  706. ****** PARTIE SRSS ON Y PASSE TOUJOURS ******
  707. 'SI' ( 'EGA' ZMOSOR 'DEPLACEMENTS' ) ;
  708. ZREP = ZREP '+' ( ( ZCOEFI '*' ZCOEFI ) '*'
  709. ( ZTDEPL.ZI '**' 2 ) );
  710. 'FINSI' ;
  711. 'SI' ( 'EGA' ZMOSOR 'ACCELERATIONS' ) ;
  712. ZREP = ZREP '+' ( ( ZCOEFI '*' ZCOEFI ) '*'
  713. ( ZTDEPL.ZI '**' 2 ) ) ;
  714. 'FINSI';
  715. 'SI' ( 'EGA' ZMOSOR 'CONTRAINTES' ) ;
  716. ZREP = ZREP '+' ( ( ZCOEFI '*' ZCOEFI ) '*'
  717. ( ZTCONT.ZI '*' ZTCONT.ZI ) ) ;
  718. 'FINSI' ;
  719. 'SI' ( 'EGA' ZMOSOR 'REACTIONS' ) ;
  720. ZREI = ZTMOD.ZI.'REACTION_MODALE' ;
  721. ZREP = ZREP '+' ( ( ZCOEFI '*' ZCOEFI ) '*'
  722. ( ZREI '**' 2 ) ) ;
  723. 'FINSI' ;
  724. ****** TRAITEMENT DES DIFFERENTES METHODES DE RECOMBINAISON ***********
  725. ZMREC = TAB1.'RECOMBINAISON_MODES';
  726.  
  727. 'SI' ( ( 'NEG' ZMREC 'SRSS' ) 'ET' ( ZI >EG 2 ) ) ;
  728. ZJ = 0 ;
  729. 'REPETER' ZLOOP40 ( ZI '-' 1 ) ;
  730. ZJ = ZJ '+' 1 ;
  731. ZCOEFJ = ZTSPEC.ZJ.ZDIR '*' ZQSMW2.ZJ.ZDI ;
  732. 'SI' ( 'EGA' ZMOSOR 'ACCELERATIONS' ) ;
  733. ZCOEFJ = ZTSPEC.ZJ.ZDIR '*' ZQSM.ZJ.ZDI ;
  734. 'FINSI' ;
  735. 'SI' ( 'EGA' ZMOSOR 'DEPLACEMENTS' ) ;
  736. ZCH1 = MULC ZTDEPL.ZI ZTDEPL.ZJ ;
  737. ZREPC = 2. '*' ZTPIJ.ZI.ZJ '*' ( ZCOEFI '*' ZCOEFJ ) '*'
  738. ZCH1 ;
  739. 'FINSI' ;
  740. 'SI' ( 'EGA' ZMOSOR 'ACCELERATIONS' ) ;
  741. ZCH2 = MULC ZTDEPL.ZI ZTDEPL.ZJ ;
  742. ZREPC = 2. '*' ZTPIJ.ZI.ZJ '*' ( ZCOEFI '*' ZCOEFJ ) '*'
  743. ZCH2 ;
  744. 'FINSI';
  745. 'SI' ( 'EGA' ZMOSOR 'CONTRAINTES' ) ;
  746. ZREPC = 2. '*' ZTPIJ.ZI.ZJ '*' ( ZCOEFI '*' ZCOEFJ ) '*'
  747. ( ZTCONT.ZI '*' ZTCONT.ZJ ) ;
  748. 'FINSI' ;
  749. 'SI' ( 'EGA' ZMOSOR 'REACTIONS' ) ;
  750. ZREI = ZTMOD.ZI.'REACTION_MODALE' ;
  751. ZREJ = ZTMOD.ZJ.'REACTION_MODALE' ;
  752. ZCH3 = MULC ZREI ZREJ ;
  753. ZREPC = 2. '*' ZTPIJ.ZI.ZJ '*' ( ZCOEFI '*' ZCOEFJ ) '*'
  754. ZCH3 ;
  755. 'FINSI' ;
  756. 'SI' ( 'EGA' ZMREC 'DIX_POUR_CENT' ) ;
  757. ZREPC = 'ABS' ZREPC ;
  758. 'FINSI';
  759. 'SI' ( 'EGA' ZJ 1 ) ;
  760. ZREPCT = ZREPC ;
  761. 'SINON' ;
  762. ZREPCT = ZREPCT '+' ZREPC ;
  763. 'FINSI' ;
  764. 'FIN' ZLOOP40 ;
  765. ZREP = ZREP '+' ZREPCT ;
  766. 'FINSI' ;
  767. 'FIN' ZLOOP37 ;
  768. ****** ACCELERATION TERME COMPLEMENTAIRE ********
  769. 'SI' ( 'EGA' ZMOSOR 'ACCELERATIONS' ) ;
  770. GAMA0 = ZTGAM.ZDIR ;
  771. ZREP = ZREP '+' ( ( GAMA0 '*' GAMA0 )
  772. '*' ( ZTRON '**' 2 ) ) ;
  773. 'FINSI' ;
  774. ****** ON RAJOUTE LES PSEUDOMODES ********
  775. 'SI' ZPSEU ;
  776. GAMA0 = ZTGAM.ZDIR ;
  777. 'SI' ( 'EGA' ZMOSOR 'DEPLACEMENTS' ) ;
  778. ZREP = ZREP '+' ( ( GAMA0 '*' GAMA0 )
  779. * ( ZTPSEU.ZDI.'DEPLACEMENT' '**' 2 ) ) ;
  780. 'FINSI' ;
  781. 'SI' ( 'EGA' ZMOSOR 'CONTRAINTES' ) ;
  782. ZREP = ZREP '+' ( ( GAMA0 '*' GAMA0 )
  783. * ( ZTPSEU.ZDI.'CONTRAINTE' '**' 2 ) ) ;
  784. 'FINSI' ;
  785. 'SI' ( 'EGA' ZMOSOR 'REACTIONS' ) ;
  786. ZREP = ZREP '+' ( ( GAMA0 '*' GAMA0 )
  787. * ( ZTPSEU.ZDI.'REACTION' '**' 2 ) ) ;
  788. 'FINSI' ;
  789. 'FINSI' ;
  790. ****** ECRITURE DNS LA TABLE DE RESULTATS *******
  791. ZREP = ( 'ABS' ZREP ) '**' 0.5 ;
  792. TRESDIR.ZMOSOR = ZREP ;
  793. 'FIN' ZLOOP36 ;
  794. 'FIN' ZLOOP35 ;
  795. *
  796. * ***** COMBINAISON DES DIRECTIONS ******
  797. *
  798. TREST = 'TABLE' 'RESULTATS_TOTAUX' ;
  799. TRESU.'REPONSE_TOTALE' = TREST ;
  800. 'SI' ( 'EGA' TAB1.'RECOMBINAISON_DIRECTIONS' 'QUADRATIQUE' ) ;
  801. ZSOR = 0 ;
  802. 'REPETER' ZLOOP50 ZNSOR ;
  803. ZSOR = ZSOR '+' 1 ;
  804. ZMOSOR = 'MOT' ZTABSOR . ZSOR ;
  805. ZDIR = 0 ;
  806. 'REPETER' ZLOOP51 ZNDIR ;
  807. ZDIR = ZDIR '+' 1 ;
  808. ZMORES = TAB1.'EXCITATION'.ZDIR.'DIRECTION' ;
  809. 'SI' ( 'EGA' ZDIR 1 ) ;
  810. ZREPT = TRESU.ZMORES.ZMOSOR '**' 2 ;
  811. 'SINON' ;
  812. ZREPT = ZREPT '+' ( TRESU.ZMORES.ZMOSOR '**' 2 ) ;
  813. 'FINSI' ;
  814. 'FIN' ZLOOP51 ;
  815. TREST.ZMOSOR = ZREPT '**' 0.5 ;
  816. 'FIN' ZLOOP50 ;
  817. 'FINSI' ;
  818. *
  819. *
  820. * IMPRESSION DES RESULTATS
  821. *
  822. ZIMPR = FAUX ;
  823. 'SI' ( 'EXISTE' TAB1 'IMPRESSION' ) ;
  824. ZIMPR1 = TAB1.'IMPRESSION' ;
  825. ZTYP2 = 'TYPE' ZIMPR1 ;
  826. 'SI' ( 'EGA' ZTYP2 'LOGIQUE ' ) ;
  827. ZIMPR = ZIMPR1 ;
  828. 'SINON' ;
  829. 'MESSAGE' 'A L INDICE IMPRESSION IL FAUT DONNER '
  830. 'UN OBJET DE TYPE LOGIQUE' ;
  831. 'ERREUR' 'PROC_SISSI' ;
  832. 'FINSI' ;
  833. *
  834. 'FINSI' ;
  835. 'SI' ZIMPR ;
  836. 'SAUTE' 20 'LIGNE' ;
  837. 'MESS' ' |-------------------------------------------|' ;
  838. 'MESS' ' | RESULTATS DE LA PROCEDURE S I S S I |' ;
  839. 'MESS' ' |___________________________________________|' ;
  840. 'SAUTE' 5 'LIGNE' ;
  841. *
  842. 'MESS' ' VALEUR DU SPECTRE' ;
  843. 'MESS' ' -----------------' ;
  844. 'SAUTE' 2 'LIGNE' ;
  845. ZI = 0 ;
  846. 'REPETER' ZLOOP60 ZNMOD ;
  847. ZI = ZI '+' 1 ;
  848. ZFI = ZTMOD.ZI.'FREQUENCE' ;
  849. ZXSI = 'EXTRAIRE' TAB1.'AMORTISSEMENT' ZI ;
  850. 'MESS' 'MODE NUMERO : ' ZI ' FREQUENCE : ' ZFI 'HZ'
  851. ' AMORTISSEMENT : ' ZXSI ;
  852. ZDIR = 0 ;
  853. 'REPETER' ZLOOP61 ZNDIR ;
  854. ZDIR = ZDIR '+' 1 ;
  855. ZMODIR = 'MOT' TAB1.'EXCITATION'.ZDIR.'DIRECTION' ;
  856. 'MESS' ' SPECTRE ' ZMODIR ' : '
  857. TRESU.'REPRISE'.'SPECTRE'.ZI.ZDIR ;
  858. 'FIN' ZLOOP61 ;
  859. 'SAUTE' 2 'LIGNE' ;
  860. 'FIN' ZLOOP60 ;
  861. *
  862. *
  863. 'SAUTE' 5 'LIGNE' ;
  864. 'MESS' ' COEFFICIENTS DE CORRELATION ENTRE MODES' ;
  865. 'MESS' ' ---------------------------------------' ;
  866. 'SAUTE' 2 'LIGNE' ;
  867. ZI = 1 ;
  868. 'REPETER' ZLOOP62 ( ZNMOD '-' 1 ) ;
  869. ZI = ZI '+' 1 ;
  870. ZJ = 0 ;
  871. 'REPETER' ZLOOP63 ( ZI '-' 1 ) ;
  872. ZJ = ZJ '+' 1 ;
  873. 'MESS' ' I' ZI 'J' ZJ 'PIJ' TRESU.'REPRISE'.'PIJ'.ZI.ZJ ;
  874. 'FIN' ZLOOP63 ;
  875. 'SAUT' 4 'LIGNE' ;
  876. 'FIN' ZLOOP62 ;
  877. *
  878. *
  879. ZDIR = 0;
  880. 'REPETER' ZLOOP64 ZNDIR ;
  881. ZDIR = ZDIR '+' 1 ;
  882. ZMODIR = 'MOT' TAB1.'EXCITATION'.ZDIR.'DIRECTION' ;
  883. 'MESS' ' DIRECTION ' ZDIR ' : ' ZMODIR ;
  884. 'MESS' ' -------------------------------' ;
  885. 'SAUTE' 2 'LIGNE' ;
  886. ZSOR = 0 ;
  887. 'REPETER' ZLOOP65 ZNSOR ;
  888. ZSOR = ZSOR '+' 1 ;
  889. ZMOSOR = 'MOT' ZTABSOR . ZSOR ;
  890. 'MESS' 'GRANDEUR ' ZSOR ' : ' ZMOSOR ;
  891. 'MESS' '++++++++++++++++++++++++++++++++' ;
  892. 'LIST' TRESU.ZMODIR.ZMOSOR ;
  893. 'FIN' ZLOOP65 ;
  894. 'FIN' ZLOOP64 ;
  895. *
  896. *
  897. ZSOR = 0 ;
  898. 'MESS' ' REPONSE COMBINEE TOUTES DIRECTIONS D EXCITATION' ;
  899. 'MESS' ' -----------------------------------------------' ;
  900. 'SAUTE' 2 'LIGNE' ;
  901. 'REPETER' ZLOOP66 ZNSOR ;
  902. ZSOR = ZSOR '+' 1 ;
  903. ZMOSOR = 'MOT' ZTABSOR . ZSOR ;
  904. 'MESS' 'GRANDEUR ' ZSOR ' : ' ZMOSOR ;
  905. 'MESS' '++++++++++++++++++++++++++++++++' ;
  906. 'LIST' TRESU.'REPONSE_TOTALE'.ZMOSOR ;
  907. 'FIN' ZLOOP66 ;
  908. *
  909. 'FINSI' ;
  910. *
  911. 'MENAGE' ;
  912. *
  913. * Modification du 16-10-2016 pour calculer les concomitances
  914. * selon le modele de MARTI a trois couches
  915. 'SI' ('EGA' ('TYPE' MTAB2) 'TABLE');
  916. *
  917. 'MESS' ' CALCUL DES COVARIANCES SELON LE MODELE DE MARTI' ;
  918. 'MESS' ' -----------------------------------------------' ;
  919. *
  920. * controle dimension du calcul
  921. 'SI' (('VALE' 'DIME') 'NEG' 3);
  922. 'MESS' 'Calcul possible seulement en 3D';
  923. QUIT EFFMARTI;
  924. 'FINSI';
  925. *
  926. * extraction table base modale
  927. MTAB1 = TAB1.'STRUCTURE';
  928. *
  929. * Liste des mots pour chaque voile objet du calcul
  930. I = 1;
  931. 'REPE' IND1 ('DIME' MTAB2);
  932. 'SI' (I 'EGA' 1);
  933. L_MAIL = 'MOTS' ('CHAINE' 'VOI' I);
  934. 'SINON';
  935. L_MAIL = L_MAIL 'ET' ('MOTS' ('CHAINE' 'VOI' I));
  936. 'FINSI';
  937. I = I + 1;
  938. 'FIN' IND1;
  939. *
  940. * contraintes de membrane pour chaque mode;
  941. TRESU.'REPONSE_TOTALE' . 'CONTRAINTES_MEMBRANE' = TABLE;
  942. TRESU.'REPONSE_TOTALE' .'COVARIANCE' = TABLE;
  943. *
  944. KK1 = 1;
  945. * boucle sur les voiles
  946. 'REPE' INDT ('DIME' MTAB2);
  947. * maillage voile
  948. MAI1 = MTAB2. KK1 .'MAIL';
  949. * controle maillage voile
  950. 'VERSENS' MAI1;
  951. *
  952. * extraction des quantités
  953. MOD1 = MTAB2. KK1 .'MODE';
  954. H1 = MTAB2. KK1 .'EPAISSEUR';
  955. ENRE1 = MTAB2. KK1 .'ENROBAGE_E';
  956. ENRI1 = MTAB2. KK1 .'ENROBAGE_I';
  957. COT1 = MTAB2. KK1 .'COT_THETA';
  958. * controle
  959. 'SI' ('NEG' ('TYPE' MOD1) 'MMODEL');
  960. MESS 'Pas de MMODEL';
  961. QUIT SISSIB;
  962. 'FINSI';
  963. 'SI' ('NEG' ('TYPE' H1) 'FLOTTANT');
  964. MESS 'Aucun epaisseur';
  965. QUIT SISSIB;
  966. 'FINSI';
  967. 'SI' ('NEG' ('TYPE' ENRE1) 'FLOTTANT');
  968. MESS 'Aucun enrobage externe';
  969. QUIT SISSIB;
  970. 'FINSI';
  971. 'SI' ('NEG' ('TYPE' ENRI1) 'FLOTTANT');
  972. MESS 'Aucun enrobage interne';
  973. QUIT SISSIB;
  974. 'FINSI';
  975. 'SI' ('NEG' ('TYPE' COT1) 'FLOTTANT');
  976. MESS 'Pas de cotangente';
  977. QUIT SISSIB;
  978. 'FINSI';
  979. *
  980. NN1 = ('DIME' (MTAB1.MODES)) - 2;
  981. 'SI' (NN1 'EGA' 0);
  982. * Controle sur le modes
  983. 'MESS' 'No modes dans la table MTAB1';
  984. 'ERRE' 1;
  985. 'SINON';
  986. I = 1;
  987. 'REPE' IND1 (NN1);
  988. * Boucle sur les modes
  989. CONTMOD = REDU (MTAB1.MODES. I .CONTRAINTE_MODALE) MAI1;
  990. CONTMOD = RTENS CONTMOD
  991. (MTAB2. KK1 .'MODE') (MTAB2. KK1 .'MATE')
  992. (MTAB2. KK1 .'DIR1') (MTAB2. KK1 .'DIR2');
  993. CONTMOD = 'CHAN' 'GRAVITE' CONTMOD MOD1;
  994. *
  995. * Creaction des MCHAML vides
  996. N11E = 'VIDE' 'MCHAML';
  997. N12E = 'VIDE' 'MCHAML';
  998. N22E = 'VIDE' 'MCHAML';
  999. *
  1000. N11I = 'VIDE' 'MCHAML';
  1001. N12I = 'VIDE' 'MCHAML';
  1002. N22I = 'VIDE' 'MCHAML';
  1003. *
  1004. M11 = 'VIDE' 'MCHAML';
  1005. M22 = 'VIDE' 'MCHAML';
  1006. M12 = 'VIDE' 'MCHAML';
  1007. *
  1008. V1 = 'VIDE' 'MCHAML';
  1009. V2 = 'VIDE' 'MCHAML';
  1010. VR = 'VIDE' 'MCHAML';
  1011. *
  1012. * extraction des efforts globaux
  1013. M11 = M11 'ET' (EXCO CONTMOD 'M11' 'M11T');
  1014. M22 = M22 'ET' (EXCO CONTMOD 'M22' 'M22T');
  1015. M12 = M12 'ET' (EXCO CONTMOD 'M12' 'M12T');
  1016. V1 = V1 'ET' (EXCO CONTMOD 'V1' 'V1T');
  1017. V2 = V2 'ET' (EXCO CONTMOD 'V2' 'V2T');
  1018. *
  1019. CHP1 = 'EXCO' V1 'V1T' 'SCAL';
  1020. CHP2 = 'EXCO' V2 'V2T' 'SCAL';
  1021. CHP3 = ((CHP1)*(CHP1)) + ((CHP2)*(CHP2));
  1022. CHP3 = ((CHP3)**(0.5));
  1023. AAA = MASQU CHP3 'EGINFE' (1.E-12);
  1024. CHP3 = CHP3 + (((AAA))*(1.E99));
  1025. VR = VR 'ET' (EXCO CHP3 'SCAL' 'VR');
  1026. 'OUBL' CHP1;
  1027. 'OUBL' CHP2;
  1028. 'OUBL' CHP3;
  1029. *
  1030. * Determination des efforts pour les
  1031. * membranes inferieure et superieure
  1032. N11S = 'EXCO' CONTMOD 'N11' 'SCAL';
  1033. N12S = 'EXCO' CONTMOD 'N12' 'SCAL';
  1034. N22S = 'EXCO' CONTMOD 'N22' 'SCAL';
  1035. M11S = 'EXCO' M11 'M11T' 'SCAL';
  1036. M22S = 'EXCO' M22 'M22T' 'SCAL';
  1037. M12S = 'EXCO' M12 'M12T' 'SCAL';
  1038. V1S = 'EXCO' V1 'V1T' 'SCAL';
  1039. V2S = 'EXCO' V2 'V2T' 'SCAL';
  1040. V0S = 'EXCO' VR 'VR' 'SCAL';
  1041. *
  1042. DD1 = H1 - ((ENRE1 + ENRI1)) ;
  1043. *
  1044. N11E = N11E 'ET' (((0.5)*(N11S)) +
  1045. ((M11S)/(DD1)) +
  1046. (((V1S)*(V1S))/(((2.0)*(COT1))*(V0S))));
  1047. N22E = N22E 'ET' (((0.5)*(N22S)) +
  1048. ((M22S)/(DD1)) +
  1049. (((V2S)*(V2S))/(((2.0)*(COT1))*(V0S))));
  1050. N12E = N12E 'ET' (((0.5)*(N12S)) +
  1051. ((M12S)/(DD1)) +
  1052. (((V1S)*(V2S))/(((2.0)*(COT1))*(V0S))));
  1053. N11I = N11I 'ET' (((0.5)*(N11S)) -
  1054. ((M11S)/(DD1)) +
  1055. (((V1S)*(V1S))/(((2.0)*(COT1))*(V0S))));
  1056. N22I = N22I 'ET' (((0.5)*(N22S)) -
  1057. ((M22S)/(DD1)) +
  1058. (((V2S)*(V2S))/(((2.0)*(COT1))*(V0S))));
  1059. N12I = N12I 'ET' (((0.5)*(N12S)) -
  1060. ((M12S)/(DD1)) +
  1061. (((V1S)*(V2S))/(((2.0)*(COT1))*(V0S))));
  1062. *
  1063. N11E = 'EXCO' N11E 'SCAL' 'N11E';
  1064. N22E = 'EXCO' N22E 'SCAL' 'N22E';
  1065. N12E = 'EXCO' N12E 'SCAL' 'N12E';
  1066. N11I = 'EXCO' N11I 'SCAL' 'N11I';
  1067. N22I = 'EXCO' N22I 'SCAL' 'N22I';
  1068. N12I = 'EXCO' N12I 'SCAL' 'N12I';
  1069. *
  1070. * Assemblage
  1071. MTAB1.MODES. I .CONTRAINTE_MEMBRANE = TABLE;
  1072. MTAB1.MODES. I .CONTRAINTE_MEMBRANE.(EXTR L_MAIL KK1) =
  1073. N11E ET N22E ET N12E ET
  1074. N11I ET N22I ET N12I ET
  1075. M11 ET M22 ET M12 ET
  1076. V1 ET V2 ET VR;
  1077. *
  1078. * Deduction of des autres quantities
  1079. MG_1 = MTAB1 . MODES . I . MASSE_GENERALISEE;
  1080. DG_1 = MTAB1 . MODES . I . DEPLACEMENTS_GENERALISES . 1;
  1081. DG_2 = MTAB1 . MODES . I . DEPLACEMENTS_GENERALISES . 2;
  1082. DG_3 = MTAB1 . MODES . I . DEPLACEMENTS_GENERALISES . 3;
  1083. MM_1 = ((DG_1 * DG_1) / MG_1) ;
  1084. MM_2 = ((DG_2 * DG_2) / MG_1) ;;
  1085. MM_3 = ((DG_3 * DG_3) / MG_1) ;
  1086. FP_1 = ((DG_1) / MG_1) ;
  1087. FP_2 = ((DG_2) / MG_1) ;;
  1088. FP_3 = ((DG_3) / MG_1) ;
  1089. FRQ1 = MTAB1.MODES.I. FREQUENCE ;
  1090. OMEG = FRQ1*2.0*3.1415926589 ;
  1091. OMEG2 = OMEG*OMEG ;
  1092. MTAB1.MODES. I .MASSE_MODALE = TABLE;
  1093. MTAB1.MODES. I .FACT_PARTECIPATION = TABLE;
  1094. MTAB1.MODES. I .FACT_PART_NORM = TABLE;
  1095. MTAB1.MODES. I .MASSE_MODALE. 1 = MM_1;
  1096. MTAB1.MODES. I .MASSE_MODALE. 2 = MM_2;
  1097. MTAB1.MODES. I .MASSE_MODALE. 3 = MM_3;
  1098. MTAB1.MODES. I .FACT_PARTECIPATION. 1 = FP_1;
  1099. MTAB1.MODES. I .FACT_PARTECIPATION. 2 = FP_2;
  1100. MTAB1.MODES. I .FACT_PARTECIPATION. 3 = FP_3;
  1101. MTAB1.MODES. I .FACT_PART_NORM. 1 = FP_1/OMEG2;
  1102. MTAB1.MODES. I .FACT_PART_NORM. 2 = FP_2/OMEG2;
  1103. MTAB1.MODES. I .FACT_PART_NORM. 3 = FP_3/OMEG2;
  1104. I = I + 1;
  1105. 'FIN' IND1;
  1106. 'FINSI';
  1107. *
  1108. NN1 = ('DIME' (MTAB1.MODES)) - 2;
  1109. 'SI' (NN1 'EGA' 0);
  1110. * Controle modes
  1111. 'MESS' 'No modes dans la table MTAB1';
  1112. 'ERRE' 1;
  1113. 'SINON';
  1114. * Deduction des efforts des membrane amplifié par rapport le spectre
  1115. MATPIJ = 'TABLE';
  1116. I = 1;
  1117. TRESU.'REPONSE_TOTALE' .
  1118. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1) =
  1119. TABLE;
  1120. EFF_SEI1 = VIDE 'MCHAML';
  1121. EFF_SEI2 = VIDE 'MCHAML';
  1122. EFF_SEI3 = VIDE 'MCHAML';
  1123. * Deduction de la matrice rho_ij
  1124. 'REPE' IND1 (NN1);
  1125. MATPIJ. I = 'PROG';
  1126. J = 1;
  1127. 'REPE' IND2 (NN1);
  1128. 'SI' (I 'EGA' 1);
  1129. MATPIJ. I = (MATPIJ. I) 'ET'
  1130. TRESU.'REPRISE'.'PIJ'. J . I;
  1131. 'SINON';
  1132. 'SI' (J < I);
  1133. MATPIJ. I = (MATPIJ. I) 'ET'
  1134. TRESU.'REPRISE'.'PIJ'. I . J;
  1135. 'SINON';
  1136. MATPIJ. I = (MATPIJ. I) 'ET'
  1137. TRESU.'REPRISE'.'PIJ'. J . I;
  1138. 'FINSI';
  1139. 'FINSI';
  1140. J = J + 1;
  1141. 'FIN' IND2;
  1142. * Pseudoacceleration direction x, y et z
  1143. PSE_ACC1 = TRESU.'REPRISE'.'SPECTRE'. I . 1;
  1144. PSE_ACC2 = TRESU.'REPRISE'.'SPECTRE'. I . 2;
  1145. PSE_ACC3 = TRESU.'REPRISE'.'SPECTRE'. I . 3;
  1146. * facteur d'amplification
  1147. AMP_1 = (MTAB1.MODES. I .FACT_PART_NORM. 1)*(PSE_ACC1);
  1148. AMP_2 = (MTAB1.MODES. I .FACT_PART_NORM. 2)*(PSE_ACC2);
  1149. AMP_3 = (MTAB1.MODES. I .FACT_PART_NORM. 3)*(PSE_ACC3);
  1150. * Effort de Membrane amplifié pour chaque mode pour
  1151. * les 3 directions
  1152. EFF_SEI1 = ((AMP_1)*(MTAB1.MODES. I .
  1153. CONTRAINTE_MEMBRANE.(EXTR L_MAIL KK1)));
  1154. EFF_SEI2 = ((AMP_2)*(MTAB1.MODES. I .
  1155. CONTRAINTE_MEMBRANE.(EXTR L_MAIL KK1)));
  1156. EFF_SEI3 = ((AMP_3)*(MTAB1.MODES. I .
  1157. CONTRAINTE_MEMBRANE.(EXTR L_MAIL KK1)));
  1158. * Sauvegarde
  1159. TRESU.'REPONSE_TOTALE' .
  1160. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I = TABLE;
  1161. TRESU.'REPONSE_TOTALE' .
  1162. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 1 = EFF_SEI1;
  1163. TRESU.'REPONSE_TOTALE' .
  1164. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 2 = EFF_SEI2;
  1165. TRESU.'REPONSE_TOTALE' .
  1166. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 3 = EFF_SEI3;
  1167. I = I + 1;
  1168. 'FIN' IND1;
  1169. * Calcul des covariances
  1170. * Initializzation variables
  1171. C1111E_1 = 'VIDE' 'MCHAML';
  1172. C2222E_1 = 'VIDE' 'MCHAML';
  1173. C1212E_1 = 'VIDE' 'MCHAML';
  1174. C1122E_1 = 'VIDE' 'MCHAML';
  1175. C1112E_1 = 'VIDE' 'MCHAML';
  1176. C2212E_1 = 'VIDE' 'MCHAML';
  1177. *
  1178. C1111I_1 = 'VIDE' 'MCHAML';
  1179. C2222I_1 = 'VIDE' 'MCHAML';
  1180. C1212I_1 = 'VIDE' 'MCHAML';
  1181. C1122I_1 = 'VIDE' 'MCHAML';
  1182. C1112I_1 = 'VIDE' 'MCHAML';
  1183. C2212I_1 = 'VIDE' 'MCHAML';
  1184. *
  1185. C1111E_2 = 'VIDE' 'MCHAML';
  1186. C2222E_2 = 'VIDE' 'MCHAML';
  1187. C1212E_2 = 'VIDE' 'MCHAML';
  1188. C1122E_2 = 'VIDE' 'MCHAML';
  1189. C1112E_2 = 'VIDE' 'MCHAML';
  1190. C2212E_2 = 'VIDE' 'MCHAML';
  1191. *
  1192. C1111I_2 = 'VIDE' 'MCHAML';
  1193. C2222I_2 = 'VIDE' 'MCHAML';
  1194. C1212I_2 = 'VIDE' 'MCHAML';
  1195. C1122I_2 = 'VIDE' 'MCHAML';
  1196. C1112I_2 = 'VIDE' 'MCHAML';
  1197. C2212I_2 = 'VIDE' 'MCHAML';
  1198. *
  1199. C1111E_3 = 'VIDE' 'MCHAML';
  1200. C2222E_3 = 'VIDE' 'MCHAML';
  1201. C1212E_3 = 'VIDE' 'MCHAML';
  1202. C1122E_3 = 'VIDE' 'MCHAML';
  1203. C1112E_3 = 'VIDE' 'MCHAML';
  1204. C2212E_3 = 'VIDE' 'MCHAML';
  1205. *
  1206. C1111I_3 = 'VIDE' 'MCHAML';
  1207. C2222I_3 = 'VIDE' 'MCHAML';
  1208. C1212I_3 = 'VIDE' 'MCHAML';
  1209. C1122I_3 = 'VIDE' 'MCHAML';
  1210. C1112I_3 = 'VIDE' 'MCHAML';
  1211. C2212I_3 = 'VIDE' 'MCHAML';
  1212. *
  1213. CV11_1 = 'VIDE' 'MCHAML';
  1214. CV22_1 = 'VIDE' 'MCHAML';
  1215. CV12_1 = 'VIDE' 'MCHAML';
  1216. *
  1217. CV11_2 = 'VIDE' 'MCHAML';
  1218. CV22_2 = 'VIDE' 'MCHAML';
  1219. CV12_2 = 'VIDE' 'MCHAML';
  1220. *
  1221. CV11_3 = 'VIDE' 'MCHAML';
  1222. CV22_3 = 'VIDE' 'MCHAML';
  1223. CV12_3 = 'VIDE' 'MCHAML';
  1224. * Boucles sur les modes
  1225. I = 1;
  1226. 'REPE' IND1 (NN1);
  1227. J = 1;
  1228. 'REPE' IND2 (NN1);
  1229. * Extraction Effort N11 N12 N22 ext et inter et V1, V2
  1230. * pour le mode fhi j direction x
  1231. N11EJ_1 =
  1232. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1233. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). J . 1)
  1234. 'N11E' 'SCAL';
  1235. N12EJ_1 =
  1236. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1237. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). J . 1)
  1238. 'N12E' 'SCAL';
  1239. N22EJ_1 =
  1240. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1241. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). J . 1)
  1242. 'N22E' 'SCAL';
  1243. N11IJ_1 =
  1244. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1245. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). J . 1)
  1246. 'N11I' 'SCAL';
  1247. N12IJ_1 =
  1248. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1249. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). J . 1)
  1250. 'N12I' 'SCAL';
  1251. N22IJ_1 =
  1252. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1253. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). J . 1)
  1254. 'N22I' 'SCAL';
  1255. V1J_1 = 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1256. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). J . 1)
  1257. 'V1T' 'SCAL';
  1258. V2J_1 = 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1259. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). J . 1)
  1260. 'V2T' 'SCAL';
  1261. * Extraction Effort N11 N12 N22 ext et inter et V1, V2
  1262. * pour le mode fhi i direction x
  1263. N11EI_1 =
  1264. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1265. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 1)
  1266. 'N11E' 'SCAL';
  1267. N12EI_1 =
  1268. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1269. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 1)
  1270. 'N12E' 'SCAL';
  1271. N22EI_1 =
  1272. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1273. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 1)
  1274. 'N22E' 'SCAL';
  1275. N11II_1 =
  1276. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1277. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 1)
  1278. 'N11I' 'SCAL';
  1279. N12II_1 =
  1280. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1281. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 1)
  1282. 'N12I' 'SCAL';
  1283. N22II_1 =
  1284. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1285. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 1)
  1286. 'N22I' 'SCAL';
  1287. V1I_1 = 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1288. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 1)
  1289. 'V1T' 'SCAL';
  1290. V2I_1 = 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1291. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 1)
  1292. 'V2T' 'SCAL';
  1293. * Extraction Effort N11 N12 N22 ext et inter et V1, V2
  1294. * pour le mode fhi j direction y
  1295. N11EJ_2 =
  1296. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1297. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). J . 2)
  1298. 'N11E' 'SCAL';
  1299. N12EJ_2 =
  1300. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1301. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). J . 2)
  1302. 'N12E' 'SCAL';
  1303. N22EJ_2 =
  1304. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1305. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). J . 2)
  1306. 'N22E' 'SCAL';
  1307. N11IJ_2 =
  1308. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1309. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). J . 2)
  1310. 'N11I' 'SCAL';
  1311. N12IJ_2 =
  1312. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1313. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). J . 2)
  1314. 'N12I' 'SCAL';
  1315. N22IJ_2 =
  1316. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1317. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). J . 2)
  1318. 'N22I' 'SCAL';
  1319. V1J_2 = 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1320. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). J . 2)
  1321. 'V1T' 'SCAL';
  1322. V2J_2 = 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1323. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). J . 2)
  1324. 'V2T' 'SCAL';
  1325. * Extraction Effort N11 N12 N22 ext et inter pour le mode
  1326. * fhi i direction y
  1327. N11EI_2 =
  1328. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1329. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 2)
  1330. 'N11E' 'SCAL';
  1331. N12EI_2 =
  1332. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1333. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 2)
  1334. 'N12E' 'SCAL';
  1335. N22EI_2 =
  1336. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1337. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 2)
  1338. 'N22E' 'SCAL';
  1339. N11II_2 =
  1340. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1341. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 2)
  1342. 'N11I' 'SCAL';
  1343. N12II_2 =
  1344. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1345. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 2)
  1346. 'N12I' 'SCAL';
  1347. N22II_2 =
  1348. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1349. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 2)
  1350. 'N22I' 'SCAL';
  1351. V1I_2 = 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1352. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 2)
  1353. 'V1T' 'SCAL';
  1354. V2I_2 = 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1355. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 2)
  1356. 'V2T' 'SCAL';
  1357. * Extraction Effort N11 N12 N22 ext et inter pour le mode
  1358. * fhi j direction z
  1359. N11EJ_3 =
  1360. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1361. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). J . 3)
  1362. 'N11E' 'SCAL';
  1363. N12EJ_3 =
  1364. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1365. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). J . 3)
  1366. 'N12E' 'SCAL';
  1367. N22EJ_3 =
  1368. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1369. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). J . 3)
  1370. 'N22E' 'SCAL';
  1371. N11IJ_3 =
  1372. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1373. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). J . 3)
  1374. 'N11I' 'SCAL';
  1375. N12IJ_3 =
  1376. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1377. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). J . 3)
  1378. 'N12I' 'SCAL';
  1379. N22IJ_3 =
  1380. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1381. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). J . 3)
  1382. 'N22I' 'SCAL';
  1383. V1J_3 = 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1384. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). J . 3)
  1385. 'V1T' 'SCAL';
  1386. V2J_3 = 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1387. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). J . 3)
  1388. 'V2T' 'SCAL';
  1389. * Extraction Effort N11 N12 N22 ext et inter pour le mode
  1390. * fhi i direction z
  1391. N11EI_3 =
  1392. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1393. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 3)
  1394. 'N11E' 'SCAL';
  1395. N12EI_3 =
  1396. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1397. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 3)
  1398. 'N12E' 'SCAL';
  1399. N22EI_3 =
  1400. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1401. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 3)
  1402. 'N22E' 'SCAL';
  1403. N11II_3 =
  1404. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1405. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 3)
  1406. 'N11I' 'SCAL';
  1407. N12II_3 =
  1408. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1409. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 3)
  1410. 'N12I' 'SCAL';
  1411. N22II_3 =
  1412. 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1413. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 3)
  1414. 'N22I' 'SCAL';
  1415. V1I_3 = 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1416. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 3)
  1417. 'V1T' 'SCAL';
  1418. V2I_3 = 'EXCO' (TRESU.'REPONSE_TOTALE' .
  1419. 'CONTRAINTES_MEMBRANE'.(EXTR L_MAIL KK1). I . 3)
  1420. 'V2T' 'SCAL';
  1421. *
  1422. 'SI' ((I 'EGA' 1) ET (J 'EGA' 1));
  1423. C1111E_1 = (('EXTR' (MATPIJ. I) J)*((N11EJ_1)*(N11EI_1)));
  1424. C2222E_1 = (('EXTR' (MATPIJ. I) J)*((N22EJ_1)*(N22EI_1)));
  1425. C1212E_1 = (('EXTR' (MATPIJ. I) J)*((N12EJ_1)*(N12EI_1)));
  1426. C1122E_1 = (('EXTR' (MATPIJ. I) J)*((N11EJ_1)*(N22EI_1)));
  1427. C1112E_1 = (('EXTR' (MATPIJ. I) J)*((N11EJ_1)*(N12EI_1)));
  1428. C2212E_1 = (('EXTR' (MATPIJ. I) J)*((N22EJ_1)*(N12EI_1)));
  1429. *
  1430. C1111E_2 = (('EXTR' (MATPIJ. I) J)*((N11EJ_2)*(N11EI_2)));
  1431. C2222E_2 = (('EXTR' (MATPIJ. I) J)*((N22EJ_2)*(N22EI_2)));
  1432. C1212E_2 = (('EXTR' (MATPIJ. I) J)*((N12EJ_2)*(N12EI_2)));
  1433. C1122E_2 = (('EXTR' (MATPIJ. I) J)*((N11EJ_2)*(N22EI_2)));
  1434. C1112E_2 = (('EXTR' (MATPIJ. I) J)*((N11EJ_2)*(N12EI_2)));
  1435. C2212E_2 = (('EXTR' (MATPIJ. I) J)*((N22EJ_2)*(N12EI_2)));
  1436. *
  1437. C1111E_3 = (('EXTR' (MATPIJ. I) J)*((N11EJ_3)*(N11EI_3)));
  1438. C2222E_3 = (('EXTR' (MATPIJ. I) J)*((N22EJ_3)*(N22EI_3)));
  1439. C1212E_3 = (('EXTR' (MATPIJ. I) J)*((N12EJ_3)*(N12EI_3)));
  1440. C1122E_3 = (('EXTR' (MATPIJ. I) J)*((N11EJ_3)*(N22EI_3)));
  1441. C1112E_3 = (('EXTR' (MATPIJ. I) J)*((N11EJ_3)*(N12EI_3)));
  1442. C2212E_3 = (('EXTR' (MATPIJ. I) J)*((N22EJ_3)*(N12EI_3)));
  1443. *
  1444. C1111I_1 = (('EXTR' (MATPIJ. I) J)*((N11IJ_1)*(N11II_1)));
  1445. C2222I_1 = (('EXTR' (MATPIJ. I) J)*((N22IJ_1)*(N22II_1)));
  1446. C1212I_1 = (('EXTR' (MATPIJ. I) J)*((N12IJ_1)*(N12II_1)));
  1447. C1122I_1 = (('EXTR' (MATPIJ. I) J)*((N11IJ_1)*(N22II_1)));
  1448. C1112I_1 = (('EXTR' (MATPIJ. I) J)*((N11IJ_1)*(N12II_1)));
  1449. C2212I_1 = (('EXTR' (MATPIJ. I) J)*((N22IJ_1)*(N12II_1)));
  1450. *
  1451. C1111I_2 = (('EXTR' (MATPIJ. I) J)*((N11IJ_2)*(N11II_2)));
  1452. C2222I_2 = (('EXTR' (MATPIJ. I) J)*((N22IJ_2)*(N22II_2)));
  1453. C1212I_2 = (('EXTR' (MATPIJ. I) J)*((N12IJ_2)*(N12II_2)));
  1454. C1122I_2 = (('EXTR' (MATPIJ. I) J)*((N11IJ_2)*(N22II_2)));
  1455. C1112I_2 = (('EXTR' (MATPIJ. I) J)*((N11IJ_2)*(N12II_2)));
  1456. C2212I_2 = (('EXTR' (MATPIJ. I) J)*((N22IJ_2)*(N12II_2)));
  1457. *
  1458. C1111I_3 = (('EXTR' (MATPIJ. I) J)*((N11IJ_3)*(N11II_3)));
  1459. C2222I_3 = (('EXTR' (MATPIJ. I) J)*((N22IJ_3)*(N22II_3)));
  1460. C1212I_3 = (('EXTR' (MATPIJ. I) J)*((N12IJ_3)*(N12II_3)));
  1461. C1122I_3 = (('EXTR' (MATPIJ. I) J)*((N11IJ_3)*(N22II_3)));
  1462. C1112I_3 = (('EXTR' (MATPIJ. I) J)*((N11IJ_3)*(N12II_3)));
  1463. C2212I_3 = (('EXTR' (MATPIJ. I) J)*((N22IJ_3)*(N12II_3)));
  1464. *
  1465. CV11_1 = (('EXTR' (MATPIJ. I) J)*((V1J_1)*(V1J_1)));
  1466. CV22_1 = (('EXTR' (MATPIJ. I) J)*((V2J_1)*(V2J_1)));
  1467. CV12_1 = (('EXTR' (MATPIJ. I) J)*((V1J_1)*(V2J_1)));
  1468. *
  1469. CV11_2 = (('EXTR' (MATPIJ. I) J)*((V1J_2)*(V1J_2)));
  1470. CV22_2 = (('EXTR' (MATPIJ. I) J)*((V2J_2)*(V2J_2)));
  1471. CV12_2 = (('EXTR' (MATPIJ. I) J)*((V1J_2)*(V2J_2)));
  1472. *
  1473. CV11_3 = (('EXTR' (MATPIJ. I) J)*((V1J_3)*(V1J_3)));
  1474. CV22_3 = (('EXTR' (MATPIJ. I) J)*((V2J_3)*(V2J_3)));
  1475. CV12_3 = (('EXTR' (MATPIJ. I) J)*((V1J_3)*(V2J_3)));
  1476. *
  1477. 'SINON';
  1478. C1111E_1 =
  1479. C1111E_1 + (('EXTR' (MATPIJ. I) J)*((N11EJ_1)*(N11EI_1)));
  1480. C2222E_1 =
  1481. C2222E_1 + (('EXTR' (MATPIJ. I) J)*((N22EJ_1)*(N22EI_1)));
  1482. C1212E_1 =
  1483. C1212E_1 + (('EXTR' (MATPIJ. I) J)*((N12EJ_1)*(N12EI_1)));
  1484. C1122E_1 =
  1485. C1122E_1 + (('EXTR' (MATPIJ. I) J)*((N11EJ_1)*(N22EI_1)));
  1486. C1112E_1 =
  1487. C1112E_1 + (('EXTR' (MATPIJ. I) J)*((N11EJ_1)*(N12EI_1)));
  1488. C2212E_1 =
  1489. C2212E_1 + (('EXTR' (MATPIJ. I) J)*((N22EJ_1)*(N12EI_1)));
  1490. *
  1491. C1111E_2 =
  1492. C1111E_2 + (('EXTR' (MATPIJ. I) J)*((N11EJ_2)*(N11EI_2)));
  1493. C2222E_2 =
  1494. C2222E_2 + (('EXTR' (MATPIJ. I) J)*((N22EJ_2)*(N22EI_2)));
  1495. C1212E_2 =
  1496. C1212E_2 + (('EXTR' (MATPIJ. I) J)*((N12EJ_2)*(N12EI_2)));
  1497. C1122E_2 =
  1498. C1122E_2 + (('EXTR' (MATPIJ. I) J)*((N11EJ_2)*(N22EI_2)));
  1499. C1112E_2 =
  1500. C1112E_2 + (('EXTR' (MATPIJ. I) J)*((N11EJ_2)*(N12EI_2)));
  1501. C2212E_2 =
  1502. C2212E_2 + (('EXTR' (MATPIJ. I) J)*((N22EJ_2)*(N12EI_2)));
  1503. *
  1504. C1111E_3 =
  1505. C1111E_3 + (('EXTR' (MATPIJ. I) J)*((N11EJ_3)*(N11EI_3)));
  1506. C2222E_3 =
  1507. C2222E_3 + (('EXTR' (MATPIJ. I) J)*((N22EJ_3)*(N22EI_3)));
  1508. C1212E_3 =
  1509. C1212E_3 + (('EXTR' (MATPIJ. I) J)*((N12EJ_3)*(N12EI_3)));
  1510. C1122E_3 =
  1511. C1122E_3 + (('EXTR' (MATPIJ. I) J)*((N11EJ_3)*(N22EI_3)));
  1512. C1112E_3 =
  1513. C1112E_3 + (('EXTR' (MATPIJ. I) J)*((N11EJ_3)*(N12EI_3)));
  1514. C2212E_3 =
  1515. C2212E_3 + (('EXTR' (MATPIJ. I) J)*((N22EJ_3)*(N12EI_3)));
  1516. *
  1517. C1111I_1 =
  1518. C1111I_1 + (('EXTR' (MATPIJ. I) J)*((N11IJ_1)*(N11II_1)));
  1519. C2222I_1 =
  1520. C2222I_1 + (('EXTR' (MATPIJ. I) J)*((N22IJ_1)*(N22II_1)));
  1521. C1212I_1 =
  1522. C1212I_1 + (('EXTR' (MATPIJ. I) J)*((N12IJ_1)*(N12II_1)));
  1523. C1122I_1 =
  1524. C1122I_1 + (('EXTR' (MATPIJ. I) J)*((N11IJ_1)*(N22II_1)));
  1525. C1112I_1 =
  1526. C1112I_1 + (('EXTR' (MATPIJ. I) J)*((N11IJ_1)*(N12II_1)));
  1527. C2212I_1 =
  1528. C2212I_1 + (('EXTR' (MATPIJ. I) J)*((N22IJ_1)*(N12II_1)));
  1529. *
  1530. C1111I_2 =
  1531. C1111I_2 + (('EXTR' (MATPIJ. I) J)*((N11IJ_2)*(N11II_2)));
  1532. C2222I_2 =
  1533. C2222I_2 + (('EXTR' (MATPIJ. I) J)*((N22IJ_2)*(N22II_2)));
  1534. C1212I_2 =
  1535. C1212I_2 + (('EXTR' (MATPIJ. I) J)*((N12IJ_2)*(N12II_2)));
  1536. C1122I_2 =
  1537. C1122I_2 + (('EXTR' (MATPIJ. I) J)*((N11IJ_2)*(N22II_2)));
  1538. C1112I_2 =
  1539. C1112I_2 + (('EXTR' (MATPIJ. I) J)*((N11IJ_2)*(N12II_2)));
  1540. C2212I_2 =
  1541. C2212I_2 + (('EXTR' (MATPIJ. I) J)*((N22IJ_2)*(N12II_2)));
  1542. *
  1543. C1111I_3 =
  1544. C1111I_3 + (('EXTR' (MATPIJ. I) J)*((N11IJ_3)*(N11II_3)));
  1545. C2222I_3 =
  1546. C2222I_3 + (('EXTR' (MATPIJ. I) J)*((N22IJ_3)*(N22II_3)));
  1547. C1212I_3 =
  1548. C1212I_3 + (('EXTR' (MATPIJ. I) J)*((N12IJ_3)*(N12II_3)));
  1549. C1122I_3 =
  1550. C1122I_3 + (('EXTR' (MATPIJ. I) J)*((N11IJ_3)*(N22II_3)));
  1551. C1112I_3 =
  1552. C1112I_3 + (('EXTR' (MATPIJ. I) J)*((N11IJ_3)*(N12II_3)));
  1553. C2212I_3 =
  1554. C2212I_3 + (('EXTR' (MATPIJ. I) J)*((N22IJ_3)*(N12II_3)));
  1555. *
  1556. CV11_1 = CV11_1 +
  1557. (('EXTR' (MATPIJ. I) J)*((V1J_1)*(V1J_1)));
  1558. CV22_1 = CV22_1 +
  1559. (('EXTR' (MATPIJ. I) J)*((V2J_1)*(V2J_1)));
  1560. CV12_1 = CV12_1 +
  1561. (('EXTR' (MATPIJ. I) J)*((V1J_1)*(V2J_1)));
  1562. *
  1563. CV11_2 = CV11_2 +
  1564. (('EXTR' (MATPIJ. I) J)*((V1J_2)*(V1J_2)));
  1565. CV22_2 = CV22_2 +
  1566. (('EXTR' (MATPIJ. I) J)*((V2J_2)*(V2J_2)));
  1567. CV12_2 = CV12_2 +
  1568. (('EXTR' (MATPIJ. I) J)*((V1J_2)*(V2J_2)));
  1569. *
  1570. CV11_3 = CV11_3 +
  1571. (('EXTR' (MATPIJ. I) J)*((V1J_3)*(V1J_3)));
  1572. CV22_3 = CV22_3 +
  1573. (('EXTR' (MATPIJ. I) J)*((V2J_3)*(V2J_3)));
  1574. CV12_3 = CV12_3 +
  1575. (('EXTR' (MATPIJ. I) J)*((V1J_3)*(V2J_3)));
  1576. *
  1577. 'FINSI';
  1578. J = J + 1;
  1579. 'FIN' IND2;
  1580. I = I + 1;
  1581. 'FIN' IND1;
  1582. *
  1583. CN11N11E = C1111E_1 + C1111E_2 + C1111E_3;
  1584. CN22N22E = C2222E_1 + C2222E_2 + C2222E_3;
  1585. CN12N12E = C1212E_1 + C1212E_2 + C1212E_3;
  1586. CN11N22E = C1122E_1 + C1122E_2 + C1122E_3;
  1587. CN11N12E = C1112E_1 + C1112E_2 + C1112E_3;
  1588. CN22N12E = C2212E_1 + C2212E_2 + C2212E_3;
  1589. *
  1590. CN11N11I = C1111I_1 + C1111I_2 + C1111I_3;
  1591. CN22N22I = C2222I_1 + C2222I_2 + C2222I_3;
  1592. CN12N12I = C1212I_1 + C1212I_2 + C1212I_3;
  1593. CN11N22I = C1122I_1 + C1122I_2 + C1122I_3;
  1594. CN11N12I = C1112I_1 + C1112I_2 + C1112I_3;
  1595. CN22N12I = C2212I_1 + C2212I_2 + C2212I_3;
  1596. *
  1597. CV1V1 = CV11_1 + CV11_2 + CV11_3;
  1598. CV2V2 = CV22_1 + CV22_2 + CV22_3;
  1599. CV1V2 = CV12_1 + CV12_2 + CV12_3;
  1600. *
  1601. CHCOV = (EXCO CN11N11E 'SCAL' 'C11E')
  1602. ET (EXCO CN22N22E 'SCAL' 'C22E')
  1603. ET (EXCO CN12N12E 'SCAL' 'C33E')
  1604. ET (EXCO CN11N22E 'SCAL' 'C12E')
  1605. ET (EXCO CN11N12E 'SCAL' 'C13E')
  1606. ET (EXCO CN22N12E 'SCAL' 'C23E');
  1607. CHCOV = CHCOV ET (EXCO CN11N11I 'SCAL' 'C11I')
  1608. ET (EXCO CN22N22I 'SCAL' 'C22I')
  1609. ET (EXCO CN12N12I 'SCAL' 'C33I')
  1610. ET (EXCO CN11N22I 'SCAL' 'C12I')
  1611. ET (EXCO CN11N12I 'SCAL' 'C13I')
  1612. ET (EXCO CN22N12I 'SCAL' 'C23I');
  1613. CHCOV = CHCOV ET (EXCO CV1V1 'SCAL' 'CV11')
  1614. ET (EXCO CV2V2 'SCAL' 'CV22')
  1615. ET (EXCO CV1V2 'SCAL' 'CV12');
  1616. *
  1617. TRESU.'REPONSE_TOTALE' .'COVARIANCE'.(EXTR L_MAIL KK1) =
  1618. CHCOV;
  1619. 'FINSI';
  1620. KK1 = KK1 + 1;
  1621. 'FIN' INDT;
  1622. *
  1623. 'FINSI';
  1624. 'FINPROC' TRESU ;
  1625.  
  1626.  
  1627.  
  1628.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales