Télécharger transfer.procedur

Retour à la liste

Numérotation des lignes :

  1. * TRANSFER PROCEDUR DC 06/02/06 21:16:07 5304
  2. 'DEBPROC' TRANSFER MOD/SOLUTION TA/TABLE LAMOR*LISTREEL MOT1*MOT;
  3. *
  4. SEIS=FAUX;
  5. 'SI' ('EGA' MOT1 'SEISME');
  6. 'ARGU' DIRECT*MOT;
  7. SEIS=VRAI;
  8. 'SI' ('EGA' DIRECT 'UX');QDIR='QX';EDIR = 1;'FINSI';
  9. 'SI' ('EGA' DIRECT 'UY');QDIR='QY';EDIR = 2;'FINSI';
  10. 'SI' ('EGA' DIRECT 'UZ');QDIR='QZ';EDIR = 3;'FINSI';
  11. 'SINON';
  12. 'ARGU' POINT1*POINT;
  13. 'FINSI';
  14. *
  15. 'ARGU' MOT2*MOT POINT2*POINT MOSOR*MOT LFREQ*LISTREEL MOCHO*MOT ;
  16. ***********************************************************************
  17. * CALCUL D UNE FONCTION DE TRANSFERT *
  18. * *
  19. * MOD : LES MODES DE LA STRUCTURE *
  20. * LAMOR : LES AMORTISSEMENTS MODAUX (ENTRE 0 ET 1) *
  21. * MOT1 : DIRECTION DE LA SOLLICITATION (UX, UY, UZ ...) *
  22. * OU 'SEISME' POUR ACCELERATION D'ENSEMBLE *
  23. * POINT1 : POINT D APPLICATION DE LA SOLLICITATION *
  24. * OU DIRECTION DU SEISME *
  25. * MOT2 : DIRECTION DE LA REPONSE *
  26. * POINT2 : POINT OU ON CHERCHE LA REPONSE *
  27. * MOSOR : NATURE DES SORTIES (DEPL, VITE OU ACCE) *
  28. * LFREQ : LES FREQUENCES DE CALCUL *
  29. * MOCHO : TYPE DES SORTIES (MOPH OU REIM) *
  30. * *
  31. * EVENTUELLEMENT *
  32. * MOCOU : COULEUR DES COURBES *
  33. * *
  34. * EN SORTIE *
  35. * TRA : OBJET EVOLUTION COMPLEXE *
  36. ***********************************************************************
  37. 'REPETER' BEX 1;
  38. *
  39. 'SI' ('EXIS' TA) ;
  40. TAB_LOG = VRAI;
  41. 'SINON';
  42. TAB_LOG = FAUX;
  43. 'SI' ('NON' ('EXIS' MOD)) ;
  44. 'MESS' '***** ERREUR *****';
  45. 'MESS' 'IL MANQUE LA DONNEE DES MODES PROPRES';
  46. 'QUITTER' BEX;
  47. 'FINSI';
  48. 'FINSI';
  49. *
  50. ISOR=0;ISO2=0;
  51. 'SI' SEIS;
  52. 'SI' ('EGA' MOSOR 'ACCE');ISO2=1;'FINSI';
  53. 'SI' ('EGA' MOSOR 'VITE');ISO2=2;'FINSI';
  54. 'SI' ('EGA' MOSOR 'DEPL');ISO2=3;'FINSI';
  55. 'SINON';
  56. 'SI' ('EGA' MOSOR 'ACCE');ISOR=1;'FINSI';
  57. 'SI' ('EGA' MOSOR 'VITE');ISOR=2;'FINSI';
  58. 'SI' ('EGA' MOSOR 'DEPL');ISOR=3;'FINSI';
  59. 'FINSI';
  60. 'SI' ((ISOR 'EGA' 0) 'ET' (ISO2 'EGA' 0)) ;
  61. 'MESS' '***** ERREUR *****';
  62. 'MESS' 'IL FAUT DONNER DEPL, VITE OU ACCE';
  63. 'QUITTER' BEX;
  64. 'FINSI';
  65. *
  66. ICHO=0;
  67. 'SI' ('EGA' MOCHO 'MOPH');ICHO=1;'FINSI';
  68. 'SI' ('EGA' MOCHO 'REIM');ICHO=2;'FINSI';
  69. 'SI' (ICHO 'EGA' 0);
  70. 'MESS' '***** ERREUR *****';
  71. 'MESS' 'IL FAUT DONNER MOPH OU REIM';
  72. 'QUITTER' BEX;
  73. 'FINSI';
  74. *
  75. 'SI' TAB_LOG;
  76. NMOD = ('DIME' (TA . 'MODES')) - 2;
  77. 'SINON';
  78. NMOD='DIME' MOD;
  79. 'FINSI';
  80. NAMO='DIME' LAMOR;
  81. 'SI' (NMOD '>' NAMO);
  82. 'MESS' '***** ERREUR *****';
  83. 'MESS' 'IL MANQUE UNE OU PLUSIEURS VALEURS D AMORTISSEMENT MODAL';
  84. 'QUITTER' BEX;
  85. 'FINSI';
  86. *
  87. DEUPI=6.28318530718;
  88. Q4PI2=39.4784176044;
  89. FRE2=LFREQ**2;
  90. I=0;
  91. *
  92. 'REPETER' BMOD NMOD;
  93. I=I+1;
  94. 'SI' TAB_LOG;
  95. XI = TA . 'MODES' . I . 'DEFORMEE_MODALE';
  96. FI = TA . 'MODES' . I . 'FREQUENCE';
  97. MI = TA . 'MODES' . I . 'MASSE_GENERALISEE';
  98. 'SINON';
  99. XI='TIRE' MOD 'DEPL' 'RANG' I;
  100. FI='TIRE' MOD 'FREQ' 'RANG' I;
  101. MI='TIRE' MOD 'MGEN' 'RANG' I;
  102. 'FINSI';
  103. EI='EXTR' LAMOR I;
  104. FI2=FI*FI;
  105. Q4E2F2=4*(FI2*(EI**2));
  106. M2EIFI=-2*(EI*FI);
  107. 'SI' SEIS;
  108. 'SI' TAB_LOG;
  109. X1=-1. * (TA.'MODES'. I . 'DEPLACEMENTS_GENERALISES' . EDIR);
  110. 'SINON';
  111. X1=-1. * ('TIRE' MOD QDIR 'RANG' I);
  112. 'FINSI';
  113. 'SINON';
  114. X1='EXTR' XI MOT1 POINT1;
  115. 'FINSI';
  116. X2='EXTR' XI MOT2 POINT2;
  117. C2=X1*X2;
  118. COEF=C2/MI;
  119. NUMRE='PROG' 'LINE' 'A' -1 'B' FI2 FRE2;
  120. NUMIM='PROG' 'LINE' 'A' M2EIFI LFREQ;
  121. DEN1='PROG' 'LINE' 'A' Q4E2F2 FRE2;
  122. DEN2=NUMRE**2;
  123. DENOM=DEN1+DEN2;'DETR' DEN1;'DETR' DEN2;
  124. UNSDE=DENOM**-1;'DETR' DENOM;
  125. EV1=NUMRE*UNSDE;EV2=NUMIM*UNSDE;
  126. 'DETR' NUMRE;'DETR' NUMIM;'DETR' UNSDE;
  127. RES1=COEF*EV1;'DETR' EV1;
  128. IMS1=COEF*EV2;'DETR' EV2;
  129. *
  130. 'SI' (I 'EGA' 1);
  131. RES='COPI' RES1;'DETR' RES1;
  132. IMS='COPI' IMS1;'DETR' IMS1;
  133. 'SINON';
  134. RES2=RES+RES1;'DETR' RES;'DETR' RES1;
  135. RES='COPI' RES2;'DETR' RES2;
  136. IMS2=IMS+IMS1;'DETR' IMS;'DETR' IMS1;
  137. IMS='COPI' IMS2;'DETR' IMS2;
  138. 'FINSI';
  139. *
  140. 'FIN' BMOD;
  141. *
  142. 'SI' (ISOR 'EGA' 1);
  143. PRES=RES*FRE2;'DETR' RES;
  144. PIMS=IMS*FRE2;'DETR' IMS;
  145. RES=-1*PRES;'DETR' PRES;
  146. IMS=-1*PIMS;'DETR' PIMS;
  147. 'FINSI';
  148. 'SI' (ISOR 'EGA' 2);
  149. PRES=IMS*LFREQ;'DETR' IMS;
  150. PIMS=RES*LFREQ;'DETR' RES;
  151. RES=PRES/(-1*DEUPI);'DETR' PRES;
  152. IMS=PIMS/DEUPI;'DETR' PIMS;
  153. 'FINSI';
  154. 'SI' (ISOR 'EGA' 3);
  155. RES=RES/Q4PI2;
  156. IMS=IMS/Q4PI2;
  157. 'FINSI';
  158. *
  159. 'SI' SEIS;
  160. 'SI' (ISO2 'EGA' 1);
  161. PRES=RES*FRE2;'DETR' RES;
  162. PIMS=IMS*FRE2;'DETR' IMS;
  163. RES=-1*PRES;'DETR' PRES;
  164. IMS=-1*PIMS;'DETR' PIMS;
  165. SI (EGA DIRECT MOT2);
  166. RES=RES+('PROG' ('DIME' RES) * 1.);
  167. FINSI;
  168. 'FINSI';
  169. 'SI' (ISO2 'EGA' 2);
  170. PRES=(IMS*LFREQ)/DEUPI;'DETR' IMS;
  171. PIMS=(RES*LFREQ)/DEUPI;'DETR' RES;
  172. RES=-1*PRES;'DETR' PRES;
  173. IMS= 1*PIMS;'DETR' PIMS;
  174. 'FINSI';
  175. 'SI' (ISO2 'EGA' 3);
  176. PRES=RES/Q4PI2;'DETR' RES;
  177. PIMS=IMS/Q4PI2;'DETR' IMS;
  178. RES=1*PRES;'DETR' PRES;
  179. IMS=1*PIMS;'DETR' PIMS;
  180. 'FINSI';
  181. 'FINSI';
  182. *
  183. 'DETR' FRE2;
  184. *
  185. 'ARGUMENT' MOCOU/MOT;
  186. 'SI' ('NON' ('EXISTE' MOCOU));
  187. MOCOU= VALEUR 'COUL';
  188. 'FINSI';
  189. *
  190. 'SI' (ICHO 'EGA' 1);
  191. TRA='EVOL' MOCOU 'COMP' 'FREQUENCE' LFREQ 'MODULE' RES 'PHASE' IMS;
  192. 'RIMP' TRA;
  193. 'SINON';
  194. TRA='EVOL' MOCOU 'COMP' 'FREQUENCE' LFREQ 'P REELLE' RES
  195. 'P IMAGINAIRE' IMS;
  196. 'FINSI';
  197. *
  198. 'FIN' BEX;
  199. *
  200. 'FINPROC' TRA;
  201.  
  202.  
  203.  
  204.  

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