Salome HOME
PN
[tools/eficas.git] / Editeur / Patrons / tradir_3D.comm
1
2 # PATRON
3 # ANALYSE MODALE
4 # 3D
5
6 DEBUT();
7 # MISE EN DONNEES
8
9 MAIL=LIRE_MAILLAGE();
10
11 MODELE=AFFE_MODELE(MAILLAGE=MAIL,
12                    AFFE=_F(GROUP_MA='OBJET',
13                            PHENOMENE='MECANIQUE',
14                            MODELISATION='3D',),);
15 # MATERIAU
16
17 ACIER=DEFI_MATERIAU(ELAS=_F(E=2.1E11,
18                             NU=0.3,
19                             RHO=7800.0,),);
20
21 CHMAT=AFFE_MATERIAU(MAILLAGE=MAIL,
22                     AFFE=_F(GROUP_MA='OBJET',
23                             MATER=ACIER,),);
24 # CONDITIONS AUX LIMITES ET CHARGEMENT
25 # CONDITIONS AUX LIMITES 
26
27 BLOQUAGE=AFFE_CHAR_MECA(MODELE=MODELE,
28                         DDL_IMPO=_F(GROUP_MA='ENCAST',
29                                     LIAISON='ENCASTRE',),);
30 # CALCUL DES MATRICES ASSEMBLEES K ET M
31
32 MACRO_MATR_ASSE(MODELE=MODELE,
33                 CHAM_MATER=CHMAT,
34                 CHARGE=BLOQUAGE,
35                 NUME_DDL=CO('NUMEDDL'),
36                 MATR_ASSE=(_F(MATRICE=CO('RIGIDITE'),
37                               OPTION='RIGI_MECA',),
38                            _F(MATRICE=CO('MASSE'),
39                               OPTION='MASS_MECA',),),);
40 # CALCUL DES CINQ PREMIERS MODES
41
42 MODES=MODE_ITER_SIMULT(MATR_A=RIGIDITE,
43                        MATR_B=MASSE,
44                        CALC_FREQ=_F(
45                        OPTION='PLUS_PETITE',
46                        NMAX_FREQ=5,),);
47 #CHARGEMENT
48
49 EXCIT=AFFE_CHAR_MECA(MODELE=MODELE,
50                      PRES_REP=_F(GROUP_MA='PRESSE',
51                                  PRES=100.e5,),);
52
53 EXCEL=CALC_VECT_ELEM(OPTION='CHAR_MECA',
54                      CHARGE=EXCIT,);
55
56 EXCASS=ASSE_VECTEUR(VECT_ELEM=EXCEL,
57                     NUME_DDL=NUMEDDL,);
58 OMEGA = 10.0;
59
60
61 SINU = FORMULE(VALE='sin(OMEGA*INST)',
62                NOM_PARA='INST',);
63 #CALCUL TRANSITOIRE
64
65 TRADIR=DYNA_LINE_TRAN(MATR_MASS=MASSE,
66                       MATR_RIGI=RIGIDITE,
67                       NEWMARK=_F(),
68                       EXCIT=_F(VECT_ASSE=EXCASS,),
69                       INCREMENT=_F(PAS=.01,
70                                    INST_FIN=10.,),);
71
72 FIN();