u4.63.01 Opérateur CALC_CHAR_SEISME#
Syntaxe#
Détail de la syntaxe
cham_no = CALC_CHAR_SEISME(
◆ MATR_MASS = matr_asse_depl_r,
◆ DIRECTION = float,
◆ / MONO_APPUI = "OUI" (ou non renseigné),
/ MODE_STAT = mode_meca,
# Si: exists("MODE_STAT")
◆ GROUP_NO = grno,
◇ TITRE = text,
)
◆ : obligatoire
◇ : optionnel
⟐ : présent par défaut
& : ensemble
/ : un seul parmi
| : plusieurs choix possibles
Opérandes#
Opérande MATR_MASS#
♦ MATR_MASS = m
Matrice de masse \(M\) du système, construite avec les conditions aux limites de blocage des appuis.
Opérande DIRECTION#
♦ DIRECTION = (d1,d2,d3,r1,r2,r3)
Composantes du vecteur donnant la direction du mouvement d'entraînement du séisme dans le repère global. C'est une liste de trois réels si les accélérogrammes imposés sont uniquement de translations. Si on impose également des accélérations de rotations infinitésimales, on attend une liste de six réels (valable pour des modélisations avec des éléments discrets ou des éléments finis de structures ayant des degrés de liberté de rotation).Ce vecteur :math:`\Delta`sera normalisé de manière automatique par l'opérateur. Par exemple, si l'on fournit:DIRECTION = (1., 2., 2.,), le résultat sera le même que pour: DIRECTION = (0.333, 0.666, 0.666,).
Description du mouvement d’entraînement#
Opérande MONO_APPUI#
♦ / MONO_APPUI = 'OUI'
La structure est excitée uniformément sur tous ses appuis: le mouvement d'entraînement est de corps rigide, dans la direction donnée par le mot-cléDIRECTION(en général de translation, mais on peut aussi considérer une rotation infinitésimale).
Conformément à ce qui est expliqué dans le document de référence [R4.05.01] l’opérateur CALC_CHAR_SEISME calcule l’expression suivante:
\(-M.\Delta\)
avec \(\Delta\) la direction du séisme spécifiée par l’opérande DIRECTION.
Excitation multi-appuis#
Dans ce cas, les accélérations subies par l’ensemble des points d’appui de la structure étudiée ne sont pas forcément identiques ni en phase. Les mouvements d’entraînement ne sont pas de corps rigide, mais sont décrits par des modes statiques élastiques linéaires.
Opérande MODE_STAT#
/ MODE_STAT = mode
Modes statiques de la structure: concept de type mode_mecaproduit par l’opérateur MODE_STATIQUE[U4.52.14] avec l’option MODE_STAT. Ils correspondent aux \(6\times {\mathrm{nb}}_{\mathrm{appuis}}\) modes statiques élastiques linéaires à degré de liberté unitaire imposé aux appuis où \({\mathrm{nb}}_{\mathrm{appuis}}\) est le nombre d’accélérogrammes (translations, rotations) différents subis par la structure et définis sur chaque degré de liberté unitaire imposé sur chaque appui considéré.
Remarque:
Si la structure n’est sollicitée que par des degrés de liberté de translation, il y a alors \(3{\mathrm{nb}}_{\mathrm{appuis}}\) modes statiques.
Opérande GROUP_NO#
♦ GROUP_NO = g_noeu
Liste de groupes de nœuds (g_noeu) de la structure soumis à l’excitation sismique: ces nœuds supportent les degrés de liberté d’appuis de la structure auxquels sont appliqués les mouvements imposés.
Conformément à ce qui est expliqué dans le document de référence [R4.05.01] l’opérateur CALC_CHAR_SEISME calcule l’expression suivante:
\(-M.{\Psi}_{Pj}.s\)
avec \(s\) la direction du séisme, spécifiée par l’opérande DIRECTION, et \({\Psi}_{Pj}\) les modes statiques linéaires unitaires, spécifiés par l’opérande MODE_STAT, calculés pour chaque degré de liberté des supports bloqués listés dans les groupes de nœuds (g_noeu).
Opérande TITRE#
◊ TITRE = titre
Titre attaché au concept produit par cet opérateur [U4.63.01].
Exemples#
Les deux exemples qui suivent illustrent l’emploi de l’opérateur CALC_CHAR_SEISME dans les cas d’une excitation sismique mono appui et dans le cas multi-appuis (accélération identique puis différente sur chaque appui).
Calcul d’un second membre en mono-appui#
On considère la modélisation sismique poutre du bâtiment représenté dans le test SDLL109B, telle que présentée dans la documentation de l’opérateur POST_ELEM[U4.81.22].
On désire déterminer des efforts lors de la réponse dynamique transitoire de la structure à un séisme dans la direction \(X\) . Le calcul de réponse transitoire est ici effectué par recombinaison modale par DYNA_VIBRA[U4.53.03].
On calcule les modes de vibrations de la structure du modèle reposant sur un seul appui élastique (ressort de sol):
# --- recherche des modes propres de vibration -------------------------
MODES = CALC_MODES( MATR_RIGI = RIGIDITE,
MATR_MASS = MASSE,
OPTION = 'PLUS_PETITE',
CALC_FREQ =_F( NMAX_FREQ = 33 ),
)
On définit l’accélérogramme du séisme:
# --- excitation -------------------------------------------------------
LBNSNL1 = DEFI_FONCTION( NOM_RESU = 'ACCE', NOM_PARA = 'INST',
PROL_GAUCHE = 'EXCLU', PROL_DROIT = 'EXCLU',
VALE =(
0.00000E+00 9.98700E-02 1.00000E-02 6.60700E-02
2.00000E-02 -5.65000E-03 3.00000E-02 -9.46800E-02
1.19800E+01 1.68110E-01 1.19900E+01 8.80300E-02
1.20000E+01 0.00000E+00 9.98700E-02 0.00000E+00 )
) ;
ACCELERO = CALC_FONCTION( COMB =_F(FONCTION= LBNSNL1, COEF= 1.47 ) ) ;
On calcule le second membre (champ aux nœuds des forces d’inertie d’entraînement) et on définit la direction du séisme:
DIRSEISM = CALC_CHAR_SEISME ( MATR_MASS = MASSE,
MONO_APPUI = 'OUI',
DIRECTION = ( -1., 0., 0. ) ) ;
On procède au calcul de la réponse transitoire dans l’espace modal
# --- projection des matrices et vecteur assemblés sur les modes
PROJ_BASE( BASE=MODE,
NB_VECT=33,MATR_ASSE_GENE=(
_F(
MATRICE = CO("MASSGENE"),
MATR_ASSE = MASSE),
_F(
MATRICE = CO("RIGIGENE"),
MATR_ASSE = RIGIDITE)),
VECT_ASSE_GENE=_F(
VECTEUR = CO("VECTGENE"),
VECT_ASSE = SEISME)
);
# --- calcul par combinaison modale ------------------------------------
LISTAMOR=( 0.055, 0.055, 0.070, 0.070, 0.071, 0.072, 0.157, 0.085, 0.086,
0.070, 0.076, 0.074, 0.071, 0.072, 0.115, 0.073, 0.076, 0.086,
0.081, 0.070, 0.072, 0.075, 0.074, 0.070, 0.152, 0.148, 0.074,
0.297, 0.074, 0.075, 0.089, 0.138, 0.118, )
TRANGENE=DYNA_VIBRA(TYPE_CALCUL='TRAN',BASE_CALCUL='GENE',
MATR_MASS=MASSGENE, MATR_RIGI=RIGIGENE,
AMOR_MODAL=_F(AMOR_REDUIT=LISTAMOR,),
SCHEMA_TEMPS=_F(SCHEMA=METHODE,),
INCREMENT=_F(INST_INIT = 0., INST_FIN = 4.,
PAS = 0.002, VERI_PAS = 'NON'),
EXCIT=_F(VECT_ASSE_GENE = VECTGENE,
FONC_MULT = ACCELERO),)
On a utilisé ici l’accélérogramme du mouvement imposé.
On repasse dans l’espace physique:
# --- restitution en base physique -------------------------------------
LISTINST=DEFI_LIST_REEL( DEBUT=1.334,
INTERVALLE=_F( JUSQU_A = 3.154, NOMBRE = 1) )
TRANPHYS=REST_GENE_PHYS( RESU_GENE=TRANGENE,
CRITERE='RELATIF', PRECISION=1.E-06,
LIST_INST=LISTINST, TOUT_CHAM='OUI' )
Calcul d’un second membre en multi-appuis#
L’exemple qui suit montre le calcul des seconds membres de forces d’inertie d’entraînement lorsque les signaux sismiques sont différents sur les appuis.
On considère la modélisation en éléments de poutre de la ligne de tuyauterie suivante sur laquelle un séisme est appliqué dans la direction \(X\) :
On calcule les modes statiques linéaires unitaires pour chaque degré de liberté des supports bloqués dans la direction \(X\) , pour exprimer ensuite le vecteur des forces d’inertie d’entraînement comme une combinaison linéaire de ceux-ci:
MODST = MODE_STATIQUE ( MATR_RIGI = RG,
MATR_MASS = MS,
MODE_STAT =_F( GROUP_NO =
('GP1','GP2','GP3'), )
( AVEC_CMP = 'DX'),) ) ;
On doit calculer trois seconds membres différents (champ aux nœuds des forces d’inertie d’entraînement) pour chaque groupe de nœuds soumis au même signal sismique:
SMP1 = CALC_CHAR_SEISME ( MATR_MASS = MS,
DIRECTION =( 1., 0., 0.),
MODE_STAT = MODST,
GROUP_NO = 'GP1' ) ;
SMP2 = CALC_CHAR_SEISME ( MATR_MASS = MS,
DIRECTION =( 1., 0., 0.),
MODE_STAT = MODST,
GROUP_NO = 'GP2' ) ;
SMP3 = CALC_CHAR_SEISME ( MATR_MASS = MS,
DIRECTION =( 1., 0., 0.),
MODE_STAT = MODST,
GROUP_NO = 'GP3' ) ;
Conformément à ce qui est expliqué dans le document de référence [R4.05.01] l’opérateur CALC_CHAR_SEISME calcule l’expression suivante:
\(-M.{\Psi}_{Pj,X}.s\)
avec \(s=(1,0,0)\) , la direction du séisme, spécifiée par l’opérande DIRECTION, et \({\Psi}_{Pj,X}\) les modes statiques linéaires unitaires, spécifiés par l’opérande MODE_STAT, calculés pour chaque degré de liberté des supports bloqués dans la direction \(X\) .
Calcul de la réponse transitoire (ici sans amortissement) avec le cumul de la contribution des trois signaux sismiques différents ACCELP1, ACCELP2 et ACCELP3:
TRANGENE = DYNA_VIBRA ( TYPE_CALCUL='TRAN', BASE_CALCUL='PHYS',
MATR_MASS = MS, MATR_RIGI = RG,
SCHEMA_TEMPS=_F(SCHEMA='NEWMARK',),
INCREMENT=_F(LIST_INST=LI),
EXCIT =(
_F(VECT_ASSE = SMP1, FONC_MULT = ACCELP1),
_F(VECT_ASSE = SMP2, FONC_MULT = ACCELP2),
_F(VECT_ASSE = SMP3, FONC_MULT = ACCELP3),
)
) ;
On pourra trouver d’autres exemples de structures multi-supportées soumises à des sollicitations sismiques en consultant les tests SDLD103 et SDND102.