* fichier : sissi.dgibi
* CAS TEST DU 91/06/19 PROVENANCE : PLAF
* CAS TEST DU 91/06/18 PROVENANCE : PLAF
* si GRAPH = N, les graphiques ne sont pas affich{s
* si GRAPH diff{rent de N, tous les graphiques sont affich{s
*
GRAPH = 'N' ;
*
SAUT PAGE ;
*--------------------------------------------------------------------*
* SISSI *
*--------------------------------------------------------------------*
* *
* test de la proc{dure SISSI *
* *
* 1 poutre encastr{e, 20 {l{ments finis, IY diff{rent de IZ *
* un spectre d'oscillateurs en ACCE *
* direction du seisme : X *
* *
*--------------------------------------------------------------------*
*
OPTION ECHO 0 ;
TEMPS ;
OPTION DIME 3 ELEM SEG2 ;
*
C1 = 0. 0. 0. ;
C2 = 0. 0. 5. ;
C3 = 0. 0. 10. ;
L1 = DROITE 10 C1 C2 ;
L2 = DROITE 10 C2 C3 ;
LI = L1 ET L2 ;
*
MOD1 = MODE LI MECANIQUE ELASTIQUE POUT ;
*
CH_MAT = MATE MOD1 YOUNG 2.E11 NU 0.3 RHO 7800. ;
CH_CAR = CARA MOD1 SECT 0.25 INRY 0.006 INRZ 0.004 TORS 0.01
VECT ( 0. 1. 0. ) ;
CH_MAT=CH_MAT et CH_CAR;
*
RIG1 = RIGIDITE CH_MAT MOD1 ;
ENC1 = BLOQUE C1 DEPL ROTA ;
RIGFI = RIG1 ET ENC1 ;
*
MAS1 = MASSE CH_MAT MOD1 ;
*
* Calcul des premiers modes
*
L_FREQ = PROG 3.58 4.38 24.09 25.15 ;
MODE_POU = VIBRATION PROCHE L_FREQ RIGFI MAS1 TBAS ;
*
* Calcul des contraintes modales
*
MODE_POU = SIGSOL MOD1 CH_MAT MODE_POU ;
*
* Calcul des reactions modales
*
MODE_POU = REAC ENC1 MODE_POU ;
*
ITAB2 = MODE_POU . 'MODES' ;
NB_MODE = ( DIME ITAB2 ) - 2 ;
*
* D{finition du spectre acc{l{ration
*
LIS_TEMP = PROG 0. PAS 1.E-2 0.50 ;
LIS_ACCE = PROG 0. 0.5 1. 0.5 0. -0.5 -1. -0.5
0. 0.5 1. 0.5 0. -0.5 -1. -0.5
0. 0.5 1. 0.5 0. -0.5 -1. -0.5
0. 0.5 1. 0.5 0. -0.5 -1. -0.5
0. 0.5 1. 0.5 0. -0.35 -0.7 -0.35
0. 0.25 0.5 0.25 0. -0.15 -0.3 -0.15
0. 0.1 0. ;
LIS_CHAR = EVOL MANU LIS_TEMP LIS_ACCE ;
LIS_FREQ = PROG 1. PAS 2. 400. ;
LIS_AMOR = PROG 2. 5. 10. 15. ;
LIS_AMOR = LIS_AMOR * 1.e-2 ;
SEISME_X = SPO LIS_CHAR 'AMOR' LIS_AMOR 'FREQ' LIS_FREQ 'ACCE' ;
*
BAS_AMOR = PROG 4. 6. 7. 9. ;
BAS_AMOR = BAS_AMOR * 1.e-2 ;
*
TAB1 = TABLE ;
*
TAB1 . 'STRUCTURE' = MODE_POU ;
*
TAB1 . 'AMORTISSEMENT' = BAS_AMOR ;
*
TAB3 = 'TABLE' 'EXCITATION' ;
TAB1 . 'EXCITATION' = TAB3 ;
*
TAB3 . 1 = 'TABLE' ;
TAB3 . 1 . 'DIRECTION' = 'X' ;
TAB3 . 1 . 'SPECTRE' = SEISME_X ;
TAB3 . 1 . 'AMORTISSEMENT' = LIS_AMOR ;
*
TAB1 . 'RECOMBINAISON_MODES' = 'SRSS';
TAB1 . 'RECOMBINAISON_DIRECTIONS' = 'QUADRATIQUE' ;
*
TAB4 = 'TABLE' 'SORTIES' ;
TAB1 . 'SORTIES' = TAB4 ;
TAB4 . 'DOMAINE' = MOD1 ;
TAB4 . 'DEPLACEMENTS' = VRAI ;
TAB4 . 'CONTRAINTES' = VRAI ;
TAB4 . 'ACCELERATIONS' = VRAI ;
*
TAB2 = SISSIB TAB1 ;
*
MESSAGE ' Chpoint de deplacement du point C3 issu de SISSIB :' ;
MESSAGE ' ' ;
CHP_DEP = TAB2 . 'X' . 'DEPLACEMENTS' ;
LIST ( REDU CHP_DEP C3 ) ;
MESSAGE ' Chpoint d acceleration du point C3 issu de SISSIB :' ;
MESSAGE ' ' ;
CHP_ACC = TAB2 . 'X' . 'ACCELERATIONS' ;
LIST ( REDU CHP_ACC C3 ) ;
*
CHE_CONT = TAB2 . 'X' . 'CONTRAINTES' ;
MAX_CONT = MAXI CHE_CONT ;
MESSAGE ' Valeur maximale des contraintes issue de SISSIB =' MAX_CONT ;
MESSAGE ' ' ;
*
*--------------------------------------------------------------------*
* *
* V{rification de la proc{dure *
* *
*--------------------------------------------------------------------*
*
* Verification du deplacement
* Verification de l'acceleration
* Verification de la contrainte maximale
*
*
* ----- calcul de S(N,X,B) -----
*
TSEIS = TABLE ;
NB_AMOR = 'DIMENSION' LIS_AMOR ;
I_MODE = 0 ;
REPETER BOUC1 NB_MODE ;
I_MODE = I_MODE + 1 ;
ITAB3 = ITAB2 . I_MODE ;
F_N = ITAB3 . 'FREQUENCE' ;
LOG_F_N = LOG F_N ;
B_N = EXTRAIRE BAS_AMOR I_MODE ;
*
P_SPEC = 'PROG' ;
I_AMOR = 0 ;
REPETER BOUC10 NB_AMOR ;
I_AMOR = I_AMOR '+' 1 ;
EVOLS1 = 'EXTR' SEISME_X 'COUR' I_AMOR ;
LISABS1 = 'EXTR' EVOLS1 'ABSC' ;
LISORD1 = 'EXTR' EVOLS1 'ORDO' ;
LOG_ABS1 = 'LOG' LISABS1 ;
LOG_ORD1 = 'LOG' LISORD1 ;
S1 = 'IPOL' LOG_F_N LOG_ABS1 LOG_ORD1 ;
S_1 = 'EXP' S1 ;
*
P_SPEC = P_SPEC ET ( 'PROG' S_1 ) ;
FIN BOUC10 ;
*
S_N = 'IPOL' B_N LIS_AMOR P_SPEC ;
*
TSEIS . I_MODE = S_N ;
FIN BOUC1 ;
*
I_MODE = 0 ;
ZTRON = 'MANU' 'CHPO' LI 1 'UX' 1. ;
*
REPETER BOUC2 NB_MODE ;
I_MODE = I_MODE + 1 ;
S_I = TSEIS . I_MODE ;
ITAB3 = ITAB2 . I_MODE ;
F_I = ITAB3 . 'FREQUENCE' ;
D_I = ITAB3 . 'DEFORMEE_MODALE' ;
C_I = ITAB3 . 'CONTRAINTE_MODALE' ;
ITAB4 = ITAB3 . 'DEPLACEMENTS_GENERALISES' ;
Q_I = ITAB4 . 1 ;
M_I = ITAB3 . 'MASSE_GENERALISEE' ;
W_I = 2.0 * PI * F_I ;
QSM = Q_I / M_I ;
COEF_1 = QSM / ( W_I * W_I ) ;
DEPL_I = COEF_1 * S_I * D_I ;
ACCE_I = QSM * S_I * D_I ;
ZTRON = ZTRON - ( QSM * D_I ) ;
CONT_I = COEF_1 * S_I * C_I ;
'SI' ( I_MODE 'EGA' 1 ) ;
DEPL_T = DEPL_I ** 2 ;
ACCE_T = ACCE_I ** 2 ;
CONT_T = CONT_I ** 2 ;
'SINON' ;
DEPL_T = DEPL_T + ( DEPL_I ** 2 ) ;
ACCE_T = ACCE_T + ( ACCE_I ** 2 ) ;
CONT_T = CONT_T + ( CONT_I ** 2 ) ;
'FINSI' ;
FIN BOUC2 ;
*
LISORD1 = 'EXTR' SEISME_X 'ORDO' 1 ;
NVAL_1 = 'DIME' LISORD1 ;
GAMMA0 = 'EXTR' LISORD1 NVAL_1 ;
ACCE_T = ACCE_T + ( ( GAMMA0 * GAMMA0 ) * ( ZTRON ** 2 ) ) ;
*
DEPL_T = DEPL_T ** 0.5 ;
ACCE_T = ACCE_T ** 0.5 ;
CONT_T = CONT_T ** 0.5 ;
*
D_SOM_X = 'EXTRAIRE' DEPL_T C3 'UX' ;
A_SOM_X = 'EXTRAIRE' ACCE_T C3 'UX' ;
C_MAX = 'MAXI' CONT_T ;
*
SAUTER 2 LIGNES ;
MESSAGE ' deplacement du point C3 :' ;
LIST ( 'REDU' DEPL_T C3 ) ;
SAUTER 2 LIGNES ;
MESSAGE ' acceleration du point C3 :' ;
LIST ( 'REDU' ACCE_T C3 ) ;
SAUTER 2 LIGNES ;
MESSAGE ' contrainte maximale =' C_MAX ;
SAUTER 2 LIGNES ;
*
TEMPS ;
*
* Code de bon fonctionnement
*
DEP = EXTRAIRE CHP_DEP C3 'UX' ;
ACC = EXTRAIRE CHP_ACC C3 'UX' ;
REF_DEP = D_SOM_X ;
REF_ACC = A_SOM_X ;
REF_CON = C_MAX ;
RES1 = ABS ( ( DEP - REF_DEP ) / REF_DEP ) ;
RES2 = ABS ( ( ACC - REF_ACC ) / REF_ACC ) ;
RES3 = ABS ( ( MAX_CONT - REF_CON ) / REF_CON ) ;
SI ( RES1 <EG 1E-2 ) ;
ERRE 0 ;
SINON ;
ERRE 5 ;
FINSI ;
SI ( RES2 <EG 1E-2 ) ;
ERRE 0 ;
SINON ;
ERRE 5 ;
FINSI ;
SI ( RES3 <EG 1E-2 ) ;
ERRE 0 ;
SINON ;
ERRE 5 ;
FINSI ;
*
FIN ;
© Cast3M 2003 - All rights reserved.
Disclaimer