Salome HOME
commentaire
[tools/eficas.git] / Editeur / Patrons / ASTER / AnalyseModale.salome.comm
1 DEBUT();
2
3 # 1 - MISE EN DONNEES :
4 # LECTURE DU MAILLAGE MED
5
6 MAIL=LIRE_MAILLAGE(UNITE=21,
7                    FORMAT='MED',);
8 #
9 # DEFINITION DES ELEMENTS FINIS UTILISES
10
11 MODELE=AFFE_MODELE(MAILLAGE=MAIL,
12                    AFFE=_F(TOUT='OUI',
13                            PHENOMENE='MECANIQUE',
14                            MODELISATION='3D',),);
15 #
16 # DEFINITION DU MATERIAU UTILISE
17
18 ACIER=DEFI_MATERIAU(ELAS=_F(E=2.1E11,
19                             NU=0.3,
20                             RHO=7800.0,),);
21
22 CHMAT=AFFE_MATERIAU(MAILLAGE=MAIL,
23                     AFFE=_F(TOUT='OUI',
24                             MATER=ACIER,),);
25                             
26 #
27 # DEFINITION DES CONDITIONS AUX LIMITES 
28
29 BLOQUAGE=AFFE_CHAR_MECA(MODELE=MODELE,
30                         DDL_IMPO=_F(GROUP_MA='ABB1A1',
31                                     DX=0.0,
32                                     DY=0.0,
33                                     DZ=0.0,),);
34                                     
35 # 2 - CALCUL DES CINQ PREMIERS MODES PROPRES
36 #
37 # CALCUL DES MATRICES ASSEMBLEES K ET M
38
39 MACRO_MATR_ASSE(MODELE=MODELE,
40                 CHAM_MATER=CHMAT,
41                 CHARGE=BLOQUAGE,
42                 NUME_DDL=CO('NUMEDDL'),
43                 MATR_ASSE=(_F(MATRICE=CO('RIGIDITE'),
44                               OPTION='RIGI_MECA',),
45                            _F(MATRICE=CO('MASSE'),
46                               OPTION='MASS_MECA',),),);
47 #
48
49 MODES=MODE_ITER_SIMULT(MATR_A=RIGIDITE,
50                        MATR_B=MASSE,
51                        CALC_FREQ=_F(
52                        OPTION='PLUS_PETITE',
53                        NMAX_FREQ=5,),);
54 #
55 # ECRITURE DES MODES AU FORMAT MED
56
57 IMPR_RESU(MODELE=MODELE,
58           FORMAT='MED',
59           RESU=_F(MAILLAGE=MAIL,
60                   RESULTAT=MODES,
61                   NOM_CHAM='DEPL',),);
62
63 FIN();
64 #