1 : * EC8ACSIS PROCEDUR AM 95/12/28 21:21:14 1962 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 (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.;'SINON'; 127 : 'SI' ('EGA' SOIL 'B'); T1=.2; T2=.6; B0=2.5;K=1;D0= 90.; SS=1.;'SINON'; 128 : 'SI' ('EGA' SOIL 'C'); T1=.3; T2=.8; B0=2.5;K=1;D0=120.; SS=.8;'SINON'; 129 : 'MESSAGE' 'LE SOIL EST A, B OU C'; LOK=FAUX; 'FINSI';'FINSI';'FINSI'; 130 : 'SINON'; 131 : SOIL='specifique'; 132 : 'SI' ('NON' ('EXISTE' PARAM 'T1')); 133 : 'MESSAGE' 'LE PARAMETRE T1 DOIT ETRE PRESENT DANS LA TABLE'; 134 : LOK=FAUX; 135 : 'SINON'; T1 = PARAM.'T1'; 136 : 'FINSI'; 137 : 'SI' ('NON' ('EXISTE' PARAM 'T2')); 138 : 'MESSAGE' 'LE PARAMETRE T2 DOIT ETRE PRESENT DANS LA TABLE'; 139 : LOK=FAUX; 140 : 'SINON'; T2 = PARAM.'T2'; 141 : 'FINSI'; 142 : 'SI' ('NON' ('EXISTE' PARAM 'B0')); 143 : 'MESSAGE' 'LE PARAMETRE B0 DOIT ETRE PRESENT DANS LA TABLE'; 144 : LOK=FAUX; 145 : 'SINON'; B0 = PARAM.'B0'; 146 : 'FINSI'; 147 : 'FINSI'; 148 : 'SI' ('NON' ('EXISTE' PARAM 'TINI')); 149 : 'MESSAGE' 'LE PARAMETRE TINI DOIT ETRE PRESENT DANS LA TABLE'; 150 : LOK=FAUX; 151 : 'SINON'; TINI = PARAM.'TINI'; 152 : 'FINSI'; 153 : 'SI' ('NON' ('EXISTE' PARAM 'TFIN')); 154 : 'MESSAGE' 'LE PARAMETRE TFIN DOIT ETRE PRESENT DANS LA TABLE'; 155 : LOK=FAUX; 156 : 'SINON'; TFIN = PARAM.'TFIN'; 157 : 'FINSI'; 158 : 'SI' ('NON' ('EXISTE' PARAM 'AG')); 159 : 'MESSAGE' 'LE PARAMETRE AG DOIT ETRE PRESENT DANS LA TABLE'; 160 : LOK=FAUX; 161 : 'SINON'; AG = PARAM.'AG'; 162 : 'FINSI'; 163 : **************************************************************** 164 : 'SI' ('NON' ('EXISTE' PARAM 'TYPE')); 165 : 'MESSAGE' 166 : 'LE MOT CLEE QUI DEFINE LE TYPE DOIT ETRE PRESENT DANS LA TABLE'; 167 : LOK=FAUX; 168 : 'SINON'; MTYPE = PARAM.'TYPE'; 169 : 'SI' ('EGA' MTYPE 'ALIN'); 170 : 'SI' ('EXISTE' PARAM 'Q'); QFAC = PARAM.'Q'; 171 : 'SINON'; 172 : 'MESSAGE' 'LE FACTEUR Q DOIT ETRE PRESENT DANS LA TABLE'; 173 : LOK=FAUX; 174 : 'FINSI'; 175 : 'FINSI'; 176 : 'SI' ('EGA' MTYPE 'GSIG'); QFAC = 1.0; 'FINSI'; 177 : 'SI' (('EGA' MTYPE 'GSIG') 'OU' ('EGA' MTYPE 'ALIN')); 178 : 'SINON' 179 : 'MESSAGE' ' LES TYPES POSSIBLES SON "ALIN" et "GSIG"'; 180 : LOK=FAUX; 181 : 'FINSI'; 182 : 'FINSI'; 183 : *MESSAGE 'fin presence donnee obligatoire'; 184 : * 185 : *--- Presence des donnees facultatives 186 : * 187 : 'SI' LOK; 188 : 'SI' ('NON' ('EXISTE' PARAM 'SOIL')); 189 : 'SI' ('EXISTE' PARAM 'K' ); K =PARAM.'K' ; 190 : 'SINON'; K =1 ; 'FINSI'; 191 : 'SI' ('EXISTE' PARAM 'D0'); D0=PARAM.'D0'; 192 : 'SINON'; D0=0.; 'FINSI'; 193 : 'FINSI'; 194 : 'SI' ('EXISTE' PARAM 'AMOR'); AMOR=PARAM.'AMOR'; 195 : * ETA = (0.05/AMOR)**0.5; 196 : AAA=0.05/AMOR; ETA = AAA**0.5; 197 : 'SINON'; ETA=1; 'FINSI'; 198 : 'SINON'; AMOR=0.05; 'FINSI'; 199 : 'SI' ('EXISTE' PARAM 'N') ; N =PARAM.'N' ; 200 : 'SINON'; N =25; 'FINSI'; 201 : 'SI' ('EXISTE' PARAM 'NP') ; NP =PARAM.'NP' ; 202 : 'SINON'; NP =25; 'FINSI'; 203 : 'SI' ('EXISTE' PARAM 'GRAN');GR =PARAM.'GRAN'; 204 : 'SINON'; GR ='ACCE'; 'FINSI'; 205 : 'SI' ('EXISTE' PARAM 'ABSC');ABSC =PARAM.'ABSC'; 206 : 'SINON'; ABSC ='PERI'; 'FINSI'; 207 : 'FINSI'; 208 : *MESSAGE 'fin presence donnee facultative'; 209 : * 210 : *--- Les constantes 211 : * 212 : * AMPF = Facteur d'amplification pour les hautes periodes 213 : * 214 : DPI=2 * 3.1415927; G=980.665; AMPF=1.4; 215 : * 216 : *--- Verification des donnees 217 : * 218 : * 219 : 'SI' LOK; 220 : 'SI' (TINI '>EG' T1); 221 : 'MESSAGE' 'LE PARAMETRE TINI DOIT ETRE INFERIEUR A T1'; 222 : LOK=FAUX; 223 : 'FINSI'; 224 : 'SI' (TFIN '<EG' T2); 225 : 'MESSAGE' 'LE PARAMETRE TFIN DOIT ETRE SUPERIEUR A T2'; 226 : LOK=FAUX; 227 : 'FINSI'; 228 : 'SI' ((D0 'EGA' 0.) 'OU' ('EGA' MTYPE 'ALIN')); T3=T2; 229 : 'SINON'; 230 : * DPI=2 * 3.1415927; G=980.665; AMPF=1.4; 231 : DMAX= (AG/G) * D0 * AMPF; 232 : * T3 = (((DPI**2)/(T2**K))*(D0/(B0*G)))**(1./(2-K)); 233 : T3 = ((DPI**2)/(T2**K))*(D0*AMPF/(B0*G)); 234 : EXPO=1./(2-K); 235 : T3 = T3 ** EXPO; 236 : 'FINSI'; 237 : 'SI' (T3 '<' T2); 238 : 'MESSAGE' 'T3 (DEBUT DE LA ZONE A D CST DOIT ETRE SUPERIEUR A T2'; 239 : LOK=FAUX; 240 : 'FINSI'; 241 : 'SI' (T3 '>EG' TFIN); T3=T2; 'FINSI'; 242 : 'FINSI'; 243 : *MESSAGE 'fin verification'; 244 : * 245 : *----- Calcul du Spectre de reponse 246 : * 247 : 'SI' LOK; 248 : B0 = B0 * ETA * SS / QFAC ; 249 : RES='PROG'; PER='PROG'; 250 : * 251 : *--- Premiere zone (acceleration lineairement croissante) 252 : * 253 : J=1; T=TINI; 254 : UNPXI='EXP' ( (('LOG' T1) - ('LOG' TINI)) / 5 ); 255 : 'REPETER' LAB0 5; 256 : RES ='INSERER' RES J (1+((B0-1.)*(T/T1))); PER= 'INSERER' PER J T; 257 : J=J+1;T=T*UNPXI; 258 : 'FIN' LAB0; 259 : *MESSAGE 'fin premiere zone'; 260 : * 261 : *--- Seconde zone (acceleration constante) 262 : * 263 : RES='INSERER' RES J B0; PER='INSERER' PER J T1; 264 : J=J+1; 265 : RES='INSERER' RES J B0; PER='INSERER' PER J T2; 266 : *MESSAGE 'fin seconde zone'; 267 : * 268 : *--- Troisieme zone (acceleration K decroissante) 269 : * 270 : T=T2; 271 : 'SI' (T2 'EGA' T3); 272 : UNPXI='EXP' ( (('LOG' TFIN) - ('LOG' T2)) / N ); 273 : 'SINON'; 274 : UNPXI='EXP' ( (('LOG' T3) - ('LOG' T2)) / N ); 275 : 'FINSI'; 276 : 'REPETER' LAB1 (N-1); 277 : J=J+1;T=T*UNPXI; 278 : * RES='INSERER' RES J (B0/((T/T2)**K));PER= 'INSERER' PER J T; 279 : AAA=T/T2; B1 = B0/(AAA**K); CR11 = AG / G / 5; 280 : 'SI' ( CR11 '>EG' B1 ); 281 : B1 = CR11; 282 : 'FINSI'; 283 : RES='INSERER' RES J B1 ; PER='INSERER' PER J T; 284 : 'FIN' LAB1; 285 : J=J+1; 286 : 'SI' (T2 'EGA' T3); T=TFIN; 287 : 'SINON'; T=T3; 'FINSI'; 288 : * B1=B0/((T/T2)**K); 289 : AAA=T/T2; B1 = B0/(AAA**K); CR11 = AG / G / 5; 290 : 'SI' ( CR11 '>EG' B1 ); 291 : B1 = CR11; 292 : 'FINSI'; 293 : RES='INSERER' RES J B1 ;PER= 'INSERER' PER J T; 294 : *B1=B0/(AAA**K); 295 : * RES='INSERER' RES J B1;PER= 'INSERER' PER J T; 296 : *MESSAGE 'fin troisieme zone'; 297 : * 298 : *--- Quatrieme zone (acceleration KP decroissante) 299 : * 300 : 'SI' ('NON' (T2 'EGA' T3)); 301 : UNPXI='EXP' ( (('LOG' TFIN) - ('LOG' T3)) / NP ); 302 : 'REPETER' LAB2 (NP-1); 303 : J=J+1;T=T*UNPXI; 304 : RES='INSERER' RES J (B1/((T/T3)**2));PER= 'INSERER' PER J T; 305 : 'FIN' LAB2; 306 : J=J+1; 307 : RES='INSERER' RES J (B1/((TFIN/T3)**2));PER= 'INSERER' PER J TFIN; 308 : 'FINSI'; 309 : *MESSAGE 'fin quatrieme zone'; 310 : * 311 : *--- Normalisation 312 : * 313 : RES=RES*AG; 314 : *MESSAGE 'fin normalisation'; 315 : * 316 : *--- Generation en vitesse 317 : * 318 : 'SI' ('EGA' GR 'VITE'); 319 : DRES=J; J=0; 320 : 'REPETER' LABV DRES; 321 : J=J+1; 322 : T='EXTRAIRE' PER J; RA='EXTRAIRE' RES J; 323 : 'REMPLACER' RES J (RA * (T / DPI)); 324 : 'FIN' LABV; 325 : 'FINSI'; 326 : * 327 : *--- Generation en deplacement 328 : * 329 : 'SI' ('EGA' GR 'DEPL'); 330 : DRES=J; J=0; 331 : 'REPETER' LABD DRES; 332 : J=J+1; 333 : T='EXTRAIRE' PER J; RA='EXTRAIRE' RES J; 334 : 'REMPLACER' RES J (RA * ((T / DPI)**2)); 335 : 'FIN' LABD; 336 : 'FINSI'; 337 : * 338 : *--- Abcisses en frequence 339 : * 340 : 'SI' ('EGA' ABSC 'FREQ'); 341 : DRES=J; J=0; 342 : FPER= 'PROG'; 343 : FRES= 'PROG'; 344 : 'REPETER' BLO1 DRES; 345 : J=J+1; 346 : T='EXTRAIRE' PER (DRES - J + 1); RA='EXTRAIRE' RES (DRES - J + 1); 347 : TF=1. / T; 348 : FPER='INSE' FPER J TF; 349 : FRES='INSE' FRES J RA; 350 : 'FIN' BLO1; 351 : PER = FPER; 352 : RES = FRES; 353 : 'FINSI'; 354 : * 355 : *--- Generation de l'objet evol contenant le RS 356 : * 357 : ETA1 = ETA * 0.05; 358 : ALF1 = AG / G; 359 : * 360 : 'SI' ('EGA' MTYPE 'ALIN'); 361 : 'TITRE' 'EC8 (LADS): Soil ' SOIL 'q =' QFAC 'Eta =' ETA1 'Alfa =' ALF1; 362 : 'SINON'; 363 : 'TITRE' 'EC8 Response Spectrum: Soil ' SOIL 'Eta =' ETA1 'Alfa =' ALF1; 364 : 'FINSI'; 365 : RS ='EVOL' 'MANU' ABSC PER GR RES; 366 : * 367 : 'FINSI'; 368 : * 369 : 'FINPROC' RS; 370 :
© Cast3M 2003 - All rights reserved.
Disclaimer