Salome HOME
Merge branch 'master' into V9_merge
[tools/eficas.git] / Tests / testcomm7 / efica01a.comm
1 # MODIF  DATE 20/09/2004   AUTEUR DURAND C.DURAND 
2 # TITRE TEST DE NON REGRESSION DE L IHM EFICAS - DERIVE DE SDND102A
3 #            CONFIGURATION MANAGEMENT OF EDF VERSION
4 # ======================================================================
5 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
6 # THIS PROGRAM IS FREE SOFTWARE YOU CAN REDISTRIBUTE IT AND/OR MODIFY
7 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
8 # THE FREE SOFTWARE FOUNDATION EITHER VERSION 2 OF THE LICENSE, OR   
9 # (AT YOUR OPTION) ANY LATER VERSION.                                 
10 #
11 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
12 # WITHOUT ANY WARRANTY WITHOUT EVEN THE IMPLIED WARRANTY OF          
13 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
14 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
15 #
16 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
17 # ALONG WITH THIS PROGRAM IF NOT, WRITE TO EDF R&D CODE_ASTER,       
18 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
19 # ======================================================================
20 # Ce cas test est gere en configuration dans la base ASTER, il sert de
21 # modele pour prononcer la recette de l IHM d EFICAS : l objectif est de
22 # pouvoir recreer ce test a l identique dans EFICAS a partir d une page
23 # blanche.
24 # On a donc essaye d y placer toutes les commandes un peu particulieres
25 # du langage de commandes d ASTER
26 #
27 # Il s agit en fait du test SDND102A auquel on a ajoute :
28 #      la definition d un parametre (VAL)
29 #      l inclusion d un fichier (INCLUDE)
30 #      une poursuite (POURSUITE)
31 # Il contient ainsi :
32 # des parametres, des formules, des macros, des mots cles facteurs repetes
33 # (y compris conditionnes par des regles : calc_fonction / COMB),
34 # des blocs  (mode_iter_simult,calc_char_seisme), un defi_valeur, un parametre.
35 #
36 #
37 # Il faudra y associer quelques recommandations pour la recette :
38 # - verifier qu en ouvrant le .com0, il demande bien a browser le .comm puis, en cascade, le .11
39 # - verifier qu on peut bien supprimer une commande, un mot cle simple et facteur
40 # - verifier les acces a la doc
41 #
42 #
43
44
45 DEBUT(CODE=_F(NOM='EFICA01A',NIV_PUB_WEB='INTERNET',VISU_EFICAS='NON'),)
46
47 MAILLAGE=LIRE_MAILLAGE()
48
49 MAILLAGE=DEFI_GROUP(reuse=MAILLAGE,
50                     MAILLAGE=MAILLAGE,
51                     CREA_GROUP_NO=(_F(NOEUD='NO2',
52                                       NOM='MASSES',),
53                                    _F(NOEUD='NO1',
54                                       NOM='ENCASTRE',),),)
55
56 MAILLA2=LIRE_MAILLAGE(UNITE=21,)
57
58 MODELE=AFFE_MODELE(MAILLAGE=MAILLAGE,
59                    AFFE=(_F(GROUP_MA='RESSORT',
60                             PHENOMENE='MECANIQUE',
61                             MODELISATION='DIS_T',),
62                          _F(GROUP_NO='MASSES',
63                             PHENOMENE='MECANIQUE',
64                             MODELISATION='DIS_T',),),)
65
66 BICHOC=AFFE_MODELE(MAILLAGE=MAILLA2,
67                    AFFE=(_F(GROUP_MA='RESSORTS',
68                             PHENOMENE='MECANIQUE',
69                             MODELISATION='DIS_T',),
70                          _F(GROUP_NO=('MASSES1','MASSES2',),
71                             PHENOMENE='MECANIQUE',
72                             MODELISATION='DIS_T',),),)
73 VAL = 98696.0
74
75
76 CARA_ELE=AFFE_CARA_ELEM(MODELE=MODELE,
77                         DISCRET=(_F(GROUP_MA='RESSORT',
78                                     REPERE='GLOBAL',
79                                     CARA='K_T_D_L',
80                                     VALE=(VAL,0.0,0.0,),),
81                                  _F(GROUP_NO='MASSES',
82                                     CARA='M_T_D_N',
83                                     VALE=25.0,),),)
84
85 CARA_BIC=AFFE_CARA_ELEM(MODELE=BICHOC,
86                         DISCRET=(_F(GROUP_MA='RESSORTS',
87                                     REPERE='GLOBAL',
88                                     CARA='K_T_D_L',
89                                     VALE=(VAL,0.0,0.0,),),
90                                  _F(GROUP_NO='MASSES1',
91                                     CARA='M_T_D_N',
92                                     VALE=25.0,),
93                                  _F(GROUP_NO='MASSES2',
94                                     CARA='M_T_D_N',
95                                     VALE=25.0,),),)
96
97 CON_LIM=AFFE_CHAR_MECA(MODELE=MODELE,
98                        DDL_IMPO=(_F(GROUP_NO='ENCASTRE',
99                                     DX=0.0,
100                                     DY=0.0,
101                                     DZ=0.0,),
102                                  _F(GROUP_NO='MASSES',
103                                     DY=0.0,
104                                     DZ=0.0,),),)
105
106 CL_BICHO=AFFE_CHAR_MECA(MODELE=BICHOC,
107                         DDL_IMPO=(_F(GROUP_NO='ENCBICHO',
108                                      DX=0.0,
109                                      DY=0.0,
110                                      DZ=0.0,),
111                                   _F(GROUP_NO=('MASSES1','MASSES2',),
112                                      DY=0.0,
113                                      DZ=0.0,),),)
114
115 MACRO_MATR_ASSE(MODELE=MODELE,
116                 CARA_ELEM=CARA_ELE,
117                 CHARGE=CON_LIM,
118                 NUME_DDL=CO('NUMEDDL'),
119                 MATR_ASSE=(_F(MATRICE=CO('RIGIDITE'),
120                               OPTION='RIGI_MECA',),
121                            _F(MATRICE=CO('MASSE'),
122                               OPTION='MASS_MECA',),),)
123
124 MACRO_MATR_ASSE(MODELE=BICHOC,
125                 CARA_ELEM=CARA_BIC,
126                 CHARGE=CL_BICHO,
127                 NUME_DDL=CO('NUMDDLC'),
128                 MATR_ASSE=(_F(MATRICE=CO('RIGI_BIC'),
129                               OPTION='RIGI_MECA',),
130                            _F(MATRICE=CO('MASS_BIC'),
131                               OPTION='MASS_MECA',),),)
132
133 MODE_MEC=MODE_ITER_SIMULT(MATR_A=RIGIDITE,
134                           MATR_B=MASSE,)
135
136 MODE_MEC=NORM_MODE(reuse =MODE_MEC,
137                    MODE=MODE_MEC,
138                    NORME='MASS_GENE',)
139
140 MODE_BIC=MODE_ITER_SIMULT(MATR_A=RIGI_BIC,
141                           MATR_B=MASS_BIC,
142                           METHODE='JACOBI',
143                           OPTION='SANS',
144                           CALC_FREQ=_F(OPTION='BANDE',
145                                        FREQ=(1.0,10.0,),),)
146
147 MODE_BIC=NORM_MODE(reuse =MODE_BIC,
148                    MODE=MODE_BIC,
149                    NORME='MASS_GENE',)
150
151 MODE_STA=MODE_STATIQUE(MATR_RIGI=RIGIDITE,
152                        MATR_MASS=MASSE,
153                        MODE_STAT=_F(TOUT='OUI',
154                                     AVEC_CMP='DX',),)
155
156 MSTA_BIC=MODE_STATIQUE(MATR_RIGI=RIGI_BIC,
157                        MATR_MASS=MASS_BIC,
158                        MODE_STAT=_F(TOUT='OUI',
159                                     AVEC_CMP='DX',),)
160
161 L_INST=DEFI_LIST_REEL(DEBUT=0.0,
162                       INTERVALLE=_F(JUSQU_A=1.0,
163                                     PAS=1.E-4,),)
164
165 OMEGAA=2.*pi*10.
166
167 ACCE1 = FORMULE(VALE = 'sin(OMEGAA*INST)',
168                 NOM_PARA='INST')
169
170 ACCELER1=CALC_FONC_INTERP(FONCTION=ACCE1,
171                           NOM_RESU='ACCE',
172                           LIST_PARA=L_INST,
173                           NOM_PARA = 'INST',
174                           PROL_DROITE='LINEAIRE',
175                           PROL_GAUCHE='LINEAIRE',)
176
177 ACCE2 = FORMULE(VALE = '-sin(OMEGAA*INST)',
178                 NOM_PARA='INST')
179
180 ACCELER2=CALC_FONC_INTERP(FONCTION=ACCE2,
181                           NOM_RESU='ACCE',
182                           LIST_PARA=L_INST,
183                           NOM_PARA = 'INST',
184                           PROL_DROITE='LINEAIRE',
185                           PROL_GAUCHE='LINEAIRE',)
186
187 VITE1 = FORMULE(VALE = '-cos(OMEGAA*INST)/OMEGAA',
188                 NOM_PARA='INST')
189
190 VITESSE1=CALC_FONC_INTERP(FONCTION=VITE1,
191                           NOM_RESU='VITE',
192                           LIST_PARA=L_INST,
193                           NOM_PARA = 'INST',
194                           PROL_DROITE='LINEAIRE',
195                           PROL_GAUCHE='LINEAIRE',)
196
197 DEPL1 = FORMULE(VALE = '-sin(OMEGAA*INST)/(OMEGAA**2)',
198                 NOM_PARA='INST')
199
200 DEPLACE1=CALC_FONC_INTERP(FONCTION=DEPL1,
201                           NOM_RESU='DEPL',
202                           LIST_PARA=L_INST,
203                           NOM_PARA = 'INST',
204                           PROL_DROITE='LINEAIRE',
205                           PROL_GAUCHE='LINEAIRE',)
206
207 VITE2 = FORMULE(VALE = 'cos(OMEGAA*INST)/OMEGAA',
208                 NOM_PARA='INST')
209
210 VITESSE2=CALC_FONC_INTERP(FONCTION=VITE2,
211                           NOM_RESU='VITE',
212                           LIST_PARA=L_INST,
213                           NOM_PARA = 'INST',
214                           PROL_DROITE='LINEAIRE',
215                           PROL_GAUCHE='LINEAIRE',)
216
217 xx=2
218
219 INCLUDE(UNITE=11,
220         INFO=1,)
221
222 MUR=DEFI_OBSTACLE(TYPE='PLAN_Z',)
223
224 TRAN_GE1=DYNA_TRAN_MODAL(METHODE='EULER',
225                          MASS_GENE=MASS_GEN,
226                          RIGI_GENE=RIGI_GEN,
227                          AMOR_REDUIT=0.07,
228                          MODE_STAT=MODE_STA,
229                          INCREMENT=_F(INST_INIT=0.0,
230                                       INST_FIN=1.0,
231                                       PAS=2.0E-4,),
232                          ARCHIVAGE=_F(PAS_ARCH=8,),
233                          EXCIT=_F(VECT_GENE=VECT_X,
234                                   ACCE=ACCELER1,
235                                   VITE=VITESSE1,
236                                   DEPL=DEPLACE1,
237                                   MULT_APPUI='OUI',
238                                   DIRECTION=(1.0,0.0,0.0,),
239                                   NOEUD='NO1',),
240                          CHOC=_F(INTITULE='NO2/MUR',
241                                  GROUP_NO_1='MASSES',
242                                  OBSTACLE=MUR,
243                                  ORIG_OBST=(-1.0,0.0,0.0,),
244                                  NORM_OBST=(0.0,0.0,1.0,),
245                                  JEU=1.1005,
246                                  RIGI_NOR=5.76E7,
247                                  AMOR_NOR=0.0,
248                                  RIGI_TAN=0.0,
249                                  COULOMB=0.0,),)
250
251 MULT_X1=CALC_CHAR_SEISME(MATR_MASS=MASS_BIC,
252                          DIRECTION=(1.0,0.0,0.0,),
253                          MODE_STAT=MSTA_BIC,
254                          NOEUD='NO1',)
255
256 MULT_X2=CALC_CHAR_SEISME(MATR_MASS=MASS_BIC,
257                          DIRECTION=(1.0,0.0,0.0,),
258                          MODE_STAT=MSTA_BIC,
259                          NOEUD='NO11',)
260
261 MACRO_PROJ_BASE(BASE=MODE_BIC,
262                 MATR_ASSE_GENE=(_F(MATRICE=CO('MGEN_BIC'),
263                                    MATR_ASSE=MASS_BIC,),
264                                 _F(MATRICE=CO('RGEN_BIC'),
265                                    MATR_ASSE=RIGI_BIC,),),
266                 VECT_ASSE_GENE=(_F(VECTEUR=CO('VECT_X1'),
267                                    VECT_ASSE=MULT_X1,),
268                                 _F(VECTEUR=CO('VECT_X2'),
269                                    VECT_ASSE=MULT_X2,),),)
270
271 GRILLE=DEFI_OBSTACLE(TYPE='BI_PLAN_Z',)
272
273 MAILLA3=LIRE_MAILLAGE(UNITE=22,)
274
275 FIN()