* fichier : iss2D_z.dgibi
GRAPH='Y';
SAUT PAGE ;
************************************************************************
* REPONSE SISMIQUE DU SOL EN ABSENCE DE STRUTURE
************************************************************************
*
* DESCRIPTION DU PROBLEME
* ------------------------
* IL S'AGIT D'UN PROBLEME D'INTERACTION SOL-STRUCTURE.
* EN ABSENCE DE STRUCTURE, IL N'Y PAS D'INTERACTION. ON DOIT RETROUVER
* L'ACCELEROGRAMME IMPOSE A LA SURFACE DU SOL VIA LE PROCESSUS DE
* DECONVOLUTION (PROCEDURES DECONV OU DECONV3D) ET CONVOLUTION
* (PROCEDURE DYNAMIC OU PASAPAS).
* LE CYLINDRE DANS CE JEU DE DONNEES REPRESENTE LE SOL PROCHE TANDIS
* QUE LE SOL LOINTAIN QUI S'ETEND VERS L'INFINI EST REPRESENTE PAR UNE
* FRONTIERE ABSORBANTE COMPOSEE D'AMORTISSEURS VISQUEUX.
************************************************************************
OPTION TRAC PSC ;
OPTION ECHO 0 ;
*-----------------------------------------------------------------------
* PROCEDURE DE CALCUL DE LA DERIVEE PREMIERE
*-----------------------------------------------------------------------
'DEBPROC' DERIV1 EV1 ;
X = 'EXTR' EV1 'ABSC' ;
Y = 'EXTR' EV1 'ORDO' ;
NPOIN = 'DIME' X ;
H = ( 'EXTR' X 2 ) - ( 'EXTR' X 1 ) ;
X1 = ( 'PROG' 0.0 0.0 ) 'ET' Y ;
X3 = Y 'ET' ( 'PROG' 0.0 0.0 ) ;
DX = ( X3 - X1 ) / ( H * 2.0 ) ;
Y1 = 'ENLE' ( 'ENLE' DX ( NPOIN + 2 ) ) 1 ;
L1 = ( 'PROG' 0.0 ) 'ET' ( 'PROG' ( NPOIN - 2 ) * 1.0 )
'ET' ( 'PROG' 0.0 ) ;
Y2 = Y1 * L1 ;
EV2 = 'EVOL' 'MANU' X Y2 ;
'FINPROC' EV2 ;
*-----------------------------------------------------------------------
* SOL SANS STRUCTURE
*-----------------------------------------------------------------------
OPTI DIME 2 MODE FOUR 0 ELEM QUA8 COUL BLEU ;
R = 2. / (PI**0.5) ;
NE = 2 ;
NR = 3 ;
P0 = 0. 0. ;
P4 = (NR*R) 0. ;
SUR = COUL VERT (DROIT (NE*NR) P0 P4) ;
SOL = TRAN (NE*NR) SUR (0 (-1*NR*R)) ;
BOR = COTE 2 SOL ;
FON = COTE 3 SOL ;
AXE = COTE 4 SOL ;
ELIM SOL 0.001 ;
TITR 'MAILLAGE SOL (AXISYMETRIQUE)' ;
SI (NEG GRAPH 'N');
TRAC SOL QUAL NCLK;
FINSI;
*-----------------------------------------------------------------------
* MODELE DE SOL
*-----------------------------------------------------------------------
NU1 = 0.3 ;
G1 = 100.E7 ;
E1 = 2*(1 + NU1)*G1 ;
MOD_S = MODE SOL MECANIQUE ELASTIQUE ISOTROPE QUA8 ;
MAT_S = MATE MOD_S YOUN E1 NU NU1 RHO 2000 ;
MAS_S = MASS MOD_S MAT_S ;
RIG_S = RIGI MOD_S MAT_S ;
*-----------------------------------------------------------------------
* AMORTISSEMENT DE TYPE RAYLEIGH
*-----------------------------------------------------------------------
F1 = 5.0 ;
F2 = 25.0 ;
KSI_S = 0.05 ;
ALPHA = 4.0 * PI * F1 * F2 / (F1 + F2) ;
BETA = 1.0 / (PI * (F1 + F2)) ;
AMO_S = KSI_S * ((ALPHA * MAS_S) ET (BETA * RIG_S)) ;
*-----------------------------------------------------------------------
* SIGNAL SISMIQUE (SELON SPECTRE PS92 SITE S1)
*-----------------------------------------------------------------------
LFR = PROG 0.1 0.5 1.0 2.5 5. 33. 50. ;
LSP = PROG 0.1 0.5 1.0 2.5 2.5 1.0 1.0 ;
SP0 = EVOL MANU 'FREQ(HZ)' LFR 'ACCE(M/S*S)' LSP ;
TAB = TABLE ;
TAB.'MOTIT' = 'SPECTRE PS92 S1 ' ;
TAB.'SEISME'= TABLE ;
TAB.'SEISME'.'SPECTRE' = SP0 ;
TAB.'SEISME'.'AMORT' = 0.05 ;
TAB.'SEISME'.'TYPSP' = 'ACCE' ;
TAB.'SIGNAL' = TABLE ;
TAB.'SIGNAL'.'ENVE' = 'PLATLIN' ;
TAB.'SIGNAL'.'NP' = 8 ;
TAB.'SIGNAL'.'DUREE' = 2.56 ;
TAB.'SIGNAL'.'TDEBUT' = 0.75 ;
TAB.'SIGNAL'.'TFIN' = 1.5 ;
TAB.'NBITER' = 5 ;
TAB.'NBSIGN' = 1 ;
TAB.'NALEAT' = 3 ;
TAB.'FRCOUP' = 49.9 ;
TAB.'OPTSORT' = 'SPECTRE' ;
TABSIG = SIGNSYNT FABR TAB ;
* MOYENNE ZERO, PLAGE INITIALE ZERO
LT0 = EXTR TABSIG.1 ABSC ;
LA0 = EXTR TABSIG.1 ORDO ;
DT = (EXTR LT0 2) - (EXTR LT0 1) ;
NP0 = DIME LT0 ;
LT1 = PROG 0. PAS DT 2.3 ;
LA1 = IPOL LT1 LT0 LA0 ;
NP1 = DIME LT1 ;
LA1 = LA1 - (PROG NP1 * ((RESU LA1) / NP1)) ;
LA1 = (PROG 20 * 0.) ET LA1 ;
LT1 = PROG 0. PAS DT NPAS (19 + NP1) ;
ACC1 = EVOL MANU 'TEMPS(S)' LT1 'ACCE(M/S*S)' LA1 ;
SI (NEG GRAPH 'N');
DESS ACC1 MIMA NCLK;
FINSI ;
*-----------------------------------------------------------------------
* DECONVOLUTION ET FRONTIERE ABSORBANTE
*-----------------------------------------------------------------------
TAB = TABLE ;
TAB.1 = TABLE ;
TAB.1 .'FRONTIERE' = BOR ;
TAB.1 .'MASSE_VOLUMIQUE' = 2000. ;
TAB.1 .'POISSON' = 0.3 ;
TAB.1 .'YOUNG' = E1 ;
TAB.1 .'AMORTISSEMENT' = 0.05 ;
TYP_F = 'LYSMER' ;
FC = 50.0 ;
DIR = 'VERT' ;
TABS = DECONV TAB FON MOD_S DIR ACC1 F1 F2 FC TYP_F ;
*-----------------------------------------------------------------------
* TABLE POUR LA PROCEDURE 'DYNAMIC'
*-----------------------------------------------------------------------
CH_DEPI = MANU CHPO 3 SOL UR 0.0 UT 0.0 UZ 0.0 ;
CH_VITI = MANU CHPO 3 SOL UR 0.0 UT 0.0 UZ 0.0 ;
TAB_DYN = TABLE ;
TAB_DYN.'DEPL' = CH_DEPI ;
TAB_DYN.'VITE' = CH_VITI ;
TAB_DYN.'RIGI' = RIG_S ;
TAB_DYN.'MASS' = MAS_S ;
TAB_DYN.'AMOR' = AMO_S ET TABS.'AMOR' ;
TAB_DYN.'CHAR' = TABS.'CHAR' ;
TAB_DYN.'FREQ' = TABS.'FCDYN' ;
DT = TABS.'PAS' ;
NB_PAS = ENTI (2.51 / DT) ;
TAB_DYN.'DEBU' = 0.0 ;
TAB_DYN.'INST' = PROG 0.0 PAS DT NPAS (NB_PAS - 1) ;
RESU = DYNAMIC TAB_DYN ;
*-----------------------------------------------------------------------
* POST-TRAITEMENT
*-----------------------------------------------------------------------
POI = TABLE ;
POI.1 = P0 ;
POI.2 = P4 ;
NP = DIME POI ;
L_TEM = PROG NB_PAS * 0.0 ;
L_D = TABLE ;
L_V = TABLE ;
I = 1 ;
REPE B1 NP ;
L_V.I = PROG NB_PAS * 0.0 ;
I = I + 1 ;
FIN B1 ;
I_TEM = 0 ;
REPETER B2 NB_PAS ;
I_TEM = I_TEM + 1 ;
TEM_I = RESU.I_TEM.'TEMP' ;
REMP L_TEM I_TEM TEM_I ;
CHV_I = RESU.I_TEM.'VITE' ;
I = 1 ;
REPE B2_1 NP ;
REMP L_V.I I_TEM (EXTR CHV_I POI.I UZ) ;
I = I + 1 ;
FIN B2_1 ;
FIN B2 ;
* REPONSE EN ACCELERATION
LT1 = EXTR ACC1 ABSC ;
EV_VIT = TABLE ;
EV_ACC = TABLE ;
I = 1 ;
REPE B3 NP ;
EV_VIT.I = EVOL MANU L_TEM L_V.I ;
EV_ACC.I = DERIV1 EV_VIT.I ;
LT2 = EXTR EV_ACC.I ABSC ;
LA2 = EXTR EV_ACC.I ORDO ;
LA2 = IPOL LT1 LT2 LA2 ;
EV_ACC.I = EVOL MANU 'TEMPS(S)' LT1 'ACCE(M/S*S)' LA2 ;
I = I + 1 ;
FIN B3 ;
* COMPARAISON AVEC L'ACCELEROGRAMME IMPOSE
SI (NEG GRAPH 'N');
DESS ((COUL ROUG EV_ACC.1) ET (COUL VERT EV_ACC.2) ET ACC1) NCLK
TITR 'ACCELEROGRAMMES IMPOSE (BLEU) ET CALCULES (ROUGE ET VERT)' MIMA ;
FINSI ;
ERR1 = MAXI ABS (EXTR (EV_ACC.1 - ACC1) ORDO) ;
ERR2 = MAXI ABS (EXTR (EV_ACC.2 - ACC1) ORDO) ;
SI ((MAXI (PROG ERR1 ERR2)) > 0.01);
ERRE 5;
FINSI;
FIN ;
© Cast3M 2003 - All rights reserved.
Disclaimer