Télécharger ec8acsis.procedur

Retour à la liste

Numérotation des lignes :

  1. * EC8ACSIS PROCEDUR PV 21/02/09 21:15:01 10883
  2. ****************************************************************************
  3. * DATE 25/05/90
  4. * Procedure EC8ACSIS
  5. *
  6. * RS = EC8ACSIS PARAM;
  7. ****************************************************************************
  8. * objet:
  9. *
  10. * a)
  11. *
  12. * Generation d'un spectre de reponse RS (objet de type EVOLUTION
  13. * comportant une seule courbe) selon les directive de l' EUROCODE
  14. * numero 8 et suivant les parametres PARAM (objet de type TABLE).
  15. *
  16. * L' EUROCODE 8 propose l' evolution en periode suivante:
  17. *
  18. * 0 < T < T1 Be = 1 + T/T1 * (B0-1)
  19. *
  20. * T1 < T < T2 Be = B0
  21. *
  22. * T2 < T Be = (T2/T)**K * B0
  23. *
  24. * Be(B0) etant le spectre de reponse d' acceleration normalise, pour un
  25. * amortissement de 5%, RS est obtenu apres introduction de l'acceleration
  26. * maximale Ag du sol et de le coeficient d'amortissement (Khi) (<.7):
  27. *
  28. * RE = Ag * Be(Eta*B0) Eta=(.05/Khi) **.5
  29. *
  30. * Pour des periode elevees le code doit etre complete. Pour les terrains
  31. * standards, on limite le deplacement :
  32. *
  33. * d < dmax = (Ag/g) * D0
  34. *
  35. * ou g est l'acceleration de la pesanteur.
  36. *
  37. * Dans ce cas le RE sera definie par le dmax multiplier par le facteur
  38. * d'amplification pour les hautes periodes AMPF (AMPF =1.4).
  39. *
  40. * Des jeux de donnees (T1,T2,B0,K et D0) sont prevus pour les terrains
  41. * de type A, B ou C.
  42. *
  43. * Le spectre RS est genere sur une grille de periode compris entre
  44. * TINI (<T1) et TFIN (>T2).
  45. *
  46. *
  47. * b)
  48. *
  49. * Generation d'un spectre de reponse RS pour utiliser dans les analyses
  50. * Lineaires. Dans ce cas B0 est divise par le facteur de comportement
  51. *
  52. * B0 = B0 / Q
  53. *
  54. * et par T > T2 la condition de deplacement constant n'est pas imposee.
  55. * c.a.d.
  56. *
  57. * RE = Ag * Be(Eta*B0/Q)
  58. *
  59. * sujet a la condition
  60. *
  61. * RE >= 0.2 Ag
  62. *
  63. ****************************************************************************
  64. * parametres obligatoires:
  65. *
  66. * Les parametres sont contenues dans PARAM (objet de type TABLE).
  67. *
  68. * PARAM.'TYPE'= objet de type MOT indiquant le type de spectre a
  69. * savoir:
  70. *
  71. * a) 'ALIN' (spectre de reponse pour l'analyse lineaire
  72. * (linear analysis design spectra)). dans ce cas
  73. * on est oblige de founire le paramaitre Q coeficient
  74. * de comportement (behaviour factor) dans la table
  75. *
  76. * b) 'GSIG' (spectre de reponse pour la generation des
  77. * signaux artificieles
  78.  
  79. * PARAM.'AG' = objet de type FLOTTANT indiquant l'acceleration
  80. * maximalle .
  81. *
  82. * PARAM.'SOIL'= objet de type MOT indiquant le type de terrain
  83. * 'A' 'B' ou 'C'
  84. * ou
  85. *
  86. * PARAM.'T1'
  87. * PARAM.'T2' = objets de type FLOTTANT indiquant T1, T2 et B0.
  88. * PARAM.'B0'
  89. *
  90. * PARAM.'TINI'
  91. * PARAM.'TFIN'= objets de type FLOTTANT donnant TINI et TFIN.
  92. ****************************************************************************
  93. * parametres optionnels:
  94. *
  95. * PARAM.'K' = objet de type FLOTTANT representant K (defaut = 1
  96. * conduisant a une vitesse constante)
  97. *
  98. * PARAM.'D0' = objet de type FLOTTANT indiquant D0
  99. * (defaut = pas de limitation).
  100. *
  101. * PARAM.'AMOR' = objet de type FLOTTANT indiquant Khi (defaut = 0.05)
  102. *
  103. *
  104. * PARAM.'GRAN'= objet de type mot representant la grandeur physique de
  105. * reponse: ACCE(leration), VITE(sse) ou DEPL(acement
  106. * relatif). Le defaut est ACCE.
  107. *
  108. * PARAM.'ABSC'= objet de type mot representant la grandeur physique des
  109. * abcisses: PERI(ode) ou FREQ(uence). Le defaut est PERI.
  110. *
  111. *
  112. * PARAM.'N' = objets de type ENTIER indiquant le nombre de points sur
  113. * PARAM.'NP' les branches du spectre au-dela de T2 (defaut = 25).
  114. ****************************************************************************
  115. 'DEBPROC' EC8ACSIS PARAM*'TABLE';
  116. *
  117. *MESSAGE 'debut'
  118. *----- Lecture des donnees dans la table et setting des defauts
  119. *
  120. *--- Presence des donnees obligatoires
  121. *
  122. LOK=VRAI;
  123. SS=1.;
  124. 'SI' ('EXISTE' PARAM 'SOIL');
  125. SOIL= PARAM.'SOIL';
  126. 'SI' ('EGA' SOIL 'A'); T1=.2; T2=.4; B0=2.5;K=1;D0= 60.; SS=1.;
  127. 'SINON';
  128. 'SI' ('EGA' SOIL 'B'); T1=.2; T2=.6; B0=2.5;K=1;D0= 90.; SS=1.;
  129. 'SINON';
  130. 'SI' ('EGA' SOIL 'C'); T1=.3; T2=.8; B0=2.5;K=1;D0=120.; SS=.8;
  131. 'SINON';
  132. 'MESSAGE' 'LE SOIL EST A, B OU C'; LOK=FAUX;
  133. 'FINSI';
  134. 'FINSI';
  135. 'FINSI';
  136. 'SINON';
  137. SOIL='specifique';
  138. 'SI' ('NON' ('EXISTE' PARAM 'T1'));
  139. 'MESSAGE' 'LE PARAMETRE T1 DOIT ETRE PRESENT DANS LA TABLE';
  140. LOK=FAUX;
  141. 'SINON'; T1 = PARAM.'T1';
  142. 'FINSI';
  143. 'SI' ('NON' ('EXISTE' PARAM 'T2'));
  144. 'MESSAGE' 'LE PARAMETRE T2 DOIT ETRE PRESENT DANS LA TABLE';
  145. LOK=FAUX;
  146. 'SINON'; T2 = PARAM.'T2';
  147. 'FINSI';
  148. 'SI' ('NON' ('EXISTE' PARAM 'B0'));
  149. 'MESSAGE' 'LE PARAMETRE B0 DOIT ETRE PRESENT DANS LA TABLE';
  150. LOK=FAUX;
  151. 'SINON'; B0 = PARAM.'B0';
  152. 'FINSI';
  153. 'FINSI';
  154. 'SI' ('NON' ('EXISTE' PARAM 'TINI'));
  155. 'MESSAGE' 'LE PARAMETRE TINI DOIT ETRE PRESENT DANS LA TABLE';
  156. LOK=FAUX;
  157. 'SINON'; TINI = PARAM.'TINI';
  158. 'FINSI';
  159. 'SI' ('NON' ('EXISTE' PARAM 'TFIN'));
  160. 'MESSAGE' 'LE PARAMETRE TFIN DOIT ETRE PRESENT DANS LA TABLE';
  161. LOK=FAUX;
  162. 'SINON'; TFIN = PARAM.'TFIN';
  163. 'FINSI';
  164. 'SI' ('NON' ('EXISTE' PARAM 'AG'));
  165. 'MESSAGE' 'LE PARAMETRE AG DOIT ETRE PRESENT DANS LA TABLE';
  166. LOK=FAUX;
  167. 'SINON'; AG = PARAM.'AG';
  168. 'FINSI';
  169. ****************************************************************
  170. 'SI' ('NON' ('EXISTE' PARAM 'TYPE'));
  171. 'MESSAGE'
  172. 'LE MOT CLEE QUI DEFINE LE TYPE DOIT ETRE PRESENT DANS LA TABLE';
  173. LOK=FAUX;
  174. 'SINON'; MTYPE = PARAM.'TYPE';
  175. 'SI' ('EGA' MTYPE 'ALIN');
  176. 'SI' ('EXISTE' PARAM 'Q'); QFAC = PARAM.'Q';
  177. 'SINON';
  178. 'MESSAGE' 'LE FACTEUR Q DOIT ETRE PRESENT DANS LA TABLE';
  179. LOK=FAUX;
  180. 'FINSI';
  181. 'FINSI';
  182. 'SI' ('EGA' MTYPE 'GSIG'); QFAC = 1.0;
  183. 'FINSI';
  184. 'SI' (('EGA' MTYPE 'GSIG') 'OU' ('EGA' MTYPE 'ALIN'));
  185. 'SINON'
  186. 'MESSAGE' ' LES TYPES POSSIBLES SON "ALIN" et "GSIG"';
  187. LOK=FAUX;
  188. 'FINSI';
  189. 'FINSI';
  190. MESSAGE 'fin presence donnee obligatoire';
  191. *
  192. *--- Presence des donnees facultatives
  193. *
  194. 'SI' LOK;
  195. 'SI' ('NON' ('EXISTE' PARAM 'SOIL'));
  196. 'SI' ('EXISTE' PARAM 'K' ); K =PARAM.'K' ;'SINON';K =1 ;'FINSI';
  197. 'SI' ('EXISTE' PARAM 'D0'); D0=PARAM.'D0';'SINON';D0=0.;'FINSI';
  198. 'FINSI';
  199. 'SI' ('EXISTE' PARAM 'AMOR'); AMOR=PARAM.'AMOR';AAA=0.05/AMOR; ETA = AAA**0.5;'SINON';ETA=1; AMOR=0.05; 'FINSI';
  200. 'SI' ('EXISTE' PARAM 'N') ; N =PARAM.'N' ;'SINON';N =25;'FINSI';
  201. 'SI' ('EXISTE' PARAM 'NP') ; NP =PARAM.'NP' ;'SINON';NP =25;'FINSI';
  202. 'SI' ('EXISTE' PARAM 'GRAN');GR =PARAM.'GRAN';'SINON'; GR='ACCE';'FINSI';
  203. 'SI' ('EXISTE' PARAM 'ABSC');ABSC=PARAM.'ABSC';'SINON';ABSC='PERI';'FINSI';
  204. 'FINSI';
  205. MESSAGE 'fin presence donnee facultative';
  206. *
  207. *--- Les constantes
  208. *
  209. * AMPF = Facteur d'amplification pour les hautes periodes
  210. *
  211. DPI=2 * PI; G=980.665; AMPF=1.4;
  212. *
  213. *--- Verification des donnees
  214. *
  215. *
  216. 'SI' LOK;
  217. 'SI' (TINI '>EG' T1);
  218. 'MESSAGE' 'LE PARAMETRE TINI DOIT ETRE INFERIEUR A T1';
  219. LOK=FAUX;
  220. 'FINSI';
  221. 'SI' (TFIN '&lt;EG' T2);
  222. 'MESSAGE' 'LE PARAMETRE TFIN DOIT ETRE SUPERIEUR A T2';
  223. LOK=FAUX;
  224. 'FINSI';
  225. 'SI' ((D0 'EGA' 0.) 'OU' ('EGA' MTYPE 'ALIN')); T3=T2;
  226. 'SINON';
  227. DMAX= (AG/G) * D0 * AMPF;
  228. * T3 = (((DPI**2)/(T2**K))*(D0/(B0*G)))**(1./(2-K));
  229. T3 = ((DPI**2)/(T2**K))*(D0*AMPF/(B0*G));
  230. EXPO=1./(2-K);
  231. T3 = T3 ** EXPO;
  232. 'FINSI';
  233. 'SI' (T3 '<' T2);
  234. 'MESSAGE' 'T3 (DEBUT DE LA ZONE A D CST DOIT ETRE SUPERIEUR A T2';
  235. LOK=FAUX;
  236. 'FINSI';
  237. 'SI' (T3 '>EG' TFIN); T3=T2; 'FINSI';
  238. 'FINSI';
  239. *MESSAGE 'fin verification';
  240. *
  241. *----- Calcul du Spectre de reponse
  242. *
  243. 'SI' LOK;
  244. B0 = B0 * ETA * SS / QFAC ;
  245. RES='PROG'; PER='PROG';
  246. *
  247. *--- Premiere zone (acceleration lineairement croissante)
  248. *
  249. J=1; T=TINI;
  250. UNPXI='EXP' ( (('LOG' T1) - ('LOG' TINI)) / 5 );
  251. 'REPETER' LAB0 5;
  252. RES ='INSERER' RES J (1+((B0-1.)*(T/T1))); PER= 'INSERER' PER J T;
  253. J=J+1;T=T*UNPXI;
  254. 'FIN' LAB0;
  255. *MESSAGE 'fin premiere zone';
  256. *
  257. *--- Seconde zone (acceleration constante)
  258. *
  259. RES='INSERER' RES J B0; PER='INSERER' PER J T1;
  260. J=J+1;
  261. RES='INSERER' RES J B0; PER='INSERER' PER J T2;
  262. *MESSAGE 'fin seconde zone';
  263. *
  264. *--- Troisieme zone (acceleration K decroissante)
  265. *
  266. T=T2;
  267. 'SI' (T2 'EGA' T3);
  268. UNPXI='EXP' ( (('LOG' TFIN) - ('LOG' T2)) / N );
  269. 'SINON';
  270. UNPXI='EXP' ( (('LOG' T3) - ('LOG' T2)) / N );
  271. 'FINSI';
  272. 'REPETER' LAB1 (N-1);
  273. J=J+1;T=T*UNPXI;
  274. * RES='INSERER' RES J (B0/((T/T2)**K));PER= 'INSERER' PER J T;
  275. AAA=T/T2; B1 = B0/(AAA**K); CR11 = AG / G / 5;
  276. 'SI' ( CR11 '>EG' B1 );
  277. B1 = CR11;
  278. 'FINSI';
  279. RES='INSERER' RES J B1 ; PER='INSERER' PER J T;
  280. 'FIN' LAB1;
  281. J=J+1;
  282. 'SI' (T2 'EGA' T3); T=TFIN;
  283. 'SINON'; T=T3; 'FINSI';
  284. * B1=B0/((T/T2)**K);
  285. AAA=T/T2; B1 = B0/(AAA**K); CR11 = AG / G / 5;
  286. 'SI' ( CR11 '>EG' B1 );
  287. B1 = CR11;
  288. 'FINSI';
  289. RES='INSERER' RES J B1 ;PER= 'INSERER' PER J T;
  290. *B1=B0/(AAA**K);
  291. * RES='INSERER' RES J B1;PER= 'INSERER' PER J T;
  292. *MESSAGE 'fin troisieme zone';
  293. *
  294. *--- Quatrieme zone (acceleration KP decroissante)
  295. *
  296. 'SI' ('NON' (T2 'EGA' T3));
  297. UNPXI='EXP' ( (('LOG' TFIN) - ('LOG' T3)) / NP );
  298. 'REPETER' LAB2 (NP-1);
  299. J=J+1;T=T*UNPXI;
  300. RES='INSERER' RES J (B1/((T/T3)**2));PER= 'INSERER' PER J T;
  301. 'FIN' LAB2;
  302. J=J+1;
  303. RES='INSERER' RES J (B1/((TFIN/T3)**2));PER= 'INSERER' PER J TFIN;
  304. 'FINSI';
  305. *MESSAGE 'fin quatrieme zone';
  306. *
  307. *--- Normalisation
  308. *
  309. RES=RES*AG;
  310. *MESSAGE 'fin normalisation';
  311. *
  312. *--- Generation en vitesse
  313. *
  314. 'SI' ('EGA' GR 'VITE');
  315. DRES=J; J=0;
  316. 'REPETER' LABV DRES;
  317. J=J+1;
  318. T='EXTRAIRE' PER J; RA='EXTRAIRE' RES J;
  319. 'REMPLACER' RES J (RA * (T / DPI));
  320. 'FIN' LABV;
  321. 'FINSI';
  322. *
  323. *--- Generation en deplacement
  324. *
  325. 'SI' ('EGA' GR 'DEPL');
  326. DRES=J; J=0;
  327. 'REPETER' LABD DRES;
  328. J=J+1;
  329. T='EXTRAIRE' PER J; RA='EXTRAIRE' RES J;
  330. 'REMPLACER' RES J (RA * ((T / DPI)**2));
  331. 'FIN' LABD;
  332. 'FINSI';
  333. *
  334. *--- Abcisses en frequence
  335. *
  336. 'SI' ('EGA' ABSC 'FREQ');
  337. DRES=J; J=0;
  338. FPER= 'PROG';
  339. FRES= 'PROG';
  340. 'REPETER' BLO1 DRES;
  341. J=J+1;
  342. T='EXTRAIRE' PER (DRES - J + 1); RA='EXTRAIRE' RES (DRES - J + 1);
  343. TF=1. / T;
  344. FPER='INSE' FPER J TF;
  345. FRES='INSE' FRES J RA;
  346. 'FIN' BLO1;
  347. PER = FPER;
  348. RES = FRES;
  349. 'FINSI';
  350. *
  351. *--- Generation de l'objet evol contenant le RS
  352. *
  353. ETA1 = ETA * 0.05;
  354. ALF1 = AG / G;
  355. *
  356. 'SI' ('EGA' MTYPE 'ALIN');
  357. 'TITRE' 'EC8 (LADS): Soil ' SOIL 'q =' QFAC 'Eta =' ETA1 'Alfa =' ALF1;
  358. 'SINON';
  359. 'TITRE' 'EC8 Response Spectrum: Soil ' SOIL 'Eta =' ETA1 'Alfa =' ALF1;
  360. 'FINSI';
  361. RS ='EVOL' 'MANU' ABSC PER GR RES;
  362. *
  363. 'FINSI';
  364. *
  365. 'FINPROC' RS;
  366.  

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