]> SALOME platform Git repositories - tools/eficas.git/blob - Aster/Cata/cataSTA5/cata.py
Salome HOME
Modif V6_4_°
[tools/eficas.git] / Aster / Cata / cataSTA5 / cata.py
1 # -*- coding: utf-8 -*-
2 #& MODIF COMMANDE  DATE 10/07/2001   AUTEUR ACBHHCD G.DEVESA 
3 #               CONFIGURATION MANAGEMENT OF EDF VERSION
4 # ======================================================================
5 # COPYRIGHT (C) 1991 - 2001  EDF R&D                    WWW.CODE-ASTER.ORG
6 #               SEE THE FILE "LICENSE.TERMS" FOR INFORMATION ON USAGE AND
7 #               REDISTRIBUTION OF THIS FILE.
8 # ======================================================================
9
10 import Accas
11 from Accas import *
12 from Accas import _F
13
14 import ops
15
16 try:
17   import aster
18 except:
19   pass
20
21 #
22 JdC = JDC_CATA(code='ASTER',
23                execmodul=None,
24                regles = (AU_MOINS_UN('DEBUT','POURSUITE'),
25                          AU_MOINS_UN('FIN'),
26                          A_CLASSER(('DEBUT','POURSUITE'),'FIN')),
27               )
28
29 # Type le plus general
30 class entier(ASSD):pass
31 class reel(ASSD):pass
32 class complexe(ASSD):pass
33 class liste(ASSD):pass
34 class chaine(ASSD):pass
35
36 # Type generaux
37 class no(GEOM):pass
38 class grno(GEOM):pass
39 class ma(GEOM):pass
40 class grma(GEOM):pass
41
42 class table(ASSD):
43   def __getitem__(self,key):
44     return aster.getpara(self.get_name(),"TABLE",key[0],key[1])
45
46 class resultat(ASSD):
47   def __getitem__(self,key):
48     return aster.getpara(self.get_name(),"RESULTAT",key[0],key[1])
49
50 # Autres
51 class affe_carte(ASSD):pass
52 class affe_cham_no(ASSD):pass
53 class affe_char_cine(ASSD):pass
54 class affe_char_cine_f(ASSD):pass
55 class asse_matrice(ASSD):pass
56 class asse_vecteur(ASSD):pass
57 class base_modale(ASSD):pass
58 class cabl_precont(ASSD):pass
59 class calc_cham_elem(ASSD):pass
60 class calc_char_cine(ASSD):pass
61 class calc_char_seisme(ASSD):pass
62
63 class calc_elem(resultat):pass
64
65 class calc_matr_elem(ASSD):pass
66
67 class calc_no(resultat):pass
68
69 class calc_vect_elem(ASSD):pass
70 class cara_elem(ASSD):pass
71 class cara_pout(ASSD):pass
72
73 class carte(ASSD):pass
74 class carte_depl_r(carte):pass
75 class carte_epsi_r(carte):pass
76 class carte_flux_r(carte):pass
77 class carte_geom_r(carte):pass
78 class carte_inst_r(carte):pass
79 class carte_meta_r(carte):pass
80 class carte_neut_f(carte):pass
81 class carte_neut_r(carte):pass
82 class carte_sief_r(carte):pass
83 class carte_temp_f(carte):pass
84 class carte_temp_r(carte):pass
85 class carte_var2_r(carte):pass
86 # ajout JMP 2908
87 class cham_gd(ASSD):pass
88 #class cham_elem(ASSD):pass
89 class cham_elem(cham_gd):pass
90 class cham_elem_crit_r(cham_elem):pass
91 class cham_elem_dbel_r(cham_elem):pass
92 class cham_elem_dommag(cham_elem):pass
93 class cham_elem_ener_r(cham_elem):pass
94 class cham_elem_epsi_c(cham_elem):pass
95 class cham_elem_epsi_r(cham_elem):pass
96 class cham_elem_erreur(cham_elem):pass
97 class cham_elem_flux_r(cham_elem):pass
98 class cham_elem_geom_r(cham_elem):pass
99 class cham_elem_hydr_r(cham_elem):pass
100 class cham_elem_meta_r(cham_elem):pass
101 class cham_elem_neut_r(cham_elem):pass
102 class cham_elem_neut_f(cham_elem):pass
103 class cham_elem_pres_r(cham_elem):pass
104 class cham_elem_sief_c(cham_elem):pass
105 class cham_elem_depl_r(cham_elem):pass
106 class cham_elem_temp_r(cham_elem):pass
107 class cham_elem_sief_r(cham_elem):pass
108 class cham_elem_sour_r(cham_elem):pass
109 class cham_elem_vari_r(cham_elem):pass
110
111 #class cham_gd(ASSD):pass
112 class cham_mater(ASSD):pass
113
114 #class cham_no(ASSD):pass
115 class cham_no(cham_gd):pass
116 class cham_no_depl_c(cham_no):pass
117 class cham_no_depl_f(cham_no):pass
118 class cham_no_depl_r(cham_no):pass
119 class cham_no_epsi_r(cham_no):pass
120 class cham_no_flux_r(cham_no):pass
121 class cham_no_geom_r(cham_no):pass
122 class cham_no_inst_r(cham_no):pass
123 class cham_no_meta_r(cham_no):pass
124 class cham_no_pres_c(cham_no):pass
125 class cham_no_pres_r(cham_no):pass
126 class cham_no_sief_r(cham_no):pass
127 class cham_no_neut_r(cham_no):pass
128 class cham_no_neut_f(cham_no):pass
129 class cham_no_temp_c(cham_no):pass
130 class cham_no_temp_f(cham_no):pass
131 class cham_no_temp_r(cham_no):pass
132 class cham_no_vanl_r(cham_no):pass
133 class cham_no_var2_r(cham_no):pass
134
135 class char_acou(ASSD):pass
136 class char_cine_acou(ASSD):pass
137 class char_cine_meca(ASSD):pass
138 class char_cine_ther(ASSD):pass
139 class char_meca(ASSD):pass
140 class char_ther(ASSD):pass
141 class comb_cham_elem(ASSD):pass
142 class comb_cham_no(ASSD):pass
143 class comb_fourier(resultat):pass
144 class comb_matr_asse(ASSD):pass
145 class courbe(ASSD):pass
146 class crea_resu(ASSD):pass
147 class acou_harmo(resultat):pass
148 class dyna_harmo(resultat):pass
149 class dyna_line_harm(resultat):pass
150 class dyna_trans(resultat):pass
151
152 class evol(resultat):pass
153
154 class evol_char(evol):pass
155 class evol_elas(evol):pass
156 class evol_noli(evol):pass
157 class evol_ther(evol):pass
158
159 class extr_mode(ASSD):pass
160 class extr_resu(ASSD):pass
161 class fact_grad(ASSD):pass
162 class fact_ldlt(ASSD):pass
163 class fonction_c(fonction):pass
164 class fond_fiss(ASSD):pass
165 class fourier_elas(resultat):pass
166 class harm_gene(resultat):pass
167 class interf_dyna_clas(ASSD):pass
168 class interspfact(ASSD):pass
169 class lire_miss_3d(ASSD):pass
170 class lire_resu(ASSD):pass
171 class listis(ASSD):pass
172 class listr8(ASSD):pass
173 class macr_elem_dyna(ASSD):pass
174 class macr_elem_stat(ASSD):pass
175 class macro_elas_mult(ASSD):pass
176 class maillage(ASSD):pass
177 class mater(ASSD):pass
178
179 class matr_asse(ASSD):pass
180 class matr_asse_depl_c(matr_asse):pass
181 class matr_asse_depl_r(matr_asse):pass
182 class matr_asse_gene_c(matr_asse):pass
183 class matr_asse_gene_r(matr_asse):pass
184 class matr_asse_pres_c(matr_asse):pass
185 class matr_asse_pres_r(matr_asse):pass
186 class matr_asse_temp_c(matr_asse):pass
187 class matr_asse_temp_r(matr_asse):pass
188
189 class matr_elem(ASSD):pass
190 class matr_elem_depl_c(matr_elem):pass
191 class matr_elem_depl_r(matr_elem):pass
192 class matr_elem_pres_c(matr_elem):pass
193 class matr_elem_temp_r(matr_elem):pass
194
195 class melasflu(ASSD):pass
196
197 class mode_acou(resultat):pass
198 class mode_cycl(resultat):pass
199 class mode_flamb(resultat):pass
200 class mode_gene(resultat):pass
201 class mode_iter_inv(resultat):pass
202 class mode_meca(resultat):pass
203 class mode_meca_c(mode_meca):pass
204 class mode_stat(resultat):pass
205
206 class modele(ASSD):pass
207 class modele_gene(ASSD):pass
208 class mult_elas(resultat):pass
209 class norm_mode(ASSD):pass
210 class nume_ddl(ASSD):pass
211 class nume_ddl_gene(ASSD):pass
212 class obstacle(ASSD):pass
213 class post_elem(ASSD):pass
214 class prod_matr_cham(ASSD):pass
215 class proj_champ(ASSD):pass
216 class recu_champ(ASSD):pass
217 class reso_grad(ASSD):pass
218 class reso_ldlt(ASSD):pass
219 class rest_base_phys(ASSD):pass
220 class spectre(ASSD):pass
221 class squelette(maillage):pass
222 class surface(ASSD):pass
223
224 class tabl_aire_int(table):pass
225 class tabl_calc_g_loca(table):pass
226 class tabl_calc_g_th(table):pass
227 class tabl_cara_geom(table):pass
228 class tabl_char_limite(table):pass
229 class tabl_ener_elas(table):pass
230 class tabl_ener_pot(table):pass
231 class tabl_ener_cin(table):pass
232 class tabl_ener_totale(table):pass
233 class tabl_fonc(table):pass
234 class tabl_fonc_max(tabl_fonc):pass
235 class tabl_fonc_rms(tabl_fonc):pass
236 class tabl_indic_ener(table):pass
237 class tabl_indic_seuil(table):pass
238 class tabl_intsp(table):pass
239 class tabl_mass_iner(table):pass
240 class tabl_post_alea(table):pass
241 class tabl_post_dyna(table):pass
242 class tabl_post_f_alea(table):pass
243 class tabl_post_fatig(table):pass
244 class tabl_post_gouj2e(table):pass
245 class tabl_post_k(table):pass
246 class tabl_post_rccm(table):pass
247 class tabl_post_rele(table):pass
248 class tabl_post_simpli(table):pass
249 class tabl_post_usur(table):pass
250 class tabl_reca_weib(table):pass
251 class tabl_rice_tracey(table):pass
252 class tabl_texture(table):pass
253 class tabl_trc(table):pass
254 class tabl_weibull(table):pass
255
256 class theta_geom(ASSD):pass
257 class tran_gene(ASSD):pass
258 class type_flui_stru(ASSD):pass
259 class valeur(ASSD):pass
260 class vect_asse(ASSD):pass
261 class vect_asse_gene(vect_asse):pass
262 class vect_elem(ASSD):pass
263 class vect_elem_depl_r(vect_elem):pass
264 class vect_elem_pres_c(vect_elem):pass
265 class vect_elem_pres_r(vect_elem):pass
266 class vect_elem_temp_r(vect_elem):pass
267
268 #& MODIF COMMANDE  DATE 11/09/2000   AUTEUR JMBHH01 J.M.PROIX 
269 AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op=  19,sd_prod=cara_elem,
270                     fr="Affectation de caractéristiques à des éléments de structure (barre, cable, poutre, tuyau, plaque, coque, discret)",
271                     docu="U4.42.01-F",reentrant='n',
272          regles=(AU_MOINS_UN('POUTRE','COQUE','DISCRET','CABLE','BARRE','MASSIF','ASSE_GRIL','GRILLE'),),
273          MODELE          =SIMP(statut='o',typ=modele ),
274          INFO            =SIMP(statut='f',typ='I', defaut= 1 ,into=(1,2) ),
275          VERIF           =SIMP(statut='f',typ='TXM',max='**',into=("MAILLE","NOEUD") ),
276          POUTRE          =FACT(statut='f',min=01,max='**',
277            regles=(UN_PARMI('MAILLE','GROUP_MA'),),
278            MAILLE          =SIMP(statut='f',typ=ma,max='**'), 
279            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'), 
280            SECTION         =SIMP(statut='f',typ='TXM' ,into=("GENERALE","RECTANGLE","CERCLE") ),
281            CARA_SECT       =SIMP(statut='f',typ=(cara_pout) ),
282            b_generale      =BLOC( condition = "SECTION=='GENERALE'",
283              CARA            =SIMP(statut='f',typ='TXM',max='**',
284                                  into=("A","IY","IZ","AY","AZ","EY","EZ","JX","RY","RZ","RT",
285                                                            "AI","JG","IYR2","IZR2","A1",
286                                        "IY1","IZ1","AY1","AZ1","EY1","EZ1","JX1","RY1",
287                                        "RZ1","RT1","AI1","JG1","IYR21","IZR21","A2",
288                                        "IY2","IZ2","AY2","AZ2","EY2","EZ2","JX2","RY2",
289                                        "RZ2","RT2","AI2","JG2","IYR22","IZR22","H",
290                                        "HZ","HY","EP","EPY","EPZ","H1","HZ1","HY1",
291                                        "EP1","EPY1","EPZ1","H2","HZ2","HY2","EP2",
292                                        "EPY2","EPZ2","R","R1","R2") ),
293              VALE            =SIMP(statut='o',typ='R',max='**'),
294              VARI_SECT       =SIMP(statut='f',typ='TXM',into=("HOMOTHETIQUE",) ),
295            ),
296            b_rectangle     =BLOC( condition = "SECTION=='RECTANGLE'",
297              CARA            =SIMP(statut='f',typ='TXM',max='**',
298                                  into=("H","EP","HY","HZ","EPY","EPZ",
299                                                            "H1","HZ1","HY1","EP1","EPY1","EPZ1",
300                                                            "H2","HZ2","HY2","EP2","EPY2","EPZ2") ),
301              VALE            =SIMP(statut='o',typ='R',max='**'),
302              VARI_SECT       =SIMP(statut='f',typ='TXM',into=("HOMOTHETIQUE","AFFINE"),defaut="HOMOTHETIQUE"),
303            ),
304            b_cercle        =BLOC( condition = "SECTION=='CERCLE'",
305              CARA            =SIMP(statut='f',typ='TXM',max='**',
306                                  into=("R","EP","R1","R2","EP1","EP2") ),
307              VALE            =SIMP(statut='o',typ='R',max='**'),
308              VARI_SECT       =SIMP(statut='f',typ='TXM',into=("HOMOTHETIQUE",) ),
309              MODI_METRIQUE   =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
310            ),
311          ),  
312          BARRE           =FACT(statut='f',min=01,max='**',
313            regles=(UN_PARMI('MAILLE','GROUP_MA'),),
314            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
315            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
316            SECTION         =SIMP(statut='o',typ='TXM',into=("GENERALE","RECTANGLE","CERCLE") ),
317            b_generale      =BLOC( condition = "SECTION=='GENERALE'",
318              CARA            =SIMP(statut='f',typ='TXM',into=("A",) ),
319              VALE            =SIMP(statut='o',typ='R' ),
320            ),
321            b_rectangle     =BLOC( condition = "SECTION=='RECTANGLE'",
322              CARA            =SIMP(statut='f',typ='TXM',into=("H","HZ","HY","EPY","EPZ","EP"),max=6 ),
323              VALE            =SIMP(statut='o',typ='R',max=6 ),
324            ),
325            b_cercle        =BLOC( condition = "SECTION=='CERCLE'",
326              CARA            =SIMP(statut='o',typ='TXM',max=2,into=("R","EP") ),
327              VALE            =SIMP(statut='o',typ='R',max=2 ),
328            ),  
329          ), 
330          COQUE           =FACT(statut='f',min=01,max='**',
331            regles=(UN_PARMI('MAILLE','GROUP_MA' ),
332                    PRESENT_PRESENT( 'EXCENTREMENT','INER_ROTA' ),),
333            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
334            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
335            EPAIS           =SIMP(statut='f',typ='R' ),
336            ANGL_REP        =SIMP(statut='f',typ='R',min=2,max=2),
337            A_CIS           =SIMP(statut='f',typ='R',defaut= 0.8333333),
338            COEF_RIGI_DRZ   =SIMP(statut='f',typ='R',defaut= 1.0E-5 ),
339            EXCENTREMENT    =SIMP(statut='f',typ='R' ),
340            INER_ROTA       =SIMP(statut='f',typ='TXM',into=("OUI",) ),
341            MODI_METRIQUE   =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
342          ),
343          CABLE           =FACT(statut='f',min=01,max='**',
344            regles=(UN_PARMI('MAILLE','GROUP_MA'),
345                    UN_PARMI('A','SECTION') ),
346            MAILLE          =SIMP(statut='f',typ=ma,max='**'), 
347            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'), 
348            N_INIT          =SIMP(statut='f',typ='R',defaut= 5000. ),
349            A               =SIMP(statut='f',typ='R' ),
350            SECTION         =SIMP(statut='f',typ='R' ),
351          ),
352          DISCRET         =FACT(statut='f',min=01,max='**',
353            regles=(UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'),),
354            NOEUD           =SIMP(statut='f',typ=no,max='**'),
355            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
356            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
357            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
358            REPERE          =SIMP(statut='f',typ='TXM',into=("LOCAL","GLOBAL") ),
359            AMOR_HYST       =SIMP(statut='f',typ='R' ),
360            CARA            =SIMP(statut='f',typ='TXM',max='**',
361                                  into=("K_T_D_N","K_T_D_L","K_TR_D_N","K_TR_D_L",
362                                                            "K_T_N",  "K_T_L",  "K_TR_N",  "K_TR_L",
363                                                                 "M_T_D_N","M_TR_D_N","M_T_N",
364                                                            "M_T_L",  "M_TR_N",  "M_TR_L",
365                                        "A_T_D_N","A_TR_D_N","A_T_D_L","A_TR_D_L",
366                                                            "A_T_N",  "A_T_L",   "A_TR_N", "A_TR_L") ),
367            VALE            =SIMP(statut='f',typ='R',max='**'),
368          ),
369          ORIENTATION     =FACT(statut='f',min=01,max='**',
370            regles=(UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO' ),),
371            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
372            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
373            NOEUD           =SIMP(statut='f',typ=no,max='**'),
374            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
375            CARA            =SIMP(statut='f',typ='TXM',
376                                  into=("VECT_Y","ANGL_VRIL","VECT_X_Y","ANGL_NAUT","GENE_TUYAU") ),
377            VALE            =SIMP(statut='f',typ='R',max='**'),
378            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-4 ),
379            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
380          ),
381          DEFI_ARC        =FACT(statut='f',min=01,max='**',
382            regles=(UN_PARMI('MAILLE','GROUP_MA'),
383                    UN_PARMI('ORIE_ARC','CENTRE','NOEUD_CENTRE','GROUP_NO_CENTRE',
384                             'POIN_TANG','NOEUD_POIN_TANG','GROUP_NO_POIN_TG'),
385                    PRESENT_PRESENT('ORIE_ARC','RAYON'),
386                    EXCLUS('COEF_FLEX','COEF_FLEX_XY'),
387                    EXCLUS('COEF_FLEX','COEF_FLEX_XZ'),
388                    EXCLUS('INDI_SIGM','INDI_SIGM_XY'),
389                    EXCLUS('INDI_SIGM','INDI_SIGM_XZ'),
390                    PRESENT_PRESENT('COEF_FLEX_XY','COEF_FLEX_XZ'),
391                    PRESENT_PRESENT('INDI_SIGM_XY','INDI_SIGM_XZ'),),
392            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
393            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
394            ORIE_ARC        =SIMP(statut='f',typ='R'),
395            CENTRE          =SIMP(statut='f',typ='R',max='**'),
396            NOEUD_CENTRE    =SIMP(statut='f',typ=no,max=1),
397            GROUP_NO_CENTRE =SIMP(statut='f',typ=grno,max=1),
398            POIN_TANG       =SIMP(statut='f',typ='R',max='**'),
399            NOEUD_POIN_TANG =SIMP(statut='f',typ=no,max=1), 
400            GROUP_NO_POIN_TG=SIMP(statut='f',typ=grno,max=1),
401            RAYON           =SIMP(statut='f',typ='R'),
402            COEF_FLEX       =SIMP(statut='f',typ='R'),
403            INDI_SIGM       =SIMP(statut='f',typ='R'),
404            COEF_FLEX_XY    =SIMP(statut='f',typ='R'),
405            INDI_SIGM_XY    =SIMP(statut='f',typ='R'),
406            COEF_FLEX_XZ    =SIMP(statut='f',typ='R'),
407            INDI_SIGM_XZ    =SIMP(statut='f',typ='R'),
408            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3),
409            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
410          ),
411          MASSIF          =FACT(statut='f',min=01,max='**',
412            regles=(UN_PARMI('MAILLE','GROUP_MA'),
413                    EXCLUS('ANGL_REP','ANGL_AXE'),
414                    EXCLUS('ANGL_REP','ORIG_AXE'),
415                    PRESENT_PRESENT('ANGL_AXE','ORIG_AXE'), ),
416            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
417            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
418            ANGL_REP        =SIMP(statut='f',typ='R',max=3),
419            ANGL_AXE        =SIMP(statut='f',typ='R',max=2),
420            ORIG_AXE        =SIMP(statut='f',typ='R',max=3),
421          ),
422          POUTRE_FLUI     =FACT(statut='f',min=01,max='**',
423            regles=(UN_PARMI('MAILLE','GROUP_MA'),),
424            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
425            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
426            B_T             =SIMP(statut='o',typ='R'),
427            B_N             =SIMP(statut='o',typ='R'),
428            B_TN            =SIMP(statut='o',typ='R',defaut= 0.E+0 ),
429            A_FLUI          =SIMP(statut='o',typ='R'),
430            A_CELL          =SIMP(statut='o',typ='R'),
431            COEF_ECHELLE    =SIMP(statut='o',typ='R'),
432          ),
433          GRILLE          =FACT(statut='f',min=01,max='**',
434            regles=(UN_PARMI('MAILLE','GROUP_MA'),
435                    EXCLUS('ANGL_REP','ORIG_AXE'),
436                    ENSEMBLE('ORIG_AXE','AXE')),
437            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
438            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
439            SECTION_L       =SIMP(statut='o',typ='R'),
440            ANGL_REP        =SIMP(statut='f',typ='R',max=2),
441            ANGL_L          =SIMP(statut='f',typ='R'),
442            POUR_CENT_L     =SIMP(statut='f',typ='R'),
443            POUR_CENT_T     =SIMP(statut='f',typ='R'),
444            DIST_N          =SIMP(statut='f',typ='R'),
445            ORIG_AXE        =SIMP(statut='f',typ='R',max='**'),
446            AXE             =SIMP(statut='f',typ='R',max='**'),
447            COEF_RIGI_DRZ   =SIMP(statut='f',typ='R',defaut= 1.0E-10 ),
448          ),
449          RIGI_PARASOL    =FACT(statut='f',min=01,max='**',
450            regles=(UN_PARMI('COEF_GROUP','FONC_GROUP'),
451                    UN_PARMI('COOR_CENTRE','NOEUD_CENTRE','GROUP_NO_CENTRE'),),
452            GROUP_MA        =SIMP(statut='o',typ=ma,max='**'),
453            FONC_GROUP      =SIMP(statut='f',typ=(fonction) ),
454            COEF_GROUP      =SIMP(statut='f',typ='R',max='**'),
455            REPERE          =SIMP(statut='f',typ='TXM',into=("LOCAL","GLOBAL") ),
456            CARA            =SIMP(statut='o',typ='TXM',max='**',into=("K_TR_D_N","A_TR_D_N") ),
457            VALE            =SIMP(statut='o',typ='R',max='**'),
458            GROUP_NO_CENTRE =SIMP(statut='f',typ=grno),
459            NOEUD_CENTRE    =SIMP(statut='f',typ=no),
460            COOR_CENTRE     =SIMP(statut='f',typ='R',max='**'),
461          ),
462          ASSE_GRIL       =FACT(statut='f',min=01,max='**',
463            regles=(UN_PARMI('MAILLE','GROUP_MA'),),
464            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
465            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
466            CARA            =SIMP(statut='o',typ='TXM',max='**',
467                                  into=("K_TR_D_N","K_TR_D_L_T","K_TR_D_L_N",) ),
468            VALE            =SIMP(statut='o',typ='R',max='**'),
469            PAS_T           =SIMP(statut='o',typ='R'),
470            PAS_N           =SIMP(statut='o',typ='R'),
471            ANGL_REP        =SIMP(statut='o',typ='R',max='**'),
472            COEF_ECHELLE    =SIMP(statut='o',typ='R'),
473          ),
474 ) ;
475 #& MODIF COMMANDE  DATE 24/05/2000   AUTEUR VABHHTS J.PELLET
476 def affe_carte_prod(GRANDEUR,**args):
477   if GRANDEUR == "TEMP_R" : return carte_temp_r
478   if GRANDEUR == "FLUX_R" : return carte_flux_r
479   if GRANDEUR == "DEPL_R" : return carte_depl_r
480   if GRANDEUR == "EPSI_R" : return carte_epsi_r
481   if GRANDEUR == "SIEF_R" : return carte_sief_r
482   if GRANDEUR == "META_R" : return carte_meta_r
483   if GRANDEUR == "NEUT_R" : return carte_neut_r
484   if GRANDEUR == "VAR2_R" : return carte_var2_r
485   if GRANDEUR == "TEMP_F" : return carte_temp_f
486   if GRANDEUR == "NEUT_F" : return carte_neut_f
487   if GRANDEUR == "INST_R" : return carte_inst_r
488   if GRANDEUR == "GEOM_R" : return carte_geom_r
489   raise AsException("type de concept resultat non prevu")
490
491 AFFE_CARTE=OPER(nom="AFFE_CARTE",op=  36,sd_prod=affe_carte_prod,
492                 fr="Définition d un champ de grandeur constant, qui peut ensuite être utilisé comme champ initial (par exemple une précontrainte en mécanique)",
493                 docu="U4.44.13-C",reentrant='n',
494          MAILLAGE        =SIMP(statut='o',typ=maillage ),
495          GRANDEUR        =SIMP(statut='o',typ='TXM',     
496                                into=("DEPL_R","EPSI_R","SIEF_R","VAR2_R",        
497                                      "TEMP_R","META_R","TEMP_F","FLUX_R",
498                                      "NEUT_R","NEUT_F","INST_R","GEOM_R",) ),
499          AFFE            =FACT(statut='o',min=01,max='**',
500            regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),),
501            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
502            GROUP_MA        =SIMP(statut='f',typ=grma),
503            MAILLE          =SIMP(statut='f',typ=ma  ),
504            NOM_CMP         =SIMP(statut='o',typ='TXM',max='**' ),  
505            VALE            =SIMP(statut='f',typ='R',max='**' ),  
506            VALE_I          =SIMP(statut='f',typ='I',max='**' ),  
507            VALE_C          =SIMP(statut='f',typ='C',max='**' ),  
508            VALE_F          =SIMP(statut='f',typ=fonction),
509          ),
510 )  ;
511 #& MODIF COMMANDE  DATE 31/05/2000   AUTEUR CIBHHLV L.VIVAN
512
513 def affe_cham_no_prod(CHAM_NO_AFFE,GRANDEUR,**args):
514   if GRANDEUR == "TEMP_R" : return cham_no_temp_r
515   if GRANDEUR == "TEMP_F" : return cham_no_temp_f
516   if GRANDEUR == "DEPL_R" : return cham_no_depl_r
517   if GRANDEUR == "DEPL_F" : return cham_no_depl_f
518   if GRANDEUR == "SIEF_R" : return cham_no_sief_r
519   if GRANDEUR == "NEUT_R" : return cham_no_neut_r
520   if GRANDEUR == "NEUT_F" : return cham_no_neut_f
521   if GRANDEUR == "INST_R" : return cham_no_inst_r
522   if GRANDEUR == "GEOM_R" : return cham_no_geom_r
523   if GRANDEUR == "VAR2_R" : return cham_no_var2_r
524   if AsType(CHAM_NO_AFFE) == cham_no_temp_r : return cham_no_temp_r
525   if AsType(CHAM_NO_AFFE) == cham_no_depl_r : return cham_no_depl_r
526   if AsType(CHAM_NO_AFFE) == cham_no_sief_r : return cham_no_sief_r
527   raise AsException("type de concept resultat non prevu")
528
529 AFFE_CHAM_NO=OPER(nom="AFFE_CHAM_NO",op=  52,sd_prod=affe_cham_no_prod
530                     ,fr="Affectation de grandeurs réelles pour créer un cham_no_*",
531                      docu="U4.44.11-F",reentrant='n',
532          regles=(UN_PARMI('MAILLAGE','CHAM_NO_AFFE'),
533                  PRESENT_PRESENT('MAILLAGE','GRANDEUR','AFFE'),
534                  EXCLUS('NUME_DDL','CHAM_NO'),),
535          CHAM_NO_AFFE    =SIMP(statut='f',typ=(cham_no_temp_r,cham_no_temp_f,cham_no_depl_r,
536                                                cham_no_depl_f,cham_no_sief_r ) ),
537          MAILLAGE        =SIMP(statut='f',typ=maillage ),
538          GRANDEUR        =SIMP(statut='f',typ='TXM',into=("TEMP_R","DEPL_R","SIEF_R","VAR2_R",
539                                                           "TEMP_F","DEPL_F","INST_R","GEOM_R",
540                                                           "NEUT_R","NEUT_F") ),
541          AFFE            =FACT(statut='f',min=01,max='**',
542            regles=(UN_PARMI('TOUT','GROUP_NO','NOEUD'),
543                    UN_PARMI('VALE','VALE_F','VALE_R','FONCTION'),),           
544            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
545            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
546            NOEUD           =SIMP(statut='f',typ=no,max='**'),
547 #  NOM_CMP est il obligatoire           
548            NOM_CMP         =SIMP(statut='f',typ='TXM',max='**'),
549            VALE_R          =SIMP(statut='f',typ='R',max='**',defaut= 0.E+0 ),
550            VALE            =SIMP(statut='f',typ='R',max='**'),
551            VALE_F          =SIMP(statut='f',typ=fonction,max='**'),
552            FONCTION        =SIMP(statut='f',typ=fonction,max='**'),
553          ),
554          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
555          NUME_DDL        =SIMP(statut='f',typ=nume_ddl ),
556          CHAM_NO         =SIMP(statut='f',typ=(cham_no_temp_r,cham_no_temp_f,cham_no_depl_r,
557                                                cham_no_depl_f,cham_no_sief_r ) ),
558 )  ;
559 #& MODIF COMMANDE  DATE 12/05/99   AUTEUR VABHHTS J.PELLET
560 AFFE_CHAR_ACOU=OPER(nom="AFFE_CHAR_ACOU",op=  68,sd_prod=char_acou,
561                     fr="Affectation de charges et conditions aux limites acoustiques constantes",
562                     docu="U4.44.04-E",reentrant='n',
563          regles=(AU_MOINS_UN('PRES_IMPO','VITE_FACE','IMPE_FACE','LIAISON_UNIF' ),),
564          MODELE          =SIMP(statut='o',typ=modele ),
565          VERI_DDL        =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
566          TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400.,),
567          PRES_IMPO       =FACT(statut='f',min=01,max='**',
568            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'),),
569            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
570            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
571            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
572            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
573            NOEUD           =SIMP(statut='f',typ=no,max='**'),
574            PRES            =SIMP(statut='o',typ='C' ),
575          ),
576          VITE_FACE       =FACT(statut='f',min=01,max='**',
577            regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE' ),),
578            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
579            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
580            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
581            VNOR            =SIMP(statut='o',typ='C' ),
582          ),
583          IMPE_FACE       =FACT(statut='f',min=01,max='**',
584            regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE' ),),
585            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
586            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
587            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
588            IMPE            =SIMP(statut='o',typ='C' ),
589          ),
590          LIAISON_UNIF    =FACT(statut='f',min=01,max='**',
591            regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE' ),),
592            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
593            NOEUD           =SIMP(statut='f',typ=no,max='**'),
594            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
595            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
596            DDL             =SIMP(statut='o',typ='TXM',max='**'),
597          ),
598 )  ;
599 #& MODIF COMMANDE  DATE 11/02/98   AUTEUR CIBHHLV L.VIVAN
600 def affe_char_cine_prod(MECA_IMPO,THER_IMPO,ACOU_IMPO,**args):
601   if MECA_IMPO != None  : return char_cine_meca
602   if THER_IMPO != None  : return char_cine_ther
603   if ACOU_IMPO != None  : return char_cine_acou
604   raise AsException("type de concept resultat non prevu")
605
606 AFFE_CHAR_CINE=OPER(nom="AFFE_CHAR_CINE",op= 101,sd_prod=affe_char_cine_prod
607                     ,fr="Affectation de conditions aux limites cinématiques pour traitement sans dualisation",
608                      docu="U4.44.03-E",reentrant='n',
609          regles=(AU_MOINS_UN('MECA_IMPO','THER_IMPO','ACOU_IMPO'),
610                  EXCLUS('MECA_IMPO','THER_IMPO'),
611                  EXCLUS('MECA_IMPO','ACOU_IMPO'),
612                  EXCLUS('THER_IMPO','ACOU_IMPO'),),
613          MODELE          =SIMP(statut='o',typ=modele ),
614          MECA_IMPO       =FACT(statut='f',min=01,max='**',
615            regles=(UN_PARMI('TOUT','GROUP_NO','NOEUD'),
616                    AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','TEMP','PHI'),),
617            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
618            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
619            NOEUD           =SIMP(statut='f',typ=no,max='**'),
620            DX              =SIMP(statut='f',typ='R' ),
621            DY              =SIMP(statut='f',typ='R' ),
622            DZ              =SIMP(statut='f',typ='R' ),
623            DRX             =SIMP(statut='f',typ='R' ),
624            DRY             =SIMP(statut='f',typ='R' ),
625            DRZ             =SIMP(statut='f',typ='R' ),
626            GRX             =SIMP(statut='f',typ='R' ),
627            PRES            =SIMP(statut='f',typ='R' ),
628            TEMP            =SIMP(statut='f',typ='R' ),
629            PHI             =SIMP(statut='f',typ='R' ),
630          ),
631          THER_IMPO       =FACT(statut='f',min=01,max='**',
632            regles=(UN_PARMI('TOUT','GROUP_NO','NOEUD'),
633                    AU_MOINS_UN('TEMP','TEMP_INF','TEMP_SUP'),),
634            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
635            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
636            NOEUD           =SIMP(statut='f',typ=no,max='**'),
637            TEMP_SUP        =SIMP(statut='f',typ='R' ),
638            TEMP            =SIMP(statut='f',typ='R' ),
639            TEMP_INF        =SIMP(statut='f',typ='R' ),
640          ),
641          ACOU_IMPO       =FACT(statut='f',min=01,max='**',
642            regles=(UN_PARMI('TOUT','GROUP_NO','NOEUD' ),),
643            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
644            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
645            NOEUD           =SIMP(statut='f',typ=no,max='**'),
646            PRES            =SIMP(statut='o',typ='C' ),
647          ),
648          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
649 )  ;
650 #& MODIF COMMANDE  DATE 11/02/98   AUTEUR CIBHHLV L.VIVAN
651 def affe_char_cine_f_prod(MECA_IMPO,THER_IMPO,**args):
652   if MECA_IMPO != None  : return char_cine_meca
653   if THER_IMPO != None  : return char_cine_ther
654   raise AsException("type de concept resultat non prevu")
655
656 AFFE_CHAR_CINE_F=OPER(nom="AFFE_CHAR_CINE_F",op= 108,sd_prod=affe_char_cine_f_prod
657                     ,fr="Affectation de conditions aux limites cinématiques pour traitement sans dualisation",
658                      docu="U4.44.03-E",reentrant='n',
659          regles=(AU_MOINS_UN('MECA_IMPO','THER_IMPO'),
660                  EXCLUS('MECA_IMPO','THER_IMPO'),),
661          MODELE          =SIMP(statut='o',typ=modele ),
662          MECA_IMPO       =FACT(statut='f',min=01,max='**',
663            regles=(UN_PARMI('TOUT','GROUP_NO','NOEUD'),
664                    AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','TEMP','PHI'),),
665            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
666            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
667            NOEUD           =SIMP(statut='f',typ=no,max='**'),
668            DX              =SIMP(statut='f',typ=fonction ),
669            DY              =SIMP(statut='f',typ=fonction ),
670            DZ              =SIMP(statut='f',typ=fonction ),
671            DRX             =SIMP(statut='f',typ=fonction ),
672            DRY             =SIMP(statut='f',typ=fonction ),
673            DRZ             =SIMP(statut='f',typ=fonction ),
674            GRX             =SIMP(statut='f',typ=fonction ),
675            PRES            =SIMP(statut='f',typ=fonction ),
676            TEMP            =SIMP(statut='f',typ=fonction ),
677            PHI             =SIMP(statut='f',typ=fonction ),
678          ),
679          THER_IMPO       =FACT(statut='f',min=01,max='**',
680            regles=(UN_PARMI('TOUT','GROUP_NO','NOEUD'),
681                    AU_MOINS_UN('TEMP','TEMP_INF','TEMP_SUP' ),),
682            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
683            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
684            NOEUD           =SIMP(statut='f',typ=no,max='**'),
685            TEMP_SUP        =SIMP(statut='f',typ=fonction ),
686            TEMP            =SIMP(statut='f',typ=fonction ),
687            TEMP_INF        =SIMP(statut='f',typ=fonction ),
688          ),
689          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
690 )  ;
691 #& MODIF COMMANDE  DATE 03/10/2000   AUTEUR UFBHHLL C.CHAVANT 
692 AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op=   7,sd_prod=char_meca
693                     ,fr="Affectation de charges et conditions aux limites mécaniques constantes",
694                      docu="U4.44.01-F",reentrant='n',
695          regles=(AU_MOINS_UN('DDL_IMPO','FACE_IMPO','LIAISON_DDL','FORCE_NODALE',  
696                              'FORCE_FACE','FORCE_ARETE','FORCE_CONTOUR','FORCE_INTERNE',       
697                              'PRES_REP','FORCE_POUTRE','FORCE_COQUE','LIAISON_OBLIQUE',        
698                              'FORCE_ELEC','INTE_ELEC','PESANTEUR','ROTATION','IMPE_FACE',      
699                              'VITE_FACE','TEMP_CALCULEE','RELA_CINE_BP','EPSI_INIT','CONTACT', 
700                              'LIAISON_UNIL_NO','LIAISON_GROUP','LIAISON_UNIF','FLUX_THM_REP',  
701                              'LIAISON_SOLIDE','LIAISON_ELEM','ONDE_FLUI','PRES_CALCULEE',      
702                              'EPSA_CALCULEE','LIAISON_CHAMNO','VECT_ASSE','LIAISON_COQUE',     
703                              'LIAISON_MAIL','FORCE_TUYAU','SECH_CALCULEE','HYDR_CALCULEE',     
704                              'EFFE_FOND'),
705                  EXCLUS('LIAISON_UNIL_NO','CONTACT'),),            
706          
707          MODELE          =SIMP(statut='o',typ=(modele) ),
708          VERI_DDL        =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
709          VERI_NORM       =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
710          TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400. ),
711          PESANTEUR       =SIMP(statut='f',typ='R',fr="Champ de pesanteur",min=04,max=04),
712          ROTATION        =SIMP(statut='f',typ='R',fr="Champ de rotation",min=04,max=04),
713          b_rotation      =BLOC ( condition = "ROTATION != None",
714            CENTRE          =SIMP(statut='f',typ='R',defaut=(0.,0.,0.),max=03),    
715          ),     
716          PRES_CALCULEE   =SIMP(statut='f',fr="Champ de pression issu d un autre calcul",typ=evol_char ),
717          TEMP_CALCULEE   =SIMP(statut='f',fr="Champ de température issu d un autre calcul",typ=(evol_ther,cham_no_temp_r,carte_temp_r,carte_temp_f ) ),
718          HYDR_CALCULEE   =SIMP(statut='f',fr="Champ d hydratation issu d un autre calcul",typ=evol_ther ),
719          SECH_CALCULEE   =SIMP(statut='f',fr="Champ de séchage issu d un autre calcul",typ=(evol_ther,cham_no_temp_r,carte_temp_r,carte_temp_f ) ),
720          EPSA_CALCULEE   =SIMP(statut='f',fr="Champ de déformation anélastique issu d un autre calcul",typ=evol_noli ),
721          VECT_ASSE       =SIMP(statut='f',typ=cham_no_depl_r ),
722          
723            DDL_IMPO        =FACT(statut='f',min=01,max='**',
724              regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'),
725                      AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI',
726                                  'TEMP','PRE1','PRE2','UI2','UI3','VI2','VI3','WI2','WI3','UO2',
727                                  'UO3','VO2','VO3','WO2','WO3','UI4','UI5','VI4','VI5','WI4',
728                                  'WI5','UO4','UO5','VO4','VO5','WO4','WO5','UI6','UO6','VI6',
729                                  'VO6','WI6','WO6','WO','WI1','WO1'),),
730              TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
731              GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
732              NOEUD           =SIMP(statut='f',typ=no,max='**'),
733              GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
734              MAILLE          =SIMP(statut='f',typ=ma,max='**'),
735              DX              =SIMP(statut='f',typ='R' ),
736              DY              =SIMP(statut='f',typ='R' ),
737              DZ              =SIMP(statut='f',typ='R' ),
738              DRX             =SIMP(statut='f',typ='R' ),
739              DRY             =SIMP(statut='f',typ='R' ),
740              DRZ             =SIMP(statut='f',typ='R' ),
741              GRX             =SIMP(statut='f',typ='R' ),
742              PRES            =SIMP(statut='f',typ='R' ),
743              PHI             =SIMP(statut='f',typ='R' ),
744              TEMP            =SIMP(statut='f',typ='R' ),
745              PRE1            =SIMP(statut='f',typ='R' ),
746              PRE2            =SIMP(statut='f',typ='R' ),
747              UI2             =SIMP(statut='f',typ='R' ),
748              UI3             =SIMP(statut='f',typ='R' ),
749              UI4             =SIMP(statut='f',typ='R' ),
750              UI5             =SIMP(statut='f',typ='R' ),
751              UI6             =SIMP(statut='f',typ='R' ),
752              UO2             =SIMP(statut='f',typ='R' ),
753              UO3             =SIMP(statut='f',typ='R' ),
754              UO4             =SIMP(statut='f',typ='R' ),
755              UO5             =SIMP(statut='f',typ='R' ),
756              UO6             =SIMP(statut='f',typ='R' ),
757              VI2             =SIMP(statut='f',typ='R' ),
758              VI3             =SIMP(statut='f',typ='R' ),
759              VI4             =SIMP(statut='f',typ='R' ),
760              VI5             =SIMP(statut='f',typ='R' ),
761              VI6             =SIMP(statut='f',typ='R' ),
762              VO2             =SIMP(statut='f',typ='R' ),
763              VO3             =SIMP(statut='f',typ='R' ),
764              VO4             =SIMP(statut='f',typ='R' ),
765              VO5             =SIMP(statut='f',typ='R' ),
766              VO6             =SIMP(statut='f',typ='R' ),
767              WI2             =SIMP(statut='f',typ='R' ),
768              WI3             =SIMP(statut='f',typ='R' ),
769              WI4             =SIMP(statut='f',typ='R' ),
770              WI5             =SIMP(statut='f',typ='R' ),
771              WI6             =SIMP(statut='f',typ='R' ),
772              WO2             =SIMP(statut='f',typ='R' ),
773              WO3             =SIMP(statut='f',typ='R' ),
774              WO4             =SIMP(statut='f',typ='R' ),
775              WO5             =SIMP(statut='f',typ='R' ),
776              WO6             =SIMP(statut='f',typ='R' ),
777              WO              =SIMP(statut='f',typ='R' ),
778              WI1             =SIMP(statut='f',typ='R' ),
779              WO1             =SIMP(statut='f',typ='R' ),
780            ),
781            FACE_IMPO       =FACT(statut='f',min=01,max='**',
782              regles=(UN_PARMI('GROUP_MA','MAILLE',),
783                      AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI',
784                                  'TEMP','PRE1','PRE2','DNOR','DTAN'),
785                      EXCLUS('DNOR','DX'),
786                      EXCLUS('DNOR','DY'),
787                      EXCLUS('DNOR','DZ'),
788                      EXCLUS('DNOR','DRX'),
789                      EXCLUS('DNOR','DRY'),
790                      EXCLUS('DNOR','DRZ'),
791                      EXCLUS('DTAN','DX'),
792                      EXCLUS('DTAN','DY'),
793                      EXCLUS('DTAN','DZ'),
794                      EXCLUS('DTAN','DRX'),
795                      EXCLUS('DTAN','DRY'),
796                      EXCLUS('DTAN','DRZ'),),
797 #  rajout d un mot clé REPERE :/ LOCAL /GLOBAL                     
798              GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
799              MAILLE          =SIMP(statut='f',typ=ma,max='**'),
800              DX              =SIMP(statut='f',typ='R' ),
801              DY              =SIMP(statut='f',typ='R' ),
802              DZ              =SIMP(statut='f',typ='R' ),
803              DRX             =SIMP(statut='f',typ='R' ),
804              DRY             =SIMP(statut='f',typ='R' ),
805              DRZ             =SIMP(statut='f',typ='R' ),
806              DNOR            =SIMP(statut='f',typ='R' ),
807              DTAN            =SIMP(statut='f',typ='R' ),
808              GRX             =SIMP(statut='f',typ='R' ),
809              PRES            =SIMP(statut='f',typ='R' ),
810              PHI             =SIMP(statut='f',typ='R' ),
811              TEMP            =SIMP(statut='f',typ='R' ),
812              PRE1            =SIMP(statut='f',typ='R' ),
813              PRE2            =SIMP(statut='f',typ='R' ),
814            ),
815            LIAISON_DDL     =FACT(statut='f',fr="Définir une relation linéaire entre des ddls de deux ou plusieurs noeuds",min=01,max='**',
816              regles=(UN_PARMI('GROUP_NO','NOEUD'),),
817              GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
818              NOEUD           =SIMP(statut='f',typ=no,max='**'),
819              DDL             =SIMP(statut='o',typ='TXM',max='**'),
820              COEF_MULT       =SIMP(statut='o',typ='R',max='**'),
821              COEF_IMPO       =SIMP(statut='o',typ='R' ),
822            ),
823            LIAISON_OBLIQUE =FACT(statut='f',fr="Appliquer à des noeuds la même valeur de déplacement dans un repère oblique quelconque",min=01,max='**',
824              regles=(UN_PARMI('GROUP_NO','NOEUD'),
825                      UN_PARMI('DX','DY','DZ','DRX','DRY','DRZ'),),
826              GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
827              NOEUD           =SIMP(statut='f',typ=no,max='**'),
828              ANGL_NAUT       =SIMP(statut='o',typ='R',max=03),
829              DX              =SIMP(statut='f',typ='R' ),
830              DY              =SIMP(statut='f',typ='R' ),
831              DZ              =SIMP(statut='f',typ='R' ),
832              DRX             =SIMP(statut='f',typ='R' ),
833              DRY             =SIMP(statut='f',typ='R' ),
834              DRZ             =SIMP(statut='f',typ='R' ),
835            ), 
836            LIAISON_GROUP   =FACT(statut='f',fr="Définir des relations linéaires entre certains ddls de couples de noeuds",min=01,max='**',
837              regles=(UN_PARMI('GROUP_MA_1','MAILLE_1','GROUP_NO_1','NOEUD_1'),        
838                      UN_PARMI('GROUP_MA_2','MAILLE_2','GROUP_NO_2','NOEUD_2'),
839                      EXCLUS('GROUP_MA_1','GROUP_NO_2'),
840                      EXCLUS('GROUP_MA_1','NOEUD_2'),      
841                      EXCLUS('GROUP_NO_1','GROUP_MA_2'),
842                      EXCLUS('GROUP_NO_1','MAILLE_2'),
843                      EXCLUS('MAILLE_1','GROUP_NO_2'),
844                      EXCLUS('MAILLE_1','NOEUD_2'),
845                      EXCLUS('NOEUD_1','GROUP_MA_2'),
846                      EXCLUS('NOEUD_1','MAILLE_2'),
847                      EXCLUS('SANS_NOEUD','SANS_GROUP_NO'),),
848              
849                GROUP_MA_1      =SIMP(statut='f',typ=grma,max='**'),
850                MAILLE_1        =SIMP(statut='f',typ=ma,max='**'),
851                GROUP_MA_2      =SIMP(statut='f',typ=grma,max='**'),
852                MAILLE_2        =SIMP(statut='f',typ=ma,max='**'),
853                GROUP_NO_1      =SIMP(statut='f',typ=grno,max='**'),
854                NOEUD_1         =SIMP(statut='f',typ=no,max='**'),
855                GROUP_NO_2      =SIMP(statut='f',typ=no,max='**'),
856                NOEUD_2         =SIMP(statut='f',typ=no,max='**'),
857              
858              SANS_NOEUD      =SIMP(statut='f',typ=no,max='**'),
859              SANS_GROUP_NO   =SIMP(statut='f',typ=grno,max='**'),
860              DDL_1           =SIMP(statut='o',typ='TXM',max='**'),
861              COEF_MULT_1     =SIMP(statut='o',typ='R',max='**'),
862              DDL_2           =SIMP(statut='o',typ='TXM',max='**'),
863              COEF_MULT_2     =SIMP(statut='o',typ='R',max='**'),
864              COEF_IMPO       =SIMP(statut='o',typ='R' ),
865              SOMMET          =SIMP(statut='f',typ='TXM',into=("OUI",) ),
866              TRAN            =SIMP(statut='f',typ='R',max=03),
867              ANGL_NAUT       =SIMP(statut='f',typ='R',max=03),
868              CENTRE          =SIMP(statut='f',typ='R',max=03),
869            ),
870            LIAISON_SOLIDE  =FACT(statut='f',fr="Modéliser une partie indéformable d une structure",min=01,max='**',
871              regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),),
872              GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
873              NOEUD           =SIMP(statut='f',typ=no,max='**'),
874              GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
875              MAILLE          =SIMP(statut='f',typ=ma,max='**'),
876              NUME_LAGR       =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES") ),
877            ), 
878            LIAISON_UNIF    =FACT(statut='f',fr="Imposer une meme valeur (inconnue) à des ddls d un emsemble de noeuds",min=01,max='**',
879              regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),),
880              GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
881              NOEUD           =SIMP(statut='f',typ=no,max='**'),
882              GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
883              MAILLE          =SIMP(statut='f',typ=ma,max='**'),
884              DDL             =SIMP(statut='o',typ='TXM',max='**'),
885            ), 
886            LIAISON_CHAMNO  =FACT(statut='f',fr="définir une relation linéaire entre tous les ddls présents dans un concept cham_nno",min=01,max='**',
887 #  type de cham_no CO()
888              CHAM_NO         =SIMP(statut='o',typ=cham_no), #CO()
889              COEF_IMPO       =SIMP(statut='o',typ='R' ),
890              NUME_LAGR       =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES") ),
891            ), 
892            LIAISON_ELEM    =FACT(statut='f',fr="Raccorder une poutre à une partie massive 3D ou une coque", min=01,max='**',
893              regles=(UN_PARMI('GROUP_MA_1','MAILLE_1'),
894                      UN_PARMI('GROUP_NO_2','NOEUD_2'),),
895              OPTION          =SIMP(statut='o',typ='TXM',into=("3D_TUYAU","3D_POU","COQ_POU","COQ_TUYAU") ),
896              GROUP_MA_1      =SIMP(statut='f',typ=grma,max='**'),
897              MAILLE_1        =SIMP(statut='f',typ=ma,max='**'),
898              GROUP_NO_2      =SIMP(statut='f',typ=grno,max='**'),
899              NOEUD_2         =SIMP(statut='f',typ=no,max='**'),
900              NUME_LAGR       =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES") ),
901              CARA_ELEM       =SIMP(statut='f',typ=(cara_elem) ),
902              AXE_POUTRE      =SIMP(statut='f',typ='R',max=03),
903              ANGL_MAX        =SIMP(statut='f',typ='R',defaut= 1. ),
904            ),
905            LIAISON_COQUE   =FACT(statut='f',min=01,max='**',
906              GROUP_MA_1      =SIMP(statut='f',typ=grma,max='**'),
907              MAILLE_1        =SIMP(statut='f',typ=ma,max='**'),
908              GROUP_NO_1      =SIMP(statut='f',typ=grno,max='**'),
909              NOEUD_1         =SIMP(statut='f',typ=no,max='**'),
910              GROUP_MA_2      =SIMP(statut='f',typ=grma,max='**'),
911              MAILLE_2        =SIMP(statut='f',typ=ma,max='**'),
912              GROUP_NO_2      =SIMP(statut='f',typ=grno,max='**'),
913              NOEUD_2         =SIMP(statut='f',typ=no,max='**'),
914              NUME_LAGR       =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES") ),
915            ),
916            LIAISON_MAIL    =FACT(statut='f',min=01,max='**',
917              regles=(PRESENT_ABSENT('GROUP_MA_1','GROUP_MA_ESCL','MAILLE_ESCL','GROUP_NO_ESCL','NOEUD_ESCL'),
918                      PRESENT_ABSENT('MAILLE_1','GROUP_MA_ESCL','MAILLE_ESCL','GROUP_NO_ESCL','NOEUD_ESCL',),     
919                      PRESENT_ABSENT('GROUP_MA_2','GROUP_MA_MAIT','MAILLE_MAIT'),      
920                      PRESENT_ABSENT('MAILLE_2','GROUP_MA_MAIT','MAILLE_MAIT'),        
921                      PRESENT_ABSENT('GROUP_NO_2','GROUP_MA_MAIT','MAILLE_MAIT'),      
922                      PRESENT_ABSENT('NOEUD_2','GROUP_MA_MAIT','MAILLE_MAIT'),         
923                      AU_MOINS_UN('GROUP_MA_1','MAILLE_1','GROUP_MA_MAIT','MAILLE_MAIT'),
924                      AU_MOINS_UN('GROUP_MA_2','MAILLE_2','GROUP_NO_2','NOEUD_2','GROUP_MA_ESCL','MAILLE_ESCL','GROUP_NO_ESCL','NOEUD_ESCL'),
925                      PRESENT_ABSENT('DDL_1','DDL_MAIT','DDL_ESCL'),    
926                      PRESENT_ABSENT('DDL_2','DDL_MAIT','DDL_ESCL'),
927                      PRESENT_PRESENT('DDL_1','DDL_2'),
928                      PRESENT_PRESENT('DDL_MAIT','DDL_ESCL'),),
929               GROUP_MA_1      =SIMP(statut='f',typ=grma,max='**'),
930               MAILLE_1        =SIMP(statut='f',typ=ma,max='**'), 
931               GROUP_MA_MAIT   =SIMP(statut='f',typ=grma,max='**'),
932               MAILLE_MAIT     =SIMP(statut='f',typ=ma,max='**'), 
933               GROUP_MA_2      =SIMP(statut='f',typ=grma,max='**'),
934               MAILLE_2        =SIMP(statut='f',typ=ma,max='**'), 
935               GROUP_NO_2      =SIMP(statut='f',typ=grno,max='**'),
936               NOEUD_2         =SIMP(statut='f',typ=no,max='**'), 
937               GROUP_MA_ESCL   =SIMP(statut='f',typ=grma,max='**'),
938               MAILLE_ESCL     =SIMP(statut='f',typ=ma,max='**'), 
939               GROUP_NO_ESCL   =SIMP(statut='f',typ=grno,max='**'),
940               NOEUD_ESCL      =SIMP(statut='f',typ=no,max='**'), 
941               TRAN            =SIMP(statut='f',typ='R',max=03 ),
942               ANGL_NAUT       =SIMP(statut='f',typ='R',max=03 ),
943               CENTRE          =SIMP(statut='f',typ='R',max=03 ),
944               DDL_1           =SIMP(statut='f',typ='TXM',max='**',into=("DNOR",) ),
945               DDL_2           =SIMP(statut='f',typ='TXM',max='**',into=("DNOR",) ),
946               DDL_MAIT        =SIMP(statut='f',typ='TXM',max='**',into=("DNOR",) ),
947               DDL_ESCL        =SIMP(statut='f',typ='TXM',max='**',into=("DNOR",) ),
948          ),
949          
950          FORCE_NODALE    =FACT(statut='f',fr="Imposer des forces nodales en des noeuds",min=01,max='**',
951            regles=(UN_PARMI('GROUP_NO','NOEUD'),
952                    AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ' ),),
953            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
954            NOEUD           =SIMP(statut='f',typ=no,max='**'),
955            FX              =SIMP(statut='f',typ='R' ),
956            FY              =SIMP(statut='f',typ='R' ),
957            FZ              =SIMP(statut='f',typ='R' ),
958            MX              =SIMP(statut='f',typ='R' ),
959            MY              =SIMP(statut='f',typ='R' ),
960            MZ              =SIMP(statut='f',typ='R' ),
961            ANGL_NAUT       =SIMP(statut='f',typ='R',max=03),
962          ),
963          
964            FORCE_FACE      =FACT(statut='f',fr="Appliquer des forces surfaciques sur une face d éléments volumiques",min=01,max='**',
965              regles=(UN_PARMI('GROUP_MA','MAILLE'),
966                      AU_MOINS_UN('FX','FY','FZ'),),
967              GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
968              MAILLE          =SIMP(statut='f',typ=ma,max='**'),
969              FX              =SIMP(statut='f',typ='R' ),
970              FY              =SIMP(statut='f',typ='R' ),
971              FZ              =SIMP(statut='f',typ='R' ),
972            ), 
973            FORCE_ARETE     =FACT(statut='f',fr="Appliquer des forces linéiques à une arete d élément volumique ou de coque",min=01,max='**',
974              regles=(UN_PARMI('GROUP_MA','MAILLE',),
975                      AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ' ),),
976              GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
977              MAILLE          =SIMP(statut='f',typ=ma,max='**'),
978              FX              =SIMP(statut='f',typ='R' ),
979              FY              =SIMP(statut='f',typ='R' ),
980              FZ              =SIMP(statut='f',typ='R' ),
981              MX              =SIMP(statut='f',typ='R' ),
982              MY              =SIMP(statut='f',typ='R' ),
983              MZ              =SIMP(statut='f',typ='R' ),
984            ), 
985            FORCE_CONTOUR   =FACT(statut='f',fr="Appliquer des forces linéiques au bord d un domaine 2D ou AXIS_FOURIER",min=01,max='**',
986              regles=(UN_PARMI('GROUP_MA','MAILLE'),
987                      AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),),
988              GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
989              MAILLE          =SIMP(statut='f',typ=ma,max='**'),
990              FX              =SIMP(statut='f',typ='R' ),
991              FY              =SIMP(statut='f',typ='R' ),
992              FZ              =SIMP(statut='f',typ='R' ),
993              MX              =SIMP(statut='f',typ='R' ),
994              MY              =SIMP(statut='f',typ='R' ),
995              MZ              =SIMP(statut='f',typ='R' ),
996            ), 
997            FORCE_INTERNE   =FACT(statut='f',fr="Appliquer des forces volumiques (2D ou 3D) à un domaine volumique",min=01,max='**',
998              regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),
999                      AU_MOINS_UN('FX','FY','FZ' ),),
1000              TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1001              GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1002              MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1003              FX              =SIMP(statut='f',typ='R' ),
1004              FY              =SIMP(statut='f',typ='R' ),
1005              FZ              =SIMP(statut='f',typ='R' ),
1006            ), 
1007            PRES_REP        =FACT(statut='f',fr="Appliquer une pression à un domaine de milieu continu 2D ou 3D",min=01,max='**',
1008              regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),
1009                      AU_MOINS_UN('PRES','CISA_2D' ),),
1010              TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1011              GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1012              MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1013              PRES            =SIMP(statut='f',typ='R' ),
1014              CISA_2D         =SIMP(statut='f',typ='R' ),
1015            ),
1016            EPSI_INIT       =FACT(statut='f',fr="Appliquer un chargement de déformation initiale à un volume 3D ou 2D",min=01,max='**',
1017              regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),
1018                      AU_MOINS_UN('EPXX','EPYY','EPZZ','EPXY','EPXZ','EPYZ','EPX',
1019                                  'KY','KZ','EXX','EYY','EXY','KXX','KYY','KXY'),),
1020              TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1021              GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1022              MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1023              EPXX            =SIMP(statut='f',typ='R' ),
1024              EPYY            =SIMP(statut='f',typ='R' ),
1025              EPZZ            =SIMP(statut='f',typ='R' ),
1026              EPXY            =SIMP(statut='f',typ='R' ),
1027              EPXZ            =SIMP(statut='f',typ='R' ),
1028              EPYZ            =SIMP(statut='f',typ='R' ),
1029              EPX             =SIMP(statut='f',typ='R' ),
1030              KY              =SIMP(statut='f',typ='R' ),
1031              KZ              =SIMP(statut='f',typ='R' ),
1032              EXX             =SIMP(statut='f',typ='R' ),
1033              EYY             =SIMP(statut='f',typ='R' ),
1034              EXY             =SIMP(statut='f',typ='R' ),
1035              KXX             =SIMP(statut='f',typ='R' ),
1036              KYY             =SIMP(statut='f',typ='R' ),
1037              KXY             =SIMP(statut='f',typ='R' ),
1038            ),
1039          
1040          
1041            FORCE_COQUE     =FACT(statut='f',fr="Appliquer des forces surfaciques sur des coques",min=01,max='**',
1042              regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),
1043                      AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ','PRES','F1','F2','F3','MF1','MF2'),               
1044                      PRESENT_ABSENT('FX','PRES','F1','F2','F3','MF1','MF2'),
1045                      PRESENT_ABSENT('FY','PRES','F1','F2','F3','MF1','MF2'),
1046                      PRESENT_ABSENT('FZ','PRES','F1','F2','F3','MF1','MF2'),
1047                      PRESENT_ABSENT('MX','PRES','F1','F2','F3','MF1','MF2'),
1048                      PRESENT_ABSENT('MY','PRES','F1','F2','F3','MF1','MF2'),
1049                      PRESENT_ABSENT('MZ','PRES','F1','F2','F3','MF1','MF2'),
1050                      PRESENT_ABSENT('F1','FX','FY','FZ','MX','MY','MZ','PRES'),
1051                      PRESENT_ABSENT('F2','FX','FY','FZ','MX','MY','MZ','PRES'),
1052                      PRESENT_ABSENT('F3','FX','FY','FZ','MX','MY','MZ','PRES'),
1053                      PRESENT_ABSENT('MF1','FX','FY','FZ','MX','MY','MZ','PRES'),
1054                      PRESENT_ABSENT('MF2','FX','FY','FZ','MX','MY','MZ','PRES'),
1055                      PRESENT_ABSENT('PRES','FX','FY','FZ','MX','MY','MZ','F1','F2','F3','MF1','MF2'),),
1056 #  rajour d un mot clé REPERE :/ LOCAL /GLOBAL              
1057              TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1058              GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1059              MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1060              
1061                FX              =SIMP(statut='f',typ='R' ),
1062                FY              =SIMP(statut='f',typ='R' ),
1063                FZ              =SIMP(statut='f',typ='R' ),
1064                MX              =SIMP(statut='f',typ='R' ),
1065                MY              =SIMP(statut='f',typ='R' ),
1066                MZ              =SIMP(statut='f',typ='R' ),
1067              
1068                F1              =SIMP(statut='f',typ='R' ),
1069                F2              =SIMP(statut='f',typ='R' ),
1070                F3              =SIMP(statut='f',typ='R' ),
1071                MF1             =SIMP(statut='f',typ='R' ),
1072                MF2             =SIMP(statut='f',typ='R' ),
1073               
1074              PRES            =SIMP(statut='f',typ='R' ),
1075              PLAN            =SIMP(statut='f',typ='TXM',defaut="MAIL",into=("SUP","INF","MOY","MAIL",) ),
1076            ),
1077            FORCE_POUTRE    =FACT(statut='f',fr="Appliquer des forces linéiques sur des poutres",min=01,max='**',
1078              regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),
1079                      AU_MOINS_UN('FX','FY','FZ','N','VY','VZ'),
1080                      PRESENT_ABSENT('FX','N','VY','VZ'),              
1081                      PRESENT_ABSENT('FY','N','VY','VZ'),
1082                      PRESENT_ABSENT('FZ','N','VY','VZ'),
1083                      PRESENT_ABSENT('N','FX','FY','FZ'),
1084                      PRESENT_ABSENT('VY','FX','FY','FZ'),
1085                      PRESENT_ABSENT('VZ','FX','FY','FZ'),),
1086              TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1087              GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1088              MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1089              TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FORCE",into=("VENT","FORCE",) ),
1090 #  rajour d un mot clé REPERE :/ LOCAL /GLOBAL              
1091                FX              =SIMP(statut='f',typ='R' ),
1092                FY              =SIMP(statut='f',typ='R' ),
1093                FZ              =SIMP(statut='f',typ='R' ),
1094              
1095                N               =SIMP(statut='f',typ='R' ),
1096                VY              =SIMP(statut='f',typ='R' ),
1097                VZ              =SIMP(statut='f',typ='R' ),
1098               
1099            ),
1100            FORCE_TUYAU     =FACT(statut='f',fr="imposer une pression dans un élément TUYAU",min=01,max='**',
1101              regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),),
1102              TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1103              GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1104              MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1105              PRES            =SIMP(statut='f',typ='R' ),
1106            ),
1107              
1108          
1109            FORCE_ELEC      =FACT(statut='f',fr="Appliquer une force de Laplace due à la présence d un conducteur rectiligne secondaire non maillé",min=01,max='**',
1110              regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),
1111                      AU_MOINS_UN('FX','FY','FZ','POSITION'),
1112                      EXCLUS('FX','POSITION'),
1113                      EXCLUS('FY','POSITION'),   
1114                      EXCLUS('FZ','POSITION'),),
1115 #  trop de règles : les blocs conditionnels permettent d en suprimer              
1116              TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1117              GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1118              MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1119               
1120              FX              =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
1121              FY              =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
1122              FZ              =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
1123              
1124              POSITION        =SIMP(statut='f',typ='TXM',fr="Direction prédéfinie",into=("PARA","INFI","FINI",) ),
1125              b_para     =BLOC ( condition = "POSITION == 'PARA'",
1126                regles=(UN_PARMI('TRANS','DIST'),),
1127                TRANS           =SIMP(statut='f',typ='R',max=03),
1128                DIST            =SIMP(statut='f',typ='R' ),
1129                b_point2        =BLOC ( condition = "DIST != None", 
1130                  POINT2           =SIMP(statut='o',typ='R',max=03),
1131                ),
1132              ),
1133              b_fini_infi     =BLOC ( condition = "(POSITION == 'FINI') or (POSITION == 'INFI')",
1134                POINT1          =SIMP(statut='o',typ='R',max=03),
1135                POINT2          =SIMP(statut='o',typ='R',max=03),
1136              ), 
1137            ),
1138            INTE_ELEC       =FACT(statut='f',fr="Appliquer une force de Laplace due à la présence d un conducteur non rectiligne secondaire maillé ou non",min=01,max='**',
1139              regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),
1140                      AU_MOINS_UN('GROUP_MA_2','MAILLE_2','TRANS','SYME'),
1141                      EXCLUS('TRANS','SYME'),),
1142              TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1143              GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1144              MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1145              GROUP_MA_2      =SIMP(statut='f',typ=grma,max='**'),
1146              MAILLE_2        =SIMP(statut='f',typ=ma,max='**'),
1147              TRANS           =SIMP(statut='f',typ='R',max='**'),
1148              SYME            =SIMP(statut='f',typ='R',max='**'),
1149            ),
1150          
1151          
1152            VITE_FACE       =FACT(statut='f',fr="Imposer des vitesses acoustiquesnormales à une face",min=01,max='**',
1153              regles=(UN_PARMI('GROUP_MA','MAILLE'),),
1154              GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1155              MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1156              VNOR            =SIMP(statut='o',typ='R' ),
1157            ),
1158            ONDE_FLUI       =FACT(statut='f',fr="Appliquer une amplitude de pression d onde incidente",min=01,max='**',
1159              regles=(UN_PARMI('GROUP_MA','MAILLE'),),
1160              GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1161              MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1162              PRES            =SIMP(statut='o',typ='R' ),
1163            ),
1164            IMPE_FACE       =FACT(statut='f',fr="Appliquer une impédance acoustique à une face",min=01,max='**',
1165              regles=(UN_PARMI('GROUP_MA','MAILLE' ),),
1166              GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1167              MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1168              IMPE            =SIMP(statut='o',typ='R' ),
1169            ),
1170          
1171          
1172            FLUX_THM_REP    =FACT(statut='f',min=01,max='**',
1173              regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),
1174                      AU_MOINS_UN('FLUN','FLUN_HYDR1','FLUN_HYDR2'),),
1175              TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1176              GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1177              MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1178              FLUN            =SIMP(statut='f',typ='R' ),
1179              FLUN_HYDR1      =SIMP(statut='f',typ='R' ),
1180              FLUN_HYDR2      =SIMP(statut='f',typ='R' ),
1181            ),
1182          
1183          EFFE_FOND       =FACT(statut='f',fr="Imposer un effet de fond",min=01,max='**',
1184            regles=(UN_PARMI('GROUP_MA','MAILLE'),),
1185            GROUP_MA_INT    =SIMP(statut='o',typ=grma,max='**'),
1186            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1187            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1188            PRES            =SIMP(statut='o',typ='R' ),
1189          ),
1190          
1191          LIAISON_UNIL_NO =FACT(statut='f',min=01,max='**',
1192            regles=(UN_PARMI('GROUP_MA_1','MAILLE_1'),
1193                    UN_PARMI('GROUP_MA_2','MAILLE_2'),),
1194            GROUP_MA_1      =SIMP(statut='f',typ=grma,max='**'),# CO()
1195            MAILLE_1        =SIMP(statut='f',typ=ma,max='**'),# CO()
1196            GROUP_MA_2      =SIMP(statut='f',typ=grma,max='**'),# CO()
1197            MAILLE_2        =SIMP(statut='f',typ=ma,max='**'),# CO()
1198            SOMMET          =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1199            TRAN            =SIMP(statut='f',typ='R',max=03 ),  
1200            ANGL_NAUT       =SIMP(statut='f',typ='R',max=03 ),  
1201            CENTRE          =SIMP(statut='f',typ='R',max=03 ),  
1202            ANGLE_MAX       =SIMP(statut='f',typ='R' ),  
1203            FROTTEMENT      =SIMP(statut='f',typ='TXM',defaut="SANS",   
1204                                  into=("SANS","TRESCA","COULOMB") ),
1205            METHODE         =SIMP(statut='f',typ='TXM',defaut="CONTRAINTE",    
1206                                  into=("CONTRAINTE","LAGRANGIEN","PENALISATION") ),
1207            COULOMB         =SIMP(statut='f',typ='R' ),  
1208            TRESCA          =SIMP(statut='f',typ='R' ),  
1209            E_T             =SIMP(statut='f',typ='R' ),  
1210            COEF_MATR_FROT  =SIMP(statut='f',typ='R',defaut= 0.E+0 ),  
1211            CONTACT         =SIMP(statut='f',typ='TXM',into=("MAINTENU",) ),
1212            JEU             =SIMP(statut='f',typ='R',defaut= 0.E+0 ),  
1213          ),
1214          
1215          CONTACT         =FACT(statut='f',fr="Imposer du contact avec ou sans frottement",min=01,max='**',
1216            regles=(UN_PARMI('GROUP_MA_2','MAILLE_2'),
1217                    ENSEMBLE('FROTTEMENT','COULOMB'),
1218                                  EXCLUS('DIST_2','COEF_IMPO'),
1219                    EXCLUS('DIST_1','COEF_IMPO'),
1220                    EXCLUS('COEF_MULT_2','GROUP_MA_1'),
1221                    EXCLUS('COEF_MULT_2','MAILLE_1'),
1222                    EXCLUS('COEF_IMPO','GROUP_MA_1'),
1223                    EXCLUS('COEF_IMPO','MAILLE_1'),),
1224            NOM_CHAM        =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL","PRES","TEMP")),
1225            APPARIEMENT     =SIMP(statut='f',typ='TXM',defaut="MAIT_ESCL",
1226                                  into=("NON","NODAL","NODAL_SYME","MAIT_ESCL","MAIT_ESCL_SYME")),
1227            RECHERCHE       =SIMP(statut='f',typ='TXM',defaut="NOEUD_VOISIN",into=("NOEUD_BOUCLE","NOEUD_VOISIN")),
1228            REAC_GEOM_INTE  =SIMP(statut='f',typ='I',defaut= 2),
1229            METHODE         =SIMP(statut='f',typ='TXM',defaut="CONTRAINTE",    
1230                                  into=("CONTRAINTE","LAGRANGIEN","PENALISATION") ),           
1231            FROTTEMENT      =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SANS","COULOMB",) ), 
1232            COULOMB         =SIMP(statut='f',typ='R',max=1),
1233            E_T             =SIMP(statut='f',typ='R' ),  
1234            COEF_MATR_FROT  =SIMP(statut='f',typ='R',defaut= 0.E+0 ),  
1235            VECT_NORM_2     =SIMP(statut='f',typ='R',max=03),
1236            PROJECTION      =SIMP(statut='f',typ='TXM',defaut="LINEAIRE",into=("LINEAIRE",) ),
1237            GROUP_MA_1      =SIMP(statut='f',typ=grma,max='**'),
1238            MAILLE_1        =SIMP(statut='f',typ=ma,max='**'),
1239            GROUP_MA_2      =SIMP(statut='f',typ=grma,max='**'),
1240            MAILLE_2        =SIMP(statut='f',typ=ma,max='**'),
1241            SANS_NOEUD      =SIMP(statut='f',typ=no,max='**'),
1242            SANS_GROUP_NO   =SIMP(statut='f',typ=grno,max='**'),
1243            DIST_1          =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
1244            DIST_2          =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
1245            COEF_IMPO       =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
1246            COEF_MULT_2     =SIMP(statut='f',typ='R',defaut= 1. ),
1247          ),
1248          
1249          RELA_CINE_BP    =FACT(statut='f',min=01,max='**',
1250            CABLE_BP        =SIMP(statut='o',typ=cabl_precont ),
1251            SIGM_BPEL       =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
1252            RELA_CINE       =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
1253          ),
1254          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
1255 )  ;
1256 #& MODIF COMMANDE  DATE 17/05/2000   AUTEUR CIBHHLV L.VIVAN
1257 AFFE_CHAR_MECA_C=OPER(nom="AFFE_CHAR_MECA_C",op=   7,sd_prod=char_meca,
1258                      fr="Affectation de charges et conditions aux limites mécaniques complexes",
1259                      docu="U4.44.05-C",reentrant='n',
1260          regles=(AU_MOINS_UN('DDL_IMPO','FORCE_POUTRE','LIAISON_DDL', ),),
1261          MODELE          =SIMP(statut='o',typ=modele ),
1262          VERI_DDL        =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
1263          TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400. ),
1264          DDL_IMPO        =FACT(statut='f',min=01,max='**',
1265            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD',),
1266                    AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI', ),),
1267            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1268            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1269            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1270            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
1271            NOEUD           =SIMP(statut='f',typ=no,max='**'),
1272            DX              =SIMP(statut='f',typ='C' ),
1273            DY              =SIMP(statut='f',typ='C' ),
1274            DZ              =SIMP(statut='f',typ='C' ),
1275            DRX             =SIMP(statut='f',typ='C' ),
1276            DRY             =SIMP(statut='f',typ='C' ),
1277            DRZ             =SIMP(statut='f',typ='C' ),
1278            GRX             =SIMP(statut='f',typ='C' ),
1279            PRES            =SIMP(statut='f',typ='C' ),
1280            PHI             =SIMP(statut='f',typ='C' ),
1281          ),
1282          FORCE_POUTRE    =FACT(statut='f',min=01,max='**',
1283            regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE',),
1284                    AU_MOINS_UN('FX','FY','FZ','N','VY','VZ',),
1285                    PRESENT_ABSENT('FX','N','VY','VZ',),
1286                    PRESENT_ABSENT('FY','N','VY','VZ',),
1287                    PRESENT_ABSENT('FZ','N','VY','VZ',),
1288                    PRESENT_ABSENT('N','FX','FY','FZ',),
1289                    PRESENT_ABSENT('VY', 'FX','FY','FZ',),
1290                    PRESENT_ABSENT('VZ','FX','FY','FZ', ),),
1291            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1292            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1293            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1294            TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FORCE",into=("VENT","FORCE") ),
1295            FX              =SIMP(statut='f',typ='C' ),
1296            FY              =SIMP(statut='f',typ='C' ),
1297            FZ              =SIMP(statut='f',typ='C' ),
1298            N               =SIMP(statut='f',typ='C' ),
1299            VY              =SIMP(statut='f',typ='C' ),
1300            VZ              =SIMP(statut='f',typ='C' ),
1301          ),
1302          LIAISON_DDL     =FACT(statut='f',min=01,max='**',
1303            regles=(UN_PARMI('GROUP_NO','NOEUD', ),),
1304            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
1305            NOEUD           =SIMP(statut='f',typ=no,max='**'),
1306            DDL             =SIMP(statut='o',typ='TXM',max='**'),
1307            COEF_MULT       =SIMP(statut='o',typ='R',max='**'),
1308            COEF_IMPO       =SIMP(statut='o',typ='C' ),
1309          ),
1310          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
1311 )  ;
1312 #& MODIF COMMANDE  DATE 03/10/2000   AUTEUR UFBHHLL C.CHAVANT 
1313 AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca,
1314                       fr="Affectation de charges et conditions aux limites mécaniques fonction d une grandeur (temps, ...)",
1315                       docu="U4.44.01-F",reentrant='n',
1316         regles=(AU_MOINS_UN('DDL_IMPO','FACE_IMPO','LIAISON_DDL','FORCE_NODALE',
1317                             'FORCE_FACE','FORCE_ARETE','FORCE_CONTOUR','FORCE_INTERNE',
1318                             'PRES_REP','FORCE_POUTRE','VITE_FACE','IMPE_FACE','ONDE_PLANE',
1319                             'LIAISON_OBLIQUE','EPSI_INIT','LIAISON_GROUP','LIAISON_UNIF',
1320                             'LIAISON_SOLIDE','FORCE_COQUE','LIAISON_COQUE','FORCE_TUYAU',
1321                             'CONTACT'),),
1322          MODELE          =SIMP(statut='o',typ=modele ),
1323          VERI_DDL        =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
1324          VERI_NORM       =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),         
1325          TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400. ),
1326          
1327          DDL_IMPO        =FACT(statut='f',min=01,max='**',
1328            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'),
1329                    AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI',
1330                                'TEMP','PRE1','PRE2'),),
1331            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1332            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1333            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1334            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
1335            NOEUD           =SIMP(statut='f',typ=no,max='**'),
1336            DX              =SIMP(statut='f',typ=(fonction) ),
1337            DY              =SIMP(statut='f',typ=(fonction) ),
1338            DZ              =SIMP(statut='f',typ=(fonction) ),
1339            DRX             =SIMP(statut='f',typ=(fonction) ),
1340            DRY             =SIMP(statut='f',typ=(fonction) ),
1341            DRZ             =SIMP(statut='f',typ=(fonction) ),
1342            GRX             =SIMP(statut='f',typ=(fonction) ),
1343            PRES            =SIMP(statut='f',typ=(fonction) ),
1344            PHI             =SIMP(statut='f',typ=(fonction) ),
1345            TEMP            =SIMP(statut='f',typ=(fonction) ),
1346            PRE1            =SIMP(statut='f',typ=(fonction) ),
1347            PRE2            =SIMP(statut='f',typ=(fonction) ),
1348          ),
1349          LIAISON_UNIF    =FACT(statut='f',min=01,max='**',
1350                                fr="Imposer une meme valeur (inconnue) à des ddls d un emsemble de noeuds",
1351            regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),),
1352            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1353            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1354            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
1355            NOEUD           =SIMP(statut='f',typ=no,max='**'),
1356            DDL             =SIMP(statut='o',typ='TXM',max='**'),
1357          ),
1358          LIAISON_SOLIDE  =FACT(statut='f',min=01,max='**',
1359                                fr="Modéliser une partie indéformable d une structure",
1360            regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),),
1361            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1362            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1363            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
1364            NOEUD           =SIMP(statut='f',typ=no,max='**'),
1365            NUME_LAGR       =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES",) ),
1366          ),
1367          LIAISON_OBLIQUE =FACT(statut='f',min=01,max='**',
1368                                fr="Définir des relations linéaires entre certains ddls de couples de noeuds",
1369            regles=(UN_PARMI('GROUP_NO','NOEUD'),
1370                    UN_PARMI('DX','DY','DZ','DRX','DRY','DRZ'),),
1371            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
1372            NOEUD           =SIMP(statut='f',typ=no,max='**'),
1373            ANGL_NAUT       =SIMP(statut='o',typ='R',max=03),
1374            DX              =SIMP(statut='f',typ=(fonction) ),
1375            DY              =SIMP(statut='f',typ=(fonction) ),
1376            DZ              =SIMP(statut='f',typ=(fonction) ),
1377            DRX             =SIMP(statut='f',typ=(fonction) ),
1378            DRY             =SIMP(statut='f',typ=(fonction) ),
1379            DRZ             =SIMP(statut='f',typ=(fonction) ),
1380          ),
1381          LIAISON_COQUE   =FACT(statut='f',min=01,max='**',
1382            GROUP_MA_1      =SIMP(statut='f',typ=grma,max='**'),
1383            MAILLE_1        =SIMP(statut='f',typ=ma,max='**'),
1384            GROUP_NO_1      =SIMP(statut='f',typ=grno,max='**'),
1385            NOEUD_1         =SIMP(statut='f',typ=no,max='**'),
1386            GROUP_MA_2      =SIMP(statut='f',typ=grma,max='**'),
1387            MAILLE_2        =SIMP(statut='f',typ=ma,max='**'),
1388            GROUP_NO_2      =SIMP(statut='f',typ=grno,max='**'),
1389            NOEUD_2         =SIMP(statut='f',typ=no,max='**'),
1390            NUME_LAGR       =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES",) ),
1391          ),
1392          FACE_IMPO       =FACT(statut='f',min=01,max='**',
1393            regles=(UN_PARMI('GROUP_MA','MAILLE'),
1394                    AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI','TEMP','PRE1','PRE2','DNOR','DTAN'),
1395                    EXCLUS('DNOR','DX'),
1396                    EXCLUS('DNOR','DY'),
1397                    EXCLUS('DNOR','DZ'),
1398                    EXCLUS('DNOR','DRX'),
1399                    EXCLUS('DNOR','DRY'),
1400                    EXCLUS('DNOR','DRZ'),
1401                    EXCLUS('DTAN','DX'),
1402                    EXCLUS('DTAN','DY'),
1403                    EXCLUS('DTAN','DZ'),
1404                    EXCLUS('DTAN','DRX'),
1405                    EXCLUS('DTAN','DRY'),
1406                    EXCLUS('DTAN','DRZ'),),
1407 #  rajout d un mot cle REPERE : / GLOBAL / LOCAL
1408            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1409            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1410            DX              =SIMP(statut='f',typ=(fonction) ),
1411            DY              =SIMP(statut='f',typ=(fonction) ),
1412            DZ              =SIMP(statut='f',typ=(fonction) ),
1413            DRX             =SIMP(statut='f',typ=(fonction) ),
1414            DRY             =SIMP(statut='f',typ=(fonction) ),
1415            DRZ             =SIMP(statut='f',typ=(fonction) ),
1416            GRX             =SIMP(statut='f',typ=(fonction) ),
1417            PRES            =SIMP(statut='f',typ=(fonction) ),
1418            PHI             =SIMP(statut='f',typ=(fonction) ),
1419            TEMP            =SIMP(statut='f',typ=(fonction) ),
1420            PRE1            =SIMP(statut='f',typ=(fonction) ),
1421            PRE2            =SIMP(statut='f',typ=(fonction) ),
1422            DNOR            =SIMP(statut='f',typ=(fonction) ),
1423            DTAN            =SIMP(statut='f',typ=(fonction) ),
1424          ),
1425          LIAISON_DDL     =FACT(statut='f',min=01,max='**',fr="Définir une relation linéaire entre des ddls de deux ou plusieurs noeuds",
1426            regles=(UN_PARMI('GROUP_NO','NOEUD'),),
1427            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
1428            NOEUD           =SIMP(statut='f',typ=no,max='**'),
1429            DDL             =SIMP(statut='o',typ='TXM',max='**'),
1430            COEF_MULT       =SIMP(statut='o',typ='R',max='**'),
1431            COEF_IMPO       =SIMP(statut='o',typ=(fonction) ),
1432          ),
1433          LIAISON_GROUP   =FACT(statut='f',min=01,max='**',
1434                                fr="Définir des relations linéaires entre certains ddls de couples de noeuds",
1435            regles=(UN_PARMI('GROUP_MA_1','MAILLE_1','GROUP_NO_1','NOEUD_1'),
1436                    UN_PARMI('GROUP_MA_2','MAILLE_2','GROUP_NO_2','NOEUD_2'),
1437                    EXCLUS('GROUP_MA_1','GROUP_NO_2'),
1438                    EXCLUS('GROUP_MA_1','NOEUD_2'),
1439                    EXCLUS('GROUP_NO_1','GROUP_MA_2'),
1440                    EXCLUS('GROUP_NO_1','MAILLE_2'),
1441                    EXCLUS('MAILLE_1','GROUP_NO_2'),
1442                    EXCLUS('MAILLE_1','NOEUD_2'),
1443                    EXCLUS('NOEUD_1','GROUP_MA_2'),
1444                    EXCLUS('NOEUD_1','MAILLE_2'),
1445                    EXCLUS('SANS_NOEUD','SANS_GROUP_NO'),),
1446            GROUP_MA_1      =SIMP(statut='f',typ=grma,max='**'),
1447            MAILLE_1        =SIMP(statut='f',typ=ma,max='**'), 
1448            GROUP_NO_1      =SIMP(statut='f',typ=grno,max='**'),
1449            NOEUD_1         =SIMP(statut='f',typ=no,max='**'), 
1450            GROUP_MA_2      =SIMP(statut='f',typ=grma,max='**'),
1451            MAILLE_2        =SIMP(statut='f',typ=ma,max='**'), 
1452            GROUP_NO_2      =SIMP(statut='f',typ=grno,max='**'),
1453            NOEUD_2         =SIMP(statut='f',typ=no,max='**'), 
1454            SANS_NOEUD      =SIMP(statut='f',typ=no,max='**'), 
1455            SANS_GROUP_NO   =SIMP(statut='f',typ=grno,max='**'),
1456            DDL_1           =SIMP(statut='o',typ='TXM',max='**'),
1457            COEF_MULT_1     =SIMP(statut='o',typ='R',max='**'),
1458            DDL_2           =SIMP(statut='o',typ='TXM',max='**'),
1459            COEF_MULT_2     =SIMP(statut='o',typ='R',max='**'),
1460            COEF_IMPO       =SIMP(statut='o',typ=(fonction) ),
1461            SOMMET          =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1462            TRAN            =SIMP(statut='f',typ='R',max=03),
1463            ANGL_NAUT       =SIMP(statut='f',typ='R',max=03),
1464            CENTRE          =SIMP(statut='f',typ='R',max=03),
1465          ),
1466          
1467          FORCE_NODALE    =FACT(statut='f',min=01,max='**',
1468            regles=(UN_PARMI('GROUP_NO','NOEUD'),
1469                    AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),),
1470            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
1471            NOEUD           =SIMP(statut='f',typ=no,max='**'),
1472            FX              =SIMP(statut='f',typ=(fonction) ),
1473            FY              =SIMP(statut='f',typ=(fonction) ),
1474            FZ              =SIMP(statut='f',typ=(fonction) ),
1475            MX              =SIMP(statut='f',typ=(fonction) ),
1476            MY              =SIMP(statut='f',typ=(fonction) ),
1477            MZ              =SIMP(statut='f',typ=(fonction) ),
1478            ANGL_NAUT       =SIMP(statut='f',typ=(fonction),max=03 ),
1479          ),
1480          FORCE_INTERNE   =FACT(statut='f',min=01,max='**',
1481            regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),
1482                    AU_MOINS_UN('FX','FY','FZ'),),
1483            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1484            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1485            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1486            FX              =SIMP(statut='f',typ=(fonction) ),
1487            FY              =SIMP(statut='f',typ=(fonction) ),
1488            FZ              =SIMP(statut='f',typ=(fonction) ),
1489          ),
1490          FORCE_FACE      =FACT(statut='f',min=01,max='**',
1491            regles=(UN_PARMI('GROUP_MA','MAILLE'),
1492                    AU_MOINS_UN('FX','FY','FZ'),),
1493            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1494            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1495            FX              =SIMP(statut='f',typ=(fonction) ),
1496            FY              =SIMP(statut='f',typ=(fonction) ),
1497            FZ              =SIMP(statut='f',typ=(fonction) ),
1498          ),
1499          FORCE_ARETE     =FACT(statut='f',min=01,max='**',
1500            regles=(UN_PARMI('GROUP_MA','MAILLE'),
1501                    AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),),
1502            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1503            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1504            FX              =SIMP(statut='f',typ=(fonction) ),
1505            FY              =SIMP(statut='f',typ=(fonction) ),
1506            FZ              =SIMP(statut='f',typ=(fonction) ),
1507            MX              =SIMP(statut='f',typ=(fonction) ),
1508            MY              =SIMP(statut='f',typ=(fonction) ),
1509            MZ              =SIMP(statut='f',typ=(fonction) ),
1510          ),
1511          FORCE_CONTOUR   =FACT(statut='f',min=01,max='**',
1512            regles=(UN_PARMI('GROUP_MA','MAILLE'),
1513                    AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),),
1514            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1515            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1516            FX              =SIMP(statut='f',typ=(fonction) ),
1517            FY              =SIMP(statut='f',typ=(fonction) ),
1518            FZ              =SIMP(statut='f',typ=(fonction) ),
1519            MX              =SIMP(statut='f',typ=(fonction) ),
1520            MY              =SIMP(statut='f',typ=(fonction) ),
1521            MZ              =SIMP(statut='f',typ=(fonction) ),
1522          ),
1523          PRES_REP        =FACT(statut='f',min=01,max='**',
1524            regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),
1525                    AU_MOINS_UN('PRES','CISA_2D'),),
1526            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1527            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1528            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1529            PRES            =SIMP(statut='f',typ=(fonction) ),
1530            CISA_2D         =SIMP(statut='f',typ=(fonction) ),
1531          ),
1532          
1533          FORCE_COQUE     =FACT(statut='f',min=01,max='**',
1534            regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),
1535                    AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ','PRES','F1','F2','F3','MF1','MF2'),
1536                    PRESENT_ABSENT('FX','PRES','F1','F2','F3','MF1','MF2'),
1537                    PRESENT_ABSENT('FY','PRES','F1','F2','F3','MF1','MF2'),
1538                    PRESENT_ABSENT('FZ','PRES','F1','F2','F3','MF1','MF2'),
1539                    PRESENT_ABSENT('MX','PRES','F1','F2','F3','MF1','MF2'),
1540                    PRESENT_ABSENT('MY','PRES','F1','F2','F3','MF1','MF2'),
1541                    PRESENT_ABSENT('MZ','PRES','F1','F2','F3','MF1','MF2'),
1542                    PRESENT_ABSENT('F1','PRES','FX','FY','FZ','MX','MY','MZ'),
1543                    PRESENT_ABSENT('F2','PRES','FX','FY','FZ','MX','MY','MZ'),
1544                    PRESENT_ABSENT('F3','PRES','FX','FY','FZ','MX','MY','MZ'),
1545                    PRESENT_ABSENT('MF1','PRES','FX','FY','FZ','MX','MY','MZ'),
1546                    PRESENT_ABSENT('MF2','PRES','FX','FY','FZ','MX','MY','MZ'),
1547                    PRESENT_ABSENT('PRES','FX','FY','FZ','MX','MY','MZ','F1','F2','F3','MF1','MF2'),),
1548 #  rajout d un mot cle REPERE : / GLOBAL / LOCAL
1549            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1550            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1551            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1552            FX              =SIMP(statut='f',typ=(fonction) ),
1553            FY              =SIMP(statut='f',typ=(fonction) ),
1554            FZ              =SIMP(statut='f',typ=(fonction) ),
1555            MX              =SIMP(statut='f',typ=(fonction) ),
1556            MY              =SIMP(statut='f',typ=(fonction) ),
1557            MZ              =SIMP(statut='f',typ=(fonction) ),
1558            F1              =SIMP(statut='f',typ=(fonction) ),
1559            F2              =SIMP(statut='f',typ=(fonction) ),
1560            F3              =SIMP(statut='f',typ=(fonction) ),
1561            MF1             =SIMP(statut='f',typ=(fonction) ),
1562            MF2             =SIMP(statut='f',typ=(fonction) ),
1563            PRES            =SIMP(statut='f',typ=(fonction) ),
1564            PLAN            =SIMP(statut='f',typ='TXM',defaut="MAIL",
1565                                  into=("SUP","INF","MOY","MAIL") ),
1566          ),
1567          FORCE_POUTRE    =FACT(statut='f',min=01,max='**',
1568            regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),
1569                    AU_MOINS_UN('FX','FY','FZ','N','VY','VZ'),
1570                    PRESENT_ABSENT('FX','N','VY','VZ'),
1571                    PRESENT_ABSENT('FY','N','VY','VZ'),
1572                    PRESENT_ABSENT('FZ','N','VY','VZ'),
1573                    PRESENT_ABSENT('N','FX','FY','FZ'),
1574                    PRESENT_ABSENT('VY','FX','FY','FZ'),
1575                    PRESENT_ABSENT('VZ','FX','FY','FZ'),),
1576 #  rajout d un mot cle REPERE : / GLOBAL / LOCAL                   
1577            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1578            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1579            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1580            TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FORCE",into=("VENT","FORCE") ),
1581            FX              =SIMP(statut='f',typ=(fonction) ),
1582            FY              =SIMP(statut='f',typ=(fonction) ),
1583            FZ              =SIMP(statut='f',typ=(fonction) ),
1584            N               =SIMP(statut='f',typ=(fonction) ),
1585            VY              =SIMP(statut='f',typ=(fonction) ),
1586            VZ              =SIMP(statut='f',typ=(fonction) ),
1587          ),
1588          FORCE_TUYAU     =FACT(statut='f',min=01,max='**',
1589            regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),),
1590            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1591            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1592            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1593            PRES            =SIMP(statut='f',typ=(fonction) ),
1594          ),
1595          VITE_FACE       =FACT(statut='f',min=01,max='**',
1596            regles=(UN_PARMI('GROUP_MA','MAILLE'),),
1597            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1598            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1599            VNOR            =SIMP(statut='o',typ=(fonction) ),
1600          ),
1601          IMPE_FACE       =FACT(statut='f',min=01,max='**',
1602            regles=(UN_PARMI('GROUP_MA','MAILLE'),),
1603            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1604            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1605            IMPE            =SIMP(statut='o',typ=(fonction) ),
1606          ),
1607          ONDE_PLANE      =FACT(statut='f',min=01,max='**',
1608            DIRECTION       =SIMP(statut='o',typ='R',max='**'),
1609            TYPE_ONDE       =SIMP(statut='o',typ='TXM' ),
1610            FONC_SIGNAL     =SIMP(statut='o',typ=(fonction) ),
1611            DIST_ORIG       =SIMP(statut='o',typ='R' ),
1612          ),
1613          EPSI_INIT       =FACT(statut='f',min=01,max='**',
1614            regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),
1615                    AU_MOINS_UN('EPXX','EPYY','EPZZ','EPXY','EPXZ','EPYZ'),),
1616            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1617            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1618            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1619            EPXX            =SIMP(statut='f',typ=(fonction) ),
1620            EPYY            =SIMP(statut='f',typ=(fonction) ),
1621            EPZZ            =SIMP(statut='f',typ=(fonction) ),
1622            EPXY            =SIMP(statut='f',typ=(fonction) ),
1623            EPXZ            =SIMP(statut='f',typ=(fonction) ),
1624            EPYZ            =SIMP(statut='f',typ=(fonction) ),
1625          ),
1626          
1627          CONTACT         =FACT(statut='f',min=01,max='**',
1628            regles=(UN_PARMI('GROUP_MA_2','MAILLE_2'),
1629                    ENSEMBLE('FROTTEMENT','COULOMB'),
1630                    EXCLUS('DIST_2','COEF_IMPO'),
1631                    EXCLUS('DIST_1','COEF_IMPO'),
1632                    EXCLUS('COEF_MULT_2','GROUP_MA_1'),
1633                    EXCLUS('COEF_MULT_2','MAILLE_1'),
1634                    EXCLUS('COEF_IMPO','GROUP_MA_1'),
1635                    EXCLUS('COEF_IMPO','MAILLE_1'),),
1636            NOM_CHAM        =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL","PRES","TEMP") ),
1637            APPARIEMENT     =SIMP(statut='f',typ='TXM',defaut="MAIT_ESCL",
1638                                  into=("NON","NODAL","NODAL_SYME","MAIT_ESCL","MAIT_ESCL_SYME") ),
1639            RECHERCHE       =SIMP(statut='f',typ='TXM',defaut="NOEUD_VOISIN",
1640                                  into=("NOEUD_BOUCLE","NOEUD_VOISIN") ),
1641            METHODE         =SIMP(statut='f',typ='TXM',defaut="CONTRAINTE",    
1642                                  into=("CONTRAINTE","LAGRANGIEN","PENALISATION") ),           
1643            FROTTEMENT      =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SANS","COULOMB",) ), 
1644            COULOMB         =SIMP(statut='f',typ='R',max=1),
1645            E_T             =SIMP(statut='f',typ='R' ),  
1646            COEF_MATR_FROT  =SIMP(statut='f',typ='R',defaut= 0.E+0 ),  
1647            VECT_NORM_2     =SIMP(statut='f',typ='R',max=03),
1648            PROJECTION      =SIMP(statut='f',typ='TXM',defaut="LINEAIRE",into=("LINEAIRE",) ),
1649            GROUP_MA_1      =SIMP(statut='f',typ=grma,max='**'),
1650            MAILLE_1        =SIMP(statut='f',typ=ma,max='**'  ),
1651            GROUP_MA_2      =SIMP(statut='f',typ=grma,max='**'),
1652            MAILLE_2        =SIMP(statut='f',typ=ma,max='**'  ),
1653            SANS_NOEUD      =SIMP(statut='f',typ=no,max='**'  ),
1654            SANS_GROUP_NO   =SIMP(statut='f',typ=grno,max='**'),
1655            DIST_1          =SIMP(statut='f',typ=(fonction) ),
1656            DIST_2          =SIMP(statut='f',typ=(fonction) ),
1657            COEF_IMPO       =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
1658            COEF_MULT_2     =SIMP(statut='f',typ='R',defaut= 1.E+0 ),
1659          ),
1660          FLUX_THM_REP    =FACT(statut='f',min=01,max='**',
1661            regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),
1662                    AU_MOINS_UN('FLUN','FLUN_HYDR1','FLUN_HYDR2'),),
1663            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1664            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1665            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1666            FLUN            =SIMP(statut='f',typ=(fonction) ),
1667            FLUN_HYDR1      =SIMP(statut='f',typ=(fonction) ),
1668            FLUN_HYDR2      =SIMP(statut='f',typ=(fonction) ),
1669          ),
1670          
1671          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
1672 )  ;
1673 #& MODIF COMMANDE  DATE 17/11/1999   AUTEUR CIBHHGB G.BERTRAND 
1674 AFFE_CHAR_OPS011=OPER(nom="AFFE_CHAR_OPS011",op= 190,sd_prod=char_ther,
1675                       fr=" ",
1676                       docu="          ",reentrant='n',
1677          regles=(AU_MOINS_UN('CARA_TORSION', ),),
1678          MODELE          =SIMP(statut='o',typ=modele ),
1679          VERI_DDL        =SIMP(statut='f',typ='TXM',defaut="OUI",    
1680                                into=("OUI","NON") ),
1681          TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400. ),  
1682          CARA_TORSION    =FACT(statut='f',min=01,max='**',
1683            regles=(UN_PARMI('TOUT','GROUP_MA'),),
1684            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1685            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1686          ),
1687          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
1688 )  ;
1689 #& MODIF COMMANDE  DATE 28/11/2000   AUTEUR CIBHHLV L.VIVAN 
1690 AFFE_CHAR_THER=OPER(nom="AFFE_CHAR_THER",op=34,sd_prod=char_ther
1691                     ,fr="Affectation de charges et conditions aux limites thermiques constantes",
1692                     docu="U4.44.02-F",reentrant='n',
1693       regles=(AU_MOINS_UN('TEMP_IMPO','SOURCE','FLUX_REP','ECHANGE',
1694                           'ECHANGE_PAROI','GRAD_TEMP_INIT','LIAISON_DDL','LIAISON_GROUP',
1695                           'LIAISON_UNIF','LIAISON_CHAMNO','RAYONNEMENT','LIAISON_MAIL' ),),
1696          MODELE          =SIMP(statut='o',typ=(modele) ),
1697          VERI_DDL        =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="OUI"),
1698          TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400. ),
1699          LIAISON_DDL     =FACT(statut='f',min=01,max='**',
1700            regles=(UN_PARMI('GROUP_NO','NOEUD', ),),
1701            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
1702            NOEUD           =SIMP(statut='f',typ=no,max='**'),
1703            DDL             =SIMP(statut='f',typ='TXM',max='**',
1704                                  into=("TEMP","TEMP_INF","TEMP_SUP") ),
1705            COEF_MULT       =SIMP(statut='o',typ='R',max='**'),
1706            COEF_IMPO       =SIMP(statut='o',typ='R' ),
1707          ),
1708          TEMP_IMPO       =FACT(statut='f',min=01,max='**',
1709            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'),
1710                    AU_MOINS_UN('TEMP_SUP','TEMP','TEMP_INF'),),
1711            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1712            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1713            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1714            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
1715            NOEUD           =SIMP(statut='f',typ=no,max='**'),
1716            TEMP            =SIMP(statut='f',typ='R'),
1717            TEMP_INF        =SIMP(statut='f',typ='R'),
1718            TEMP_SUP        =SIMP(statut='f',typ='R'), ),
1719          LIAISON_UNIF    =FACT(statut='f',min=01,max='**',
1720            regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),),
1721            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
1722            NOEUD           =SIMP(statut='f',typ=no,max='**'),
1723            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1724            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1725            DDL             =SIMP(statut='f',typ='TXM',max='**',defaut="TEMP",
1726                                  into=("TEMP","TEMP_INF","TEMP_SUP") ),
1727          ),
1728          LIAISON_CHAMNO  =FACT(statut='f',min=01,max='**',
1729            CHAM_NO         =SIMP(statut='o',typ=cham_no),# CO()# "il faut definir une structure de donnee generique chamno"
1730            COEF_IMPO       =SIMP(statut='o',typ='R' ),
1731            NUME_LAGR       =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES") ),
1732          ),
1733          SOURCE          =FACT(statut='f',min=01,max='**',
1734            regles=(UN_PARMI('SOUR','SOUR_CALCULEE',),
1735                         PRESENT_ABSENT('SOUR_CALCULEE','TOUT','GROUP_MA','MAILLE'),),
1736            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1737            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1738            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1739            SOUR            =SIMP(statut='f',typ='R'),
1740            SOUR_CALCULEE   =SIMP(statut='f',typ=(cham_elem_sour_r) ),
1741          ),
1742          FLUX_REP        =FACT(statut='f',min=01,max='**',
1743            regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),
1744                         AU_MOINS_UN('FLUN','FLUN_INF','FLUN_SUP','CARA_TORSION') ),
1745            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1746            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1747            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1748            FLUN            =SIMP(statut='f',typ='R'),
1749            FLUN_INF        =SIMP(statut='f',typ='R'),
1750            FLUN_SUP        =SIMP(statut='f',typ='R'),
1751            CARA_TORSION    =SIMP(statut='f',typ=tabl_aire_int ),
1752          ),
1753          ECHANGE         =FACT(statut='f',min=01,max='**',
1754            regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),
1755                         AU_MOINS_UN('COEF_H','COEF_H_INF','COEF_H_SUP'),
1756                              ENSEMBLE('COEF_H','TEMP_EXT',),
1757                    ENSEMBLE('COEF_H_INF','TEMP_EXT_INF'),
1758                              ENSEMBLE('COEF_H_SUP','TEMP_EXT_SUP'),),
1759            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1760            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1761            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1762            COEF_H          =SIMP(statut='f',typ='R'),
1763            TEMP_EXT        =SIMP(statut='f',typ='R'),
1764            COEF_H_INF      =SIMP(statut='f',typ='R'),
1765            TEMP_EXT_INF    =SIMP(statut='f',typ='R'),
1766            COEF_H_SUP      =SIMP(statut='f',typ='R'),
1767            TEMP_EXT_SUP    =SIMP(statut='f',typ='R'),
1768          ),
1769          ECHANGE_PAROI   =FACT(statut='f',min=01,max='**',
1770            regles=(UN_PARMI('GROUP_MA_1','MAILLE_1'),
1771                         UN_PARMI('GROUP_MA_2','MAILLE_2'),),
1772            GROUP_MA_1      =SIMP(statut='f',typ=grma,max='**'),
1773            MAILLE_1        =SIMP(statut='f',typ=ma,max='**'),
1774            GROUP_MA_2      =SIMP(statut='f',typ=grma,max='**'),
1775            MAILLE_2        =SIMP(statut='f',typ=ma,max='**'),
1776            COEF_H          =SIMP(statut='o',typ='R'),
1777            TRAN            =SIMP(statut='f',typ='R',max='**'),
1778            ANGL_NAUT       =SIMP(statut='f',typ='R',max='**'),
1779            CENTRE          =SIMP(statut='f',typ='R',max='**'),
1780                          ),
1781          GRAD_TEMP_INIT  =FACT(statut='f',min=01,max='**',
1782            regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),
1783                         AU_MOINS_UN('FLUX_X','FLUX_Y','FLUX_Z'),),
1784            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1785            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1786            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1787            FLUX_X          =SIMP(statut='f',typ='R' ),
1788            FLUX_Y          =SIMP(statut='f',typ='R' ),
1789            FLUX_Z          =SIMP(statut='f',typ='R' ),
1790                          ),
1791          LIAISON_GROUP   =FACT(statut='f',min=01,max='**',
1792            regles=(UN_PARMI('GROUP_MA_1','MAILLE_1','GROUP_NO_1','NOEUD_1'),
1793                    UN_PARMI('GROUP_MA_2','MAILLE_2','GROUP_NO_2','NOEUD_2'),
1794                              EXCLUS('GROUP_MA_1','GROUP_NO_2'),
1795                              EXCLUS('GROUP_MA_1','NOEUD_2'),
1796                    EXCLUS('GROUP_NO_1','GROUP_MA_2'),
1797                              EXCLUS('GROUP_NO_1','MAILLE_2'),
1798                              EXCLUS('MAILLE_1','GROUP_NO_2'),
1799                              EXCLUS('MAILLE_1','NOEUD_2'),
1800                              EXCLUS('NOEUD_1','GROUP_MA_2'),
1801                              EXCLUS('NOEUD_1','MAILLE_2'),
1802                              EXCLUS('SANS_NOEUD','SANS_GROUP_NO'),),
1803            GROUP_MA_1      =SIMP(statut='f',typ=grma,max='**'),
1804            MAILLE_1        =SIMP(statut='f',typ=ma,max='**'),
1805            GROUP_NO_1      =SIMP(statut='f',typ=grno,max='**'),
1806            NOEUD_1         =SIMP(statut='f',typ=no,max='**'),
1807            GROUP_MA_2      =SIMP(statut='f',typ=grma,max='**'),
1808            MAILLE_2        =SIMP(statut='f',typ=ma,max='**'),
1809            GROUP_NO_2      =SIMP(statut='f',typ=grno,max='**'),
1810            NOEUD_2         =SIMP(statut='f',typ=no,max='**'),
1811            SANS_NOEUD      =SIMP(statut='f',typ=no,max='**'),
1812            SANS_GROUP_NO   =SIMP(statut='f',typ=grno,max='**'),
1813            DDL_1           =SIMP(statut='f',typ='TXM',max='**',defaut="TEMP",
1814                                  into=("TEMP","TEMP_INF","TEMP_SUP") ),
1815            COEF_MULT_1     =SIMP(statut='o',typ='R',max='**'),
1816            DDL_2           =SIMP(statut='f',typ='TXM',max='**',defaut="TEMP",
1817                                  into=("TEMP","TEMP_INF","TEMP_SUP",) ),
1818            COEF_MULT_2     =SIMP(statut='o',typ='R',max='**'),
1819            COEF_IMPO       =SIMP(statut='o',typ='R' ),
1820            SOMMET          =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1821            TRAN            =SIMP(statut='f',typ='R',max='**'),
1822            ANGL_NAUT       =SIMP(statut='f',typ='R',max='**'),
1823            CENTRE          =SIMP(statut='f',typ='R',max='**'),
1824          ),
1825          CONVECTION      =FACT(statut='f',min=01,max='**',
1826            VITESSE         =SIMP(statut='o',typ=(cham_no_depl_r) ),
1827          ),
1828          RAYONNEMENT     =FACT(statut='f',min=01,max='**',
1829            regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE',),
1830                         ENSEMBLE('SIGMA','EPSILON','TEMP_EXT'),),
1831            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1832            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1833            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1834            SIGMA           =SIMP(statut='o',typ='R'),
1835            EPSILON         =SIMP(statut='o',typ='R'),
1836            TEMP_EXT        =SIMP(statut='o',typ='R'),
1837          ),
1838          LIAISON_MAIL    =FACT(statut='f',min=01,max='**',
1839            regles=(PRESENT_ABSENT('GROUP_MA_1','GROUP_MA_ESCL','MAILLE_ESCL',        
1840                                   'GROUP_NO_ESCL','NOEUD_ESCL'),
1841                    PRESENT_ABSENT('MAILLE_1','GROUP_MA_ESCL','MAILLE_ESCL','GROUP_NO_ESCL','NOEUD_ESCL'),     
1842                    PRESENT_ABSENT('GROUP_MA_2','GROUP_MA_MAIT','MAILLE_MAIT'),      
1843                    PRESENT_ABSENT('MAILLE_2','GROUP_MA_MAIT','MAILLE_MAIT'),        
1844                    PRESENT_ABSENT('GROUP_NO_2','GROUP_MA_MAIT','MAILLE_MAIT'),      
1845                    PRESENT_ABSENT('NOEUD_2','GROUP_MA_MAIT','MAILLE_MAIT'),         
1846                    AU_MOINS_UN('GROUP_MA_1','MAILLE_1','GROUP_MA_MAIT','MAILLE_MAIT'),
1847                    AU_MOINS_UN('GROUP_MA_2','MAILLE_2','GROUP_NO_2', 
1848                                'NOEUD_2','GROUP_MA_ESCL','MAILLE_ESCL','GROUP_NO_ESCL',          
1849                                'NOEUD_ESCL'),),
1850            GROUP_MA_1      =SIMP(statut='f',typ=grma,max='**'), 
1851            MAILLE_1        =SIMP(statut='f',typ=ma,max='**'),
1852            GROUP_MA_MAIT   =SIMP(statut='f',typ=grma,max='**'),
1853            MAILLE_MAIT     =SIMP(statut='f',typ=ma,max='**'),
1854            GROUP_MA_2      =SIMP(statut='f',typ=grma,max='**'),
1855            MAILLE_2        =SIMP(statut='f',typ=ma,max='**'),
1856            GROUP_NO_2      =SIMP(statut='f',typ=grno,max='**'),
1857            NOEUD_2         =SIMP(statut='f',typ=no,max='**'),
1858            GROUP_MA_ESCL   =SIMP(statut='f',typ=grma,max='**'),
1859            MAILLE_ESCL     =SIMP(statut='f',typ=ma,max='**'),
1860            GROUP_NO_ESCL   =SIMP(statut='f',typ=grno,max='**'),
1861            NOEUD_ESCL      =SIMP(statut='f',typ=no,max='**'),
1862            TRAN            =SIMP(statut='f',typ='R',max='**' ),  
1863            ANGL_NAUT       =SIMP(statut='f',typ='R',max='**' ),  
1864            CENTRE          =SIMP(statut='f',typ='R',max='**' ),  
1865          ),
1866          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
1867 )  ;
1868 #& MODIF COMMANDE  DATE 12/05/99   AUTEUR VABHHTS J.PELLET 
1869 AFFE_CHAR_THER_F=OPER(nom="AFFE_CHAR_THER_F",op=33,sd_prod=char_ther,
1870                      fr="Affectation de charges et conditions aux limites thermiques fonction dune grandeur (temps, ...)",
1871                      docu="U4.44.02-F",reentrant='n',
1872       regles=(AU_MOINS_UN('TEMP_IMPO','SOURCE','FLUX_REP','FLUX_NL','ECHANGE',
1873                           'ECHANGE_PAROI','LIAISON_DDL','LIAISON_GROUP','LIAISON_UNIF',
1874                           'GRAD_TEMP_INIT','RAYONNEMENT'),),
1875          MODELE          =SIMP(statut='o',typ=(modele) ),
1876          VERI_DDL        =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
1877          TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400. ),
1878          LIAISON_DDL     =FACT(statut='f',min=01,max='**',
1879            regles=(UN_PARMI('GROUP_NO','NOEUD'),),
1880            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
1881            NOEUD           =SIMP(statut='f',typ=no,max='**'),
1882            DDL             =SIMP(statut='f',typ='TXM',max='**',into=("TEMP","TEMP_INF","TEMP_SUP") ),
1883            COEF_MULT       =SIMP(statut='o',typ='R',max='**'),
1884            COEF_IMPO       =SIMP(statut='o',typ=(fonction) ),
1885          ),
1886          TEMP_IMPO       =FACT(statut='f',min=01,max='**',
1887            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'),
1888                    AU_MOINS_UN('TEMP_SUP','TEMP','TEMP_INF','EVOL_THER'),
1889                    PRESENT_ABSENT('EVOL_THER','TEMP','TEMP_INF','TEMP_SUP'),),
1890            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1891            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1892            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1893            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
1894            NOEUD           =SIMP(statut='f',typ=no,max='**'),
1895            EVOL_THER       =SIMP(statut='f',typ=(evol_ther) ),
1896            DDL             =SIMP(statut='f',typ='TXM',max='**',into=("TEMP",) ),
1897            TEMP            =SIMP(statut='f',typ=(fonction) ),
1898            TEMP_INF        =SIMP(statut='f',typ=(fonction) ),
1899            TEMP_SUP        =SIMP(statut='f',typ=(fonction) ),
1900          ),
1901          LIAISON_UNIF    =FACT(statut='f',min=01,max='**',
1902            regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),),
1903            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
1904            NOEUD           =SIMP(statut='f',typ=no,max='**'),
1905            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1906            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1907            DDL             =SIMP(statut='f',typ='TXM',max='**',defaut="TEMP",
1908                                  into=("TEMP","TEMP_INF","TEMP_SUP") ),
1909          ),
1910          SOURCE          =FACT(statut='f',min=01,max='**',
1911            regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),),
1912            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1913            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1914            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1915            SOUR            =SIMP(statut='o',typ=(fonction) ),
1916          ),
1917          FLUX_REP        =FACT(statut='f',min=01,max='**',
1918            regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE',),
1919                         AU_MOINS_UN('FLUN','FLUN_INF','FLUN_SUP','FLUX_X','FLUX_Y','FLUX_Z'),),
1920            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1921            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1922            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1923            FLUN            =SIMP(statut='f',typ=(fonction) ),
1924            FLUN_INF        =SIMP(statut='f',typ=(fonction) ),
1925            FLUN_SUP        =SIMP(statut='f',typ=(fonction) ),
1926            FLUX_X          =SIMP(statut='f',typ=(fonction) ),
1927            FLUX_Y          =SIMP(statut='f',typ=(fonction) ),
1928            FLUX_Z          =SIMP(statut='f',typ=(fonction) ),
1929          ),
1930          FLUX_NL         =FACT(statut='f',min=01,max='**',
1931            regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),),
1932            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1933            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1934            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1935            FLUN            =SIMP(statut='o',typ=(fonction) ),
1936          ),
1937          ECHANGE         =FACT(statut='f',min=01,max='**',
1938            regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE',),
1939                         AU_MOINS_UN('COEF_H','COEF_H_INF','COEF_H_SUP'),
1940                         ENSEMBLE('COEF_H','TEMP_EXT'),
1941                    ENSEMBLE('COEF_H_INF','TEMP_EXT_INF'),
1942                         ENSEMBLE('COEF_H_SUP','TEMP_EXT_SUP'),),
1943            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1944            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1945            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1946            COEF_H          =SIMP(statut='f',typ=(fonction) ),
1947            TEMP_EXT        =SIMP(statut='f',typ=(fonction) ),
1948            COEF_H_INF      =SIMP(statut='f',typ=(fonction) ),
1949            TEMP_EXT_INF    =SIMP(statut='f',typ=(fonction) ),
1950            COEF_H_SUP      =SIMP(statut='f',typ=(fonction) ),
1951            TEMP_EXT_SUP    =SIMP(statut='f',typ=(fonction) ),
1952          ),
1953          ECHANGE_PAROI   =FACT(statut='f',min=01,max='**',
1954            regles=(UN_PARMI('GROUP_MA_1','MAILLE_1'),
1955                         UN_PARMI('GROUP_MA_2','MAILLE_2'),),
1956            GROUP_MA_1      =SIMP(statut='f',typ=grma,max='**'),
1957            MAILLE_1        =SIMP(statut='f',typ=ma,max='**'),
1958            GROUP_MA_2      =SIMP(statut='f',typ=grma,max='**'),
1959            MAILLE_2        =SIMP(statut='f',typ=ma,max='**'),
1960            COEF_H          =SIMP(statut='o',typ=(fonction) ),
1961            TRAN            =SIMP(statut='f',typ='R',max='**'),
1962            ANGL_NAUT       =SIMP(statut='f',typ='R',max='**'),
1963            CENTRE          =SIMP(statut='f',typ='R',max='**'),
1964          ),
1965          GRAD_TEMP_INIT  =FACT(statut='f',min=01,max='**',
1966            regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),
1967                         AU_MOINS_UN('FLUX_X','FLUX_Y','FLUX_Z'),),
1968            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1969            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
1970            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
1971            FLUX_X          =SIMP(statut='f',typ=(fonction) ),
1972            FLUX_Y          =SIMP(statut='f',typ=(fonction) ),
1973            FLUX_Z          =SIMP(statut='f',typ=(fonction) ),
1974          ),
1975          LIAISON_GROUP   =FACT(statut='f',min=01,max='**',
1976            regles=(UN_PARMI('GROUP_MA_1','MAILLE_1','GROUP_NO_1','NOEUD_1'),
1977                    UN_PARMI('GROUP_MA_2','MAILLE_2','GROUP_NO_2','NOEUD_2'),
1978                              EXCLUS('GROUP_MA_1','GROUP_NO_2'),
1979                         EXCLUS('GROUP_MA_1','NOEUD_2'),
1980                    EXCLUS('GROUP_NO_1','GROUP_MA_2'),
1981                         EXCLUS('GROUP_NO_1','MAILLE_2'),
1982                         EXCLUS('MAILLE_1','GROUP_NO_2'),
1983                         EXCLUS('MAILLE_1','NOEUD_2'),
1984                         EXCLUS('NOEUD_1','GROUP_MA_2'),
1985                         EXCLUS('NOEUD_1','MAILLE_2'),
1986                         EXCLUS('SANS_NOEUD','SANS_GROUP_NO'),),
1987            GROUP_MA_1      =SIMP(statut='f',typ=grma,max='**'),
1988            MAILLE_1        =SIMP(statut='f',typ=ma,max='**'),
1989            GROUP_NO_1      =SIMP(statut='f',typ=grno,max='**'),
1990            NOEUD_1         =SIMP(statut='f',typ=no,max='**'),
1991            GROUP_MA_2      =SIMP(statut='f',typ=grma,max='**'),
1992            MAILLE_2        =SIMP(statut='f',typ=ma,max='**'),
1993            GROUP_NO_2      =SIMP(statut='f',typ=grno,max='**'),
1994            NOEUD_2         =SIMP(statut='f',typ=no,max='**'),
1995            SANS_NOEUD      =SIMP(statut='f',typ=no,max='**'),
1996            SANS_GROUP_NO   =SIMP(statut='f',typ=grno,max='**'),
1997            DDL_1           =SIMP(statut='f',typ='TXM',max='**',defaut="TEMP",
1998                                  into=("TEMP","TEMP_INF","TEMP_SUP") ),
1999            COEF_MULT_1     =SIMP(statut='o',typ='R',max='**'),
2000            DDL_2           =SIMP(statut='f',typ='TXM',max='**',defaut="TEMP",
2001                                  into=("TEMP","TEMP_INF","TEMP_SUP") ),
2002            COEF_MULT_2     =SIMP(statut='o',typ='R',max='**'),
2003            COEF_IMPO       =SIMP(statut='o',typ=(fonction) ),
2004            SOMMET          =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2005            TRAN            =SIMP(statut='f',typ='R',max='**'),
2006            ANGL_NAUT       =SIMP(statut='f',typ='R',max='**'),
2007            CENTRE          =SIMP(statut='f',typ='R',max='**'),
2008          ),
2009          CONVECTION      =FACT(statut='f',min=01,max='**',
2010            VITESSE         =SIMP(statut='o',typ=(cham_no_depl_r) ),
2011          ),
2012          RAYONNEMENT     =FACT(statut='f',min=01,max='**',
2013            regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),
2014                         ENSEMBLE('SIGMA','EPSILON','TEMP_EXT'),),
2015            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2016            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
2017            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
2018            SIGMA           =SIMP(statut='o',typ=(fonction) ),
2019            EPSILON         =SIMP(statut='o',typ=(fonction) ),
2020            TEMP_EXT        =SIMP(statut='o',typ=(fonction) ),
2021          ),
2022          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
2023 )  ;
2024 #& MODIF COMMANDE  DATE 24/09/97   AUTEUR CIBHHLV L.VIVAN 
2025 AFFE_MATERIAU=OPER(nom="AFFE_MATERIAU",op=6,sd_prod=cham_mater,
2026                    fr="Affectation de caractéristiques de matériaux à un maillage",
2027                          docu="U4.43.03-F",reentrant='n',
2028          MAILLAGE        =SIMP(statut='o',typ=maillage),
2029          MODELE          =SIMP(statut='f',typ=modele),
2030          AFFE            =FACT(statut='o',min=01,max='**',
2031            regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'),),
2032            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2033            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
2034            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
2035            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
2036            NOEUD           =SIMP(statut='f',typ=no,max='**'),
2037            MATER           =SIMP(statut='o',typ=mater),
2038            TEMP_REF        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
2039          ),
2040 )  ;
2041 #& MODIF COMMANDE  DATE 26/09/2000   AUTEUR CIBHHLV L.VIVAN 
2042 AFFE_MODELE=OPER(nom="AFFE_MODELE",op=18,sd_prod=modele,docu="U4.41.01-F",
2043                  fr="Affectation des éléments finis sur le maillage",reentrant='n',
2044          regles=(AU_MOINS_UN('AFFE','AFFE_SOUS_STRUC'),),
2045          MAILLAGE        =SIMP(statut='o',typ=(maillage) ),
2046          TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400.),
2047          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
2048          VERIF           =SIMP(statut='f',typ='TXM',max='**',into=("MAILLE","NOEUD") ),
2049          AFFE_SOUS_STRUC =FACT(statut='f',min=01,max=01,
2050            regles=(UN_PARMI('TOUT','MAILLE'),),
2051            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2052            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
2053            PHENOMENE       =SIMP(statut='f',typ='TXM',defaut="MECANIQUE",into=("MECANIQUE",) ),
2054          ),
2055          AFFE            =FACT(statut='f',min=01,max='**',
2056            regles=(UN_PARMI('TOUT','GROUP_MA','GROUP_NO','MAILLE','NOEUD'),),
2057            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2058            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
2059            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
2060            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
2061            NOEUD           =SIMP(statut='f',typ=no,max='**'),
2062            PHENOMENE       =SIMP(statut='o',typ='TXM',
2063                                  into=("MECANIQUE","THERMIQUE","ACOUSTIQUE","NON_LOCAL") ),
2064                 b_mecanique     =BLOC( condition = "PHENOMENE=='MECANIQUE'",
2065                                         fr="modelisations mécaniques",
2066                     MODELISATION    =SIMP(statut='o',typ='TXM', into=(
2067                                                                       "2D_CONTACT",
2068                                                                       "2D_DIS_T",
2069                                                                       "2D_DIS_TR",
2070                                                                       "2D_FLUI_ABSO",
2071                                                                       "2D_FLUI_PESA",
2072                                                                       "2D_FLUI_STRU",
2073                                                                       "2D_FLUIDE",
2074                                                                       "3D",
2075                                                                       "3D_ABSO",
2076                                                                       "3D_CONTACT",
2077                                                                       "3D_FAISCEAU",
2078                                                                       "3D_FLUI_ABSO",
2079                                                                       "3D_FLUIDE",
2080                                                                       "3D_HHM" ,
2081                                                                       "3D_HM",
2082                                                                       "3D_INCO",
2083                                                                       "3D_JOINT_CT",
2084                                                                       "3D_SI",
2085                                                                       "3D_THH",
2086                                                                       "3D_THHM",
2087                                                                       "3D_THM",
2088                                                                       "APPUI_REP",
2089                                                                       "ASSE_GRIL",
2090                                                                       "AXIS",
2091                                                                       "AXIS_FLUI_STRU",
2092                                                                       "AXIS_FLUIDE",
2093                                                                       "AXIS_FOURIER",
2094                                                                       "AXIS_HHM",
2095                                                                       "AXIS_HM",
2096                                                                       "AXIS_INCO",
2097                                                                       "AXIS_SI",
2098                                                                       "AXIS_THH",
2099                                                                       "AXIS_THHM",
2100                                                                       "AXIS_THM",
2101                                                                       "BARRE",
2102                                                                       "C_PLAN",
2103                                                                       "CABLE",
2104                                                                       "CABLE_POULIE",
2105                                                                       "COQUE_3D",
2106                                                                       "COQUE_AXIS",
2107                                                                       "COQUE_C_PLAN",
2108                                                                       "COQUE_D_PLAN",
2109                                                                       "D_PLAN",
2110                                                                       "D_PLAN_ABSO",
2111                                                                       "D_PLAN_HHM",
2112                                                                       "D_PLAN_HM",
2113                                                                       "D_PLAN_SI",
2114                                                                       "D_PLAN_THH",
2115                                                                       "D_PLAN_THHM",
2116                                                                       "D_PLAN_THM",
2117                                                                       "DIS_T",
2118                                                                       "DIS_TR",
2119                                                                       "DKT",
2120                                                                       "DST",
2121                                                                       "FLUI_STRU",
2122                                                                       "GRILLE",
2123                                                                       "PLAN_INCO",
2124                                                                       "POU_C_T",
2125                                                                       "POU_D_E",
2126                                                                       "POU_D_T",
2127                                                                       "POU_D_T_GD",
2128                                                                       "POU_D_TG",
2129                                                                       "Q4G",
2130                                                                       "TUYAU",
2131                                                                       "TUYAU_6M"
2132                                                                      )  )  ),
2133                                                                      
2134                 b_thermique     =BLOC( condition = "PHENOMENE=='THERMIQUE'",
2135                                         fr="modelisations thermiques",
2136                     MODELISATION    =SIMP(statut='o',typ='TXM',into=( 
2137                                                                       "3D",
2138                                                                       "3D_DIAG",
2139                                                                       "AXIS",
2140                                                                       "AXIS_DIAG",
2141                                                                       "AXIS_FOURIER",
2142                                                                       "COQUE",
2143                                                                       "COQUE_AXIS",
2144                                                                       "COQUE_PLAN",
2145                                                                       "PLAN",
2146                                                                       "PLAN_DIAG",
2147                                                                       ),),),
2148                                                                      
2149                 b_acoustique    =BLOC( condition = "PHENOMENE=='ACOUSTIQUE'",
2150                                         fr="modelisations acoustiques",
2151                      MODELISATION    =SIMP(statut='o',typ='TXM',into=(
2152                                                                        "3D",
2153                                                                        "PLAN"
2154                                                                        ), ),),
2155                                                                        
2156                 b_non_local     =BLOC( condition = "PHENOMENE=='NON_LOCAL'",
2157                                         fr="modelisations non locales",
2158                      MODELISATION    =SIMP(statut='o',typ='TXM',into=(
2159                                                                       "3D",
2160                                                                       "AXIS",
2161                                                                       "C_PLAN",
2162                                                                       "D_PLAN",
2163                                                                      ) ), ),
2164          ),
2165 ) ;
2166 #& MODIF COMMANDE DATE 25/10/93 AUTEUR VABHHTS J.PELLET
2167 AIDE=PROC(nom="AIDE",op=42,docu="U4.02.01-F",
2168           fr="Interrogation sur le catalogue des commandes et les concepts produits",                                                                                                                                                                                           
2169          regles=(AU_MOINS_UN('COMMANDE','CONCEPT','TYPE_ELEM', ),),
2170          FICHIER         =SIMP(statut='f',typ='TXM',defaut="RESULTAT"),
2171          TYPE_ELEM       =FACT(fr="couple type_elem option",
2172                                statut='f',min=01,max=01,
2173            INITEL          =SIMP(statut='f',typ='TXM',defaut="NON",
2174                                  into=("OUI","NON",) ),
2175          ),
2176          COMMANDE        =FACT(statut='f',min=01,max='**',
2177            NOM             =SIMP(fr="liste des noms de commande", 
2178                                  statut='f',typ='TXM',max='**',defaut="*"),
2179            OPTION          =SIMP(fr="option d'édition de commande",
2180                                  statut='f',typ='TXM',defaut="CATALOGUE",
2181                                  into=("CATALOGUE","A_REMPLIR","NUMERO",) ),
2182          ),
2183          CONCEPT         =FACT(statut='f',min=01,max='**',
2184            NOM             =SIMP(fr="liste des noms de concept", 
2185                                  statut='f',typ='TXM',max='**',defaut="*"),
2186            OPTION          =SIMP(fr="option d'édition de concept",
2187                                  statut='f',typ='TXM',defaut="TOUT_TYPE",
2188                                  into=("TOUT_TYPE","CREER","A_CREER",) ),
2189          ),
2190 ) ;
2191 #& MODIF COMMANDE DATE 18/03/92 AUTEUR INCONNU INCONNU
2192 ASSE_MAILLAGE=OPER(nom="ASSE_MAILLAGE",op= 105,sd_prod=maillage,
2193                    fr="Assembler deux maillages sous un seul nom",
2194                    docu="U4.23.03-E",reentrant='n',
2195          MAILLAGE        =SIMP(statut='o',typ=maillage,min=02,max=02 ),
2196 )  ;
2197 #& MODIF COMMANDE  DATE 02/10/96   AUTEUR CIBHHLV L.VIVAN 
2198 ASSE_MATR_GENE=OPER(nom="ASSE_MATR_GENE",op= 128,sd_prod=matr_asse_gene_r,
2199                     fr="Assemblage des matrices généralisées de macro éléments pour construction de la matrice globale généralisée",
2200                     docu="U4.65.04-D",reentrant='n',
2201          NUME_DDL_GENE   =SIMP(statut='o',typ=nume_ddl_gene ),
2202          OPTION          =SIMP(statut='o',typ='TXM',into=("RIGI_GENE","MASS_GENE","AMOR_GENE") ),
2203 )  ;
2204 #& MODIF COMMANDE  DATE 02/10/96   AUTEUR CIBHHLV L.VIVAN 
2205 def asse_matrice_prod(MATR_ELEM,**args):
2206   if AsType(MATR_ELEM) == matr_elem_depl_r : return matr_asse_depl_r
2207   if AsType(MATR_ELEM) == matr_elem_depl_c : return matr_asse_depl_c
2208   if AsType(MATR_ELEM) == matr_elem_temp_r : return matr_asse_temp_r
2209   if AsType(MATR_ELEM) == matr_elem_pres_c : return matr_asse_pres_c
2210   raise AsException("type de concept resultat non prevu")
2211
2212 ASSE_MATRICE=OPER(nom="ASSE_MATRICE",op=12,sd_prod=asse_matrice_prod,
2213                   fr="Construction d une matrice assemblée",docu="U4.61.22-F",reentrant='n',
2214          MATR_ELEM       =SIMP(statut='o',
2215                                typ=(matr_elem_depl_r,matr_elem_depl_c,matr_elem_temp_r,matr_elem_pres_c) ),
2216          NUME_DDL        =SIMP(statut='o',typ=nume_ddl),
2217          CHAR_CINE       =SIMP(statut='f',typ=(char_cine_meca,char_cine_ther,char_cine_acou) ),
2218          INFO            =SIMP(statut='f',typ='I',into=(1,2) ),
2219 )  ;
2220 #& MODIF COMMANDE DATE 30/06/93 AUTEUR T8BHHTK T.KERBER
2221 ASSE_VECT_GENE=OPER(nom="ASSE_VECT_GENE",op= 140,sd_prod=vect_asse_gene,
2222                     fr="Assemblage de vecteurs de chargement en coordonnées généralisées",
2223                     docu="U4.65.05-D",reentrant='n',
2224          NUME_DDL_GENE   =SIMP(statut='o',typ=nume_ddl_gene ),
2225          CHAR_SOUS_STRUC =FACT(statut='o',min=01,max='**',
2226            SOUS_STRUC      =SIMP(statut='o',typ='TXM' ),
2227            VECT_ASSE       =SIMP(statut='o',typ=cham_no_depl_r ),
2228          ),
2229 )  ;
2230 #& MODIF COMMANDE  DATE 02/10/96   AUTEUR CIBHHLV L.VIVAN 
2231 def asse_vecteur_prod(VECT_ELEM,**args):
2232   if AsType(VECT_ELEM) == vect_elem_depl_r : return cham_no_depl_r
2233   if AsType(VECT_ELEM) == vect_elem_temp_r : return cham_no_temp_r
2234   if AsType(VECT_ELEM) == vect_elem_pres_r : return cham_no_pres_r
2235   if AsType(VECT_ELEM) == vect_elem_pres_c : return cham_no_pres_c
2236   raise AsException("type de concept resultat non prevu : %s" %`AsType(VECT_ELEM)`)
2237
2238 ASSE_VECTEUR=OPER(nom="ASSE_VECTEUR",op=13,sd_prod=asse_vecteur_prod,
2239                   fr="Assemblage d un second membre",docu="U4.61.23-F",reentrant='n',
2240          VECT_ELEM       =SIMP(statut='o',typ=vect_elem,max='**'),
2241          NUME_DDL        =SIMP(statut='o',typ=nume_ddl ),
2242          INFO            =SIMP(statut='f',typ='I',into=(1,2,) ),
2243 )  ;
2244 #& MODIF COMMANDE  DATE 28/09/98   AUTEUR ACBHHCD G.DEVESA 
2245 CALC_AMOR_MODAL=OPER(nom="CALC_AMOR_MODAL",op= 172,sd_prod=listr8,
2246                      fr="Création d'une liste d'amortissements modaux calculés selon la règle du RCC-G",
2247                      docu="U4.52.13-C",reentrant='n',
2248          ENER_SOL        =FACT(statut='o',min=01,max=01,
2249            regles=(UN_PARMI('GROUP_NO_RADIER','GROUP_MA_RADIER'),
2250                    PRESENT_ABSENT('COEF_GROUP','FONC_GROUP'),
2251 #  Peut-on remplacer les deux règles suivantes par un ENSEMBLE_('KRX','KRY','KRZ')
2252                    PRESENT_PRESENT('KRX','KRY'),
2253                    PRESENT_PRESENT('KRX','KRZ'),
2254                    PRESENT_ABSENT('COOR_CENTRE','NOEUD_CENTRE'),
2255                    PRESENT_ABSENT('GROUP_NO_CENTRE','NOEUD_CENTRE'),
2256                    PRESENT_ABSENT('GROUP_NO_CENTRE','COOR_CENTRE'),),
2257            METHODE         =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL","RIGI_PARASOL") ),
2258            MODE_MECA       =SIMP(statut='o',typ=mode_meca ),
2259            GROUP_NO_RADIER =SIMP(statut='f',typ=grno,max='**'),
2260            GROUP_MA_RADIER =SIMP(statut='f',typ=grma,max='**'),
2261            FONC_GROUP      =SIMP(statut='f',typ=fonction ),
2262            COEF_GROUP      =SIMP(statut='f',typ='R',max='**'),
2263            KX              =SIMP(statut='o',typ='R' ),
2264            KY              =SIMP(statut='o',typ='R' ),
2265            KZ              =SIMP(statut='o',typ='R' ),
2266            KRX             =SIMP(statut='f',typ='R' ),
2267            KRY             =SIMP(statut='f',typ='R' ),
2268            KRZ             =SIMP(statut='f',typ='R' ),
2269            GROUP_NO_CENTRE =SIMP(statut='f',typ=grno),
2270            NOEUD_CENTRE    =SIMP(statut='f',typ=no),
2271            COOR_CENTRE     =SIMP(statut='f',typ='R',max=03),
2272          ),
2273          AMOR_INTERNE    =FACT(statut='o',min=01,max=01,
2274            ENER_POT        =SIMP(statut='o',typ=tabl_ener_pot ),
2275            GROUP_MA        =SIMP(statut='o',typ=grma,max='**'),
2276            AMOR_REDUIT     =SIMP(statut='o',typ='R',max='**'),
2277          ),
2278          AMOR_SOL        =FACT(statut='o',min=01,max=01,
2279            AMOR_REDUIT     =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
2280            FONC_AMOR_GEO   =SIMP(statut='o',typ=fonction,max='**' ),
2281            HOMOGENE        =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
2282            SEUIL           =SIMP(statut='f',typ='R',defaut= 0.3 ),
2283          ),
2284 )  ;
2285 #& MODIF COMMANDE  DATE 29/08/2000   AUTEUR ADBHHPM P.MASSIN 
2286 def calc_cham_elem_prod(OPTION,**args):
2287   if OPTION == "EQUI_ELGA_SIGM" : return cham_elem_sief_r
2288   if OPTION == "EQUI_ELNO_SIGM" : return cham_elem_sief_r
2289   if OPTION == "SIGM_ELNO_DEPL" : return cham_elem_sief_r
2290   if OPTION == "SIGM_ELNO_LAGR" : return cham_elem_sief_r
2291   if OPTION == "SIPO_ELNO_DEPL" : return cham_elem_sief_r
2292   if OPTION == "SIEF_ELGA_DEPL" : return cham_elem_sief_r
2293   if OPTION == "SIEF_ELGA_LAGR" : return cham_elem_sief_r
2294   if OPTION == "SIGM_ELNO_CART" : return cham_elem_sief_r
2295   if OPTION == "EFGE_ELNO_CART" : return cham_elem_sief_r
2296   if OPTION == "EFGE_ELNO_DEPL" : return cham_elem_sief_r
2297   if OPTION == "EQUI_ELGA_EPSI" : return cham_elem_epsi_r
2298   if OPTION == "EQUI_ELNO_EPSI" : return cham_elem_epsi_r
2299   if OPTION == "DEGE_ELNO_DEPL" : return cham_elem_epsi_r
2300   if OPTION == "EPSI_ELNO_DEPL" : return cham_elem_epsi_r
2301   if OPTION == "FLUX_ELGA_TEMP" : return cham_elem_flux_r
2302   if OPTION == "FLUX_ELNO_TEMP" : return cham_elem_flux_r
2303   if OPTION == "SOUR_ELGA_ELEC" : return cham_elem_sour_r
2304   if OPTION == "ENEL_ELGA" :      return cham_elem_ener_r
2305   if OPTION == "ENEL_ELNO_ELGA" : return cham_elem_ener_r
2306   if OPTION == "EPOT_ELEM_DEPL" : return cham_elem_ener_r
2307   if OPTION == "ECIN_ELEM_DEPL" : return cham_elem_ener_r
2308   if OPTION == "PRES_ELNO_DBEL" : return cham_elem_dbel_r
2309   if OPTION == "PRES_ELNO_REEL" : return cham_elem_pres_r
2310   if OPTION == "PRES_ELNO_IMAG" : return cham_elem_pres_r
2311   if OPTION == "PRES_DBEL_DEPL" : return cham_elem_dbel_r
2312   if OPTION == "ENDO_ELNO_SIGM" : return cham_elem_sief_r
2313   if OPTION == "COOR_ELGA" :      return cham_elem_geom_r
2314   raise AsException("type de concept resultat non prevu")
2315
2316 CALC_CHAM_ELEM=OPER(nom="CALC_CHAM_ELEM",op=38,sd_prod=calc_cham_elem_prod,
2317                     fr="Calcul de champs par éléments (contraintes, déformations ou flux) à partir de champs solution (déplacement ou température) ou de champs  par éléments",
2318                     docu="U4.81.03-F",reentrant='n',
2319          MODELE          =SIMP(statut='o',typ=modele),
2320          CHAM_MATER      =SIMP(statut='f',typ=cham_mater),
2321          CARA_ELEM       =SIMP(statut='f',typ=cara_elem),
2322  
2323          TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2324          GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
2325          MAILLE          =SIMP(statut='f',typ=ma,max='**'),
2326
2327
2328
2329 #  introduire un mot cle de type modelisation : mécanique,thermique,...
2330
2331
2332          OPTION          =SIMP(statut='o',typ='TXM',
2333                                into=("DEGE_ELNO_DEPL","EFGE_ELNO_DEPL","EPOT_ELEM_DEPL",
2334                                      "EPSI_ELNO_DEPL","PRES_DBEL_DEPL","SIGM_ELNO_DEPL",
2335                                      "SIEF_ELGA_DEPL","SIEF_ELGA_LAGR","SIGM_ELNO_LAGR",
2336                                      "EFGE_ELNO_CART","ENDO_ELNO_SIGM","EQUI_ELGA_EPSI",
2337                                      "EQUI_ELGA_SIGM","EQUI_ELNO_EPSI","EQUI_ELNO_SIGM",
2338                                      "SIGM_ELNO_CART","ECIN_ELEM_DEPL","SIPO_ELNO_DEPL",
2339                                      "FLUX_ELNO_TEMP","FLUX_ELGA_TEMP","SOUR_ELGA_ELEC",
2340                                      "PRES_ELNO_DBEL","PRES_ELNO_REEL","PRES_ELNO_IMAG",
2341                                      "COOR_ELGA","ENEL_ELGA","ENEL_ELNO_ELGA"), ),
2342          DEPL            =SIMP(statut='f',typ=(cham_no_depl_r,cham_no_depl_c)),
2343          PROPAGATION     =SIMP(statut='f',typ='R',defaut= 0.E+0),
2344          CHAM_ELEM       =SIMP(statut='f',typ=(cham_elem_sief_r,cham_elem_epsi_r) ),
2345          FREQ            =SIMP(statut='f',typ='R'),
2346          VITE            =SIMP(statut='f',typ=cham_no_depl_r),
2347          EXCIT           =FACT(statut='f',min=01,max='**',
2348                regles=(EXCLUS('FONC_MULT','COEF_MULT', ),),
2349                CHARGE          =SIMP(statut='o',typ=(char_meca,char_ther,char_acou)),
2350                FONC_MULT       =SIMP(statut='f',typ=fonction),
2351                COEF_MULT       =SIMP(statut='f',typ='R'),
2352          ),
2353          INST            =SIMP(statut='f',typ='R',defaut= 0.E+0),
2354          ACCE            =SIMP(statut='f',typ=cham_no_depl_r),
2355          NUME_COUCHE     =SIMP(statut='f',typ='I',defaut= 1),
2356          NIVE_COUCHE     =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY") ),
2357          MODE_FOURIER    =SIMP(statut='f',typ='I',defaut= 0 ),
2358
2359          TEMP            =SIMP(statut='f',typ=(cham_no_temp_r) ),
2360
2361          PRES            =SIMP(statut='f',typ=(cham_no_pres_c) ),
2362
2363          TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400.),
2364          ANGLE           =SIMP(statut='f',typ='I',defaut= 0),
2365          PLAN            =SIMP(statut='f',typ='TXM',defaut="MAIL",
2366                                into=("SUP","INF","MOY","MAIL"), ),
2367 )  ;
2368 #& MODIF COMMANDE  DATE 11/02/98   AUTEUR CIBHHLV L.VIVAN
2369 def calc_char_cine_prod(CHAR_CINE,**args):
2370   if AsType(CHAR_CINE) == char_cine_meca : return cham_no_depl_r
2371   if AsType(CHAR_CINE) == char_cine_ther : return cham_no_temp_r
2372   if AsType(CHAR_CINE) == char_cine_acou : return cham_no_pres_c
2373   raise AsException("type de concept resultat non prevu")
2374
2375 CALC_CHAR_CINE=OPER(nom="CALC_CHAR_CINE",op= 102,sd_prod=calc_char_cine_prod,
2376                     fr="Calcul des seconds membres associés à des charges cinématiques (conditions aux limites non dualisées)",
2377                     docu="U4.61.03-E",reentrant='n',
2378          NUME_DDL        =SIMP(statut='o',typ=nume_ddl ),
2379          CHAR_CINE       =SIMP(statut='o',typ=(char_cine_meca,char_cine_ther,char_cine_acou ) ),
2380          INST            =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
2381          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ),
2382 )  ;
2383 #& MODIF COMMANDE DATE 08/03/94 AUTEUR VABHHT2 G.BERTRAND
2384 def calc_char_seisme_prod(MATR_MASS,**args ):
2385   if AsType(MATR_MASS) == matr_asse_depl_r : return cham_no_depl_r
2386   raise AsException("type de concept resultat non prevu")
2387
2388 CALC_CHAR_SEISME=OPER(nom="CALC_CHAR_SEISME",op=  92,sd_prod=calc_char_seisme_prod,
2389                       fr="Calcul du chargement sismique (forces d inertie fictives) pour une étude ultérieure de la réponse en mouvement relatif par rapport aux appuis",
2390                       docu="U4.63.01-E",reentrant='n',
2391          regles=(UN_PARMI('MONO_APPUI','MODE_STAT' ),),
2392          MATR_MASS       =SIMP(statut='o',typ=matr_asse_depl_r,fr="Matrice de masse" ),
2393          DIRECTION       =SIMP(statut='o',typ='R',max=06,fr="Directions du séisme imposé"),
2394          MONO_APPUI      =SIMP(statut='f',typ='TXM',into=("OUI",) ),         
2395          MODE_STAT       =SIMP(statut='f',typ=mode_stat ),
2396          b_mode_stat     =BLOC ( condition = "MODE_STAT != None",
2397            regles=(UN_PARMI('NOEUD','GROUP_NO' ),),
2398            NOEUD           =SIMP(statut='f',typ=no,max='**'),
2399            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
2400          ),
2401          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
2402 )  ;
2403 #& MODIF COMMANDE  DATE 29/08/2000   AUTEUR ADBHHPM P.MASSIN 
2404 def calc_elem_prod(RESULTAT,**args):
2405   if AsType(RESULTAT) == evol_elas :    return evol_elas
2406   if AsType(RESULTAT) == evol_noli :    return evol_noli
2407   if AsType(RESULTAT) == evol_ther :    return evol_ther
2408   if AsType(RESULTAT) == dyna_trans :   return dyna_trans
2409   if AsType(RESULTAT) == dyna_harmo :   return dyna_harmo
2410   if AsType(RESULTAT) == acou_harmo :   return acou_harmo
2411   if AsType(RESULTAT) == mode_meca :    return mode_meca
2412   if AsType(RESULTAT) == mode_flamb :   return mode_flamb
2413   if AsType(RESULTAT) == mode_acou :    return mode_acou
2414   if AsType(RESULTAT) == mode_stat :    return mode_stat
2415   if AsType(RESULTAT) == mult_elas :    return mult_elas
2416   if AsType(RESULTAT) == fourier_elas : return fourier_elas
2417   if AsType(RESULTAT) == base_modale  : return base_modale
2418   raise AsException("type de concept resultat non prevu")
2419
2420 CALC_ELEM=OPER(nom="CALC_ELEM",op=58,sd_prod=calc_elem_prod,docu="U4.81.01-F",reentrant='f',
2421                     fr="Compléter un résultat en calculant des champs par éléments (contraintes, déformations,... )",
2422          MODELE          =SIMP(statut='o',typ=modele),
2423          CHAM_MATER      =SIMP(statut='o',typ=cham_mater),
2424          CARA_ELEM       =SIMP(statut='f',typ=cara_elem),
2425
2426          TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2427          GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
2428          MAILLE          =SIMP(statut='f',typ=ma,max='**'),
2429
2430          regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE',
2431                         'NOEUD_CMP','LIST_INST','LIST_FREQ','LIST_ORDRE','NOM_CAS'),),
2432          TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2433          NUME_ORDRE      =SIMP(statut='f',typ='I',max='**'),
2434          NUME_MODE       =SIMP(statut='f',typ='I',max='**'),
2435          NOEUD_CMP       =SIMP(statut='f',typ='TXM',max='**'),
2436          NOM_CAS         =SIMP(statut='f',typ='TXM' ),
2437  
2438          INST            =SIMP(statut='f',typ='R',max='**'),
2439          FREQ            =SIMP(statut='f',typ='R',max='**'),
2440          LIST_INST       =SIMP(statut='f',typ=listr8),
2441          LIST_FREQ       =SIMP(statut='f',typ=listr8),
2442          PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3 ),
2443          CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ),
2444
2445          LIST_ORDRE      =SIMP(statut='f',typ=listis),
2446
2447          OPTION          =SIMP(statut='o',typ='TXM',max='**',
2448                                into=("EFGE_ELNO_DEPL","EPOT_ELEM_DEPL","SIGM_ELNO_DEPL","SIEF_ELGA_DEPL",
2449                                      "SIGM_ELNO_TUYO","SIGM_ELNO_CART","DEGE_ELNO_DEPL","EFGE_ELNO_CART",
2450                                      "EPSI_ELNO_DEPL","EPSI_ELGA_DEPL","EPSG_ELNO_DEPL","EPSG_ELGA_DEPL",
2451                                      "EPME_ELNO_DEPL","EPME_ELGA_DEPL","EPMG_ELNO_DEPL","EPMG_ELGA_DEPL",
2452                                      "EPSP_ELNO","EPSP_ELGA","ECIN_ELEM_DEPL","SIPO_ELNO_DEPL",
2453                                      "EPGR_ELNO","EPGR_ELGA","DURT_ELGA_META","DURT_ELNO_META",
2454                                      "SIGM_ELNO_COQU","SIGM_ELNO_SIEF","SIPO_ELNO_SIEF",
2455                                      "SIGM_NOZ1_ELGA","ERRE_ELEM_NOZ1","SIGM_NOZ2_ELGA","ERRE_ELEM_NOZ2",
2456                                      "VNOR_ELEM_DEPL","SIRE_ELNO_DEPL","ERRE_ELGA_NORE","ERRE_ELNO_ELGA",
2457                                      "VARI_ELNO_ELGA","VARI_ELNO_TUYO","EQUI_ELNO_SIGM","EQUI_ELGA_SIGM",
2458                                      "EQUI_ELNO_EPSI","EQUI_ELGA_EPSI","EQUI_ELNO_EPME","EQUI_ELGA_EPME",
2459                                      "DCHA_ELNO_SIGM","DCHA_ELGA_SIGM","RADI_ELNO_SIGM","RADI_ELGA_SIGM",
2460                                      "ENDO_ELNO_SIGA","ENDO_ELNO_SINO","ENEL_ELGA","ENEL_ELNO_ELGA","SIEF_ELNO_ELGA",
2461                                      "DEUL_ELGA_TEMP","DETE_ELNO_DLTE","DEUL_ELGA_DEPL","DEDE_ELNO_DLDE",
2462                                      "DLSI_ELGA_DEPL","DESI_ELNO_DLSI","PMPB_ELNO_SIEF","PMPB_ELGA_SIEF",
2463                                      "FLUX_ELGA_TEMP","FLUX_ELNO_TEMP",
2464                                      "SOUR_ELGA_ELEC",
2465                                      "PRES_ELNO_DBEL","PRES_DBEL_DEPL","PRES_ELNO_REEL","PRES_ELNO_IMAG",
2466                                      "INTE_ELNO_ACTI","INTE_ELNO_REAC",
2467                                      ) ),
2468          RESULTAT        =SIMP(statut='o',typ=(evol_elas,dyna_trans,dyna_harmo,mode_meca,
2469                                                mode_stat,evol_noli,mult_elas,fourier_elas,
2470                                                evol_ther,base_modale,
2471                                                acou_harmo,mode_acou,mode_flamb) ),
2472          EXCIT           =FACT(statut='f',min=01,max='**',
2473              regles=(EXCLUS('FONC_MULT','FONC_MULT_C','COEF_MULT','COEF_MULT_C'),),
2474              CHARGE          =SIMP(statut='o',typ=(char_meca,char_ther,char_acou) ),
2475              FONC_MULT       =SIMP(statut='f',typ=fonction),
2476              FONC_MULT_C     =SIMP(statut='f',typ=fonction_c),
2477              COEF_MULT       =SIMP(statut='f',typ='R'),
2478              COEF_MULT_C     =SIMP(statut='f',typ='C'),
2479              PHAS_DEG        =SIMP(statut='f',typ='R'),
2480              PUIS_PULS       =SIMP(statut='f',typ='I'),
2481              TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",) ),
2482          ),
2483          NORME           =SIMP(statut='f',typ='TXM',defaut="VMIS",
2484                                into=("VMIS","TOTAL","VMIS_CINE","TOTAL_CINE") ),
2485          NUME_COUCHE     =SIMP(statut='f',typ='I',defaut= 1 ),
2486          NIVE_COUCHE     =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY") ),
2487           
2488          ANGLE           =SIMP(statut='f',typ='I',defaut= 0 ),
2489          PLAN            =SIMP(statut='f',typ='TXM',defaut="MAIL",into=("SUP","INF","MOY","MAIL") ),
2490          SENSIBILITE     =FACT(statut='f',min=01,max=01,
2491            THETA           =SIMP(statut='f',typ=(theta_geom) ),
2492          ),  
2493          TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400.),
2494          EFGE_REPERE     =FACT(statut='f',min=01,max=01,
2495              regles=(UN_PARMI('ANGL_REP','VECT_X_Y','VECT_X_Z'),),
2496              ANGL_REP        =SIMP(statut='f',typ='R',max='**'),
2497              VECT_X_Y        =SIMP(statut='f',typ='R',max='**'),
2498              VECT_X_Z        =SIMP(statut='f',typ='R',max='**'),
2499          ),
2500          
2501          TEMP_INIT       =FACT(statut='f',min=01,max='**',
2502              regles=(EXCLUS('META_INIT','EVOL_THER'),),
2503              META_INIT       =SIMP(statut='f',typ=carte_meta_r),
2504              EVOL_THER       =SIMP(statut='f',typ=evol_ther,),
2505              NUME_INIT       =SIMP(statut='f',typ='I'),
2506          ),
2507                  
2508          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
2509 )  ;
2510 #& MODIF COMMANDE  DATE 03/05/2000   AUTEUR CIBHHLV L.VIVAN
2511 CALC_FATIGUE=OPER(nom="CALC_FATIGUE",op= 151,sd_prod=cham_elem_dommag,reentrant='n',
2512                   fr="Calcul d un champ de dommage subi par une structure",
2513                   docu="U4.83.02-C",                                                                                                                                                                                                             
2514       regles=(PRESENT_PRESENT('DOMMAGE','MATER', ),),
2515          OPTION          =SIMP(statut='o',typ='TXM',
2516                                into=("DOMA_ELNO_SIGM","DOMA_ELGA_SIGM",
2517                                      "DOMA_ELNO_EPSI","DOMA_ELGA_EPSI",
2518                                      "DOMA_ELNO_EPME","DOMA_ELGA_EPME") ),
2519          HISTOIRE        =FACT(statut='o',min=01,max=01,
2520            RESULTAT        =SIMP(statut='o',typ=(evol_elas,dyna_trans,evol_noli) ),
2521            EQUI_GD         =SIMP(statut='f',typ='TXM',defaut="VMIS_SG",into=("VMIS_SG","INVA_2_SG") ),
2522          ),
2523          DOMMAGE         =SIMP(statut='o',typ='TXM',
2524                                into=("WOHLER","MANSON_COFFIN","TAHERI_MANSON","TAHERI_MIXTE",) ),
2525          MATER           =SIMP(statut='o',typ=(mater) ),
2526          TAHERI_NAPPE    =SIMP(statut='f',typ=(fonction) ),
2527          TAHERI_FONC     =SIMP(statut='f',typ=(fonction) ),
2528          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
2529 )  ;
2530 #& MODIF COMMANDE  DATE 03/05/2000   AUTEUR CIBHHAB N.RAHNI 
2531 CALC_FLUI_STRU=OPER(nom="CALC_FLUI_STRU",op= 144,sd_prod=melasflu,
2532                     fr="Calcul des paramètres modaux d une structure soumise à un écoulement, en prenant en compte les forces fluidélastiques",
2533                     docu="U4.66.02-C",reentrant='n',
2534          VITE_FLUI       =FACT(statut='o',min=01,max=01,
2535                                fr="Définir la plage de vitesse fluide étudiée",
2536            VITE_MIN        =SIMP(statut='o',typ='R' ),
2537            VITE_MAX        =SIMP(statut='o',typ='R' ),
2538            NB_POIN         =SIMP(statut='o',typ='I' ),
2539          ),
2540          BASE_MODALE     =FACT(statut='o',min=01,max=01,
2541                                
2542            regles=(UN_PARMI('AMOR_REDUIT','AMOR_UNIF'),),
2543            MODE_MECA       =SIMP(statut='o',typ=mode_meca ),
2544            NUME_ORDRE      =SIMP(statut='f',typ='I',max='**'),
2545            AMOR_REDUIT     =SIMP(statut='f',typ='R',max='**'),
2546            AMOR_UNIF       =SIMP(statut='f',typ='R' ),
2547          ),
2548          TYPE_FLUI_STRU  =SIMP(statut='o',typ=type_flui_stru ),
2549          IMPRESSION      =FACT(statut='f',min=01,max=01,
2550                                fr="Choix des informations à imprimer dans le fichier RESULTAT",
2551            PARA_COUPLAGE   =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
2552            DEFORMEE        =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
2553          ),
2554 )  ;
2555 #& MODIF COMMANDE  DATE 11/02/98   AUTEUR CIBHHLV L.VIVAN
2556 CALC_FONC_INTERP=OPER(nom="CALC_FONC_INTERP",op= 134,sd_prod=fonction,
2557                       fr="Construire un concept de type fonction à partir d une fonction réelle de la variable réelle définie par une FORMULE",
2558                       docu="U4.32.01-D",reentrant='f',
2559          regles=(UN_PARMI('VALE_R','LIST_PARA'),),
2560          FONCTION        =SIMP(statut='o',typ=fonction ),
2561          NOM_RESU        =SIMP(statut='f',typ='TXM',defaut="TOUTRESU"),
2562          VALE_R          =SIMP(statut='f',typ='R',max='**'),
2563          LIST_PARA       =SIMP(statut='f',typ=listr8 ),
2564          INTERPOL        =SIMP(statut='f',typ='TXM',max=02,defaut="LIN",into=("NON","LIN","LOG","INT") ),
2565          PROL_DROIT      =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("EXCLU","CONSTANT","LINEAIRE","INTERPRE") ),
2566          PROL_GAUCHE     =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("EXCLU","CONSTANT","LINEAIRE","INTERPRE") ),
2567          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
2568          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ),
2569 )  ;
2570 #& MODIF COMMANDE  DATE 20/06/2000   AUTEUR ACBHHCD G.DEVESA
2571 def calc_fonction_prod(DERIVE,EXTRACTION,INTEGRE,RMS,MAX,COMB,COMB_C,ENVELOPPE,SPEC_OSCI,FFT,COMPOSE,**args):
2572   if (RMS != None)        : return tabl_fonc_rms
2573   if (MAX != None)        : return tabl_fonc_max
2574   if (INTEGRE != None)    : return fonction
2575   if (DERIVE != None)     : return fonction
2576   if (COMB != None)       : return fonction
2577   if (ENVELOPPE != None)  : return fonction
2578   if (EXTRACTION != None) : return fonction
2579   if (SPEC_OSCI != None)  : return fonction
2580   if (COMB_C != None)     : return fonction_c
2581   if (COMPOSE != None)    : return fonction
2582   if (FFT != None)        : 
2583      vale=FFT.get_child('FONCTION').get_valeur()
2584      if (AsType(vale) == fonction )  : return fonction_c
2585      if (AsType(vale) == fonction_c) : return fonction
2586   raise AsException("type de concept resultat non prevu")
2587
2588 CALC_FONCTION=OPER(nom="CALC_FONCTION",op=  91,sd_prod=calc_fonction_prod
2589                     ,fr="Opérations mathématiques sur des concepts de type fonction",
2590                      docu="U4.32.04-E",reentrant='n',
2591          regles=(UN_PARMI('DERIVE','INTEGRE','SPEC_OSCI','MAX','COMB','ENVELOPPE','RMS',
2592                           'COMB_C','COMPOSE','EXTRACTION','ASSE','FFT' ),),
2593          FFT             =FACT(statut='f',min=01,max=01,fr="Calcul de la transformee de Fourier ou de son inverse",
2594            FONCTION        =SIMP(statut='o',typ=(fonction,fonction_c) )
2595          ),
2596          DERIVE          =FACT(statut='f',min=01,max=01,fr="Calcul de la dérivée d une fonction",
2597            METHODE         =SIMP(statut='f',typ='TXM',defaut="DIFF_CENTREE",into=("DIFF_CENTREE",) ),
2598            FONCTION        =SIMP(statut='o',typ=fonction ),
2599          ),
2600          INTEGRE         =FACT(statut='f',min=01,max=01,fr="Calcul de l intégrale d une fonction",
2601            METHODE         =SIMP(statut='f',typ='TXM',defaut="TRAPEZE",into=("SIMPSON","TRAPEZE") ),
2602            FONCTION        =SIMP(statut='o',typ=fonction),
2603            COEF            =SIMP(statut='f',typ='R',defaut= 0.E+0,fr="Valeur de la constante d intégration" ),
2604          ),
2605          RMS             =FACT(statut='f',min=01,max=01,fr="Calcul de la valeur RMS d une fonction",
2606            METHODE         =SIMP(statut='f',typ='TXM',defaut="TRAPEZE",into=("SIMPSON","TRAPEZE") ),
2607            FONCTION        =SIMP(statut='o',typ=fonction ),
2608            INST_INIT       =SIMP(statut='f',typ='R',fr="Instant initial définissant le début du signal" ),
2609            INST_FIN        =SIMP(statut='f',typ='R',fr="Instant final définissant la fin du signal" ),
2610            b_inst          =BLOC ( condition = "(INST_INIT != None) or (INST_FIN != None)",
2611              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
2612              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
2613            ),  
2614          ),
2615          SPEC_OSCI       =FACT(statut='f',min=01,max=01,fr="Calcul du spectre d oscillateur",
2616            METHODE         =SIMP(statut='f',typ='TXM',defaut="NIGAM",into=("NIGAM",) ),
2617            FONCTION        =SIMP(statut='o',typ=fonction ),
2618            AMOR_REDUIT     =SIMP(statut='f',typ='R',max='**'),
2619            LIST_FREQ       =SIMP(statut='f',typ=listr8 ),
2620            FREQ            =SIMP(statut='f',typ='R',max='**'),
2621            NORME           =SIMP(statut='f',typ='R',defaut= 9.81,fr="Valeur de la norme du spectre d oscillateur" ),
2622            NATURE          =SIMP(statut='f',typ='TXM',defaut="ACCE",into=("DEPL","VITE","ACCE") ),
2623            NATURE_FONC     =SIMP(statut='f',typ='TXM',defaut="ACCE",into=("DEPL","VITE","ACCE") ),
2624          ),
2625          MAX             =FACT(statut='f',min=01,max=01,fr="Calcul des extrémas locaux d une fonction",
2626            FONCTION        =SIMP(statut='o',typ=fonction ),
2627          ),
2628          COMB            =FACT(statut='f',min=01,max='**',fr="Calcul d une combinaison linéaire réelle de fonctions",
2629            FONCTION        =SIMP(statut='o',typ=fonction ),
2630            COEF            =SIMP(statut='o',typ='R',fr="Coefficient réel de la combinaison linéaire associée à la fonction" ),
2631          ),
2632          COMB_C          =FACT(statut='f',min=01,max='**',fr="Calcul d une combinaison linéaire complexe de fonctions",
2633            regles=(UN_PARMI('COEF_R','COEF_C'),),
2634            FONCTION        =SIMP(statut='o',typ=(fonction, fonction_c) ),
2635            COEF_R          =SIMP(statut='f',typ='R',fr="Coefficient réel de la combinaison linéaire associée à la fonction" ),
2636            COEF_C          =SIMP(statut='f',typ='C',fr="Coefficient complexe de la combinaison linéaire associée à la fonction" ),
2637          ),
2638          b_comb          =BLOC ( condition = " (COMB != None) or (COMB_C != None)",
2639              LIST_PARA      =SIMP(statut='f',typ=listr8 ),  
2640          ),
2641          COMPOSE         =FACT(statut='f',min=01,max=01,fr="Calcul de la composition de deux fonctions FONC_RESU(FONC_PARA)",
2642            FONC_RESU       =SIMP(statut='o',typ=fonction),
2643            FONC_PARA       =SIMP(statut='o',typ=fonction),
2644          ),
2645          EXTRACTION      =FACT(statut='f',min=01,max=01,fr="Opération d extraction sur une fonction complexe",
2646            FONCTION        =SIMP(statut='o',typ=fonction_c),
2647            PARTIE          =SIMP(statut='o',typ='TXM',into=("REEL","IMAG","MODULE","PHASE"),fr="Partie à extraire"),
2648          ),
2649          ENVELOPPE       =FACT(statut='f',min=01,max=01,fr="Calcul de l enveloppe d une famille de fonctions",
2650            FONCTION        =SIMP(statut='o',typ=fonction,max='**' ),
2651            CRITERE         =SIMP(statut='f',typ='TXM',defaut="SUP",into=("SUP","INF"),fr="Type de l enveloppe" ),
2652          ),
2653          ASSE            =FACT(statut='f',min=01,max=01,fr="Création à partir de la concatenation de fonctions",
2654            FONCTION        =SIMP(statut='o',typ=fonction,max='**' ),
2655            SURCHARGE       =SIMP(statut='f',typ='TXM',defaut="DROITE",into=("DROITE","GAUCHE")),
2656          ),
2657          NOM_PARA        =SIMP(statut='f',typ='TXM',into=("DX","DY","DZ","DRX","DRY","DRZ","TEMP",
2658                                                           "INST","X","Y","Z","EPSI","FREQ","PULS",
2659                                                           "AMOR","ABSC") ),
2660          NOM_RESU        =SIMP(statut='f',typ='TXM' ),
2661          INTERPOL        =SIMP(statut='f',typ='TXM',max=02,into=("NON","LIN","LOG") ),
2662          PROL_DROIT      =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ),
2663          PROL_GAUCHE     =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ),
2664          NOM_PARA_FONC   =SIMP(statut='f',typ='TXM',into=("DX","DY","DZ","DRX","DRY","DRZ","TEMP",
2665                                                           "INST","X","Y","Z","EPSI","FREQ","PULS",
2666                                                           "AMOR","ABSC") ),
2667          INTERPOL_FONC   =SIMP(statut='f',typ='TXM',max=02,into=("NON","LIN","LOG") ),
2668          PROL_DROIT_FONC =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ),
2669          PROL_GAUCHE_FONC=SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ),
2670          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ),
2671          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
2672 )  ;
2673 #& MODIF COMMANDE  DATE 03/10/2000   AUTEUR VABHHTS J.PELLET 
2674 CALC_G_LOCAL_T=OPER(nom="CALC_G_LOCAL_T",op=77,sd_prod=tabl_calc_g_loca,
2675                     fr="Calcul du taux de restitution local d énergie",docu="U4.82.04-E",reentrant='n',
2676          MODELE          =SIMP(statut='o',typ=modele),
2677          CHAM_MATER      =SIMP(statut='o',typ=cham_mater),
2678          FOND            =SIMP(statut='o',typ=fond_fiss),
2679          regles=(UN_PARMI('RESULTAT','DEPL'),
2680                  UN_PARMI('R_INF','R_INF_FO'),
2681                  PRESENT_PRESENT('R_INF','R_SUP'),
2682                  PRESENT_PRESENT('R_INF_FO','R_SUP_FO'), ),
2683                          
2684          DEPL            =SIMP(statut='f',typ=cham_no_depl_r),
2685          RESULTAT        =SIMP(statut='f',typ=(evol_elas,evol_noli),),
2686          b_extrac        =BLOC(condition="RESULTAT != None",fr="extraction d un champ",
2687              regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),),
2688              TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2689              NUME_ORDRE      =SIMP(statut='f',typ='I',max='**'),
2690              LIST_ORDRE      =SIMP(statut='f',typ=listis),
2691              INST            =SIMP(statut='f',typ='R',max='**'),
2692              LIST_INST       =SIMP(statut='f',typ=listr8),
2693              
2694              b_acce_reel     =BLOC(condition="(INST != None)or(LIST_INST != None)",
2695                PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-6),
2696                CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
2697              ),
2698          ),
2699  
2700          CHARGE          =SIMP(statut='f',typ=char_meca,max='**'),
2701          SYME_CHAR       =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SYME","ANTI","SANS") ),
2702  
2703          COMP_ELAS       =FACT(statut='f',min=01,max=01,
2704                RELATION        =SIMP(statut='f',typ='TXM',defaut="ELAS",
2705                                      into=("ELAS","ELAS_VMIS_LINE","ELAS_VMIS_TRAC") ),
2706                ELAS            =SIMP(statut='f',typ='I',defaut=1,into=(1,) ),
2707                ELAS_VMIS_LINE  =SIMP(statut='f',typ='I',defaut=1,into=(1,) ),
2708                ELAS_VMIS_TRAC  =SIMP(statut='f',typ='I',defaut=1,into=(1,) ),
2709                DEFORMATION     =SIMP(statut='f',typ='TXM',defaut="PETIT",into=("PETIT","GREEN") ),
2710                TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2711                GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
2712                MAILLE          =SIMP(statut='f',typ=ma,max='**'),
2713          ),
2714  
2715          COMP_INCR       =FACT(statut='f',min=01,max=01,
2716                RELATION        =SIMP(statut='f',typ='TXM',defaut="ELAS",
2717                                      into=("ELAS","VMIS_ISOT_TRAC","VMIS_ISOT_LINE","VMIS_CINE_LINE") ),
2718                ELAS            =SIMP(statut='f',typ='I',defaut=1,into=(1,) ),
2719                VMIS_ISOT_TRAC  =SIMP(statut='f',typ='I',defaut=2,into=(2,) ),
2720                VMIS_ISOT_LINE  =SIMP(statut='f',typ='I',defaut=2,into=(2,) ),
2721                VMIS_CINE_LINE  =SIMP(statut='f',typ='I',defaut=7,into=(7,) ),
2722                DEFORMATION     =SIMP(statut='f',typ='TXM',defaut="PETIT",into=("PETIT","PETIT_REAC") ),
2723                TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2724                GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
2725                MAILLE          =SIMP(statut='f',typ=ma,max='**'),
2726          ),
2727          
2728          ETAT_INIT       =FACT(statut='f',min=01,max=01,
2729            SIGM            =SIMP(statut='f',typ=cham_elem_sief_r),
2730            DEPL            =SIMP(statut='f',typ=cham_no_depl_r),
2731          ),
2732
2733          OPTION          =SIMP(statut='f',typ='TXM',defaut="CALC_G",into=("CALC_G","CALC_G_LGLO") ),
2734          b_g_lglo        =BLOC(condition="OPTION=='CALC_G_LGLO'",
2735            PROPAGATION     =SIMP(statut='o',typ='R'),
2736            THETA           =SIMP(statut='o',typ=theta_geom),
2737            DIRE_THETA      =SIMP(statut='f',typ=cham_no_depl_r),
2738          ), 
2739  
2740          LISSAGE_THETA   =SIMP(statut='f',typ='TXM',defaut="LEGENDRE",into=("LEGENDRE","LAGRANGE") ),
2741          LISSAGE_G       =SIMP(statut='f',typ='TXM',defaut="LEGENDRE",into=("LEGENDRE","LAGRANGE","LAGRANGE_NO_NO",) ),
2742           
2743          DEGRE           =SIMP(statut='f',typ='I',defaut=5,into=(0,1,2,3,4,5,6,7) ),
2744
2745          R_INF           =SIMP(statut='f',typ='R'),
2746          R_SUP           =SIMP(statut='f',typ='R'),
2747          R_INF_FO        =SIMP(statut='f',typ=fonction),
2748          R_SUP_FO        =SIMP(statut='f',typ=fonction),
2749  
2750          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
2751          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
2752 )  ;
2753 #& MODIF COMMANDE  DATE 03/10/2000   AUTEUR VABHHTS J.PELLET 
2754 CALC_G_THETA_T=OPER(nom="CALC_G_THETA_T",op=53,sd_prod=tabl_calc_g_th,
2755                     fr="Calcul du taux de restitution d énergie par la méthode theta en thermo-élasticité en 2D ou en 3D",
2756                     docu="U4.82.03-E",reentrant='n',
2757          regles=(UN_PARMI('RESULTAT','DEPL'),
2758                  EXCLUS('COMP_ELAS','COMP_INCR'),),
2759          MODELE          =SIMP(statut='o',typ=modele),
2760          CHAM_MATER      =SIMP(statut='o',typ=cham_mater),
2761          THETA           =SIMP(statut='o',typ=theta_geom),
2762          DEPL            =SIMP(statut='f',typ=cham_no_depl_r),
2763          RESULTAT        =SIMP(statut='f',typ=(evol_elas,evol_noli),),
2764
2765          b_extrac        =BLOC(condition="RESULTAT != None",fr="extraction d un champ",
2766            regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),),
2767            TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2768            NUME_ORDRE      =SIMP(statut='f',typ='I',max='**'),
2769            LIST_ORDRE      =SIMP(statut='f',typ=listis),
2770            INST            =SIMP(statut='f',typ='R',max='**'),
2771            LIST_INST       =SIMP(statut='f',typ=listr8),
2772             
2773            b_acce_reel     =BLOC(condition="(INST != None)or(LIST_INST != None)",
2774              PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-6),
2775              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
2776            ),
2777          ),
2778
2779          CHARGE          =SIMP(statut='f',typ=char_meca,max='**'),
2780          SYME_CHAR       =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SYME","ANTI","SANS") ),
2781  
2782          COMP_ELAS       =FACT(statut='f',min=01,max=01,
2783                RELATION        =SIMP(statut='f',typ='TXM',defaut="ELAS",
2784                                      into=("ELAS","ELAS_VMIS_LINE","ELAS_VMIS_TRAC") ),
2785                ELAS            =SIMP(statut='f',typ='I',defaut=1,into=(1,) ),
2786                ELAS_VMIS_LINE  =SIMP(statut='f',typ='I',defaut=1,into=(1,) ),
2787                ELAS_VMIS_TRAC  =SIMP(statut='f',typ='I',defaut=1,into=(1,) ),
2788                DEFORMATION     =SIMP(statut='f',typ='TXM',defaut="PETIT",into=("PETIT","GREEN") ),
2789                TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2790                GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
2791                MAILLE          =SIMP(statut='f',typ=ma,max='**'),
2792          ),  
2793          COMP_INCR       =FACT(statut='f',min=01,max=01,
2794                RELATION        =SIMP(statut='f',typ='TXM',defaut="ELAS",
2795                                      into=("ELAS","VMIS_ISOT_TRAC","VMIS_ISOT_LINE","VMIS_CINE_LINE") ),
2796                ELAS            =SIMP(statut='f',typ='I',defaut=1,into=(1,) ),
2797                VMIS_ISOT_TRAC  =SIMP(statut='f',typ='I',defaut=2,into=(2,) ),
2798                VMIS_ISOT_LINE  =SIMP(statut='f',typ='I',defaut=2,into=(2,) ),
2799                VMIS_CINE_LINE  =SIMP(statut='f',typ='I',defaut=7,into=(7,) ),
2800                DEFORMATION     =SIMP(statut='f',typ='TXM',defaut="PETIT",into=("PETIT","PETIT_REAC") ),
2801                TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2802                GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
2803                MAILLE          =SIMP(statut='f',typ=ma,max='**'),
2804          ),
2805          ETAT_INIT       =FACT(statut='f',min=01,max=01,
2806            SIGM            =SIMP(statut='f',typ=cham_elem_sief_r),
2807            DEPL            =SIMP(statut='f',typ=cham_no_depl_r),
2808          ),
2809          OPTION          =SIMP(statut='f',typ='TXM',defaut="CALC_G",
2810                                into=("CALC_G","CALC_G_LAGR","CALC_K_G","G_BILINEAIRE","CALC_G_MAX") ),
2811          b_calc_g_max    =BLOC(condition="OPTION=='CALC_G_MAX'",
2812            BORNES          =FACT(statut='o',min=01,max='**',
2813                 NUME_ORDRE     =SIMP(statut='o',typ='I'),
2814                 VALE_MIN       =SIMP(statut='o',typ='R'),
2815                 VALE_MAX       =SIMP(statut='o',typ='R'),
2816                                 ),
2817          ),
2818          b_calc_k_g      =BLOC(condition="OPTION=='CALC_K_G'",
2819            FOND            =SIMP(statut='o',typ=fond_fiss),
2820          ),
2821          b_calc_g_lagr   =BLOC(condition="OPTION=='CALC_G_LAGR'",
2822            PROPAGATION     =SIMP(statut='o',typ='R'),
2823          ),
2824          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
2825          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
2826 )  ;
2827 #& MODIF COMMANDE  DATE 04/02/98   AUTEUR CIBHHLV L.VIVAN 
2828 CALC_INTE_SPEC=OPER(nom="CALC_INTE_SPEC",op= 120,sd_prod=tabl_intsp,
2829                     fr="Calcul d une matrice interspectrale d une fonction du temps",
2830                     docu="U4.36.03-E",reentrant='n',
2831          INST_INIT       =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
2832          INST_FIN        =SIMP(statut='o',typ='R' ),
2833          DUREE_ANALYSE   =SIMP(statut='f',typ='R' ),
2834          DUREE_DECALAGE  =SIMP(statut='f',typ='R' ),
2835          NB_POIN         =SIMP(statut='o',typ='I' ),
2836          FONCTION        =SIMP(statut='o',typ=fonction,max='**' ),
2837          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
2838          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
2839 )  ;
2840 #& MODIF COMMANDE  DATE 19/05/2000   AUTEUR JFBHHUC C.ROSE
2841 CALC_MATR_AJOU=OPER(nom="CALC_MATR_AJOU",op= 152,sd_prod=matr_asse_gene_r,
2842                     fr="Calcul des matrices de masse, d amortissement ou de raideur ajoutées",
2843                     docu="U4.66.01-C",reentrant='n',
2844          regles=(EXCLUS('MODE_MECA','CHAM_NO','MODELE_GENE'),
2845                  PRESENT_ABSENT('NUME_DDL_GENE','CHAM_NO'),
2846                  PRESENT_PRESENT('MODELE_GENE','NUME_DDL_GENE'),),
2847          MODELE_FLUIDE   =SIMP(statut='o',typ=modele ),
2848          MODELE_INTERFACE=SIMP(statut='o',typ=modele ),         
2849          CHAM_MATER      =SIMP(statut='o',typ=cham_mater ),
2850          CHARGE          =SIMP(statut='o',typ=char_ther ),
2851          MODE_MECA       =SIMP(statut='f',typ=mode_meca ),
2852          CHAM_NO         =SIMP(statut='f',typ=cham_no_depl_r ),
2853          MODELE_GENE     =SIMP(statut='f',typ=modele_gene ),
2854          NUME_DDL_GENE   =SIMP(statut='f',typ=nume_ddl_gene ), 
2855          DIST_REFE       =SIMP(statut='f',typ='R',defaut= 1.E-2 ),   
2856          AVEC_MODE_STAT  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
2857          NUME_MODE_MECA  =SIMP(statut='f',typ='I',max='**'),
2858          OPTION          =SIMP(statut='o',typ='TXM',into=("MASS_AJOU","AMOR_AJOU","RIGI_AJOU") ),
2859          POTENTIEL       =SIMP(statut='f',typ=evol_ther ),
2860          NOEUD_DOUBLE    =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
2861          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ),
2862
2863          SOLVEUR         =FACT(statut='d',min=01,max=01,
2864            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
2865            b_mult_front    = BLOC ( condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
2866              RENUM           =SIMP(statut='f',typ='TXM',defaut="MDA",into=("MD","MDA","METIS") ),
2867            ),
2868            b_ldlt          =BLOC( condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT",
2869              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
2870              TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400. ),
2871            ),
2872            b_ldlt_mult     =BLOC( condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
2873                                    fr="Paramètres relatifs à la non iversibilité de la matrice à factorise",
2874              NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
2875              STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),             
2876            ),
2877            b_gcpc          =BLOC (condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué",
2878              PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC","SANS","DIAG") ),
2879              NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut=0),
2880              RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
2881              NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
2882            ),
2883 #  A quoi sert eps           
2884            EPS             =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
2885          ),
2886 )  ;
2887 #& MODIF COMMANDE  DATE 03/10/2000   AUTEUR VABHHTS J.PELLET 
2888 def calc_matr_elem_prod(OPTION,**args):
2889   if OPTION == "RIGI_MECA"        : return matr_elem_depl_r
2890   if OPTION == "RIGI_FLUI_STRU"   : return matr_elem_depl_r
2891   if OPTION == "RIGI_MECA_LAGR"   : return matr_elem_depl_r
2892   if OPTION == "MASS_MECA"        : return matr_elem_depl_r
2893   if OPTION == "MASS_FLUI_STRU"   : return matr_elem_depl_r
2894   if OPTION == "RIGI_GEOM"        : return matr_elem_depl_r
2895   if OPTION == "RIGI_ROTA"        : return matr_elem_depl_r
2896   if OPTION == "AMOR_MECA"        : return matr_elem_depl_r
2897   if OPTION == "IMPE_MECA"        : return matr_elem_depl_r
2898   if OPTION == "ONDE_FLUI"        : return matr_elem_depl_r
2899   if OPTION == "RIGI_MECA_HYST"   : return matr_elem_depl_c
2900   if OPTION == "RIGI_THER"        : return matr_elem_temp_r
2901   if OPTION == "MASS_THER"        : return matr_elem_temp_r
2902   if OPTION == "MASS_MECA_DIAG"   : return matr_elem_depl_r
2903   if OPTION == "RIGI_ACOU"        : return matr_elem_pres_c
2904   if OPTION == "MASS_ACOU"        : return matr_elem_pres_c
2905   if OPTION == "AMOR_ACOU"        : return matr_elem_pres_c
2906   raise AsException("type de concept resultat non prevu")
2907
2908 CALC_MATR_ELEM=OPER(nom="CALC_MATR_ELEM",op=   9,sd_prod=calc_matr_elem_prod
2909                     ,fr="Calcul des matrices élémentaires",docu="U4.61.01-F",reentrant='n',
2910          OPTION          =SIMP(statut='o',typ='TXM',
2911                                into=("RIGI_MECA","MASS_MECA","RIGI_GEOM",
2912                                      "AMOR_MECA","RIGI_THER","MASS_THER","IMPE_MECA",
2913                                      "ONDE_FLUI","MASS_FLUI_STRU","RIGI_FLUI_STRU",
2914                                      "RIGI_ROTA","MASS_MECA_DIAG","RIGI_ACOU",
2915                                      "MASS_ACOU","AMOR_ACOU","RIGI_MECA_HYST",
2916                                      "RIGI_MECA_LAGR") ),
2917
2918          b_rigi_meca = BLOC( condition = "OPTION=='RIGI_MECA'",
2919            regles=(AU_MOINS_UN('MODELE','CHARGE' ),),
2920            MODELE          =SIMP(statut='f',typ=modele ),
2921            b_modele        =BLOC(condition = "MODELE != None",
2922              CHAM_MATER      =SIMP(statut='f',typ=cham_mater ),
2923              CARA_ELEM       =SIMP(statut='f',typ=cara_elem ),
2924              MODE_FOURIER    =SIMP(statut='f',typ='I',defaut= 0 ),
2925            ),
2926            CHARGE          =SIMP(statut='f',typ=char_meca,max='**' ),
2927            b_charge        =BLOC (condition = "CHARGE != None",
2928              INST            =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
2929            ),
2930          ),
2931
2932          b_rigi_meca_lagr  =BLOC(condition = "OPTION=='RIGI_MECA_LAGR'",
2933            MODELE            =SIMP(statut='o',typ=modele ),
2934            CHAM_MATER        =SIMP(statut='o',typ=cham_mater ),
2935            CHARGE            =SIMP(statut='f',typ=char_meca,max='**'  ),
2936            b_charge        =BLOC(condition = "CHARGE != None",
2937              INST            =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
2938            ),
2939            THETA           =SIMP(statut='o',typ=theta_geom ),
2940            PROPAGATION     =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
2941          ),
2942
2943          b_mass_meca       =BLOC(condition = "(OPTION=='MASS_MECA') or (OPTION=='MASS_MECA_DIAG')",
2944            regles=(AU_MOINS_UN('MODELE','CHARGE'),),
2945            MODELE          =SIMP(statut='f',typ=modele ),
2946            b_modele          =BLOC(condition = "MODELE != None",
2947              CHAM_MATER        =SIMP(statut='f',typ=cham_mater ),
2948              CARA_ELEM         =SIMP(statut='f',typ=cara_elem ),
2949            ),
2950            CHARGE          =SIMP(statut='f',typ=char_meca,max='**' ),
2951            b_charge        =BLOC(condition = "CHARGE != None",
2952              INST            =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
2953            ),
2954          ),
2955
2956          b_rigi_geom       =BLOC(condition = "OPTION=='RIGI_GEOM'",
2957            MODELE            =SIMP(statut='o',typ=modele ),
2958            CARA_ELEM         =SIMP(statut='f',typ=cara_elem ),
2959            SIEF_ELGA         =SIMP(statut='o',typ=cham_elem_sief_r ),
2960            MODE_FOURIER      =SIMP(statut='f',typ='I',defaut= 0 ),
2961          ),
2962
2963          b_rigi_rota       =BLOC(condition = "OPTION=='RIGI_ROTA'",
2964            MODELE            =SIMP(statut='o',typ=modele ),
2965            CHAM_MATER        =SIMP(statut='o',typ=cham_mater ),
2966            CHARGE            =SIMP(statut='o',typ=char_meca,max='**' ),
2967            INST              =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
2968          ),
2969
2970          b_amor_meca       =BLOC(condition = "OPTION=='AMOR_MECA'",
2971            regles=(AU_MOINS_UN('CARA_ELEM','RIGI_MECA'),
2972                    ENSEMBLE('RIGI_MECA','MASS_MECA','CHAM_MATER'), ),
2973            MODELE            =SIMP(statut='o',typ=modele ),
2974            CARA_ELEM         =SIMP(statut='f',typ=cara_elem ),
2975            CHAM_MATER        =SIMP(statut='f',typ=cham_mater ),
2976            RIGI_MECA         =SIMP(statut='f',typ=matr_elem_depl_r ),
2977            MASS_MECA         =SIMP(statut='f',typ=matr_elem_depl_r ),
2978            CHARGE            =SIMP(statut='f',typ=char_meca ,max='**' ),
2979          ),
2980
2981          b_rigi_meca_hyst  =BLOC( condition = "OPTION=='RIGI_MECA_HYST'",
2982            MODELE            =SIMP(statut='o',typ=modele ),
2983            CHARGE            =SIMP(statut='o',typ=char_meca ,max='**' ),
2984            CHAM_MATER        =SIMP(statut='f',typ=cham_mater ),
2985            CARA_ELEM         =SIMP(statut='f',typ=cara_elem ),
2986            RIGI_MECA         =SIMP(statut='o',typ=matr_elem_depl_r ),
2987          ),
2988
2989          b_rigi_ther       =BLOC(condition = "OPTION=='RIGI_THER'",
2990            regles=(AU_MOINS_UN('MODELE','CHARGE' ),),
2991            MODELE            =SIMP(statut='f',typ=modele ),
2992            b_modele          =BLOC(condition = "MODELE != None",
2993              CHAM_MATER        =SIMP(statut='o',typ=cham_mater ),
2994              CARA_ELEM         =SIMP(statut='f',typ=cara_elem ),
2995              MODE_FOURIER      =SIMP(statut='f',typ='I',defaut= 0 ),
2996            ),
2997            CHARGE            =SIMP(statut='f',typ=char_ther,max='**' ),
2998          ),
2999
3000          b_mass_ther       =BLOC(condition = "OPTION=='MASS_THER'",
3001            MODELE            =SIMP(statut='o',typ=modele ),
3002            CHAM_MATER        =SIMP(statut='o',typ=cham_mater ),
3003            CARA_ELEM         =SIMP(statut='f',typ=cara_elem ),
3004          ),
3005
3006          b_rigi_acou       =BLOC(condition = "(OPTION=='RIGI_ACOU') or (OPTION=='MASS_ACOU') or (OPTION=='AMOR_ACOU')",
3007            MODELE            =SIMP(statut='o',typ=modele ),
3008            CHAM_MATER        =SIMP(statut='o',typ=cham_mater ),
3009            CHARGE            =SIMP(statut='f',typ=char_acou ,max='**' ),
3010          ),
3011
3012          b_rigi_flui       =BLOC(condition = "(OPTION=='RIGI_FLUI_STRU') or (OPTION=='MASS_FLUI_STRU')",
3013            MODELE            =SIMP(statut='o',typ=modele ),
3014            CARA_ELEM         =SIMP(statut='o',typ=cara_elem ),
3015            CHAM_MATER        =SIMP(statut='o',typ=cham_mater ),
3016            CHARGE            =SIMP(statut='o',typ=char_meca ,max='**' ),
3017            INST              =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
3018          ),
3019
3020          b_impe_meca       =BLOC(condition = "(OPTION=='IMPE_MECA') or (OPTION=='ONDE_FLUI')",
3021            MODELE            =SIMP(statut='o',typ=modele ),
3022            CHARGE            =SIMP(statut='o',typ=char_meca,max='**' ),
3023            CHAM_MATER        =SIMP(statut='o',typ=cham_mater ),
3024          ),
3025
3026          b_rigi_conv       =BLOC( condition = "(OPTION=='RIGI_THER_CONV') or (OPTION=='RIGI_THER_CONV_D')",
3027            MODELE            =SIMP(statut='o',typ=modele ),
3028            CHAM_MATER        =SIMP(statut='o',typ=cham_mater ),
3029            CHARGE            =SIMP(statut='o',typ=char_ther,max='**' ),
3030          ),
3031
3032 )  ;
3033 #& MODIF COMMANDE  DATE 04/07/2000   AUTEUR JMBHH01 J.M.PROIX 
3034 CALC_META=OPER(nom="CALC_META",op=194,sd_prod=evol_ther,docu="U4.85.01-A",reentrant='o',
3035                fr="Calcule la métallurgie à partir du résultat du calcul thermique",
3036          MODELE          =SIMP(statut='o',typ=modele ),
3037          CHAM_MATER      =SIMP(statut='o',typ=cham_mater ),
3038          RESULTAT        =SIMP(statut='o',typ=evol_ther ),
3039          ETAT_INIT       =FACT(statut='o',min=01,max=01,
3040       regles=(UN_PARMI('NUME_INIT','META_INIT',),),
3041            EVOL_THER       =SIMP(statut='f',typ=evol_ther ),
3042            NUME_INIT       =SIMP(statut='f',typ='I' ),  
3043            META_INIT       =SIMP(statut='f',typ=carte_var2_r ),
3044          ),
3045          COMP_INCR       =FACT(statut='o',min=01,max='**',
3046            RELATION        =SIMP(statut='o',typ='TXM',into=("ACIER","ZIRC",) ),
3047            ACIER           =SIMP(statut='c',typ='I',defaut=7,into=(7,) ),
3048            ZIRC            =SIMP(statut='c',typ='I',defaut=3,into=(3,) ),
3049            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
3050            GROUP_MA        =SIMP(statut='f',typ=grma),
3051            MAILLE          =SIMP(statut='f',typ=ma),
3052          ),
3053          OPTION          =SIMP(statut='f',typ='TXM'     
3054                              ,into=("META_ELNO_TEMP",) ),
3055 )  ;
3056 #& MODIF COMMANDE  DATE 12/05/2000   AUTEUR CIBHHAB N.RAHNI
3057 def calc_no_prod(RESULTAT,**args):
3058   if AsType(RESULTAT) == evol_elas :    return evol_elas
3059   if AsType(RESULTAT) == evol_noli :    return evol_noli
3060   if AsType(RESULTAT) == evol_ther :    return evol_ther
3061   if AsType(RESULTAT) == mode_meca :    return mode_meca
3062   if AsType(RESULTAT) == mode_stat :    return mode_stat
3063   if AsType(RESULTAT) == mode_acou :    return mode_acou
3064   if AsType(RESULTAT) == mult_elas :    return mult_elas
3065   if AsType(RESULTAT) == dyna_trans :   return dyna_trans
3066   if AsType(RESULTAT) == dyna_harmo :   return dyna_harmo
3067   if AsType(RESULTAT) == acou_harmo :   return acou_harmo
3068   if AsType(RESULTAT) == fourier_elas : return fourier_elas
3069   if AsType(RESULTAT) == mode_flamb :   return mode_flamb 
3070   if AsType(RESULTAT) == base_modale :  return base_modale
3071   raise AsException("type de concept resultat non prevu")
3072
3073 CALC_NO=OPER(nom="CALC_NO",op= 106,sd_prod=calc_no_prod,docu="U4.81.02-E",reentrant='o',
3074              fr="Compléter un résultat en calculant un champ aux noeuds (forces nodales à partir d un champ de contraintes aux points de GAUSS)",
3075          RESULTAT        =SIMP(statut='o',typ=(evol_elas,dyna_trans,dyna_harmo,acou_harmo,mode_meca,
3076                                                mode_acou,mode_stat,evol_ther,evol_noli,base_modale,
3077                                                mult_elas,fourier_elas,mode_flamb ) ),
3078
3079          MODELE          =SIMP(statut='f',typ=modele),
3080          regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE',
3081                         'NOEUD_CMP','LIST_INST','LIST_FREQ','LIST_ORDRE','NOM_CAS'),),
3082          TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
3083          NUME_ORDRE      =SIMP(statut='f',typ='I',max='**'),
3084          NUME_MODE       =SIMP(statut='f',typ='I',max='**'),
3085          NOEUD_CMP       =SIMP(statut='f',typ='TXM',max='**'),
3086          NOM_CAS         =SIMP(statut='f',typ='TXM' ),
3087          INST            =SIMP(statut='f',typ='R',max='**'),
3088          FREQ            =SIMP(statut='f',typ='R',max='**'),
3089          LIST_INST       =SIMP(statut='f',typ=listr8),
3090          LIST_FREQ       =SIMP(statut='f',typ=listr8),
3091          PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3 ),
3092          CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
3093          LIST_ORDRE      =SIMP(statut='f',typ=listis),
3094            
3095          OPTION          =SIMP(statut='o',typ='TXM',max='**'),
3096          
3097          CHAM_MATER      =SIMP(statut='f',typ=cham_mater),
3098          CARA_ELEM       =SIMP(statut='f',typ=cara_elem),
3099          GEOMETRIE       =SIMP(statut='f',typ='TXM',defaut="INITIALE",into=("INITIALE","DEFORMEE") ),
3100          EXCIT           =FACT(statut='f',min=01,max='**',
3101            CHARGE          =SIMP(statut='f',typ=(char_meca,char_ther,char_acou) ),
3102            FONC_MULT       =SIMP(statut='f',typ=fonction),
3103            TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FIXE_CSTE",
3104                                  into=("FIXE_CSTE","FIXE_PILO","SUIV") ),
3105          ),
3106          TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
3107          GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
3108          MAILLE          =SIMP(statut='f',typ=ma,max='**'),
3109          TAILLE_BLOC     =SIMP(statut='f',typ='R' ,defaut= 400. ),
3110 )  ;
3111 #& MODIF COMMANDE  DATE 20/10/1999   AUTEUR DURAND C.DURAND 
3112 CALC_THETA=OPER(nom="CALC_THETA",op=54,sd_prod=theta_geom,docu="U4.82.02-D",reentrant='n',
3113                 fr="Affectation d un champ sur le maillage (mécanique de la rupture)",
3114          regles=(UN_PARMI('THETA_2D','THETA_3D','THETA_BANDE'),
3115                  PRESENT_PRESENT('THETA_3D','FOND_3D'),
3116                  PRESENT_ABSENT('THETA_2D','DIRE_THETA'),
3117                  EXCLUS('DIRECTION','DIRE_THETA'),),
3118          OPTION          =SIMP(statut='f',typ='TXM',defaut="COURONNE",into=("COURONNE","BANDE") ),
3119          MODELE          =SIMP(statut='o',typ=(modele) ),
3120          FOND_3D         =SIMP(statut='f',typ=(fond_fiss) ),
3121          THETA_3D        =FACT(statut='f',min=01,max='**',
3122            regles=(UN_PARMI('TOUT','GROUP_NO','NOEUD'),
3123                    UN_PARMI('MODULE','MODULE_FO'),
3124                    ENSEMBLE('MODULE','R_INF','R_SUP'),
3125                    ENSEMBLE('MODULE_FO','R_INF_FO','R_SUP_FO'),),
3126            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
3127            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
3128            NOEUD           =SIMP(statut='f',typ=no,max='**'),
3129            MODULE          =SIMP(statut='f',typ='R'),
3130            R_INF           =SIMP(statut='f',typ='R'),
3131            R_SUP           =SIMP(statut='f',typ='R'),
3132            MODULE_FO       =SIMP(statut='f',typ=fonction),
3133            R_INF_FO        =SIMP(statut='f',typ=fonction),
3134            R_SUP_FO        =SIMP(statut='f',typ=fonction),
3135                          ),
3136          DIRE_THETA      =SIMP(statut='f',typ=(cham_no_depl_r) ),
3137          DIRECTION       =SIMP(statut='f',typ='R',max='**'),
3138          THETA_2D        =FACT(statut='f',min=01,max='**',
3139            regles=(UN_PARMI('GROUP_NO','NOEUD'),),
3140            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
3141            NOEUD           =SIMP(statut='f',typ=no,max='**'),
3142            MODULE          =SIMP(statut='o',typ='R'),
3143            R_INF           =SIMP(statut='o',typ='R'),
3144            R_SUP           =SIMP(statut='o',typ='R'),
3145          ),
3146          THETA_BANDE     =FACT(statut='f',min=01,max='**',
3147            MODULE          =SIMP(statut='o',typ='R'),
3148            R_INF           =SIMP(statut='o',typ='R'),
3149            R_SUP           =SIMP(statut='o',typ='R'),
3150          ),
3151          GRAD_NOEU_THETA =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
3152          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
3153          IMPRESSION      =FACT(statut='f',min=01,max=01,
3154            FICHIER         =SIMP(statut='f',typ='TXM',defaut="RESULTAT",into=("RESULTAT",) ),
3155            FORMAT          =SIMP(statut='f',typ='TXM',defaut="EXCEL",into=("EXCEL","AGRAF") ),
3156          ),
3157 )  ;
3158 #& MODIF COMMANDE  DATE 11/01/99   AUTEUR VABHHTS J.PELLET 
3159 def calc_vect_elem_prod(OPTION,**args):
3160   if OPTION == "CHAR_MECA" :      return vect_elem_depl_r
3161   if OPTION == "CHAR_MECA_LAGR" : return vect_elem_depl_r
3162   if OPTION == "CHAR_THER" :      return vect_elem_temp_r
3163   if OPTION == "CHAR_ACOU" :      return vect_elem_pres_c
3164   if OPTION == "FORC_NODA" :      return vect_elem_depl_r
3165   raise AsException("type de concept resultat non prevu")
3166
3167 CALC_VECT_ELEM=OPER(nom="CALC_VECT_ELEM",op=8,sd_prod=calc_vect_elem_prod,docu="U4.61.02-F",reentrant='n',
3168                     fr="Calcul des seconds membres élémentaires",
3169          OPTION          =SIMP(statut='o',typ='TXM',into=("CHAR_MECA","CHAR_THER","CHAR_ACOU",
3170                                                            "FORC_NODA","CHAR_MECA_LAGR") ),
3171          b_char_meca     =BLOC(condition = "OPTION=='CHAR_MECA'",
3172            regles=(AU_MOINS_UN('CHARGE','MODELE'),),
3173            CHARGE          =SIMP(statut='f',typ=char_meca,max='**'),
3174            MODELE          =SIMP(statut='f',typ=modele),
3175            b_charge     =BLOC(condition = "CHARGE != None", fr="modèle ne contenant pas de sous-structure",
3176               CHAM_MATER   =SIMP(statut='f',typ=cham_mater),
3177               CARA_ELEM    =SIMP(statut='f',typ=cara_elem),
3178               INST         =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
3179               MODE_FOURIER =SIMP(statut='f',typ='I',defaut= 0 ),
3180            ),  
3181            b_modele     =BLOC(condition = "(MODELE != None)",fr="modèle contenant une sous-structure",
3182               SOUS_STRUC      =FACT(statut='o',min=01,
3183                 regles=(UN_PARMI('TOUT','MAILLE'),),
3184                 CAS_CHARGE  =SIMP(statut='o',typ='TXM' ),
3185                 TOUT        =SIMP(statut='f',typ='TXM',into=("OUI",) ),
3186                 MAILLE      =SIMP(statut='f',typ=ma,max='**',),
3187               ),
3188            ),
3189          ),
3190          b_char_ther     =BLOC(condition = "OPTION=='CHAR_THER'",
3191            CARA_ELEM        =SIMP(statut='f',typ=cara_elem),
3192            CHARGE           =SIMP(statut='o',typ=char_ther,max='**'),
3193            INST             =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
3194          ),
3195               
3196          b_char_acou     =BLOC(condition = "OPTION=='CHAR_ACOU'",
3197            CHAM_MATER        =SIMP(statut='o',typ=cham_mater),
3198            CHARGE            =SIMP(statut='o',typ=char_acou,max='**'),
3199          ),
3200          
3201          b_forc_noda     =BLOC(condition = "OPTION=='FORC_NODA'",
3202            SIEF_ELGA         =SIMP(statut='o',typ=cham_elem_sief_r),
3203            CARA_ELEM         =SIMP(statut='f',typ=cara_elem),
3204            MODELE            =SIMP(statut='f',typ=modele),
3205          ),
3206          
3207          b_meca_lagr     =BLOC(condition = "OPTION=='CHAR_MECA_LAGR'",
3208            CHAM_MATER        =SIMP(statut='o',typ=cham_mater),
3209            THETA             =SIMP(statut='o',typ=theta_geom),
3210            PROPAGATION       =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
3211            CHARGE            =SIMP(statut='f',typ=char_meca,max='**'),
3212            INST              =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
3213          ),
3214 ) ;
3215 #& MODIF COMMANDE  DATE 31/10/2000   AUTEUR VABHHTS J.PELLET 
3216 def comb_cham_elem_prod(COMB_R=None,COMB_C=None,COMB_FOURIER=None,**args):
3217
3218   if COMB_R != None:
3219     vale=COMB_R.get_child('CHAM_ELEM').get_valeur()
3220   elif COMB_C != None:
3221     vale=COMB_C.get_child('CHAM_ELEM').get_valeur()
3222   elif COMB_FOURIER != None:
3223     vale=COMB_FOURIER.get_child('CHAM_ELEM').get_valeur()
3224   else :
3225     raise AsException("type de concept resultat non prevu")
3226
3227   if AsType(vale) == cham_elem_sief_r : return cham_elem_sief_r
3228   if AsType(vale) == cham_elem_flux_r : return cham_elem_flux_r
3229   if AsType(vale) == cham_elem_epsi_r : return cham_elem_epsi_r
3230   if AsType(vale) == cham_elem_ener_r : return cham_elem_ener_r
3231   if AsType(vale) == cham_elem_crit_r : return cham_elem_crit_r
3232   if AsType(vale) == cham_elem_dbel_r : return cham_elem_dbel_r
3233   if AsType(vale) == cham_elem_pres_r : return cham_elem_pres_r
3234   if AsType(vale) == cham_elem_sief_c : return cham_elem_sief_c
3235   raise AsException("type de concept resultat non prevu")
3236
3237 COMB_CHAM_ELEM=OPER(nom="COMB_CHAM_ELEM",op= 139,sd_prod=comb_cham_elem_prod,reentrant='f',
3238                     fr="Combinaison linéaire de champs par éléments",docu="U4.72.03-E",
3239       regles=(UN_PARMI('COMB_R','COMB_C','COMB_FOURIER'),
3240               PRESENT_PRESENT('COMB_FOURIER','ANGL'),),
3241       COMB_R          =FACT(statut='f',min=01,max='**',
3242         PARTIE          =SIMP(statut='f',typ='TXM',into=("REEL","IMAG") ),
3243         COEF_R          =SIMP(statut='o',typ='R'),
3244         CHAM_ELEM       =SIMP(statut='o',
3245                               typ=(cham_elem_sief_r,cham_elem_flux_r,cham_elem_epsi_r,
3246                                    cham_elem_ener_r,cham_elem_crit_r,cham_elem_dbel_r,
3247                                    cham_elem_pres_r,cham_elem_sief_c ) ),
3248       ),
3249       COMB_C          =FACT(statut='f',min=01,max='**',
3250         regles=(UN_PARMI('COEF_R','COEF_C', ),),
3251         COEF_R          =SIMP(statut='f',typ='R'),
3252         COEF_C          =SIMP(statut='f',typ='C'),
3253         CHAM_ELEM       =SIMP(statut='o',typ=(cham_elem_sief_r) ),
3254       ),
3255       COMB_FOURIER    =FACT(statut='f',min=01,max='**',
3256         COEF_R          =SIMP(statut='f',typ='R',defaut= 1.),
3257         NUME_MODE       =SIMP(statut='o',typ='I'),
3258         TYPE_MODE       =SIMP(statut='o',typ='TXM',into=("SYME","ANTI") ),
3259         CHAM_ELEM       =SIMP(statut='o',typ=(cham_elem_sief_r,cham_elem_flux_r,cham_elem_epsi_r ) ),
3260       ),
3261       ANGL            =SIMP(statut='f',typ='R' ),
3262 )  ;
3263
3264 #& MODIF COMMANDE DATE 08/03/94 AUTEUR VABHHT2 G.BERTRAND
3265 def comb_cham_no_prod(COMB_R,COMB_C,COMB_FOURIER,**args):
3266   if COMB_C != None:
3267     type_mat = AsType(COMB_C.get_child('CHAM_NO').get_valeur())
3268     if type_mat in  (cham_no_depl_c,cham_no_depl_r) : return cham_no_depl_c
3269     if type_mat in  (cham_no_temp_c,cham_no_temp_r) : return cham_no_temp_c
3270     if type_mat in  (cham_no_pres_c,cham_no_pres_r) : return cham_no_pres_c
3271   elif COMB_R != None:
3272     type_mat = AsType(COMB_R.get_child('CHAM_NO').get_valeur())
3273     if type_mat in  (cham_no_depl_c,cham_no_depl_r) : return cham_no_depl_r
3274     if type_mat in  (cham_no_temp_c,cham_no_temp_r) : return cham_no_temp_r
3275     if type_mat in  (cham_no_pres_c,cham_no_pres_r) : return cham_no_pres_r
3276     if type_mat ==  matr_asse_gene_r : return matr_asse_gene_r
3277   elif COMB_FOURIER != None:
3278     type_mat = AsType(COMB_FOURIER.get_child('CHAM_NO').get_valeur())
3279     if type_mat == cham_no_temp_r : return cham_no_temp_r
3280     if type_mat == cham_no_depl_r : return cham_no_depl_r
3281   raise AsException("type de concept resultat non prevu")
3282
3283
3284 COMB_CHAM_NO=OPER(nom="COMB_CHAM_NO",op=  30,sd_prod=comb_cham_no_prod
3285                     ,fr="Combinaison linéaire de champs aux noeuds",
3286                      docu="U4.72.02-F",reentrant='f',
3287          regles=(UN_PARMI('COMB_R','COMB_C','COMB_FOURIER'),),
3288          COMB_R          =FACT(statut='f',min=01,max='**',
3289            PARTIE          =SIMP(statut='f',typ='TXM',into=("REEL","IMAG",) ),
3290            CHAM_NO         =SIMP(statut='o',typ=(cham_no_temp_r,cham_no_temp_c,cham_no_depl_r,cham_no_depl_c
3291                                                 ,cham_no_pres_r,cham_no_pres_c ) ),
3292            COEF_R          =SIMP(statut='o',typ='R' ),
3293          ),
3294          COMB_C          =FACT(statut='f',min=01,max='**',
3295            regles=(UN_PARMI('COEF_R','COEF_C' ),),
3296            CHAM_NO         =SIMP(statut='o',typ=(cham_no_temp_r,cham_no_depl_r,cham_no_pres_r,cham_no_temp_c
3297                                                 ,cham_no_depl_c,cham_no_pres_c ) ),
3298            COEF_R          =SIMP(statut='f',typ='R' ),
3299            COEF_C          =SIMP(statut='f',typ='C' ),
3300          ),
3301          COMB_FOURIER    =FACT(statut='f',min=01,max='**',
3302            CHAM_NO         =SIMP(statut='o',typ=(cham_no_temp_r,cham_no_depl_r) ),
3303            COEF_R          =SIMP(statut='f',typ='R',defaut= 1. ),
3304            NUME_MODE       =SIMP(statut='o',typ='I' ),
3305            TYPE_MODE       =SIMP(statut='o',typ='TXM',into=("SYME","ANTI") ),
3306          ),
3307          b_angl = BLOC ( condition = "COMB_FOURIER != None",
3308            ANGL            =SIMP(statut='o',typ='R' ),
3309          ),
3310 )  ;
3311 #& MODIF COMMANDE  DATE 08/11/95   AUTEUR CIBHHLV L.VIVAN 
3312 COMB_FOURIER=OPER(nom="COMB_FOURIER",op= 161,sd_prod=comb_fourier,
3313                   fr="Recombinaison de FOURIER de tous les modes se trouvant dans la structure de données de type resultat dans une ou des directions particulières",
3314                   docu="U4.83.31-C",reentrant='n',
3315          RESULTAT        =SIMP(statut='o',typ=fourier_elas ),
3316          ANGL            =SIMP(statut='o',typ='R',max='**'),
3317          NOM_CHAM        =SIMP(statut='o',typ='TXM',max=05,
3318                                into=("DEPL","REAC_NODA","SIEF_ELGA_DEPL","EPSI_ELNO_DEPL","SIGM_ELNO_DEPL") ),
3319 )  ;
3320 #& MODIF COMMANDE DATE 06/10/94 AUTEUR BIBERON G.ROUSSEAU
3321 def comb_matr_asse_prod(COMB_R,COMB_C,**args):
3322   if COMB_C != None:
3323     type_mat = AsType(COMB_C.get_child('MATR_ASSE').get_valeur())
3324     if type_mat in  (matr_asse_depl_c,matr_asse_depl_r) : return matr_asse_depl_c
3325     if type_mat in  (matr_asse_temp_c,matr_asse_temp_r) : return matr_asse_temp_c
3326     if type_mat in  (matr_asse_pres_c,matr_asse_pres_r) : return matr_asse_pres_c
3327     if type_mat in  (matr_asse_gene_c,matr_asse_gene_r) : return matr_asse_gene_c
3328   elif COMB_R != None:
3329     type_mat = AsType(COMB_R.get_child('MATR_ASSE').get_valeur())
3330     if type_mat in  (matr_asse_depl_c,matr_asse_depl_r) : return matr_asse_depl_r
3331     if type_mat in  (matr_asse_temp_c,matr_asse_temp_r) : return matr_asse_temp_r
3332     if type_mat in  (matr_asse_pres_c,matr_asse_pres_r) : return matr_asse_pres_r
3333     if type_mat in  (matr_asse_gene_c,matr_asse_gene_r) : return matr_asse_gene_r
3334   raise AsException("type de concept resultat non prevu")
3335
3336 COMB_MATR_ASSE=OPER(nom="COMB_MATR_ASSE",op=  31,sd_prod=comb_matr_asse_prod,
3337                     fr="Combinaison linéaire de matrices assemblées",
3338                     docu="U4.72.01-F",reentrant='f',
3339          regles=(UN_PARMI('COMB_R','COMB_C' ),),
3340          COMB_R          =FACT(statut='f',min=01,max='**',
3341            PARTIE          =SIMP(statut='f',typ='TXM',into=("REEL","IMAG") ),
3342            MATR_ASSE       =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,
3343                                                  matr_asse_temp_r,matr_asse_temp_c,
3344                                                  matr_asse_pres_r,matr_asse_pres_c,
3345                                                  matr_asse_gene_r,matr_asse_gene_c ) ),
3346            COEF_R          =SIMP(statut='o',typ='R' ),
3347          ),
3348          COMB_C          =FACT(statut='f',min=01,max='**',
3349            regles=(UN_PARMI('COEF_R','COEF_C' ),),
3350            MATR_ASSE       =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,
3351                                                  matr_asse_temp_r,matr_asse_temp_c,
3352                                                  matr_asse_pres_r,matr_asse_pres_c,
3353                                                  matr_asse_gene_r,matr_asse_gene_c ) ),
3354            COEF_R          =SIMP(statut='f',typ='R' ),
3355            COEF_C          =SIMP(statut='f',typ='C' ),
3356          ),
3357          SANS_CMP        =SIMP(statut='f',typ='TXM',into=("LAGR",) ),
3358 )  ;
3359 #& MODIF COMMANDE  DATE 03/05/2000   AUTEUR CIBHHAB N.RAHNI 
3360 COMB_SISM_MODAL=OPER(nom="COMB_SISM_MODAL",op= 109,sd_prod=mode_stat,
3361                      fr="Réponse sismique par recombinaison modale par une méthode spectrale",
3362                      docu="U4.84.01-D",reentrant='n',
3363          regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','FREQ','NUME_MODE','LIST_FREQ','LIST_ORDRE'),
3364                  UN_PARMI('AMOR_REDUIT','LIST_AMOR','AMOR_GENE' ),),
3365          MODE_MECA       =SIMP(statut='o',typ=mode_meca ),
3366          TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
3367          NUME_ORDRE      =SIMP(statut='f',typ='I',max='**'),
3368          LIST_ORDRE      =SIMP(statut='f',typ=listis ),
3369          NUME_MODE       =SIMP(statut='f',typ='I',max='**'),
3370          FREQ            =SIMP(statut='f',typ='R',max='**'),
3371          LIST_FREQ       =SIMP(statut='f',typ=listr8 ),
3372          b_freq          =BLOC(condition = "FREQ != None or LIST_FREQ != None",
3373            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
3374            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
3375          ),
3376          ACCE_UNIF       =SIMP(statut='f',typ=mode_stat ),
3377          
3378          AMOR_REDUIT     =SIMP(statut='f',typ='R',max='**'),
3379          LIST_AMOR       =SIMP(statut='f',typ=listr8 ),
3380          AMOR_GENE       =SIMP(statut='f',typ=matr_asse_gene_r ),
3381          
3382          MASS_INER       =SIMP(statut='f',typ=tabl_mass_iner ),
3383          CORR_FREQ       =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
3384          
3385          EXCIT           =FACT(statut='o',min=01,max='**',
3386            regles=(UN_PARMI('MONO_APPUI','NOEUD','GROUP_NO'),
3387                    UN_PARMI('AXE','TRI_AXE','TRI_SPEC' ),),
3388            
3389            MONO_APPUI      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
3390            NOEUD           =SIMP(statut='f',typ=no,max='**'),
3391            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
3392            AXE             =SIMP(statut='f',fr="Excitation suivant un seul axe",
3393                                  typ='R',max=03),  
3394            TRI_AXE         =SIMP(statut='f',fr="Excitation suivant les trois axes mais avec le meme spectre",
3395                                  typ='R',max=03),
3396            TRI_SPEC        =SIMP(statut='f',fr="Excitation suivant les trois axes  avec trois spectres",
3397                                  typ='TXM',into=("OUI",) ),
3398            b_axe           =BLOC(condition = "AXE != None",fr="Excitation suivant un seul axe",
3399              SPEC_OSCI       =SIMP(statut='o',typ=fonction,max=01 ),
3400              ECHELLE         =SIMP(statut='f',typ='R',max=01),
3401            ),
3402            b_tri_axe       =BLOC(condition = "TRI_AXE != None",fr="Excitation suivant les trois axes mais avec le meme spectre",
3403              SPEC_OSCI       =SIMP(statut='o',typ=fonction,max=01 ),
3404              ECHELLE         =SIMP(statut='f',typ='R',max=01),
3405            ),
3406            b_tri_spec      =BLOC(condition = "TRI_SPEC != None",fr="Excitation suivant les trois axes  avec trois spectres",
3407              SPEC_OSCI       =SIMP(statut='o',typ=fonction,min=03,max=03 ),
3408              ECHELLE         =SIMP(statut='f',typ='R',min=03,max=03),
3409            ),       
3410            NATURE          =SIMP(statut='f',typ='TXM',defaut="ACCE",into=("ACCE","VITE","DEPL") ),
3411          ),
3412          COMB_MODE       =FACT(statut='o',min=01,max=01,
3413            TYPE            =SIMP(statut='o',typ='TXM',into=("SRSS","CQC","DSC","ABS","DPC") ),
3414            DUREE           =SIMP(statut='f',typ='R' ),
3415          ),
3416          COMB_DIRECTION  =FACT(statut='f',min=01,max=01,
3417            TYPE            =SIMP(statut='f',typ='TXM',into=("QUAD","NEWMARK") ),
3418          ),
3419          COMB_MULT_APPUI =FACT(statut='f',min=01,max='**',
3420            regles=(UN_PARMI('TOUT','NOEUD','GROUP_NO' ),),
3421            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
3422            NOEUD           =SIMP(statut='f',typ=no,max='**'),
3423            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
3424            TYPE            =SIMP(statut='o',typ='TXM',into=("QUAD","LINE","ABS") ),
3425          ),
3426          DEPL_MULT_APPUI =FACT(statut='f',min=01,max='**',
3427            regles=(UN_PARMI('NOEUD','GROUP_NO'),
3428                    AU_MOINS_UN('DX','DY','DZ' ),),
3429            MODE_STAT       =SIMP(statut='f',typ=mode_stat ),
3430            NOEUD_REFE      =SIMP(statut='f',typ=no),
3431            NOEUD           =SIMP(statut='f',typ=no,max='**'),
3432            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
3433            DX              =SIMP(statut='f',typ='R' ),
3434            DY              =SIMP(statut='f',typ='R' ),
3435            DZ              =SIMP(statut='f',typ='R' ),
3436          ),
3437          OPTION          =SIMP(statut='o',typ='TXM',max=10,
3438                                into=("DEPL","VITE","ACCE_ABSOLU","SIGM_ELNO_DEPL","SIEF_ELGA_DEPL",
3439                                      "EFGE_ELNO_DEPL","REAC_NODA","FORC_NODA","EFGE_ELNO_CART",
3440                                      "SIPO_ELNO_DEPL",) ),
3441          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ),
3442          IMPRESSION      =FACT(statut='f',min=01,max='**',
3443            regles=(EXCLUS('TOUT','NIVEAU'),),
3444            TOUT            =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
3445            NIVEAU          =SIMP(statut='f',typ='TXM',into=("SPEC_OSCI","MASS_EFFE","MAXI_GENE"),max=03 ),
3446          ),
3447          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
3448 )  ;
3449 #& MODIF COMMANDE  DATE 04/12/2000   AUTEUR VABHHTS J.PELLET 
3450 def crea_champ_prod(TYPE_CHAM,**args):
3451   if TYPE_CHAM == "CART_DBEL_R" : return carte_dbel_r
3452   if TYPE_CHAM == "CART_DEPL_C" : return carte_depl_c
3453   if TYPE_CHAM == "CART_DEPL_F" : return carte_depl_f
3454   if TYPE_CHAM == "CART_DEPL_R" : return carte_depl_r
3455   if TYPE_CHAM == "CART_DURT_R" : return carte_durt_r
3456   if TYPE_CHAM == "CART_ENER_R" : return carte_ener_r
3457   if TYPE_CHAM == "CART_EPSI_R" : return carte_epsi_r
3458   if TYPE_CHAM == "CART_ERREUR" : return carte_erreur
3459   if TYPE_CHAM == "CART_FLUX_R" : return carte_flux_r
3460   if TYPE_CHAM == "CART_GEOM_R" : return carte_geom_r
3461   if TYPE_CHAM == "CART_G_DEPL_R" : return carte_g_depl_r
3462   if TYPE_CHAM == "CART_HYDR_R" : return carte_hydr_r
3463   if TYPE_CHAM == "CART_INST_R" : return carte_inst_r
3464   if TYPE_CHAM == "CART_INTE_R" : return carte_inte_r
3465   if TYPE_CHAM == "CART_META_R" : return carte_meta_r
3466   if TYPE_CHAM == "CART_NEUT_F" : return carte_neut_f
3467   if TYPE_CHAM == "CART_NEUT_R" : return carte_neut_r
3468   if TYPE_CHAM == "CART_PRES_R" : return carte_pres_r
3469   if TYPE_CHAM == "CART_SIEF_R" : return carte_sief_r
3470   if TYPE_CHAM == "CART_SOUR_R" : return carte_sour_r
3471   if TYPE_CHAM == "CART_TEMP_F" : return carte_temp_f
3472   if TYPE_CHAM == "CART_TEMP_R" : return carte_temp_r
3473   if TYPE_CHAM == "CART_VAR2_R" : return carte_var2_r
3474   if TYPE_CHAM == "CART_VNOR_C" : return carte_vnor_c
3475   if TYPE_CHAM == "NOEU_DBEL_R" : return cham_no_dbel_r
3476   if TYPE_CHAM == "NOEU_DEPL_C" : return cham_no_depl_c
3477   if TYPE_CHAM == "NOEU_DEPL_F" : return cham_no_depl_f
3478   if TYPE_CHAM == "NOEU_DEPL_R" : return cham_no_depl_r
3479   if TYPE_CHAM == "NOEU_DURT_R" : return cham_no_durt_r
3480   if TYPE_CHAM == "NOEU_ENER_R" : return cham_no_ener_r
3481   if TYPE_CHAM == "NOEU_EPSI_R" : return cham_no_epsi_r
3482   if TYPE_CHAM == "NOEU_ERREUR" : return cham_no_erreur
3483   if TYPE_CHAM == "NOEU_FLUX_R" : return cham_no_flux_r
3484   if TYPE_CHAM == "NOEU_GEOM_R" : return cham_no_geom_r
3485   if TYPE_CHAM == "NOEU_G_DEPL_R" : return cham_no_g_depl_r
3486   if TYPE_CHAM == "NOEU_HYDR_R" : return cham_no_hydr_r
3487   if TYPE_CHAM == "NOEU_INST_R" : return cham_no_inst_r
3488   if TYPE_CHAM == "NOEU_INTE_R" : return cham_no_inte_r
3489   if TYPE_CHAM == "NOEU_META_R" : return cham_no_meta_r
3490   if TYPE_CHAM == "NOEU_NEUT_F" : return cham_no_neut_f
3491   if TYPE_CHAM == "NOEU_NEUT_R" : return cham_no_neut_r
3492   if TYPE_CHAM == "NOEU_PRES_R" : return cham_no_pres_r
3493   if TYPE_CHAM == "NOEU_SIEF_R" : return cham_no_sief_r
3494   if TYPE_CHAM == "NOEU_SOUR_R" : return cham_no_sour_r
3495   if TYPE_CHAM == "NOEU_TEMP_F" : return cham_no_temp_f
3496   if TYPE_CHAM == "NOEU_TEMP_R" : return cham_no_temp_r
3497   if TYPE_CHAM == "NOEU_VAR2_R" : return cham_no_var2_r
3498   if TYPE_CHAM == "NOEU_VNOR_C" : return cham_no_vnor_c
3499   if TYPE_CHAM == "ELEM_DBEL_R" : return cham_elem_dbel_r
3500   if TYPE_CHAM == "ELEM_DEPL_C" : return cham_elem_depl_c
3501   if TYPE_CHAM == "ELEM_DEPL_F" : return cham_elem_depl_f
3502   if TYPE_CHAM == "ELEM_DEPL_R" : return cham_elem_depl_r
3503   if TYPE_CHAM == "ELEM_DURT_R" : return cham_elem_durt_r
3504   if TYPE_CHAM == "ELEM_ENER_R" : return cham_elem_ener_r
3505   if TYPE_CHAM == "ELEM_EPSI_R" : return cham_elem_epsi_r
3506   if TYPE_CHAM == "ELEM_ERREUR" : return cham_elem_erreur
3507   if TYPE_CHAM == "ELEM_FLUX_R" : return cham_elem_flux_r
3508   if TYPE_CHAM == "ELEM_GEOM_R" : return cham_elem_geom_r
3509   if TYPE_CHAM == "ELEM_G_DEPL_R" : return cham_elem_g_depl
3510   if TYPE_CHAM == "ELEM_HYDR_R" : return cham_elem_hydr_r
3511   if TYPE_CHAM == "ELEM_INST_R" : return cham_elem_inst_r
3512   if TYPE_CHAM == "ELEM_INTE_R" : return cham_elem_inte_r
3513   if TYPE_CHAM == "ELEM_META_R" : return cham_elem_meta_r
3514   if TYPE_CHAM == "ELEM_NEUT_F" : return cham_elem_neut_f
3515   if TYPE_CHAM == "ELEM_NEUT_R" : return cham_elem_neut_r
3516   if TYPE_CHAM == "ELEM_PRES_R" : return cham_elem_pres_r
3517   if TYPE_CHAM == "ELEM_SIEF_R" : return cham_elem_sief_r
3518   if TYPE_CHAM == "ELEM_SOUR_R" : return cham_elem_sour_r
3519   if TYPE_CHAM == "ELEM_TEMP_F" : return cham_elem_temp_f
3520   if TYPE_CHAM == "ELEM_TEMP_R" : return cham_elem_temp_r
3521   if TYPE_CHAM == "ELEM_VARI_R" : return cham_elem_vari_r
3522   if TYPE_CHAM == "ELEM_VNOR_C" : return cham_elem_vnor_c
3523   if TYPE_CHAM == "ELNO_DBEL_R" : return cham_elem_dbel_r
3524   if TYPE_CHAM == "ELNO_DEPL_C" : return cham_elem_depl_c
3525   if TYPE_CHAM == "ELNO_DEPL_F" : return cham_elem_depl_f
3526   if TYPE_CHAM == "ELNO_DEPL_R" : return cham_elem_depl_r
3527   if TYPE_CHAM == "ELNO_DURT_R" : return cham_elem_durt_r
3528   if TYPE_CHAM == "ELNO_ENER_R" : return cham_elem_ener_r
3529   if TYPE_CHAM == "ELNO_EPSI_R" : return cham_elem_epsi_r
3530   if TYPE_CHAM == "ELNO_ERREUR" : return cham_elem_erreur
3531   if TYPE_CHAM == "ELNO_FLUX_R" : return cham_elem_flux_r
3532   if TYPE_CHAM == "ELNO_GEOM_R" : return cham_elem_geom_r
3533   if TYPE_CHAM == "ELNO_G_DEPL_R" : return cham_elem_g_depl
3534   if TYPE_CHAM == "ELNO_HYDR_R" : return cham_elem_hydr_r
3535   if TYPE_CHAM == "ELNO_INST_R" : return cham_elem_inst_r
3536   if TYPE_CHAM == "ELNO_INTE_R" : return cham_elem_inte_r
3537   if TYPE_CHAM == "ELNO_META_R" : return cham_elem_meta_r
3538   if TYPE_CHAM == "ELNO_NEUT_F" : return cham_elem_neut_f
3539   if TYPE_CHAM == "ELNO_NEUT_R" : return cham_elem_neut_r
3540   if TYPE_CHAM == "ELNO_PRES_R" : return cham_elem_pres_r
3541   if TYPE_CHAM == "ELNO_SIEF_R" : return cham_elem_sief_r
3542   if TYPE_CHAM == "ELNO_SOUR_R" : return cham_elem_sour_r
3543   if TYPE_CHAM == "ELNO_TEMP_F" : return cham_elem_temp_f
3544   if TYPE_CHAM == "ELNO_TEMP_R" : return cham_elem_temp_r
3545   if TYPE_CHAM == "ELNO_VARI_R" : return cham_elem_vari_r
3546   if TYPE_CHAM == "ELNO_VNOR_C" : return cham_elem_vnor_c
3547   if TYPE_CHAM == "ELGA_DBEL_R" : return cham_elem_dbel_r
3548   if TYPE_CHAM == "ELGA_DEPL_C" : return cham_elem_depl_c
3549   if TYPE_CHAM == "ELGA_DEPL_F" : return cham_elem_depl_f
3550   if TYPE_CHAM == "ELGA_DEPL_R" : return cham_elem_depl_r
3551   if TYPE_CHAM == "ELGA_DURT_R" : return cham_elem_durt_r
3552   if TYPE_CHAM == "ELGA_ENER_R" : return cham_elem_ener_r
3553   if TYPE_CHAM == "ELGA_EPSI_R" : return cham_elem_epsi_r
3554   if TYPE_CHAM == "ELGA_ERREUR" : return cham_elem_erreur
3555   if TYPE_CHAM == "ELGA_FLUX_R" : return cham_elem_flux_r
3556   if TYPE_CHAM == "ELGA_GEOM_R" : return cham_elem_geom_r
3557   if TYPE_CHAM == "ELGA_G_DEPL_R" : return cham_elem_g_depl
3558   if TYPE_CHAM == "ELGA_HYDR_R" : return cham_elem_hydr_r
3559   if TYPE_CHAM == "ELGA_INST_R" : return cham_elem_inst_r
3560   if TYPE_CHAM == "ELGA_INTE_R" : return cham_elem_inte_r
3561   if TYPE_CHAM == "ELGA_META_R" : return cham_elem_meta_r
3562   if TYPE_CHAM == "ELGA_NEUT_F" : return cham_elem_neut_f
3563   if TYPE_CHAM == "ELGA_NEUT_R" : return cham_elem_neut_r
3564   if TYPE_CHAM == "ELGA_PRES_R" : return cham_elem_pres_r
3565   if TYPE_CHAM == "ELGA_SIEF_R" : return cham_elem_sief_r
3566   if TYPE_CHAM == "ELGA_SOUR_R" : return cham_elem_sour_r
3567   if TYPE_CHAM == "ELGA_TEMP_F" : return cham_elem_temp_f
3568   if TYPE_CHAM == "ELGA_TEMP_R" : return cham_elem_temp_r
3569   if TYPE_CHAM == "ELGA_VARI_R" : return cham_elem_vari_r
3570   if TYPE_CHAM == "ELGA_VNOR_C" : return cham_elem_vnor_c
3571   raise AsException("type de concept resultat non prevu")
3572
3573 CREA_CHAMP=OPER(nom="CREA_CHAMP",op= 195,sd_prod=crea_champ_prod,
3574                 fr="  ",docu="U4.72.04-A",reentrant='n',
3575       regles=(EXCLUS('NUME_DDL','CHAM_NO',),ENSEMBLE('CHAM_F','CHAM_PARA',),    
3576               EXCLUS('TYPE_MAXI','NUME_ORDRE','INST','FREQ','NUME_MODE',        
3577               'NOEUD_CMP','NOM_CAS','ANGL', ),),
3578          TYPE_CHAM       =SIMP(statut='o',typ='TXM',     
3579                         into=("CART_DBEL_R","NOEU_DBEL_R","ELEM_DBEL_R",  
3580                              "ELNO_DBEL_R","ELGA_DBEL_R","CART_DEPL_C",         
3581                              "NOEU_DEPL_C","ELEM_DEPL_C","ELNO_DEPL_C",         
3582                              "ELGA_DEPL_C","CART_DEPL_F","NOEU_DEPL_F",         
3583                              "ELEM_DEPL_F","ELNO_DEPL_F","ELGA_DEPL_F",         
3584                              "CART_DEPL_R","NOEU_DEPL_R","ELEM_DEPL_R",         
3585                              "ELNO_DEPL_R","ELGA_DEPL_R","CART_DURT_R",         
3586                              "NOEU_DURT_R","ELEM_DURT_R","ELNO_DURT_R",         
3587                              "ELGA_DURT_R","CART_ENER_R","NOEU_ENER_R",         
3588                              "ELEM_ENER_R","ELNO_ENER_R","ELGA_ENER_R",         
3589                              "CART_EPSI_R","NOEU_EPSI_R","ELEM_EPSI_R",         
3590                              "ELNO_EPSI_R","ELGA_EPSI_R","CART_ERREUR",         
3591                              "NOEU_ERREUR","ELEM_ERREUR","ELNO_ERREUR",         
3592                              "ELGA_ERREUR","CART_FLUX_R","NOEU_FLUX_R",         
3593                              "ELEM_FLUX_R","ELNO_FLUX_R","ELGA_FLUX_R",         
3594                              "CART_GEOM_R","NOEU_GEOM_R","ELEM_GEOM_R",         
3595                              "ELNO_GEOM_R","ELGA_GEOM_R","CART_G_DEPL_R",       
3596                              "NOEU_G_DEPL_R","ELEM_G_DEPL_R","ELNO_G_DEPL_R",   
3597                              "ELGA_G_DEPL_R","CART_HYDR_R","NOEU_HYDR_R",       
3598                              "ELEM_HYDR_R","ELNO_HYDR_R","ELGA_HYDR_R",         
3599                              "CART_INST_R","NOEU_INST_R","ELEM_INST_R",         
3600                              "ELNO_INST_R","ELGA_INST_R","CART_INTE_R",         
3601                              "NOEU_INTE_R","ELEM_INTE_R","ELNO_INTE_R",         
3602                              "ELGA_INTE_R","CART_META_R","NOEU_META_R",         
3603                              "ELEM_META_R","ELNO_META_R","ELGA_META_R",         
3604                              "CART_NEUT_F","NOEU_NEUT_F","ELEM_NEUT_F",         
3605                              "ELNO_NEUT_F","ELGA_NEUT_F","CART_NEUT_R",         
3606                              "NOEU_NEUT_R","ELEM_NEUT_R","ELNO_NEUT_R",         
3607                              "ELGA_NEUT_R","CART_PRES_R","NOEU_PRES_R",         
3608                              "ELEM_PRES_R","ELNO_PRES_R","ELGA_PRES_R",         
3609                              "CART_SIEF_R","NOEU_SIEF_R","ELEM_SIEF_R",         
3610                              "ELNO_SIEF_R","ELGA_SIEF_R","CART_SOUR_R",         
3611                              "NOEU_SOUR_R","ELEM_SOUR_R","ELNO_SOUR_R",         
3612                              "ELGA_SOUR_R","CART_TEMP_F","NOEU_TEMP_F",         
3613                              "ELEM_TEMP_F","ELNO_TEMP_F","ELGA_TEMP_F",         
3614                              "CART_TEMP_R","NOEU_TEMP_R","ELEM_TEMP_R",         
3615                              "ELNO_TEMP_R","ELGA_TEMP_R","CART_VAR2_R",         
3616                              "NOEU_VAR2_R","ELEM_VARI_R","ELNO_VARI_R",         
3617                              "ELGA_VARI_R","CART_VNOR_C","NOEU_VNOR_C",         
3618                              "ELEM_VNOR_C","ELNO_VNOR_C","ELGA_VNOR_C",) ),
3619          OPERATION       =SIMP(statut='o',typ='TXM',into=("AFFE","ASSE","EVAL","EXTR","DISC",) ),
3620          MODELE          =SIMP(statut='f',typ=(modele) ),
3621          MAILLAGE        =SIMP(statut='f',typ=(maillage) ),
3622          PROL_ZERO       =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ),
3623          AFFE            =FACT(statut='f',min=01,max='**',
3624       regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD',),         
3625               UN_PARMI('VALE','VALE_I','VALE_C','VALE_F', ),),
3626            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
3627            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
3628            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
3629            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
3630            NOEUD           =SIMP(statut='f',typ=no,max='**'),
3631            NOM_CMP         =SIMP(statut='o',typ='TXM',max='**' ),  
3632            VALE            =SIMP(statut='f',typ='R',max='**' ),  
3633            VALE_R          =SIMP(statut='f',typ='R',max='**' ),  
3634            VALE_I          =SIMP(statut='f',typ='I',max='**' ),  
3635            VALE_C          =SIMP(statut='f',typ='C',max='**' ),  
3636            VALE_F          =SIMP(statut='f',typ=fonction,max='**'), 
3637            FONCTION        =SIMP(statut='f',typ=fonction),
3638          ),
3639          NUME_DDL        =SIMP(statut='f',typ=(nume_ddl) ),
3640          CHAM_NO         =SIMP(statut='f',typ=(cham_no_temp_r,cham_no_temp_f,cham_no_depl_r,       
3641                                                cham_no_depl_f,cham_no_sief_r ) ),
3642          ASSE            =FACT(statut='f',min=01,max='**',
3643       regles=(AU_MOINS_UN('TOUT','GROUP_MA','GROUP_NO','MAILLE','NOEUD',),      
3644               PRESENT_PRESENT('NOM_CMP_RESU','NOM_CMP', ),),
3645            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
3646            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
3647            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
3648            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
3649            NOEUD           =SIMP(statut='f',typ=no,max='**'),
3650            CHAM_GD         =SIMP(statut='f',typ=(cham_elem,cham_no,carte)),
3651            NOM_CMP         =SIMP(statut='f',typ='TXM',max='**' ),  
3652            NOM_CMP_RESU    =SIMP(statut='f',typ='TXM',max='**' ),  
3653            CUMUL           =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ),
3654            COEF_R          =SIMP(statut='f',typ='R',defaut= 1. ),  
3655          ),
3656          CHAM_F          =SIMP(statut='f',typ=(cham_elem,cham_no,carte)),
3657          CHAM_PARA       =SIMP(statut='f',typ=(cham_elem,cham_no,carte),max='**'),
3658          CHAM_GD         =SIMP(statut='f',typ=(cham_elem,cham_no,carte)),
3659          RESULTAT        =SIMP(statut='f',typ=resultat ),
3660          NOM_CHAM        =SIMP(statut='f',typ='TXM',     
3661                        into=("DEPL","VITE","ACCE","GEOMETRIE",           
3662                              "DEPL_ABSOLU","VITE_ABSOLU","TEMP","ACCE_ABSOLU",  
3663                              "FORC_NODA","REAC_NODA","EFGE_NOEU_DEPL",          
3664                              "EFGE_NOEU_CART","EPSI_NOEU_DEPL",                 
3665                              "SIGM_NOEU_DEPL","SIGM_NOEU_CART",                 
3666                              "SIPO_NOEU_DEPL","EQUI_NOEU_SIGM",                 
3667                              "EQUI_NOEU_EPSI","FLUX_NOEU_TEMP",                 
3668                              "FLUX_ELGA_TEMP","FLUX_ELNO_TEMP",                 
3669                              "META_ELGA_TEMP","META_ELNO_TEMP",                 
3670                              "META_NOEU_TEMP","DURT_ELGA_META",                 
3671                              "DURT_ELNO_META","DURT_NOEU_META","SIEF_ELGA",     
3672                              "SIEF_ELNO_ELGA","SIEF_ELGA_DEPL",                 
3673                              "VARI_ELNO_ELGA","VARI_ELGA","EPOT_ELEM_DEPL",     
3674                              "ECIN_ELEM_DEPL","SOUR_ELGA_ELEC",                 
3675                              "PRES_ELNO_REEL","PRES_ELNO_IMAG",                 
3676                              "PRES_ELNO_DBEL","INTE_ELNO_ACTI",                 
3677                              "INTE_ELNO_REAC","EFGE_ELNO_DEPL",                 
3678                              "SIGM_ELNO_DEPL","EFGE_ELNO_CART",                 
3679                              "SIGM_ELNO_CART","SIPO_ELNO_DEPL",                 
3680                              "EPSI_ELNO_DEPL","EPSI_ELGA_DEPL",                 
3681                              "EPSG_ELNO_DEPL","EPSG_ELGA_DEPL","EPSP_ELNO",     
3682                              "EPSP_ELGA","EQUI_ELNO_SIGM","EQUI_ELGA_SIGM",     
3683                              "EQUI_ELNO_EPSI","EQUI_ELGA_EPSI",                 
3684                              "ERRE_ELNO_ELGA","ERRE_ELGA_NORE",                 
3685                              "ERRE_ELEM_NOZ1","ERRE_ELEM_NOZ2",                 
3686                              "SIGM_NOZ1_ELGA","SIGM_NOZ2_ELGA",                 
3687                              "DEGE_ELNO_DEPL","SIRE_ELNO_DEPL",                 
3688                              "VNOR_ELEM_DEPL","SIEF_ELNO","VARI_ELNO",          
3689                              "SIEF_NOEU_ELGA","VARI_NOEU_ELGA",                 
3690                              "PRES_NOEU_DBEL","PRES_NOEU_REEL",                 
3691                              "PRES_NOEU_IMAG","INTE_NOEU_ACTI",                 
3692                              "INTE_NOEU_REAC","DCHA_ELGA_SIGM",                 
3693                              "DCHA_ELNO_SIGM","RADI_ELGA_SIGM",                 
3694                              "RADI_ELNO_SIGM","ENDO_ELNO_SIGA",                 
3695                              "ENDO_ELNO_SINO","ENDO_ELNO_SIGM",                 
3696                              "SIGM_ELNO_VARI","SIGM_NOEU_VARI",                 
3697                              "EPME_ELNO_DEPL","EPME_ELGA_DEPL",                 
3698                              "EPME_ELNO_DPGE","EPMG_ELNO_DEPL",                 
3699                              "EPMG_ELGA_DEPL","GRAD_ELGA_THETA",                
3700                              "GTHE_ELNO_ELGA","GRAD_NOEU_THETA","HYDR_ELGA",    
3701                              "THETA","SIGM_ELNO_SIEF","SIPO_ELNO_SIEF",) ),
3702          TYPE_MAXI       =SIMP(statut='f',typ='TXM',into=("MAXI","MINI","MAXI_ABS","MINI_ABS","NORM_TRAN",) ),
3703          TYPE_RESU       =SIMP(statut='f',typ='TXM',defaut="VALE",into=("VALE","INST",) ),
3704          TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
3705          LIST_INST       =SIMP(statut='f',typ=(listr8) ),
3706          NUME_ORDRE      =SIMP(statut='f',typ='I'),  
3707          INST            =SIMP(statut='f',typ='R'),  
3708          FREQ            =SIMP(statut='f',typ='R'),  
3709          NUME_MODE       =SIMP(statut='f',typ='I'),  
3710          NOEUD_CMP       =SIMP(statut='f',typ='TXM',max='**'),  
3711          NOM_CAS         =SIMP(statut='f',typ='TXM'),  
3712          ANGL            =SIMP(statut='f',typ='R'),  
3713          PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3),  
3714          CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ),
3715          INTERPOL        =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","LIN",) ),
3716          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2,) ),
3717          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),  
3718 )  ;
3719 #& MODIF COMMANDE  DATE 30/11/1999   AUTEUR JMBHH01 J.M.PROIX 
3720 CREA_MAILLAGE=OPER(nom="CREA_MAILLAGE",op= 167,sd_prod=maillage
3721                     ,fr="Définition d'un nouveau maillage à partir d'un maillage existant en dupliquant des groupes de mailles (le nombre de mailles du maillage peut être augmenté)",
3722                      docu="U4.23.02-C",reentrant='n',
3723          regles=(EXCLUS('ECLA_PG','CREA_MAILLE'),
3724                  EXCLUS('ECLA_PG','CREA_GROUP_MA'),
3725                  EXCLUS('ECLA_PG','DETR_GROUP_MA'),
3726                  EXCLUS('ECLA_PG','MODI_MAILLE'),),
3727          MAILLAGE        =SIMP(statut='o',typ=maillage ),
3728          CREA_POI1       =FACT(statut='f',min=01,max='**',fr="Création de mailles de type POI1 à partir de noeuds",
3729            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD' ),),
3730            NOM_GROUP_MA    =SIMP(statut='f',typ=grma,max='**'),
3731            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
3732            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
3733            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
3734            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
3735            NOEUD           =SIMP(statut='f',typ=no,max='**'),
3736          ),
3737          CREA_MAILLE     =FACT(statut='f',min=01,max='**',fr="Duplication de mailles",
3738            regles=(AU_MOINS_UN('TOUT','MAILLE','GROUP_MA'),),
3739            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
3740            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
3741            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
3742            PREF_MAILLE     =SIMP(statut='o',typ='TXM' ),
3743            PREF_NUME       =SIMP(statut='f',typ='I' ),
3744          ),
3745          CREA_GROUP_MA   =FACT(statut='f',min=01,max='**',fr="Duplication de mailles et création de groupes de mailles",
3746            regles=(AU_MOINS_UN('TOUT','MAILLE','GROUP_MA' ),),
3747            NOM             =SIMP(statut='o',typ='TXM'),
3748            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
3749            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
3750            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
3751            PREF_MAILLE     =SIMP(statut='o',typ='TXM' ),
3752            PREF_NUME       =SIMP(statut='f',typ='I' ),
3753          ),
3754          DETR_GROUP_MA   =FACT(statut='f',min=01,max=01,fr="Destruction de groupes de mailles",
3755            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
3756            NB_MAILLE       =SIMP(statut='f',typ='I',defaut= 0,fr="Nombre minimal de mailles que doit contenir le groupe pour être détruit",  ),  
3757          ),
3758          MODI_MAILLE     =FACT(statut='f',min=01,max='**',fr="Modification du type de mailles",
3759            regles=(AU_MOINS_UN('TOUT','MAILLE','GROUP_MA' ),),
3760            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
3761            MAILLE          =SIMP(statut='f',typ=grma,max='**'),
3762            GROUP_MA        =SIMP(statut='f',typ=ma,max='**'),
3763            OPTION          =SIMP(statut='o',typ='TXM',into=("TRIA6_7","QUAD8_9","SEG3_4"),fr="Choix de la transformation" ),
3764            PREF_NOEUD      =SIMP(statut='f',typ='TXM',defaut="NS"),
3765            PREF_NUME       =SIMP(statut='f',typ='I',defaut= 1 ),
3766          ),
3767          REPERE          =FACT(statut='f',min=01,max='**',fr="Réalisation d un changement de repère servant à déterminer les caractéristiques d une section de poutre",
3768            TABLE           =SIMP(statut='o',typ=tabl_cara_geom,fr="Nom de la table contenant les caractéristiques de la section de poutre" ),
3769            NOM_ORIG        =SIMP(statut='f',typ='TXM',into=("CDG","TORSION"),fr="Origine du nouveau repère" ),
3770            NOM_ROTA        =SIMP(statut='f',typ='TXM',into=("INERTIE",),fr="Direction du repére"  ),   
3771            b_cdg =BLOC(condition = "NOM_ORIG == 'CDG'",
3772              GROUP_MA        =SIMP(statut='f',typ=grma,fr="Nom du groupe de mailles dont le centre de gravité sera l origine du nouveau repère"),
3773            ),
3774          ),
3775          ECLA_PG         =FACT(statut='f',min=01,max=01,fr="Eclatement des mailles en petites mailles contenant chacune un seul point de gauss",
3776            MODELE          =SIMP(statut='o',typ=modele ),
3777            SHRINK          =SIMP(statut='f',typ='R',defaut= 0.9, fr="Facteur de réduction" ),
3778          ),
3779          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
3780 )  ;
3781 #& MODIF COMMANDE  DATE 21/06/2000   AUTEUR CIBHHLV L.VIVAN
3782 def crea_resu_prod(TYPE_RESU,**args):
3783   if TYPE_RESU == "EVOL_ELAS"    : return evol_elas
3784   if TYPE_RESU == "EVOL_NOLI"    : return evol_noli
3785   if TYPE_RESU == "EVOL_THER"    : return evol_ther
3786   if TYPE_RESU == "MULT_ELAS"    : return mult_elas
3787   if TYPE_RESU == "FOURIER_ELAS" : return fourier_elas
3788   raise AsException("type de concept resultat non prevu")
3789
3790 # commentaire C. DURAND : J'ai supprimé tous les blocs.
3791 # Ce qui avait été fait était faux (plantage EFICAS de nombreux tests et ingérable)
3792 # il faudra réfléchir à la manière de les réintroduire proprement
3793 CREA_RESU=OPER(nom="CREA_RESU",op=124,sd_prod=crea_resu_prod,docu="U4.44.12-D",reentrant='f',
3794                fr="Engendrer ou enrichir une structure de données de type evol_ther en affectant les cham_no associés",
3795          regles=(EXCLUS('CHAM_GD','ECLA_PG','PERM_CHAMP',),),
3796          TYPE_RESU       =SIMP(statut='o',typ='TXM',into=("EVOL_THER","FOURIER_ELAS","MULT_ELAS",
3797                                                           "EVOL_ELAS","EVOL_NOLI") ),
3798          NOM_CHAM        =SIMP(statut='f',typ='TXM',into=("DEPL","TEMP","SIEF_ELGA","VARI_ELGA",),max='**' ),
3799          CHAM_GD         =FACT(statut='f',min=01,max='**',
3800            regles=(UN_PARMI('NOM_CAS','NUME_MODE','LIST_INST','INST',),),
3801            CHAM_NO         =SIMP(statut='o',typ=(cham_no)),
3802            NUME_ORDRE_INIT =SIMP(statut='f',typ='I'),
3803            NOM_CAS         =SIMP(statut='f',typ='TXM' ),
3804            NUME_MODE       =SIMP(statut='f',typ='I'),
3805            TYPE_MODE       =SIMP(statut='f',typ='TXM',defaut="SYME",into=("SYME","ANTI","TOUS") ),
3806            INST            =SIMP(statut='f',typ='R',max='**'),
3807            LIST_INST       =SIMP(statut='f',typ=listr8),
3808            NUME_INIT       =SIMP(statut='f',typ='I'),
3809            NUME_FIN        =SIMP(statut='f',typ='I'),
3810          ),  
3811
3812          ECLA_PG         =FACT(statut='f',min=01,max=01,
3813            regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','LIST_INST','LIST_FREQ','LIST_ORDRE'),),
3814            MODELE_INIT     =SIMP(statut='o',typ=modele),
3815            RESU_INIT       =SIMP(statut='o',typ=resultat),
3816            MAILLAGE        =SIMP(statut='o',typ=maillage),
3817            NOM_CHAM        =SIMP(statut='o',typ='TXM',max='**',
3818                                  into=("SIEF_ELGA","VARI_ELGA","SIEF_ELGA_DEPL","FLUX_ELGA_TEMP",) ),
3819            TOUT_ORDRE      =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI",) ),
3820            NUME_ORDRE      =SIMP(statut='f',typ='I',max='**'),
3821            LIST_ORDRE      =SIMP(statut='f',typ=listis),
3822            INST            =SIMP(statut='f',typ='R',max='**'),
3823            LIST_INST       =SIMP(statut='f',typ=listr8),
3824            FREQ            =SIMP(statut='f',typ='R',max='**'),
3825            LIST_FREQ       =SIMP(statut='f',typ=listr8),
3826            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3),
3827            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ),
3828          ),
3829
3830
3831          RESU_INIT       =SIMP(statut='f',typ=evol_noli),
3832          INST_INIT       =SIMP(statut='f',typ='R'),
3833          PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3),
3834          CRITERE         =SIMP(statut='f',typ='TXM',into=('RELATIF','ABSOLU'),defaut='RELATIF'),
3835          MAILLAGE_INIT   =SIMP(statut='f',typ=maillage,),
3836          RESU_FINAL      =SIMP(statut='f',typ=evol_noli,),
3837          MAILLAGE_FINAL  =SIMP(statut='f',typ=maillage,),
3838          PERM_CHAMP      =FACT(statut='f',min=01,max=01,
3839             GROUP_MA_FINAL =SIMP(statut='o',typ=grma),
3840             GROUP_MA_INIT  =SIMP(statut='o',typ=grma),
3841             TRAN           =SIMP(statut='o',typ='R',max='**'),
3842             PRECISION      =SIMP(statut='f',typ='R',defaut=1.0E-3),
3843          )
3844 )  ;
3845 #& AJOUT COMMANDE    
3846 DEBUT=PROC(nom="DEBUT",op=0 ,docu="U4.11.01-F",repetable='n',
3847            fr="Ouverture d une étude. Allocation des ressources mémoire et disque",
3848
3849          PAR_LOT         =SIMP(fr="mode de traitement des commandes",statut='f',typ='TXM'),
3850          BASE            =FACT(fr="définition des paramètres associés aux bases JEVEUX",
3851                                statut='f',min=01,max=03,
3852            FICHIER         =SIMP(fr="nom de la base",statut='o',typ='TXM',
3853                                  into=('GLOBALE','VOLATILE','LOCALE'),),
3854            TITRE           =SIMP(statut='f',typ='TXM'),
3855            CAS             =SIMP(statut='f',typ='TXM'),
3856            NMAX_ENRE       =SIMP(fr="nombre maximum d enregistrements",statut='f',typ='I'),
3857            LONG_ENRE       =SIMP(fr="longueur des enregistrements",statut='f',typ='I'),
3858            LONG_REPE       =SIMP(fr="longueur du répertoire",statut='f',typ='I'),
3859          ),
3860          IMPRESSION      =FACT(statut='f',min=01,max=03,
3861            FICHIER         =SIMP(statut='o',typ='TXM'),
3862            UNITE           =SIMP(statut='o',typ='I'),
3863          ),
3864          CATALOGUE       =FACT(statut='f',min=01,max=10,
3865            FICHIER         =SIMP(statut='o',typ='TXM'),
3866            TITRE           =SIMP(statut='f',typ='TXM'),
3867            UNITE           =SIMP(statut='f',typ='I'),
3868          ),
3869          CODE            =FACT("définition d un nom pour l'esemble d'une étude",
3870                                statut='f',min=01,max=01,
3871            NOM             =SIMP(statut='o',typ='TXM'),
3872            UNITE           =SIMP(statut='f',typ='I',defaut=15),
3873          ),
3874          DEBUG           =FACT(fr="option de déboggage reservée aux développeurs",
3875                                statut='f',min=01,max=01,
3876            JXVERI          =SIMP(fr="vérifie l intégrité de la segmentation mémoire",
3877                                  statut='f',typ='TXM',into=('OUI','NON'),defaut='NON'),
3878            JEVEUX          =SIMP(fr="force les déchargement sur disque",
3879                                  statut='f',typ='TXM',into=('OUI','NON'),defaut='NON'),
3880            ENVIMA          =SIMP(fr="imprime les valeurs définies dans ENVIMA",
3881                                  statut='f',typ='TXM',into=('TEST',)),
3882          ),
3883          MEMOIRE         =FACT(fr="mode de gestion mémoire utilisé",statut='f',min=01,max=01,
3884            GESTION         =SIMP(statut='f',typ='TXM',into=('COMPACTE','RAPIDE'),defaut='RAPIDE'),  
3885            TYPE_ALLOCATION =SIMP(statut='f',typ='I',into=(1,2,3,4),defaut=1),  
3886            TAILLE          =SIMP(statut='f',typ='I'),  
3887            PARTITION       =SIMP(statut='f',typ='R'),  
3888          ),
3889  );
3890 #& MODIF COMMANDE  DATE 09/09/98   AUTEUR ACBHHCD G.DEVESA
3891 DEFI_BASE_MODALE=OPER(nom="DEFI_BASE_MODALE",op=  99,sd_prod=base_modale
3892                     ,fr="Définition d une base modale pour analyse dynamique par superposition modale ou sous structuration dynamique par synthèse modale",
3893                      docu="U4.64.02-E",reentrant='f',
3894          regles=(UN_PARMI('CLASSIQUE','RITZ'),),
3895          CLASSIQUE       =FACT(statut='f',min=01,max=01,
3896            INTERF_DYNA     =SIMP(statut='o',typ=interf_dyna_clas ),
3897            MODE_MECA       =SIMP(statut='o',typ=mode_meca,max='**' ),
3898            NMAX_MODE       =SIMP(statut='f',typ='I',defaut= 10 ),
3899          ),
3900          RITZ            =FACT(statut='f',min=01,max='**',
3901            regles=(UN_PARMI('MODE_STAT','MODE_MECA','MULT_ELAS','BASE_MODALE'),),
3902            MODE_MECA       =SIMP(statut='f',typ=mode_meca,max='**'  ),
3903            NMAX_MODE       =SIMP(statut='f',typ='I',defaut= 999 ),
3904            MODE_STAT       =SIMP(statut='f',typ=mode_stat ),
3905            MULT_ELAS       =SIMP(statut='f',typ=mult_elas ),
3906            BASE_MODALE     =SIMP(statut='f',typ=base_modale ),
3907          ),
3908 #  le bloc conditionnel remplace-t-il PRESENT_PRESENT('RITZ','NUME_REF'),
3909 #                                     PRESENT_ABSENT('INTERF_DYNA','CLASSIQUE'),        
3910          b_ritz          =BLOC(condition = "RITZ != None",
3911            INTERF_DYNA     =SIMP(statut='f',typ=interf_dyna_clas ),
3912            NUME_REF        =SIMP(statut='o',typ=nume_ddl ),
3913          ),
3914          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
3915          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
3916 )  ;
3917 #& MODIF COMMANDE  DATE 06/11/98   AUTEUR CIBHHLV L.VIVAN 
3918 DEFI_CABLE_BP=OPER(nom="DEFI_CABLE_BP",op= 180,sd_prod=cabl_precont,
3919                    fr=" ",
3920                    docu="U4.42.04-A",reentrant='n',
3921          MODELE          =SIMP(statut='o',typ=modele ),
3922          CHAM_MATER      =SIMP(statut='o',typ=cham_mater ),
3923          CARA_ELEM       =SIMP(statut='o',typ=cara_elem ),
3924          GROUP_MA_BETON  =SIMP(statut='o',typ=grma),
3925          DEFI_CABLE      =FACT(statut='o',min=01,max='**',
3926            regles=(UN_PARMI('MAILLE','GROUP_MA'),
3927                    UN_PARMI('NOEUD_ANCRAGE','GROUP_NO_ANCRAGE'),),
3928            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
3929            GROUP_MA        =SIMP(statut='f',typ=grma),
3930            NOEUD_ANCRAGE   =SIMP(statut='f',typ=no,max='**'),
3931            GROUP_NO_ANCRAGE=SIMP(statut='f',typ=grno,max='**'),
3932            TYPE_ANCRAGE    =SIMP(statut='o',typ='TXM',max='**',     
3933                                  into=("ACTIF","PASSIF") ),
3934          ),
3935          TENSION_INIT    =SIMP(statut='o',typ='R' ),  
3936          RECUL_ANCRAGE   =SIMP(statut='o',typ='R' ),  
3937          RELAXATION      =FACT(statut='f',min=0,max=1,
3938            R_J             =SIMP(statut='o',typ='R' ),  
3939          ),
3940          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),  
3941 )  ;
3942 #& MODIF COMMANDE  DATE 16/07/96   AUTEUR CIBHHRA R.MEDDOURI 
3943 DEFI_CONSTANTE=OPER(nom="DEFI_CONSTANTE",op=   2,sd_prod=fonction,
3944                     fr="Définition d une fonction constante",
3945                     docu="U4.31.01-F",reentrant='n',
3946          NOM_RESU        =SIMP(statut='f',typ='TXM',defaut="TOUTRESU"),
3947          VALE            =SIMP(statut='o',typ='R',max=01 ),
3948          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
3949 )  ;
3950 #& MODIF COMMANDE  DATE 11/02/98   AUTEUR CIBHHLV L.VIVAN 
3951 DEFI_COQU_MULT=OPER(nom="DEFI_COQU_MULT",op=56,sd_prod=mater,docu="U4.42.03-E",reentrant='n',
3952                     fr="Définition d une coque composite couche par couche",
3953          COUCHE          =FACT(statut='o',min=01,max='**',
3954            EPAIS           =SIMP(statut='o',typ='R' ),
3955            MATER           =SIMP(statut='o',typ=(mater) ),
3956            ORIENTATION     =SIMP(statut='f',typ='R',defaut= 0.0E+0 ),
3957          ),
3958          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
3959          IMPRESSION      =FACT(statut='f',min=01,max=01,
3960            FICHIER         =SIMP(statut='f',typ='TXM',defaut="RESULTAT",
3961                                  into=("RESULTAT",) ),
3962          ),
3963 )  ;
3964 #& MODIF COMMANDE  DATE 28/06/2000   AUTEUR CIBHHLV L.VIVAN 
3965 DEFI_FLUI_STRU=OPER(nom="DEFI_FLUI_STRU",op= 143,sd_prod=type_flui_stru,
3966                     fr="Définition des caractéristiques nécessaires à l'étude du comportement dynamique d'une structure sous écoulement",
3967                     docu="U4.25.01-C",reentrant='n',
3968          regles=(EXCLUS('FAISCEAU_TRANS','GRAPPE','FAISCEAU_AXIAL','COQUE_COAX',),
3969                  AU_MOINS_UN('FAISCEAU_TRANS','GRAPPE','FAISCEAU_AXIAL','COQUE_COAX', ),),
3970          FAISCEAU_TRANS  =FACT(statut='f',min=01,max='**',
3971            COUPLAGE        =SIMP(statut='f',typ='TXM',into=("OUI","NON") ),
3972            CARA_ELEM       =SIMP(statut='f',typ=cara_elem ),
3973            PROF_VITE_FLUI  =SIMP(statut='o',typ=fonction ),
3974            PROF_RHO_F_INT  =SIMP(statut='f',typ=fonction ),
3975            PROF_RHO_F_EXT  =SIMP(statut='f',typ=fonction ),
3976            NOM_CMP         =SIMP(statut='f',typ='TXM',into=("DX","DY","DZ") ),
3977            COEF_MASS_AJOU  =SIMP(statut='f',typ='R' ),
3978            TYPE_PAS        =SIMP(statut='f',typ='TXM',into=("CARRE_LIGN","TRIA_LIGN") ),
3979            TYPE_RESEAU     =SIMP(statut='f',typ='I' ),
3980            UNITE_CD        =SIMP(statut='f',typ='I',defaut=70),
3981            UNITE_CK        =SIMP(statut='f',typ='I',defaut=71),            
3982            PAS             =SIMP(statut='f',typ='R' ),
3983          ),
3984          GRAPPE          =FACT(statut='f',min=00,max=01,
3985            regles=(ENSEMBLE('GRAPPE_2','NOEUD','CARA_ELEM','MODELE','RHO_FLUI',),
3986                    PRESENT_PRESENT('COEF_MASS_AJOU','GRAPPE_2', ),),
3987 #  peut on créer un bloc a partir de la valeur de couplage  
3988            COUPLAGE        =SIMP(statut='o',typ='TXM',into=("OUI","NON") ),
3989            GRAPPE_2        =SIMP(statut='f',typ='TXM',
3990                                  into=("ASC_CEN","ASC_EXC","DES_CEN","DES_EXC") ),
3991            NOEUD           =SIMP(statut='f',typ=no),
3992            CARA_ELEM       =SIMP(statut='f',typ=cara_elem ),
3993            MODELE          =SIMP(statut='f',typ=modele ),
3994            COEF_MASS_AJOU  =SIMP(statut='f',typ='R' ),
3995            RHO_FLUI        =SIMP(statut='f',typ='R' ),
3996            UNITE_CA        =SIMP(statut='f',typ='I',defaut=70),
3997            UNITE_KA        =SIMP(statut='f',typ='I',defaut=71),            
3998          ),
3999          FAISCEAU_AXIAL  =FACT(statut='f',min=01,max='**',
4000            regles=(UN_PARMI('GROUP_MA','TRI_GROUP_MA'),
4001                    UN_PARMI('CARA_ELEM','RAYON_TUBE'),
4002                    ENSEMBLE('RAYON_TUBE','COOR_TUBE'),
4003                    PRESENT_ABSENT('RAYON_TUBE','TRI_GROUP_MA'),
4004                    ENSEMBLE('CARA_PAROI','VALE_PAROI'),
4005                    ENSEMBLE('LONG_TYPG','LARG_TYPG','EPAI_TYPG','RUGO_TYPG','COEF_TRAI_TYPG','COEF_DPOR_TYPG',
4006                             'COOR_GRILLE','TYPE_GRILLE', ),),
4007 #  on doit pouvoir mettre des blocs conditionnels mais pas assez d infos pour le faire                            
4008            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
4009            TRI_GROUP_MA    =SIMP(statut='f',typ='TXM' ),
4010            VECT_X          =SIMP(statut='f',typ='R',max=03),
4011            PROF_RHO_FLUI   =SIMP(statut='f',typ=fonction ),
4012            PROF_VISC_CINE  =SIMP(statut='f',typ=fonction ),
4013            CARA_ELEM       =SIMP(statut='f',typ=cara_elem ),
4014            RAYON_TUBE      =SIMP(statut='f',typ='R' ),
4015            COOR_TUBE       =SIMP(statut='f',typ='R',max='**'),
4016            PESANTEUR       =SIMP(statut='f',typ='R',min=04,max=04),
4017            RUGO_TUBE       =SIMP(statut='f',typ='R' ),
4018            CARA_PAROI      =SIMP(statut='f',typ='TXM',max=05,
4019                                  into=("YC","ZC","R","HY","HZ") ),
4020            VALE_PAROI      =SIMP(statut='f',typ='R',max=05),
4021            ANGL_VRIL       =SIMP(statut='f',typ='R' ),
4022            LONG_TYPG       =SIMP(statut='f',typ='R',max='**'),
4023            LARG_TYPG       =SIMP(statut='f',typ='R',max='**'),
4024            EPAI_TYPG       =SIMP(statut='f',typ='R',max='**'),
4025            RUGO_TYPG       =SIMP(statut='f',typ='R',max='**'),
4026            COEF_TRAI_TYPG  =SIMP(statut='f',typ='R',max='**'),
4027            COEF_DPOR_TYPG  =SIMP(statut='f',typ='R',max='**'),
4028            COOR_GRILLE     =SIMP(statut='f',typ='R',max='**'),
4029            TYPE_GRILLE     =SIMP(statut='f',typ='I',max='**'),
4030          ),
4031          COQUE_COAX      =FACT(statut='f',min=00,max=01,
4032            MASS_AJOU       =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
4033            GROUP_MA_INT    =SIMP(statut='o',typ=grma),
4034            GROUP_MA_EXT    =SIMP(statut='o',typ=grma),
4035            VECT_X          =SIMP(statut='o',typ='R',max='**'),
4036            CARA_ELEM       =SIMP(statut='o',typ=cara_elem ),
4037            MATER_INT       =SIMP(statut='o',typ=mater ),
4038            MATER_EXT       =SIMP(statut='o',typ=mater ),
4039            RHO_FLUI        =SIMP(statut='o',typ='R' ),
4040            VISC_CINE       =SIMP(statut='o',typ='R' ),
4041            RUGOSITE        =SIMP(statut='o',typ='R' ),
4042            PDC_MOY_1       =SIMP(statut='o',typ='R' ),
4043            PDC_DYN_1       =SIMP(statut='o',typ='R' ),
4044            PDC_MOY_2       =SIMP(statut='o',typ='R' ),
4045            PDC_DYN_2       =SIMP(statut='o',typ='R' ),
4046          ),
4047          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
4048 )  ;
4049 #& MODIF COMMANDE  DATE 11/02/98   AUTEUR CIBHHLV L.VIVAN 
4050 DEFI_FONC_ELEC=OPER(nom="DEFI_FONC_ELEC",op=64,sd_prod=fonction,docu="U4.MK.10-A",reentrant='n',
4051                     fr="Définition d une fonction du temps pour calculer des forces de LAPLACE",
4052       regles=(UN_PARMI('COUR_PRIN','COUR'),
4053               EXCLUS('COUR','COUR_SECO'), ),
4054          FREQ            =SIMP(statut='f',typ='R',defaut= 50.),
4055          SIGNAL          =SIMP(statut='f',typ='TXM',defaut="COMPLET",into=("COMPLET","CONTINU") ),
4056          COUR            =FACT(statut='f',min=01,max='**',
4057          fr="Définition du courant de court-circuit",
4058            regles=(UN_PARMI('PHI_CC_1','INTC_CC_1'),
4059                    UN_PARMI('PHI_CC_2','INTC_CC_2'),),
4060            INTE_CC_1       =SIMP(statut='o',typ='R'),
4061            TAU_CC_1        =SIMP(statut='o',typ='R'),
4062            PHI_CC_1        =SIMP(statut='f',typ='R'),
4063            INTC_CC_1       =SIMP(statut='f',typ='R'),
4064            INTE_CC_2       =SIMP(statut='o',typ='R'),
4065            TAU_CC_2        =SIMP(statut='o',typ='R'),
4066            PHI_CC_2        =SIMP(statut='f',typ='R'),
4067            INTC_CC_2       =SIMP(statut='f',typ='R'),
4068            INST_CC_INIT    =SIMP(statut='f',typ='R'),
4069            INST_CC_FIN     =SIMP(statut='o',typ='R'),
4070          ),
4071          COUR_PRIN       =FACT(statut='f',min=01,max=01,
4072          fr="Définition du courant de court-circuit avec réenclenchement",
4073            regles=(UN_PARMI('PHI_CC_1','INTC_CC_1'),),
4074            INTE_CC_1       =SIMP(statut='o',typ='R'),
4075            TAU_CC_1        =SIMP(statut='o',typ='R'),
4076            PHI_CC_1        =SIMP(statut='f',typ='R'),
4077            INTC_CC_1       =SIMP(statut='f',typ='R'),
4078            INTE_RENC_1     =SIMP(statut='f',typ='R'),
4079            TAU_RENC_1      =SIMP(statut='f',typ='R'),
4080            PHI_RENC_1      =SIMP(statut='f',typ='R'),
4081            INST_CC_INIT    =SIMP(statut='o',typ='R'),
4082            INST_CC_FIN     =SIMP(statut='o',typ='R'),
4083            INST_RENC_INIT  =SIMP(statut='f',typ='R',defaut= 0.0E+0),
4084            INST_RENC_FIN   =SIMP(statut='f',typ='R',defaut= 0.0E+0),
4085          ),
4086          COUR_SECO       =FACT(statut='f',min=01,max='**',
4087          fr="Définition du courant de court-circuit avec un intervalle de temps différent de celui de COUR_PRIN",
4088            regles=(UN_PARMI('PHI_CC_2','INTC_CC_2'),),
4089            INTE_CC_2       =SIMP(statut='o',typ='R'),
4090            TAU_CC_2        =SIMP(statut='o',typ='R'),
4091            PHI_CC_2        =SIMP(statut='f',typ='R'),
4092            INTC_CC_2       =SIMP(statut='f',typ='R'),
4093            INTE_RENC_2     =SIMP(statut='f',typ='R'),
4094            TAU_RENC_2      =SIMP(statut='f',typ='R'),
4095            PHI_RENC_2      =SIMP(statut='f',typ='R'),
4096            DIST            =SIMP(statut='f',typ='R',defaut=1.0E+0),
4097          ),
4098          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
4099 )  ;
4100 #& MODIF COMMANDE  DATE 11/02/98   AUTEUR CIBHHLV L.VIVAN 
4101 DEFI_FONC_FLUI=OPER(nom="DEFI_FONC_FLUI",op= 142,sd_prod=fonction,
4102                     fr="Définition des fonctions caractéristiques du fluide le long de la structure (profil de vitesse, profil de masse volumique)",
4103                     docu="U4.35.01-C",reentrant='n',
4104          MAILLAGE        =SIMP(statut='o',typ=(maillage) ),
4105          NOEUD_INIT      =SIMP(statut='o',typ=no),
4106          NOEUD_FIN       =SIMP(statut='o',typ=no),
4107          VITE            =FACT(statut='o',min=01,max=01,
4108            VALE            =SIMP(statut='f',typ='R',defaut= 1. ),
4109            PROFIL          =SIMP(statut='o',typ='TXM',into=("UNIFORME","LEONARD") ),
4110            NB_BAV          =SIMP(statut='f',typ='I',defaut= 0,into=( 0 , 2 , 3 ) ),
4111          ),
4112          INTERPOL        =SIMP(statut='f',typ='TXM',max=02,defaut="LIN",
4113                                into=("NON","LIN","LOG") ),
4114          PROL_DROIT      =SIMP(statut='f',typ='TXM',defaut="EXCLU",
4115                                into=("CONSTANT","LINEAIRE","EXCLU") ),
4116          PROL_GAUCHE     =SIMP(statut='f',typ='TXM' ,defaut="EXCLU",
4117                                into=("CONSTANT","LINEAIRE","EXCLU") ),
4118          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ),
4119          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
4120 )  ;
4121 #& MODIF COMMANDE  DATE 06/09/1999   AUTEUR UFBHHLL C.CHAVANT 
4122 def defi_fonction_prod(VALE,VALE_PARA,VALE_C,NOEUD_PARA,**args):
4123   if VALE != None  : return fonction
4124   if VALE_C != None  : return fonction_c
4125   if VALE_PARA != None  : return fonction
4126   if NOEUD_PARA != None  : return fonction
4127   raise AsException("type de concept resultat non prevu")
4128
4129 DEFI_FONCTION=OPER(nom="DEFI_FONCTION",op=3,sd_prod=defi_fonction_prod
4130                     ,fr="Définition des valeurs réelles ou complexes d une fonction réelle",
4131                      docu="U4.31.02-F",reentrant='n',
4132          regles=(UN_PARMI('VALE','VALE_C','VALE_PARA','NOEUD_PARA'),),
4133          NOM_PARA        =SIMP(statut='o',typ='TXM',
4134                                into=("DX","DY","DZ","DRX","DRY","DRZ","TEMP",
4135                                      "INST","X","Y","Z","EPSI","META","FREQ","PULS",
4136                                      "AMOR","ABSC","SIGM","HYDR","SECH","PORO","SAT",
4137                                      "PGAZ","PCAP") ),
4138          NOM_RESU        =SIMP(statut='f',typ='TXM',defaut="TOUTRESU"),
4139          VALE            =SIMP(statut='f',typ='R',max='**',
4140                                fr ="Fonction réelle définie par une liste de couples (abscisse,ordonnée)"), 
4141          VALE_C          =SIMP(statut='f',typ='R',max='**',
4142                                fr ="Fonction complexe définie par une liste de couples (abscisse,ordonnée partie réelle, ordonnée partie imaginaire)"), 
4143          VALE_PARA       =SIMP(statut='f',typ=listr8,
4144                                fr ="Fonction réelle définie par deux concepts de type listr8" ),
4145          b_vale_para     =BLOC(condition = "VALE_PARA != None", 
4146            VALE_FONC       =SIMP(statut='o',typ=listr8 ),
4147          ),
4148          NOEUD_PARA      =SIMP(statut='f',typ=no,max='**',
4149                                fr ="Fonction réelle définie par une liste de noeuds et un maillage"),
4150          b_noeud_para    =BLOC(condition = "NOEUD_PARA != None",
4151            MAILLAGE        =SIMP(statut='o',typ=maillage ),
4152            VALE_Y          =SIMP(statut='o',typ='R',max='**'), 
4153          ),
4154                   
4155          INTERPOL        =SIMP(statut='f',typ='TXM',max=02,defaut="LIN",into=("NON","LIN","LOG") ),
4156          PROL_DROIT      =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ),
4157          PROL_GAUCHE     =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ),
4158          VERIF           =SIMP(statut='f',typ='TXM',into=("CROISSANT",) ),
4159          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
4160          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
4161 )  ;
4162 #& MODIF COMMANDE  DATE 17/11/1999   AUTEUR CIBHHLV L.VIVAN 
4163 DEFI_FOND_FISS=OPER(nom="DEFI_FOND_FISS",op=55,sd_prod=fond_fiss,docu="U4.82.01-E",reentrant='n',
4164                     fr="Définition de lèvres et d un fond de fissure en 3D",
4165          regles=(UN_PARMI('FOND','FOND_FERME'),
4166                  EXCLUS('FOND_FERME','DTAN_ORIG'),
4167                  EXCLUS('FOND_FERME','DTAN_EXTR'),
4168                       EXCLUS('FOND_FERME','VECT_GRNO_ORIG'),
4169                       EXCLUS('FOND_FERME','VECT_GRNO_EXTR'),
4170                  UN_PARMI('LEVRE_SUP','NORMALE'),
4171                       EXCLUS('LEVRE_INF','NORMALE'),
4172                  ENSEMBLE('DTAN_ORIG','DTAN_EXTR'),
4173                       ENSEMBLE('VECT_GRNO_ORIG','VECT_GRNO_EXTR'),
4174                       EXCLUS('DTAN_ORIG','VECT_GRNO_ORIG'),
4175                       EXCLUS('DTAN_EXTR','VECT_GRNO_EXTR') ,),
4176            MAILLAGE        =SIMP(statut='o',typ=maillage ),
4177            FOND            =FACT(statut='f',min=01,max=01,
4178              regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),
4179                      EXCLUS('NOEUD_ORIG','GROUP_NO_ORIG'),
4180                           EXCLUS('NOEUD_EXTR','GROUP_NO_EXTR'),),
4181              GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
4182              NOEUD           =SIMP(statut='f',typ=no,max='**'),
4183              GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
4184              MAILLE          =SIMP(statut='f',typ=ma,max='**'),
4185 #  à mettre à jour le max vaut-il 1  
4186              NOEUD_ORIG      =SIMP(statut='f',typ=no,max=1),
4187              GROUP_NO_ORIG   =SIMP(statut='f',typ=grno,max=1),
4188              NOEUD_EXTR      =SIMP(statut='f',typ=no,max=1),
4189              GROUP_NO_EXTR   =SIMP(statut='f',typ=grno,max=1),
4190            ),
4191            FOND_FERME      =FACT(statut='f',min=01,max=01,
4192              regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),
4193                           EXCLUS('NOEUD_ORIG','GROUP_NO_ORIG'),),
4194              GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
4195              NOEUD           =SIMP(statut='f',typ=no,max='**'),
4196              GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
4197              MAILLE          =SIMP(statut='f',typ=ma,max='**'),
4198              NOEUD_ORIG      =SIMP(statut='f',typ=no,max=1),
4199              GROUP_NO_ORIG   =SIMP(statut='f',typ=grno,max=1),
4200              MAILLE_ORIG     =SIMP(statut='f',typ=ma,max=1),
4201              GROUP_MA_ORIG   =SIMP(statut='f',typ=ma,max=1),
4202            ),
4203            LEVRE_SUP       =FACT(statut='f',min=01,max=01,
4204              regles=(UN_PARMI('GROUP_MA','MAILLE'),),
4205              GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
4206              MAILLE          =SIMP(statut='f',typ=ma,max='**'),
4207            ),
4208            LEVRE_INF       =FACT(statut='f',min=01,max=01,
4209              regles=(UN_PARMI('GROUP_MA','MAILLE', ),),
4210              GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
4211              MAILLE          =SIMP(statut='f',typ=ma,max='**'),
4212            ),
4213            NORMALE         =SIMP(statut='f',typ='R',max='**'),
4214            DTAN_ORIG       =SIMP(statut='f',typ='R',max='**'),
4215            DTAN_EXTR       =SIMP(statut='f',typ='R',max='**'),
4216            VECT_GRNO_ORIG  =SIMP(statut='f',typ=grno,max=2),
4217            VECT_GRNO_EXTR  =SIMP(statut='f',typ=grno,max=2),
4218            INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
4219 )  ;
4220 #& MODIF COMMANDE  DATE 27/09/2000   AUTEUR DURAND C.DURAND 
4221 def defi_group_prod(MAILLAGE,**args):
4222   if AsType(MAILLAGE) == maillage : return maillage
4223   if AsType(MAILLAGE) == squelette : return squelette
4224   raise AsException("type de concept resultat non prevu")
4225
4226 DEFI_GROUP=OPER(nom="DEFI_GROUP",op= 104,sd_prod=defi_group_prod,
4227                 fr="Définition de nouveaux groupes de noeuds et/ou de mailles dans un concept maillage",
4228                 docu="U4.22.01-E",reentrant='o',
4229          regles=(AU_MOINS_UN('CREA_GROUP_MA','CREA_GROUP_NO'),),            
4230          MAILLAGE        =SIMP(statut='o',typ=(maillage,squelette) ),
4231          
4232          CREA_GROUP_MA   =FACT(statut='f',min=01,max='**',
4233            regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE','INTERSEC','UNION','DIFFE','OPTION'),),
4234 #  quel est le concept attendu deriere NOM
4235            NOM             =SIMP(statut='o',typ=grma),
4236            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
4237            GROUP_MA        =SIMP(statut='f',typ=grma),
4238            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
4239            INTERSEC        =SIMP(statut='f',typ=grma,max='**'),
4240            UNION           =SIMP(statut='f',typ=grma,max='**'),
4241            DIFFE           =SIMP(statut='f',typ=grma,max='**'),
4242            OPTION          =SIMP(statut='f',typ='TXM',into=("FACE_NORMALE","SPHERE","CYLINDRE","BANDE") ),
4243            b_group_ma      =BLOC(condition = "GROUP_MA != None",
4244              regles=(EXCLUS('POSITION','NUME_INIT'),),
4245              NUME_INIT       =SIMP(statut='f',typ='I',defaut= 1 ),             
4246              POSITION        =SIMP(statut='f',typ='TXM',into=("INIT","FIN","MILIEU") ), 
4247              b_nume_init   =BLOC(condition = "NUME_INIT != None",
4248                NUME_FIN        =SIMP(statut='f',typ='I' ),
4249              ),      
4250            ),
4251            b_face_normale  =BLOC(condition = "OPTION == 'FACE_NORMALE'",
4252              regles=(UN_PARMI('ANGL_NAUT','VECT_NORMALE'),),
4253              ANGL_NAUT       =SIMP(statut='f',typ='R',max=02),
4254              VECT_NORMALE    =SIMP(statut='f',typ='R',max=03),
4255              ANGL_PREC       =SIMP(statut='f',typ='R',defaut= 0.5 ),
4256              VERI_SIGNE      =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),     
4257            ),
4258            b_sphere        =BLOC(condition = "OPTION == 'SPHERE'",
4259              regles=(UN_PARMI('POINT','NOEUD_CENTRE'),),
4260              POINT           =SIMP(statut='f',typ='R',max=03),
4261              NOEUD_CENTRE    =SIMP(statut='f',typ=no),
4262              RAYON           =SIMP(statut='o',typ='R' ),    
4263            ),
4264            b_cylindre      =BLOC(condition = "OPTION == 'CYLINDRE'",
4265              regles=(UN_PARMI('POINT','NOEUD_CENTRE'),
4266                      UN_PARMI('ANGL_NAUT','VECT_NORMALE'),),
4267              POINT           =SIMP(statut='f',typ='R',max=03),
4268              NOEUD_CENTRE    =SIMP(statut='f',typ=no),
4269              RAYON           =SIMP(statut='o',typ='R' ), 
4270              ANGL_NAUT       =SIMP(statut='f',typ='R',max=02),
4271              VECT_NORMALE    =SIMP(statut='f',typ='R',max=03),   
4272            ),
4273            b_bande         =BLOC(condition = "OPTION == 'BANDE'",
4274              regles=(UN_PARMI('POINT','NOEUD_CENTRE'),
4275                      UN_PARMI('ANGL_NAUT','VECT_NORMALE'),),
4276              POINT           =SIMP(statut='f',typ='R',max=03),
4277              NOEUD_CENTRE    =SIMP(statut='f',typ=no),
4278              DIST            =SIMP(statut='o',typ='R' ),
4279              ANGL_NAUT       =SIMP(statut='f',typ='R',max=02),
4280              VECT_NORMALE    =SIMP(statut='f',typ='R',max=03),   
4281            ),
4282          ),
4283          CREA_GROUP_NO   =FACT(statut='f',min=01,max='**',
4284            regles=(AU_MOINS_UN('TOUT_GROUP_MA','GROUP_MA','NOEUD','INTERSEC','UNION','DIFFE',
4285                                'GROUP_NO','OPTION'),),
4286
4287            TOUT_GROUP_MA   =SIMP(statut='f',typ='TXM',into=("OUI",) ),               
4288            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
4289              
4290            NOEUD           =SIMP(statut='f',typ=no,max='**'),
4291            INTERSEC        =SIMP(statut='f',typ=grno,max='**'),
4292            UNION           =SIMP(statut='f',typ=grno,max='**'),
4293            DIFFE           =SIMP(statut='f',typ=grno,max='**'),
4294            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
4295            OPTION          =SIMP(statut='f',typ='TXM',into=("ENV_SPHERE","ENV_CYLINDRE","PLAN",
4296                                                             "SEGM_DROI_ORDO","NOEUD_ORDO") ),  
4297            b_nom_group_ma  =BLOC(condition = "GROUP_MA != None",
4298              NOM             =SIMP(statut='f',typ=grma,max='**'),
4299            ),
4300            b_nom =BLOC(condition = "GROUP_MA == None and TOUT_GROUP_MA == None" ,
4301              NOM             =SIMP(statut='o',typ=geom),
4302            ),                                                 
4303             
4304            b_group_no      =BLOC(condition = "GROUP_NO != None",
4305              regles=(EXCLUS('POSITION','NUME_INIT'),),
4306              NUME_INIT       =SIMP(statut='f',typ='I',defaut= 1 ),
4307              POSITION        =SIMP(statut='f',typ='TXM',into=("INIT","FIN","MILIEU") ), 
4308              b_nume_init     =BLOC(condition = "NUME_INIT != None",
4309                NUME_FIN        =SIMP(statut='f',typ='I' ),
4310              ),      
4311            ),
4312            b_env_sphere    =BLOC(condition = "OPTION == 'ENV_SPHERE'",
4313              regles=(UN_PARMI('POINT','NOEUD_CENTRE'),),
4314              POINT           =SIMP(statut='f',typ='R',max=03),
4315              NOEUD_CENTRE    =SIMP(statut='f',typ=no,max=01),
4316              RAYON           =SIMP(statut='o',typ='R' ),
4317              PRECISION       =SIMP(statut='f',typ='R' ),
4318              CRITERE         =SIMP(statut='f',typ='TXM',into=("ABSOLU","RELATIF") ),                                                 
4319            ),
4320            b_env_cylindre  =BLOC(condition = "OPTION == 'ENV_CYLINDRE'",
4321              regles=(UN_PARMI('POINT','NOEUD_CENTRE'),
4322                      UN_PARMI('ANGL_NAUT','VECT_NORMALE'),),
4323              POINT           =SIMP(statut='f',typ='R',max=03),
4324              NOEUD_CENTRE    =SIMP(statut='f',typ=no,max=01),
4325              RAYON           =SIMP(statut='o',typ='R' ),
4326              ANGL_NAUT       =SIMP(statut='f',typ='R',max=03),
4327              VECT_NORMALE    =SIMP(statut='f',typ='R',max=03),
4328              PRECISION       =SIMP(statut='f',typ='R' ),
4329              CRITERE         =SIMP(statut='f',typ='TXM',into=("ABSOLU","RELATIF") ),                                                 
4330            ),
4331            b_env_plan      =BLOC(condition = "OPTION == 'PLAN'",
4332              regles=(UN_PARMI('POINT','NOEUD_CENTRE'),
4333                      UN_PARMI('ANGL_NAUT','VECT_NORMALE'),),
4334              POINT           =SIMP(statut='f',typ='R',max=03),
4335              NOEUD_CENTRE    =SIMP(statut='f',typ=no,max=01),
4336              ANGL_NAUT       =SIMP(statut='f',typ='R',max=03),
4337              VECT_NORMALE    =SIMP(statut='f',typ='R',max=03),
4338              PRECISION       =SIMP(statut='f',typ='R' ),
4339              CRITERE         =SIMP(statut='f',typ='TXM',into=("ABSOLU","RELATIF") ),                                                 
4340            ),
4341            b_segm_droi_ordo=BLOC(condition = "OPTION == 'SEGM_DROI_ORDO'",
4342              regles=(UN_PARMI('NOEUD_ORIG','GROUP_NO_ORIG'),
4343                      UN_PARMI('NOEUD_EXTR','GROUP_NO_EXTR'),), 
4344              NOEUD_ORIG      =SIMP(statut='f',typ=no),
4345              GROUP_NO_ORIG   =SIMP(statut='f',typ=grno),
4346              NOEUD_EXTR      =SIMP(statut='f',typ=no),
4347              GROUP_NO_EXTR   =SIMP(statut='f',typ=grno),
4348              PRECISION       =SIMP(statut='f',typ='R' ),
4349              CRITERE         =SIMP(statut='f',typ='TXM',into=("ABSOLU","RELATIF") ),                                                 
4350            ),
4351            b_noeud_ordo    =BLOC(condition = "OPTION == 'NOEUD_ORDO'",
4352              regles=(UN_PARMI('NOEUD_ORIG','GROUP_NO_ORIG'),
4353                      UN_PARMI('NOEUD_EXTR','GROUP_NO_EXTR'),),
4354              NOEUD_ORIG      =SIMP(statut='f',typ=no),
4355              GROUP_NO_ORIG   =SIMP(statut='f',typ=grno),
4356              NOEUD_EXTR      =SIMP(statut='f',typ=no),
4357              GROUP_NO_EXTR   =SIMP(statut='f',typ=grno),
4358              PRECISION       =SIMP(statut='f',typ='R' ),
4359              CRITERE         =SIMP(statut='f',typ='TXM',into=("ABSOLU","RELATIF") ),                                                 
4360            ),      
4361          ),
4362          INFO            =SIMP(statut='f',typ='I',into=( 1 , 2 ) ),
4363 )  ;
4364 #& MODIF COMMANDE  DATE 03/05/2000   AUTEUR CIBHHAB N.RAHNI 
4365 DEFI_INTE_SPEC=OPER(nom="DEFI_INTE_SPEC",op= 115,sd_prod=tabl_intsp,
4366                     fr="Définition d'une matrice interspectrale à partir de constantes, de fonctions complexes, ou du filtrage d'un bruit blanc par un oscillateur de KANAI-TAJIMI",
4367                     docu="U4.36.02-E",reentrant='n',
4368
4369          DIMENSION       =SIMP(statut='f',typ='I',defaut= 1 ),
4370
4371          PAR_FONCTION    =FACT(statut='f',min=01,max='**',
4372            NUME_ORDRE_I    =SIMP(statut='o',typ='I' ),
4373            NUME_ORDRE_J    =SIMP(statut='o',typ='I' ),
4374            FONCTION        =SIMP(statut='o',typ=fonction_c ),
4375          ),
4376          KANAI_TAJIMI    =FACT(statut='f',min=01,max='**',
4377            regles=(EXCLUS('VALE_R','VALE_C'),),
4378            NUME_ORDRE_I    =SIMP(statut='o',typ='I' ),
4379            NUME_ORDRE_J    =SIMP(statut='o',typ='I' ),
4380            FREQ_MIN        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
4381            FREQ_MAX        =SIMP(statut='f',typ='R',defaut= 100. ),
4382            PAS             =SIMP(statut='f',typ='R',defaut= 1. ),
4383            AMOR_REDUIT     =SIMP(statut='f',typ='R',defaut= 0.6 ),
4384            FREQ_MOY        =SIMP(statut='f',typ='R',defaut= 5. ),
4385            VALE_R          =SIMP(statut='f',typ='R' ),
4386            VALE_C          =SIMP(statut='f',typ='C' ),
4387            INTERPOL        =SIMP(statut='f',typ='TXM',max=02,defaut="LIN",into=("NON","LIN","LOG") ),
4388            PROL_DROIT      =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ),
4389            PROL_GAUCHE     =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ),
4390          ),
4391          CONSTANT        =FACT(statut='f',min=01,max='**',
4392            regles=(EXCLUS('VALE_R','VALE_C'),),
4393            NUME_ORDRE_I    =SIMP(statut='o',typ='I' ),
4394            NUME_ORDRE_J    =SIMP(statut='o',typ='I' ),
4395            FREQ_MIN        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
4396            FREQ_MAX        =SIMP(statut='f',typ='R',defaut= 100. ),
4397            PAS             =SIMP(statut='f',typ='R',defaut= 1. ),
4398            VALE_R          =SIMP(statut='f',typ='R' ),
4399            VALE_C          =SIMP(statut='f',typ='C' ),
4400            INTERPOL        =SIMP(statut='f',typ='TXM',max=02,defaut="LIN",into=("NON","LIN","LOG") ),
4401            PROL_DROIT      =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ),
4402            PROL_GAUCHE     =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ),
4403          ),
4404          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
4405          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),               
4406 )  ;
4407 #& MODIF COMMANDE  DATE 11/02/98   AUTEUR CIBHHLV L.VIVAN 
4408 DEFI_INTERF_DYNA=OPER(nom="DEFI_INTERF_DYNA",op=  98,sd_prod=interf_dyna_clas,
4409                       fr="Définition des interfaces d une structure pour analyse dynamique par superposition modale ou sous structuration dynamique par synthèse modale",
4410                       docu="U4.64.01-E",reentrant='n',
4411          NUME_DDL        =SIMP(statut='o',typ=nume_ddl ),
4412          INTERFACE       =FACT(statut='o',min=01,max='**',
4413            regles=(ENSEMBLE('NOM','TYPE'),
4414 #  erreur doc U sur la condition qui suit
4415                    UN_PARMI('NOEUD','GROUP_NO'),),
4416            NOM             =SIMP(statut='f',typ='TXM' ),
4417            TYPE            =SIMP(statut='f',typ='TXM',into=("MNEAL","CRAIGB","CB_HARMO","AUCUN") ),
4418            NOEUD           =SIMP(statut='f',typ=no,max='**'),
4419            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
4420            DDL_ACTIF       =SIMP(statut='f',typ='TXM',max='**'),
4421            MASQUE          =SIMP(statut='f',typ='TXM',max='**'),
4422          ),
4423          FREQ            =SIMP(statut='f',typ='R',defaut= 1.),
4424          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
4425 )  ;
4426 #& MODIF COMMANDE  DATE 11/02/98   AUTEUR CIBHHLV L.VIVAN 
4427 DEFI_LIST_ENTI=OPER(nom="DEFI_LIST_ENTI",op=22,sd_prod=listis,
4428                     fr="Définition d une suite croissante d entiers",
4429                     docu="U4.34.02-F",reentrant='n',
4430          regles=(UN_PARMI('VALE','DEBUT'),
4431                  EXCLUS('VALE','INTERVALLE'),),
4432          VALE            =SIMP(statut='f',typ='I',max='**'),
4433          DEBUT           =SIMP(statut='f',typ='I'),
4434          INTERVALLE      =FACT(statut='f',min=01,max='**',
4435            regles=(UN_PARMI('NOMBRE','PAS'),),
4436            JUSQU_A         =SIMP(statut='o',typ='I'),
4437            NOMBRE          =SIMP(statut='f',typ='I'),
4438            PAS             =SIMP(statut='f',typ='I'),
4439          ),
4440          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
4441          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
4442 )  ;
4443 #& MODIF COMMANDE  DATE 11/02/98   AUTEUR CIBHHLV L.VIVAN 
4444 DEFI_LIST_REEL=OPER(nom="DEFI_LIST_REEL",op=24,sd_prod=listr8,
4445                     fr="Définition d une suite croissante de réels",
4446                     docu="U4.34.01-F",reentrant='n',
4447          regles=(UN_PARMI('VALE','DEBUT',),
4448                  EXCLUS('VALE','INTERVALLE'),
4449                  ENSEMBLE('DEBUT','INTERVALLE'),
4450                  ),
4451          VALE            =SIMP(statut='f',typ='R',max='**'),
4452          DEBUT           =SIMP(statut='f',typ='R'),
4453          INTERVALLE      =FACT(statut='f',min=01,max='**',
4454            regles=(UN_PARMI('NOMBRE','PAS'),),
4455            JUSQU_A         =SIMP(statut='o',typ='R'),
4456            NOMBRE          =SIMP(statut='f',typ='I'),
4457            PAS             =SIMP(statut='f',typ='R'),
4458          ),
4459          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
4460          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
4461 )  ;
4462 #& MODIF COMMANDE  DATE 20/12/94   AUTEUR B7BHHLV L.VIVAN 
4463 DEFI_MAILLAGE=OPER(nom="DEFI_MAILLAGE",op=  88,sd_prod=maillage,
4464                    fr="Définition d un nouveau maillage à partir de macro éléments",
4465                    docu="U4.23.01-E",reentrant='n',
4466          DEFI_MAILLE     =FACT(statut='o',min=01,max='**',
4467            MACR_ELEM_STAT  =SIMP(statut='o',typ=macr_elem_stat,max='**' ),
4468            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
4469            TRAN            =SIMP(statut='f',typ='R',max=03),
4470            ANGL_NAUT       =SIMP(statut='f',typ='R',max=03),
4471            b_angl_naut     =BLOC(condition = "ANGL_NAUT != None",
4472              CENTRE          =SIMP(statut='f',typ='R',max=03),
4473            ),
4474          ),
4475          RECO_GLOBAL     =FACT(statut='f',min=01,max='**',
4476            regles=(UN_PARMI('TOUT','MAILLE'),),
4477            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
4478            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
4479            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
4480            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
4481          ),
4482          RECO_MAILLE     =FACT(statut='f',min=01,max='**',
4483            MAILLE          =SIMP(statut='o',typ=ma,max='**'),
4484            GROUP_NO        =SIMP(statut='o',typ=grno,max='**'),
4485            OPTION          =SIMP(statut='f',typ='TXM',defaut="GEOMETRIQUE",into=("GEOMETRIQUE","NOEUD_A_NOEUD","INVERSE") ),
4486            geometrique     =BLOC(condition = "OPTION == 'GEOMETRIQUE'",
4487              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
4488              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
4489            ),
4490          ),
4491          DEFI_NOEUD      =FACT(statut='f',min=01,max='**',
4492            regles=(UN_PARMI('TOUT','NOEUD_INIT'),),
4493            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",),
4494                                  fr="Renommage de tous les noeuds" ),
4495            NOEUD_INIT      =SIMP(statut='f',typ=no,
4496                                  fr="Renommage d un seul noeud"),                     
4497            b_tout          =BLOC(condition = "TOUT != None",
4498              PREFIXE         =SIMP(statut='f',typ='TXM' ),
4499              INDEX           =SIMP(statut='o',typ='I',max='**'),
4500            ),
4501            b_noeud_init    =BLOC(condition = "NOEUD_INIT != None",
4502              MAILLE          =SIMP(statut='o',typ=ma),
4503              NOEUD_FIN       =SIMP(statut='o',typ=no),
4504            ),        
4505          ),
4506          DEFI_GROUP_NO   =FACT(statut='f',min=01,max='**',
4507            regles=(UN_PARMI('TOUT','MAILLE'),
4508                 AU_MOINS_UN('INDEX','GROUP_NO_FIN'),
4509                    ENSEMBLE('GROUP_NO_INIT','GROUP_NO_FIN'),),
4510 #  la regle ancien catalogue AU_MOINS_UN__: ( INDEX , GROUP_NO_FIN ) incoherente avec doc U           
4511            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",),
4512                                  fr="Création de plusieurs groupes de noeuds" ),
4513            MAILLE          =SIMP(statut='f',typ=ma,
4514                                  fr="Création de plusieurs groupes de noeuds"),
4515            GROUP_NO_INIT   =SIMP(statut='f',typ=grno,
4516                                  fr="Création d un seul groupe de noeuds"),
4517            PREFIXE         =SIMP(statut='f',typ='TXM' ),
4518            INDEX           =SIMP(statut='f',typ='I',max='**'),
4519            GROUP_NO_FIN    =SIMP(statut='f',typ=grno),
4520          ),
4521 )  ;
4522 #& MODIF COMMANDE  DATE 28/11/2000   AUTEUR CIBHHLV L.VIVAN 
4523 DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater,
4524                    fr="Définition des paramètres décrivant le comportement d un matériau",
4525                    docu="U4.43.01-F",reentrant='n',
4526        regles=(EXCLUS('ELAS','ELAS_FO','ELAS_FLUI','ELAS_ISTR','ELAS_ISTR_FO','ELAS_ORTH',
4527                       'ELAS_ORTH_FO','ELAS_COQUE','ELAS_COQUE_FO',
4528                       'SURF_ETAT_SATU','CAM_CLAY_THM','SURF_ETAT_NSAT'),
4529                EXCLUS('THER','THER_FO','THER_ORTH','THER_NL'),
4530                EXCLUS('ECRO_LINE','ECRO_LINE_FO'),
4531                EXCLUS('TAHERI','TAHERI_FO'),
4532                EXCLUS('ROUSSELIER','ROUSSELIER_FO'),
4533                PRESENT_PRESENT('ROUSSELIER','TRACTION'),
4534                PRESENT_PRESENT('ROUSSELIER_FO','TRACTION'),
4535                EXCLUS('VMIS_CIN1_CHAB','VMIS_CIN1_CHAB_F'),
4536                EXCLUS('VISCOCHAB','VISCOCHAB_FO'),
4537                EXCLUS('POLY_CFC','POLY_CFC_FO'),
4538                PRESENT_PRESENT('NORTON_HOFF','ELAS'),
4539                EXCLUS('LEMAITRE','LEMAITRE_FO','ZIRC_CYRA2','ZIRC_EPRI'),
4540                EXCLUS('OHNO','OHNO_FO'),
4541                EXCLUS('LMARC','LMARC_FO'),
4542                EXCLUS('VMIS_POUTRE','VMIS_POUTRE_FO'),
4543                EXCLUS('VENDOCHAB','VENDOCHAB_FO'),
4544                PRESENT_PRESENT('BPEL_BETON','ELAS'),
4545                PRESENT_PRESENT('BPEL_ACIER','ELAS'),
4546                EXCLUS('RCCM','RCCM_FO'),),
4547 #
4548 # comportement élastique
4549 #
4550            ELAS            =FACT(statut='f',min=00,max=01,
4551              E               =SIMP(statut='o',typ='R'),
4552              NU              =SIMP(statut='o',typ='R'),
4553              RHO             =SIMP(statut='f',typ='R'),
4554              ALPHA           =SIMP(statut='f',typ='R'),
4555              AMOR_ALPHA      =SIMP(statut='f',typ='R'),
4556              AMOR_BETA       =SIMP(statut='f',typ='R'),
4557              AMOR_HYST       =SIMP(statut='f',typ='R'),
4558            ),
4559            ELAS_FO         =FACT(statut='f',min=00,max=01,
4560              E               =SIMP(statut='o',typ=fonction),
4561              NU              =SIMP(statut='o',typ=fonction),
4562              RHO             =SIMP(statut='f',typ='R'),
4563              TEMP_DEF_ALPHA  =SIMP(statut='f',typ='R'),
4564              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.),
4565              ALPHA           =SIMP(statut='f',typ=fonction),
4566              AMOR_ALPHA      =SIMP(statut='f',typ=fonction),
4567              AMOR_BETA       =SIMP(statut='f',typ=fonction),
4568              AMOR_HYST       =SIMP(statut='f',typ=fonction),
4569              K_DESSIC        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
4570              B_ENDOGE        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
4571              VERI_P1         =SIMP(statut='f',typ='TXM',defaut="TEMP",into=("TEMP","INST",) ),
4572              VERI_P2         =SIMP(statut='f',typ='TXM',defaut="INST",into=("TEMP","INST",) ),
4573              VERI_P3         =SIMP(statut='f',typ='TXM',defaut="HYDR",into=("HYDR",) ),
4574              VERI_P4         =SIMP(statut='f',typ='TXM',defaut="SECH",into=("SECH",) ),
4575            ),
4576            ELAS_FLUI       =FACT(statut='f',min=00,max=01,
4577              E               =SIMP(statut='o',typ='R'),
4578              NU              =SIMP(statut='o',typ='R'),
4579              RHO             =SIMP(statut='o',typ='R'),
4580              PROF_RHO_F_INT  =SIMP(statut='o',typ=fonction),
4581              PROF_RHO_F_EXT  =SIMP(statut='o',typ=fonction),
4582              COEF_MASS_AJOU  =SIMP(statut='o',typ=fonction),
4583              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="ABSC",into=("ABSC",) ),
4584            ),
4585            ELAS_ISTR       =FACT(statut='f',min=00,max=01,
4586              E_L             =SIMP(statut='o',typ='R'),
4587              E_N             =SIMP(statut='o',typ='R'),
4588              NU_LT           =SIMP(statut='o',typ='R'),
4589              NU_LN           =SIMP(statut='o',typ='R'),
4590              G_LN            =SIMP(statut='o',typ='R'),
4591              RHO             =SIMP(statut='f',typ='R'),
4592              ALPHA_L         =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
4593              ALPHA_N         =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
4594            ),
4595            ELAS_ISTR_FO    =FACT(statut='f',min=00,max=01,
4596              E_L             =SIMP(statut='o',typ=fonction),
4597              E_N             =SIMP(statut='o',typ=fonction),
4598              NU_LT           =SIMP(statut='o',typ=fonction),
4599              NU_LN           =SIMP(statut='o',typ=fonction),
4600              G_LN            =SIMP(statut='o',typ=fonction),
4601              RHO             =SIMP(statut='f',typ='R'),
4602              TEMP_DEF_ALPHA  =SIMP(statut='f',typ='R'),
4603              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.),
4604              ALPHA_L         =SIMP(statut='f',typ=fonction),
4605              ALPHA_N         =SIMP(statut='f',typ=fonction),
4606              VERI_P1         =SIMP(statut='f',typ='TXM',defaut="TEMP",into=("TEMP","INST")),
4607            ),
4608            ELAS_ORTH       =FACT(statut='f',min=00,max=01,
4609              E_L             =SIMP(statut='o',typ='R'),
4610              E_T             =SIMP(statut='o',typ='R'),
4611              E_N             =SIMP(statut='f',typ='R'),
4612              NU_LT           =SIMP(statut='o',typ='R'),
4613              NU_LN           =SIMP(statut='f',typ='R'),
4614              NU_TN           =SIMP(statut='f',typ='R'),
4615              G_LT            =SIMP(statut='o',typ='R'),
4616              G_LN            =SIMP(statut='f',typ='R'),
4617              G_TN            =SIMP(statut='f',typ='R'),
4618              RHO             =SIMP(statut='f',typ='R'),
4619              ALPHA_L         =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
4620              ALPHA_T         =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
4621              ALPHA_N         =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
4622              XT              =SIMP(statut='f',typ='R',defaut= 1. ),
4623              XC              =SIMP(statut='f',typ='R',defaut= 1. ),
4624              YT              =SIMP(statut='f',typ='R',defaut= 1. ),
4625              YC              =SIMP(statut='f',typ='R',defaut= 1. ),
4626              S_LT            =SIMP(statut='f',typ='R',defaut= 1. ),
4627            ),
4628            ELAS_ORTH_FO    =FACT(statut='f',min=00,max=01,
4629              E_L             =SIMP(statut='o',typ=fonction),
4630              E_T             =SIMP(statut='o',typ=fonction),
4631              E_N             =SIMP(statut='o',typ=fonction),
4632              NU_LT           =SIMP(statut='o',typ=fonction),
4633              NU_LN           =SIMP(statut='o',typ=fonction),
4634              NU_TN           =SIMP(statut='o',typ=fonction),
4635              G_LT            =SIMP(statut='o',typ=fonction),
4636              G_LN            =SIMP(statut='o',typ=fonction),
4637              G_TN            =SIMP(statut='o',typ=fonction),
4638              RHO             =SIMP(statut='f',typ='R'),
4639              TEMP_DEF_ALPHA  =SIMP(statut='f',typ='R'),
4640              PRECISION       =SIMP(statut='f',typ='R',defaut= 1. ),
4641              ALPHA_L         =SIMP(statut='f',typ=fonction),
4642              ALPHA_T         =SIMP(statut='f',typ=fonction),
4643              ALPHA_N         =SIMP(statut='f',typ=fonction),
4644              VERI_P1         =SIMP(statut='f',typ='TXM',defaut="TEMP",into=("TEMP","INST",) ),
4645            ),
4646            ELAS_THM        =FACT(statut='f',min=00,max=01,
4647              RHO_S           =SIMP(statut='o',typ='R'),  
4648              UN_SUR_KS       =SIMP(statut='o',typ='R'),  
4649              E               =SIMP(statut='f',typ='R'),  
4650              KB              =SIMP(statut='f',typ='R'),  
4651              D_KB_T          =SIMP(statut='f',typ='R'),  
4652              ALPHA_S         =SIMP(statut='f',typ='R'),  
4653              ALPHA_D         =SIMP(statut='f',typ='R'),  
4654            ),
4655            SURF_ETAT_SATU  =FACT(statut='f',min=00,max=01,
4656              E_CHAR          =SIMP(statut='o',typ='R'),  
4657              E_DECHAR        =SIMP(statut='o',typ='R'),  
4658              XN              =SIMP(statut='f',typ='R'),  
4659              RF              =SIMP(statut='f',typ='R'),  
4660              EV_KB           =SIMP(statut='f',typ='R'),  
4661              EV_XM           =SIMP(statut='f',typ='R'),  
4662              D_E_T           =SIMP(statut='f',typ='R'),  
4663              ALPHA0          =SIMP(statut='f',typ='R'),  
4664              ALPHA1          =SIMP(statut='f',typ='R'),  
4665              ALPHA2          =SIMP(statut='f',typ='R'),  
4666              ALPHA3          =SIMP(statut='f',typ='R'),  
4667              ALPHA_S         =SIMP(statut='f',typ='R'),  
4668              ANG_FRT         =SIMP(statut='o',typ='R'),  
4669              COHE            =SIMP(statut='o',typ='R'),  
4670              RESI_TRAC       =SIMP(statut='o',typ='R'),  
4671            ),
4672            CAM_CLAY_THM    =FACT(statut='f',min=00,max=01,
4673              NU              =SIMP(statut='f',typ='R'),  
4674              LAMBDA          =SIMP(statut='o',typ='R'),  
4675              KAPA            =SIMP(statut='o',typ='R'),  
4676              M               =SIMP(statut='f',typ='R'),  
4677              PRES_CRIT       =SIMP(statut='f',typ='R'),  
4678              GAMA            =SIMP(statut='o',typ='R'),  
4679              A0_PC           =SIMP(statut='o',typ='R'),  
4680              A1_PC           =SIMP(statut='f',typ='R'),  
4681              A2_PC           =SIMP(statut='f',typ='R'),  
4682              ALPHA0_PC       =SIMP(statut='f',typ='R'),  
4683              ALPHA1_PC       =SIMP(statut='f',typ='R'),  
4684              ALPHA2_PC       =SIMP(statut='f',typ='R'),  
4685              ALPHA3_PC       =SIMP(statut='f',typ='R'),  
4686              ALPHA_S         =SIMP(statut='f',typ='R'),  
4687                          ),
4688            SURF_ETAT_NSAT  =FACT(statut='f',min=00,max=01,
4689              E_CHAR          =SIMP(statut='o',typ='R'),  
4690              E_DECHAR        =SIMP(statut='o',typ='R'),  
4691              XN              =SIMP(statut='f',typ='R'),  
4692              RF              =SIMP(statut='f',typ='R'),  
4693              EV_KB           =SIMP(statut='f',typ='R'),  
4694              EV_XM           =SIMP(statut='f',typ='R'),  
4695              EV_A            =SIMP(statut='f',typ='R'),  
4696              EV_B            =SIMP(statut='f',typ='R'),  
4697              EV_CT           =SIMP(statut='f',typ='R'),  
4698              EV_SIGB         =SIMP(statut='f',typ='R'),  
4699              D_E_T           =SIMP(statut='f',typ='R'),  
4700              D_E_SUCC        =SIMP(statut='f',typ='R'),  
4701              ANG_FRT         =SIMP(statut='o',typ='R'),  
4702              COHE            =SIMP(statut='o',typ='R'),  
4703              D_COEH_SUCC     =SIMP(statut='f',typ='R'),  
4704              ANG_FRT_ULT     =SIMP(statut='f',typ='R'),  
4705              SUCC_ULTM       =SIMP(statut='f',typ='R'),  
4706              RESI_TRAC       =SIMP(statut='f',typ='R'),  
4707              A_SURF_SATU     =SIMP(statut='f',typ='R'),  
4708              B_SURF_SATU     =SIMP(statut='f',typ='R'),  
4709              C_SURF_SATU     =SIMP(statut='f',typ='R'),  
4710              D_SURF_SATU     =SIMP(statut='f',typ='R'),  
4711            ),
4712            ELAS_COQUE      =FACT(statut='f',min=00,max=01,
4713              regles=(EXCLUS('MEMB_L','M_LLLL',),
4714                      PRESENT_PRESENT('MEMB_L','MEMB_LT', 'MEMB_T','MEMB_G_LT','FLEX_L','FLEX_LT',
4715                                      'FLEX_T','FLEX_G_LT','CISA_L','CISA_T',),
4716                      PRESENT_PRESENT('M_LLLL','M_LLTT','M_LLLT','M_TTTT','M_TTLT','M_LTLT','F_LLLL',
4717                                      'F_LLTT','F_LLLT','F_TTTT','F_TTLT','F_LTLT','MF_LLLL',
4718                                      'MF_LLTT','MF_LLLT','MF_TTTT','MF_TTLT','MF_LTLT','MC_LLLZ',
4719                                      'MC_LLTZ','MC_TTLZ','MC_TTTZ','MC_LTLZ','MC_LTTZ','FC_LLLZ',
4720                                      'FC_LLTZ','FC_TTLZ','FC_TTTZ','FC_LTLZ','FC_LTTZ','C_LZLZ',
4721                                      'C_LZTZ','C_TZTZ'),),
4722              MEMB_L          =SIMP(statut='f',typ='R'),
4723              MEMB_LT         =SIMP(statut='f',typ='R'),
4724              MEMB_T          =SIMP(statut='f',typ='R'),
4725              MEMB_G_LT       =SIMP(statut='f',typ='R'),
4726              FLEX_L          =SIMP(statut='f',typ='R'),
4727              FLEX_LT         =SIMP(statut='f',typ='R'),
4728              FLEX_T          =SIMP(statut='f',typ='R'),
4729              FLEX_G_LT       =SIMP(statut='f',typ='R'),
4730              CISA_L          =SIMP(statut='f',typ='R'),
4731              CISA_T          =SIMP(statut='f',typ='R'),
4732              M_LLLL          =SIMP(statut='f',typ='R'),
4733              M_LLTT          =SIMP(statut='f',typ='R'),
4734              M_LLLT          =SIMP(statut='f',typ='R'),
4735              M_TTTT          =SIMP(statut='f',typ='R'),
4736              M_TTLT          =SIMP(statut='f',typ='R'),
4737              M_LTLT          =SIMP(statut='f',typ='R'),
4738              F_LLLL          =SIMP(statut='f',typ='R'),
4739              F_LLTT          =SIMP(statut='f',typ='R'),
4740              F_LLLT          =SIMP(statut='f',typ='R'),
4741              F_TTTT          =SIMP(statut='f',typ='R'),
4742              F_TTLT          =SIMP(statut='f',typ='R'),
4743              F_LTLT          =SIMP(statut='f',typ='R'),
4744              MF_LLLL         =SIMP(statut='f',typ='R'),
4745              MF_LLTT         =SIMP(statut='f',typ='R'),
4746              MF_LLLT         =SIMP(statut='f',typ='R'),
4747              MF_TTTT         =SIMP(statut='f',typ='R'),
4748              MF_TTLT         =SIMP(statut='f',typ='R'),
4749              MF_LTLT         =SIMP(statut='f',typ='R'),
4750              MC_LLLZ         =SIMP(statut='f',typ='R'),
4751              MC_LLTZ         =SIMP(statut='f',typ='R'),
4752              MC_TTLZ         =SIMP(statut='f',typ='R'),
4753              MC_TTTZ         =SIMP(statut='f',typ='R'),
4754              MC_LTLZ         =SIMP(statut='f',typ='R'),
4755              MC_LTTZ         =SIMP(statut='f',typ='R'),
4756              FC_LLLZ         =SIMP(statut='f',typ='R'),
4757              FC_LLTZ         =SIMP(statut='f',typ='R'),
4758              FC_TTLZ         =SIMP(statut='f',typ='R'),
4759              FC_TTTZ         =SIMP(statut='f',typ='R'),
4760              FC_LTLZ         =SIMP(statut='f',typ='R'),
4761              FC_LTTZ         =SIMP(statut='f',typ='R'),
4762              C_LZLZ          =SIMP(statut='f',typ='R'),
4763              C_LZTZ          =SIMP(statut='f',typ='R'),
4764              C_TZTZ          =SIMP(statut='f',typ='R'),
4765              RHO             =SIMP(statut='f',typ='R'),
4766              ALPHA           =SIMP(statut='f',typ='R'),
4767            ),
4768            ELAS_COQUE_FO   =FACT(statut='f',min=00,max=01,
4769              regles=(EXCLUS('MEMB_L','M_LLLL',),
4770                      PRESENT_PRESENT('MEMB_L','MEMB_LT','MEMB_T','MEMB_G_LT','FLEX_L','FLEX_LT',
4771                                      'FLEX_T','FLEX_G_LT','CISA_L','CISA_T',),
4772                      PRESENT_PRESENT('M_LLLL','M_LLTT','M_LLLT','M_TTTT','M_TTLT','M_LTLT','F_LLLL',
4773                                      'F_LLTT','F_LLLT','F_TTTT','F_TTLT','F_LTLT','MF_LLLL','MF_LLTT',
4774                                      'MF_LLLT','MF_TTTT','MF_TTLT','MF_LTLT','MC_LLLZ','MC_LLTZ',
4775                                      'MC_TTLZ','MC_TTTZ','MC_LTLZ','MC_LTTZ','FC_LLLZ','FC_LLTZ',
4776                                      'FC_TTLZ','FC_TTTZ','FC_LTLZ','FC_LTTZ','C_LZLZ','C_LZTZ','C_TZTZ'),),
4777              MEMB_L          =SIMP(statut='f',typ=fonction),
4778              MEMB_LT         =SIMP(statut='f',typ=fonction),
4779              MEMB_T          =SIMP(statut='f',typ=fonction),
4780              MEMB_G_LT       =SIMP(statut='f',typ=fonction),
4781              FLEX_L          =SIMP(statut='f',typ=fonction),
4782              FLEX_LT         =SIMP(statut='f',typ=fonction),
4783              FLEX_T          =SIMP(statut='f',typ=fonction),
4784              FLEX_G_LT       =SIMP(statut='f',typ=fonction),
4785              CISA_L          =SIMP(statut='f',typ=fonction),
4786              CISA_T          =SIMP(statut='f',typ=fonction),
4787              M_LLLL          =SIMP(statut='f',typ=fonction),
4788              M_LLTT          =SIMP(statut='f',typ=fonction),
4789              M_LLLT          =SIMP(statut='f',typ=fonction),
4790              M_TTTT          =SIMP(statut='f',typ=fonction),
4791              M_TTLT          =SIMP(statut='f',typ=fonction),
4792              M_LTLT          =SIMP(statut='f',typ=fonction),
4793              F_LLLL          =SIMP(statut='f',typ=fonction),
4794              F_LLTT          =SIMP(statut='f',typ=fonction),
4795              F_LLLT          =SIMP(statut='f',typ=fonction),
4796              F_TTTT          =SIMP(statut='f',typ=fonction),
4797              F_TTLT          =SIMP(statut='f',typ=fonction),
4798              F_LTLT          =SIMP(statut='f',typ=fonction),
4799              MF_LLLL         =SIMP(statut='f',typ=fonction),
4800              MF_LLTT         =SIMP(statut='f',typ=fonction),
4801              MF_LLLT         =SIMP(statut='f',typ=fonction),
4802              MF_TTTT         =SIMP(statut='f',typ=fonction),
4803              MF_TTLT         =SIMP(statut='f',typ=fonction),
4804              MF_LTLT         =SIMP(statut='f',typ=fonction),
4805              MC_LLLZ         =SIMP(statut='f',typ=fonction),
4806              MC_LLTZ         =SIMP(statut='f',typ=fonction),
4807              MC_TTLZ         =SIMP(statut='f',typ=fonction),
4808              MC_TTTZ         =SIMP(statut='f',typ=fonction),
4809              MC_LTLZ         =SIMP(statut='f',typ=fonction),
4810              MC_LTTZ         =SIMP(statut='f',typ=fonction),
4811              FC_LLLZ         =SIMP(statut='f',typ=fonction),
4812              FC_LLTZ         =SIMP(statut='f',typ=fonction),
4813              FC_TTLZ         =SIMP(statut='f',typ=fonction),
4814              FC_TTTZ         =SIMP(statut='f',typ=fonction),
4815              FC_LTLZ         =SIMP(statut='f',typ=fonction),
4816              FC_LTTZ         =SIMP(statut='f',typ=fonction),
4817              C_LZLZ          =SIMP(statut='f',typ=fonction),
4818              C_LZTZ          =SIMP(statut='f',typ=fonction),
4819              C_TZTZ          =SIMP(statut='f',typ=fonction),
4820              RHO             =SIMP(statut='f',typ='R'),
4821              ALPHA           =SIMP(statut='f',typ=fonction),
4822              VERI_P1         =SIMP(statut='f',typ='TXM',defaut="TEMP",into=("TEMP","INST") ),
4823            ),
4824            APPUI_ELAS      =FACT(statut='f',min=00,max=01,
4825              E_N             =SIMP(statut='o',typ='R'),
4826              E_TAN           =SIMP(statut='f',typ='R',defaut= 0.E+0),
4827            ),
4828            CABLE           =FACT(statut='f',min=00,max=01,
4829              E               =SIMP(statut='o',typ='R'),
4830              EC_SUR_E        =SIMP(statut='f',typ='R',defaut= 1.E-4 ),
4831              RHO             =SIMP(statut='f',typ='R'),
4832              ALPHA           =SIMP(statut='f',typ='R'),
4833              AMOR_ALPHA      =SIMP(statut='f',typ='R'),
4834              AMOR_BETA       =SIMP(statut='f',typ='R'),
4835            ),
4836 #
4837 # comportement mécanique non linéaire
4838 #
4839            TRACTION        =FACT(statut='f',min=00,max=01,
4840              SIGM            =SIMP(statut='o',typ=fonction),
4841              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="EPSI",into=("EPSI",) ),
4842              VERI_P2         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
4843              VERI_P3         =SIMP(statut='c',typ='TXM',defaut="HYDR",into=("HYDR",) ),
4844              VERI_P4         =SIMP(statut='c',typ='TXM',defaut="SECH",into=("SECH",) ),
4845            ),
4846            ECRO_LINE       =FACT(statut='f',min=00,max=01,
4847              D_SIGM_EPSI     =SIMP(statut='o',typ='R'),
4848              SY              =SIMP(statut='o',typ='R'),
4849            ),
4850            ECRO_LINE_FO    =FACT(statut='f',min=00,max=01,
4851              D_SIGM_EPSI     =SIMP(statut='o',typ=fonction),
4852              SY              =SIMP(statut='o',typ=fonction),
4853              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
4854            ),
4855            PRAGER          =FACT(statut='f',min=00,max=01,
4856              C               =SIMP(statut='o',typ='R'),
4857            ),
4858            PRAGER_FO       =FACT(statut='f',min=00,max=01,
4859              C               =SIMP(statut='o',typ=fonction),
4860              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
4861            ),
4862            ECRO_FLEJOU     =FACT(statut='f',min=00,max=01,
4863              EP              =SIMP(statut='o',typ='R'),
4864              SY              =SIMP(statut='o',typ='R'),
4865              SU              =SIMP(statut='o',typ='R'),
4866              PUISS           =SIMP(statut='o',typ='R'),
4867            ),
4868            TAHERI          =FACT(statut='f',min=00,max=01,
4869              R_0             =SIMP(statut='o',typ='R'),
4870              ALPHA           =SIMP(statut='o',typ='R'),
4871              M               =SIMP(statut='o',typ='R'),
4872              A               =SIMP(statut='o',typ='R'),
4873              B               =SIMP(statut='o',typ='R'),
4874              C1              =SIMP(statut='o',typ='R'),
4875              C_INF           =SIMP(statut='o',typ='R'),
4876              S               =SIMP(statut='o',typ='R'),
4877            ),
4878            TAHERI_FO       =FACT(statut='f',min=00,max=01,
4879              R_0             =SIMP(statut='o',typ=fonction),
4880              ALPHA           =SIMP(statut='o',typ=fonction),
4881              M               =SIMP(statut='o',typ=fonction),
4882              A               =SIMP(statut='o',typ=fonction),
4883              B               =SIMP(statut='o',typ=fonction),
4884              C1              =SIMP(statut='o',typ=fonction),
4885              C_INF           =SIMP(statut='o',typ=fonction),
4886              S               =SIMP(statut='o',typ=fonction),
4887              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
4888            ),
4889            ROUSSELIER      =FACT(statut='f',min=00,max=01,
4890              D               =SIMP(statut='o',typ='R'),
4891              SIGM_1          =SIMP(statut='o',typ='R'),
4892              PORO_INIT       =SIMP(statut='o',typ='R'),
4893              PORO_CRIT       =SIMP(statut='f',typ='R',defaut= 1. ),
4894              PORO_ACCE       =SIMP(statut='f',typ='R',defaut= 1. ),
4895              PORO_LIMI       =SIMP(statut='f',typ='R',defaut= 1. ),
4896              D_SIGM_EPSI_NORM=SIMP(statut='f',typ='R',defaut= 1. ),
4897            ),
4898            ROUSSELIER_FO   =FACT(statut='f',min=00,max=01,
4899              D               =SIMP(statut='o',typ=fonction),
4900              SIGM_1          =SIMP(statut='o',typ=fonction),
4901              PORO_INIT       =SIMP(statut='o',typ=fonction),
4902              PORO_CRIT       =SIMP(statut='f',typ='R',defaut= 1. ),
4903              PORO_ACCE       =SIMP(statut='f',typ='R',defaut= 1. ),
4904              PORO_LIMI       =SIMP(statut='f',typ='R',defaut= 1. ),
4905              D_SIGM_EPSI_NORM=SIMP(statut='f',typ='R',defaut= 1. ),
4906              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
4907            ),
4908            CHABOCHE        =FACT(statut='f',min=00,max=01,
4909              R_I             =SIMP(statut='o',typ='R'),
4910              R_0             =SIMP(statut='o',typ='R'),
4911              B               =SIMP(statut='o',typ='R'),
4912              K               =SIMP(statut='o',typ='R'),
4913              W               =SIMP(statut='o',typ='R'),
4914              A1              =SIMP(statut='o',typ='R'),
4915              A2              =SIMP(statut='o',typ='R'),
4916              C1              =SIMP(statut='o',typ='R'),
4917              C2              =SIMP(statut='o',typ='R'),
4918            ),
4919            VMIS_CIN1_CHAB  =FACT(statut='f',min=00,max=01,
4920              R_0             =SIMP(statut='o',typ='R'),  
4921              R_I             =SIMP(statut='f',typ='R'),  
4922              B               =SIMP(statut='f',typ='R',defaut= 0.0E+0),  
4923              C_I             =SIMP(statut='o',typ='R'),  
4924              K               =SIMP(statut='f',typ='R',defaut= 1.0E+0),  
4925              W               =SIMP(statut='f',typ='R',defaut= 0.0E+0),  
4926              G_0             =SIMP(statut='o',typ='R'),  
4927              A_I             =SIMP(statut='f',typ='R',defaut= 0.0E+0),  
4928            ),
4929            VMIS_CIN1_CHAB_F  =FACT(statut='f',min=00,max=01,
4930              R_0             =SIMP(statut='o',typ=fonction),
4931              R_I             =SIMP(statut='o',typ=fonction),
4932              B               =SIMP(statut='o',typ=fonction),
4933              C_I             =SIMP(statut='o',typ=fonction),
4934              K               =SIMP(statut='o',typ=fonction),
4935              W               =SIMP(statut='o',typ=fonction),
4936              G_0             =SIMP(statut='o',typ=fonction),
4937              A_I             =SIMP(statut='o',typ=fonction),
4938              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
4939            ),
4940            VMIS_CIN2_CHAB  =FACT(statut='f',min=00,max=01,
4941              R_0             =SIMP(statut='o',typ='R'),  
4942              R_I             =SIMP(statut='f',typ='R'),  
4943              B               =SIMP(statut='f',typ='R',defaut= 0.E+0 ),  
4944              C1_I            =SIMP(statut='o',typ='R'),  
4945              C2_I            =SIMP(statut='o',typ='R'),  
4946              K               =SIMP(statut='f',typ='R',defaut= 1.),  
4947              W               =SIMP(statut='f',typ='R',defaut= 0.E+0 ),  
4948              G1_0            =SIMP(statut='o',typ='R'),  
4949              G2_0            =SIMP(statut='o',typ='R'),  
4950              A_I             =SIMP(statut='f',typ='R',defaut= 1.E+0 ),  
4951            ),
4952            VMIS_CIN2_CHAB_F  =FACT(statut='f',min=00,max=01,
4953              R_0             =SIMP(statut='o',typ=fonction),
4954              R_I             =SIMP(statut='o',typ=fonction),
4955              B               =SIMP(statut='o',typ=fonction),
4956              C1_I            =SIMP(statut='o',typ=fonction),
4957              C2_I            =SIMP(statut='o',typ=fonction),
4958              K               =SIMP(statut='o',typ=fonction),
4959              W               =SIMP(statut='o',typ=fonction),
4960              G1_0            =SIMP(statut='o',typ=fonction),
4961              G2_0            =SIMP(statut='o',typ=fonction),
4962              A_I             =SIMP(statut='o',typ=fonction),
4963              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
4964            ),
4965            VISCOCHAB       =FACT(statut='f',min=00,max=01,
4966              K_0             =SIMP(statut='o',typ='R'),
4967              A_K             =SIMP(statut='o',typ='R'),
4968              A_R             =SIMP(statut='o',typ='R'),
4969              K               =SIMP(statut='o',typ='R'),
4970              N               =SIMP(statut='o',typ='R'),
4971              ALP             =SIMP(statut='o',typ='R'),
4972              B               =SIMP(statut='o',typ='R'),
4973              M_R             =SIMP(statut='o',typ='R'),
4974              G_R             =SIMP(statut='o',typ='R'),
4975              MU              =SIMP(statut='o',typ='R'),
4976              Q_M             =SIMP(statut='o',typ='R'),
4977              Q_0             =SIMP(statut='o',typ='R'),
4978              QR_0            =SIMP(statut='o',typ='R'),
4979              ETA             =SIMP(statut='o',typ='R'),
4980              C1              =SIMP(statut='o',typ='R'),
4981              M_1             =SIMP(statut='o',typ='R'),
4982              D1              =SIMP(statut='o',typ='R'),
4983              G_X1            =SIMP(statut='o',typ='R'),
4984              G1_0            =SIMP(statut='o',typ='R'),
4985              C2              =SIMP(statut='o',typ='R'),
4986              M_2             =SIMP(statut='o',typ='R'),
4987              D2              =SIMP(statut='o',typ='R'),
4988              G_X2            =SIMP(statut='o',typ='R'),
4989              G2_0            =SIMP(statut='o',typ='R'),
4990              A_I             =SIMP(statut='o',typ='R'),
4991            ),
4992            VISCOCHAB_FO    =FACT(statut='f',min=00,max=01,
4993              K_0             =SIMP(statut='o',typ=fonction),
4994              A_K             =SIMP(statut='o',typ=fonction),
4995              A_R             =SIMP(statut='o',typ=fonction),
4996              K               =SIMP(statut='o',typ=fonction),
4997              N               =SIMP(statut='o',typ=fonction),
4998              ALP             =SIMP(statut='o',typ=fonction),
4999              B               =SIMP(statut='o',typ=fonction),
5000              M_R             =SIMP(statut='o',typ=fonction),
5001              G_R             =SIMP(statut='o',typ=fonction),
5002              MU              =SIMP(statut='o',typ=fonction),
5003              Q_M             =SIMP(statut='o',typ=fonction),
5004              Q_0             =SIMP(statut='o',typ=fonction),
5005              QR_0            =SIMP(statut='o',typ=fonction),
5006              ETA             =SIMP(statut='o',typ=fonction),
5007              C1              =SIMP(statut='o',typ=fonction),
5008              M_1             =SIMP(statut='o',typ=fonction),
5009              D1              =SIMP(statut='o',typ=fonction),
5010              G_X1            =SIMP(statut='o',typ=fonction),
5011              G1_0            =SIMP(statut='o',typ=fonction),
5012              C2              =SIMP(statut='o',typ=fonction),
5013              M_2             =SIMP(statut='o',typ=fonction),
5014              D2              =SIMP(statut='o',typ=fonction),
5015              G_X2            =SIMP(statut='o',typ=fonction),
5016              G2_0            =SIMP(statut='o',typ=fonction),
5017              A_I             =SIMP(statut='o',typ=fonction),
5018              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
5019            ),
5020            POLY_CFC        =FACT(statut='f',min=00,max=01,
5021              TEXTURE         =SIMP(statut='o',typ=(tabl_texture) ),
5022              DL              =SIMP(statut='f',typ='R'),
5023              DA              =SIMP(statut='f',typ='R'),
5024              N               =SIMP(statut='o',typ='R'),
5025              K               =SIMP(statut='o',typ='R'),
5026              TAU_0           =SIMP(statut='o',typ='R'),
5027              Q1              =SIMP(statut='o',typ='R'),
5028              B1              =SIMP(statut='o',typ='R'),
5029              HL              =SIMP(statut='o',typ='R'),
5030              Q2              =SIMP(statut='o',typ='R'),
5031              B2              =SIMP(statut='o',typ='R'),
5032              C1              =SIMP(statut='o',typ='R'),
5033              D1              =SIMP(statut='o',typ='R'),
5034              C2              =SIMP(statut='o',typ='R'),
5035            ),
5036            POLY_CFC_FO     =FACT(statut='f',min=00,max=01,
5037              TEXTURE         =SIMP(statut='o',typ=(tabl_texture) ),
5038              DL              =SIMP(statut='o',typ=fonction),
5039              DA              =SIMP(statut='o',typ=fonction),
5040              N               =SIMP(statut='o',typ=fonction),
5041              K               =SIMP(statut='o',typ=fonction),
5042              TAU_0           =SIMP(statut='o',typ=fonction),
5043              Q1              =SIMP(statut='o',typ=fonction),
5044              B1              =SIMP(statut='o',typ=fonction),
5045              HL              =SIMP(statut='o',typ=fonction),
5046              Q2              =SIMP(statut='o',typ=fonction),
5047              B2              =SIMP(statut='o',typ=fonction),
5048              C1              =SIMP(statut='o',typ=fonction),
5049              D1              =SIMP(statut='o',typ=fonction),
5050              C2              =SIMP(statut='o',typ=fonction),
5051              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
5052            ),
5053            NORTON_HOFF     =FACT(statut='f',min=00,max=01,
5054              N               =SIMP(statut='o',typ='R'),
5055              SY              =SIMP(statut='o',typ='R'),
5056            ),
5057            LEMAITRE        =FACT(statut='f',min=00,max=01,
5058              N               =SIMP(statut='o',typ='R'),
5059              UN_SUR_K        =SIMP(statut='o',typ='R'),
5060              UN_SUR_M        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5061              QSR_K           =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5062            ),
5063            ZIRC_CYRA2      =FACT(statut='f',min=00,max=01,
5064              EPSI_FAB        =SIMP(statut='o',typ=fonction),
5065              TEMP_RECUIT     =SIMP(statut='o',typ=fonction),
5066              FLUX_PHI        =SIMP(statut='o',typ=fonction),
5067              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="INST",into=("INST",) ),
5068            ),
5069            ZIRC_EPRI       =FACT(statut='f',min=00,max=01,
5070              FLUX_PHI        =SIMP(statut='o',typ='R'),
5071              R_P             =SIMP(statut='o',typ='R'),
5072              THETA_MAX       =SIMP(statut='o',typ='R'),
5073            ),
5074            LEMAITRE_FO     =FACT(statut='f',min=00,max=01,
5075              N               =SIMP(statut='o',typ=fonction),
5076              UN_SUR_K        =SIMP(statut='o',typ=fonction),
5077              UN_SUR_M        =SIMP(statut='f',typ=fonction),
5078              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
5079            ),
5080            GRAN_IRRA       =FACT(statut='f',min=00,max=01,
5081              FLUX_L          =SIMP(statut='o',typ=fonction),
5082              FLUX_TN         =SIMP(statut='o',typ=fonction),
5083              FONC_MULT       =SIMP(statut='f',typ=fonction),
5084              A               =SIMP(statut='o',typ='R'),
5085              S               =SIMP(statut='f',typ='R'),
5086              VERI_P1         =SIMP(statut='f',typ='TXM',defaut="X",into=("X",) ),
5087              VERI_P2         =SIMP(statut='f',typ='TXM',defaut="Y",into=("Y",) ),
5088              VERI_P3         =SIMP(statut='f',typ='TXM',defaut="Z",into=("Z",) ),
5089              VERI_P4         =SIMP(statut='f',typ='TXM',defaut="INST",into=("INST",) ),
5090            ),
5091            OHNO            =FACT(statut='f',min=00,max=01,
5092              R_I             =SIMP(statut='o',typ='R'),
5093              R_0             =SIMP(statut='o',typ='R'),
5094              B               =SIMP(statut='o',typ='R'),
5095              PHI             =SIMP(statut='o',typ='R'),
5096              A1              =SIMP(statut='o',typ='R'),
5097              A2              =SIMP(statut='o',typ='R'),
5098              A3              =SIMP(statut='o',typ='R'),
5099              A4              =SIMP(statut='o',typ='R'),
5100              A5              =SIMP(statut='o',typ='R'),
5101              GAMMA1          =SIMP(statut='o',typ='R'),
5102              GAMMA2          =SIMP(statut='o',typ='R'),
5103              GAMMA3          =SIMP(statut='o',typ='R'),
5104              GAMMA4          =SIMP(statut='o',typ='R'),
5105              GAMMA5          =SIMP(statut='o',typ='R'),
5106              M1              =SIMP(statut='o',typ='R'),
5107              M2              =SIMP(statut='o',typ='R'),
5108              M3              =SIMP(statut='o',typ='R'),
5109              M4              =SIMP(statut='o',typ='R'),
5110              M5              =SIMP(statut='o',typ='R'),
5111                            ),
5112            OHNO_FO         =FACT(statut='f',min=00,max=01,
5113              R_I             =SIMP(statut='o',typ=fonction),
5114              R_0             =SIMP(statut='o',typ=fonction),
5115              B               =SIMP(statut='o',typ=fonction),
5116              PHI             =SIMP(statut='o',typ=fonction),
5117              A1              =SIMP(statut='o',typ=fonction),
5118              A2              =SIMP(statut='o',typ=fonction),
5119              A3              =SIMP(statut='o',typ=fonction),
5120              A4              =SIMP(statut='o',typ=fonction),
5121              A5              =SIMP(statut='o',typ=fonction),
5122              GAMMA1          =SIMP(statut='o',typ=fonction),
5123              GAMMA2          =SIMP(statut='o',typ=fonction),
5124              GAMMA3          =SIMP(statut='o',typ=fonction),
5125              GAMMA4          =SIMP(statut='o',typ=fonction),
5126              GAMMA5          =SIMP(statut='o',typ=fonction),
5127              M1              =SIMP(statut='o',typ=fonction),
5128              M2              =SIMP(statut='o',typ=fonction),
5129              M3              =SIMP(statut='o',typ=fonction),
5130              M4              =SIMP(statut='o',typ=fonction),
5131              M5              =SIMP(statut='o',typ=fonction),
5132              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
5133            ),
5134            LMARC           =FACT(statut='f',min=00,max=01,
5135              DE_0            =SIMP(statut='o',typ='R'),
5136              R_0             =SIMP(statut='o',typ='R'),
5137              N               =SIMP(statut='o',typ='R'),
5138              K               =SIMP(statut='o',typ='R'),
5139              Y_I             =SIMP(statut='o',typ='R'),
5140              Y_0             =SIMP(statut='o',typ='R'),
5141              B               =SIMP(statut='o',typ='R'),
5142              A_0             =SIMP(statut='o',typ='R'),
5143              RM              =SIMP(statut='o',typ='R'),
5144              M               =SIMP(statut='o',typ='R'),
5145              P               =SIMP(statut='o',typ='R'),
5146              P1              =SIMP(statut='o',typ='R'),
5147              P2              =SIMP(statut='o',typ='R'),
5148              M11             =SIMP(statut='o',typ='R'),
5149              M22             =SIMP(statut='o',typ='R'),
5150              M33             =SIMP(statut='o',typ='R'),
5151              M66             =SIMP(statut='o',typ='R'),
5152              N11             =SIMP(statut='o',typ='R'),
5153              N22             =SIMP(statut='o',typ='R'),
5154              N33             =SIMP(statut='o',typ='R'),
5155              N66             =SIMP(statut='o',typ='R'),
5156              Q11             =SIMP(statut='o',typ='R'),
5157              Q22             =SIMP(statut='o',typ='R'),
5158              Q33             =SIMP(statut='o',typ='R'),
5159              Q66             =SIMP(statut='o',typ='R'),
5160              R11             =SIMP(statut='o',typ='R'),
5161              R22             =SIMP(statut='o',typ='R'),
5162              R33             =SIMP(statut='o',typ='R'),
5163              R66             =SIMP(statut='o',typ='R'),
5164            ),
5165            LMARC_FO        =FACT(statut='f',min=00,max=01,
5166              DE_0            =SIMP(statut='o',typ=fonction),
5167              R_0             =SIMP(statut='o',typ=fonction),
5168              N               =SIMP(statut='o',typ=fonction),
5169              K               =SIMP(statut='o',typ=fonction),
5170              Y_I             =SIMP(statut='o',typ=fonction),
5171              Y_0             =SIMP(statut='o',typ=fonction),
5172              B               =SIMP(statut='o',typ=fonction),
5173              A_0             =SIMP(statut='o',typ=fonction),
5174              RM              =SIMP(statut='o',typ=fonction),
5175              M               =SIMP(statut='o',typ=fonction),
5176              P               =SIMP(statut='o',typ=fonction),
5177              P1              =SIMP(statut='o',typ=fonction),
5178              P2              =SIMP(statut='o',typ=fonction),
5179              M11             =SIMP(statut='o',typ=fonction),
5180              M22             =SIMP(statut='o',typ=fonction),
5181              M33             =SIMP(statut='o',typ=fonction),
5182              M66             =SIMP(statut='o',typ=fonction),
5183              N11             =SIMP(statut='o',typ=fonction),
5184              N22             =SIMP(statut='o',typ=fonction),
5185              N33             =SIMP(statut='o',typ=fonction),
5186              N66             =SIMP(statut='o',typ=fonction),
5187              Q11             =SIMP(statut='o',typ=fonction),
5188              Q22             =SIMP(statut='o',typ=fonction),
5189              Q33             =SIMP(statut='o',typ=fonction),
5190              Q66             =SIMP(statut='o',typ=fonction),
5191              R11             =SIMP(statut='o',typ=fonction),
5192              R22             =SIMP(statut='o',typ=fonction),
5193              R33             =SIMP(statut='o',typ=fonction),
5194              R66             =SIMP(statut='o',typ=fonction),
5195              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
5196            ),
5197            VMIS_POUTRE     =FACT(statut='f',min=00,max=01,
5198              NP              =SIMP(statut='o',typ='R'),
5199              MEY             =SIMP(statut='o',typ='R'),
5200              MPY             =SIMP(statut='o',typ='R'),
5201              CAY             =SIMP(statut='o',typ='R'),
5202              CBY             =SIMP(statut='o',typ='R'),
5203              MEZ             =SIMP(statut='o',typ='R'),
5204              MPZ             =SIMP(statut='o',typ='R'),
5205              CAZ             =SIMP(statut='o',typ='R'),
5206              CBZ             =SIMP(statut='o',typ='R'),
5207              MPX             =SIMP(statut='o',typ='R'),
5208            ),
5209            VMIS_POUTRE_FO  =FACT(statut='f',min=00,max=01,
5210              NP              =SIMP(statut='o',typ=fonction),
5211              MEY             =SIMP(statut='o',typ=fonction),
5212              MPY             =SIMP(statut='o',typ=fonction),
5213              CAY             =SIMP(statut='o',typ=fonction),
5214              CBY             =SIMP(statut='o',typ=fonction),
5215              MEZ             =SIMP(statut='o',typ=fonction),
5216              MPZ             =SIMP(statut='o',typ=fonction),
5217              CAZ             =SIMP(statut='o',typ=fonction),
5218              CBZ             =SIMP(statut='o',typ=fonction),
5219              MPX             =SIMP(statut='o',typ=fonction),
5220              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
5221            ),
5222            ARME            =FACT(statut='f',min=00,max=01,
5223              KYE             =SIMP(statut='o',typ='R'),
5224              DLE             =SIMP(statut='o',typ='R'),
5225              KYP             =SIMP(statut='o',typ='R'),
5226              DLP             =SIMP(statut='o',typ='R'),
5227              KYG             =SIMP(statut='o',typ='R'),
5228            ),
5229            ASSE_CORN       =FACT(statut='f',min=00,max=01,
5230              NU_1            =SIMP(statut='o',typ='R'),
5231              MU_1            =SIMP(statut='o',typ='R'),
5232              DXU_1           =SIMP(statut='o',typ='R'),
5233              DRYU_1          =SIMP(statut='o',typ='R'),
5234              C_1             =SIMP(statut='o',typ='R'),
5235              NU_2            =SIMP(statut='o',typ='R'),
5236              MU_2            =SIMP(statut='o',typ='R'),
5237              DXU_2           =SIMP(statut='o',typ='R'),
5238              DRYU_2          =SIMP(statut='o',typ='R'),
5239              C_2             =SIMP(statut='o',typ='R'),
5240              KY              =SIMP(statut='o',typ='R'),
5241              KZ              =SIMP(statut='o',typ='R'),
5242              KRX             =SIMP(statut='o',typ='R'),
5243              KRZ             =SIMP(statut='o',typ='R'),
5244            ),
5245            DIS_CONTACT     =FACT(statut='f',min=00,max=01,
5246              regles=(EXCLUS('RIGI_N_FO','RIGI_N_IRRA'),),
5247              RIGI_NOR        =SIMP(statut='f',typ='R' ),
5248              DIST_1          =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5249              DIST_2          =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5250              RIGI_TAN        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5251              AMOR_NOR        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5252              AMOR_TAN        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5253              COULOMB         =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5254              JEU             =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5255              KT_ULTM         =SIMP(statut='f',typ='R',defaut= 0.E+0 ),  
5256              EFFO_N_INIT     =SIMP(statut='f',typ='R'),
5257              RIGI_N_FO       =SIMP(statut='f',typ=fonction),
5258              RIGI_N_IRRA     =SIMP(statut='f',typ=fonction),
5259              RELA_MZ         =SIMP(statut='f',typ=fonction),
5260              C_PRAGER_MZ     =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5261              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="DRZ",into=("DRZ",) ),
5262              VERI_P2         =SIMP(statut='c',typ='TXM',defaut="INST",into=("INST",) ),
5263            ),
5264            NADAI_B         =FACT(statut='f',min=00,max=01,
5265              F_C             =SIMP(statut='o',typ='R'),
5266              F_T             =SIMP(statut='o',typ='R'),
5267              CRIT_E_C        =SIMP(statut='o',typ='R'),
5268              EPSP_P_C        =SIMP(statut='o',typ='R'),
5269              EPSP_R_C        =SIMP(statut='o',typ='R'),
5270              EPSI_R_T        =SIMP(statut='o',typ='R'),
5271              FAC_T_C         =SIMP(statut='o',typ='R'),
5272            ),
5273            BETON_DOUBLE_DP =FACT(statut='f',min=00,max=01,
5274              F_C             =SIMP(statut='o',typ=fonction),
5275              F_T             =SIMP(statut='o',typ=fonction),
5276              COEF_BIAX       =SIMP(statut='o',typ=fonction),
5277              ENER_COMP_RUPT  =SIMP(statut='o',typ=fonction),
5278              ENER_TRAC_RUPT  =SIMP(statut='o',typ=fonction),
5279              COEF_ELAS_COMP  =SIMP(statut='o',typ='R'),
5280              ECRO_COMP_P_PIC =SIMP(statut='f',typ='TXM',defaut="LINEAIRE",into=("LINEAIRE","PARABOLE") ),
5281              ECRO_TRAC_P_PIC =SIMP(statut='f',typ='TXM',defaut="LINEAIRE",into=("LINEAIRE","EXPONENT") ),
5282              VERI_P1         =SIMP(statut='f',typ='TXM',defaut="TEMP",into=("TEMP","INST",) ),
5283              VERI_P2         =SIMP(statut='f',typ='TXM',defaut="INST",into=("TEMP","INST",) ),
5284              VERI_P3         =SIMP(statut='f',typ='TXM',defaut="HYDR",into=("HYDR",) ),
5285              VERI_P4         =SIMP(statut='f',typ='TXM',defaut="SECH",into=("SECH",) ),
5286            ),
5287            VENDOCHAB       =FACT(statut='f',min=00,max=01,
5288              S_VP            =SIMP(statut='o',typ='R'),
5289              SEDVP1          =SIMP(statut='o',typ='R'),
5290              SEDVP2          =SIMP(statut='o',typ='R'),
5291              N_VP            =SIMP(statut='o',typ='R'),
5292              M_VP            =SIMP(statut='o',typ='R'),
5293              K_VP            =SIMP(statut='o',typ='R'),
5294              R_D             =SIMP(statut='o',typ='R'),
5295              A_D             =SIMP(statut='o',typ='R'),
5296              K_D             =SIMP(statut='o',typ='R'),
5297            ),
5298            VENDOCHAB_FO    =FACT(statut='f',min=00,max=01,
5299              S_VP            =SIMP(statut='o',typ=fonction),
5300              SEDVP1          =SIMP(statut='o',typ=fonction),
5301              SEDVP2          =SIMP(statut='o',typ=fonction),
5302              N_VP            =SIMP(statut='o',typ=fonction),
5303              M_VP            =SIMP(statut='o',typ=fonction),
5304              K_VP            =SIMP(statut='o',typ=fonction),
5305              R_D             =SIMP(statut='o',typ=fonction),
5306              A_D             =SIMP(statut='o',typ=fonction),
5307              K_D             =SIMP(statut='o',typ=fonction),
5308              VERI_P1         =SIMP(statut='f',typ='TXM',defaut="TEMP",into=("TEMP",) ),
5309              VERI_P2         =SIMP(statut='f',typ='TXM',defaut="X",into=("X",) ),
5310            ),
5311            PINTO_MENEGOTTO =FACT(statut='f',min=00,max=01,
5312              SY              =SIMP(statut='o',typ='R'),
5313              EPSI_ULTM       =SIMP(statut='o',typ='R'),
5314              SIGM_ULTM       =SIMP(statut='o',typ='R'),
5315              ELAN            =SIMP(statut='f',typ='R',defaut= 4. ),
5316              EPSP_HARD       =SIMP(statut='o',typ='R'),
5317              R_PM            =SIMP(statut='f',typ='R',defaut= 20. ),
5318              EP_SUR_E        =SIMP(statut='f',typ='R'),
5319              A1_PM           =SIMP(statut='f',typ='R',defaut= 18.5 ),
5320              A2_PM           =SIMP(statut='f',typ='R',defaut= 0.15 ),
5321              A6_PM           =SIMP(statut='f',typ='R',defaut= 620. ),
5322              C_PM            =SIMP(statut='f',typ='R',defaut= 0.5 ),
5323              A_PM            =SIMP(statut='f',typ='R',defaut= 6.0E-3 ),
5324            ),
5325            BPEL_BETON      =FACT(statut='f',min=00,max=01,
5326              PERT_FLUA       =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5327              PERT_RETR       =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5328            ),
5329            BPEL_ACIER      =FACT(statut='f',min=00,max=01,
5330              RELAX_1000      =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5331              MU0_RELAX       =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5332              SY              =SIMP(statut='o',typ='R'),
5333              FROT_COURB      =SIMP(statut='o',typ='R'),
5334              FROT_LINE       =SIMP(statut='o',typ='R'),
5335            ),
5336            CJS             =FACT(statut='f',min=00,max=01,
5337              regles=(ENSEMBLE('B_CJS','C_CJS','MU_CJS','PCO',),
5338                      ENSEMBLE('N_CJS','KP','RC',),
5339                      PRESENT_ABSENT('A_CJS','B_CJS',),
5340                      PRESENT_PRESENT('A_CJS','N_CJS',),
5341                      PRESENT_PRESENT('B_CJS','N_CJS', ),),
5342              BETA_CJS        =SIMP(statut='o',typ='R'),
5343              RM              =SIMP(statut='o',typ='R'),
5344              N_CJS           =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5345              KP              =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5346              RC              =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5347              A_CJS           =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5348              B_CJS           =SIMP(statut='f',typ='R',defaut= 1.0E+25 ),
5349              C_CJS           =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5350              GAMMA_CJS       =SIMP(statut='o',typ='R'),
5351              MU_CJS          =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5352              PCO             =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5353              PA              =SIMP(statut='o',typ='R'),
5354              Q_INIT          =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5355              R_INIT          =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5356            ),
5357            ECRO_ASYM_LINE  =FACT(statut='f',min=00,max=01,
5358              DC_SIGM_EPSI    =SIMP(statut='o',typ='R'),
5359              SY_C            =SIMP(statut='o',typ='R'),
5360              DT_SIGM_EPSI    =SIMP(statut='o',typ='R'),
5361              SY_T            =SIMP(statut='o',typ='R'),
5362            ),
5363            GRANGER_FP      =FACT(statut='f',min=00,max=01,
5364              J1              =SIMP(statut='f',typ='R'),
5365              J2              =SIMP(statut='f',typ='R'),
5366              J3              =SIMP(statut='f',typ='R'),
5367              J4              =SIMP(statut='f',typ='R'),
5368              J5              =SIMP(statut='f',typ='R'),
5369              J6              =SIMP(statut='f',typ='R'),
5370              J7              =SIMP(statut='f',typ='R'),
5371              J8              =SIMP(statut='f',typ='R'),
5372              TAUX_1          =SIMP(statut='f',typ='R'),
5373              TAUX_2          =SIMP(statut='f',typ='R'),
5374              TAUX_3          =SIMP(statut='f',typ='R'),
5375              TAUX_4          =SIMP(statut='f',typ='R'),
5376              TAUX_5          =SIMP(statut='f',typ='R'),
5377              TAUX_6          =SIMP(statut='f',typ='R'),
5378              TAUX_7          =SIMP(statut='f',typ='R'),
5379              TAUX_8          =SIMP(statut='f',typ='R'),
5380              FONC_DESORP     =SIMP(statut='f',typ=fonction),
5381              QSR_K           =SIMP(statut='f',typ='R'),
5382              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="SECH",into=("SECH",) ),
5383            ),
5384            V_GRANGER_FP    =FACT(statut='f',min=00,max=01,
5385              QSR_VEIL        =SIMP(statut='f',typ='R'),
5386              FONC_V          =SIMP(statut='f',typ=fonction),
5387              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="INST",into=("INST",) ),
5388            ),
5389 #
5390 # comportement thermique
5391 #
5392            THER_NL         =FACT(statut='f',min=00,max=01,
5393              regles=(UN_PARMI('BETA','RHO_CP', ),),
5394              LAMBDA          =SIMP(statut='o',typ=fonction),
5395              BETA            =SIMP(statut='f',typ=fonction),
5396              RHO_CP          =SIMP(statut='f',typ=fonction),
5397              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
5398            ),
5399            THER_HYDR       =FACT(statut='f',min=00,max=01,
5400              LAMBDA          =SIMP(statut='o',typ=fonction),
5401              BETA            =SIMP(statut='f',typ=fonction),
5402              AFFINITE        =SIMP(statut='o',typ=fonction),
5403              CHALHYDR        =SIMP(statut='o',typ='R'),
5404              QSR_K           =SIMP(statut='o',typ='R'),
5405              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("HYDR",) ),
5406              VERI_P2         =SIMP(statut='c',typ='TXM',defaut="HYDR",into=("HYDR",) ),
5407            ),
5408            THER            =FACT(statut='f',min=00,max=01,
5409              LAMBDA          =SIMP(statut='o',typ='R'),
5410              RHO_CP          =SIMP(statut='f',typ='R'),
5411            ),
5412            THER_FO         =FACT(statut='f',min=00,max=01,
5413              LAMBDA          =SIMP(statut='o',typ=fonction),
5414              RHO_CP          =SIMP(statut='f',typ=fonction),
5415              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="INST",into=("INST",) ),
5416            ),
5417            THER_ORTH       =FACT(statut='f',min=00,max=01,
5418              LAMBDA_L        =SIMP(statut='o',typ='R'),
5419              LAMBDA_T        =SIMP(statut='o',typ='R'),
5420              LAMBDA_N        =SIMP(statut='f',typ='R'),
5421              RHO_CP          =SIMP(statut='f',typ='R'),
5422            ),
5423            THER_COQUE      =FACT(statut='f',min=00,max=01,
5424              COND_LMM        =SIMP(statut='o',typ='R'),
5425              COND_TMM        =SIMP(statut='o',typ='R'),
5426              COND_LMP        =SIMP(statut='o',typ='R'),
5427              COND_TMP        =SIMP(statut='o',typ='R'),
5428              COND_LPP        =SIMP(statut='o',typ='R'),
5429              COND_TPP        =SIMP(statut='o',typ='R'),
5430              COND_LSI        =SIMP(statut='o',typ='R'),
5431              COND_TSI        =SIMP(statut='o',typ='R'),
5432              COND_NMM        =SIMP(statut='o',typ='R'),
5433              COND_NMP        =SIMP(statut='o',typ='R'),
5434              COND_NPP        =SIMP(statut='o',typ='R'),
5435              COND_NSI        =SIMP(statut='o',typ='R'),
5436              CMAS_MM         =SIMP(statut='f',typ='R'),
5437              CMAS_MP         =SIMP(statut='f',typ='R'),
5438              CMAS_PP         =SIMP(statut='f',typ='R'),
5439              CMAS_SI         =SIMP(statut='f',typ='R'),
5440            ),
5441            THER_COQUE_FO   =FACT(statut='f',min=00,max=01,
5442              COND_LMM        =SIMP(statut='o',typ=fonction),
5443              COND_TMM        =SIMP(statut='o',typ=fonction),
5444              COND_LMP        =SIMP(statut='o',typ=fonction),
5445              COND_TMP        =SIMP(statut='o',typ=fonction),
5446              COND_LPP        =SIMP(statut='o',typ=fonction),
5447              COND_TPP        =SIMP(statut='o',typ=fonction),
5448              COND_LSI        =SIMP(statut='o',typ=fonction),
5449              COND_TSI        =SIMP(statut='o',typ=fonction),
5450              COND_NMM        =SIMP(statut='o',typ=fonction),
5451              COND_NMP        =SIMP(statut='o',typ=fonction),
5452              COND_NPP        =SIMP(statut='o',typ=fonction),
5453              COND_NSI        =SIMP(statut='o',typ=fonction),
5454              CMAS_MM         =SIMP(statut='f',typ=fonction),
5455              CMAS_MP         =SIMP(statut='f',typ=fonction),
5456              CMAS_PP         =SIMP(statut='f',typ=fonction),
5457              CMAS_SI         =SIMP(statut='f',typ=fonction),
5458            ),
5459            SECH_GRANGER    =FACT(statut='f',min=00,max=01,
5460              A               =SIMP(statut='o',typ='R'),
5461              B               =SIMP(statut='o',typ='R'),
5462              QSR_K           =SIMP(statut='o',typ='R'),
5463              TEMP_0_C        =SIMP(statut='o',typ='R'),
5464            ),
5465            SECH_MENSI      =FACT(statut='f',min=00,max=01,
5466              A               =SIMP(statut='o',typ='R'),
5467              B               =SIMP(statut='o',typ='R'),
5468            ),
5469            SECH_BAZANT     =FACT(statut='f',min=00,max=01,
5470              D1              =SIMP(statut='o',typ='R'),
5471              ALPHA_BAZANT    =SIMP(statut='o',typ='R'),
5472              N               =SIMP(statut='o',typ='R'),
5473              FONC_DESORP     =SIMP(statut='o',typ=fonction),
5474              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
5475            ),
5476            SECH_NAPPE      =FACT(statut='f',min=00,max=01,
5477              FONCTION        =SIMP(statut='o',typ=fonction),
5478              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
5479              VERI_P2         =SIMP(statut='c',typ='TXM',defaut="TSEC",into=("TSEC",) ),
5480            ),
5481 #
5482 # comportement métallurgique
5483 #
5484            META_ACIER      =FACT(statut='f',min=00,max=01,
5485              TRC             =SIMP(statut='o',typ=(tabl_trc) ),
5486              AR3             =SIMP(statut='o',typ='R'),
5487              ALPHA           =SIMP(statut='o',typ='R'),
5488              MS0             =SIMP(statut='o',typ='R'),
5489              AC1             =SIMP(statut='o',typ='R'),
5490              AC3             =SIMP(statut='o',typ='R'),
5491              TAUX_1          =SIMP(statut='o',typ='R'),
5492              TAUX_3          =SIMP(statut='o',typ='R'),
5493              LAMBDA0         =SIMP(statut='f',typ='R'),  
5494              QSR_K           =SIMP(statut='f',typ='R'),  
5495              D10             =SIMP(statut='f',typ='R'),  
5496              WSR_K           =SIMP(statut='f',typ='R'),  
5497            ),
5498            META_ZIRC       =FACT(statut='f',min=00,max=01,
5499              TDEQ            =SIMP(statut='o',typ='R'),  
5500              N               =SIMP(statut='o',typ='R'),  
5501              K               =SIMP(statut='o',typ='R'),  
5502              TDC             =SIMP(statut='o',typ='R'),  
5503              AC              =SIMP(statut='o',typ='R'),  
5504              M               =SIMP(statut='o',typ='R'),  
5505              QSR_K           =SIMP(statut='f',typ='R'),  
5506              TDR             =SIMP(statut='o',typ='R'),  
5507              AR              =SIMP(statut='o',typ='R'),  
5508              BR              =SIMP(statut='o',typ='R'),  
5509            ),
5510            DURT_META       =FACT(statut='f',min=00,max=01,
5511              F1_DURT         =SIMP(statut='o',typ='R'),  
5512              F2_DURT         =SIMP(statut='o',typ='R'),  
5513              F3_DURT         =SIMP(statut='o',typ='R'),  
5514              F4_DURT         =SIMP(statut='o',typ='R'),  
5515              C_DURT          =SIMP(statut='o',typ='R'),  
5516            ),
5517            ELAS_META       =FACT(statut='f',min=00,max=01,
5518              E               =SIMP(statut='o',typ='R'),  
5519              NU              =SIMP(statut='o',typ='R'),  
5520              F_ALPHA         =SIMP(statut='o',typ='R'),  
5521              C_ALPHA         =SIMP(statut='o',typ='R'),  
5522              PHASE_REFE      =SIMP(statut='o',typ='TXM',into=("CHAUD","FROID")),
5523              EPSF_EPSC_TREF  =SIMP(statut='o',typ='R'),  
5524              TEMP_DEF_ALPHA  =SIMP(statut='f',typ='R'),  
5525              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E+0),  
5526              F1_SY           =SIMP(statut='f',typ='R'),  
5527              F2_SY           =SIMP(statut='f',typ='R'),  
5528              F3_SY           =SIMP(statut='f',typ='R'),  
5529              F4_SY           =SIMP(statut='f',typ='R'),  
5530              C_SY            =SIMP(statut='f',typ='R'),  
5531              SY_MELANGE      =SIMP(statut='f',typ=fonction),
5532              F1_S_VP         =SIMP(statut='f',typ='R'),  
5533              F2_S_VP         =SIMP(statut='f',typ='R'),  
5534              F3_S_VP         =SIMP(statut='f',typ='R'),  
5535              F4_S_VP         =SIMP(statut='f',typ='R'),  
5536              C_S_VP          =SIMP(statut='f',typ='R' ),  
5537              S_VP_MELANGE    =SIMP(statut='f',typ=fonction),
5538              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="META",into=("META",)),
5539            ),
5540            ELAS_META_FO    =FACT(statut='f',min=00,max=01,
5541              E               =SIMP(statut='o',typ=fonction),
5542              NU              =SIMP(statut='o',typ=fonction),
5543              F_ALPHA         =SIMP(statut='o',typ=fonction),
5544              C_ALPHA         =SIMP(statut='o',typ=fonction),
5545              PHASE_REFE      =SIMP(statut='o',typ='TXM',into=("CHAUD","FROID")),
5546              EPSF_EPSC_TREF  =SIMP(statut='o',typ='R'),  
5547              TEMP_DEF_ALPHA  =SIMP(statut='f',typ='R'),  
5548              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E+0),  
5549              F1_SY           =SIMP(statut='f',typ=fonction),
5550              F2_SY           =SIMP(statut='f',typ=fonction),
5551              F3_SY           =SIMP(statut='f',typ=fonction),
5552              F4_SY           =SIMP(statut='f',typ=fonction),
5553              C_SY            =SIMP(statut='f',typ=fonction),  
5554              SY_MELANGE      =SIMP(statut='f',typ=fonction),
5555              F1_S_VP         =SIMP(statut='f',typ=fonction),
5556              F2_S_VP         =SIMP(statut='f',typ=fonction),
5557              F3_S_VP         =SIMP(statut='f',typ=fonction),
5558              F4_S_VP         =SIMP(statut='f',typ=fonction),
5559              C_S_VP          =SIMP(statut='f',typ=fonction),  
5560              S_VP_MELANGE    =SIMP(statut='f',typ=fonction),
5561              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
5562              VERI_P2         =SIMP(statut='c',typ='TXM',defaut="META",into=("META",)),
5563            ),
5564            META_ECRO_LINE  =FACT(statut='f',min=00,max=01,
5565              F1_D_SIGM_EPSI  =SIMP(statut='f',typ=fonction),
5566              F2_D_SIGM_EPSI  =SIMP(statut='f',typ=fonction),
5567              F3_D_SIGM_EPSI  =SIMP(statut='f',typ=fonction),
5568              F4_D_SIGM_EPSI  =SIMP(statut='f',typ=fonction),
5569              C_D_SIGM_EPSI   =SIMP(statut='f',typ=fonction),
5570              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
5571            ),
5572            META_TRACTION   =FACT(statut='f',min=00,max=01,
5573              SIGM_F1         =SIMP(statut='f',typ=fonction),
5574              SIGM_F2         =SIMP(statut='f',typ=fonction),
5575              SIGM_F3         =SIMP(statut='f',typ=fonction),
5576              SIGM_F4         =SIMP(statut='f',typ=fonction),
5577              SIGM_C          =SIMP(statut='f',typ=fonction),
5578              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="EPSI",into=("EPSI",)),
5579              VERI_P2         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
5580            ),
5581            META_VISC_FO    =FACT(statut='f',min=00,max=01,
5582              F1_ETA          =SIMP(statut='f',typ=fonction),
5583              F1_N            =SIMP(statut='f',typ=fonction),
5584              F1_C            =SIMP(statut='f',typ=fonction),
5585              F1_M            =SIMP(statut='f',typ=fonction),
5586              F2_ETA          =SIMP(statut='f',typ=fonction),
5587              F2_N            =SIMP(statut='f',typ=fonction),
5588              F2_C            =SIMP(statut='f',typ=fonction),
5589              F2_M            =SIMP(statut='f',typ=fonction),
5590              F3_ETA          =SIMP(statut='f',typ=fonction),
5591              F3_N            =SIMP(statut='f',typ=fonction),
5592              F3_C            =SIMP(statut='f',typ=fonction),
5593              F3_M            =SIMP(statut='f',typ=fonction),
5594              F4_ETA          =SIMP(statut='f',typ=fonction),
5595              F4_N            =SIMP(statut='f',typ=fonction),
5596              F4_C            =SIMP(statut='f',typ=fonction),
5597              F4_M            =SIMP(statut='f',typ=fonction),
5598              C_ETA           =SIMP(statut='f',typ=fonction),
5599              C_N             =SIMP(statut='f',typ=fonction),
5600              C_C             =SIMP(statut='f',typ=fonction),
5601              C_M             =SIMP(statut='f',typ=fonction),
5602              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
5603            ),
5604            META_PT         =FACT(statut='f',min=00,max=01,
5605              F1_K            =SIMP(statut='f',typ='R'),  
5606              F2_K            =SIMP(statut='f',typ='R'),  
5607              F3_K            =SIMP(statut='f',typ='R'),  
5608              F4_K            =SIMP(statut='f',typ='R'),  
5609              F1_D_F_META     =SIMP(statut='f',typ=fonction),
5610              F2_D_F_META     =SIMP(statut='f',typ=fonction),
5611              F3_D_F_META     =SIMP(statut='f',typ=fonction),
5612              F4_D_F_META     =SIMP(statut='f',typ=fonction),
5613              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
5614              VERI_P2         =SIMP(statut='c',typ='TXM',defaut="META",into=("META",) ),
5615            ),
5616            META_RE         =FACT(statut='f',min=00,max=01,
5617              C_F1_THETA      =SIMP(statut='f',typ='R'),  
5618              C_F2_THETA      =SIMP(statut='f',typ='R'),  
5619              C_F3_THETA      =SIMP(statut='f',typ='R'),  
5620              C_F4_THETA      =SIMP(statut='f',typ='R'),  
5621              F1_C_THETA      =SIMP(statut='f',typ='R'),  
5622              F2_C_THETA      =SIMP(statut='f',typ='R'),  
5623              F3_C_THETA      =SIMP(statut='f',typ='R'),  
5624              F4_C_THETA      =SIMP(statut='f',typ='R'),  
5625            ),
5626 #
5627 # comportement fluide
5628 #
5629            FLUIDE          =FACT(statut='f',min=00,max=01,
5630              regles=(EXCLUS('CELE_C','CELE_R'),),
5631              RHO             =SIMP(statut='o',typ='R'),
5632              CELE_C          =SIMP(statut='f',typ='C'),
5633              CELE_R          =SIMP(statut='f',typ='R'),
5634            ),
5635            PORO_JOINT      =FACT(statut='f',min=00,max=01,
5636              RHO_FLUI        =SIMP(statut='o',typ='R'),
5637              ENTRO_FLUI      =SIMP(statut='o',typ='R'),
5638              BIOT_M          =SIMP(statut='o',typ='R'),
5639              C_0             =SIMP(statut='o',typ='R'),
5640              T_R             =SIMP(statut='o',typ='R'),
5641              ALPHA_M         =SIMP(statut='o',typ='R'),
5642              LAMBDA_T        =SIMP(statut='o',typ='R'),
5643              LAMBDA_H        =SIMP(statut='o',typ='R'),
5644              SOURCE_INIT     =SIMP(statut='o',typ='R'),
5645              OMEGA_0         =SIMP(statut='o',typ='R'),
5646            ),
5647            THM_LIQU        =FACT(statut='f',min=00,max=01,
5648              RHO             =SIMP(statut='o',typ='R'),
5649              UN_SUR_K        =SIMP(statut='f',typ='R'),
5650              ALPHA           =SIMP(statut='f',typ='R'),
5651              CP              =SIMP(statut='f',typ='R'),
5652              VISC            =SIMP(statut='f',typ=fonction),
5653              D_VISC_TEMP     =SIMP(statut='f',typ=fonction),
5654              LAMBDA          =SIMP(statut='f',typ=fonction),
5655              D_LAMBDA_TEMP   =SIMP(statut='f',typ=fonction),
5656              COEF_HENRY      =SIMP(statut='f',typ='R'),  
5657              VERI_P1         =SIMP(statut='f',typ='TXM',defaut="TEMP",into=("TEMP",)),
5658            ),
5659            THM_GAZ         =FACT(statut='f',min=00,max=01,
5660              MASS_MOL        =SIMP(statut='f',typ='R'),
5661              CP              =SIMP(statut='f',typ='R'),
5662              VISC            =SIMP(statut='f',typ=fonction),
5663              D_VISC_TEMP     =SIMP(statut='f',typ=fonction),
5664              LAMBDA          =SIMP(statut='f',typ=fonction),
5665              D_LAMBDA_TEMP   =SIMP(statut='f',typ=fonction),
5666              VERI_P1         =SIMP(statut='f',typ='TXM',defaut="TEMP",into=("TEMP",)),
5667            ),
5668            THM_VAPE_GAZ    =FACT(statut='f',min=00,max=01,
5669              MASS_MOL        =SIMP(statut='f',typ='R'),
5670              CP              =SIMP(statut='f',typ='R'),
5671              VISC            =SIMP(statut='f',typ=fonction),
5672              D_VISC_TEMP     =SIMP(statut='f',typ=fonction),
5673              VERI_P1         =SIMP(statut='f',typ='TXM',defaut="TEMP",into=("TEMP",)),
5674            ),
5675            THM_INIT        =FACT(statut='f',min=00,max=01,
5676              TEMP            =SIMP(statut='o',typ='R'),
5677              PRE1            =SIMP(statut='o',typ='R'),
5678              PRE2            =SIMP(statut='o',typ='R'),
5679              PORO            =SIMP(statut='o',typ='R'),
5680              PRES_VAPE       =SIMP(statut='o',typ='R'),
5681              DEGR_SATU       =SIMP(statut='f',typ='R'),  
5682              PRES_ATMO       =SIMP(statut='f',typ='R'),  
5683            ),
5684            THM_DIFFU       =FACT(statut='f',min=00,max=01,
5685              R_GAZ           =SIMP(statut='o',typ='R'),
5686              RHO             =SIMP(statut='f',typ='R'),
5687              CP              =SIMP(statut='f',typ='R'),
5688              BIOT_COEF       =SIMP(statut='f',typ='R'),
5689              SATU_PRES       =SIMP(statut='f',typ=fonction),
5690              D_SATU_PRES     =SIMP(statut='f',typ=fonction),
5691              PESA_X          =SIMP(statut='f',typ='R'),
5692              PESA_Y          =SIMP(statut='f',typ='R'),
5693              PESA_Z          =SIMP(statut='f',typ='R'),
5694              PERM_IN         =SIMP(statut='f',typ=fonction),
5695              PERM_LIQU       =SIMP(statut='f',typ=fonction),
5696              D_PERM_LIQU_SATU=SIMP(statut='f',typ=fonction),
5697              PERM_GAZ        =SIMP(statut='f',typ=fonction),
5698              D_PERM_SATU_GAZ =SIMP(statut='f',typ=fonction),
5699              D_PERM_PRES_GAZ =SIMP(statut='f',typ=fonction),
5700              FICK            =SIMP(statut='f',typ=fonction),
5701              D_FICK_TEMP     =SIMP(statut='f',typ=fonction),
5702              D_FICK_GAZ_PRES =SIMP(statut='f',typ=fonction),
5703              LAMBDA          =SIMP(statut='f',typ=fonction),
5704              D_LAMBDA_TEMP   =SIMP(statut='f',typ=fonction),
5705              SIGMA_T         =SIMP(statut='f',typ=fonction),
5706              D_SIGMA_T       =SIMP(statut='f',typ=fonction),
5707              PERM_G_INTR     =SIMP(statut='f',typ=fonction),
5708              CHAL_VAPO       =SIMP(statut='f',typ=fonction),
5709              VERI_P1         =SIMP(statut='f',typ='TXM',defaut="TEMP",into=("TEMP",) ),
5710              VERI_P2         =SIMP(statut='f',typ='TXM',defaut="SAT",into=("SAT",) ),
5711              VERI_P3         =SIMP(statut='f',typ='TXM',defaut="PORO",into=("PORO",) ),
5712              VERI_P4         =SIMP(statut='f',typ='TXM',defaut="PGAZ",into=("PGAZ",) ),
5713              VERI_P5         =SIMP(statut='f',typ='TXM',defaut="PGAP",into=("PGAP",) ),
5714            ),
5715 #
5716 # courbes et coefficients associés à la fatigue et au dommage
5717 #
5718            FATIGUE         =FACT(statut='f',min=00,max=01,
5719              regles=(PRESENT_ABSENT('WOHLER','A_BASQUIN','BETA_BASQUIN'),
5720                      PRESENT_ABSENT('WOHLER','A0','A1','A2','A3','SL'),
5721                      PRESENT_ABSENT('A_BASQUIN','A0','A1','A2','A3','SL'),
5722                      ENSEMBLE('A_BASQUIN','BETA_BASQUIN'),
5723                      ENSEMBLE('A0','A1','A2','A3','SL'),
5724                      PRESENT_PRESENT('A0','E_REFE'),
5725                      ENSEMBLE('D0','TAU0'),),
5726              WOHLER          =SIMP(statut='f',typ=fonction),
5727              A_BASQUIN       =SIMP(statut='f',typ='R'),
5728              BETA_BASQUIN    =SIMP(statut='f',typ='R'),
5729              A0              =SIMP(statut='f',typ='R'),
5730              A1              =SIMP(statut='f',typ='R'),
5731              A2              =SIMP(statut='f',typ='R'),
5732              A3              =SIMP(statut='f',typ='R'),
5733              SL              =SIMP(statut='f',typ='R'),
5734              MANSON_COFFIN   =SIMP(statut='f',typ=fonction),
5735              E_REFE          =SIMP(statut='f',typ='R'),
5736              D0              =SIMP(statut='f',typ='R'),
5737              TAU0            =SIMP(statut='f',typ='R'),
5738              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="SIGM",into=("SIGM",) ),
5739              VERI_P2         =SIMP(statut='c',typ='TXM',defaut="EPSI",into=("EPSI",) ),
5740            ),
5741            DOMMA_LEMAITRE  =FACT(statut='f',min=00,max=01,
5742              S               =SIMP(statut='o',typ=fonction),
5743              EPSP_SEUIL      =SIMP(statut='o',typ='R'),
5744              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
5745            ),
5746 #
5747 # autres comportements ...
5748 #
5749            WEIBULL         =FACT(statut='f',min=00,max=01,
5750              M               =SIMP(statut='o',typ='R'),
5751              VOLU_REFE       =SIMP(statut='o',typ='R'),
5752              SIGM_REFE       =SIMP(statut='o',typ='R'),
5753              SEUIL_EPSP_CUMU =SIMP(statut='f',typ='R',defaut= 1.0E-6),
5754            ),
5755            CONTACT         =FACT(statut='f',min=00,max=01,
5756              E_N             =SIMP(statut='o',typ='R'),
5757              E_T             =SIMP(statut='f',typ='R',defaut= 0.E+0),
5758              COULOMB         =SIMP(statut='f',typ='R',defaut= 0.E+0),
5759            ),
5760            NON_LOCAL       =FACT(statut='f',min=00,max=01,
5761              LONG_CARA       =SIMP(statut='o',typ='R'),
5762              COEF_RIGI_MINI  =SIMP(statut='f',typ='R'),
5763            ),
5764            RUPT_FRAG       =FACT(statut='f',min=00,max=01,
5765              GC              =SIMP(statut='o',typ='R'),
5766            ),
5767            RCCM            =FACT(statut='f',min=00,max=01,
5768              SY_02           =SIMP(statut='f',typ='R'),
5769              SM              =SIMP(statut='f',typ='R'),
5770              SU              =SIMP(statut='f',typ='R'),
5771              SC              =SIMP(statut='f',typ='R'),
5772              SH              =SIMP(statut='f',typ='R'),
5773              N_KE            =SIMP(statut='f',typ='R'),  
5774              M_KE            =SIMP(statut='f',typ='R'),  
5775            ),
5776            RCCM_FO         =FACT(statut='f',min=00,max=01,
5777              SY_02           =SIMP(statut='f',typ=fonction),
5778              SM              =SIMP(statut='f',typ=fonction),
5779              SU              =SIMP(statut='f',typ=fonction),
5780              S               =SIMP(statut='f',typ=fonction),
5781              N_KE            =SIMP(statut='f',typ=fonction),  
5782              M_KE            =SIMP(statut='f',typ=fonction),  
5783            ),
5784            INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
5785 )  ;
5786 #& MODIF COMMANDE  DATE 02/10/96   AUTEUR CIBHHLV L.VIVAN 
5787 DEFI_MODELE_GENE=OPER(nom="DEFI_MODELE_GENE",op= 126,sd_prod=modele_gene,
5788                       fr="Définition d un modèle structure global à partir de macro éléments pour analyse modale ou harmonique par sous structuration",
5789                       docu="U4.65.02-D",reentrant='n',
5790          SOUS_STRUC      =FACT(statut='o',min=01,max='**',
5791            NOM             =SIMP(statut='o',typ='TXM' ),
5792            MACR_ELEM_DYNA  =SIMP(statut='o',typ=macr_elem_dyna ),
5793            ANGL_NAUT       =SIMP(statut='f',typ='R',max=03),
5794            TRANS           =SIMP(statut='f',typ='R',max=03),
5795          ),
5796          LIAISON         =FACT(statut='o',min=01,max='**',
5797            SOUS_STRUC_1    =SIMP(statut='o',typ='TXM' ),
5798            INTERFACE_1     =SIMP(statut='o',typ='TXM' ),
5799            SOUS_STRUC_2    =SIMP(statut='o',typ='TXM' ),
5800            INTERFACE_2     =SIMP(statut='o',typ='TXM' ),
5801          ),
5802          VERIF           =FACT(statut='f',min=01,max='**',
5803 #  dans la doc U stop_erreur est obligatoire         
5804            STOP_ERREUR     =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
5805            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
5806            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
5807          ),
5808 )  ;
5809 #& MODIF COMMANDE  DATE 18/01/99   AUTEUR CIBHHBC B.CIREE 
5810 DEFI_NAPPE=OPER(nom="DEFI_NAPPE",op=   4,sd_prod=fonction,
5811                 fr="Définition des valeurs d une fonction de deux variables réelles",
5812                 docu="U4.31.03-F",reentrant='n',
5813          regles=(UN_PARMI('FONCTION','DEFI_FONCTION'),
5814                  EXCLUS('FONCTION','NOM_PARA_FONC',),
5815                  ENSEMBLE('NOM_PARA_FONC','DEFI_FONCTION'),),
5816          NOM_PARA        =SIMP(statut='o',typ='TXM',into=("TEMP","INST","X","Y","Z","FREQ","PULS",
5817                                                           "AMOR","EPAIS","TSEC","HYDR","SECH") ),
5818          NOM_RESU        =SIMP(statut='f',typ='TXM',defaut="TOUTRESU"),       
5819          PARA            =SIMP(statut='o',typ='R',max='**'),
5820          FONCTION        =SIMP(statut='f',typ=fonction,max='**' ),
5821          NOM_PARA_FONC   =SIMP(statut='f',typ='TXM',into=("TEMP","INST","X","Y","Z","EPSI","FREQ",
5822                                                           "PULS","AMOR","EPAIS") ),
5823          DEFI_FONCTION   =FACT(statut='f',min=00,max='**',
5824            VALE            =SIMP(statut='o',typ='R',max='**'),
5825            INTERPOL        =SIMP(statut='f',typ='TXM',max=02,defaut="LIN",into=("NON","LIN","LOG") ),
5826            PROL_DROIT      =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ),
5827            PROL_GAUCHE     =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ),
5828          ),
5829          INTERPOL        =SIMP(statut='f',typ='TXM',max=02,defaut="LIN",into=("NON","LIN","LOG") ),
5830          PROL_DROIT      =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ),
5831          PROL_GAUCHE     =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ),
5832          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
5833          VERIF           =SIMP(statut='f',typ='TXM',into=("CROISSANT",) ),
5834          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
5835 )  ;
5836 #& MODIF COMMANDE  DATE 06/10/1999   AUTEUR SABJLMA P.LATRUBESSE 
5837 DEFI_OBSTACLE=OPER(nom="DEFI_OBSTACLE",op=  73,sd_prod=obstacle
5838                     ,fr="Définition d un obstacle plan perpendiculaire à une structure filaire",
5839                      docu="U4.44.21-E",reentrant='n',
5840          TYPE            =SIMP(statut='o',typ='TXM',defaut="CERCLE",
5841                              into=("CERCLE","PLAN_Y","PLAN_Z","DISCRET",
5842                              "BI_CERCLE","BI_PLAN_Y","BI_PLAN_Z","BI_CERC_INT",
5843                              "CRAYON_900","CRAYON_1300","GUID_A_CARTE_900",
5844                              "GUID_B_CARTE_900","GUID_C_CARTE_900",
5845                              "GUID_D_CARTE_900","GUID_E_CARTE_900",
5846                              "GUID_F_CARTE_900","GUID_A_CARTE_1300",
5847                              "GUID_B_CARTE_1300","GUID_C_CARTE_1300",
5848                              "GUID_D_CARTE_1300","GUID_E_CARTE_1300",
5849                              "GUID_F_CARTE_1300","GUID_A_CARSP_900",
5850                              "GUID_B_CARSP_900","GUID_C_CARSP_900",
5851                              "GUID_D_CARSP_900","GUID_E_CARSP_900",
5852                              "GUID_F_CARSP_900","GUID_A_CARSP_1300",
5853                              "GUID_B_CARSP_1300","GUID_C_CARSP_1300",
5854                              "GUID_D_CARSP_1300","GUID_E_CARSP_1300",
5855                              "GUID_F_CARSP_1300","GUID_A_GCONT_900",
5856                              "GUID_B_GCONT_900","GUID_C_GCONT_900",
5857                              "GUID_D_GCONT_900","GUID_E_GCONT_900",
5858                              "GUID_F_GCONT_900","GUID_A_GCONT_1300",
5859                              "GUID_B_GCONT_1300","GUID_C_GCONT_1300",
5860                              "GUID_D_GCONT_1300","GUID_E_GCONT_1300",
5861                              "GUID_F_GCONT_1300","GUID_A_GCOMB_900",
5862                              "GUID_B_GCOMB_900","GUID_C_GCOMB_900",
5863                              "GUID_D_GCOMB_900","GUID_E_GCOMB_900",
5864                              "GUID_F_GCOMB_900","GUID_A_GCOMB_1300",
5865                              "GUID_B_GCOMB_1300","GUID_C_GCOMB_1300",
5866                              "GUID_D_GCOMB_1300","GUID_E_GCOMB_1300",
5867                              "GUID_F_GCOMB_1300",) ),
5868          VALE            =SIMP(statut='f',typ='R',max='**'),
5869          VERIF           =SIMP(statut='f',typ='TXM',defaut="FERME"),
5870 )  ;
5871 #& MODIF COMMANDE  DATE 04/03/98   AUTEUR BIBERON G.ROUSSEAU 
5872 DEFI_SPEC_TURB=OPER(nom="DEFI_SPEC_TURB",op= 145,sd_prod=spectre,
5873                     fr="Définition d'un spectre d'excitation turbulente",
5874                     docu="U4.44.31-C",reentrant='n',
5875          regles=(UN_PARMI('SPEC_LONG_COR_1','SPEC_LONG_COR_2','SPEC_LONG_COR_3',
5876                           'SPEC_LONG_COR_4','SPEC_CORR_CONV_1','SPEC_CORR_CONV_2',
5877                           'SPEC_FONC_FORME','SPEC_EXCI_POINT'),),
5878          SPEC_LONG_COR_1 =FACT(statut='f',min=00,max=01,
5879            LONG_COR        =SIMP(statut='o',typ='R' ),
5880            PROF_VITE_FLUI  =SIMP(statut='o',typ=fonction ),
5881            VISC_CINE       =SIMP(statut='o',typ='R' ),
5882          ),
5883          SPEC_LONG_COR_2 =FACT(statut='f',min=00,max=01,
5884            regles=(ENSEMBLE('FREQ_COUP','PHI0','BETA' ),),
5885            LONG_COR        =SIMP(statut='o',typ='R' ),
5886            PROF_VITE_FLUI  =SIMP(statut='o',typ=fonction ),
5887            FREQ_COUP       =SIMP(statut='f',typ='R',defaut= 0.1 ),
5888            PHI0            =SIMP(statut='f',typ='R',defaut= 1.5E-3 ),
5889            BETA            =SIMP(statut='f',typ='R',defaut= 2.7 ),
5890          ),
5891          SPEC_LONG_COR_3 =FACT(statut='f',min=00,max=01,
5892            regles=(ENSEMBLE('PHI0_1','BETA_1','PHI0_2','BETA_2','FREQ_COUP'),),
5893            LONG_COR        =SIMP(statut='o',typ='R' ),
5894            PROF_VITE_FLUI  =SIMP(statut='o',typ=fonction ),
5895            FREQ_COUP       =SIMP(statut='f',typ='R',defaut= 0.2 ),
5896            PHI0_1          =SIMP(statut='f',typ='R',defaut= 5.E-3 ),
5897            BETA_1          =SIMP(statut='f',typ='R',defaut= 0.5 ),
5898            PHI0_2          =SIMP(statut='f',typ='R',defaut= 4.0E-5 ),
5899            BETA_2          =SIMP(statut='f',typ='R',defaut= 3.5 ),
5900          ),
5901          SPEC_LONG_COR_4 =FACT(statut='f',min=00,max=01,
5902            regles=(ENSEMBLE('BETA','GAMMA'),),
5903            LONG_COR        =SIMP(statut='o',typ='R' ),
5904            PROF_VITE_FLUI  =SIMP(statut='o',typ=fonction ),
5905            TAUX_VIDE       =SIMP(statut='o',typ='R' ),
5906            BETA            =SIMP(statut='f',typ='R',defaut= 2. ),
5907            GAMMA           =SIMP(statut='f',typ='R',defaut= 4. ),
5908          ),
5909          SPEC_CORR_CONV_1=FACT(statut='f',min=00,max=01,
5910            LONG_COR_1      =SIMP(statut='o',typ='R' ),
5911            LONG_COR_2      =SIMP(statut='f',typ='R' ),
5912            VITE_FLUI       =SIMP(statut='o',typ='R' ),
5913            RHO_FLUI        =SIMP(statut='o',typ='R' ),
5914            FREQ_COUP       =SIMP(statut='f',typ='R' ),
5915            K               =SIMP(statut='f',typ='R',defaut= 5.8E-3 ),
5916            D_FLUI          =SIMP(statut='o',typ='R' ),
5917            COEF_VITE_FLUI_A=SIMP(statut='f',typ='R' ),
5918            COEF_VITE_FLUI_O=SIMP(statut='f',typ='R' ),
5919            METHODE         =SIMP(statut='f',typ='TXM',defaut="GENERALE",
5920                                  into=("AU_YANG","GENERALE","CORCOS") ),
5921          ),
5922          SPEC_CORR_CONV_2=FACT(statut='f',min=00,max=01,
5923            FONCTION        =SIMP(statut='o',typ=fonction ),
5924            VITE_FLUI       =SIMP(statut='o',typ='R' ),
5925            FREQ_COUP       =SIMP(statut='f',typ='R' ),
5926            METHODE         =SIMP(statut='f',typ='TXM',defaut="GENERALE",
5927                                  into=("AU_YANG","GENERALE","CORCOS",) ),
5928            COEF_VITE_FLUI_A=SIMP(statut='f',typ='R' ),
5929            COEF_VITE_FLUI_O=SIMP(statut='f',typ='R' ),
5930          ),
5931          SPEC_FONC_FORME =FACT(statut='f',min=00,max=01,
5932            regles=(UN_PARMI('INTE_SPEC','GRAPPE_1'),
5933                    ENSEMBLE('INTE_SPEC','FONCTION'),),
5934            INTE_SPEC       =SIMP(statut='f',typ=tabl_intsp ),
5935            FONCTION        =SIMP(statut='f',typ=fonction,max='**'),
5936            GRAPPE_1        =SIMP(statut='f',typ='TXM',into=("DEBIT_180","DEBIT_300",) ),
5937            NOEUD           =SIMP(statut='o',typ=no),
5938            CARA_ELEM       =SIMP(statut='o',typ=cara_elem ),
5939            MODELE          =SIMP(statut='o',typ=modele ),
5940          ),
5941          SPEC_EXCI_POINT =FACT(statut='f',min=00,max=01,
5942            regles=(UN_PARMI('INTE_SPEC','GRAPPE_2'),),         
5943            INTE_SPEC       =SIMP(statut='f',typ=tabl_intsp ),
5944            GRAPPE_2        =SIMP(statut='f',typ='TXM',
5945                                  into=("ASC_CEN","ASC_EXC","DES_CEN","DES_EXC",) ),
5946 #  Quels sont les statuts des mots cles à l interieur des deux blocs qui suivent
5947            b_inte_spec =BLOC(condition = "INTE_SPEC != None",
5948              NATURE          =SIMP(statut='o',typ='TXM',max='**',into=("FORCE","MOMENT",) ),
5949              ANGL            =SIMP(statut='o',typ='R',max='**'),
5950              NOEUD           =SIMP(statut='o',typ=no,max='**'),
5951            ),
5952            b_grappe_2      =BLOC(condition = "GRAPPE_2 != None",
5953              RHO_FLUI        =SIMP(statut='o',typ='R' ),
5954              NOEUD           =SIMP(statut='o',typ=no),
5955            ),   
5956            CARA_ELEM       =SIMP(statut='o',typ=cara_elem ),
5957            MODELE          =SIMP(statut='o',typ=modele ),
5958          ),
5959          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
5960 )  ;
5961 #& MODIF COMMANDE  DATE 02/03/99   AUTEUR SABJLMA P.LATRUBESSE 
5962 DEFI_SQUELETTE=OPER(nom="DEFI_SQUELETTE",op= 110,sd_prod=squelette,
5963                     fr="Définition d un maillage de visualisation",
5964                     docu="U4.24.01-E",reentrant='n',
5965          regles=(UN_PARMI('MODE_CYCL','MODELE_GENE','MAILLAGE'),
5966                  PRESENT_PRESENT('MODE_CYCL','SECTEUR'),
5967                  EXCLUS('SOUS_STRUC','SECTEUR'),
5968                  PRESENT_PRESENT('NOM_GROUP_MA','MODELE_GENE'),
5969                  PRESENT_PRESENT('NOM_GROUP_MA','SOUS_STRUC'),),
5970          MODE_CYCL       =SIMP(statut='f',typ=mode_cycl ),
5971          MODELE_GENE     =SIMP(statut='f',typ=modele_gene ),
5972          SQUELETTE       =SIMP(statut='f',typ=squelette ),
5973          RECO_GLOBAL     =FACT(statut='f',min=01,max='**',
5974            regles=(EXCLUS('TOUT','GROUP_NO_1'),
5975                    PRESENT_PRESENT('GROUP_NO_1','GROUP_NO_2'),
5976                    PRESENT_PRESENT('GROUP_NO_1','SOUS_STRUC_1'),
5977                    PRESENT_PRESENT('GROUP_NO_2','SOUS_STRUC_2'),
5978                    PRESENT_PRESENT('SOUS_STRUC_1','SOUS_STRUC_2'),),
5979            TOUT            =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI",) ),
5980            GROUP_NO_1      =SIMP(statut='f',typ=grno),
5981            SOUS_STRUC_1    =SIMP(statut='f',typ='TXM' ),
5982            GROUP_NO_2      =SIMP(statut='f',typ=grno),
5983            SOUS_STRUC_2    =SIMP(statut='f',typ='TXM' ),
5984            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
5985            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
5986            DIST_REFE       =SIMP(statut='f',typ='R' ),
5987          ),
5988          NOM_GROUP_MA    =FACT(statut='f',min=01,max='**',
5989            NOM             =SIMP(statut='o',typ='TXM' ),
5990            SOUS_STRUC      =SIMP(statut='o',typ='TXM' ),
5991            GROUP_MA        =SIMP(statut='o',typ=grma),
5992          ),
5993          EXCLUSIF        =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
5994          MAILLAGE        =SIMP(statut='f',typ=maillage ),
5995          MAILLE          =SIMP(statut='f',typ=ma,max='**'),
5996          GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
5997          TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
5998          TRANS           =SIMP(statut='f',typ='R',max='**'),
5999          ANGL_NAUT       =SIMP(statut='f',typ='R',max='**'),
6000          SOUS_STRUC      =FACT(statut='f',min=01,max='**',
6001            NOM             =SIMP(statut='f',typ='TXM' ),
6002            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
6003            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
6004            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
6005          ),
6006          SECTEUR         =FACT(statut='f',min=01,max='**',
6007            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
6008            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
6009            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
6010          ),
6011          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
6012 )  ;
6013 #& MODIF COMMANDE  DATE 09/06/98   AUTEUR CIBHHLV L.VIVAN 
6014 DEFI_TEXTURE=OPER(nom="DEFI_TEXTURE",op= 181,sd_prod=tabl_texture,
6015                   fr=" ",docu="U4.43.05-A",reentrant='n',
6016          SYST_GLISSEMENT =FACT(statut='o',min=01,max='**',
6017            N               =SIMP(statut='o',typ='R',max='**' ),  
6018            L               =SIMP(statut='o',typ='R',max='**' ),  
6019          ),
6020          PLAN            =FACT(statut='o',min=01,max='**',
6021            ANGL_NAUT       =SIMP(statut='o',typ='R',max='**' ),  
6022            PROPORTION      =SIMP(statut='o',typ='R' ),  
6023          ),
6024          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),  
6025 )  ;
6026 #& MODIF COMMANDE  DATE 16/07/96   AUTEUR CIBHHRA R.MEDDOURI 
6027 DEFI_THER_JOULE=OPER(nom="DEFI_THER_JOULE",op= 121,sd_prod=fonction,docu="U4.MK.20-A",reentrant='n',
6028                     fr="Calculer la fonction d évolution temporelle de la température due à l effet JOULE dans un câble",
6029          LIST_INST       =SIMP(statut='o',typ=listr8),
6030          INST_CC_INIT    =SIMP(statut='f',typ='R',defaut= 0.0E+0 ),
6031          INST_CC_FIN     =SIMP(statut='f',typ='R',defaut= 1.0E+10),
6032          INST_RENC_INIT  =SIMP(statut='f',typ='R',defaut= 1.0E+10),
6033          INST_RENC_FIN   =SIMP(statut='f',typ='R',defaut= 1.0E+10),
6034          TEMP_EXT_POSE   =SIMP(statut='f',typ='R',defaut= 15.0E+0),
6035          TEMP_EXT        =SIMP(statut='f',typ='R',defaut= 15.0E+0),
6036          TEMP_RESI_REF   =SIMP(statut='f',typ='R',defaut= 20.0E+0),
6037          PARA_COND_1D    =FACT(statut='f',min=01,max='**',
6038            INTE_CC         =SIMP(statut='f',typ='R',defaut= 0.0E+0),
6039            INTE_RENC       =SIMP(statut='f',typ='R',defaut= 0.0E+0),
6040            A               =SIMP(statut='f',typ='R',defaut= 1.0E+0),
6041            SECTION         =SIMP(statut='f',typ='TXM',defaut="CERCLE",into=("CERCLE",) ),
6042            RESI_R0         =SIMP(statut='f',typ='R',defaut= 0.0E+0),
6043            RESI_R1         =SIMP(statut='f',typ='R',defaut= 0.E+0),
6044            RHO_CP          =SIMP(statut='f',typ='R',defaut= 1.0E+0),
6045            COEF_H          =SIMP(statut='f',typ='R',defaut= 40.0E+0),
6046            TEMP_INIT       =SIMP(statut='f',typ='R',defaut= 15.0E+0),
6047          ),
6048 )  ;
6049
6050 #& MODIF COMMANDE  DATE 04/07/2000   AUTEUR JMBHH01 J.M.PROIX 
6051 DEFI_TRC=OPER(nom="DEFI_TRC",op=94,sd_prod=tabl_trc,docu="U4.43.04-E",reentrant='n',
6052               fr="Définition d un diagramme de transformations en refroidissement continu d un acier",
6053          HIST_EXP        =FACT(statut='o',min=01,max='**',
6054            VALE            =SIMP(statut='o',typ='R',max='**'),
6055          ),
6056          TEMP_MS         =FACT(statut='o',min=01,max='**',
6057            SEUIL           =SIMP(statut='o',typ='R'),
6058            AKM             =SIMP(statut='o',typ='R'),
6059            BKM             =SIMP(statut='o',typ='R'),
6060            TPLM            =SIMP(statut='o',typ='R'),
6061          ),
6062          GRAIN_AUST      =FACT(statut='f',min=01,max='**',
6063            DREF           =SIMP(statut='f',typ='R'),
6064            A              =SIMP(statut='f',typ='R'),
6065          ),
6066 )  ;
6067 #& MODIF COMMANDE  DATE 21/12/2000   AUTEUR DURAND C.DURAND 
6068 def defi_valeur_prod(self,IS=None,R8=None,TX=None,C8=None,LS=None):
6069   if IS != None  : return entier
6070   if R8 != None  : return reel
6071   if TX != None  : return chaine
6072   if C8 != None  : return complexe
6073   if LS != None  : return liste
6074   raise AsException("type de concept resultat non prevu")
6075
6076 DEFI_VALEUR=MACRO(nom="DEFI_VALEUR",op=-4,sd_prod=defi_valeur_prod,
6077                  fr="Affectation d une valeur à une variable Superviseur",
6078                  docu="U4.31.04-e",reentrant='f',
6079          regles=(UN_PARMI('IS','R8','TX','C8','LS'),),
6080          IS              =SIMP(statut='f',typ='I',max='**'),
6081          R8              =SIMP(statut='f',typ='R',max='**'),
6082          TX              =SIMP(statut='f',typ='TXM',max='**'),
6083          C8              =SIMP(statut='f',typ='C',max='**'),
6084          LS              =SIMP(statut='f',typ='L',max='**'),
6085 )  ;
6086 #& MODIF COMMANDE DATE 04/10/90 AUTEUR INCONNU INCONNU
6087 DEFUFI=PROC(nom="DEFUFI",op=21,docu="U4.12.01-D",
6088             fr="Modification / ajoût d une unité logique en sortie en complément de celles définies dans DEBUT",
6089          IMPRESSION      =FACT(statut='o',min=01,max='**',
6090            NOM             =SIMP(statut='o',typ='TXM',max='**'),
6091            UNITE           =SIMP(statut='o',typ='I' ),
6092          ),
6093 )  ;
6094 #& MODIF COMMANDE DATE 16/01/92 AUTEUR INCONNU INCONNU
6095 DEPL_INTERNE=OPER(nom="DEPL_INTERNE",op=89,sd_prod=cham_no_depl_r,docu="U4.62.02-E",reentrant='n',
6096                   fr="Récupération du champ de déplacement interne à une sous-structure",
6097          DEPL_GLOBAL     =SIMP(statut='o',typ=cham_no_depl_r),
6098          MAILLE          =SIMP(statut='o',typ=ma,max=1),
6099          NOM_CAS         =SIMP(statut='f',typ='TXM',defaut=" "),
6100 )  ;
6101 #& MODIF COMMANDE DATE 23/03/93 AUTEUR GJBHHDU G.DUMONT
6102 DETRUIRE=PROC(nom="DETRUIRE",op=-7,docu="U4.14.01-D",
6103               fr="Destruction d un concept utilisateur dans la base GLOBALE",
6104              op_init=ops.detruire,
6105             CONCEPT     =FACT(statut='o',min=01,
6106             NOM         =SIMP(statut='o',typ=assd,max='**'),
6107         ),
6108 );
6109 #& MODIF COMMANDE  DATE 03/05/2000   AUTEUR CIBHHLV L.VIVAN 
6110 DIST_LIGN_3D=OPER(nom="DIST_LIGN_3D",op= 133,sd_prod=fonction,docu="U4.MK.30-A",reentrant='n', 
6111                   fr="Calcul sous forme d une fonction du temps de la distance minimale entre deux structures filaires",
6112       regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),
6113               UN_PARMI('GROUP_MA_2','POIN_FIXE'),),
6114          MODELE          =SIMP(statut='o',typ=modele),
6115          RESULTAT        =SIMP(statut='o',typ=(evol_elas,dyna_trans,evol_noli) ),
6116          TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",)),
6117          NUME_ORDRE      =SIMP(statut='f',typ='I',max='**'),
6118          INST            =SIMP(statut='f',typ='R',max='**'),
6119          LIST_INST       =SIMP(statut='f',typ=listr8),
6120          LIST_ORDRE      =SIMP(statut='f',typ=listis),
6121          PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),
6122          CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
6123          GROUP_MA_1      =SIMP(statut='o',typ=grma,max='**'),
6124          GROUP_MA_2      =SIMP(statut='f',typ=grma,max='**'),
6125          POIN_FIXE       =SIMP(statut='f',typ='R',min=3,max=3),
6126          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
6127 )  ;
6128 #& MODIF COMMANDE  DATE 03/05/2000   AUTEUR CIBHHAB N.RAHNI
6129 DYNA_ALEA_MODAL=OPER(nom="DYNA_ALEA_MODAL",op= 131,sd_prod=tabl_intsp
6130                     ,fr="Calcule la réponse spectrale d une structure linéaire sous une excitation connue par sa DSP",
6131                      docu="U4.53.22-D",reentrant='n',
6132          BASE_MODALE     =FACT(statut='o',min=01,max=01,
6133            regles=(UN_PARMI('NUME_ORDRE','BANDE'),),
6134            MODE_MECA       =SIMP(statut='o',typ=mode_meca ),
6135            BANDE           =SIMP(statut='f',typ='R',max=02),
6136            NUME_ORDRE      =SIMP(statut='f',typ='I',max='**'),
6137            b_bande =BLOC(condition = "BANDE != None",
6138              AMOR_UNIF       =SIMP(statut='o',typ='R' ),
6139            ),
6140            b_nume_ordre =BLOC(condition = "NUME_ORDRE != None",
6141              AMOR_REDUIT     =SIMP(statut='f',typ='R',max='**'),
6142            ),
6143          ),
6144          MODE_STAT       =SIMP(statut='f',typ=mode_stat ),
6145          EXCIT           =FACT(statut='o',min=01,max=01,
6146            regles=(UN_PARMI('NOEUD_I','NUME_ORDRE_I'), 
6147                    EXCLUS('CHAM_NO','NOEUD'),),
6148            DERIVATION      =SIMP(statut='f',typ='I',defaut= 0,into=( 0 , 1 , 2 ) ),
6149            MODAL           =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
6150 #  dans la doc U il y a plus de choix pour GRANDEUR
6151            GRANDEUR        =SIMP(statut='f',typ='TXM',defaut="DEPL_R",
6152                                  into=("DEPL_R","EFFO","SOUR_DEBI_VOLU","SOUR_DEBI_MASS","SOUR_PRESS","SOUR_FORCE")),
6153            INTE_SPEC       =SIMP(statut='o',typ=tabl_intsp ),
6154            NUME_VITE_FLUI  =SIMP(statut='f',typ='I' ),
6155            OPTION          =SIMP(statut='f',typ='TXM',defaut="TOUT",into=("TOUT","DIAG",) ),
6156 #  Toutes les regles ne semblent pas avoir été ecrites dans la doc U
6157            NUME_ORDRE_I    =SIMP(statut='f',typ='I',max='**'),
6158            NOEUD_I         =SIMP(statut='f',typ=no,max='**'),
6159            b_nume_ordre_i  =BLOC(condition = "NUME_ORDRE_I != None",
6160              NUME_ORDRE_J    =SIMP(statut='o',typ='I',max='**'),
6161            ),
6162            b_noeud_i       =BLOC(condition = "NOEUD_I != None",
6163              NOEUD_J         =SIMP(statut='o',typ=no,max='**'),
6164              NOM_CMP_I       =SIMP(statut='o',typ='TXM',max='**'),
6165              NOM_CMP_J       =SIMP(statut='o',typ='TXM',max='**'),
6166            ),
6167            CHAM_NO         =SIMP(statut='f',typ=cham_no),
6168            NOEUD           =SIMP(statut='f',typ=no,max='**'),
6169            b_noeud         =BLOC(condition = "NOEUD != None",
6170              NOM_CMP         =SIMP(statut='o',typ='TXM',max='**'),
6171            ),           
6172          ),
6173          REPONSE         =FACT(statut='f',min=01,max=01,
6174            regles=(EXCLUS('FREQ_MIN','NB_POIN_MODE'),
6175                    EXCLUS('FREQ_MIN','FREQ_EXCIT'),
6176                    ENSEMBLE('FREQ_MIN','FREQ_MAX'),),
6177 #  Toutes les regles ne semblent pas avoir été ecrites dans la doc U
6178            DERIVATION      =SIMP(statut='f',typ='I',defaut= 0,into=( 0 , 1 , 2 ,) ),
6179            OPTION          =SIMP(statut='f',typ='TXM',defaut="TOUT",into=("TOUT","DIAG") ),
6180            FREQ_MIN        =SIMP(statut='f',typ='R' ),
6181            FREQ_MAX        =SIMP(statut='f',typ='R' ),
6182            PAS             =SIMP(statut='f',typ='R' ),
6183            FREQ_EXCIT      =SIMP(statut='f',typ='TXM',defaut="AVEC",into=("AVEC","SANS") ),
6184            NB_POIN_MODE    =SIMP(statut='f',typ='I',defaut= 50 ),
6185          ),
6186          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
6187          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
6188 )  ;
6189 #& MODIF COMMANDE  DATE 08/03/2000   AUTEUR CIBHHPD P.DAVID 
6190 def dyna_line_harm_prod(MATR_MASS,**args):
6191   if AsType(MATR_MASS) == matr_asse_depl_r : return dyna_harmo
6192   if AsType(MATR_MASS) == matr_asse_depl_c : return dyna_harmo
6193   if AsType(MATR_MASS) == matr_asse_pres_c : return acou_harmo
6194   if AsType(MATR_MASS) == matr_asse_gene_r : return harm_gene
6195   raise AsException("type de concept resultat non prevu")
6196
6197 DYNA_LINE_HARM=OPER(nom="DYNA_LINE_HARM",op=  60,sd_prod=dyna_line_harm_prod,
6198                     fr="Réponse dynamique complexe d un système à une excitation harmonique",
6199                     docu="U4.53.11-E",reentrant='n',
6200          regles=(PRESENT_ABSENT('AMOR_REDUIT','MATR_AMOR'),
6201                  PRESENT_ABSENT('AMOR_REDUIT','LIST_AMOR'),
6202                  PRESENT_ABSENT('MATR_AMOR','LIST_AMOR'),
6203                  UN_PARMI('FREQ','LIST_FREQ'),),
6204          MODELE          =SIMP(statut='f',typ=modele ),
6205          CHAM_MATER      =SIMP(statut='f',typ=cham_mater ),
6206          CARA_ELEM       =SIMP(statut='f',typ=cara_elem ),
6207          MATR_MASS       =SIMP(statut='o',typ=(matr_asse_depl_r,
6208                                                matr_asse_pres_c,
6209                                                matr_asse_gene_r ) ),
6210          MATR_RIGI       =SIMP(statut='o',typ=(matr_asse_depl_r,
6211                                                matr_asse_depl_c,
6212                                                matr_asse_pres_c,
6213                                                matr_asse_gene_r,
6214                                                matr_asse_gene_c ) ),
6215          MATR_AMOR       =SIMP(statut='f',typ=(matr_asse_depl_r,
6216                                                matr_asse_pres_c,
6217                                                matr_asse_gene_r ) ),
6218          AMOR_REDUIT     =SIMP(statut='f',typ='R',max='**'),
6219          LIST_AMOR       =SIMP(statut='f',typ=listr8 ),
6220          MATR_IMPE_PHI   =SIMP(statut='f',typ=(matr_asse_depl_r,
6221                                                matr_asse_gene_r) ),
6222          FREQ            =SIMP(statut='f',typ='R',max='**'),
6223          LIST_FREQ       =SIMP(statut='f',typ=listr8 ),
6224          TOUT_CHAM       =SIMP(statut='f',typ='TXM',into=("OUI",)),
6225          NOM_CHAM        =SIMP(statut='f',typ='TXM',max=03,into=("DEPL","VITE","ACCE") ),
6226          EXCIT           =FACT(statut='o',min=01,max='**',
6227            regles=(UN_PARMI('VECT_ASSE','CHARGE'),
6228                    UN_PARMI('FONC_MULT','FONC_MULT_C','COEF_MULT','COEF_MULT_C'),),
6229            VECT_ASSE       =SIMP(statut='f',typ=(cham_no_depl_r,cham_no_pres_c,vect_asse_gene ) ),
6230            CHARGE          =SIMP(statut='f',typ=char_meca ),
6231            TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",) ),
6232            FONC_MULT_C     =SIMP(statut='f',typ=fonction_c ),
6233            COEF_MULT_C     =SIMP(statut='f',typ='C' ),
6234            FONC_MULT       =SIMP(statut='f',typ=fonction ),
6235            COEF_MULT       =SIMP(statut='f',typ='R' ),
6236            PHAS_DEG        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
6237            PUIS_PULS       =SIMP(statut='f',typ='I',defaut= 0 ),
6238          ),
6239          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
6240 )  ;
6241 #& MODIF COMMANDE  DATE 08/06/99   AUTEUR ACBHHCD G.DEVESA 
6242 DYNA_LINE_TRAN=OPER(nom="DYNA_LINE_TRAN",op=  48,sd_prod=dyna_trans,
6243                     fr="Réponse temporelle d un système à une excitation transitoire",
6244                     docu="U4.53.02-F",reentrant='f',
6245          regles=(UN_PARMI('NEWMARK','WILSON','DIFF_CENTRE','ADAPT'),),
6246          MODELE          =SIMP(statut='f',typ=modele ),
6247          CHAM_MATER      =SIMP(statut='f',typ=cham_mater ),
6248          CARA_ELEM       =SIMP(statut='f',typ=cara_elem ),
6249          MATR_MASS       =SIMP(statut='o',typ=matr_asse_depl_r ),
6250          MATR_RIGI       =SIMP(statut='o',typ=matr_asse_depl_r ),
6251          MATR_AMOR       =SIMP(statut='f',typ=matr_asse_depl_r ),
6252          MODE_STAT       =SIMP(statut='f',typ=mode_stat ),
6253          NEWMARK         =FACT(statut='f',min=01,max=01,
6254            ALPHA           =SIMP(statut='f',typ='R',defaut= 0.25 ),
6255            DELTA           =SIMP(statut='f',typ='R',defaut= 0.5 ),
6256          ),
6257          WILSON          =FACT(statut='f',min=01,max=01,
6258            THETA           =SIMP(statut='f',typ='R',defaut= 1.4 ),
6259          ),
6260          DIFF_CENTRE     =FACT(statut='f',min=01,max=01,
6261          ),
6262          ADAPT           =FACT(statut='f',min=01,max=01,
6263          ),
6264          ETAT_INIT       =FACT(statut='f',min=01,max=01,
6265            regles=(EXCLUS('DYNA_TRANS','DEPL_INIT'),
6266                    EXCLUS('DYNA_TRANS','VITE_INIT'),),
6267            DYNA_TRANS      =SIMP(statut='f',typ=dyna_trans ),
6268 #  j ai interprete la doc U : est-ce bon           
6269            b_dyna_trans    =BLOC(condition = "DYNA_TRANS != None",
6270              regles=(EXCLUS('NUME_INIT','INST_INIT' ),),
6271              NUME_INIT       =SIMP(statut='f',typ='I' ),
6272              INST_INIT       =SIMP(statut='f',typ='R' ),
6273              b_inst_init     =BLOC(condition = "INST_INIT != None",
6274                PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
6275                CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
6276              ),
6277            ),
6278            DEPL_INIT       =SIMP(statut='f',typ=(cham_no_depl_r) ),
6279            VITE_INIT       =SIMP(statut='f',typ=(cham_no_depl_r) ),
6280          ),
6281          EXCIT           =FACT(statut='f',min=01,max='**',
6282            regles=(UN_PARMI('CHARGE','VECT_ASSE'),
6283                    EXCLUS('CHARGE','COEF_MULT'),
6284                    EXCLUS('FONC_MULT','COEF_MULT'),
6285                    EXCLUS('ACCE','COEF_MULT'),
6286                    PRESENT_ABSENT('ACCE','FONC_MULT'),
6287                    PRESENT_PRESENT('ACCE','VITE','DEPL'),
6288                    PRESENT_ABSENT('MULT_APPUI','FONC_MULT'),),
6289            VECT_ASSE       =SIMP(statut='f',typ=cham_no_depl_r ),
6290            CHARGE          =SIMP(statut='f',typ=char_meca ),
6291            FONC_MULT       =SIMP(statut='f',typ=fonction ),
6292            COEF_MULT       =SIMP(statut='f',typ='R' ),
6293            TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",) ),
6294            ACCE            =SIMP(statut='f',typ=fonction ),
6295            VITE            =SIMP(statut='f',typ=fonction ),
6296            DEPL            =SIMP(statut='f',typ=fonction ),
6297            MULT_APPUI      =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ),
6298            DIRECTION       =SIMP(statut='f',typ='R',max='**'),
6299            NOEUD           =SIMP(statut='f',typ=no,max='**'),
6300            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
6301          ),
6302          AMOR_MODAL      =FACT(statut='f',min=01,max=01,
6303            MODE_MECA       =SIMP(statut='f',typ=mode_meca ),
6304            AMOR_REDUIT     =SIMP(statut='f',typ='R',max='**'),
6305            NB_MODE         =SIMP(statut='f',typ='I',defaut= 9999 ),
6306            REAC_VITE       =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
6307          ),
6308 #  ce n est pas le mot clesolveur standard
6309          SOLVEUR         =FACT(statut='d',min=01,max=01,
6310            EPS             =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
6311            NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
6312            STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
6313            RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
6314            NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
6315          ),
6316          INCREMENT       =FACT(statut='o',min=01,max='**',
6317            regles=(UN_PARMI('LIST_INST','FONC_INST','PAS'),),
6318            LIST_INST       =SIMP(statut='f',typ=listr8 ), 
6319            FONC_INST       =SIMP(statut='f',typ=fonction ),       
6320            PAS             =SIMP(statut='f',typ='R' ),
6321            b_pas           =BLOC(condition = "PAS != None",
6322                INST_INIT       =SIMP(statut='f',typ='R' ),
6323                INST_FIN        =SIMP(statut='f',typ='R' ),    
6324            ),
6325            b_list_fonc     =BLOC(condition = "LIST_INST != None or FONC_INST != None",
6326                regles=(EXCLUS('INST_FIN','NUME_FIN'),),
6327                NUME_FIN        =SIMP(statut='f',typ='I' ), 
6328                INST_FIN        =SIMP(statut='f',typ='R' ),   
6329            ),
6330            VITE_MIN        =SIMP(statut='f',typ='TXM',defaut="NORM",into=("MAXI","NORM") ),
6331            COEF_MULT_PAS   =SIMP(statut='f',typ='R',defaut= 1.1 ),
6332            COEF_DIVI_PAS   =SIMP(statut='f',typ='R',defaut= 1.33334 ),
6333            PAS_LIMI_RELA   =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
6334            NB_POIN_PERIODE =SIMP(statut='f',typ='I',defaut= 50 ),
6335            NMAX_ITER_PAS   =SIMP(statut='f',typ='I',defaut= 16 ),
6336            PAS_CALCUL      =SIMP(statut='f',typ='I',defaut= 1 ),
6337          ),
6338          ARCHIVAGE       =FACT(statut='f',min=01,max=01,
6339            regles=(UN_PARMI('LIST_ARCH','PAS_ARCH', ),),
6340            LIST_ARCH       =SIMP(statut='f',typ=listis ),
6341            PAS_ARCH        =SIMP(statut='f',typ='I' ),
6342            CHAM_EXCLU      =SIMP(statut='f',typ='TXM',max='**',into=("DEPL","VITE","ACCE") ),
6343          ),
6344          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
6345          INFO            =SIMP(statut='f',typ='I',into=(1,2) ),
6346 )  ;
6347 #& MODIF COMMANDE  DATE 03/10/2000   AUTEUR VABHHTS J.PELLET 
6348 DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 95,sd_prod=evol_noli,reentrant='f',
6349                    fr="Analyse mécanique dynamique non linéaire",docu="U4.53.01-E",
6350          regles=(AU_MOINS_UN('COMP_INCR','COMP_ELAS',),
6351                  UN_PARMI('NEWMARK','HHT', ),),
6352          MODELE          =SIMP(statut='o',typ=modele),
6353          CHAM_MATER      =SIMP(statut='o',typ=cham_mater),
6354          MODE_STAT       =SIMP(statut='f',typ=mode_stat),
6355          CARA_ELEM       =SIMP(statut='f',typ=cara_elem),
6356
6357          EXCIT           =FACT(statut='o',min=01,max='**',
6358            regles=(PRESENT_ABSENT('FONC_MULT','ACCE'),
6359                    PRESENT_PRESENT('ACCE','VITE','DEPL'),
6360                    PRESENT_ABSENT('MULT_APPUI','FONC_MULT'),),
6361            TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("SUIV","FIXE") ),
6362            CHARGE          =SIMP(statut='o',typ=char_meca),
6363            FONC_MULT       =SIMP(statut='f',typ=fonction),
6364            DEPL            =SIMP(statut='f',typ=fonction),
6365            ACCE            =SIMP(statut='f',typ=fonction),
6366            VITE            =SIMP(statut='f',typ=fonction),
6367            MULT_APPUI      =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
6368            DIRECTION       =SIMP(statut='f',typ='R',max='**'),  
6369            NOEUD           =SIMP(statut='f',typ=no,max='**'),
6370            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
6371          ),
6372          AMOR_MODAL      =FACT(statut='f',min=01,max=01,
6373            MODE_MECA       =SIMP(statut='f',typ=mode_meca),
6374            AMOR_REDUIT     =SIMP(statut='f',typ='R',max='**' ),  
6375            NB_MODE         =SIMP(statut='f',typ='I',defaut= 9999 ),  
6376            REAC_VITE       =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
6377          ),
6378          COMP_INCR       =FACT(statut='f',min=01,max='**',
6379            RELATION        =SIMP(statut='o',typ='TXM',defaut="VMIS_ISOT_LINE",    
6380                                  into=("ELAS","VMIS_ISOT_TRAC","VMIS_ISOT_LINE","VMIS_ISOT_META",
6381                                        "VMIS_ECMI_TRAC","VMIS_ECMI_LINE","ENDO_FRAGILE","META_EP",       
6382                                        "META_EP_PT","META_EP_RE","META_EP_PT_RE","META_EVP",
6383                                        "META_EVP_PT","META_EVP_RE","META_EVP_PT_RE","VMIS_CINE_LINE",
6384                                        "TAHERI","VISC_TAHERI","CHABOCHE","VISCOCHAB",
6385                                        "VMIS_CIN1_CHAB","VMIS_CIN2_CHAB","POLY_CFC", 
6386                                        "LMARC","ROUSSELIER","VMIS_POU_LINE","VMIS_POU_FLEJOU",
6387                                        "COULOMB","ARME","ASSE_CORN","NORTON_HOFF","LEMAITRE",
6388                                        "ZIRC_CYRA2","ZIRC_EPRI","ASSE_COMBU","VENDOCHAB","NADAI_B",  
6389                                        "DIS_CONTACT","DIS_CHOC","DIS_GOUJ2E_PLAS","DIS_GOUJ2E_ELAS",
6390                                        "GRILLE_ISOT_LINE","GRILLE_CINE_LINE","GRILLE_PINTO_MEN",           
6391                                        "PINTO_MENEGOTTO","CJS","OHNO","GRANGER_FP","GRANGER_FP_V",
6392                                        "BETON_DOUBLE_DP","VMIS_ASYM_LINE") ),
6393            ELAS            =SIMP(statut='c',typ='I',defaut=1,into=(1,) ),
6394            VMIS_ISOT_TRAC  =SIMP(statut='c',typ='I',defaut=2,into=(2,) ),
6395            VMIS_ISOT_LINE  =SIMP(statut='c',typ='I',defaut=2,into=(2,) ),
6396            VMIS_ISOT_META  =SIMP(statut='c',typ='I',defaut=2,into=(2,) ),
6397            VMIS_CINE_LINE  =SIMP(statut='c',typ='I',defaut=7,into=(7,) ),
6398            VMIS_ECMI_TRAC  =SIMP(statut='c',typ='I',defaut=8,into=(8,) ),
6399            VMIS_ECMI_LINE  =SIMP(statut='c',typ='I',defaut=8,into=(8,) ),
6400            ENDO_FRAGILE    =SIMP(statut='c',typ='I',defaut=4,into=(4,) ),
6401            META_EP         =SIMP(statut='c',typ='I',defaut=7,into=(7,) ),
6402            META_EP_PT      =SIMP(statut='c',typ='I',defaut=7,into=(7,) ),
6403            META_EP_RE      =SIMP(statut='c',typ='I',defaut=7,into=(7,) ),
6404            META_EP_PT_RE   =SIMP(statut='c',typ='I',defaut=7,into=(7,) ),
6405            META_EVP        =SIMP(statut='c',typ='I',defaut=7,into=(7,) ),
6406            META_EVP_PT     =SIMP(statut='c',typ='I',defaut=7,into=(7,) ),
6407            META_EVP_RE     =SIMP(statut='c',typ='I',defaut=7,into=(7,) ),
6408            META_EVP_PT_RE  =SIMP(statut='c',typ='I',defaut=7,into=(7,) ),
6409            CHABOCHE        =SIMP(statut='c',typ='I',defaut=14,into=(14,) ),
6410            VISCOCHAB       =SIMP(statut='c',typ='I',defaut=28,into=(28,) ),
6411            VMIS_CIN1_CHAB  =SIMP(statut='c',typ='I',defaut=8,into=(8,) ),
6412            VMIS_CIN2_CHAB  =SIMP(statut='c',typ='I',defaut=14,into=(14,) ),
6413            POLY_CFC        =SIMP(statut='c',typ='I',defaut=1688,into=(1688,) ),
6414            LMARC           =SIMP(statut='c',typ='I',defaut=20,into=(20,) ),
6415            TAHERI          =SIMP(statut='c',typ='I',defaut=15,into=(15,) ),
6416            VISC_TAHERI     =SIMP(statut='c',typ='I',defaut=9,into=(9,) ),
6417            ROUSSELIER      =SIMP(statut='c',typ='I',defaut=3,into=(3,) ),
6418            VMIS_POU_LINE   =SIMP(statut='c',typ='I',defaut=9,into=(9,) ),
6419            VMIS_POU_FLEJOU =SIMP(statut='c',typ='I',defaut=9,into=(9,) ),
6420            COULOMB         =SIMP(statut='c',typ='I',defaut=4,into=(4,) ),
6421            ASSE_CORN       =SIMP(statut='c',typ='I',defaut=4,into=(4,) ),
6422            ARME            =SIMP(statut='c',typ='I',defaut=1,into=(1,) ),
6423            NORTON_HOFF     =SIMP(statut='c',typ='I',defaut=1,into=(1,) ),
6424            LEMAITRE        =SIMP(statut='c',typ='I',defaut=2,into=(2,) ),
6425            ZIRC_CYRA2      =SIMP(statut='c',typ='I',defaut=2,into=(2,) ),
6426            ZIRC_EPRI       =SIMP(statut='c',typ='I',defaut=2,into=(2,) ),
6427            ASSE_COMBU      =SIMP(statut='c',typ='I',defaut=5,into=(5,) ),
6428            NADAI_B         =SIMP(statut='c',typ='I',defaut=34,into=(34,) ),
6429            VENDOCHAB       =SIMP(statut='c',typ='I',defaut=10,into=(10,) ),
6430            GRILLE_ISOT_LINE=SIMP(statut='c',typ='I',defaut=4,into=(4,) ),
6431            GRILLE_CINE_LINE=SIMP(statut='c',typ='I',defaut=4,into=(4,) ),
6432            GRILLE_PINTO_MEN=SIMP(statut='c',typ='I',defaut=16,into=(16,) ),
6433            DIS_CONTACT     =SIMP(statut='c',typ='I',defaut=6,into=(6,) ),
6434            DIS_CHOC        =SIMP(statut='c',typ='I',defaut=7,into=(7,) ),
6435            DIS_GOUJ2E_PLAS =SIMP(statut='c',typ='I',defaut=2,into=(2,) ),
6436            DIS_GOUJ2E_ELAS =SIMP(statut='c',typ='I',defaut=1,into=(1,) ),
6437            PINTO_MENEGOTTO =SIMP(statut='c',typ='I',defaut=8,into=(8,) ),
6438            CJS             =SIMP(statut='c',typ='I',defaut=16,into=(16,) ),
6439            OHNO            =SIMP(statut='c',typ='I',defaut=32,into=(32,) ),
6440            GRANGER_FP      =SIMP(statut='c',typ='I',defaut=55,into=(55,) ),
6441            GRANGER_FP_V    =SIMP(statut='c',typ='I',defaut=55,into=(55,) ),
6442            BETON_DOUBLE_DP =SIMP(statut='c',typ='I',defaut=4,into=(4,) ),
6443            VMIS_ASYM_LINE  =SIMP(statut='c',typ='I',defaut=4,into=(4,) ),
6444 #
6445            COQUE_NCOU      =SIMP(statut='f',typ='I'),  
6446            TUYAU_NCOU      =SIMP(statut='f',typ='I'),  
6447            TUYAU_NSEC      =SIMP(statut='f',typ='I'),  
6448            DEFORMATION     =SIMP(statut='f',typ='TXM',defaut="PETIT",into=("PETIT","PETIT_REAC",) ),
6449            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
6450            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
6451            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
6452          ),
6453          COMP_ELAS       =FACT(statut='f',min=01,max='**',
6454            RELATION        =SIMP(statut='o',typ='TXM',defaut="ELAS",    
6455                                  into=("ELAS","ELAS_VMIS_LINE","ELAS_VMIS_TRAC","ELAS_POUTRE_GR","CABLE") ),
6456            ELAS            =SIMP(statut='f',typ='I',defaut=1,into=(1,) ),
6457            ELAS_VMIS_TRAC  =SIMP(statut='f',typ='I',defaut=1,into=(1,) ),
6458            ELAS_VMIS_LINE  =SIMP(statut='f',typ='I',defaut=1,into=(1,) ),
6459            ELAS_POUTRE_GR  =SIMP(statut='f',typ='I',defaut=3,into=(3,) ),
6460            CABLE           =SIMP(statut='f',typ='I',defaut=1,into=(1,) ),
6461 #
6462            COQUE_NCOU      =SIMP(statut='f',typ='I'),  
6463            TUYAU_NCOU      =SIMP(statut='f',typ='I'),  
6464            TUYAU_NSEC      =SIMP(statut='f',typ='I'),  
6465            DEFORMATION     =SIMP(statut='f',typ='TXM',defaut="PETIT",into=("PETIT","GREEN","GREEN_GR") ),
6466            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
6467            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
6468            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
6469          ),
6470          ETAT_INIT       =FACT(statut='f',min=01,max=01,
6471            regles=(EXCLUS('EVOL_NOLI','DEPL_INIT',),
6472                    EXCLUS('EVOL_NOLI','VITE_INIT', ),),
6473            INST_INIT       =SIMP(statut='f',typ='R' ),  
6474            EVOL_NOLI       =SIMP(statut='f',typ=evol_noli),
6475            DEPL_INIT       =SIMP(statut='f',typ=cham_no_depl_r),
6476            VITE_INIT       =SIMP(statut='f',typ=cham_no_depl_r),
6477          ),
6478          INCREMENT       =FACT(statut='o',min=01,max=01,
6479            LIST_INST       =SIMP(statut='o',typ=listr8),
6480            INST_INIT       =SIMP(statut='f',typ='R'),  
6481          ),
6482          NEWMARK         =FACT(statut='f',min=01,max=01,
6483            ALPHA           =SIMP(statut='f',typ='R',defaut= 0.25),  
6484            DELTA           =SIMP(statut='f',typ='R',defaut= 0.5),  
6485          ),
6486          HHT             =FACT(statut='f',min=01,max=01,
6487            ALPHA           =SIMP(statut='f',typ='R'     
6488                                 ,defaut= -0.29999999999999999 ),  
6489          ),
6490          NEWTON          =FACT(statut='d',min=01,max=01,
6491            REAC_INCR       =SIMP(statut='f',typ='I',defaut= 1 ),  
6492            PREDICTION      =SIMP(statut='f',typ='TXM',into=("TANGENTE","ELASTIQUE") ),
6493            MATRICE         =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE") ),
6494            REAC_ITER       =SIMP(statut='f',typ='I',defaut= 0),  
6495          ),
6496          SOLVEUR         =FACT(statut='d',min=01,max=01,
6497            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
6498            b_mult_front    =BLOC(condition= "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
6499              RENUM           =SIMP(statut='f',typ='TXM',defaut="MDA",into=("MD","MDA","METIS") ),
6500            ),
6501            b_ldlt          =BLOC(condition= "METHODE == 'LDLT'",fr="Paramètres de la méthode LDLT",
6502              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
6503              TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400. ),
6504            ),
6505            b_ldlt_mult     =BLOC(condition="METHODE == 'LDLT' or METHODE == 'MULT_FRONT'",
6506                                    fr="Paramètres relatifs à la non inversibilité de la matrice à factorise",
6507              NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
6508              STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),             
6509            ),
6510            b_gcpc          =BLOC(condition="METHODE == 'GCPC'",fr="Paramètres de la méthode du gradient conjugué",
6511              PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC","SANS","DIAG") ),
6512              NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut=0),
6513              RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
6514              NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
6515              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
6516            ),
6517            EPS             =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
6518            SYME            =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
6519          ),
6520          CONVERGENCE     =FACT(statut='d',min=01,max=01,
6521            RESI_GLOB_MAXI  =SIMP(statut='f',typ='R'),  
6522            RESI_GLOB_RELA  =SIMP(statut='f',typ='R'),  
6523            ITER_GLOB_MAXI  =SIMP(statut='f',typ='I',defaut= 10 ),  
6524            INCO_GLOB_RELA  =SIMP(statut='f',typ='R'),  
6525            ARRET           =SIMP(statut='f',typ='TXM',defaut="OUI"),  
6526            RESI_INTE_RELA  =SIMP(statut='f',typ='R',defaut= 1.0E-6),  
6527            ITER_INTE_MAXI  =SIMP(statut='f',typ='I',defaut= 10),  
6528            TYPE_MATR_COMP  =SIMP(statut='f',typ='TXM',defaut="TANG_VIT",into=("TANG_VIT","TANG_INC") ),
6529            RESO_INTE       =SIMP(statut='f',typ='TXM',defaut="IMPLICITE",
6530                                  into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE") ),
6531          ),
6532          OPTION          =SIMP(statut='f',typ='TXM',max='**',defaut="ELNO",    
6533                                into=("SIEF_ELNO_ELGA","VARI_ELNO_ELGA","EFGE_ELNO_CART","ELNO","SANS") ),
6534          ARCHIVAGE       =FACT(statut='f',min=01,max=01,
6535            regles=(UN_PARMI('LIST_ARCH','PAS_ARCH','LIST_INST','INST', ),),
6536            LIST_ARCH       =SIMP(statut='f',typ=(listis) ),
6537            LIST_INST       =SIMP(statut='f',typ=(listr8) ),
6538            INST            =SIMP(statut='f',typ='R',max='**' ),  
6539            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),  
6540            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
6541            PAS_ARCH        =SIMP(statut='f',typ='I'),  
6542            CHAM_EXCLU      =SIMP(statut='f',typ='TXM',max='**',into=("DEPL","VITE","ACCE") ),
6543          ),
6544          OBSERVATION     =FACT(statut='f',min=01,max='**',
6545            regles=(UN_PARMI('NOEUD','GROUP_NO','MAILLE'),
6546                    PRESENT_PRESENT('MAILLE','POINT'),),
6547            NOM_CHAM        =SIMP(statut='o',typ='TXM',max='**',
6548                                  into=("DEPL","VITE","ACCE","SIEF_ELGA","VARI_ELGA") ),
6549            NOM_CMP         =SIMP(statut='o',typ='TXM',max='**' ),  
6550            LIST_ARCH       =SIMP(statut='f',typ=listis),
6551            LIST_INST       =SIMP(statut='f',typ=listr8),
6552            INST            =SIMP(statut='f',typ='R',max='**' ),  
6553            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),  
6554            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
6555            PAS_OBSE        =SIMP(statut='f',typ='I'),  
6556            NOEUD           =SIMP(statut='f',typ=no,max='**'),
6557            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
6558            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
6559            POINT           =SIMP(statut='f',typ='I',max='**'),  
6560          ),
6561          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
6562          TITRE           =SIMP(statut='f',typ='TXM',max='**'),  
6563 )  ;
6564 #& MODIF COMMANDE  DATE 16/12/97   AUTEUR CIBHHLV L.VIVAN 
6565 DYNA_SPEC_MODAL=OPER(nom="DYNA_SPEC_MODAL",op= 147,sd_prod=tabl_intsp,
6566                      fr="Calcul de la réponse par recombinaison modale d'une structure linéaire pour une excitation aléatoire",
6567                      docu="U4.53.23-C",reentrant='n',
6568          BASE_ELAS_FLUI  =SIMP(statut='o',typ=melasflu ),
6569          EXCIT           =FACT(statut='o',min=00,max=01,
6570            INTE_SPEC_GENE  =SIMP(statut='o',typ=tabl_intsp ),
6571          ),
6572          OPTION          =SIMP(statut='f',typ='TXM',defaut="TOUT",into=("TOUT","DIAG") ),
6573          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
6574 )  ;
6575 #& MODIF COMMANDE  DATE 29/08/2000   AUTEUR ACBHHCD G.DEVESA 
6576 DYNA_TRAN_MODAL=OPER(nom="DYNA_TRAN_MODAL",op=  74,sd_prod=tran_gene,
6577                      fr="Réponse dynamique transitoire en coordonnées généralisées par recombinaison modale",
6578                      docu="U4.53.21-E",reentrant='f',
6579       regles=(EXCLUS('AMOR_REDUIT','AMOR_GENE','LIST_AMOR'), 
6580               PRESENT_ABSENT('MODE_STAT','MODE_CORR'),),
6581          METHODE         =SIMP(statut='f',typ='TXM',defaut="EULER",
6582                                into=("EULER","NEWMARK","DEVOGE","ADAPT","ITMI") ),
6583          MASS_GENE       =SIMP(statut='o',typ=matr_asse_gene_r ),
6584          RIGI_GENE       =SIMP(statut='o',typ=matr_asse_gene_r ),
6585          AMOR_GENE       =SIMP(statut='f',typ=matr_asse_gene_r ),
6586          AMOR_REDUIT     =SIMP(statut='f',typ='R',max='**'),
6587          LIST_AMOR       =SIMP(statut='f',typ=listr8 ),
6588          MODE_STAT       =SIMP(statut='f',typ=mode_stat ),
6589          MODE_CORR       =SIMP(statut='f',typ=mult_elas ),
6590          
6591          ETAT_INIT       =FACT(statut='f',min=01,max=01,
6592            regles=(EXCLUS('RESU_GENE','DEPL_INIT_GENE'),
6593                    EXCLUS('RESU_GENE','VITE_INIT_GENE'),),
6594            RESU_GENE       =SIMP(statut='f',typ=tran_gene ),
6595            b_resu_gene     =BLOC(condition = "RESU_GENE != None",
6596              INST_INIT       =SIMP(statut='f',typ='R' ),
6597              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
6598              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
6599            ),
6600            DEPL_INIT_GENE  =SIMP(statut='f',typ=vect_asse_gene ),
6601            VITE_INIT_GENE  =SIMP(statut='f',typ=vect_asse_gene ),
6602          ),
6603          INCREMENT       =FACT(statut='o',min=01,max='**',
6604            INST_INIT       =SIMP(statut='f',typ='R' ),
6605            INST_FIN        =SIMP(statut='o',typ='R' ),
6606            PAS             =SIMP(statut='f',typ='R' ),
6607            VERI_PAS        =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
6608            VITE_MIN        =SIMP(statut='f',typ='TXM',defaut="NORM",into=("MAXI","NORM") ),
6609            COEF_MULT_PAS   =SIMP(statut='f',typ='R',defaut= 1.1 ),
6610            COEF_DIVI_PAS   =SIMP(statut='f',typ='R',defaut= 1.3333334 ),
6611            PAS_LIMI_RELA   =SIMP(statut='f',typ='R',defaut= 1.0E-6 ),
6612            NB_POIN_PERIODE =SIMP(statut='f',typ='I',defaut= 50 ),
6613            NMAX_ITER_PAS   =SIMP(statut='f',typ='I',defaut= 16 ),
6614          ),
6615          ARCHIVAGE       =FACT(statut='f',min=01,max=01,
6616            regles=(UN_PARMI('LIST_ARCH','PAS_ARCH'),),
6617            LIST_ARCH       =SIMP(statut='f',typ=listis ),
6618            PAS_ARCH        =SIMP(statut='f',typ='I' ),
6619          ),
6620          
6621          NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 20 ),
6622          RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),
6623          LAMBDA          =SIMP(statut='f',typ='R',defaut= 10. ),
6624          
6625          EXCIT           =FACT(statut='f',min=01,max='**',
6626            regles=(UN_PARMI('FONC_MULT','COEF_MULT','ACCE'),
6627                    PRESENT_PRESENT('ACCE','VITE','DEPL'),
6628                    PRESENT_PRESENT('D_FONC_DT','D_FONC_DT2'),
6629                    PRESENT_ABSENT('NUME_MODE','VECT_GENE','COEF_MULT'),
6630                    PRESENT_ABSENT('MULT_APPUI','CORR_STAT'),
6631                    PRESENT_ABSENT('MULT_APPUI','COEF_MULT'),
6632                    PRESENT_ABSENT('MULT_APPUI','FONC_MULT'),),
6633            VECT_GENE       =SIMP(statut='f',typ=vect_asse_gene ),
6634            NUME_MODE       =SIMP(statut='f',typ='I' ),
6635            FONC_MULT       =SIMP(statut='f',typ=fonction ),
6636            COEF_MULT       =SIMP(statut='f',typ='R' ),
6637            ACCE            =SIMP(statut='f',typ=fonction ),
6638            VITE            =SIMP(statut='f',typ=fonction ),
6639            DEPL            =SIMP(statut='f',typ=fonction ),
6640            MULT_APPUI      =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
6641            DIRECTION       =SIMP(statut='f',typ='R',max='**'),
6642            b_loca          =BLOC(condition= "DIRECTION != None",
6643              regles=(EXCLUS('NOEUD','GROUP_NO'),),
6644              NOEUD           =SIMP(statut='f',typ=no,max='**'),
6645              GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
6646            ),
6647            CORR_STAT       =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
6648            D_FONC_DT       =SIMP(statut='f',typ=fonction ),
6649            D_FONC_DT2      =SIMP(statut='f',typ=fonction ),
6650          ),
6651          CHOC            =FACT(statut='f',min=01,max='**',
6652            regles=(UN_PARMI('NOEUD_1','GROUP_NO_1' ),
6653                    PRESENT_ABSENT('NOEUD_1','GROUP_NO_1'),
6654                    PRESENT_ABSENT('NOEUD_2','GROUP_NO_2'),),
6655            INTITULE        =SIMP(statut='f',typ='TXM' ),
6656            NOEUD_1         =SIMP(statut='f',typ=no),
6657            NOEUD_2         =SIMP(statut='f',typ=no),
6658            GROUP_NO_1      =SIMP(statut='f',typ=grno),
6659            GROUP_NO_2      =SIMP(statut='f',typ=grno),
6660            OBSTACLE        =SIMP(statut='o',typ=obstacle ),
6661            ORIG_OBST       =SIMP(statut='f',typ='R',max='**'),
6662            NORM_OBST       =SIMP(statut='o',typ='R',max='**'),
6663            ANGL_VRIL       =SIMP(statut='f',typ='R' ),
6664            JEU             =SIMP(statut='f',typ='R',defaut= 1. ),
6665            DIST_1          =SIMP(statut='f',typ='R' ),
6666            DIST_2          =SIMP(statut='f',typ='R' ),
6667            SOUS_STRUC_1    =SIMP(statut='f',typ='TXM' ),
6668            SOUS_STRUC_2    =SIMP(statut='f',typ='TXM' ),
6669            REPERE          =SIMP(statut='f',typ='TXM',defaut="GLOBAL"),
6670            RIGI_NOR        =SIMP(statut='f',typ='R' ),
6671            AMOR_NOR        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
6672            RIGI_TAN        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
6673            AMOR_TAN        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
6674            COULOMB         =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
6675
6676            LAME_FLUIDE     =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
6677            b_lame          =BLOC(condition="LAME_FLUIDE=='OUI'",
6678                ALPHA           =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
6679                BETA            =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
6680                CHI             =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
6681                DELTA           =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
6682            ),
6683          ),
6684          VERI_CHOC       =FACT(statut='f',min=01,max='**',
6685            STOP_CRITERE    =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
6686            SEUIL           =SIMP(statut='f',typ='R',defaut= 0.5 ),
6687          ),
6688          FLAMBAGE        =FACT(statut='f',min=01,max='**',
6689            regles=(UN_PARMI('NOEUD_1','GROUP_NO_1'),
6690                    PRESENT_ABSENT('NOEUD_1','GROUP_NO_1'),
6691                    PRESENT_ABSENT('NOEUD_2','GROUP_NO_2'),),
6692            NOEUD_1         =SIMP(statut='f',typ=no),
6693            NOEUD_2         =SIMP(statut='f',typ=no),
6694            GROUP_NO_1      =SIMP(statut='f',typ=grno),
6695            GROUP_NO_2      =SIMP(statut='f',typ=grno),
6696            OBSTACLE        =SIMP(statut='o',typ=obstacle ),
6697            ORIG_OBST       =SIMP(statut='f',typ='R',max='**'),
6698            NORM_OBST       =SIMP(statut='o',typ='R',max='**'),
6699            ANGL_VRIL       =SIMP(statut='f',typ='R' ),
6700            JEU             =SIMP(statut='f',typ='R',defaut= 1. ),
6701            DIST_1          =SIMP(statut='f',typ='R' ),
6702            DIST_2          =SIMP(statut='f',typ='R' ),
6703            REPERE          =SIMP(statut='f',typ='TXM',defaut="GLOBAL"),
6704            RIGI_NOR        =SIMP(statut='f',typ='R' ),
6705            FNOR_CRIT       =SIMP(statut='f',typ='R' ),
6706            FNOR_POST_FL    =SIMP(statut='f',typ='R' ),
6707            RIGI_NOR_POST_FL=SIMP(statut='f',typ='R' ),
6708          ),
6709          ANTI_SISM       =FACT(statut='f',min=01,max='**',
6710            regles=(UN_PARMI('NOEUD_1','GROUP_NO_1'),
6711                    UN_PARMI('NOEUD_2','GROUP_NO_2'),
6712                    PRESENT_ABSENT('NOEUD_1','GROUP_NO_1'),
6713                    PRESENT_ABSENT('NOEUD_2','GROUP_NO_2'),),
6714            NOEUD_1         =SIMP(statut='f',typ=no),
6715            NOEUD_2         =SIMP(statut='f',typ=no),
6716            GROUP_NO_1      =SIMP(statut='f',typ=grno),
6717            GROUP_NO_2      =SIMP(statut='f',typ=grno),
6718            RIGI_K1         =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
6719            RIGI_K2         =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
6720            SEUIL_FX        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
6721            C               =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
6722            PUIS_ALPHA      =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
6723            DX_MAX          =SIMP(statut='f',typ='R',defaut= 1. ),
6724          ),
6725          RELA_EFFO_DEPL  =FACT(statut='f',min=01,max='**',
6726            NOEUD           =SIMP(statut='o',typ=no),
6727            SOUS_STRUC      =SIMP(statut='f',typ='TXM' ),
6728            NOM_CMP         =SIMP(statut='f',typ='TXM' ),
6729            RELATION        =SIMP(statut='o',typ=fonction ),
6730          ),
6731          RELA_TRANSIS    =FACT(statut='f',min=01,max='**',
6732            NOEUD           =SIMP(statut='o',typ=no),
6733            SOUS_STRUC      =SIMP(statut='f',typ='TXM' ),
6734            NOM_CMP         =SIMP(statut='f',typ='TXM' ),
6735            RELATION        =SIMP(statut='o',typ=fonction ),
6736          ),
6737          RELA_EFFO_VITE  =FACT(statut='f',min=01,max='**',
6738            NOEUD           =SIMP(statut='o',typ=no),
6739            SOUS_STRUC      =SIMP(statut='f',typ='TXM' ),
6740            NOM_CMP         =SIMP(statut='f',typ='TXM' ),
6741            RELATION        =SIMP(statut='o',typ=fonction ),
6742          ),
6743          b_itmi          =BLOC(condition = "METHODE=='ITMI'",
6744                 regles=(ENSEMBLE('BASE_ELAS_FLUI','NUME_VITE_FLUI'),),
6745                 BASE_ELAS_FLUI  =SIMP(statut='f',typ=melasflu ),
6746                 NUME_VITE_FLUI  =SIMP(statut='f',typ='I' ),
6747                 ETAT_STAT       =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
6748                 PREC_DUREE      =SIMP(statut='f',typ='R',defaut= 1.E-2 ),
6749                 CHOC_FLUI       =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
6750                 NB_MODE         =SIMP(statut='f',typ='I' ),
6751                 NB_MODE_FLUI    =SIMP(statut='f',typ='I' ),
6752                 NB_MODE_DIAG    =SIMP(statut='f',typ='I' ),
6753                 TS_REG_ETAB     =SIMP(statut='f',typ='R' ),
6754          ),
6755          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
6756          IMPRESSION      =FACT(statut='f',min=01,max='**',
6757            regles=(EXCLUS('TOUT','NIVEAU'),),
6758            TOUT            =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
6759            NIVEAU          =SIMP(statut='f',typ='TXM',into=("DEPL_LOC","VITE_LOC","FORC_LOC","TAUX_CHOC") ),
6760            INST_INIT       =SIMP(statut='f',typ='R' ),
6761            INST_FIN        =SIMP(statut='f',typ='R' ),
6762          ),
6763          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
6764  )  ;
6765 #& MODIF COMMANDE  DATE 30/09/97   AUTEUR VABHHTS J.PELLET 
6766 ENGENDRE_TEST=PROC(nom="ENGENDRE_TEST",op=178,docu="U4.92.11-B",
6767                    fr="Ecriture dans le fichier RESULTAT des lignes que l'on peut insérer dans la commande TEST_RESU pour tester la non-régression du contenu des objets JEVEUX composant les concepts créés au cours d'une exécution",
6768       regles=(UN_PARMI('TOUT','CO'),),
6769          FICHIER         =SIMP(statut='f',typ='TXM',defaut="RESULTAT"),
6770          TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
6771          CO              =SIMP(statut='f',typ=assd,max='**'),
6772          TYPE_TEST       =SIMP(statut='f',typ='TXM',defaut="SOMME",into=("SOMME","RESUME") ),
6773          FORMAT_R        =SIMP(statut='f',typ='TXM',defaut="1PE12.5"),
6774          PREC_R          =SIMP(statut='f',typ='TXM',defaut="1.E-5"),
6775 )  ;
6776 #& MODIF COMMANDE  DATE 17/06/98   AUTEUR D6BHHJP J.P.LEFEBVRE 
6777 EXEC_LOGICIEL=PROC(nom="EXEC_LOGICIEL",op= 183,fr="",docu="U7.00.01-A",
6778          LOGICIEL        =SIMP(statut='f',typ='TXM' ),  
6779          ARGUMENT        =FACT(statut='f',min=01,max='**',
6780            NOM_PARA        =SIMP(statut='f',typ='TXM' ),  
6781          ),
6782 )  ;
6783 #& MODIF COMMANDE  DATE 02/04/96   AUTEUR ACBHHCD G.DEVESA 
6784 #def extr_mode_prod(FILTRE_MODE,TITRE,IMPRESSION ):
6785 #  Sait-on faire  
6786 def extr_mode_prod(FILTRE_MODE,**args):
6787   vale=FILTRE_MODE[0]['MODE']
6788   if AsType(vale) == mode_meca   : return mode_meca
6789   if AsType(vale) == mode_meca_c : return mode_meca_c
6790   if AsType(vale) == mode_gene   : return mode_gene
6791   raise AsException("type de concept resultat non prevu")
6792
6793 EXTR_MODE=OPER(nom="EXTR_MODE",op= 168,sd_prod=extr_mode_prod,
6794                fr="Extraction dans une structure de données de type mode_meca_* ou mode_gene des modes qui vérifient un certain critère et concaténation de plusieurs structures de données de même type",
6795                docu="U4.52.12-C",reentrant='n',
6796          FILTRE_MODE     =FACT(statut='o',min=01,max='**',
6797            regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE','NUME_MODE','NUME_MODE_EXCLU','FREQ_MIN','CRIT_EXTR',),),
6798            MODE            =SIMP(statut='o',typ=(mode_meca,mode_meca_c,mode_gene ) ),
6799            TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI","NON") ),
6800            NUME_ORDRE      =SIMP(statut='f',typ='I',max='**'),
6801            NUME_MODE       =SIMP(statut='f',typ='I',max='**'),
6802            NUME_MODE_EXCLU =SIMP(statut='f',typ='I',max='**'),
6803            FREQ_MIN        =SIMP(statut='f',typ='R' ),
6804            CRIT_EXTR       =SIMP(statut='f',typ='TXM',defaut="MASS_EFFE_UN"
6805                                   ,into=("MASS_EFFE_UN","MASS_GENE") ),
6806            b_freq_min      =BLOC(condition = "FREQ_MIN != None",  
6807              FREQ_MAX        =SIMP(statut='o',typ='R' ),
6808              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
6809            ),
6810            b_crit_extr     =BLOC(condition = "CRIT_EXTR != None",
6811              SEUIL           =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
6812            ),    
6813          ),
6814          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
6815          IMPRESSION      =FACT(statut='f',min=01,max=01,
6816            CUMUL           =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
6817            CRIT_EXTR       =SIMP(statut='f',typ='TXM',defaut="MASS_EFFE_UN",into=("MASS_EFFE_UN","MASS_GENE") ),
6818          ),
6819 )  ;
6820 #& MODIF COMMANDE  DATE 03/05/2000   AUTEUR CIBHHLV L.VIVAN 
6821 def extr_resu_prod(RESULTAT,**args):
6822   if AsType(RESULTAT) == evol_elas    : return evol_elas
6823   if AsType(RESULTAT) == evol_noli    : return evol_noli
6824   if AsType(RESULTAT) == evol_ther    : return evol_ther
6825   if AsType(RESULTAT) == dyna_trans   : return dyna_trans
6826   if AsType(RESULTAT) == dyna_harmo   : return dyna_harmo
6827   if AsType(RESULTAT) == acou_harmo   : return acou_harmo
6828   if AsType(RESULTAT) == mode_meca    : return mode_meca
6829   if AsType(RESULTAT) == mode_acou    : return mode_acou
6830   if AsType(RESULTAT) == mode_stat    : return mode_stat
6831   if AsType(RESULTAT) == mult_elas    : return mult_elas
6832   if AsType(RESULTAT) == fourier_elas : return fourier_elas
6833   raise AsException("type de concept resultat non prevu")
6834
6835 EXTR_RESU=OPER(nom="EXTR_RESU",op=176,sd_prod=extr_resu_prod,docu="U4.71.04-B",reentrant='f',
6836                fr="Extraction de champs pour des numéros d ordre donnés et réduction de l encombrement d une Structure de Données de type resultat",
6837          RESULTAT        =SIMP(statut='o',typ=(evol_elas,dyna_trans,dyna_harmo,acou_harmo,mode_meca,          
6838                                                mode_acou,mode_stat,evol_ther,evol_noli,   
6839                                                mult_elas,fourier_elas ) ),
6840          ARCHIVAGE       =FACT(statut='f',min=01,max=01,
6841            regles=(UN_PARMI('LIST_ARCH','PAS_ARCH'),),
6842            LIST_ARCH       =SIMP(statut='f',typ=listis),
6843            PAS_ARCH        =SIMP(statut='f',typ='I'),  
6844            CHAM_EXCLU      =SIMP(statut='f',typ='TXM',max='**',into=("VARI",) ),
6845          ),
6846          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),  
6847 )  ;
6848 #& MODIF COMMANDE  DATE 03/05/2000   AUTEUR VABHHTS J.PELLET 
6849 def fact_grad_prod(MATR_ASSE,**args):
6850   if AsType(MATR_ASSE) == matr_asse_depl_r : return matr_asse_depl_r
6851   if AsType(MATR_ASSE) == matr_asse_temp_r : return matr_asse_temp_r
6852   if AsType(MATR_ASSE) == matr_asse_pres_r : return matr_asse_pres_r
6853   raise AsException("type de concept resultat non prevu")
6854
6855 FACT_GRAD=OPER(nom="FACT_GRAD",op=85,sd_prod=fact_grad_prod,docu="U4.55.03-E",
6856                fr="Préconditionnement pour résolution par gradient conjugué",
6857                reentrant='n',
6858          MATR_ASSE       =SIMP(statut='o',
6859                                typ=(matr_asse_depl_r,matr_asse_temp_r,
6860                                     matr_asse_pres_r) ),
6861          PRE_COND        =SIMP(statut='f',typ='TXM',defaut="LDLT_INC",into=("LDLT_INC",) ),
6862          NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ),  
6863          INFO            =SIMP(statut='f',typ='I',into=(1,2) ),
6864 )  ;
6865 #& MODIF COMMANDE  DATE 16/12/97   AUTEUR CIBHHLV L.VIVAN 
6866 FACT_INTE_SPEC=OPER(nom="FACT_INTE_SPEC",op= 117,sd_prod=interspfact,
6867                     fr="Factorisation d une matrice interspectrale hermitienne",
6868                     docu="U4.36.04-E",reentrant='n',
6869          regles=(ENSEMBLE('FREQ_FIN','NB_POIN'),),
6870 #  regle non indiquée dans la doc U         
6871          INTE_SPEC       =SIMP(statut='o',typ=tabl_intsp ),
6872          NUME_VITE_FLUI  =SIMP(statut='f',typ='I' ),
6873          FREQ_INIT       =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
6874          FREQ_FIN        =SIMP(statut='f',typ='R' ),
6875          NB_POIN         =SIMP(statut='f',typ='I',defaut= 0 ),
6876          SUR_ECHAN       =SIMP(statut='f',typ='R',defaut= 1. ),
6877          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
6878 )  ;
6879 #& MODIF COMMANDE  DATE 25/11/97   AUTEUR VABHHTS J.PELLET 
6880 def fact_ldlt_prod(MATR_ASSE,**args):
6881   if AsType(MATR_ASSE) == matr_asse_depl_r : return matr_asse_depl_r
6882   if AsType(MATR_ASSE) == matr_asse_depl_c : return matr_asse_depl_c
6883   if AsType(MATR_ASSE) == matr_asse_temp_r : return matr_asse_temp_r
6884   if AsType(MATR_ASSE) == matr_asse_temp_c : return matr_asse_temp_c
6885   if AsType(MATR_ASSE) == matr_asse_pres_r : return matr_asse_pres_r
6886   if AsType(MATR_ASSE) == matr_asse_pres_c : return matr_asse_pres_c
6887   raise AsException("type de concept resultat non prevu")
6888
6889 FACT_LDLT=OPER(nom="FACT_LDLT",op=14,sd_prod=fact_ldlt_prod,fr="Factorisation en place ou hors place",
6890                docu="U4.55.01-F",reentrant='f',
6891          regles=(EXCLUS('BLOC_DEBUT','DDL_DEBUT'),
6892                  EXCLUS('BLOC_FIN','DDL_FIN'),),
6893          MATR_ASSE       =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_temp_r,
6894                                                matr_asse_temp_c,matr_asse_pres_r,matr_asse_pres_c) ),
6895          STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
6896          NPREC           =SIMP(statut='f',typ='I',defaut=8),
6897          PRE_COND        =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SANS","DIAG") ),
6898          BLOC_DEBUT      =SIMP(statut='f',typ='I'),
6899          DDL_DEBUT       =SIMP(statut='f',typ='I'),
6900          BLOC_FIN        =SIMP(statut='f',typ='I'),
6901          DDL_FIN         =SIMP(statut='f',typ='I'),
6902 #
6903          EPS             =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
6904
6905          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
6906          INFO            =SIMP(statut='f',typ='I',into=(1,2) ),
6907 )  ;
6908 #& MODIF COMMANDE  DATE 23/02/99   AUTEUR D6BHHJP J.P.LEFEBVRE 
6909 # NEW 5.3.23
6910 FERMER=PROC(nom="FERMER",op=  10,fr=" ",
6911             docu="U4.12.02-A",
6912          UNITE           =SIMP(statut='o',typ='I',max='**' ),  
6913 )  ;
6914 #& MODIF COMMANDE  DATE 17/11/97   AUTEUR CIBHHLV L.VIVAN 
6915 FIN=PROC(nom="FIN",op=9999,repetable='n',fr="Fin d'une étude",
6916          docu="U4.11.02-F",
6917          RETASSAGE       =SIMP(fr="provoque le retassage de la base GLOBALE",
6918                                statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ),
6919          PERFORMANCE     =SIMP(fr="provoque l'impression d'un résumé des mesures de temps ",
6920                                statut='f',typ='TXM',defaut="OUI",into=("OUI","NON",) ),
6921          INFO_RESU       =SIMP(fr="provoque l'impression des informations sur les structures de données",
6922                                statut='f',typ='TXM',defaut="OUI",into=("OUI","NON",) ),
6923          FICHIER         =SIMP(statut='f',typ='TXM',defaut="MESSAGE"),
6924 )  ;
6925 #& MODIF COMMANDE  DATE 06/05/96   AUTEUR KXBADNG T.FRIOU 
6926 FONC_FLUI_STRU=OPER(nom="FONC_FLUI_STRU",op= 169,sd_prod=fonction,
6927                     fr="Création d'une fonction constante (concept de type fonction), paramétrée par l'abscisse curviligne et donnant la valeur du coefficient de masse ajoutée pour une configuration du type faisceau de tubes sous écoulement transverse",
6928                     docu="U4.35.02-C",reentrant='n',
6929          TYPE_FLUI_STRU  =SIMP(statut='o',typ=(type_flui_stru) ),
6930 )  ;
6931 #& MODIF COMMANDE  DATE 12/09/2001   AUTEUR MCOURTOI M.COURTOIS 
6932 FORMULE = FORM( nom='FORMULE',op=-5,sd_prod=fonction,
6933                 fr="Définition d une fonction",reentrant = 'n',
6934                 regles=(UN_PARMI('REEL','ENTIER','COMPLEXE'),),
6935                 REEL = SIMP(typ = 'shell',max=1),
6936                 ENTIER = SIMP(typ = 'shell',max=1),
6937                 COMPLEXE = SIMP(typ = 'shell',max=1),
6938 ) ;
6939 #& MODIF COMMANDE  DATE 04/02/98   AUTEUR CIBHHLV L.VIVAN 
6940 GENE_FONC_ALEA=OPER(nom="GENE_FONC_ALEA",op= 118,sd_prod=tabl_fonc,
6941                     fr="Génération de la fonction temporelle à partir d une matrice interspectrale factorisée",
6942                     docu="U4.36.05-E",reentrant='n',
6943          INTE_SPEC_FACT  =SIMP(statut='o',typ=interspfact ),
6944          INIT_ALEA       =SIMP(statut='f',typ='I',defaut= 12312745 ),
6945          NB_TIRAGE       =SIMP(statut='f',typ='I',defaut= 1 ),
6946          NB_POIN         =SIMP(statut='f',typ='I' ),
6947          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
6948 )  ;
6949 #& MODIF COMMANDE  DATE 17/10/95   AUTEUR ACBHHLB L.VIVAN 
6950 IMPR_CHARGE=PROC(nom="IMPR_CHARGE",op= 158,
6951                  fr="Impression des charges mécaniques de type degrés de liberté imposés et relations linéaires entre les degrés de liberté au format fichier universel IDEAS",
6952                  docu="U7.04.31-C",
6953          FICHIER         =SIMP(statut='f',typ='TXM' ),
6954          FORMAT          =SIMP(statut='f',typ='TXM',defaut="IDEAS",into=("IDEAS",) ),
6955          VERSION         =SIMP(statut='f',typ='I',defaut= 5,into=( 5 ,) ),
6956          CHARGE          =SIMP(statut='o',typ=char_meca,max='**', ),
6957 )  ;
6958 #& MODIF COMMANDE  DATE 30/09/98   AUTEUR SABJLMA P.LATRUBESSE 
6959 IMPR_CLASSI=PROC(nom="IMPR_CLASSI",op= 114,docu="U7.04.21-A",
6960                  fr="Ecriture sur fichier, du rèsultat d une analyse modale au format du code CLASSI (interaction sol structure) utilisè au SEPTEN",
6961          regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','FREQ','NUME_MODE','LIST_FREQ',
6962                         'LIST_ORDRE' ),),
6963          UNITE_CLASSI    =SIMP(statut='o',typ='I' ),
6964          MODE_MECA       =SIMP(statut='o',typ=mode_meca ),
6965          TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
6966          NUME_ORDRE      =SIMP(statut='f',typ='I',max='**'),
6967          LIST_ORDRE      =SIMP(statut='f',typ=listis ),
6968          NUME_MODE       =SIMP(statut='f',typ='I',max='**'),
6969          FREQ            =SIMP(statut='f',typ='R',max='**'),
6970          LIST_FREQ       =SIMP(statut='f',typ=listr8 ),
6971          b_prec_crit     =BLOC(condition = "LIST_FREQ != None or FREQ != None",
6972              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
6973              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",
6974                                    into=("RELATIF","ABSOLU") ),
6975          ),
6976          IMPRESSION      =FACT(statut='f',min=01,max='**',
6977            regles=(UN_PARMI('NOEUD','GROUP_NO', ),),
6978            NOEUD           =SIMP(statut='f',typ=no,max='**'),
6979            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
6980            NOM_CMP         =SIMP(statut='f',typ='TXM',max='**'),
6981          ),
6982          AMOR            =SIMP(statut='o',typ='R',max='**'),
6983 )  ;
6984 #& MODIF COMMANDE  DATE 12/05/98   AUTEUR CIBHHLV L.VIVAN 
6985 IMPR_CO=PROC(nom="IMPR_CO",op=17,docu="U4.91.11-F",
6986              fr="Impression du contenu d un concept utilisateur (pour développeur)",
6987          regles=(UN_PARMI('CO','CHAINE', ),),
6988          FICHIER         =SIMP(statut='f',typ='TXM',defaut="RESULTAT"),  
6989          NIVEAU          =SIMP(statut='f',typ='I',defaut=2,into=(0,1,2) ),
6990          ATTRIBUT        =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","OUI") ),
6991          CONTENU         =SIMP(statut='f',typ='TXM',defaut="OUI",into=("NON","OUI") ),
6992          BASE            =SIMP(statut='f',typ='TXM',defaut="G",into=("","G","V","L") ),
6993          CO              =SIMP(statut='f',typ=assd),
6994          CHAINE          =SIMP(statut='f',typ='TXM'),  
6995          POSITION        =SIMP(statut='f',typ='I',defaut=1),  
6996 )  ;
6997 #& MODIF COMMANDE  DATE 03/05/2000   AUTEUR CIBHHLV L.VIVAN 
6998 IMPR_COURBE=PROC(nom="IMPR_COURBE",op= 141,fr="Impression, sur fichiers,  sous formats appropriés, de concepts de type fonction ou de fonctions extraites de listes, de tables et de concepts résultats",
6999                  docu="U4.33.01-D",
7000          FICHIER         =SIMP(statut='f',typ='TXM',defaut="RESULTAT"),
7001          FORMAT          =SIMP(statut='f',typ='TXM',position='global'
7002                               ,into=("AGRAF","POSTSCRIPT","RESULTAT","COMMANDE","SEISME") ),
7003          b_agraf_post =BLOC(condition = "(FORMAT=='AGRAF') or (FORMAT=='POSTSCRIPT')",fr="Mots-clés communs AGRAF et POSTCRIPT",
7004            BORNE_X         =SIMP(statut='f',typ='R',max=02,fr="Intervalles de variation des abcisses"),
7005            ECHELLE_X       =SIMP(statut='f',typ='TXM',defaut="LIN",into=("LIN","LOG"),fr="Type d'échelle pour les abcisses" ),
7006            BORNE_Y         =SIMP(statut='f',typ='R',max=02,fr="Intervalles de variation des ordonnées"),
7007            ECHELLE_Y       =SIMP(statut='f',typ='TXM',defaut="LIN",into=("LIN","LOG"),fr="Type d'échelle pour les ordonnées" ),
7008          ),
7009          b_agraf =BLOC(condition = "(FORMAT=='AGRAF')",fr="Mots-clés propres à AGRAF",
7010            TITRE_GRAPHIQUE =SIMP(statut='f',typ='TXM',fr="Titre associé au graphique" ),
7011            COMMENTAIRE     =SIMP(statut='f',typ='TXM',max='**',fr="Commentaires associés au graphique"),
7012            LEGENDE_X       =SIMP(statut='f',typ='TXM',fr="Légende associée à l axe des abcisses" ),
7013            LEGENDE_Y       =SIMP(statut='f',typ='TXM',fr="Légende associée à l axe des ordonnées" ),
7014            FREQ_GRILLE_X   =SIMP(statut='f',typ='I',defaut= 0,fr="Fréquence de tracage du quadrillage vertical" ),
7015            FREQ_GRILLE_Y   =SIMP(statut='f',typ='I',defaut= 0,fr="Fréquence de tracage du quadrillage horizontal" ),
7016          ), 
7017          b_post = BLOC (  condition = "(FORMAT=='POSTSCRIPT')",fr="Mots-clés propres à POSTCRIPT",
7018            TITRE           =SIMP(statut='f',typ='TXM',fr="Titre associé au graphique" ),
7019            LABEL_X         =SIMP(statut='f',typ='TXM',fr="Légende associée à l axe des abcisses" ),
7020            LABEL_Y         =SIMP(statut='f',typ='TXM',fr="Légende associée à l axe des ordonnées" ),
7021            SORTIE          =SIMP(statut='f',typ='TXM',defaut="COULEUR",into=("MONOCHROME","COULEUR"),fr="Type d impression" ),
7022            DATE            =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"),fr="Impression de la date" ),
7023            GRILLE          =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"),fr="Impression du quadrillage" ),
7024            AXE_ZERO_X      =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"),fr="Impression de l axe x égal zéro" ),
7025            AXE_ZERO_Y      =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"),fr="Impression de l axe y égal zéro" ),
7026            PRESENTATION    =SIMP(statut='f',typ='TXM',defaut="PAYSAGE",into=("PAYSAGE","PORTRAIT"),fr="Disposition du graphique sur la feuille" ),
7027            FENETRE         =SIMP(statut='f',typ='TXM',defaut="RECTANGLE",into=("CARREE","RECTANGLE"),fr="Forme de la fenêtre contenant le graphique" ),
7028          ),  
7029          COURBE          =FACT(statut='o',min=01,max='**',fr="Définition de la courbe à tracer",
7030            regles=(UN_PARMI('FONCTION','LIST_RESU','TABLE','FONC_X','RESU_GENE'),),
7031            FONCTION        =SIMP(statut='f',typ=(fonction, fonction_c),
7032                                  fr="Fonction réelle ou complexe", ),
7033            LIST_RESU       =SIMP(statut='f',typ=listr8,
7034                                  fr="Liste des ordonnees d une fonction réelle définie par deux listes", ),
7035 #  creer le type table            
7036            TABLE           =SIMP(statut='f',typ=table,
7037                                  fr="Nom de la table dont 2 colonnes définissent la fonction",),
7038            FONC_X          =SIMP(statut='f',typ=fonction,
7039                                  fr="Fonction abscisses d une fonction paramétrique",),
7040            RESU_GENE       =SIMP(statut='f',typ=tran_gene,
7041                                  fr="Nom du RESU_GENE qui contient les informations liées à des noeuds de choc et qui seront tracées sous forme de fonction", ), 
7042            b_fonction      =BLOC(condition = "FONCTION != None",                          
7043              LIST_PARA       =SIMP(statut='f',typ=listr8 ),
7044              b_fonction_c  =BLOC(condition = "AsType(FONCTION) == fonction_c",
7045                                    fr="Fonction complexe définie par le mot-clé fonction",
7046                PARTIE          =SIMP(statut='f',typ='TXM',into=("REEL","IMAG") ),           
7047              ),
7048            ),   
7049            b_list_resu     =BLOC(condition = "LIST_RESU != None",                                
7050              LIST_PARA       =SIMP(statut='o',typ=listr8 ),
7051            ),  
7052            b_table         =BLOC(condition = "TABLE != None",                                         
7053              PARA_X          =SIMP(statut='o',typ='TXM',fr="Paramètre de la table associé aux abcisses de la fonction à tracer" ),
7054              PARA_Y          =SIMP(statut='o',typ='TXM',fr="Paramètre de la table associé aux ordonnées de la fonction à tracer" ),        
7055            ), 
7056            b_fonc_x        =BLOC(condition = "FONC_X != None",                                          
7057              FONC_Y          =SIMP(statut='o',typ=fonction,fr="Fonction ordonnées d une fonction paramétrique" ),
7058              PARA            =SIMP(statut='f',typ='TXM',defaut="FONC_X",into=("FONC_X","FONC_Y"),fr="Permutation des rôles des deux fonctions" ),
7059              LIST_PARA       =SIMP(statut='f',typ=listr8 ),                
7060            ),
7061            b_resu_gene     =BLOC(condition = "RESU_GENE != None",                                
7062              regles=(UN_PARMI('NOEUD_CHOC','GROUP_NO_CHOC'),),                      
7063              NOEUD_CHOC      =SIMP(statut='f',typ=no),
7064              GROUP_NO_CHOC   =SIMP(statut='f',typ=grno),
7065              PARA_X          =SIMP(statut='o',typ='TXM',fr="Paramètre associé aux abcisses de la fonction à tracer de la table information sur les chocs " ),
7066              PARA_Y          =SIMP(statut='o',typ='TXM',fr="Paramètre associé aux ordonnées de la fonction à tracer de la table information sur les chocs " ),
7067              LIST_PARA       =SIMP(statut='f',typ=listr8 ),   
7068              SOUS_STRUC      =SIMP(statut='f',typ='TXM' ),
7069              INTITULE        =SIMP(statut='f',typ='TXM' ),               
7070            ), 
7071                  
7072                
7073            LEGENDE         =SIMP(statut='f',typ='TXM',fr="Légende associée à la courbe" ),
7074            STYLE           =SIMP(statut='f',typ='TXM',defaut="LIGNE",fr="Style de la ligne représentant la courbe",
7075                                  into=("LIGNE","POINTILLE","POINT","POINT_RELIE") ),
7076            COULEUR         =SIMP(statut='f',typ='TXM',fr="Couleur associée à la courbe",
7077                                  into=("NOIR","ROUGE","VERT_FONCE","BLEU",
7078                                        "MAGENTA","CYAN","VERT","SIENNE","ORANGE",
7079                                        "POURPRE","JAUNE","DAIM","TURQUOISE","VIOLET",
7080                                        "BRUN","CORAIL","MARRON","MAUVE","MARRON_CLAIR") ),
7081            MARQUEUR        =SIMP(statut='f',typ='TXM',fr="Type du marqueur associé à la courbe",
7082                                  into=("POINT_F","CARRE_F","TRIANGLE_F",
7083                                        "LOSANGE_F","ETOILE_F","FUSEE_F","POINT",
7084                                        "CARRE","TRIANGLE","LOSANGE","ETOILE","FUSEE",
7085                                        "PLUS","X","CERCLE","CERCLE_P","CARRE_P",
7086                                        "LOSANGE_P","CERCLE_P_X","LOSANGE_P_X",
7087                                        "CERCLE_X","CARRE_X","LOSANGE_X") ),
7088             b_agraf =BLOC(condition = "(FORMAT=='AGRAF')",fr="Mots-clés propres à AGRAF",
7089               TRI             =SIMP(statut='f',typ='TXM',defaut="N",fr="Choix du tri effectué sur les abcisses ou sur les ordonnées",
7090                                     into=("N","X","Y","XY","YX") ),
7091               FREQ_MARQUEUR   =SIMP(statut='f',typ='I',defaut= 0,fr="Fréquence d impression du marqueur associé à la courbe", ),          
7092             ), 
7093          ),
7094 )  ;
7095 #& MODIF COMMANDE  DATE 02/02/2000   AUTEUR UFBHHGN G.NICOLAS 
7096 IMPR_FICO_HOMA=PROC(nom="IMPR_FICO_HOMA",op= 189, docu="U7.04.01-A",
7097                     fr="Imprimer le fichier de configurations de HOMARD",
7098          TRAITEMENT      =FACT(statut='o',min=01,max=01,
7099            regles=( UN_PARMI('ADAPTATION','UNIFORME','MAJSOLUTION','INFORMATION'),),
7100            ADAPTATION      =SIMP(statut='f',typ='TXM',     
7101                                  fr="Adaptation libre",
7102                                  into=("RAFFINEMENT","DERAFFINEMENT","RAFF_DERA") ),
7103            UNIFORME        =SIMP(statut='f',typ='TXM',     
7104                                  into=("RAFFINEMENT","DERAFFINEMENT","RIEN") ),
7105            MAJSOLUTION     =SIMP(statut='f',typ='TXM',into=("OUI",) ),
7106            INFORMATION     =SIMP(statut='f',typ='TXM',into=("OUI",) ),
7107            b_adaptation =BLOC(condition = "( UNIFORME != None ) or ( ADAPTATION != None ) or ( MAJSOLUTION != None ) ",
7108                            fr="Adaptation",
7109                            NITER           =SIMP(statut='o',typ='I' ),
7110                            MAJ_CHAMP       =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
7111                            ) ,
7112            b_adaptation_libre  =BLOC(condition = "ADAPTATION != None",
7113                            fr="Adaptation libre",
7114                            NOM_MED_INDICA  =SIMP(statut='o',typ='TXM' ),
7115                            NOM_CMP_INDICA  =SIMP(statut='f',typ='TXM',defaut="ERREST",    
7116                                    into=("ERREST","NUEST") ),
7117                            NOM_MED_SUPPOR  =SIMP(statut='o',typ='TXM' ),
7118                            ) ,
7119            b_raffinement_libre   =BLOC( condition = "( ADAPTATION == 'RAFF_DERA' ) or ( ADAPTATION == 'RAFFINEMENT' )" ,
7120                            fr="Critère de raffinement.",
7121                            regles=(UN_PARMI ( 'CRIT_RAFF_ABS', 'CRIT_RAFF_REL', 'CRIT_RAFF_PE' ),),
7122                            CRIT_RAFF_ABS   =SIMP(statut='f',typ='R' ),
7123                            CRIT_RAFF_REL   =SIMP(statut='f',typ='R' ),
7124                            CRIT_RAFF_PE    =SIMP(statut='f',typ='R' ),
7125                            ) ,
7126            b_deraffinement_libre   =BLOC ( condition = "( ADAPTATION == 'RAFF_DERA' ) or ( ADAPTATION == 'DERAFFINEMENT' )" ,
7127                              fr="Critère de déraffinement.",
7128                              regles=(UN_PARMI ( 'CRIT_DERA_ABS', 'CRIT_DERA_REL', 'CRIT_DERA_PE' ),),
7129                              CRIT_DERA_ABS   =SIMP(statut='f',typ='R' ),
7130                              CRIT_DERA_REL   =SIMP(statut='f',typ='R' ),
7131                              CRIT_DERA_PE    =SIMP(statut='f',typ='R' ),
7132                            ) ,
7133            b_raffinement =BLOC ( condition = " ( ADAPTATION == 'RAFF_DERA' ) or ( ADAPTATION == 'RAFFINEMENT' ) or ( UNIFORME == 'RAFFINEMENT' )" ,
7134                              NIVE_MAX        =SIMP(statut='f',typ='I' ),
7135                            ) ,
7136            b_deraffinement =BLOC ( condition = " ( ADAPTATION == 'RAFF_DERA' ) or ( ADAPTATION == 'DERAFFINEMENT' ) or ( UNIFORME == 'DERAFFINEMENT' )" ,
7137                              NIVE_MIN        =SIMP(statut='f',typ='I' ),
7138                            ) ,
7139          ),
7140          ANALYSE         =FACT(statut='f',min=01,max=01,
7141            regles=(AU_MOINS_UN('QUALITE','INTERPENETRATION'),),
7142            QUALITE         =SIMP(statut='f',typ='TXM',into=("OUI","NON") ),
7143            INTERPENETRATION=SIMP(statut='f',typ='TXM',into=("OUI","NON") ),
7144          ),
7145          UNITE           =SIMP(statut='f',typ='I',defaut= 71 ),  
7146          REP             =SIMP(statut='f',typ='TXM' ),  
7147          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
7148 )  ;
7149 #& MODIF COMMANDE  DATE 27/04/98   AUTEUR CIBHHLV L.VIVAN 
7150 IMPR_GENE=PROC(nom="IMPR_GENE",op= 157,fr="Calcul du dommage subi par une structure soumise à une sollicitation de type aléatoire fichier, au format 'RESULTAT'",
7151                docu="U4.91.02-C",
7152          GENE            =FACT(statut='o',min=01,max='**',
7153            regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE',
7154                           'LIST_INST','LIST_FREQ','TOUT_MODE','TOUT_INST','LIST_ORDRE'),
7155                    EXCLUS('TOUT_MODE','NUME_ORDRE','INST','FREQ','NUME_MODE',
7156                           'LIST_INST','LIST_FREQ','TOUT_ORDRE','TOUT_INST','LIST_ORDRE'),
7157                    EXCLUS('TOUT_INST','NUME_ORDRE','INST','FREQ','NUME_MODE',
7158                           'LIST_INST','LIST_FREQ','TOUT_ORDRE','LIST_ORDRE'),
7159                    EXCLUS('TOUT_CMP_GENE','NUME_CMP_GENE'),
7160                    EXCLUS('TOUT_CHAM','NOM_CHAM'),
7161                    EXCLUS('TOUT_PARA','NOM_PARA'),),
7162 #  faut-il faire des blocs selon le type de RESU_GENE                   
7163            RESU_GENE       =SIMP(statut='o',typ=(vect_asse_gene, tran_gene, mode_gene, harm_gene)),
7164            FORMAT          =SIMP(statut='f',typ='TXM',defaut="RESULTAT",into=("RESULTAT",) ),
7165            FICHIER         =SIMP(statut='f',typ='TXM' ),
7166            TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
7167            NUME_ORDRE      =SIMP(statut='f',typ='I',max='**'),
7168            LIST_ORDRE      =SIMP(statut='f',typ=listis ),
7169            TOUT_MODE       =SIMP(statut='f',typ='TXM',into=("OUI",) ),
7170            NUME_MODE       =SIMP(statut='f',typ='I',max='**'),
7171            INST            =SIMP(statut='f',typ='R',max='**'),
7172            LIST_INST       =SIMP(statut='f',typ=listr8 ),
7173            TOUT_INST       =SIMP(statut='f',typ='TXM',into=("OUI",) ),
7174            FREQ            =SIMP(statut='f',typ='R',max='**'),
7175            LIST_FREQ       =SIMP(statut='f',typ=listr8 ),
7176            b_prec_crit     =BLOC(condition = "LIST_FREQ != None or FREQ != None",
7177              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
7178              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",
7179                                    into=("RELATIF","ABSOLU") ),
7180            ),
7181            TOUT_CMP_GENE   =SIMP(statut='f',typ='TXM',into=("OUI","NON") ),
7182            NUME_CMP_GENE   =SIMP(statut='f',typ='I',max='**'),
7183            TOUT_CHAM       =SIMP(statut='f',typ='TXM',into=("OUI","NON") ),
7184            NOM_CHAM        =SIMP(statut='f',typ='TXM',max='**'),
7185            TOUT_PARA       =SIMP(statut='f',typ='TXM',into=("OUI","NON") ),
7186            NOM_PARA        =SIMP(statut='f',typ='TXM',max='**'),
7187            SOUS_TITRE      =SIMP(statut='f',typ='TXM',max='**'),
7188            INFO_CMP_GENE   =SIMP(statut='f',typ='TXM',into=("OUI","NON") ),
7189            INFO_GENE       =SIMP(statut='f',typ='TXM',into=("OUI","NON") ),
7190          ),
7191 )  ;
7192 #& MODIF COMMANDE DATE 16/10/90 AUTEUR INCONNU INCONNU
7193 IMPR_JEVEUX=PROC(nom="IMPR_JEVEUX",op=16,docu="U4.91.21-F",
7194                  fr="Impression de caractéristiques d'objets JEVEUX (pour développeur)",
7195          ENTITE          =SIMP(fr="choix de l'observation",statut='o',typ='TXM',                                                                                                                                                                                                    
7196                                into=("DISQUE","MEMOIRE","REPERTOIRE",    
7197                                      "OBJET","ATTRIBUT","SYSTEME") ),
7198          b_objet      =BLOC(condition = "(ENTITE=='OBJET')",
7199             NOMOBJ          =SIMP(fr="nom d'objet",statut='f',typ='TXM' ),  
7200             NUMOC           =SIMP(fr="numéro d objet de collection",statut='f',typ='I' ),  
7201             NOMOC           =SIMP(fr="nom d'objet de collection",statut='f',typ='TXM' ),  
7202          ),
7203          b_attribut   =BLOC(condition = "(ENTITE=='ATTRIBUT')",
7204             NOMOBJ          =SIMP(fr="nom de collection",statut='f',typ='TXM' ),  
7205             NOMATR          =SIMP(fr="nom d attribut de collection",statut='f',typ='TXM',
7206                                   into=('$$DESO','$$IADD','$$IADM','$$NOM','$$LONG',
7207                                       '$$LONO','$$LUTI','$$NUM') ),
7208          ),
7209          b_systeme    =BLOC(condition = "(ENTITE=='SYSTEME')",
7210             CLASSE          =SIMP(statut='o',typ='TXM',into=('G','V','L') ),  
7211             NOMATR          =SIMP(fr="nom d attribut systeme",statut='f',typ='TXM',   
7212                                   into=('$$CARA','$$IADD','$$GENR','$$TYPE','$$ETAT',
7213                                       '$$DOCU','$$ORIG','$$RNOM','$$LTYP','$$LONG',
7214                                       '$$LONO','$$DATE','$$LUTI','$$HCOD','$$INDX',
7215                                       '$$TLEC','$$TECR','$$IADM','$$ACCE') ),
7216          ),
7217          b_repertoire =BLOC(condition = "(ENTITE=='REPERTOIRE')",
7218             CLASSE          =SIMP(statut='f',typ='TXM',into=('G','V','L',' '),defaut=' '),  
7219          ),
7220          b_disque     =BLOC(condition = "(ENTITE=='DISQUE')",
7221             CLASSE          =SIMP(statut='f',typ='TXM' ,into=('G','V','L',' '),defaut=' '),  
7222          ),
7223          IMPRESSION      =FACT(statut='f',min=01,max=01,
7224            NOM             =SIMP(statut='f',typ='TXM' ),  
7225            UNITE           =SIMP(statut='f',typ='I'),  
7226          ),
7227          COMMENTAIRE     =SIMP(statut='f',typ='TXM' ),  
7228 )  ;
7229 #& MODIF COMMANDE  DATE 09/09/98   AUTEUR ACBHHCD G.DEVESA 
7230 IMPR_MACR_ELEM=PROC(nom="IMPR_MACR_ELEM",op= 160,fr="Impression au format fichier universel IDEAS ou au format MISS3D ou au format RESULTAT d un concept de type macr_elem_dyna",
7231                     docu="U7.04.33-C",
7232          MACR_ELEM_DYNA  =SIMP(statut='o',typ=macr_elem_dyna ),
7233          FICHIER         =SIMP(statut='f',typ='TXM' ),
7234          FORMAT          =SIMP(statut='f',typ='TXM',defaut="IDEAS",
7235                                into=("MISS_3D","IDEAS","CADYRO",) ),
7236          b_ideas         =BLOC(condition = "FORMAT == 'IDEAS'",
7237            VERSION         =SIMP(statut='f',typ='I',defaut= 5,into=( 5 ,) ),
7238          ),                      
7239          b_miss_3d       =BLOC(condition = "FORMAT == 'MISS_3D'",
7240            UNITE           =SIMP(statut='f',typ='I',defaut= 26 ),
7241            SOUS_TITRE      =SIMP(statut='f',typ='TXM',max='**'),
7242            AMOR_REDUIT     =SIMP(statut='f',typ='R',max='**'),
7243            GROUP_MA_INTERF =SIMP(statut='o',typ=grma,max='**'),
7244 #  Ces trois mots cles sont-ils dans le bon bloc et avec le bon statut        
7245            GROUP_MA_FLU_STR=SIMP(statut='f',typ=grma,max='**'),
7246            GROUP_MA_FLU_SOL=SIMP(statut='f',typ=grma,max='**'),
7247            GROUP_MA_SOL_SOL=SIMP(statut='f',typ=grma,max='**'),
7248            IMPR_MODE_MECA  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
7249            IMPR_MODE_STAT  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
7250          ),
7251          b_cadyro        =BLOC(condition = "FORMAT == 'CADYRO'",
7252            SQUELETTE       =SIMP(statut='f',typ=squelette ),
7253            UNITE_MODE_MECA =SIMP(statut='f',typ='I',defaut= 26 ),
7254            UNITE_MODE_STAT =SIMP(statut='f',typ='I',defaut= 27 ),
7255            UNITE_MAILLAGE  =SIMP(statut='f',typ='I',defaut= 28 ),
7256            IMPR_MODE_MECA  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
7257            IMPR_MODE_STAT  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
7258          ),
7259
7260 )  ;
7261 #& MODIF COMMANDE  DATE 07/04/98   AUTEUR CIBHHGB G.BERTRAND 
7262 IMPR_MATRICE=PROC(nom="IMPR_MATRICE",op= 159,fr="Impression au format universel IDEAS ou au format RESULTAT des matrices élémentaires et des matrices assemblées",
7263                   docu="U7.04.32-C",
7264          regles=(AU_MOINS_UN('MATR_ELEM','MATR_ASSE'),),
7265          
7266          MATR_ELEM       =FACT(statut='f',min=01,max='**',
7267            FICHIER         =SIMP(statut='f',typ='TXM' ),
7268            FORMAT          =SIMP(statut='f',typ='TXM',defaut="IDEAS",
7269                                  into=("IDEAS","RESULTAT") ),
7270            b_format      =BLOC(condition = "FORMAT == 'IDEAS'",
7271              VERSION         =SIMP(statut='f',typ='I',defaut= 5,into=( 5 ,) ),
7272            ),
7273 #  créer les types matr_elem  et vect_elem        
7274            MATRICE         =SIMP(statut='o',typ=(matr_elem, vect_elem)),
7275 #  Quelle regle pour TOUT, NOEUD, GROUP_NO, MAILLE, GROUP_MA           
7276            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
7277            NOEUD           =SIMP(statut='f',typ=no,max='**'),
7278            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
7279            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
7280            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
7281            NOM_CMP         =SIMP(statut='f',typ='TXM',max='**'),
7282            GRAIN           =SIMP(statut='f',typ='TXM',defaut="VALEUR",
7283                                  into=("VALEUR","NOEUD","MAILLE") ),
7284            NB_CHIFFRE      =SIMP(statut='f',typ='I',defaut= 4 ),
7285          ),
7286          MATR_ASSE       =FACT(statut='f',min=01,max='**',
7287            FICHIER         =SIMP(statut='f',typ='TXM' ),
7288            FORMAT          =SIMP(statut='f',typ='TXM',defaut="IDEAS",
7289                                  into=("IDEAS","RESULTAT") ),
7290            VERSION         =SIMP(statut='f',typ='I',defaut= 5,into=( 5 ,) ),
7291 #  créer le type matr_elem           
7292            MATRICE         =SIMP(statut='o',typ=matr_asse),
7293 #  Quelle regle pour TOUT, NOEUD, GROUP_NO, MAILLE, GROUP_MA                      
7294            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
7295            NOEUD           =SIMP(statut='f',typ=no,max='**'),
7296            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
7297            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
7298            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
7299            OPTION          =SIMP(statut='f',typ='TXM',defaut="SOUS_MATRICE",
7300                                  into=("SOUS_MATRICE","LIGNE","COLONNE") ),
7301            NOM_CMP         =SIMP(statut='f',typ='TXM',max='**'),
7302            GRAIN           =SIMP(statut='f',typ='TXM',defaut="VALEUR",
7303                                  into=("VALEUR","NOEUD") ),
7304            NB_CHIFFRE      =SIMP(statut='f',typ='I',defaut= 4 ),
7305            VALE_ZERO       =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
7306          ),
7307 )  ;
7308 #& MODIF COMMANDE  DATE 11/02/98   AUTEUR CIBHHLV L.VIVAN 
7309 IMPR_MISS_3D=PROC(nom="IMPR_MISS_3D",op= 162,fr="Permet de transmettre au format MISS3D la contribution des charges internes à une superstructure sous forme d un second membre projeté sur la base modale (modes propres ou contraints), les signaux d excitation harmonique ou transitoire",
7310                   docu="U7.04.11-C",
7311          regles=(UN_PARMI('INST_INIT','FREQ_INIT'),
7312                  PRESENT_PRESENT('INST_INIT','INST_FIN'),
7313                  PRESENT_PRESENT('FREQ_INIT','FREQ_FIN'),),
7314          MACR_ELEM_DYNA  =SIMP(statut='o',typ=macr_elem_dyna ),
7315          EXCIT           =FACT(statut='f',min=01,max='**',
7316            regles=(UN_PARMI('FONC_MULT','COEF_MULT' ),),
7317            VECT_ASSE       =SIMP(statut='f',typ=cham_no_depl_r ),
7318            FONC_MULT       =SIMP(statut='f',typ=fonction ),
7319            COEF_MULT       =SIMP(statut='f',typ='R' ),
7320          ),
7321          EXCIT_SOL       =FACT(statut='f',min=01,max='**',
7322            DIRECTION       =SIMP(statut='o',typ='R',max='**'),
7323            FONC_SIGNAL     =SIMP(statut='f',typ=fonction ),
7324            NOM_CHAM        =SIMP(statut='f',typ='TXM',defaut="DEPL",
7325                                  into=("DEPL","VITE","ACCE","FORC",) ),
7326          ),
7327          INST_INIT       =SIMP(statut='f',typ='R' ),
7328          INST_FIN        =SIMP(statut='f',typ='R' ),
7329          FREQ_INIT       =SIMP(statut='f',typ='R' ),
7330          FREQ_FIN        =SIMP(statut='f',typ='R' ),
7331          PAS             =SIMP(statut='o',typ='R' ),
7332          UNITE           =SIMP(statut='f',typ='I',defaut= 26 ),
7333          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ),
7334          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
7335 )  ;
7336 #& MODIF COMMANDE  DATE 19/06/2000   AUTEUR DURAND C.DURAND
7337 IMPR_RESU=PROC(nom="IMPR_RESU",op=39,docu="U4.91.01-E",
7338                fr="Impression du résultat d un calcul (différents formats)",
7339          MODELE          =SIMP(statut='f',typ=modele),
7340          RESU            =FACT(statut='o',min=01,max='**',
7341            FORMAT          =SIMP(statut='f',typ='TXM',defaut="RESULTAT",
7342                                  into=("RESULTAT","IDEAS","ASTER","CASTEM","ENSIGHT","MED") ),
7343                                  
7344            b_format_ideas  =BLOC(condition="FORMAT=='IDEAS'",fr="version Ideas",
7345              VERSION         =SIMP(statut='f',typ='I',defaut=5,into=(4,5)),
7346            ),  
7347
7348            b_format_castem =BLOC(condition="FORMAT=='CASTEM'",fr="version Castem",
7349              NIVE_GIBI       =SIMP(statut='f',typ='I',defaut=10,into=(3,10)),
7350            ),
7351            
7352            regles=(AU_MOINS_UN('CHAM_GD','RESULTAT','MAILLAGE'),
7353                    EXCLUS('CHAM_GD','RESULTAT'),),
7354            MAILLAGE        =SIMP(statut='f',typ=(maillage,squelette)),
7355            INFO_MAILLAGE   =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
7356            CHAM_GD         =SIMP(statut='f',typ=cham_gd),
7357            RESULTAT        =SIMP(statut='f',typ=resultat),# CO() sd a creer !!!
7358            
7359            b_extrac        =BLOC(condition="RESULTAT != None",
7360                                  fr="extraction d un champ de grandeur",
7361              regles=(EXCLUS('TOUT_CHAM','NOM_CHAM'),
7362                      EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE','NOEUD_CMP',
7363                             'LIST_INST','LIST_FREQ','LIST_ORDRE','NOM_CAS','ANGL'),),
7364              TOUT_CHAM       =SIMP(statut='f',typ='TXM',into=("OUI","NON") ),
7365              NOM_CHAM        =SIMP(statut='f',typ='TXM',max='**'),
7366              
7367              TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
7368              NUME_ORDRE      =SIMP(statut='f',typ='I',max='**'),
7369              NUME_MODE       =SIMP(statut='f',typ='I',max='**'),
7370              LIST_ORDRE      =SIMP(statut='f',typ=listis),
7371              NOEUD_CMP       =SIMP(statut='f',typ='TXM',max='**'),
7372              NOM_CAS         =SIMP(statut='f',typ='TXM',max='**'),
7373              ANGL            =SIMP(statut='f',typ='R',max='**'),
7374              FREQ            =SIMP(statut='f',typ='R',max='**'),
7375              LIST_FREQ       =SIMP(statut='f',typ=listr8),
7376              INST            =SIMP(statut='f',typ='R',max='**'),
7377              LIST_INST       =SIMP(statut='f',typ=listr8),
7378              
7379              b_acce_reel     =BLOC(condition="(FREQ != None)or(LIST_FREQ != None)or(INST != None)or(LIST_INST != None)",
7380                PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3),
7381                CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
7382              ),
7383            ),
7384
7385            b_parametres    =BLOC(condition="""(RESULTAT != None)and(FORMAT == 'RESULTAT')""",
7386              regles=(EXCLUS('TOUT_PARA','NOM_PARA'),),
7387              INFO_RESU       =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
7388              TOUT_PARA       =SIMP(statut='f',typ='TXM',into=("OUI","NON",) ),
7389              NOM_PARA        =SIMP(statut='f',typ='TXM',max='**'),
7390              FORM_TABL       =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
7391            ),
7392             
7393            b_cmp           =BLOC(condition="""(RESULTAT != None)and((FORMAT == 'RESULTAT')or(FORMAT == 'ENSIGHT'))""",
7394                                  fr="sélection des composantes",
7395              regles=(EXCLUS('TOUT_CMP','NOM_CMP'),),
7396              TOUT_CMP        =SIMP(statut='f',typ='TXM',into=("OUI",) ),
7397              NOM_CMP         =SIMP(statut='f',typ='TXM',max='**'),
7398            ),
7399             
7400            b_topologie       =BLOC(condition="""(RESULTAT != None)and((FORMAT == 'RESULTAT')or(FORMAT == 'IDEAS'))""",
7401                                    fr="sélection des entités toplogiques",
7402              TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
7403              NOEUD           =SIMP(statut='f',typ=no,max='**'),
7404              GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
7405              MAILLE          =SIMP(statut='f',typ=ma,max='**'),
7406              GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
7407            ),
7408            
7409            b_valeurs         =BLOC(condition="(FORMAT == 'RESULTAT')",
7410                                    fr="sélection sur les valeurs",
7411              VALE_MAX        =SIMP(statut='f',typ='TXM',into=("OUI",) ),
7412              VALE_MIN        =SIMP(statut='f',typ='TXM',into=("OUI",) ),
7413              BORNE_SUP       =SIMP(statut='f',typ='R'),
7414              BORNE_INF       =SIMP(statut='f',typ='R'),
7415              IMPR_COOR       =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
7416              FORMAT_R        =SIMP(statut='f',typ='TXM',defaut="1PE12.5"),
7417            ),
7418
7419            SOUS_TITRE      =SIMP(statut='f',typ='TXM',max='**'),
7420            FICHIER         =SIMP(statut='f',typ='TXM'),
7421          ),
7422          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
7423 ) ;
7424 #& MODIF COMMANDE  DATE 18/04/2000   AUTEUR D6BHHBQ B.QUINNEZ 
7425 IMPR_STURM=PROC(nom="IMPR_STURM",op=32,fr="Calculer et imprimer le nombre de valeurs propres dans un intervalle donné",
7426                 docu="U4.52.01-F",
7427          MATR_A          =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r ) ),
7428          MATR_B          =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r ) ),
7429          TYPE_RESU       =SIMP(statut='f',typ='TXM',defaut="DYNAMIQUE",into=("MODE_FLAMB","DYNAMIQUE"),
7430                                fr="Type d analyse" ),
7431          b_dynamique  =BLOC(condition = "TYPE_RESU == 'DYNAMIQUE'",
7432                             fr="Recheche du nombre de fréquences propres",
7433              FREQ_MIN        =SIMP(statut='f',typ='R',defaut= 0.E+0 ,fr="Borne inférieure de l intervalle" ),
7434              FREQ_MAX        =SIMP(statut='o',typ='R',fr="Borne supérieure de l intervalle" ),
7435          ),
7436          b_mode_flamb =BLOC(condition = "TYPE_RESU == 'MODE_FLAMB'",
7437                             fr="Recherche du nombre de charges critiques",
7438              CHAR_CRIT_MIN   =SIMP(statut='o',typ='R',fr="Borne inférieure de l intervalle" ),
7439              CHAR_CRIT_MAX   =SIMP(statut='o',typ='R',fr="Borne supérieure de l intervalle" ),
7440          ),
7441          NPREC_SOLVEUR   =SIMP(statut='f',typ='I',defaut= 8 ),
7442          NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 5 ),
7443          FICHIER         =SIMP(statut='f',typ='TXM',defaut="RESULTAT"),
7444          PREC_SHIFT      =SIMP(statut='f',typ='R',defaut= 1.E-2 ),
7445          SEUIL_FREQ      =SIMP(statut='f',typ='R',defaut= 1.E-2 ),
7446 )  ;
7447 #& MODIF COMMANDE  DATE 22/07/99   AUTEUR CIBHHLV L.VIVAN 
7448 IMPR_TABLE=PROC(nom="IMPR_TABLE",op=155,docu="U4.91.03-C",
7449                 fr="Impression d un concept de type table",
7450          TABLE           =SIMP(statut='o',typ=table),
7451          FICHIER         =SIMP(statut='f',typ='TXM',defaut="RESULTAT", ),
7452          FORMAT          =SIMP(statut='f',typ='TXM',defaut="EXCEL",    
7453                                into=("EXCEL","AGRAF","MOT_CLE","TABLEAU") ),
7454          FILTRE          =FACT(statut='f',min=01,max='**',
7455            NOM_PARA        =SIMP(statut='o',typ='TXM'),  
7456            CRIT_COMP       =SIMP(statut='f',typ='TXM',defaut="EQ",    
7457                                  into=("EQ","LT","GT","NE","LE","GE","VIDE",     
7458                                        "NON_VIDE","MAXI","ABS_MAXI","MINI","ABS_MINI") ),
7459            VALE            =SIMP(statut='f',typ='R'),  
7460            VALE_I          =SIMP(statut='f',typ='I'),  
7461            VALE_C          =SIMP(statut='f',typ='C'),  
7462            VALE_K          =SIMP(statut='f',typ='TXM'),  
7463            VALE_CO         =SIMP(statut='f',typ=geom),
7464            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
7465            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),  
7466          ),
7467          TRI             =FACT(statut='f',min=01,max=01,
7468            NOM_PARA        =SIMP(statut='o',typ='TXM',max='**'),  
7469            ORDRE           =SIMP(statut='f',typ='TXM',max='**',defaut="CROISSANT",    
7470                                  into=("CROISSANT","DECROISSANT") ),
7471          ),
7472          PAGINATION      =SIMP(statut='f',typ='TXM',max='**'),  
7473          FORMAT_R        =SIMP(statut='f',typ='TXM',defaut="1PE12.5"),  
7474          FORMAT_C        =SIMP(statut='f',typ='TXM',defaut="MODULE_PHASE",
7475                                     into=("MODULE_PHASE","REEL_IMAG") ),
7476          NOM_PARA        =SIMP(statut='f',typ='TXM',max='**'),  
7477          TOUT_PARA       =SIMP(statut='f',typ='TXM',into=("OUI",)),
7478          IMPR_FONCTION   =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
7479 )  ;
7480 #& MODIF COMMANDE  DATE 11/02/98   AUTEUR CIBHHLV L.VIVAN 
7481 INCLUDE=MACRO(nom="INCLUDE",op=-1,docu="U4.13.01-e",
7482              fr="Débranchement vers un fichier de commandes secondaires",
7483              sd_prod=ops.INCLUDE,op_init=ops.INCLUDE_context,fichier_ini=1,
7484          UNITE = SIMP(statut='o',typ='I'),
7485          INFO  = SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
7486 );
7487 #& MODIF COMMANDE  DATE 07/02/2001   AUTEUR DURAND C.DURAND 
7488 INCLUDE_MATERIAU=MACRO(nom="INCLUDE_MATERIAU",op=-14,docu="U4.43.02-a",
7489                        fr=" ",
7490          sd_prod=ops.INCLUDE_MATERIAU,op_init=ops.INCLUDE_context,fichier_ini=0,
7491          NOM_AFNOR       =SIMP(statut='o',typ='TXM' ),  
7492          TYPE_MODELE     =SIMP(statut='o',typ='TXM',into=("REF","PAR") ),
7493          VARIANTE        =SIMP(statut='o',typ='TXM',     
7494                                into=("A","B","C","D","E","F","G","H","I","J",    
7495                                      "K","L","M","N","O","P","Q","R","S","T","U","V",   
7496                                      "W","X","Y","Z",) ),
7497          TYPE_VALE       =SIMP(statut='o',typ='TXM',into=("NOMI","MINI","MAXI") ),
7498          NOM_MATER       =SIMP(statut='o',typ='TXM' ),  
7499          UNITE           =SIMP(statut='f',typ='I',defaut= 32 ),  
7500          EXTRACTION      =FACT(statut='f',min=01,max=99,
7501            COMPOR          =SIMP(statut='o',typ='TXM' ),  
7502            TEMP_EVAL       =SIMP(statut='o',typ='R' ),  
7503          ),
7504          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
7505 )  ;
7506 #& MODIF COMMANDE  DATE 08/03/2000   AUTEUR CIBHHPD P.DAVID 
7507 INTE_MAIL_2D=OPER(nom="INTE_MAIL_2D",op=50,sd_prod=courbe,docu="U4.81.11-E",
7508                   fr="Définition d une courbe sur un maillage 2D",reentrant='n',
7509          regles=(EXCLUS('NOEUD_ORIG','GROUP_NO_ORIG'),
7510                  EXCLUS('DEFI_CHEMIN','DEFI_SEGMENT'),
7511                  EXCLUS('DEFI_CHEMIN','DEFI_ARC'),),
7512          MAILLAGE        =SIMP(statut='o',typ=(maillage) ),
7513          TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
7514          GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
7515          MAILLE          =SIMP(statut='f',typ=ma,max='**'),
7516          DEFI_SEGMENT    =FACT(statut='f',min=01,max='**',
7517            regles=(UN_PARMI('ORIGINE','NOEUD_ORIG','GROUP_NO_ORIG'),
7518                    UN_PARMI('EXTREMITE','NOEUD_EXTR','GROUP_NO_EXTR'),),
7519            ORIGINE         =SIMP(statut='f',typ='R',min=2,max=2 ),  
7520            NOEUD_ORIG      =SIMP(statut='f',typ=no,max=1),
7521            GROUP_NO_ORIG   =SIMP(statut='f',typ=grno,max=1),
7522            EXTREMITE       =SIMP(statut='f',typ='R',max='**'),  
7523            NOEUD_EXTR      =SIMP(statut='f',typ=no,max=1),
7524            GROUP_NO_EXTR   =SIMP(statut='f',typ=grno,max=1),
7525          ),
7526          DEFI_ARC        =FACT(statut='f',min=01,max='**',
7527            regles=(UN_PARMI('CENTRE','NOEUD_CENTRE','GROUP_NO_CENTRE'),
7528                    UN_PARMI('RAYON','ORIGINE','NOEUD_ORIG','GROUP_NO_ORIG'),
7529                    UN_PARMI('RAYON','EXTREMITE','NOEUD_EXTR','GROUP_NO_EXTR'),               
7530                    PRESENT_PRESENT('RAYON','SECTEUR'),),
7531            CENTRE          =SIMP(statut='f',typ='R',max='**' ),  
7532            NOEUD_CENTRE    =SIMP(statut='f',typ=no,max=1),
7533            GROUP_NO_CENTRE =SIMP(statut='f',typ=grno,max=1),
7534            RAYON           =SIMP(statut='f',typ='R',max=1),  
7535            SECTEUR         =SIMP(statut='f',typ='R',min=2,max=2),  
7536            ORIGINE         =SIMP(statut='f',typ='R',min=2,max=2),  
7537            NOEUD_ORIG      =SIMP(statut='f',typ=no,max=1),
7538            GROUP_NO_ORIG   =SIMP(statut='f',typ=grno,max=1),
7539            EXTREMITE       =SIMP(statut='f',typ='R',min=2,max=2),  
7540            NOEUD_EXTR      =SIMP(statut='f',typ=no,max=1),
7541            GROUP_NO_EXTR   =SIMP(statut='f',typ=grno,max=1),
7542            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),  
7543            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",    
7544                                  into=("RELATIF","ABSOLU",) ),
7545          ),
7546          DEFI_CHEMIN     =FACT(statut='f',min=01,max='**',
7547            regles=(UN_PARMI('MAILLE','GROUP_MA'),),
7548            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
7549            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
7550          ),
7551          NOEUD_ORIG      =SIMP(statut='f',typ=no,max=1),
7552          GROUP_NO_ORIG   =SIMP(statut='f',typ=grno,max=1),
7553          PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3),  
7554          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
7555 )  ;
7556 #& MODIF COMMANDE  DATE 08/03/2000   AUTEUR CIBHHPD P.DAVID 
7557 INTE_MAIL_3D=OPER(nom="INTE_MAIL_3D",op=96,sd_prod=surface,docu="U4.81.12-E",
7558                   fr="Définition d un chemin sur un maillage 3D",reentrant='n',
7559          MAILLAGE        =SIMP(statut='o',typ=maillage),
7560          TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
7561          GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
7562          MAILLE          =SIMP(statut='f',typ=ma,max='**'),
7563          DEFI_SEGMENT    =FACT(statut='o',min=01,max='**',
7564            regles=(UN_PARMI('ORIGINE','NOEUD_ORIG','GROUP_NO_ORIG'),
7565                    UN_PARMI('EXTREMITE','NOEUD_EXTR','GROUP_NO_EXTR'),),
7566            ORIGINE         =SIMP(statut='f',typ='R',min=3,max=3),  
7567            NOEUD_ORIG      =SIMP(statut='f',typ=no,max=1),
7568            GROUP_NO_ORIG   =SIMP(statut='f',typ=grno,max=1),
7569            EXTREMITE       =SIMP(statut='f',typ='R',min=3,max=3),  
7570            NOEUD_EXTR      =SIMP(statut='f',typ=no,max=1),
7571            GROUP_NO_EXTR   =SIMP(statut='f',typ=grno,max=1),
7572          ),
7573          PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-6),  
7574          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
7575 )  ;
7576 #& MODIF COMMANDE  DATE 02/02/2000   AUTEUR UFBHHGN G.NICOLAS 
7577 def lire_champ_prod(TYPE=None,**args):
7578   if TYPE == "CHAM_NO_TEMP_R" : return cham_no_temp_r
7579   if TYPE == "CHAM_NO_DEPL_R" : return cham_no_depl_r
7580   raise AsException("type de concept resultat non prevu")
7581
7582 LIRE_CHAMP=OPER(nom="LIRE_CHAMP",op= 192,sd_prod=lire_champ_prod,
7583                 fr="Lire un champ dans un fichier et le stocker dans un concept.",
7584                 docu="U7.02.02-A",reentrant='n',
7585 #
7586 # 1. Le maillage support du champ
7587 #
7588          MAILLAGE        =SIMP(statut='o',typ=maillage ),
7589 #
7590 # 2. Format de lecture
7591 #    Remarque : seul MED est operationnel dans cette version.
7592 #
7593          FORMAT          =SIMP(statut='o',typ='TXM',defaut="MED",into=("MED",) ),
7594 #
7595 # 3. L'unite logique du fichier.
7596 #
7597          UNITE           =SIMP(statut='f',typ='I',defaut= 81 ),  
7598  #
7599 # 3. Pour le format MED, il faut preciser le nom sous lequel le champ est connu dans le fichier
7600 #
7601          b_format =BLOC(condition = "FORMAT == 'MED'",
7602                         fr="Nom du champ dans le fichier MED",
7603          NOM_MED         =SIMP(statut='o',typ='TXM' ),),
7604 #
7605 # 4. Le type du concept lu
7606 #
7607          TYPE            =SIMP(statut='o',typ='TXM',into=("CHAM_NO_TEMP_R","CHAM_NO_DEPL_R") ),
7608 #
7609 # 5. Le niveau d'information
7610 #
7611          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
7612 )  ;
7613 #& MODIF COMMANDE  DATE 11/02/98   AUTEUR CIBHHLV L.VIVAN 
7614 LIRE_FONCTION=OPER(nom="LIRE_FONCTION",op=  83,sd_prod=fonction,
7615                    fr="Lecture d une fonction dans un fichier ",
7616                    docu="U4.32.02-E",reentrant='n',
7617          UNITE           =SIMP(statut='o',typ='I' ),
7618          NOM_PARA        =SIMP(statut='f',typ='TXM',
7619                                into=("DX","DY","DZ","DRX","DRY","DRZ","TEMP",
7620                                      "INST","X","Y","Z","EPSI","FREQ","PULS","AMOR","ABSC",) ),
7621          NOM_RESU        =SIMP(statut='f',typ='TXM' ),
7622          INTERPOL        =SIMP(statut='f',typ='TXM',max=02,into=("NON","LIN","LOG") ),
7623          PROL_DROIT      =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ),
7624          PROL_GAUCHE     =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ),
7625          NOM_PARA_FONC   =SIMP(statut='f',typ='TXM',
7626                                into=("DX","DY","DZ","DRX","DRY","DRZ","TEMP",
7627                                      "INST","X","Y","Z","EPSI","FREQ","PULS","AMOR","ABSC",) ),
7628          INTERPOL_FONC   =SIMP(statut='f',typ='TXM',max=02,into=("NON","LIN","LOG") ),
7629          PROL_DROIT_FONC =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ),
7630          PROL_GAUCHE_FONC=SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ),
7631          INFO            =SIMP(statut='f',typ='I',defaut= 2,into=( 1 , 2) ),
7632          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
7633 )  ;
7634 #& MODIF COMMANDE  DATE 11/02/98   AUTEUR SABJLMA P.LATRUBESSE 
7635 LIRE_INTE_SPEC=OPER(nom="LIRE_INTE_SPEC",op= 116,sd_prod=tabl_intsp,
7636                     fr="Lecture sur un fichier externe de  fonctions complexes pour créer une matrice interspectrale",
7637                     docu="U4.36.01-E",reentrant='n',
7638          UNITE           =SIMP(statut='o',typ='I' ),
7639          FORMAT          =SIMP(statut='f',typ='TXM',defaut="MODULE_PHASE",into=("REEL_IMAG","MODULE_PHASE") ),
7640          NOM_PARA        =SIMP(statut='f',typ='TXM',
7641                                into=("DX","DY","DZ","DRX","DRY","DRZ","TEMP",
7642                                      "INST","X","Y","Z","EPSI","FREQ","PULS","AMOR","ABSC",) ),
7643          NOM_RESU        =SIMP(statut='f',typ='TXM' ),
7644          INTERPOL        =SIMP(statut='f',typ='TXM',max=02,into=("NON","LIN","LOG") ),
7645          PROL_DROIT      =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ),
7646          PROL_GAUCHE     =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ),
7647          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
7648          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
7649 )  ;
7650 #& MODIF COMMANDE  DATE 19/06/2000   AUTEUR DURAND C.DURAND 
7651 LIRE_MAILLAGE=OPER(nom="LIRE_MAILLAGE",op=   1,sd_prod=maillage,
7652                    fr="Lecture d un fichier de maillage",
7653                    docu="U4.21.01-F",reentrant='n',
7654          UNITE           =SIMP(statut='f',typ='I',defaut= 20 ),
7655          FORMAT          =SIMP(statut='f',typ='TXM',defaut="ASTER",into=("ASTER","MED") ),
7656          ABSC_CURV       =FACT(statut='f',min=00,max=01,
7657            TOUT            =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
7658          ),
7659          VERI_MAIL       =FACT(statut='d',min=01,max=01,
7660            APLAT           =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),  
7661          ),
7662          INFO_MED        =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
7663          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
7664 )  ;
7665 #& MODIF COMMANDE  DATE 02/10/96   AUTEUR CIBHHLV L.VIVAN 
7666 def lire_miss_3d_prod(TYPE_RESU,**args):
7667   if TYPE_RESU == "TRANS" : return dyna_trans
7668   if TYPE_RESU == "HARMO" : return dyna_harmo
7669   raise AsException("type de concept resultat non prevu")
7670
7671 LIRE_MISS_3D=OPER(nom="LIRE_MISS_3D",op= 163,sd_prod=lire_miss_3d_prod,
7672                   fr="Restitution au format MISS3D d une évolution harmonique ou transitoire",
7673                   docu="U7.02.31-C",reentrant='n',
7674          MACR_ELEM_DYNA  =SIMP(statut='o',typ=macr_elem_dyna ),
7675          UNITE           =SIMP(statut='f',typ='I',defaut= 27 ),
7676          TYPE_RESU       =SIMP(statut='f',typ='TXM',defaut="TRANS",into=("TRANS","HARMO") ),
7677          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
7678 )  ;
7679 #& MODIF COMMANDE  DATE 08/09/98   AUTEUR CIBHHLV L.VIVAN 
7680 LIRE_PLEXUS=OPER(nom="LIRE_PLEXUS",op= 184,sd_prod=evol_char,
7681                  fr=" ",
7682                  docu="U7.02.11-A",reentrant='n',
7683          regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST','LIST_ORDRE'),),
7684          UNITE           =SIMP(statut='f',typ='I',defaut= 19 ),
7685          FORMAT          =SIMP(statut='f',typ='TXM',defaut="IDEAS",into=("IDEAS",)),
7686          MAIL_PLEXUS     =SIMP(statut='o',typ=maillage ),
7687          MAILLAGE        =SIMP(statut='o',typ=maillage ),
7688          MODELE          =SIMP(statut='o',typ=modele ),
7689          TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
7690          NUME_ORDRE      =SIMP(statut='f',typ='I',max='**'),
7691          LIST_ORDRE      =SIMP(statut='f',typ=listis ),
7692          INST            =SIMP(statut='f',typ='R',max='**'),
7693          LIST_INST       =SIMP(statut='f',typ=listr8 ),
7694          b_prec_crit     =BLOC(condition = "LIST_INST != None or INST != None",
7695              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
7696              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",
7697                                    into=("RELATIF","ABSOLU") ),
7698          ),
7699          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
7700 )  ;
7701 #& MODIF COMMANDE  DATE 03/05/2000   AUTEUR CIBHHLV L.VIVAN
7702 def lire_resu_prod(TYPE_RESU,**args):
7703   if TYPE_RESU == "EVOL_CHAR" :  return evol_char
7704   if TYPE_RESU == "EVOL_THER" :  return evol_ther
7705   if TYPE_RESU == "EVOL_ELAS" :  return evol_elas
7706   if TYPE_RESU == "EVOL_NOLI" :  return evol_noli
7707   if TYPE_RESU == "DYNA_TRANS" : return dyna_trans
7708   if TYPE_RESU == "DYNA_HARMO" : return dyna_harmo
7709   if TYPE_RESU == "HARM_GENE" :  return harm_gene
7710   raise AsException("type de concept resultat non prevu")
7711
7712 LIRE_RESU=OPER(nom="LIRE_RESU",op=150,sd_prod=lire_resu_prod,docu="U7.02.01-C",reentrant='n',
7713                fr="Lecture de champs aux noeuds ou par éléments aux noeuds sur un fichier au format universel DEAS ou au format EnSight",
7714          regles=(UN_PARMI('MAILLAGE','MODELE'),),
7715          FORMAT          =SIMP(statut='f',typ='TXM',defaut="IDEAS",into=("IDEAS","ENSIGHT","MED") ),
7716          b_unite         =BLOC(condition="FORMAT=='IDEAS'",
7717            UNITE           =SIMP(statut='f',typ='I',defaut= 19 ),
7718          ),
7719          b_nom_fichier     =BLOC(condition="FORMAT=='ENSIGHT'",
7720            NOM_FICHIER     =SIMP(statut='f',typ='TXM'),
7721          ),
7722          TYPE_RESU       =SIMP(statut='o',typ='TXM',into=("EVOL_THER","EVOL_ELAS","EVOL_NOLI",
7723                                                           "DYNA_TRANS","DYNA_HARMO","HARM_GENE","EVOL_CHAR") ),
7724          b_evol_elas     =BLOC(condition="TYPE_RESU=='EVOL_ELAS'",
7725            NOM_CHAM        =SIMP(statut='o',typ='TXM',max='**',into=("DEPL",) ),
7726          ),
7727          b_evol_ther     =BLOC(condition="TYPE_RESU=='EVOL_THER'",
7728            NOM_CHAM        =SIMP(statut='o',typ='TXM',max='**',into=("TEMP","TEMP_PEAU") ),
7729          ),
7730          b_evol_char     =BLOC(condition="TYPE_RESU=='EVOL_CHAR'",
7731            NOM_CHAM        =SIMP(statut='o',typ='TXM',max='**',into=("PRES",) ),
7732          ),
7733          b_evol_noli     =BLOC(condition="TYPE_RESU=='EVOL_NOLI'",
7734            NOM_CHAM        =SIMP(statut='o',typ='TXM',max='**',into=("DEPL","VITE","ACCE","VARI_ELNO","SIEF_ELNO","EPSA_ELNO") ),
7735          ),
7736          b_dyna          =BLOC(condition="(TYPE_RESU=='DYNA_TRANS') or (TYPE_RESU=='DYNA_HARMO') or(TYPE_RESU=='HARM_GENE')",
7737            NOM_CHAM        =SIMP(statut='o',typ='TXM',max='**',into=("DEPL","VITE","ACCE",) ),
7738          ),
7739          INFO            =SIMP(statut='f',typ='I',into=(1,2) ),
7740          MAILLAGE        =SIMP(statut='f',typ=maillage),
7741          MODELE          =SIMP(statut='f',typ=modele),
7742          NB_VARI         =SIMP(statut='f',typ='I' ),
7743          FORMAT_IDEAS    =FACT(statut='f',min=01,max='**',
7744            regles=(UN_PARMI('POSI_INST','POSI_FREQ'),),
7745            NOM_CHAM        =SIMP(statut='o',typ='TXM',max='**',into=("TEMP","DEPL","VITE","ACCE","PRES","VARI_ELNO",
7746                                                                      "SIEF_ELNO","EPSA_ELNO","TEMP_PEAU") ),
7747            NUME_DATASET    =SIMP(statut='f',typ='I',into=(55,57,2414) ),
7748            RECORD_3        =SIMP(statut='f',typ='I',max='**'),
7749            RECORD_6        =SIMP(statut='f',typ='I',max='**'),
7750            RECORD_9        =SIMP(statut='f',typ='I',max='**'),
7751            POSI_ORDRE      =SIMP(statut='o',typ='I',max='**'),
7752            POSI_INST       =SIMP(statut='f',typ='I',max='**'),
7753            POSI_FREQ       =SIMP(statut='f',typ='I',max='**'),
7754            NOM_CMP         =SIMP(statut='o',typ='TXM',max='**'),
7755          ),
7756          b_extrac        =BLOC(condition="1",fr="accès à un champ dans la structure de données résultat",
7757            regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST','FREQ','LIST_FREQ'),),
7758            TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
7759            NUME_ORDRE      =SIMP(statut='f',typ='I',max='**'),
7760            INST            =SIMP(statut='f',typ='R',max='**'),
7761            LIST_INST       =SIMP(statut='f',typ=listr8),
7762            LIST_ORDRE      =SIMP(statut='f',typ=listis),
7763            FREQ            =SIMP(statut='f',typ='R',max='**'),
7764            LIST_FREQ       =SIMP(statut='f',typ=listr8),
7765              
7766            b_acce_reel     =BLOC(condition="(INST != None)or(LIST_INST != None)or(FREQ != None)or(LIST_FREQ != None)",
7767              PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3),
7768              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
7769            ),
7770          ),
7771          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
7772 )  ;
7773 #& MODIF COMMANDE  DATE 19/06/2000   AUTEUR DURAND C.DURAND 
7774 def macr_adap_mail_prod(self,MAJ_CHAMP,ADAPTATION,**args):
7775   mail1=ADAPTATION['MAILLAGE_N']
7776   self.type_sdprod(mail1,maillage)
7777   mail2=ADAPTATION['MAILLAGE_NP1']
7778   self.type_sdprod(mail2,maillage)
7779   if MAJ_CHAMP == None:return None
7780   for ch in MAJ_CHAMP:
7781     t=ch['TYPE_CHAMP']
7782     if t == 'CHAM_NO_TEMP_R':self.type_sdprod(ch['CHAMP_MAJ'],cham_no_temp_r)
7783     if t == 'CHAM_NO_DEPL_R':self.type_sdprod(ch['CHAMP_MAJ'],cham_no_depl_r)
7784   return None
7785
7786 MACR_ADAP_MAIL=MACRO(nom="MACR_ADAP_MAIL",op=-24,sd_prod=macr_adap_mail_prod,
7787                      fr="Adapter un maillage avec le logiciel HOMARD.",
7788                      docu="U7.03.01-A",
7789          VERSION_HOMARD  =SIMP(statut='f',typ='TXM',defaut="V3_15",    
7790                                into=("V3_15","V3_N","V3_N_PERSO",) ),
7791          ADAPTATION      =FACT(statut='o',min=01,max=01,
7792            regles=(
7793                    UN_PARMI('LIBRE','UNIFORME'),
7794                   ),
7795            LIBRE           =SIMP(statut='f',typ='TXM',
7796                                  into=("RAFF_DERA","RAFFINEMENT","DERAFFINEMENT") ),
7797            UNIFORME        =SIMP(statut='f',typ='TXM',
7798                                  into=("RAFFINEMENT","DERAFFINEMENT","RIEN") ),
7799            MAILLAGE_N      =SIMP(statut='o',typ=(CO,maillage) ),
7800            MAILLAGE_NP1    =SIMP(statut='o',typ=(CO,maillage) ),
7801            b_adaptation_libre   =BLOC( condition = " LIBRE != None " ,
7802                            fr="Indicateur d erreur",
7803                            RESULTAT_N      =SIMP(statut='o',typ=(evol_elas,evol_noli,evol_ther ) ),
7804                            INDICATEUR      =SIMP(statut='o',typ='TXM',     
7805                                                  into=("ERRE_ELEM_NOZ1","ERRE_ELEM_NOZ2","ERRE_ELGA_NORE") ),
7806                            NOM_CMP_INDICA  =SIMP(statut='f',typ='TXM',defaut="ERREST",    
7807                                                  into=("ERREST","NUEST") ),
7808                            NUME_ORDRE      =SIMP(statut='f',typ='I' ),  
7809                            ) ,
7810            b_raffinement_libre   =BLOC( condition = "( LIBRE == 'RAFF_DERA' ) or ( LIBRE == 'RAFFINEMENT' )" ,
7811                            fr="Critère de raffinement.",
7812                            regles=(UN_PARMI ( 'CRIT_RAFF_ABS', 'CRIT_RAFF_REL', 'CRIT_RAFF_PE' ),),
7813                            CRIT_RAFF_ABS   =SIMP(statut='f',typ='R' ),  
7814                            CRIT_RAFF_REL   =SIMP(statut='f',typ='R' ),  
7815                            CRIT_RAFF_PE    =SIMP(statut='f',typ='R' ),  
7816                            ) ,
7817            b_deraffinement_libre   =BLOC ( condition = "( LIBRE == 'RAFF_DERA' ) or ( LIBRE == 'DERAFFINEMENT' )" ,
7818                              fr="Crit\350re de déraffinement.",
7819                              regles=(UN_PARMI ( 'CRIT_DERA_ABS', 'CRIT_DERA_REL', 'CRIT_DERA_PE' ),),
7820                              CRIT_DERA_ABS   =SIMP(statut='f',typ='R' ),  
7821                              CRIT_DERA_REL   =SIMP(statut='f',typ='R' ),  
7822                              CRIT_DERA_PE    =SIMP(statut='f',typ='R' ),  
7823                            ) ,
7824            b_raffinement =BLOC ( condition = " ( ( LIBRE == 'RAFF_DERA' ) or ( LIBRE == 'RAFFINEMENT' ) ) or ( ( UNIFORME != None ) and ( UNIFORME == 'RAFFINEMENT' ) ) " ,
7825                              NIVE_MAX        =SIMP(statut='f',typ='I' ),  
7826                            ) ,
7827            b_deraffinement =BLOC ( condition = " ( ( LIBRE == 'RAFF_DERA' ) or ( LIBRE == 'DERAFFINEMENT' ) ) or ( ( UNIFORME != None ) and ( UNIFORME == 'DERAFFINEMENT' ) ) " ,
7828                              NIVE_MIN        =SIMP(statut='f',typ='I' ),
7829                            ) ,
7830          ),
7831          MAJ_CHAMP       =FACT(statut='f',min=01,max='**',
7832            RESULTAT        =SIMP(statut='o',
7833                                  typ=(evol_elas,evol_noli,evol_ther) ),
7834            NOM_CHAM        =SIMP(statut='o',typ='TXM' ),  
7835            NUME_ORDRE      =SIMP(statut='f',typ='I' ),  
7836            CHAMP_MAJ       =SIMP(statut='o',typ=(CO,cham_gd)),
7837            TYPE_CHAMP      =SIMP(statut='o',typ='TXM',     
7838                                  into=("CHAM_NO_TEMP_R","CHAM_NO_DEPL_R") ),
7839          ),
7840          QUALITE         =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
7841          INTERPENETRATION=SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
7842          MENAGE          =SIMP(statut='f',typ='TXM',into=("MAILLAGE","SOLUTION","TOUT") ),
7843          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
7844 )  ;
7845 #& MODIF COMMANDE  DATE 20/10/2000   AUTEUR F1BHHAJ J.ANGLES 
7846 def macr_ascouf_calc_prod(self,MODELE,**args):
7847   self.type_sdprod(MODELE,modele)
7848   return evol_noli
7849
7850 MACR_ASCOUF_CALC=MACRO(nom="MACR_ASCOUF_CALC",op= -20,sd_prod=macr_ascouf_calc_prod,
7851                       fr=" ",
7852                       docu="U4.CF.20-A",reentrant='n',
7853          regles=(UN_PARMI('COMP_INCR','COMP_ELAS'),),
7854          TYPE_MAILLAGE   =SIMP(statut='o',typ='TXM',     
7855                                into=("SAIN",
7856                                      "FISS_COUDE",
7857                                      "SOUS_EPAIS_COUDE"
7858                                      ) ),
7859          CL_BOL_P2_GV    =FACT(statut='f',min=01,max=01,
7860            ANGLE           =SIMP(statut='o',typ='R' ),  
7861            AZIMUT          =SIMP(statut='f',typ='R',defaut= 90. ),  
7862          ),
7863          MAILLAGE        =SIMP(statut='o',typ=maillage ),
7864          MODELE          =SIMP(statut='o',typ=(CO,modele)),
7865          AFFE_MATERIAU   =FACT(statut='o',min=01,max=03,
7866            regles=(UN_PARMI('TOUT','GROUP_MA'),),
7867            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
7868            GROUP_MA        =SIMP(statut='f',typ='TXM',into=("COUDE","BOL") ),
7869            MATER           =SIMP(statut='o',typ=mater ),
7870            TEMP_REF        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),  
7871          ),
7872          PRES_REP        =FACT(statut='f',min=01,max=01,
7873            PRES            =SIMP(statut='o',typ='R' ),  
7874            EFFE_FOND_P1    =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
7875            FONC_MULT       =SIMP(statut='f',typ=fonction ),
7876          ),
7877          ECHANGE         =FACT(statut='f',min=01,max=01,
7878            COEF_H          =SIMP(statut='f',typ=fonction ),
7879            TEMP_EXT        =SIMP(statut='f',typ=fonction ),
7880          ),
7881          TORS_P1         =FACT(statut='f',min=01,max=06,
7882            regles=(AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),),
7883            FX              =SIMP(statut='f',typ='R' ),  
7884            FY              =SIMP(statut='f',typ='R' ),  
7885            FZ              =SIMP(statut='f',typ='R' ),  
7886            MX              =SIMP(statut='f',typ='R' ),  
7887            MY              =SIMP(statut='f',typ='R' ),  
7888            MZ              =SIMP(statut='f',typ='R' ),  
7889            FONC_MULT       =SIMP(statut='f',typ=fonction ),
7890          ),
7891          COMP_INCR       =FACT(statut='f',min=01,max=01,
7892            RELATION        =SIMP(statut='o',typ='TXM',into=("VMIS_ISOT_TRAC",) ),
7893            VMIS_ISOT_TRAC  =SIMP(statut='c',typ='I',defaut= 2,into=( 2 ,) ),
7894          ),
7895          COMP_ELAS       =FACT(statut='f',min=01,max=01,
7896            RELATION        =SIMP(statut='o',typ='TXM',into=("ELAS","ELAS_VMIS_TRAC") ),
7897            ELAS            =SIMP(statut='c',typ='I',defaut= 1,into=( 1 ,) ),
7898            ELAS_VMIS_TRAC  =SIMP(statut='c',typ='I',defaut= 1,into=( 1 ,) ),
7899          ),
7900          SOLVEUR         =FACT(statut='d',min=01,max=01,
7901            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
7902            b_mult_front    =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
7903              RENUM           =SIMP(statut='f',typ='TXM',defaut="MDA",into=("MD","MDA","METIS") ),
7904            ),
7905            b_ldlt         =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT",
7906              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
7907              TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400. ),
7908            ),
7909            b_ldlt_mult    =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
7910                                    fr="Paramètres relatifs à la non inversibilité de la matrice à factorise",
7911              NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
7912              STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),             
7913            ),
7914            b_gcpc         =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué",
7915              PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC","SANS","DIAG") ),
7916              NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ),
7917              RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
7918              NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
7919              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
7920            ),
7921 #  A quoi sert eps           
7922            EPS             =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
7923            SYME            =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
7924          ),
7925          CONVERGENCE     =FACT(statut='d',min=01,max=01,
7926            RESI_GLOB_MAXI  =SIMP(statut='f',typ='R'),  
7927            RESI_GLOB_RELA  =SIMP(statut='f',typ='R'),  
7928            ITER_GLOB_MAXI  =SIMP(statut='f',typ='I',defaut=10),  
7929            ARRET           =SIMP(statut='f',typ='TXM',defaut="OUI"),  
7930            RESI_INTE_RELA  =SIMP(statut='f',typ='R'     
7931                                 ,defaut= 1.0E-6),  
7932            ITER_INTE_MAXI  =SIMP(statut='f',typ='I',defaut= 10 ),  
7933            ITER_INTE_PAS   =SIMP(statut='f',typ='I',defaut= 0 ),  
7934            TYPE_MATR_COMP  =SIMP(statut='f',typ='TXM',defaut="TANG_VIT",into=("TANG_VIT",)),
7935            RESO_INTE       =SIMP(statut='f',typ='TXM',defaut="IMPLICITE",into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")),
7936          ),
7937          NEWTON          =FACT(statut='d',min=01,max=01,
7938            REAC_INCR       =SIMP(statut='f',typ='I',defaut= 1 ),  
7939            PREDICTION      =SIMP(statut='f',typ='TXM',into=("DEPL_CALCULE","TANGENTE","ELASTIQUE","EXTRAPOL") ),
7940            MATRICE         =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE") ),
7941            REAC_ITER       =SIMP(statut='f',typ='I',defaut=0),  
7942            EVOL_NOLI       =SIMP(statut='f',typ=evol_noli),
7943          ),
7944          RECH_LINEAIRE   =FACT(statut='f',min=01,max=01,
7945            RESI_LINE_RELA  =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),  
7946            ITER_LINE_MAXI  =SIMP(statut='f',typ='I',defaut= 3),  
7947          ),
7948          INCREMENT       =FACT(statut='o',min=01,max=01,
7949            LIST_INST       =SIMP(statut='o',typ=listr8 ),
7950            NUME_INST_INIT  =SIMP(statut='f',typ='I' ),  
7951            NUME_INST_FIN   =SIMP(statut='f',typ='I' ),  
7952          ),
7953          THETA_3D        =FACT(statut='f',min=01,max='**',
7954            R_INF           =SIMP(statut='o',typ='R' ),  
7955            R_SUP           =SIMP(statut='o',typ='R' ),  
7956          ),
7957          IMPR_TABLE      =FACT(statut='f',min=01,max=01,
7958            regles=(UN_PARMI('TOUT_PARA','NOM_PARA', ),
7959             PRESENT_PRESENT('TOUT_PARA','ANGLE',    ),
7960                    UN_PARMI('POSI_CURV_LONGI','POSI_ANGUL',),),
7961            NOM_PARA        =SIMP(statut='f',typ='TXM',max=04,     
7962                                  into=("TRESCA_MEMBRANE",
7963                                        "TRESCA_MFLE",
7964                                        "TRESCA",
7965                                        "SI_LONG"
7966                                        ) ),
7967            TOUT_PARA       =SIMP(statut='f',typ='TXM',into=("OUI",) ),
7968            ANGLE           =SIMP(statut='f',typ='R',max='**' ),
7969            R_CINTR         =SIMP(statut='f',typ='R',max='**' ),
7970            POSI_CURV_LONGI =SIMP(statut='f',typ='R',max='**' ),
7971            POSI_ANGUL      =SIMP(statut='f',typ='R',max='**' ),
7972          ),
7973          IMPRESSION      =FACT(statut='f',min=01,max=01,
7974            FORMAT          =SIMP(statut='f',typ='TXM',defaut="RESULTAT",   
7975                                  into=("RESULTAT","ASTER","IDEAS","CASTEM") ),
7976            VERSION         =SIMP(statut='f',typ='I',defaut= 5,into=(4,5) ),
7977          ),
7978          TITRE           =SIMP(statut='f',typ='TXM' ),  
7979          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
7980 )  ;
7981 #& MODIF COMMANDE  DATE 02/10/2000   AUTEUR F1BHHAJ J.ANGLES 
7982 MACR_ASCOUF_MAIL=MACRO(nom="MACR_ASCOUF_MAIL",op= -19,sd_prod=maillage,
7983                       fr=" ",docu="U4.CF.10-A",reentrant='n',
7984          regles=(EXCLUS('SOUS_EPAIS_COUDE','FISS_COUDE','SOUS_EPAIS_MULTI'),),
7985          EXEC_MAILLAGE   =FACT(statut='o',min=01,max=01,
7986            LOGICIEL        =SIMP(statut='o',typ='TXM',into=("GIBI",) ),
7987            UNITE_DATG      =SIMP(statut='f',typ='I',defaut=70),  
7988            UNITE_MGIB      =SIMP(statut='f',typ='I',defaut=19),  
7989            NIVE_GIBI       =SIMP(statut='f',typ='I',defaut=10,into=(3,4,5,6,7,8,9,10,11)),
7990          ),
7991          TYPE_ELEM       =SIMP(statut='f',typ='TXM',defaut="CU20",into=("CU20","CUB8") ),
7992          COUDE           =FACT(statut='o',min=01,max=01,
7993            regles=(   UN_PARMI('DEXT', 'DEXT_T1'),
7994                       ENSEMBLE('DEXT', 'EPAIS'),
7995                       ENSEMBLE('DEXT_T1', 'EPAIS_T1', 'EPAIS_T2',
7996                                'ANGL_TETA1'),
7997                       ENSEMBLE('EPAIS_TI', 'ANGL_TETA2'),
7998                 PRESENT_ABSENT('ABSC_CURV_TRAN', 'POSI_ANGU_TRAN'),
7999                PRESENT_PRESENT('ABSC_CURV_TRAN', 'DEXT_T1'),
8000                PRESENT_PRESENT('POSI_ANGU_TRAN', 'DEXT_T1'),
8001                PRESENT_PRESENT('EPAIS_TI', 'DEXT_T1'),
8002                 PRESENT_ABSENT('DEXT_T1', 'SUR_EPAIS'),
8003                 PRESENT_ABSENT('DEXT_T1', 'BOL_P2'),),
8004            ANGLE           =SIMP(statut='o',typ='R' ),  
8005            R_CINTR         =SIMP(statut='o',typ='R' ),  
8006            L_TUBE_P1       =SIMP(statut='o',typ='R' ),  
8007            L_TUBE_P2       =SIMP(statut='f',typ='R',defaut= 0.E+0 ),  
8008            SUR_EPAIS       =SIMP(statut='f',typ='R',defaut= 0.E+0 ),  
8009            BOL_P2          =SIMP(statut='f',typ='TXM',into=("ASP_MPP","CUVE","GV") ),
8010            NB_ELEM_EPAIS   =SIMP(statut='f',typ='I',defaut= 3 ),  
8011            SYME            =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
8012            TRANSFORMEE     =SIMP(statut='f',typ='TXM',defaut="COUDE",into=("COUDE","TUBE") ),
8013            TRAN_EPAIS      =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
8014            DEXT            =SIMP(statut='f',typ='R' ),  
8015            EPAIS           =SIMP(statut='f',typ='R' ),  
8016            DEXT_T1         =SIMP(statut='f',typ='R' ),  
8017            EPAIS_T1        =SIMP(statut='f',typ='R' ),  
8018            EPAIS_T2        =SIMP(statut='f',typ='R' ),  
8019            EPAIS_TI        =SIMP(statut='f',typ='R' ),  
8020            ANGL_TETA1      =SIMP(statut='f',typ='R' ),  
8021            ANGL_TETA2      =SIMP(statut='f',typ='R' ),  
8022            ABSC_CURV_TRAN  =SIMP(statut='f',typ='R' ),  
8023            POSI_ANGU_TRAN  =SIMP(statut='f',typ='R' ),  
8024          ),
8025          SOUS_EPAIS_COUDE=FACT(statut='f',min=01,max=01,
8026            regles=(UN_PARMI('POSI_CURV_LONGI','POSI_ANGUL'),
8027                    UN_PARMI('POSI_CURV_CIRC','AZIMUT'),),
8028            TYPE            =SIMP(statut='o',typ='TXM',into=("AXIS","ELLI") ),
8029            AXE_CIRC        =SIMP(statut='f',typ='R' ),  
8030            AXE_LONGI       =SIMP(statut='o',typ='R' ),  
8031            PROFONDEUR      =SIMP(statut='o',typ='R' ),  
8032            POSI_CURV_LONGI =SIMP(statut='f',typ='R' ),  
8033            POSI_ANGUL      =SIMP(statut='f',typ='R' ),  
8034            POSI_CURV_CIRC  =SIMP(statut='f',typ='R' ),  
8035            AZIMUT          =SIMP(statut='f',typ='R' ),  
8036            SOUS_EPAIS      =SIMP(statut='o',typ='TXM',into=("INTERNE","EXTERNE") ),
8037            NB_ELEM_LONGI   =SIMP(statut='o',typ='I' ),  
8038            NB_ELEM_CIRC    =SIMP(statut='o',typ='I' ),  
8039            NB_ELEM_RADI    =SIMP(statut='f',typ='I',defaut= 3 ),  
8040            EMPREINTE       =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
8041          ),
8042          SOUS_EPAIS_MULTI=FACT(statut='f',min=01,max='**',
8043            regles=(UN_PARMI('POSI_CURV_LONGI','POSI_ANGUL'),
8044                    UN_PARMI('POSI_CURV_CIRC','AZIMUT'),),
8045            TYPE            =SIMP(statut='o',typ='TXM',into=("AXIS","ELLI") ),
8046            AXE_CIRC        =SIMP(statut='f',typ='R' ),  
8047            AXE_LONGI       =SIMP(statut='o',typ='R' ),  
8048            PROFONDEUR      =SIMP(statut='o',typ='R' ),  
8049            POSI_CURV_LONGI =SIMP(statut='f',typ='R' ),  
8050            POSI_ANGUL      =SIMP(statut='f',typ='R' ),  
8051            POSI_CURV_CIRC  =SIMP(statut='f',typ='R' ),  
8052            AZIMUT          =SIMP(statut='f',typ='R' ),  
8053            SOUS_EPAIS      =SIMP(statut='o',typ='TXM',into=("INTERNE","EXTERNE") ),
8054            NB_ELEM_LONGI   =SIMP(statut='o',typ='I' ),  
8055            NB_ELEM_CIRC    =SIMP(statut='o',typ='I' ),  
8056            EMPREINTE       =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
8057          ),
8058          FISS_COUDE      =FACT(statut='f',min=01,max=01,
8059            regles=(UN_PARMI('ABSC_CURV','POSI_ANGUL'),),
8060            AXIS            =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON" ),  
8061            PROFONDEUR      =SIMP(statut='o',typ='R' ),  
8062            LONGUEUR        =SIMP(statut='o',typ='R' ),  
8063            ABSC_CURV       =SIMP(statut='f',typ='R' ),  
8064            POSI_ANGUL      =SIMP(statut='f',typ='R' ),  
8065            FISSURE         =SIMP(statut='o',typ='TXM',into=("DEB_INT","DEB_EXT") ),
8066            AZIMUT          =SIMP(statut='f',typ='R',defaut= 90. ),  
8067            ORIEN           =SIMP(statut='o',typ='R',
8068                                  into=(45.,-45.,90.,0.E+0) ),
8069            NB_TRANCHE      =SIMP(statut='o',typ='I' ),  
8070            NB_SECTEUR      =SIMP(statut='o',typ='I' ),  
8071            NB_COURONNE     =SIMP(statut='o',typ='I' ),  
8072            RAYON_TORE      =SIMP(statut='f',typ='R' ),  
8073            COEF_MULT_RC2   =SIMP(statut='f',typ='R',defaut= 1. ),  
8074            COEF_MULT_RC3   =SIMP(statut='f',typ='R' ),  
8075            ANGL_OUVERTURE  =SIMP(statut='f',typ='R',defaut= 0.5 ),  
8076          ),
8077          IMPRESSION      =FACT(statut='f',min=01,max='**',
8078            regles=(PRESENT_PRESENT('FICHIER','UNITE'),),
8079            FORMAT          =SIMP(statut='f',typ='TXM',defaut="ASTER",   
8080                                  into=("ASTER","IDEAS","CASTEM") ),
8081            FICHIER         =SIMP(statut='f',typ='TXM' ),  
8082            UNITE           =SIMP(statut='f',typ='I' ),  
8083            VERSION         =SIMP(statut='f',typ='I',defaut= 5,into=(4,5) ),
8084            NIVE_GIBI       =SIMP(statut='f',typ='I',defaut= 10,into=(3,10) ),
8085          ),
8086          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
8087 )  ;
8088 #& MODIF COMMANDE  DATE 20/10/2000   AUTEUR F1BHHAJ J.ANGLES 
8089 def macr_aspic_calc_prod(self,RESU_THER,MODELE,**args):
8090   if MODELE != None:self.type_sdprod(MODELE,modele)
8091   if RESU_THER != None:self.type_sdprod(RESU_THER,evol_ther)
8092   return evol_noli
8093
8094 MACR_ASPIC_CALC=MACRO(nom="MACR_ASPIC_CALC",op=-17,sd_prod=macr_aspic_calc_prod,
8095                     fr=" ",docu="U4.PC.20-A",reentrant='n',
8096          TYPE_MAILLAGE   =SIMP(statut='o',typ='TXM',
8097                                into=("SAIN_FIN","SAIN_GROS","FISS_COUR_DEB","FISS_COUR_NONDEB","FISS_LONG_DEB",
8098                                      "FISS_LONG_NONDEB","FISS_AXIS_DEB","FISS_AXIS_NONDEB") ),
8099          TUBULURE        =FACT(statut='f',min=01,max=01,
8100            TYPE            =SIMP(statut='f',typ='TXM',defaut="TYPE_1",into=("TYPE_1","TYPE_2") ),
8101          ),
8102          MAILLAGE        =SIMP(statut='o',typ=maillage),
8103          MODELE          =SIMP(statut='f',typ=(CO,modele)),
8104          RESU_THER       =SIMP(statut='f',typ=(CO,evol_ther)),
8105          AFFE_MATERIAU   =FACT(statut='o',min=01,max=03,
8106            regles=(UN_PARMI('TOUT','GROUP_MA'),),
8107            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",)),
8108            GROUP_MA        =SIMP(statut='f',typ='TXM',into=("TUBU","CORP","SOUD","SOUDCORP","SOUDTUBU") ),
8109            MATER           =SIMP(statut='o',typ=mater),
8110            TEMP_REF        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),  
8111          ),
8112          EQUILIBRE       =FACT(statut='o',min=01,max=01,
8113            NOEUD           =SIMP(statut='o',typ=no),
8114          ),
8115          PRES_REP        =FACT(statut='o',min=01,max=01,
8116            PRES            =SIMP(statut='o',typ='R'),  
8117            NOEUD           =SIMP(statut='f',typ=no),
8118            EFFE_FOND       =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")),
8119            FONC_MULT       =SIMP(statut='f',typ=fonction),
8120          ),
8121          ECHANGE         =FACT(statut='f',min=01,max=01,
8122            COEF_H_TUBU     =SIMP(statut='o',typ=fonction),
8123            COEF_H_CORP     =SIMP(statut='o',typ=fonction),
8124            TEMP_EXT        =SIMP(statut='o',typ=fonction),
8125          ),
8126          TORS_CORP       =FACT(statut='f',min=01,max=06,
8127            regles=(AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),),
8128            NOEUD           =SIMP(statut='o',typ=no),
8129            FX              =SIMP(statut='f',typ='R'),  
8130            FY              =SIMP(statut='f',typ='R'),  
8131            FZ              =SIMP(statut='f',typ='R'),  
8132            MX              =SIMP(statut='f',typ='R'),  
8133            MY              =SIMP(statut='f',typ='R'),  
8134            MZ              =SIMP(statut='f',typ='R'),  
8135            FONC_MULT       =SIMP(statut='f',typ=fonction),
8136          ),
8137          TORS_TUBU       =FACT(statut='f',min=01,max=06,
8138            regles=(AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),),
8139            FX              =SIMP(statut='f',typ='R'),  
8140            FY              =SIMP(statut='f',typ='R'),  
8141            FZ              =SIMP(statut='f',typ='R'),  
8142            MX              =SIMP(statut='f',typ='R'),  
8143            MY              =SIMP(statut='f',typ='R'),  
8144            MZ              =SIMP(statut='f',typ='R'),  
8145            FONC_MULT       =SIMP(statut='f',typ=fonction),
8146          ),
8147          COMP_ELAS       =FACT(statut='o',min=01,max=01,
8148            RELATION        =SIMP(statut='o',typ='TXM',into=("ELAS","ELAS_VMIS_TRAC")),
8149            ELAS            =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
8150            ELAS_VMIS_TRAC  =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
8151          ),
8152          THETA_3D        =FACT(statut='f',min=01,max='**',
8153            R_INF           =SIMP(statut='o',typ='R'),  
8154            R_SUP           =SIMP(statut='o',typ='R'),  
8155          ),
8156          OPTION          =SIMP(statut='f',typ='TXM',into=("CALC_G_MAX",) ),
8157          BORNES          =FACT(statut='f',min=01,max='**',
8158            NUME_ORDRE      =SIMP(statut='o',typ='I'),  
8159            VALE_MIN        =SIMP(statut='o',typ='R'),  
8160            VALE_MAX        =SIMP(statut='o',typ='R'),  
8161          ),
8162          SOLVEUR         =FACT(statut='d',min=01,max=01,
8163            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
8164            b_mult_front    =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
8165              RENUM           =SIMP(statut='f',typ='TXM',defaut="MDA",into=("MD","MDA","METIS") ),
8166            ),
8167            b_ldlt          =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT",
8168              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
8169              TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400. ),
8170            ),
8171            b_ldlt_mult     =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
8172                                    fr="Paramètres relatifs à la non iversibilité de la matrice à factorise",
8173              NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
8174              STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
8175            ),
8176            b_gcpc          =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué",
8177              PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC","SANS","DIAG") ),
8178              NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ),
8179              RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
8180              NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
8181              SYME            =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
8182              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
8183            ),
8184          ),
8185          CONVERGENCE     =FACT(statut='d',min=01,max=01,
8186            RESI_GLOB_MAXI  =SIMP(statut='f',typ='R'),  
8187            RESI_GLOB_RELA  =SIMP(statut='f',typ='R'),  
8188            ITER_GLOB_MAXI  =SIMP(statut='f',typ='I',defaut=10),  
8189            ARRET           =SIMP(statut='f',typ='TXM',defaut="OUI"),  
8190            RESI_INTE_RELA  =SIMP(statut='f',typ='R',defaut=1.0E-6),  
8191            ITER_INTE_MAXI  =SIMP(statut='f',typ='I',defaut=10),  
8192            ITER_INTE_PAS   =SIMP(statut='f',typ='I',defaut=0),  
8193            TYPE_MATR_COMP  =SIMP(statut='f',typ='TXM',defaut="TANG_VIT",into=("TANG_VIT",)),
8194            RESO_INTE       =SIMP(statut='f',typ='TXM',defaut="IMPLICITE",into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")),
8195          ),
8196          NEWTON          =FACT(statut='d',min=01,max=01,
8197            REAC_INCR       =SIMP(statut='f',typ='I',defaut=1),  
8198            PREDICTION      =SIMP(statut='f',typ='TXM',into=("TANGENTE","ELASTIQUE","EXTRAPOL","DEPL_CALCULE")),
8199            MATRICE         =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE")),
8200            REAC_ITER       =SIMP(statut='f',typ='I',defaut= 0),  
8201          ),
8202          RECH_LINEAIRE   =FACT(statut='d',min=01,max=01,
8203            RESI_LINE_RELA  =SIMP(statut='f',typ='R',defaut=1.0E-3),  
8204            ITER_LINE_MAXI  =SIMP(statut='f',typ='I',defaut=3),  
8205          ),
8206          INCREMENT       =FACT(statut='o',min=01,max=01,
8207            LIST_INST       =SIMP(statut='o',typ=listr8),
8208            NUME_INST_INIT  =SIMP(statut='f',typ='I'),  
8209            NUME_INST_FIN   =SIMP(statut='f',typ='I'),  
8210          ),
8211          PAS_AZIMUT      =SIMP(statut='f',typ='I',defaut=1),  
8212          IMPRESSION      =FACT(statut='f',min=01,max=01,
8213            FORMAT          =SIMP(statut='f',typ='TXM',defaut="RESULTAT",into=("RESULTAT","ASTER","CASTEM","IDEAS")),
8214            VERSION         =SIMP(statut='f',typ='I',defaut=5,into=(4,5)),
8215            NIVE_GIBI       =SIMP(statut='f',typ='I',defaut=10,into=(3,10)),
8216          ),
8217          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
8218          TITRE           =SIMP(statut='f',typ='TXM'),  
8219 )  ;
8220 #& MODIF COMMANDE  DATE 01/02/2000   AUTEUR CIBHHBC B.CIREE 
8221 MACR_ASPIC_MAIL=MACRO(nom="MACR_ASPIC_MAIL",op= -16,sd_prod=maillage,reentrant='n',
8222                     fr=" ",docu="U4.PC.10-A",
8223          TYPE_ELEM       =SIMP(statut='f',typ='TXM',defaut="CU20",into=("CU20","CUB8")),
8224          RAFF_MAIL       =SIMP(statut='f',typ='TXM',defaut="GROS",into=("GROS","FIN")),
8225          EXEC_MAILLAGE   =FACT(statut='o',min=01,max=01,
8226            LOGICIEL        =SIMP(statut='o',typ='TXM',into=("GIBI",)),
8227            UNITE_DATG      =SIMP(statut='f',typ='I',defaut=70),  
8228            UNITE_MGIB      =SIMP(statut='f',typ='I',defaut=19),  
8229            NIVE_GIBI       =SIMP(statut='f',typ='I',defaut=10,into=(3,4,5,6,7,8,9,10,11)),
8230          ),
8231          TUBULURE        =FACT(statut='o',min=01,max=01,
8232            E_BASE          =SIMP(statut='o',typ='R'),  
8233            DEXT_BASE       =SIMP(statut='o',typ='R'),  
8234            L_BASE          =SIMP(statut='o',typ='R'),  
8235            L_CHANF         =SIMP(statut='o',typ='R'),  
8236            E_TUBU          =SIMP(statut='o',typ='R'),  
8237            DEXT_TUBU       =SIMP(statut='o',typ='R'),  
8238            Z_MAX           =SIMP(statut='o',typ='R'),  
8239            TYPE            =SIMP(statut='f',typ='TXM',defaut="TYPE_1",into=("TYPE_1","TYPE_2")),
8240            L_PENETR        =SIMP(statut='f',typ='R',defaut= 0.0E+0),  
8241          ),
8242          SOUDURE         =FACT(statut='o',min=01,max=01,
8243            H_SOUD          =SIMP(statut='o',typ='R'),  
8244            ANGL_SOUD       =SIMP(statut='o',typ='R'),  
8245            JEU_SOUD        =SIMP(statut='o',typ='R'),  
8246          ),
8247          CORPS           =FACT(statut='o',min=01,max=01,
8248            E_CORP          =SIMP(statut='o',typ='R'),  
8249            DEXT_CORP       =SIMP(statut='o',typ='R'),  
8250            X_MAX           =SIMP(statut='o',typ='R'),  
8251          ),
8252          FISS_SOUDURE    =FACT(statut='f',min=01,max=01,
8253            TYPE            =SIMP(statut='o',typ='TXM',into=("LONGUE","COURTE")),
8254            AXIS            =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")),
8255            PROFONDEUR      =SIMP(statut='o',typ='R'),  
8256            LONGUEUR        =SIMP(statut='f',typ='R'),  
8257            AZIMUT          =SIMP(statut='o',typ='R'),  
8258            RAYON_TORE      =SIMP(statut='f',typ='R'),  
8259            POSITION        =SIMP(statut='o',typ='TXM',into=("DROIT","INCLINE")),
8260            FISSURE         =SIMP(statut='o',typ='TXM',into=("DEB_INT","DEB_EXT","NON_DEB","TRAVERS")),
8261            LIGA_INT        =SIMP(statut='f',typ='R'),  
8262            ANGL_OUVERTURE  =SIMP(statut='f',typ='R',defaut= 0.0E+0),  
8263            COEF_MULT_RC1   =SIMP(statut='f',typ='R'),  
8264            COEF_MULT_RC2   =SIMP(statut='f',typ='R'),  
8265            COEF_MULT_RC3   =SIMP(statut='f',typ='R'),  
8266            NB_TRANCHE      =SIMP(statut='f',typ='I'),  
8267            NB_SECTEUR      =SIMP(statut='f',typ='I'),  
8268            NB_COURONNE     =SIMP(statut='f',typ='I'),  
8269          ),
8270          IMPRESSION      =FACT(statut='f',min=01,max='**',
8271            regles=(PRESENT_PRESENT('FICHIER','UNITE'),),
8272            FORMAT          =SIMP(statut='f',typ='TXM',defaut="ASTER",into=("ASTER","IDEAS","CASTEM")),
8273            FICHIER         =SIMP(statut='f',typ='TXM'),  
8274            UNITE           =SIMP(statut='f',typ='I'),  
8275            VERSION         =SIMP(statut='f',typ='I',defaut=5,into=(4,5)),
8276            NIVE_GIBI       =SIMP(statut='f',typ='I',defaut=10,into=(3,10)),
8277          ),
8278          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
8279 )  ;
8280 #& MODIF COMMANDE  DATE 02/10/96   AUTEUR CIBHHLV L.VIVAN
8281 MACR_ELEM_DYNA=OPER(nom="MACR_ELEM_DYNA",op=  81,sd_prod=macr_elem_dyna,
8282                     fr="Définition d un macro élément pour analyse modale ou harmonique par sous structuration dynamique",
8283                     docu="U4.65.01-D",reentrant='n',
8284          regles=(EXCLUS('MATR_AMOR','AMOR_REDUIT' ),),
8285          BASE_MODALE     =SIMP(statut='o',typ=base_modale ),
8286          MATR_RIGI       =SIMP(statut='f',typ=matr_asse_depl_r ),
8287          MATR_MASS       =SIMP(statut='f',typ=matr_asse_depl_r ),
8288          MATR_AMOR       =SIMP(statut='f',typ=matr_asse_depl_r ),
8289          AMOR_REDUIT     =SIMP(statut='f',typ='R',max='**'),         
8290          OPTION          =SIMP(statut='f',typ='TXM',defaut="CLASSIQUE",into=("CLASSIQUE","RITZ") ),
8291 )  ;
8292 #& MODIF COMMANDE DATE 08/03/94 AUTEUR VABHHT2 G.BERTRAND
8293 MACR_ELEM_STAT=OPER(nom="MACR_ELEM_STAT",op=86,sd_prod=macr_elem_stat,docu="U4.62.01-E",reentrant='f',
8294                     fr="Définition d un macro-élément pour l analyse statique par sous structuration",
8295         regles=(AU_MOINS_UN('DEFINITION','RIGI_MECA','MASS_MECA','CAS_CHARGE'),  
8296                 ENSEMBLE('DEFINITION','EXTERIEUR'),),
8297          DEFINITION      =FACT(statut='f',min=1,max=1,
8298            MODELE          =SIMP(statut='o',typ=modele),
8299            CHAM_MATER      =SIMP(statut='f',typ=cham_mater),
8300            CARA_ELEM       =SIMP(statut='f',typ=cara_elem),
8301            CHAR_MACR_ELEM  =SIMP(statut='f',typ=char_meca),
8302            INST            =SIMP(statut='f',typ='R',defaut=0.0E+0 ),  
8303            NMAX_CAS        =SIMP(statut='f',typ='I',defaut=10),  
8304            NMAX_CHAR       =SIMP(statut='f',typ='I',defaut=10),  
8305          ),
8306          EXTERIEUR       =FACT(statut='f',min=1,max=1,
8307            regles=(AU_MOINS_UN('NOEUD','GROUP_NO'),),
8308            NOEUD           =SIMP(statut='f',typ=no,max='**'),
8309            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
8310          ),
8311          RIGI_MECA       =FACT(statut='f',min=1,max=1,
8312            TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400.),  
8313          ),
8314          MASS_MECA       =FACT(statut='f',min=1,max=1,
8315            BIDO1           =SIMP(statut='f',typ='I',defaut=0),  
8316          ),
8317          CAS_CHARGE      =FACT(statut='f',min=1,max='**',
8318            NOM_CAS         =SIMP(statut='o',typ='TXM'),  
8319            SUIV            =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")),
8320            CHARGE          =SIMP(statut='f',typ=char_meca,max='**'),
8321            INST            =SIMP(statut='f',typ='R',defaut=0.E+0),  
8322          ),
8323 )  ;
8324 #& MODIF COMMANDE  DATE 15/09/1999   AUTEUR F1BHHAJ J.ANGLES 
8325 MACR_GOUJ2E_CALC=MACRO(nom="MACR_GOUJ2E_CALC",op=-23,sd_prod=evol_noli,
8326                       fr=" ",docu="U4.GJ.20-A",reentrant='n',
8327          MAILLAGE        =SIMP(statut='o',typ=maillage),
8328          DEFI_GOUJ       =FACT(statut='o',min=01,max=01,
8329            TYPE            =SIMP(statut='o',typ='TXM',into=("M33","M64","M90","M115","M155","M180","M186")),
8330            VARIANTE        =SIMP(statut='o',typ='TXM',into=("A","B","C","D","E","F","G","H","I","J","K","L","M",  
8331                                                             "N","O","P","Q","R","S","T","U","V","W","X","Y","Z")),
8332            FILET_TRONQUE   =SIMP(statut='f',typ='I',max='**'),  
8333            FILET_TRONQA    =SIMP(statut='f',typ='I',max='**'),  
8334            FILET_TRONQB    =SIMP(statut='f',typ='I',max='**'),  
8335            FILET_JEU_HT    =SIMP(statut='f',typ='I',max='**'),  
8336            FILET_JEU_HTA   =SIMP(statut='f',typ='I',max='**'),  
8337            FILET_JEU_HTB   =SIMP(statut='f',typ='I',max='**'),  
8338          ),
8339          EXCIT           =FACT(statut='o',min=01,max=01,
8340            TYPE_BLOCAGE    =SIMP(statut='o',typ='I',defaut=2,into=(1,2,3)),
8341            FORCE_GOUJ      =SIMP(statut='o',typ='R'),  
8342          ),
8343          CALCUL          =FACT(statut='o',min=01,max=01,
8344            TYPE_CALCUL     =SIMP(statut='o',typ='TXM',into=("ELASTIQUE","ELASTOPLASTIQUE")),
8345            NB_INCR         =SIMP(statut='o',typ='I'),  
8346          ),
8347          IMPRESSION      =FACT(statut='f',min=01,max=01,
8348            FORMAT          =SIMP(statut='f',typ='TXM',defaut="TABLE",    
8349                                  into=("RESULTAT","IDEAS","ASTER","CASTEM","ENSIGHT","MED","TABLE")),
8350            VERSION         =SIMP(statut='f',typ='I',defaut=5,into=(4,5)),
8351          ),
8352          TITRE           =SIMP(statut='f',typ='TXM'),  
8353          INFO            =SIMP(statut='f',typ='I',defaut=1 ,into=(1,2)),
8354 )  ;
8355 #& MODIF COMMANDE  DATE 02/02/2000   AUTEUR F1BHHAJ J.ANGLES 
8356 MACR_GOUJ2E_MAIL=MACRO(nom="MACR_GOUJ2E_MAIL",op= -22,sd_prod=maillage,
8357                       fr=" ",docu="U4.GJ.10-A",reentrant='n',
8358          EXEC_MAILLAGE   =FACT(statut='o',min=01,max=01,
8359            LOGICIEL        =SIMP(statut='o',typ='TXM',into=("GIBI",) ),
8360            UNITE_DATG      =SIMP(statut='f',typ='I',defaut=70),  
8361            UNITE_MGIB      =SIMP(statut='f',typ='I',defaut=19),  
8362            NIVE_GIBI       =SIMP(statut='f',typ='I',defaut=10,into=(3,4,5,6,7,8,9,10)),
8363          ),
8364          DEFI_GOUJ       =FACT(statut='o',min=01,max=01,
8365            TYPE            =SIMP(statut='o',typ='TXM',into=("M33","M64","M90","M115","M155","M180","M186")),
8366            VARIANTE        =SIMP(statut='o',typ='TXM',into=("A","B","C","D","E","F","G","H","I","J","K","L","M",  
8367                                                             "N","O","P","Q","R","S","T","U","V","W","X","Y","Z")), 
8368          ),
8369          GEOM_GOUJ_BRID  =FACT(statut='o',min=01,max=01,
8370            NB_FILET        =SIMP(statut='o',typ='I'),  
8371            H_CORP_BRID     =SIMP(statut='o',typ='R'),  
8372            R_EXT_BRID      =SIMP(statut='o',typ='R'),  
8373            H_HAUT_BRID     =SIMP(statut='f',typ='R',defaut=0.0E+0),  
8374            H_BAS_BRID      =SIMP(statut='f',typ='R',defaut= 0.0E+0),  
8375            FILET_ABST      =SIMP(statut='f',typ='I',max='**'),  
8376          ),
8377          IMPRESSION      =FACT(statut='f',min=01,max=01,
8378            regles=(PRESENT_PRESENT('FICHIER','UNITE'),),
8379            FORMAT          =SIMP(statut='f',typ='TXM',defaut="RESULTAT",    
8380                                  into=("RESULTAT","IDEAS","ASTER","CASTEM","ENSIGHT","MED")),
8381            FICHIER         =SIMP(statut='f',typ='TXM'),  
8382            UNITE           =SIMP(statut='f',typ='I'),  
8383            VERSION         =SIMP(statut='f',typ='I',defaut=5,into=(4,5)),
8384            NIVE_GIBI       =SIMP(statut='f',typ='I',defaut=10,into=(3,10)),
8385          ),
8386          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
8387 )  ;
8388 #& MODIF COMMANDE  DATE 19/06/2000   AUTEUR DURAND C.DURAND 
8389 MACR_INFO_MAIL=MACRO(nom="MACR_INFO_MAIL",op=-24,docu="U7.03.02-A",
8390                      fr="Donner des informations sur un maillage.",
8391 #
8392 # 1. Le nom du maillage a analyser
8393 #
8394          MAILLAGE        =SIMP(statut='o',typ=maillage),
8395 #
8396 # 2. Determination de la qualite des elements du maillage
8397 #    Par defaut, rien ne se fait
8398 #
8399          QUALITE         =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")),
8400 #
8401 # 3. Controle de la non-interpenetration des elements
8402 #    Par defaut, rien ne se fait
8403 #
8404          INTERPENETRATION=SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")),
8405 #
8406 # 4. Version homard
8407 #
8408          VERSION_HOMARD  =SIMP(statut='f',typ='TXM',defaut="V3_15",into=("V3_15","V3_N","V3_N_PERSO")),
8409 #
8410 # 5. Le niveau d'information
8411 #
8412          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
8413 )  ;
8414 #& MODIF COMMANDE  DATE 02/06/99   AUTEUR CIBHHLV L.VIVAN 
8415 MACR_PRE_SYRTHES=MACRO(nom="MACR_PRE_SYRTHES",op=-21,fr=" ",docu="U7.02.21-A",
8416          MAILLAGE        =FACT(statut='d',min=01,max=01,
8417            UNITE_SYRTHES   =SIMP(statut='f',typ='I',defaut=13),  
8418            UNITE_IDEAS     =SIMP(statut='f',typ='I',defaut=19),  
8419          ),
8420          RESULTAT        =FACT(statut='d',min=01,max=01,
8421            UNITE_SYRTHES   =SIMP(statut='f',typ='I',defaut=31),  
8422            UNITE_IDEAS     =SIMP(statut='f',typ='I',defaut= 91 ),  
8423          ),
8424 )  ;
8425 #& MODIF COMMANDE  DATE 17/11/1999   AUTEUR CIBHHGB G.BERTRAND 
8426 MACRO_CARA_POUTRE=MACRO(nom="MACRO_CARA_POUTRE",op=-11,sd_prod=tabl_cara_geom,
8427                        docu="U4.42.02-C",reentrant='n',
8428                        fr="Détermination des caractéristiques d'une section transversale de poutre à partir d'un maillage 2D de la section",
8429          regles=(EXCLUS('SYME_X','GROUP_MA_BORD'),
8430                  EXCLUS('SYME_Y','GROUP_MA_BORD'),
8431                  ENSEMBLE('LONGUEUR','LIAISON','MATERIAU') ,),
8432          UNITE_MAILLAGE  =SIMP(statut='f',typ='I',defaut= 20 ),  
8433          SYME_X          =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")),
8434          SYME_Y          =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")),
8435          GROUP_MA_BORD   =SIMP(statut='f',typ=grma,max='**'),
8436          GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
8437          ORIG_INER       =SIMP(statut='f',typ='R',max='**'),  
8438          NOEUD           =SIMP(statut='f',typ=no,max='**'),
8439          GROUP_MA_INTE   =SIMP(statut='f',typ=grma,max='**'),
8440          LONGUEUR        =SIMP(statut='f',typ='R'),  
8441          MATERIAU        =SIMP(statut='f',typ=mater),
8442          LIAISON         =SIMP(statut='f',typ='TXM',into=("ROTULE","ENCASTREMENT")),
8443          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
8444 )  ;
8445 #& MODIF COMMANDE  DATE 30/06/98   AUTEUR CIBHHGB G.BERTRAND 
8446 MACRO_CHAR_F_U=MACRO(nom="MACRO_CHAR_F_U",op=-15,sd_prod=char_meca,
8447                     fr=" ",docu="U4.72.07-A",reentrant='n',
8448          MODELE          =SIMP(statut='o',typ=modele),
8449          CHAM_MATER      =SIMP(statut='o',typ=cham_mater),
8450          CHARGE          =SIMP(statut='o',typ=char_meca),
8451          CARA_ELEM       =SIMP(statut='f',typ=cara_elem),
8452          COEF_IMPO       =SIMP(statut='f',typ='R',defaut=1.0E+0),  
8453          NUME_LAGR       =SIMP(statut='f',typ='TXM',defaut="APRES",into=("NORMAL","APRES")),
8454          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
8455 )  ;
8456 #& MODIF COMMANDE  DATE 05/06/2000   AUTEUR CIBHHLV L.VIVAN 
8457 def macro_elas_mult_prod(self,NUME_DDL,CAS_CHARGE,**args ):
8458   self.type_sdprod(NUME_DDL,nume_ddl)
8459   if CAS_CHARGE[0]['NOM_CAS']      != None : return mult_elas
8460   if CAS_CHARGE[0]['MODE_FOURIER'] != None : return fourier_elas
8461   raise AsException("type de concept resultat non prevu")
8462
8463 MACRO_ELAS_MULT=MACRO(nom="MACRO_ELAS_MULT",op=-10,sd_prod=macro_elas_mult_prod,docu="U4.51.02-C",reentrant='f',
8464                      fr="Permet la réalisation d une analyse statique linéaire multi cas de charges ou la réalisation des calculs de plusieurs modes de Fourier sur un modèle axisymétrique",
8465          regles=(UN_PARMI('CHAR_MECA_GLOBAL','CHAR_CINE_GLOBAL','LIAISON_DISCRET', ),),
8466          MODELE          =SIMP(statut='o',typ=modele),
8467          CHAM_MATER      =SIMP(statut='f',typ=cham_mater),
8468          CARA_ELEM       =SIMP(statut='f',typ=cara_elem),
8469          NUME_DDL        =SIMP(statut='f',typ=(CO,nume_ddl)),# CO()
8470          CHAR_MECA_GLOBAL=SIMP(statut='f',typ=char_meca,max='**'),
8471          CHAR_CINE_GLOBAL=SIMP(statut='f',typ=char_meca,max='**'),
8472          LIAISON_DISCRET =SIMP(statut='f',typ='TXM',into=("OUI",)),
8473          CAS_CHARGE      =FACT(statut='o',min=01,max='**',
8474            regles=(UN_PARMI('NOM_CAS','MODE_FOURIER'),
8475                    UN_PARMI('CHAR_MECA','CHAR_CINE','VECT_ASSE'),),
8476            NOM_CAS         =SIMP(statut='f',typ='TXM' ),  
8477            MODE_FOURIER    =SIMP(statut='f',typ='I' ),  
8478            TYPE_MODE       =SIMP(statut='f',typ='TXM',defaut="SYME",into=("SYME","ANTI","TOUS") ),
8479            CHAR_MECA       =SIMP(statut='f',typ=char_meca,max='**'),
8480            CHAR_CINE       =SIMP(statut='f',typ=char_meca,max='**'),
8481            OPTION          =SIMP(statut='f',typ='TXM',max='**',     
8482                                  into=("EFGE_ELNO_DEPL","EPOT_ELEM_DEPL","SIGM_ELNO_DEPL","SIEF_ELGA_DEPL",               
8483                                        "SIGM_ELNO_CART","EFGE_ELNO_CART","DEGE_ELNO_DEPL","EPSI_ELNO_DEPL",               
8484                                        "EPSI_ELGA_DEPL","EPSG_ELNO_DEPL","EPSG_ELGA_DEPL","EPSP_ELNO","EPSP_ELGA",        
8485                                        "ECIN_ELEM_DEPL","FLUX_ELGA_TEMP","FLUX_ELNO_TEMP","SOUR_ELGA_ELEC",               
8486                                        "PRES_ELNO_DBEL","PRES_ELNO_REEL","PRES_ELNO_IMAG","INTE_ELNO_ACTI",               
8487                                        "INTE_ELNO_REAC","SIGM_NOZ1_ELGA","ERRE_ELEM_NOZ1","SIGM_NOZ2_ELGA",               
8488                                        "ERRE_ELEM_NOZ2","VNOR_ELEM_DEPL","ERRE_ELNO_ELGA","SIRE_ELNO_DEPL",               
8489                                        "ERRE_ELGA_NORE","EQUI_ELNO_SIGM","EQUI_ELGA_SIGM","EQUI_ELNO_EPSI",               
8490                                        "EQUI_ELGA_EPSI","FORC_NODA","REAC_NODA","EPSI_NOEU_DEPL","SIGM_NOEU_DEPL",               
8491                                        "EFGE_NOEU_DEPL","EQUI_NOEU_SIGM","EQUI_NOEU_EPSI","FLUX_NOEU_TEMP") ),
8492            NUME_COUCHE     =SIMP(statut='f',typ='I',defaut=1),  
8493            NIVE_COUCHE     =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY")),
8494            SOUS_TITRE      =SIMP(statut='f',typ='TXM',max='**'),  
8495            VECT_ASSE       =SIMP(statut='f',typ=cham_no_depl_r),
8496          ),
8497
8498 #  attention d après la documentation U4-02-04B (solveur), PRE_COND figure uniquement avec la méthode GCPC
8499
8500          SOLVEUR         =FACT(statut='d',min=01,max=01,
8501            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT") ),
8502            PRE_COND        =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SANS","DIAG") ),
8503            b_mult_front    = BLOC ( condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
8504              RENUM           =SIMP(statut='f',typ='TXM',defaut="MDA",into=("MD","MDA","METIS") ),
8505            ),
8506            b_ldlt          =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT",
8507              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
8508              TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400. ),
8509             ),
8510            b_ldlt_mult     =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
8511                                    fr="Paramètres relatifs à la non inversibilité de la matrice à factorise",
8512              NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
8513              STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),             
8514            ),
8515          ),
8516          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2)),
8517          TITRE           =SIMP(statut='f',typ='TXM',max='**'),  
8518 )  ;
8519 #& MODIF COMMANDE  DATE 11/02/98   AUTEUR CIBHHLV L.VIVAN 
8520 MACRO_MADMACS=MACRO(nom="MACRO_MADMACS",op=-9,docu="U7.03.21-C",
8521                     fr="Impression au format fichier universel IDEAS des données nécessaires au chaînage entre Code_Aster et MADMACS",
8522          regles=(UN_PARMI('MATR_ELEM_RIGI','MATR_RIGI'),
8523                  UN_PARMI('MATR_ELEM_MASS','MATR_MASS'),
8524                  PRESENT_ABSENT('MATR_ELEM_AMOR','MATR_AMOR'),),
8525          FICHIER         =SIMP(statut='f',typ='TXM' ),  
8526          FORMAT          =SIMP(statut='f',typ='TXM',defaut="IDEAS",into=("IDEAS",)),
8527          VERSION         =SIMP(statut='f',typ='I',defaut=5,into=(5,)),
8528          MAILLAGE        =SIMP(statut='o',typ=maillage),
8529          NUME_DDL        =SIMP(statut='o',typ=nume_ddl),
8530          CHARGE          =SIMP(statut='o',typ=char_meca,max='**'),
8531          MATR_ELEM_RIGI  =SIMP(statut='f',typ=matr_elem_depl_r),
8532          MATR_RIGI       =SIMP(statut='f',typ=matr_asse_depl_r),
8533          MATR_ELEM_MASS  =SIMP(statut='f',typ=matr_elem_depl_r),
8534          MATR_MASS       =SIMP(statut='f',typ=matr_asse_depl_r),
8535          MATR_ELEM_AMOR  =SIMP(statut='f',typ=matr_elem_depl_r),
8536          MATR_AMOR       =SIMP(statut='f',typ=matr_asse_depl_r),
8537          MODE_MECA       =SIMP(statut='o',typ=mode_meca),
8538          NMAX_MODE       =SIMP(statut='f',typ='I',defaut=10),  
8539          INTERFACE       =FACT(statut='f',min=01,max='**',
8540            regles=(UN_PARMI('NOEUD','GROUP_NO'),
8541                    UN_PARMI('DDL_ACTIF','MASQUE'),),
8542            NOM             =SIMP(statut='o',typ='TXM'),  
8543            NOEUD           =SIMP(statut='f',typ=no,max='**'),
8544            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
8545            DDL_ACTIF       =SIMP(statut='f',typ='TXM',max='**'),  
8546            MASQUE          =SIMP(statut='f',typ='TXM',max='**'),  
8547          ),
8548          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
8549 )  ;
8550 #& MODIF COMMANDE  DATE 19/05/2000   AUTEUR JFBHHUC C.ROSE 
8551 def macro_matr_ajou_prod(self,MATR_AMOR_AJOU,MATR_MASS_AJOU,MATR_RIGI_AJOU,**args):
8552   self.type_sdprod(MATR_AMOR_AJOU,matr_asse_depl_r)
8553   self.type_sdprod(MATR_MASS_AJOU,matr_asse_depl_r)
8554   self.type_sdprod(MATR_RIGI_AJOU,matr_asse_depl_r)
8555   return None
8556
8557 MACRO_MATR_AJOU=MACRO(nom="MACRO_MATR_AJOU",op=-13,docu="U4.66.11-B",sd_prod=macro_matr_ajou_prod,
8558                       fr="Calcul les matrices de masse, d amortissement ou de rigidité ajoutées qu induit un fluide parfait, incompressible, au repos ou en écoulement potentiel, sur une structure en 2D, 2D axisymétrique ou en 3D",
8559       regles=(AU_MOINS_UN('MODE_MECA','DEPL_IMPO','MODELE_GENE'),
8560               AU_MOINS_UN('MATR_MASS_AJOU','MATR_AMOR_AJOU','MATR_RIGI_AJOU'), 
8561               EXCLUS('MODE_MECA','DEPL_IMPO','MODELE_GENE'),),
8562          MAILLAGE        =SIMP(statut='o',typ=maillage),
8563          GROUP_MA_FLUIDE =SIMP(statut='o',typ=grma),
8564          GROUP_MA_INTERF =SIMP(statut='o',typ=grma),
8565          MODELISATION    =SIMP(statut='o',typ='TXM',into=("PLAN","AXIS","3D")),
8566          FLUIDE          =FACT(statut='o',min=01,max='**',
8567            RHO             =SIMP(statut='o',typ='R'),  
8568            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",)),
8569            GROUP_MA        =SIMP(statut='f',typ=grma),
8570            MAILLE          =SIMP(statut='f',typ=ma),
8571          ),
8572          DDL_IMPO        =FACT(statut='o',min=01,max='**',
8573            regles=(UN_PARMI('NOEUD','GROUP_NO'),
8574                    UN_PARMI('PRES_FLUIDE','PRES_SORTIE'),),
8575            NOEUD           =SIMP(statut='f',typ=no),
8576            GROUP_NO        =SIMP(statut='f',typ=grno),
8577            PRES_FLUIDE     =SIMP(statut='f',typ='R'),  
8578            PRES_SORTIE     =SIMP(statut='f',typ='R'),  
8579          ),
8580          ECOULEMENT      =FACT(statut='f',min=01,max='**',
8581            GROUP_MA_1      =SIMP(statut='o',typ=grma),
8582            GROUP_MA_2      =SIMP(statut='o',typ=grma),
8583            VNOR_1          =SIMP(statut='o',typ='R'),  
8584            VNOR_2          =SIMP(statut='f',typ='R'),  
8585            POTENTIEL       =SIMP(statut='f',typ=evol_ther),
8586          ),
8587          MODE_MECA       =SIMP(statut='f',typ=mode_meca),
8588          DEPL_IMPO       =SIMP(statut='f',typ=cham_no_depl_r),
8589          MODELE_GENE     =SIMP(statut='f',typ=modele_gene),
8590          NUME_DDL_GENE   =SIMP(statut='f',typ=nume_ddl_gene),
8591          DIST_REFE       =SIMP(statut='f',typ='R',defaut= 1.0E-2),  
8592          MATR_MASS_AJOU  =SIMP(statut='f',typ=(CO,matr_asse)),
8593          MATR_RIGI_AJOU  =SIMP(statut='f',typ=(CO,matr_asse)),
8594          MATR_AMOR_AJOU  =SIMP(statut='f',typ=(CO,matr_asse)),
8595          SOLVEUR         =FACT(statut='d',min=01,max=01,
8596            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
8597            b_mult_front    =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
8598              RENUM           =SIMP(statut='f',typ='TXM',defaut="MDA",into=("MD","MDA","METIS") ),
8599            ),
8600            b_ldlt         =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT",
8601              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
8602              TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400. ),
8603            ),
8604            b_ldlt_mult    =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
8605                                    fr="Paramètres relatifs à la non iversibilité de la matrice à factorise",
8606              NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
8607              STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),             
8608            ),
8609            b_gcpc          =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué",
8610              PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC","SANS","DIAG") ),
8611              NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ),
8612              RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
8613              NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
8614              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
8615            ),
8616 #  A quoi sert eps           
8617            EPS             =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8618          ),
8619          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
8620          NOEUD_DOUBLE    =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")),
8621          AVEC_MODE_STAT  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")),
8622 )  ;
8623 #& MODIF COMMANDE  DATE 03/10/2000   AUTEUR VABHHTS J.PELLET 
8624 def macro_matr_asse_prod(self,NUME_DDL,MATR_ASSE,**args):
8625   if not MATR_ASSE:  raise AsException("Impossible de typer les concepts resultats")
8626   if not NUME_DDL:  raise AsException("Impossible de typer les concepts resultats")
8627   self.type_sdprod(NUME_DDL,nume_ddl)
8628   for m in MATR_ASSE:
8629     opti=m['OPTION']
8630     if opti in ( "RIGI_MECA","RIGI_FLUI_STRU","RIGI_MECA_LAGR" ,        
8631        "MASS_MECA" , "MASS_FLUI_STRU" ,"RIGI_GEOM" ,"RIGI_ROTA",
8632        "AMOR_MECA","IMPE_MECA" ,
8633        "ONDE_FLUI","MASS_MECA_DIAG" ) : t=matr_asse_depl_r
8634     if opti == "RIGI_MECA_HYST"   : t= matr_asse_depl_c
8635     if opti == "RIGI_THER"        : t= matr_asse_temp_r
8636     if opti == "MASS_THER"        : t= matr_asse_temp_r
8637     if opti == "RIGI_THER_CONV"   : t= matr_asse_temp_r
8638     if opti == "RIGI_THER_CONV_D" : t= matr_asse_temp_r
8639     if opti == "RIGI_ACOU"        : t= matr_asse_pres_c
8640     if opti == "MASS_ACOU"        : t= matr_asse_pres_c
8641     if opti == "AMOR_ACOU"        : t= matr_asse_pres_c
8642     self.type_sdprod(m['MATRICE'],t)
8643   return None
8644
8645 MACRO_MATR_ASSE=MACRO(nom="MACRO_MATR_ASSE",op=-6,docu="U4.61.21-C",
8646                       sd_prod=macro_matr_asse_prod,
8647                       fr="Calcul des matrices assemblées (matr_asse_gd) par exemple de rigidité, de masse ",
8648          MODELE          =SIMP(statut='o',typ=modele),
8649          CHAM_MATER      =SIMP(statut='f',typ=cham_mater),
8650          CARA_ELEM       =SIMP(statut='f',typ=cara_elem),
8651          CHARGE          =SIMP(statut='f',typ=(char_meca,char_ther,char_acou)),
8652          INST            =SIMP(statut='f',typ='R'),  
8653          NUME_DDL        =SIMP(statut='o',typ=(nume_ddl,CO)),
8654          SOLVEUR         =FACT(statut='d',min=01,max=01,
8655            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",    
8656                                  into=("LDLT","MULT_FRONT","GCPC")),
8657            TAILLE_BLOC     =SIMP(statut='f',typ='R'),  
8658            RENUM           =SIMP(statut='f',typ='TXM',into=("SANS","RCMK","MD","MDA","METIS")),
8659          ),
8660          MATR_ASSE       =FACT(statut='o',min=01,max='**',
8661            MATRICE         =SIMP(statut='o',typ=(matr_asse,CO)),
8662            OPTION          =SIMP(statut='o',typ='TXM',     
8663                                  into=("RIGI_MECA","MASS_MECA","MASS_MECA_DIAG", 
8664                                        "AMOR_MECA","RIGI_MECA_HYST","IMPE_MECA",        
8665                                        "ONDE_FLUI","RIGI_FLUI_STRU","MASS_FLUI_STRU",   
8666                                        "RIGI_ROTA","RIGI_GEOM","RIGI_MECA_LAGR",        
8667                                        "RIGI_THER","MASS_THER","RIGI_ACOU","MASS_ACOU",      
8668                                        "AMOR_ACOU")),
8669            SIEF_ELGA       =SIMP(statut='f',typ=cham_elem_sief_r),
8670            MODE_FOURIER    =SIMP(statut='f',typ='I'),  
8671            THETA           =SIMP(statut='f',typ=theta_geom),
8672            PROPAGATION     =SIMP(statut='f',typ='R'),  
8673          ),
8674          TITRE           =SIMP(statut='f',typ='TXM',max='**'),  
8675          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
8676 )  ;
8677 #& MODIF COMMANDE  DATE 02/02/99   AUTEUR ACBHHCD G.DEVESA 
8678 MACRO_MISS_3D=MACRO(nom="MACRO_MISS_3D",op=-18,fr=" ",docu="U7.03.11-A",
8679          OPTION          =FACT(statut='o',min=01,max=01,
8680            regles=(UN_PARMI('TOUT','MODULE'),),
8681            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",)),
8682            MODULE          =SIMP(statut='f',typ='TXM',into=("PRE_MISS","MISS_EVOL","MISS_IMPE")),
8683          ),
8684          PROJET          =SIMP(statut='o',typ='TXM'),  
8685          REPERTOIRE      =SIMP(statut='f',typ='TXM'),  
8686          UNITE_IMPR_ASTER=SIMP(statut='f',typ='I',defaut=25),  
8687          UNITE_OPTI_MISS =SIMP(statut='f',typ='I',defaut=26),  
8688          UNITE_MODELE_SOL=SIMP(statut='f',typ='I',defaut=27),  
8689          UNITE_RESU_IMPE =SIMP(statut='f',typ='I',defaut=30),  
8690 )  ;
8691 #& MODIF COMMANDE  DATE 04/04/2000   AUTEUR D6BHHBQ B.QUINNEZ 
8692 def macro_mode_meca_prod(self,MATR_A,MATR_B,**args ):
8693   self.type_sdprod(MATR_A,matr_asse_depl_r)
8694   self.type_sdprod(MATR_B,matr_asse_depl_r)
8695   return mode_meca
8696
8697 MACRO_MODE_MECA=MACRO(nom="MACRO_MODE_MECA",op= -12,sd_prod=macro_mode_meca_prod,
8698                      fr="Permet d alléger le calcul d une structure de données de type mode_meca par le découpage d un intervalle de fréquences global en sous-intervalles",
8699                      docu="U4.52.02-C",reentrant='n',
8700          MATR_A          =SIMP(statut='o',typ=(CO,matr_asse_depl_r) ),
8701          MATR_B          =SIMP(statut='o',typ=(CO,matr_asse_depl_r) ),
8702          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
8703 #  ce mot cle ne devrait il pas etre dans calc_freq  
8704          METHODE         =SIMP(statut='f',typ='TXM',defaut="SORENSEN",    
8705                                into=("TRI_DIAG","JACOBI","SORENSEN",) ),
8706          OPTION          =SIMP(statut='f',typ='TXM',defaut="SANS",    
8707                                into=("MODE_RIGIDE","SANS") ),
8708          CALC_FREQ       =FACT(statut='d',min=00,max=01,
8709            regles=(UN_PARMI('FREQ','FREQ_MAX'),
8710                    PRESENT_PRESENT('FREQ_MIN','FREQ_MAX'),
8711                    PRESENT_PRESENT('FREQ_MAX','NB_BLOC_FREQ'),),
8712            FREQ            =SIMP(statut='f',typ='R',max='**' ),  
8713            FREQ_MIN        =SIMP(statut='f',typ='R' ),  
8714            FREQ_MAX        =SIMP(statut='f',typ='R' ),  
8715            NB_BLOC_FREQ    =SIMP(statut='f',typ='I' ),  
8716            NMAX_FREQ       =SIMP(statut='f',typ='I',defaut= 10 ),  
8717            DIM_SOUS_ESPACE =SIMP(statut='f',typ='I',defaut= 0 ),  
8718            NPREC_SOLVEUR   =SIMP(statut='f',typ='I',defaut= 8 ),  
8719            NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 5 ),  
8720            PREC_SHIFT      =SIMP(statut='f',typ='R',defaut= 5.E-2 ),  
8721            PREC_LANCZOS    =SIMP(statut='f',typ='R',defaut= 1.E-10 ),  
8722            PREC_ORTHO      =SIMP(statut='f',typ='R',defaut= 1.E-12 ),  
8723            NMAX_ITER_ORTHO =SIMP(statut='f',typ='I',defaut= 5 ),  
8724            NMAX_ITER_QR    =SIMP(statut='f',typ='I',defaut= 30 ),  
8725            PREC_BATHE      =SIMP(statut='f',typ='R',defaut= 1.4E-10 ),  
8726            NMAX_ITER_BATHE =SIMP(statut='f',typ='I' ,defaut= 12 ),  
8727            PREC_JACOBI     =SIMP(statut='f',typ='R',defaut= 1.E-2 ),  
8728            NMAX_ITER_JACOBI=SIMP(statut='f',typ='I',defaut= 12 ),  
8729            PREC_SOREN      =SIMP(statut='f',typ='R',defaut= 0.E0 ),  
8730            NMAX_ITER_SOREN =SIMP(statut='f',typ='I',defaut= 20 ),  
8731            PARA_ORTHO_SOREN=SIMP(statut='f',typ='R',defaut= 0.717 ),  
8732            SEUIL_FREQ      =SIMP(statut='f',typ='R' ,defaut= 1.E-2 ),  
8733            STOP_FREQ_VIDE  =SIMP(statut='f',typ='TXM',defaut="NON" ,into=("OUI","NON") ),
8734          ),
8735          VERI_MODE       =FACT(statut='d',min=00,max=01,
8736            STOP_ERREUR     =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
8737            SEUIL           =SIMP(statut='f',typ='R',defaut= 1.E-6 ),  
8738            PREC_SHIFT      =SIMP(statut='f',typ='R',defaut= 5.E-3 ),  
8739            STURM           =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
8740          ),
8741          NORM_MODE       =FACT(statut='o',min=01,max='**',
8742            MASS_INER       =SIMP(statut='o',typ=tabl_mass_iner ),
8743            NORME           =SIMP(statut='f',typ='TXM',defaut="TRAN_ROTA",    
8744                                  into=("MASS_GENE","RIGI_GENE","EUCL",           
8745                                        "EUCL_TRAN","TRAN","TRAN_ROTA") ),
8746            INFO            =SIMP(statut='f',typ='I',defaut= 1 ,into=(1,2) ),
8747          ),
8748          FILTRE_MODE     =FACT(statut='f',min=01,max=01,
8749            CRIT_EXTR       =SIMP(statut='f',typ='TXM',defaut="MASS_EFFE_UN",    
8750                                  into=("MASS_EFFE_UN","MASS_GENE") ),
8751            SEUIL           =SIMP(statut='f',typ='R',defaut= 1.E-3 ),  
8752          ),
8753          IMPRESSION      =FACT(statut='d',min=01,max=01,
8754            TOUT_PARA       =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
8755            CUMUL           =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
8756            CRIT_EXTR       =SIMP(statut='f',typ='TXM',defaut="MASS_EFFE_UN",    
8757                                  into=("MASS_EFFE_UN","MASS_GENE",) ),
8758          ),
8759 )  ;
8760 #& MODIF COMMANDE  DATE 11/02/98   AUTEUR CIBHHLV L.VIVAN 
8761 def macro_proj_base_prod(self,MATR_ASSE_GENE,VECT_ASSE_GENE,**args ):
8762   if MATR_ASSE_GENE != None:
8763     for m in MATR_ASSE_GENE:
8764       self.type_sdprod(m['MATRICE'],matr_asse_gene_r)
8765       self.type_sdprod(m['MATR_ASSE'],matr_asse_depl_r)
8766   if VECT_ASSE_GENE != None:
8767     for m in VECT_ASSE_GENE:
8768       self.type_sdprod(m['VECTEUR'],vect_asse_gene)
8769   return None
8770
8771 MACRO_PROJ_BASE=MACRO(nom="MACRO_PROJ_BASE",op=-8,docu="U4.63.11-C",
8772                       sd_prod=macro_proj_base_prod,
8773                       fr="Projection des matrices et/ou vecteurs assemblés sur une base de vecteurs", 
8774          BASE            =SIMP(statut='o',typ=(mode_meca,base_modale,mode_gene) ),
8775          NB_VECT         =SIMP(statut='f',typ='I',defaut= 9999),  
8776          TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400. ),  
8777          MATR_ASSE_GENE  =FACT(statut='f',min=01,max='**',
8778            MATRICE         =SIMP(statut='o',typ=(CO,matr_asse)),
8779            MATR_ASSE       =SIMP(statut='f',typ=(CO,matr_asse_depl_r)),
8780            MATR_ASSE_GENE  =SIMP(statut='f',typ=matr_asse_gene_r),
8781            PROFIL          =SIMP(statut='f',typ='TXM',defaut="DIAG",into=("PLEIN","DIAG") ),
8782          ),
8783          VECT_ASSE_GENE  =FACT(statut='f',min=01,max='**',
8784            VECTEUR         =SIMP(statut='o',typ=(CO,vect_asse)),
8785            TYPE_VECT       =SIMP(statut='f',typ='TXM',defaut="FORC"),  
8786            VECT_ASSE       =SIMP(statut='f',typ=cham_no_depl_r),
8787            VECT_ASSE_GENE  =SIMP(statut='f',typ=vect_asse_gene),
8788          ),
8789          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
8790 )  ;
8791 #& MODIF COMMANDE  DATE 08/09/97   AUTEUR VABHHTS J.PELLET 
8792 MAJ_CATA=PROC(nom="MAJ_CATA",op=20,docu="U4.15.01-D",
8793               fr="Compilation des catalogues de commandes et d éléments",
8794          regles=(UN_PARMI('COMMANDE','ELEMENT','VALIDATION'),),
8795          COMMANDE        =FACT(statut='f',min=01,max=01,
8796            UNITE           =SIMP(statut='o',typ='I' ),  
8797          ),
8798          ELEMENT         =FACT(statut='f',min=01,max=01,),
8799          VALIDATION      =FACT(statut='f',min=01,max=01,
8800            UNITE           =SIMP(statut='o',typ='I' ),  
8801            TOUT            =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI",) ),
8802          ),
8803 )  ;
8804 #& MODIF COMMANDE  DATE 03/10/2000   AUTEUR VABHHTS J.PELLET 
8805 MECA_STATIQUE=OPER(nom="MECA_STATIQUE",op=46,sd_prod=evol_elas,
8806                    fr="Analyse mécanique statique linéaire",docu="U4.51.01-F",reentrant='n',
8807                    regles=(EXCLUS("INST","LIST_INST"),),
8808          MODELE          =SIMP(statut='o',typ=modele),
8809          CHAM_MATER      =SIMP(statut='f',typ=cham_mater),
8810          CARA_ELEM       =SIMP(statut='f',typ=cara_elem),
8811          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
8812          EXCIT           =FACT(statut='o',min=1,max='**',
8813            CHARGE          =SIMP(statut='o',typ=(char_meca,char_cine_meca)),
8814            FONC_MULT       =SIMP(statut='f',typ=fonction),
8815            TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",) ),
8816          ),
8817          INST            =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8818          LIST_INST       =SIMP(statut='f',typ=listr8),
8819          OPTION          =SIMP(statut='f',typ='TXM',max='**',
8820                                into=("SIEF_ELGA_DEPL","SIGM_ELNO_DEPL","SIPO_ELNO_DEPL","EFGE_ELNO_DEPL",
8821                                      "EPSI_ELNO_DEPL","EPSI_ELGA_DEPL","EPME_ELNO_DEPL","EPME_ELGA_DEPL",
8822                                      "EQUI_ELNO_SIGM","EQUI_ELGA_SIGM","EQUI_ELNO_EPSI","EQUI_ELGA_EPSI",
8823                                      "EQUI_ELNO_EPME","EQUI_ELGA_EPME","DEGE_ELNO_DEPL","EPOT_ELEM_DEPL",
8824                                      "ENEL_ELGA","ENEL_ELNO_ELGA") ),
8825          NUME_COUCHE     =SIMP(statut='f',typ='I',defaut=1),
8826          NIVE_COUCHE     =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY") ),
8827          ANGLE           =SIMP(statut='f',typ='I',defaut=0),
8828          PLAN            =SIMP(statut='f',typ='TXM',defaut="MAIL",into=("SUP","INF","MOY","MAIL") ),
8829          SENSIBILITE     =FACT(statut='f',min=1,max=1,
8830            THETA           =SIMP(statut='o',typ=theta_geom),
8831          ),
8832          SOLVEUR         =FACT(statut='d',min=01,max=01,
8833            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
8834            b_mult_front    =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
8835              RENUM           =SIMP(statut='f',typ='TXM',defaut="MDA",into=("MD","MDA","METIS") ),
8836            ),
8837            b_ldlt          =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT",
8838              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
8839              TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400.),
8840            ),
8841            b_ldlt_mult     =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
8842                                    fr="Paramètres relatifs à la non inversibilité de la matrice à factorise",
8843              NPREC           =SIMP(statut='f',typ='I',defaut=8),
8844              STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),             
8845            ),
8846            b_gcpc         =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué",
8847              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
8848              PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC","SANS","DIAG") ),
8849              NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ),
8850              RESI_RELA       =SIMP(statut='f',typ='R',defaut=1.E-6),
8851              NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
8852            ),
8853 #  A quoi sert eps           
8854            EPS             =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8855          ),
8856          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
8857 )  ;
8858 #& MODIF COMMANDE  DATE 09/09/98   AUTEUR SABJLMA P.LATRUBESSE 
8859 MODE_ITER_CYCL=OPER(nom="MODE_ITER_CYCL",op=  80,sd_prod=mode_cycl,
8860                     fr="Modes propres d une structure à répétitivité cyclique à partir d une base de modes propres réels",
8861                     docu="U4.52.05-E",reentrant='n',
8862          BASE_MODALE     =SIMP(statut='o',typ=base_modale ),
8863          NB_MODE         =SIMP(statut='f',typ='I',defaut= 999 ),
8864          NB_SECTEUR      =SIMP(statut='o',typ='I' ),
8865          LIAISON         =FACT(statut='o',min=01,max=01,
8866            DROITE          =SIMP(statut='o',typ='TXM' ),
8867            GAUCHE          =SIMP(statut='o',typ='TXM' ),
8868            AXE             =SIMP(statut='f',typ='TXM' ),
8869          ),
8870          VERI_CYCL       =FACT(statut='f',min=01,max=01,
8871            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
8872            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF",) ),
8873            DIST_REFE       =SIMP(statut='f',typ='R' ),
8874          ),
8875          CALCUL          =FACT(statut='o',min=01,max=01,
8876            TOUT_DIAM       =SIMP(statut='f',typ='TXM',into=("OUI",) ),
8877            NB_DIAM         =SIMP(statut='f',typ='I',max='**'),
8878            OPTION          =SIMP(statut='f',typ='TXM',defaut="PLUS_PETITE"
8879                                 ,into=("PLUS_PETITE","CENTRE","BANDE") ),
8880            b_centre      =BLOC(condition = "OPTION == 'CENTRE'",
8881              FREQ            =SIMP(statut='o',typ='R',min=01,max=01),
8882            ),
8883            b_bande       =BLOC(condition = "OPTION == 'BANDE'",
8884              FREQ            =SIMP(statut='o',typ='R',min=02,max=02),
8885            ),
8886 #  NMAX_FREQ n a-t-il pas un sens qu avec OPTION CENTRE                                
8887            NMAX_FREQ       =SIMP(statut='f',typ='I',defaut= 10 ),
8888            PREC_SEPARE     =SIMP(statut='f',typ='R',defaut= 100. ),
8889            PREC_AJUSTE     =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
8890            NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 50 ),
8891          ),
8892          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
8893 )  ;
8894 #& MODIF COMMANDE  DATE 24/05/2000   AUTEUR D6BHHBQ B.QUINNEZ 
8895 def mode_iter_inv_prod(MATR_A,MATR_C,TYPE_RESU,**args ):
8896   if TYPE_RESU == "MODE_FLAMB" : return mode_flamb
8897   if AsType(MATR_C) == matr_asse_depl_r : return mode_meca_c
8898   if AsType(MATR_A) == matr_asse_depl_r : return mode_meca
8899   if AsType(MATR_A) == matr_asse_pres_r : return mode_acou
8900   if AsType(MATR_A) == matr_asse_gene_r : return mode_gene
8901   raise AsException("type de concept resultat non prevu")
8902
8903 MODE_ITER_INV=OPER(nom="MODE_ITER_INV",op=  44,sd_prod=mode_iter_inv_prod
8904                     ,fr="Modes propres par itérations inverses ; valeurs propres et modes réels ou complexes",
8905                      docu="U4.52.04-F",reentrant='n',
8906          MATR_A          =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ) ),
8907          MATR_B          =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ) ),
8908          MATR_C          =SIMP(statut='f',typ=matr_asse_depl_r ),
8909          TYPE_RESU       =SIMP(statut='f',position='global',typ='TXM',defaut="DYNAMIQUE",   
8910                                into=("MODE_FLAMB","DYNAMIQUE"),fr="Type d analyse" ),
8911          b_dynam         =BLOC(condition = "TYPE_RESU == 'DYNAMIQUE'",
8912            CALC_FREQ       =FACT(statut='o',min=01,max=01,fr="Choix des paramètres pour le calcul des valeurs propres",
8913            
8914              OPTION          =SIMP(statut='f',typ='TXM',defaut="AJUSTE",into=("SEPARE","AJUSTE","PROCHE"),
8915                                    fr="Choix de l option pour estimer les valeurs propres"  ),
8916              FREQ            =SIMP(statut='o',typ='R',max='**'),
8917              AMOR_REDUIT     =SIMP(statut='f',typ='R',max='**'),     
8918              NMAX_FREQ       =SIMP(statut='f',typ='I',defaut= 0 ),           
8919              NMAX_ITER_SEPARE=SIMP(statut='f',typ='I' ,defaut= 30 ),
8920              PREC_SEPARE     =SIMP(statut='f',typ='R',defaut= 1.E-4 ),
8921              NMAX_ITER_AJUSTE=SIMP(statut='f',typ='I',defaut= 15 ),
8922              PREC_AJUSTE     =SIMP(statut='f',typ='R',defaut= 1.E-4 ),
8923
8924              NPREC_SOLVEUR   =SIMP(statut='f',typ='I',defaut= 8 ),
8925              NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 5 ),
8926              PREC_SHIFT      =SIMP(statut='f',typ='R',defaut= 5.E-2 ),
8927              SEUIL_FREQ      =SIMP(statut='f',typ='R',defaut= 1.E-2 ),
8928            ),
8929          ),
8930          b_flamb        =BLOC(condition = "TYPE_RESU == 'MODE_FLAMB'",
8931            CALC_FREQ       =FACT(statut='o',min=01,max=01,fr="Choix des paramètres pour le calcul des valeurs propres",
8932            
8933              OPTION          =SIMP(statut='f',typ='TXM',defaut="AJUSTE",into=("SEPARE","AJUSTE","PROCHE"),
8934                                  fr="Choix de l option pour estimer les valeurs propres"  ),
8935              CHAR_CRIT       =SIMP(statut='o',typ='R',max='**' ),
8936              NMAX_FREQ       =SIMP(statut='f',typ='I',defaut= 0 ),           
8937              NMAX_ITER_SEPARE=SIMP(statut='f',typ='I' ,defaut= 30 ),
8938              PREC_SEPARE     =SIMP(statut='f',typ='R',defaut= 1.E-4 ),
8939              NMAX_ITER_AJUSTE=SIMP(statut='f',typ='I',defaut= 15 ),
8940              PREC_AJUSTE     =SIMP(statut='f',typ='R',defaut= 1.E-4 ),
8941            
8942              NPREC_SOLVEUR   =SIMP(statut='f',typ='I',defaut= 8 ),
8943              NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 5 ),
8944              PREC_SHIFT      =SIMP(statut='f',typ='R',defaut= 5.E-2 ),
8945              SEUIL_FREQ      =SIMP(statut='f',typ='R',defaut= 1.E-2 ),
8946            ),
8947          ),
8948          CALC_MODE       =FACT(statut='d',min=00,max=01,fr="Choix des paramètres pour le calcul des vecteurs propres",
8949            OPTION          =SIMP(statut='f',typ='TXM',defaut="DIRECT",into=("DIRECT","RAYLEIGH") ),
8950            PREC            =SIMP(statut='f',typ='R',defaut= 1.E-5,fr="Précision de convergence" ),
8951            NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 30 ),
8952          ),
8953          VERI_MODE       =FACT(statut='d',min=00,max=01,
8954            STOP_ERREUR     =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
8955            SEUIL           =SIMP(statut='f',typ='R',defaut= 1.E-2,fr="Valeur limite admise pour l ereur a posteriori des modes"  ),
8956          ),
8957          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
8958          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
8959 )  ;
8960 #& MODIF COMMANDE  DATE 24/05/2000   AUTEUR D6BHHBQ B.QUINNEZ 
8961 def mode_iter_simult_prod(MATR_A,MATR_C,TYPE_RESU,**args ):
8962   if TYPE_RESU == "MODE_FLAMB" : return mode_flamb
8963   if AsType(MATR_C) == matr_asse_depl_r : return mode_meca_c
8964   if AsType(MATR_A) == matr_asse_depl_r : return mode_meca
8965   if AsType(MATR_A) == matr_asse_pres_r : return mode_acou
8966   if AsType(MATR_A) == matr_asse_gene_r : return mode_gene
8967   raise AsException("type de concept resultat non prevu")
8968
8969 MODE_ITER_SIMULT=OPER(nom="MODE_ITER_SIMULT",op=  45,sd_prod=mode_iter_simult_prod,
8970                       fr="Modes propres par itérations simultanées ; valeurs propres et modes propres réels ou complexes",
8971                       docu="U4.52.03-E",reentrant='n',
8972          MATR_A          =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ) ),
8973          MATR_B          =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ) ),
8974          MATR_C          =SIMP(statut='f',position='global',typ=matr_asse_depl_r ),
8975          METHODE         =SIMP(statut='f',position='global',typ='TXM',defaut="SORENSEN",into=("TRI_DIAG","JACOBI","SORENSEN") ),
8976          TYPE_RESU       =SIMP(statut='f',position='global',typ='TXM',defaut="DYNAMIQUE",into=("MODE_FLAMB","DYNAMIQUE"),
8977                                fr="Type d analyse" ),
8978          OPTION          =SIMP(statut='f',typ='TXM',defaut="SANS",into=("MODE_RIGIDE","SANS"),fr="Calcul des modes de corps rigide, uniquement pour la méthode TRI_DIAG" ),
8979
8980          b_flamb         =BLOC(condition = "TYPE_RESU == 'MODE_FLAMB'",
8981            CALC_FREQ       =FACT(statut='d',min=00,max=01,
8982              OPTION          =SIMP(statut='f',typ='TXM',defaut="PLUS_PETITE",into=("PLUS_PETITE","BANDE","CENTRE"),
8983                                    fr="Choix de l option et par conséquent du shift du problème modal" ),
8984              b_plus_petite =BLOC(condition = "OPTION == 'PLUS_PETITE'",fr="Recherche des plus petites valeurs propres",
8985                NMAX_FREQ       =SIMP(statut='f',typ='I',defaut= 10 ),
8986              ),
8987              b_centre      =BLOC(condition = "OPTION == 'CENTRE'",fr="Recherche des valeurs propres les plus proches d une valeur donnée",
8988                CHAR_CRIT       =SIMP(statut='o',typ='R',min=01,max=01,fr="Charge critique autour de laquelle on cherche les charges critiques propres"),
8989              ),
8990              b_bande       =BLOC(condition = "(OPTION == 'BANDE')",fr="Recherche des valeurs propres dans une bande donnée",
8991                CHAR_CRIT       =SIMP(statut='o',typ='R',min=02,max=02,fr="Valeur des deux charges critiques délimitant la bande de recherche"),
8992              ),           
8993              APPROCHE        =SIMP(statut='f',typ='TXM',defaut="REEL",into=("REEL","IMAG"),fr="Choix du pseudo-produit scalaire pour la résolution du problème quadratique" ),           
8994              DIM_SOUS_ESPACE =SIMP(statut='f',typ='I' ),
8995              b_tri_diag =BLOC(condition = "METHODE == 'TRI_DIAG'",
8996                PREC_ORTHO      =SIMP(statut='f',typ='R',defaut= 1.E-12 ),
8997                NMAX_ITER_ORTHO =SIMP(statut='f',typ='I',defaut= 5 ),
8998                PREC_LANCZOS    =SIMP(statut='f',typ='R',defaut= 1.E-8 ),
8999                NMAX_ITER_QR    =SIMP(statut='f',typ='I',defaut= 30 ), 
9000              ),
9001              b_jacobi =BLOC(condition = "METHODE == 'JACOBI'",
9002                PREC_BATHE      =SIMP(statut='f',typ='R',defaut= 1.E-10 ),
9003                NMAX_ITER_BATHE =SIMP(statut='f',typ='I',defaut= 40 ),
9004                PREC_JACOBI     =SIMP(statut='f',typ='R',defaut= 1.E-2 ),
9005                NMAX_ITER_JACOBI=SIMP(statut='f',typ='I',defaut= 12 ),
9006              ),
9007              b_sorensen =BLOC(condition = "METHODE == 'SORENSEN'",
9008                PREC_SOREN      =SIMP(statut='f',typ='R',defaut= 0.E+0 ),  
9009                NMAX_ITER_SOREN =SIMP(statut='f',typ='I',defaut= 20 ),  
9010                PARA_ORTHO_SOREN=SIMP(statut='f',typ='R',defaut= 0.717 ),
9011              ),
9012              NPREC_SOLVEUR   =SIMP(statut='f',typ='I',defaut= 8 ),
9013              NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 5 ),
9014              PREC_SHIFT      =SIMP(statut='f',typ='R',defaut= 5.E-2 ),
9015              SEUIL_FREQ      =SIMP(statut='f',typ='R',defaut= 1.E-2 ),
9016            ),
9017          ),
9018
9019          b_dynam        =BLOC(condition = "TYPE_RESU == 'DYNAMIQUE'",
9020            CALC_FREQ       =FACT(statut='d',min=00,max=01,
9021              OPTION          =SIMP(statut='f',typ='TXM',defaut="PLUS_PETITE",into=("PLUS_PETITE","BANDE","CENTRE"),
9022                                    fr="Choix de l option et par conséquent du shift du problème modal" ),
9023              b_plus_petite =BLOC(condition = "OPTION == 'PLUS_PETITE'",fr="Recherche des plus petites valeurs propres",
9024                NMAX_FREQ       =SIMP(statut='f',typ='I',defaut= 10 ),
9025              ),
9026              b_centre       =BLOC(condition = "OPTION == 'CENTRE'",fr="Recherche des valeurs propres les plus proches d une valeur donnée",
9027                FREQ            =SIMP(statut='o',typ='R',min=01,max=01,fr="Fréquence autour de laquelle on cherche les fréquences propres"),
9028                AMOR_REDUIT     =SIMP(statut='f',typ='R',max=01),
9029                NMAX_FREQ       =SIMP(statut='f',typ='I',defaut= 10 ),
9030              ),
9031              b_bande         =BLOC(condition = "(OPTION == 'BANDE')",fr="Recherche des valeurs propres dans une bande donnée",
9032                FREQ            =SIMP(statut='o',typ='R',min=02,max=02,fr="Valeur des deux fréquences délimitant la bande de recherche"),
9033              ),           
9034              APPROCHE        =SIMP(statut='f',typ='TXM',defaut="REEL",into=("REEL","IMAG"),fr="Choix du pseudo-produit scalaire pour la résolution du problème quadratique" ),           
9035              DIM_SOUS_ESPACE =SIMP(statut='f',typ='I' ),
9036              b_tri_diag =BLOC(condition = "METHODE == 'TRI_DIAG'",
9037                PREC_ORTHO      =SIMP(statut='f',typ='R',defaut= 1.E-12 ),
9038                NMAX_ITER_ORTHO =SIMP(statut='f',typ='I',defaut= 5 ),
9039                PREC_LANCZOS    =SIMP(statut='f',typ='R',defaut= 1.E-8 ),
9040                NMAX_ITER_QR    =SIMP(statut='f',typ='I',defaut= 30 ), 
9041              ),
9042              b_jacobi =BLOC(condition = "METHODE == 'JACOBI'",
9043                PREC_BATHE      =SIMP(statut='f',typ='R',defaut= 1.E-10 ),
9044                NMAX_ITER_BATHE =SIMP(statut='f',typ='I',defaut= 40 ),
9045                PREC_JACOBI     =SIMP(statut='f',typ='R',defaut= 1.E-2 ),
9046                NMAX_ITER_JACOBI=SIMP(statut='f',typ='I',defaut= 12 ),
9047              ),
9048              b_sorensen =BLOC(condition = "METHODE == 'SORENSEN'",
9049                PREC_SOREN      =SIMP(statut='f',typ='R',defaut= 0.E+0 ),  
9050                NMAX_ITER_SOREN =SIMP(statut='f',typ='I',defaut= 20 ),  
9051                PARA_ORTHO_SOREN=SIMP(statut='f',typ='R',defaut= 0.717 ),
9052              ),
9053              NPREC_SOLVEUR   =SIMP(statut='f',typ='I',defaut= 8 ),
9054              NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 5 ),
9055              PREC_SHIFT      =SIMP(statut='f',typ='R',defaut= 5.E-2 ),
9056              SEUIL_FREQ      =SIMP(statut='f',typ='R',defaut= 1.E-2 ),
9057            ),
9058          ),
9059
9060          VERI_MODE       =FACT(statut='d',min=00,max=01,
9061            STOP_ERREUR     =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
9062            PREC_SHIFT      =SIMP(statut='f',typ='R',defaut= 5.E-3 ),
9063            SEUIL           =SIMP(statut='f',typ='R',defaut= 1.E-6,fr="Valeur limite admise pour l ereur a posteriori des modes" ),
9064            STURM           =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
9065          ),
9066          STOP_FREQ_VIDE  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
9067          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
9068          TITRE           =SIMP(statut='f',typ='TXM',max='**'),        
9069 )  ;
9070 #& MODIF COMMANDE  DATE 11/02/98   AUTEUR CIBHHLV L.VIVAN 
9071 MODE_STATIQUE=OPER(nom="MODE_STATIQUE",op=  93,sd_prod=mode_stat,
9072                    fr="Calcul de modes statiques",
9073                    docu="U4.52.14-E",reentrant='n',
9074          MATR_RIGI       =SIMP(statut='o',typ=matr_asse_depl_r ),
9075          MATR_MASS       =SIMP(statut='f',typ=matr_asse_depl_r ),
9076          DDL_IMPO        =FACT(statut='f',min=01,max='**',
9077            regles=(UN_PARMI('TOUT','NOEUD','GROUP_NO'),
9078                    UN_PARMI('TOUT_CMP','AVEC_CMP','SANS_CMP'),),
9079            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
9080            NOEUD           =SIMP(statut='f',typ=no,max='**'),
9081            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
9082            TOUT_CMP        =SIMP(statut='f',typ='TXM',into=("OUI",) ),
9083            AVEC_CMP        =SIMP(statut='f',typ='TXM',max='**'),
9084            SANS_CMP        =SIMP(statut='f',typ='TXM',max='**'),
9085          ),
9086          FORCE_NODALE    =FACT(statut='f',min=01,max='**',
9087            regles=(UN_PARMI('TOUT','NOEUD','GROUP_NO'),
9088                    UN_PARMI('TOUT_CMP','AVEC_CMP','SANS_CMP'),),
9089            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
9090            NOEUD           =SIMP(statut='f',typ=no,max='**'),
9091            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
9092            TOUT_CMP        =SIMP(statut='f',typ='TXM',into=("OUI",) ),
9093            AVEC_CMP        =SIMP(statut='f',typ='TXM',max='**'),
9094            SANS_CMP        =SIMP(statut='f',typ='TXM',max='**'),
9095          ),
9096          ACCE_UNIF       =FACT(statut='f',min=01,max='**',
9097            regles=(UN_PARMI('AXE','DIRECTION', ),),
9098            AXE             =SIMP(statut='f',typ='TXM',into=("X","Y","Z"),max=03),
9099            DIRECTION       =SIMP(statut='f',typ='R',max=03),
9100            b_dir           =BLOC(condition = "DIRECTION != None",
9101              NOM_DIR         =SIMP(statut='f',typ='TXM' ),
9102            ), 
9103          ),
9104          ACCE_IMPO       =FACT(statut='f',min=01,max='**',
9105             regles=(UN_PARMI('TOUT','NOEUD','GROUP_NO'),
9106                     UN_PARMI('TOUT_CMP','AVEC_CMP','SANS_CMP'),),
9107            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
9108            NOEUD           =SIMP(statut='f',typ=no,max='**'),
9109            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
9110            TOUT_CMP        =SIMP(statut='f',typ='TXM',into=("OUI",) ),
9111            AVEC_CMP        =SIMP(statut='f',typ='TXM',max='**'),
9112            SANS_CMP        =SIMP(statut='f',typ='TXM',max='**'),
9113          ),
9114          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
9115          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ,) ),
9116 )  ;
9117 #& MODIF COMMANDE  DATE 03/05/2000   AUTEUR CIBHHAB N.RAHNI 
9118 MODI_BASE_MODALE=OPER(nom="MODI_BASE_MODALE",op= 149,sd_prod=mode_meca,
9119                       fr="Modélisation d une base modale pour tenir compte du couplage fluidélastique (mêmes déformées modales, modification des valeurs des fréquences et amortissements)",
9120                       docu="U4.66.21-C",reentrant='f',
9121 #  la commande modi_base _modale : reentrant = f ou o                      
9122          regles=(EXCLUS('AMOR_UNIF','AMOR_REDUIT', ),),
9123          BASE            =SIMP(statut='o',typ=mode_meca ),
9124          BASE_ELAS_FLUI  =SIMP(statut='o',typ=melasflu ),
9125          NUME_VITE_FLUI  =SIMP(statut='o',typ='I' ),
9126          NUME_ORDRE      =SIMP(statut='f',typ='I',max='**'),
9127          AMOR_REDUIT     =SIMP(statut='f',typ='R',max='**'),
9128          AMOR_UNIF       =SIMP(statut='f',typ='R' ),
9129          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
9130          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
9131 )  ;
9132 #& MODIF COMMANDE  DATE 22/05/2000   AUTEUR AUBHHMB M.BONNAMY 
9133 MODI_MAILLAGE=OPER(nom="MODI_MAILLAGE",op= 154,sd_prod=maillage,
9134                    fr="Modification de la connectivité de groupes de mailles 2D ou 3D affectées à la modélisation de contact",
9135                    docu="U4.23.04-C",reentrant='o',
9136       regles=(UN_PARMI('ORIE_CONTACT','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D',
9137                        'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE','MODI_MAILLE'),
9138               EXCLUS('EQUE_PIQUA','PLAQ_TUBE'),
9139               EXCLUS('EQUE_PIQUA','TUBE_COUDE'),),
9140          MAILLAGE        =SIMP(statut='o',typ=maillage ),         
9141          
9142          ORIE_CONTACT    =FACT(statut='f',min=01,max=01,
9143            GROUP_MA        =SIMP(statut='o',typ=grma,max='**'),
9144          ),
9145          
9146          DEFORME         =FACT(statut='f',min=01,max=01,
9147            OPTION          =SIMP(statut='o',typ='TXM',into=("TRAN",) ),
9148            DEPL            =SIMP(statut='o',typ=cham_no_depl_r ),
9149          ),
9150          
9151          EQUE_PIQUA      =FACT(statut='f',min=01,max=01,
9152            GROUP_NO        =SIMP(statut='o',typ=grno),
9153            E_BASE          =SIMP(statut='o',typ='R' ),
9154            DEXT_BASE       =SIMP(statut='o',typ='R' ),
9155            L_BASE          =SIMP(statut='o',typ='R' ),
9156            L_CHANF         =SIMP(statut='o',typ='R' ),
9157            H_SOUD          =SIMP(statut='o',typ='R' ),
9158            ANGL_SOUD       =SIMP(statut='o',typ='R' ),
9159            JEU_SOUD        =SIMP(statut='o',typ='R' ),
9160            E_CORP          =SIMP(statut='o',typ='R' ),
9161            DEXT_CORP       =SIMP(statut='o',typ='R' ),
9162            AZIMUT          =SIMP(statut='o',typ='R' ),
9163            RAFF_MAIL       =SIMP(statut='o',typ='TXM' ),
9164            X_MAX           =SIMP(statut='o',typ='R' ),
9165          ),
9166          ORIE_PEAU_2D    =FACT(statut='f',min=01,max='**',
9167            GROUP_MA        =SIMP(statut='o',typ=grma,max='**'),
9168          ),
9169          ORIE_PEAU_3D    =FACT(statut='f',min=01,max='**',
9170            GROUP_MA        =SIMP(statut='o',typ=grma,max='**'),
9171          ),
9172          ORIE_NORM_COQUE =FACT(statut='f',min=01,max='**',
9173            regles=(EXCLUS('NOEUD','GROUP_NO'),
9174                    PRESENT_PRESENT('NOEUD','VECT_NORM'),
9175                    PRESENT_PRESENT('GROUP_NO','VECT_NORM'),),
9176            GROUP_MA        =SIMP(statut='o',typ=grma,max='**'),
9177            VECT_NORM       =SIMP(statut='f',typ='R',max=03),
9178            NOEUD           =SIMP(statut='f',typ=no),
9179            GROUP_NO        =SIMP(statut='f',typ=grno),
9180          ),
9181          b_modele        =BLOC(condition = "(ORIE_PEAU_2D != None) or (ORIE_PEAU_3D != None) or(ORIE_NORM_COQUE != None)",
9182            MODELE          =SIMP(statut='o',typ=modele ),
9183          ),
9184          PLAQ_TUBE       =FACT(statut='f',min=01,max=01,
9185            DEXT            =SIMP(statut='o',typ='R' ),
9186            EPAIS           =SIMP(statut='o',typ='R' ),
9187            L_TUBE_P1       =SIMP(statut='o',typ='R' ),
9188            AZIMUT          =SIMP(statut='f',typ='R',defaut= 90. ),
9189            COUTURE         =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON",)  ),
9190          ),
9191          TUBE_COUDE      =FACT(statut='f',min=01,max=01,
9192            ANGLE           =SIMP(statut='o',typ='R' ),
9193            R_CINTR         =SIMP(statut='o',typ='R' ),
9194            L_TUBE_P1       =SIMP(statut='o',typ='R' ),
9195          ),
9196          MODI_MAILLE     =FACT(statut='f',min=01,max=01,
9197            regles=(AU_MOINS_UN('GROUP_MA_FOND','MAILLE_FOND','GROUP_NO_FOND','NOEUD_FOND'),),
9198            OPTION          =SIMP(statut='o',typ='TXM',into=("NOEUD_QUART",) ),
9199            GROUP_MA_FOND   =SIMP(statut='f',typ=grma,max='**'),
9200            MAILLE_FOND     =SIMP(statut='f',typ=ma,max='**'),
9201            GROUP_NO_FOND   =SIMP(statut='f',typ=grno,max='**'),
9202            NOEUD_FOND      =SIMP(statut='f',typ=no,max='**'),
9203          ),
9204          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
9205 )  ;
9206 #& MODIF COMMANDE  DATE 07/04/98   AUTEUR ACBHHCD G.DEVESA 
9207 MODI_OBSTACLE=OPER(nom="MODI_OBSTACLE",op=182,sd_prod=obstacle,
9208                    fr=" ",docu="U4.44.22-A",reentrant='f',
9209       regles=(PRESENT_ABSENT('R_MOBILE','CRAYON'),),
9210          TABL_USURE      =SIMP(statut='f',typ=tabl_post_usur),
9211          INST            =SIMP(statut='f',typ='R'),  
9212          OBSTACLE        =SIMP(statut='f',typ=obstacle),
9213          GUIDE           =SIMP(statut='o',typ=obstacle),
9214          CRAYON          =SIMP(statut='f',typ=obstacle),
9215          R_MOBILE        =SIMP(statut='f',typ='R'),  
9216          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
9217 )  ;
9218 #& MODIF COMMANDE  DATE 05/09/2000   AUTEUR CIBHHLV L.VIVAN 
9219 def norm_mode_prod(MODE,**args ):
9220   if AsType(MODE) == mode_meca   : return mode_meca
9221   if AsType(MODE) == mode_meca_c : return mode_meca_c
9222   if AsType(MODE) == mode_flamb  : return mode_flamb
9223   raise AsException("type de concept resultat non prevu")
9224
9225 NORM_MODE=OPER(nom="NORM_MODE",op=  37,sd_prod=norm_mode_prod,
9226                fr="Normalisation de modes propres",
9227                docu="U4.52.11-E",reentrant='f',
9228          regles=(UN_PARMI('NORME','NOEUD','AVEC_CMP','SANS_CMP'),),
9229          MODE            =SIMP(statut='o',typ=(mode_meca,mode_flamb) ),
9230          NORME           =SIMP(statut='f',typ='TXM',fr="Norme prédéfinie : masse généralisée, euclidienne,...",
9231                                into=("MASS_GENE","RIGI_GENE","EUCL","EUCL_TRAN","TRAN","TRAN_ROTA") ),
9232          NOEUD           =SIMP(statut='f',typ=no, fr="Composante donnée d un noeud spécifié égale à 1"),
9233          b_noeud         =BLOC(condition = "NOEUD != None",                          
9234            NOM_CMP         =SIMP(statut='o',typ='TXM' ),
9235          ),
9236          AVEC_CMP        =SIMP(statut='f',typ='TXM',fr="Norme plus grande composante = 1 en prenant seulement en compte les degrés de libertés suivant",max='**'),
9237          SANS_CMP        =SIMP(statut='f',typ='TXM',fr="Norme plus grande composante = 1 en ne prenant pas en compte les degrés de libertés suivant",max='**'),
9238          MASS_INER       =SIMP(statut='f',typ=tabl_mass_iner ),
9239          MODE_SIGNE      =FACT(statut='f',min=00,max=01,fr="Imposer un signe sur une des composantes des modes",
9240            NOEUD           =SIMP(statut='o',typ=no,fr="Noeud où sera imposé le signe"),
9241            NOM_CMP         =SIMP(statut='o',typ='TXM',fr="Composante du noeud où sera imposé le signe" ),
9242            SIGNE           =SIMP(statut='f',typ='TXM',defaut="POSITIF",into=("NEGATIF","POSITIF"),fr="Choix du signe" ),
9243          ),
9244          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
9245          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
9246 )  ;
9247 #& MODIF COMMANDE  DATE 19/05/2000   AUTEUR JFBHHUC C.ROSE 
9248 NUME_DDL=OPER(nom="NUME_DDL",op=11,sd_prod=nume_ddl,docu="U4.61.11-F",reentrant='n',
9249               fr="Etablissement de la numérotation des ddl avec ou sans renumérotation et du stockage de la matrice",
9250          MATR_RIGI       =SIMP(statut='o',typ=(matr_elem_depl_r ,matr_elem_depl_c,   
9251                                                matr_elem_temp_r,matr_elem_pres_c),max='**' ),
9252          METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
9253          b_mult_front    =BLOC(condition="METHODE=='MULT_FRONT'",fr="paramètres associés à la méthode multifrontale",
9254            RENUM           =SIMP(statut='f',typ='TXM',into=("MD","MDA","METIS") ),
9255          ),
9256          b_ldlt          =BLOC(condition="METHODE=='LDLT'",fr="paramètres associés à la méthode LDLT",
9257            RENUM           =SIMP(statut='f',typ='TXM',into=("RCMK","SANS") ),
9258            TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400.),  
9259          ),
9260          b_gcpc          =BLOC(condition="METHODE=='GCPC'",fr="paramètres associés à la méthode gradient conjugué",
9261            RENUM           =SIMP(statut='f',typ='TXM',into=("RCMK","SANS") ),
9262          ),
9263          INFO            =SIMP(statut='f',typ='I',into=(1,2)),
9264 )  ;
9265 #& MODIF COMMANDE  DATE 02/10/96   AUTEUR CIBHHLV L.VIVAN 
9266 NUME_DDL_GENE=OPER(nom="NUME_DDL_GENE",op= 127,sd_prod=nume_ddl_gene,
9267                    fr="Etablissement de la numérotation des ddl d un modèle établi en coordonnées généralisées",
9268                     docu="U4.65.03-D",reentrant='n',
9269          MODELE_GENE     =SIMP(statut='f',typ=modele_gene ),
9270          BASE            =SIMP(statut='f',typ=(mode_meca,base_modale,mode_gene ) ),
9271          NB_VECT         =SIMP(statut='f',typ='I',defaut= 9999 ),
9272          STOCKAGE        =SIMP(statut='f',typ='TXM',defaut="LIGN_CIEL",into=("PLEIN","DIAG","LIGN_CIEL") ),
9273          TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400. ),
9274 )  ;
9275 #& MODIF COMMANDE  DATE 04/08/98   AUTEUR SABJLMA P.LATRUBESSE 
9276 POST_DYNA_ALEA=OPER(nom="POST_DYNA_ALEA",op= 132,sd_prod=tabl_post_alea,
9277                     fr="Traitements statistiques de résultats de type interspectre et impression sur fichiers",
9278                     docu="U4.84.04-D",reentrant='n',
9279          regles=(UN_PARMI('NOEUD_I','NUME_ORDRE_I','OPTION'),),
9280          INTE_SPEC       =SIMP(statut='o',typ=tabl_intsp ),
9281          NUME_VITE_FLUI  =SIMP(statut='f',typ='I' ),  
9282          TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
9283          NUME_ORDRE_I    =SIMP(statut='f',typ='I',max='**' ),
9284          NOEUD_I         =SIMP(statut='f',typ=no,max='**'),         
9285          OPTION          =SIMP(statut='f',typ='TXM',into=("DIAG",) ),
9286          b_nume_ordre_i =BLOC(condition = "NUME_ORDRE_I != None",
9287            NUME_ORDRE_J    =SIMP(statut='o',typ='I',max='**' ),   
9288          ),  
9289          b_noeud_i      =BLOC(condition = "NOEUD_I != None",
9290            NOEUD_J         =SIMP(statut='o',typ=no,max='**'),
9291            NOM_CMP_I       =SIMP(statut='o',typ='TXM',max='**' ),  
9292            NOM_CMP_J       =SIMP(statut='o',typ='TXM',max='**' ),     
9293          ),  
9294          DEPASSEMENT     =FACT(statut='f',min=01,max='**',
9295            fr="Loi de dépassement d un seuil pendant une durée donnée",
9296            regles=(ENSEMBLE('VALE_MIN','VALE_MAX'),),
9297            VALE_MIN        =SIMP(statut='f',typ='R' ),  
9298            VALE_MAX        =SIMP(statut='f',typ='R' ),  
9299            PAS             =SIMP(statut='f',typ='R' ),  
9300            DUREE           =SIMP(statut='f',typ='R',defaut= 1. ),  
9301          ),
9302          RAYLEIGH        =FACT(statut='f',min=01,max='**',
9303            fr="Densité de probabilité de pic positif, loi adaptée à des signaux à bande étroite",
9304            regles=(ENSEMBLE('VALE_MIN','VALE_MAX'),),
9305            VALE_MIN        =SIMP(statut='f',typ='R' ),  
9306            VALE_MAX        =SIMP(statut='f',typ='R' ),  
9307            PAS             =SIMP(statut='f',typ='R' ),  
9308          ),
9309          GAUSS           =FACT(statut='f',min=01,max='**',
9310            fr="Densité de probabilité de pic positif, loi normale adaptée à des signaux large bande",
9311            regles=(ENSEMBLE('VALE_MIN','VALE_MAX'),),
9312            VALE_MIN        =SIMP(statut='f',typ='R' ),  
9313            VALE_MAX        =SIMP(statut='f',typ='R' ),  
9314            PAS             =SIMP(statut='f',typ='R' ),  
9315          ),
9316          VANMARCKE       =FACT(statut='f',min=01,max='**',
9317            fr="Probabilité de non dépassement de seuil pendant une durée donnée (analyse sismique)",
9318            regles=(ENSEMBLE('VALE_MIN','VALE_MAX'),),
9319            VALE_MIN        =SIMP(statut='f',typ='R' ),  
9320            VALE_MAX        =SIMP(statut='f',typ='R' ),  
9321            PAS             =SIMP(statut='f',typ='R' ),  
9322            DUREE           =SIMP(statut='f',typ='R',defaut= 10. ),  
9323          ),
9324          MOMENT          =SIMP(statut='f',typ='I',max='**',fr="Moments spectraux en complément des cinq premiers" ),  
9325          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),  
9326          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
9327 )  ;
9328 #& MODIF COMMANDE  DATE 11/02/98   AUTEUR CIBHHLV L.VIVAN 
9329 POST_DYNA_MODA_T=OPER(nom="POST_DYNA_MODA_T",op= 130,sd_prod=tabl_post_dyna,
9330                       fr="Post-traitements en coordonnées généralisées issus de DYNA_TRAN_MODAL",
9331                       docu="U4.84.02-D",reentrant='n',
9332         regles=(UN_PARMI('CHOC','RELA_EFFO_DEPL', ),),
9333          RESU_GENE       =SIMP(statut='o',typ=tran_gene ),
9334          CHOC            =FACT(statut='f',min=01,max='**',
9335                                fr="Analyse des non linéarités de choc",
9336            INST_INIT       =SIMP(statut='f',typ='R',defaut= -1. ),  
9337            INST_FIN        =SIMP(statut='f',typ='R',defaut= 999. ),  
9338            NB_BLOC         =SIMP(statut='f',typ='I',defaut= 1 ),  
9339            SEUIL_FORCE     =SIMP(statut='f',typ='R',defaut= 0.E+0 ),  
9340            DUREE_REPOS     =SIMP(statut='f',typ='R',defaut= 0.E+0 ),  
9341            OPTION          =SIMP(statut='f',typ='TXM',defaut="USURE",into=("IMPACT","USURE") ),
9342            NB_CLASSE       =SIMP(statut='f',typ='I',defaut= 10 ),  
9343          ),
9344          RELA_EFFO_DEPL  =FACT(statut='f',min=01,max=01,
9345                                fr="Analyse des relationsnon linéaires effort-déplacement",
9346            NOEUD           =SIMP(statut='o',typ=no),
9347            NOM_CMP         =SIMP(statut='o',typ='TXM' ),  
9348          ),
9349          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
9350          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),  
9351 )  ;
9352 #& MODIF COMMANDE  DATE 05/12/2000   AUTEUR G8BHHXD X.DESROCHES 
9353 def post_elem_prod( MASS_INER,ENER_POT,ENER_CIN,INDU_MUTU,WEIBULL,
9354                     CARA_GEOM,CARA_POUTRE,RICE_TRACEY,CHAR_LIMITE,
9355                     INDIC_ENER,INDIC_SEUIL,ENER_ELAS,ENER_TOTALE,
9356                     AIRE_INTERNE,**args ):
9357   if MASS_INER    != None  : return tabl_mass_iner
9358   if ENER_POT     != None  : return tabl_ener_pot
9359   if ENER_CIN     != None  : return tabl_ener_cin
9360   if INDU_MUTU    != None  : return tabl_indu_mutu
9361   if WEIBULL      != None  : return tabl_weibull
9362   if CARA_GEOM    != None  : return tabl_cara_geom
9363   if CARA_POUTRE  != None  : return tabl_cara_geom
9364   if RICE_TRACEY  != None  : return tabl_rice_tracey
9365   if CHAR_LIMITE  != None  : return tabl_char_limite
9366   if INDIC_ENER   != None  : return tabl_indic_ener
9367   if INDIC_SEUIL  != None  : return tabl_indic_seuil
9368   if ENER_ELAS    != None  : return tabl_ener_elas
9369   if ENER_TOTALE  != None  : return tabl_ener_totale
9370   if AIRE_INTERNE != None  : return tabl_aire_int
9371   raise AsException("type de concept resultat non prevu")
9372
9373 POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=post_elem_prod,docu="U4.81.22-D",reentrant='f',
9374                fr="Calcul de quantités globales (masse, inerties, énergie, ...) sur tout ou partie du modèle",
9375          regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE',       
9376                         'NOEUD_CMP','LIST_ORDRE','LIST_INST','LIST_FREQ','NOM_CAS'),
9377                  EXCLUS('CHAM_GD','RESULTAT'),
9378                  UN_PARMI('MASS_INER', 'ENER_POT', 'ENER_CIN', 'INDU_MUTU',
9379                           'WEIBULL', 'RICE_TRACEY', 'CARA_GEOM','CHAR_LIMITE',
9380                           'CARA_POUTRE', 'INDIC_ENER', 'INDIC_SEUIL',
9381                           'AIRE_INTERNE','ENER_ELAS','ENER_TOTALE'),
9382                  PRESENT_PRESENT( 'MASS_INER', 'MODELE' ),
9383                  PRESENT_PRESENT( 'CARA_GEOM', 'MODELE' ),
9384                  PRESENT_PRESENT( 'AIRE_INTERNE', 'MODELE' ),
9385                  PRESENT_PRESENT( 'CARA_POUTRE', 'MODELE' ),
9386                  PRESENT_PRESENT( 'ENER_POT', 'MODELE', 'CHAM_MATER' ),
9387                  PRESENT_PRESENT( 'ENER_CIN', 'MODELE', 'CHAM_MATER' ),
9388                  PRESENT_PRESENT( 'INDU_MUTU', 'MODELE','CHARGE' ),
9389                  PRESENT_PRESENT( 'WEIBULL', 'MODELE', 'CHAM_MATER' ),
9390                  PRESENT_PRESENT( 'RICE_TRACEY', 'MODELE', 'CHAM_MATER' ),
9391                  PRESENT_PRESENT( 'INDIC_ENER', 'MODELE', 'CHAM_MATER' ),
9392                  PRESENT_PRESENT( 'INDIC_SEUIL', 'MODELE', 'CHAM_MATER' ),
9393                  PRESENT_PRESENT( 'ENER_ELAS', 'MODELE', 'CHAM_MATER' ),
9394                  PRESENT_PRESENT( 'ENER_TOTALE', 'MODELE', 'CHAM_MATER' ),
9395                  PRESENT_PRESENT( 'CHAR_LIMITE', 'MODELE', 'CHAM_MATER' ),
9396              ),    
9397          MODELE          =SIMP(statut='o',typ=modele),
9398          CHAM_MATER      =SIMP(statut='f',typ=cham_mater),
9399          CARA_ELEM       =SIMP(statut='f',typ=cara_elem),
9400          CHARGE          =SIMP(statut='f',typ=(char_meca,char_ther,char_acou),max='**' ),
9401          MODE_FOURIER    =SIMP(statut='f',typ='I',defaut=0),  
9402          NUME_COUCHE     =SIMP(statut='f',typ='I',defaut=1),  
9403          NIVE_COUCHE     =SIMP(statut='f',typ='TXM',into=("INF","SUP","MOY"),defaut="MOY"),  
9404          ANGLE           =SIMP(statut='f',typ='I',defaut=0),  
9405          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),  
9406          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
9407          GEOMETRIE       =SIMP(statut='f',typ='TXM',defaut="INITIALE",into=("INITIALE","DEFORMEE")),
9408          CHAM_GD         =SIMP(statut='f',typ=(cham_no_depl_r,cham_no_temp_r,cham_elem_ener_r) ),
9409          RESULTAT        =SIMP(statut='f',typ=(mode_meca,evol_elas,evol_ther,evol_noli,mult_elas,fourier_elas) ),
9410          TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
9411          NUME_ORDRE      =SIMP(statut='f',typ='I',max='**'),  
9412          LIST_ORDRE      =SIMP(statut='f',typ=listis),
9413          INST            =SIMP(statut='f',typ='R',max='**'),  
9414          LIST_INST       =SIMP(statut='f',typ=listr8),
9415          FREQ            =SIMP(statut='f',typ='R',max='**'),  
9416          LIST_FREQ       =SIMP(statut='f',typ=listr8),
9417          NUME_MODE       =SIMP(statut='f',typ='I',max='**'),  
9418          NOEUD_CMP       =SIMP(statut='f',typ='TXM',max='**'),  
9419          NOM_CAS         =SIMP(statut='f',typ='TXM',max='**'),  
9420          PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3),  
9421          CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")),
9422
9423          MASS_INER       =FACT(statut='f',min=1,max='**',
9424            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),),
9425            TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400.),  
9426            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
9427            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
9428            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
9429            ORIG_INER       =SIMP(statut='f',typ='R',min=3,max=3 ),  
9430          ),
9431
9432          ENER_POT        =FACT(statut='f',min=1,max='**',
9433            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),),
9434            TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400.),  
9435            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
9436            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
9437            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
9438          ),
9439
9440          ENER_CIN        =FACT(statut='f',min=1,max='**',
9441            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),),
9442            TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400.),  
9443            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
9444            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
9445            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
9446          ),
9447
9448          INDU_MUTU       =FACT(statut='f',min=1,max='**',
9449            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),),
9450            TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400.),  
9451            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
9452            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
9453            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
9454          ),
9455
9456          WEIBULL         =FACT(statut='f',min=1,max='**',
9457            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),),
9458            TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400.),  
9459            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
9460            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
9461            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
9462            OPTION          =SIMP(statut='f',typ='TXM',defaut="SIGM_ELGA",into=("SIGM_ELGA","SIGM_ELMOY")),
9463            CORR_PLAST      =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")),
9464            COEF_MULT       =SIMP(statut='f',typ='R',defaut=1.),  
9465          ),
9466
9467          RICE_TRACEY     =FACT(statut='f',min=1,max='**',
9468            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),),
9469            TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400.),  
9470            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
9471            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
9472            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
9473            OPTION          =SIMP(statut='f',typ='TXM',defaut="SIGM_ELGA",into=("SIGM_ELGA","SIGM_ELMOY")),
9474            LOCAL           =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")),
9475          ),
9476
9477          INDIC_ENER      =FACT(statut='f',min=1,max='**',
9478            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),),
9479            TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400.),  
9480            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
9481            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
9482            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
9483          ),
9484
9485          ENER_ELAS       =FACT(statut='f',min=1,max='**',
9486            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),),
9487            TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400.),  
9488            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
9489            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
9490            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
9491          ),
9492
9493          ENER_TOTALE    =FACT(statut='f',min=1,max='**',
9494            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),),
9495            TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400.),  
9496            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
9497            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
9498            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
9499          ),
9500
9501          CHAR_LIMITE     =FACT(statut='f',min=00,max=01,
9502            TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400.),  
9503            TOUT            =SIMP(statut='o',typ='TXM',into=("OUI",)),
9504            N               =SIMP(statut='f',typ='R',max=1),  
9505          ),
9506
9507          INDIC_SEUIL     =FACT(statut='f',min=1,max='**',
9508            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),),
9509            TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400.),  
9510            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
9511            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
9512            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
9513          ),
9514
9515          CARA_GEOM       =FACT(statut='f',min=1,max='**',
9516            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),),
9517            TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400.),  
9518            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
9519            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
9520            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
9521            SYME_X          =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
9522            SYME_Y          =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
9523            ORIG_INER       =SIMP(statut='f',typ='R',min=2,max=2),  
9524          ),
9525
9526          CARA_POUTRE     =FACT(statut='f',min=1,max='**',
9527            regles=(AU_MOINS_UN('TOUT','GROUP_MA'),
9528                    ENSEMBLE('LONGUEUR','LIAISON','MATERIAU'),),
9529            TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400.),  
9530            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
9531            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
9532            GROUP_MA_INTE   =SIMP(statut='f',typ=grma,max='**'),
9533            CARA_GEOM       =SIMP(statut='f',typ=tabl_cara_geom),
9534            LAPL_PHI        =SIMP(statut='f',typ=evol_ther),
9535            LAPL_PHI_Y      =SIMP(statut='f',typ=evol_ther),
9536            LAPL_PHI_Z      =SIMP(statut='f',typ=evol_ther),
9537            LIAISON         =SIMP(statut='f',typ='TXM',into=("ROTULE","ENCASTREMENT")),
9538            LONGUEUR        =SIMP(statut='f',typ='R'),  
9539            MATERIAU        =SIMP(statut='f',typ=mater),
9540            OPTION          =SIMP(statut='f',typ='TXM',into=("CARA_TORSION","CARA_CISAILLEMENT","CARA_GAUCHI") ),
9541          ),
9542
9543          AIRE_INTERNE    =FACT(statut='f',min=1,max='**',
9544            GROUP_MA_BORD   =SIMP(statut='o',typ=grma,max='**'),
9545          ),
9546  )  ;
9547 #& MODIF COMMANDE  DATE 16/12/97   AUTEUR CIBHHLV L.VIVAN 
9548 POST_FATI_ALEA=OPER(nom="POST_FATI_ALEA",op=170,sd_prod=tabl_post_f_alea,docu="U4.84.03-C",reentrant='n',
9549                     fr="Calcul du dommage subi par une structure soumise à unesollicitation de type aléatoire",
9550          regles=(ENSEMBLE('MOMENT_SPEC_0','MOMENT_SPEC_2'),
9551                  PRESENT_PRESENT( 'MOMENT_SPEC_4','MOMENT_SPEC_0'),
9552                  UN_PARMI('TABL_POST_ALEA','MOMENT_SPEC_0'), ),
9553          MOMENT_SPEC_0   =SIMP(statut='f',typ='R'),  
9554          MOMENT_SPEC_2   =SIMP(statut='f',typ='R'),  
9555          MOMENT_SPEC_4   =SIMP(statut='f',typ='R'),  
9556          TABL_POST_ALEA  =SIMP(statut='f',typ=tabl_post_alea),
9557          COMPTAGE        =SIMP(statut='o',typ='TXM',into=("PIC","NIVEAU")),
9558          DUREE           =SIMP(statut='f',typ='R',defaut= 1.),  
9559          CORR_KE         =SIMP(statut='f',typ='TXM',into=("RCCM",)),
9560          DOMMAGE         =SIMP(statut='o',typ='TXM',into=("WOHLER",)),
9561          MATER           =SIMP(statut='o',typ=mater),
9562          TITRE           =SIMP(statut='f',typ='TXM',max='**'),  
9563 )  ;
9564 #& MODIF COMMANDE  DATE 01/10/97   AUTEUR CIBHHLV L.VIVAN 
9565 POST_FATIGUE=OPER(nom="POST_FATIGUE",op=136,sd_prod=tabl_post_fatig,docu="U4.83.01-C",reentrant='n',
9566                   fr="Calcul du dommage subi par une structure soumise à une histoire de chargement",
9567          regles=(PRESENT_PRESENT('CORR_KE','MATER'),
9568                  PRESENT_PRESENT('CORR_SIGM_MOYE','MATER'),
9569                  PRESENT_PRESENT('CRITERE','MATER'),   
9570                  PRESENT_PRESENT('DOMMAGE','MATER'),),
9571          HISTOIRE        =FACT(statut='o',min=1,max=1,
9572            regles=(EXCLUS('SIGM','EPSI'),
9573                    EXCLUS('SIGM','SIGM_XX'),
9574                    EXCLUS('SIGM','SIGM_XZ'),
9575                    EXCLUS('SIGM','SIGM_YZ'),
9576                    EXCLUS('SIGM','EPSP'),     
9577                    EXCLUS('SIGM','TEMP',),
9578                    EXCLUS('EPSI','SIGM_XX'),
9579                    EXCLUS('EPSI','SIGM_XZ'),
9580                    EXCLUS('EPSI','SIGM_YZ'),
9581                    EXCLUS('EPSI','EPSP'),     
9582                    EXCLUS('EPSI','TEMP'),
9583                    ENSEMBLE('SIGM_XX','SIGM_YY','SIGM_ZZ','SIGM_XY'),
9584                    ENSEMBLE('SIGM_XZ','SIGM_YZ'),
9585                    ENSEMBLE('EPSP','TEMP'),),
9586            SIGM            =SIMP(statut='f',typ=fonction),
9587            EPSI            =SIMP(statut='f',typ=fonction),
9588            SIGM_XX         =SIMP(statut='f',typ=fonction),
9589            SIGM_YY         =SIMP(statut='f',typ=fonction),
9590            SIGM_ZZ         =SIMP(statut='f',typ=fonction),
9591            SIGM_XY         =SIMP(statut='f',typ=fonction),
9592            SIGM_XZ         =SIMP(statut='f',typ=fonction),
9593            SIGM_YZ         =SIMP(statut='f',typ=fonction),
9594            EPSP            =SIMP(statut='f',typ=fonction),
9595            TEMP            =SIMP(statut='f',typ=fonction),
9596          ),
9597          COMPTAGE        =SIMP(statut='f',typ='TXM',into=("RAINFLOW","RCCM","NATUREL")),
9598          DELTA_OSCI      =SIMP(statut='f',typ='R',defaut= 0.0E+0),  
9599          COEF_MULT       =FACT(statut='f',min=1,max=1,
9600            KT              =SIMP(statut='f',typ='R'),  
9601          ),
9602          CORR_KE         =SIMP(statut='f',typ='TXM',into=("RCCM",)),
9603          CORR_SIGM_MOYE  =SIMP(statut='f',typ='TXM',into=("GOODMAN","GERBER")),
9604          TAHERI_NAPPE    =SIMP(statut='f',typ=fonction),
9605          TAHERI_FONC     =SIMP(statut='f',typ=fonction),
9606          CRITERE         =SIMP(statut='f',typ='TXM',into=("CROSSLAND","PAPADOPOULOS")),
9607          COEF_CORR       =SIMP(statut='f',typ='R'),  
9608          DOMMAGE         =SIMP(statut='f',typ='TXM',into=("WOHLER","MANSON_COFFIN","TAHERI_MANSON",   
9609                                                           "TAHERI_MIXTE","LEMAITRE")),
9610          MATER           =SIMP(statut='f',typ=mater),
9611          CUMUL           =SIMP(statut='f',typ='TXM',into=("LINEAIRE",)),
9612          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
9613          TITRE           =SIMP(statut='f',typ='TXM',max='**'),  
9614 )  ;
9615 #& MODIF COMMANDE  DATE 15/09/1999   AUTEUR F1BHHAJ J.ANGLES 
9616 POST_GOUJ2E=OPER(nom="POST_GOUJ2E",op=187,sd_prod=tabl_post_gouj2e,reentrant='n', 
9617                  fr=" ",docu="U4.GJ.30-A",
9618          TABLE           =SIMP(statut='o',typ=tabl_post_rele),
9619 )  ;
9620 #& MODIF COMMANDE  DATE 31/05/2000   AUTEUR CIBHHLV L.VIVAN 
9621 POST_K1_K2_K3=OPER(nom="POST_K1_K2_K3",op=188,sd_prod=tabl_post_k,
9622                    fr="Calcul des facteurs d intensité des contraintes par extrapolation du champ de déplacements sur les lèvres de la fissure",
9623                    docu="U4.82.05-A",reentrant='n',
9624       regles=(PRESENT_PRESENT('REPERE','VECT_Y', ),),
9625          MODELISATION    =SIMP(statut='o',typ='TXM',into=("3D",
9626                                                            "AXIS",
9627                                                            "D_PLAN",
9628                                                            "C_PLAN"
9629                                                            ),
9630                                fr="Modélisation cohérente avec celle utilisée pour le calcul des déplacements"),
9631          FOND_3D         =SIMP(statut='f',typ=fond_fiss,fr="Fond de fissure issu de DEFI_FOND_FISS"),
9632          b_fond_3d       =BLOC (condition="(FOND_3D != None)",
9633                            MAILLAGE  = SIMP(statut='o',typ=maillage),
9634                            PRECISION = SIMP(statut='f',typ='R',defaut=0.001)
9635                            ),
9636          MATER           =SIMP(statut='o',typ=mater,fr="Matériau homogène et isotrope cohérent avec celui utilisé pour le calcul des déplacements"),
9637          TABL_DEPL_SUP   =SIMP(statut='o',typ=tabl_post_rele,fr="Table issue de post_releve_t sur les noeuds de la lèvre supérieure"),
9638          TABL_DEPL_INF   =SIMP(statut='o',typ=tabl_post_rele,fr="Table issue de post_releve_t sur les noeuds de la lèvre inférieure"),
9639          ABSC_CURV_MAXI  =SIMP(statut='f',typ='R',fr="distance maximum à partir du fond de fissure à utiliser pour le calcul"),  
9640          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
9641          REPERE          =SIMP(statut='f',typ='TXM',into=("LOCAL",),fr="Les déplacements sont transportés dans le repère local à la fissure"),
9642          VECT_Y          =SIMP(statut='f',typ='R',max='**',fr="Vecteur dont la projection sur le plan normal au segment de calcul défini l axe Y local"),  
9643          TITRE           =SIMP(statut='f',typ='TXM',max='**'),  
9644 )  ;
9645 #& MODIF COMMANDE  DATE 27/04/98   AUTEUR CIBHHLV L.VIVAN 
9646 POST_RCCM=OPER(nom="POST_RCCM",op= 165,sd_prod=tabl_post_rccm,
9647                fr="Vérification des critères de niveau 0 et certains critères de niveau A du RCC-M-B3200 (Edition 1991)",
9648                docu="U4.83.11-C",reentrant='n',
9649          MATER           =SIMP(statut='o',typ=mater ),
9650          TYPE_RESU       =SIMP(statut='f',typ='TXM',defaut="VALE_MAX",into=("VALE_MAX","VALE_INST") ),
9651          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
9652          OPTION          =SIMP(statut='o',typ='TXM',max='**',
9653                                into=("PM_PB",
9654                                      "SN",
9655                                      "FATIGUE_SPMAX",
9656                                      "FATIGUE_ZH210"
9657                                      ) ),
9658          SEGMENT         =FACT(statut='o',min=01,max='**',fr="Segment sur lequel s effectue le depouillement",
9659            INTITULE        =SIMP(statut='f',typ='TXM' ),
9660            CHEMIN          =SIMP(statut='o',typ=(courbe,surface) ),
9661          ),
9662          TRANSITOIRE     =FACT(statut='o',min=01,max='**',fr="transitoire à dépouiller",
9663            regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST','LIST_ORDRE'),),
9664            INTITULE        =SIMP(statut='f',typ='TXM' ),
9665            RESULTAT        =SIMP(statut='o',typ=(evol_elas,evol_noli) ),
9666            RESU_SIGM_THER  =SIMP(statut='f',typ=(evol_elas,evol_noli),fr="résultat sous chargement thermique seul" ),
9667            NB_OCCUR        =SIMP(statut='f',typ='I',defaut= 1,fr="nombre d occurences réelles de ce transitoire" ),
9668            NOM_CHAM        =SIMP(statut='f',typ='TXM',into=("SIEF_ELNO_ELGA","SIGM_ELNO_DEPL") ),
9669            TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
9670            NUME_ORDRE      =SIMP(statut='f',typ='I',max='**'),
9671            LIST_ORDRE      =SIMP(statut='f',typ=listis ),
9672            INST            =SIMP(statut='f',typ='R',max='**'),
9673            LIST_INST       =SIMP(statut='f',typ=listr8 ),
9674            b_inst          =BLOC(condition = "(INST != None) or (LIST_INST != None)" ,
9675              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
9676              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("ABSOLU","RELATIF") ),
9677            ), 
9678          ),
9679 )  ;
9680 #& MODIF COMMANDE  DATE 11/10/2000   AUTEUR CIBHHLV L.VIVAN 
9681 POST_RELEVE_T=OPER(nom="POST_RELEVE_T",op=51,sd_prod=tabl_post_rele,docu="U4.81.21-D",reentrant='n',
9682                    fr="Relevé de valeurs et calculs d invariants avec stockage et organisation du relevé dans un concept de type table",
9683          ACTION          =FACT(statut='o',min=01,max='**',
9684            regles=(AU_MOINS_UN('CHEMIN','GROUP_NO','NOEUD'),
9685                    EXCLUS('CHEMIN','GROUP_NO'),
9686                    EXCLUS('CHEMIN','NOEUD'),
9687                    PRESENT_ABSENT('CHEMIN','GROUP_MA','MAILLE'),
9688                    UN_PARMI('RESULTAT','CHAM_GD'),            
9689                    UN_PARMI('TOUT_CMP','NOM_CMP','INVARIANT','ELEM_PRINCIPAUX','RESULTANTE'),
9690                    PRESENT_PRESENT('TRAC_DIR','DIRECTION'),          
9691                    PRESENT_PRESENT('TRAC_DIRECTION','DIRECTION'),
9692                    ENSEMBLE('MOMENT','POINT'),
9693                    PRESENT_PRESENT('MOMENT','RESULTANTE'),
9694                    PRESENT_ABSENT('TOUT_CMP','TRAC_DIRECTION','TRAC_NORMALE'),
9695                    PRESENT_ABSENT('TOUT_CMP','TRAC_DIR','TRAC_NOR'),
9696                    PRESENT_PRESENT('ORIGINE','AXE_Z'),),
9697            INTITULE        =SIMP(statut='o',typ='TXM'),  
9698            CHEMIN          =SIMP(statut='f',typ=(courbe,surface) ),
9699            NOEUD           =SIMP(statut='f',typ=no,max='**'),
9700            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
9701            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
9702            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
9703            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
9704            FORMAT_C        =SIMP(statut='f',typ='TXM',defaut="MODULE",into=("MODULE","REEL","IMAG")),
9705            CHAM_GD         =SIMP(statut='f',typ=(cham_no_depl_r,cham_no_temp_r,cham_no_pres_r,cham_no_var2_r,      
9706                                                  cham_elem_sief_r,cham_elem_epsi_r,cham_elem_flux_r,cham_elem_crit_r,                 
9707                                                  cham_elem_ener_r,cham_elem_dbel_r,cham_elem_pres_r,cham_elem_erreur,                 
9708                                                  cham_elem_vari_r,cham_no_depl_c,cham_no_temp_c,cham_no_pres_c,
9709                                                  cham_elem_sief_c,cham_elem_epsi_c)),
9710            RESULTAT        =SIMP(statut='f',typ=(evol_elas,evol_ther,evol_noli,dyna_trans,          
9711                                                  mode_meca,mode_flamb,mode_acou,base_modale,        
9712                                                  mult_elas,fourier_elas,dyna_harmo,acou_harmo)),
9713            b_extrac        =BLOC(condition = "RESULTAT != None",fr="extraction des résultats",
9714              regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','NUME_MODE','LIST_MODE',         
9715                             'INST','LIST_INST','FREQ','LIST_FREQ','NOM_CAS'), ),           
9716              NOM_CHAM        =SIMP(statut='o',typ='TXM' ),  
9717              TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
9718              NUME_ORDRE      =SIMP(statut='f',typ='I',max='**'),  
9719              LIST_ORDRE      =SIMP(statut='f',typ=listis),
9720              NUME_MODE       =SIMP(statut='f',typ='I',max='**'),  
9721              LIST_MODE       =SIMP(statut='f',typ=listis),
9722              NOM_CAS         =SIMP(statut='f',typ='TXM',max='**'),  
9723              FREQ            =SIMP(statut='f',typ='R',max='**'),  
9724              LIST_FREQ       =SIMP(statut='f',typ=listr8),
9725              INST            =SIMP(statut='f',typ='R',max='**'),  
9726              LIST_INST       =SIMP(statut='f',typ=listr8),
9727              PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-6),  
9728              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")),
9729            ),
9730            TOUT_CMP        =SIMP(statut='f',typ='TXM',into=("OUI",)),
9731            NOM_CMP         =SIMP(statut='f',typ='TXM',max='**'),  
9732            INVARIANT       =SIMP(statut='f',typ='TXM',into=("OUI",)),
9733            ELEM_PRINCIPAUX =SIMP(statut='f',typ='TXM',into=("OUI",) ),
9734            RESULTANTE      =SIMP(statut='f',typ='TXM',max='**'),  
9735            MOMENT          =SIMP(statut='f',typ='TXM',max='**'),  
9736            POINT           =SIMP(statut='f',typ='R',max='**'),  
9737
9738            REPERE          =SIMP(statut='f',typ='TXM',defaut="GLOBAL",
9739                                  into=("GLOBAL","LOCAL","POLAIRE","UTILISATEUR","CYLINDRIQUE"),),
9740            ANGL_NAUT       =SIMP(statut='f',typ='R',min=3,max=3),  
9741            ORIGINE         =SIMP(statut='f',typ='R',min=3,max=3),  
9742            AXE_Z           =SIMP(statut='f',typ='R',min=3,max=3),  
9743
9744            TRAC_NOR        =SIMP(statut='f',typ='TXM',into=("OUI",)),
9745            TRAC_DIR        =SIMP(statut='f',typ='TXM',into=("OUI",)),
9746            DIRECTION       =SIMP(statut='f',typ='R',max='**'),  
9747            TRAC_DIRECTION  =SIMP(statut='f',typ='TXM',into=("OUI",)),
9748            TRAC_NORMALE    =SIMP(statut='f',typ='TXM',into=("OUI",)),
9749  
9750            VECT_Y          =SIMP(statut='f',typ='R',max='**'),  
9751            MOYE_NOEUD      =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")),
9752            OPERATION       =SIMP(statut='o',typ='TXM',into=("EXTRACTION","MOYENNE","MOYENNE_RCCM")),
9753          ),
9754          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
9755          TITRE           =SIMP(statut='f',typ='TXM',max='**'),  
9756 )  ;
9757 #& MODIF COMMANDE  DATE 18/01/99   AUTEUR CIBHHBC B.CIREE 
9758 POST_SIMPLIFIE=OPER(nom="POST_SIMPLIFIE",op=185,sd_prod=tabl_post_simpli,
9759                     fr=" ",docu="U4.PS.10-A",reentrant='n',
9760          MATER           =SIMP(statut='o',typ=(mater) ),
9761          DEF_EQUI        =FACT(statut='f',min=01,max=01,
9762            METHODE         =SIMP(statut='f',typ='TXM',max='**',defaut="UTO_2_3",
9763                                  into=("UTO_2_3",) ),
9764            EPAIS           =SIMP(statut='o',typ='R'),  
9765            LONG_FISS       =SIMP(statut='o',typ='R'),  
9766            LONG_LIGA_INT   =SIMP(statut='o',typ='R'),  
9767            DEXT            =SIMP(statut='o',typ='R'),  
9768            TEMP_ANALYSE    =SIMP(statut='f',typ='R'),  
9769          ),
9770 )  ;
9771 #& MODIF COMMANDE  DATE 07/04/98   AUTEUR ACBHHCD G.DEVESA 
9772 POST_USURE=OPER(nom="POST_USURE",op=153,sd_prod=tabl_post_usur,docu="U4.84.05-C",reentrant='f',
9773                 fr="Calcul des volumes d'usure et des profondeurs d'usure",
9774          regles=(UN_PARMI('RESU_GENE','PUIS_USURE'),
9775                  PRESENT_PRESENT('RESU_GENE','NOEUD'),
9776                  UN_PARMI('INST','LIST_INST'),),
9777          ETAT_INIT       =FACT(statut='f',min=01,max=01,
9778            TABL_USURE      =SIMP(statut='f',typ=tabl_post_usur),
9779            INST_INIT       =SIMP(statut='f',typ='R'),  
9780                          ),
9781          RESU_GENE       =SIMP(statut='f',typ=tran_gene),
9782          NOEUD           =SIMP(statut='f',typ=no,max=1),
9783          INST_INIT       =SIMP(statut='f',typ='R',defaut=-1.0E+0),  
9784          INST_FIN        =SIMP(statut='f',typ='R'),  
9785          NB_BLOC         =SIMP(statut='f',typ='I',defaut= 1 ),  
9786          PUIS_USURE      =SIMP(statut='f',typ='R'),  
9787          LOI_USURE       =SIMP(statut='o',typ='TXM',into=("ARCHARD","KWU_EPRI","EDF_MZ")),
9788          b_archard       =BLOC(condition = "LOI_USURE == 'ARCHARD'",
9789            regles=(EXCLUS('MATER_USURE','OBSTACLE'),
9790                    EXCLUS('MOBILE','USURE_OBST'),),
9791            MOBILE          =FACT(statut='f',min=01,max=01,
9792              COEF_USURE      =SIMP(statut='o',typ='R'), 
9793            ),   
9794            OBSTACLE        =FACT(statut='f',min=01,max=01,
9795              COEF_USURE      =SIMP(statut='o',typ='R'), 
9796            ),   
9797            MATER_USURE     =SIMP(statut='f',typ='TXM'),  
9798            USURE_OBST      =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")),
9799          ),
9800          b_kwu_epri        =BLOC(condition = "LOI_USURE == 'KWU_EPRI'",
9801            regles=(UN_PARMI('MOBILE','MATER_USURE'), 
9802                    EXCLUS('MATER_USURE','OBSTACLE'),
9803                    EXCLUS('MOBILE','USURE_OBST'),),
9804            MOBILE          =FACT(statut='f',min=01,max=01,
9805              COEF_FNOR       =SIMP(statut='f',typ='R'),  
9806              COEF_VTAN       =SIMP(statut='f',typ='R'),  
9807              COEF_USURE      =SIMP(statut='f',typ='R'),  
9808              COEF_K          =SIMP(statut='f',typ='R',defaut=5.0E+0),  
9809              COEF_C          =SIMP(statut='f',typ='R',defaut=10.0E+0),  
9810            ),   
9811            OBSTACLE        =FACT(statut='f',min=01,max=01,
9812              COEF_FNOR       =SIMP(statut='f',typ='R' ),  
9813              COEF_VTAN       =SIMP(statut='f',typ='R' ),  
9814              COEF_USURE      =SIMP(statut='o',typ='R'), 
9815              COEF_K          =SIMP(statut='f',typ='R',defaut=5.0E+0),  
9816              COEF_C          =SIMP(statut='f',typ='R',defaut=10.0E+0),  
9817            ),   
9818            MATER_USURE     =SIMP(statut='f',typ='TXM'),  
9819            USURE_OBST      =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")),
9820            FNOR_MAXI       =SIMP(statut='f',typ='R' ),  
9821            VTAN_MAXI       =SIMP(statut='f',typ='R' ),  
9822          ),
9823          b_edf_mz          =BLOC(condition = "LOI_USURE == 'EDF_MZ'",
9824            regles=(UN_PARMI('MOBILE','MATER_USURE'), 
9825                    EXCLUS('MATER_USURE','OBSTACLE'),
9826                    EXCLUS('MOBILE','USURE_OBST'),),
9827            MOBILE          =FACT(statut='f',min=01,max=01,
9828              COEF_USURE      =SIMP(statut='f',typ='R',defaut=1.0E-13),  
9829              COEF_B          =SIMP(statut='f',typ='R',defaut=1.2E+0),  
9830              COEF_N          =SIMP(statut='f',typ='R',defaut=2.44E-8),  
9831              COEF_S          =SIMP(statut='f',typ='R',defaut=1.14E-16),  
9832            ),   
9833            OBSTACLE        =FACT(statut='f',min=01,max=01,
9834              COEF_USURE      =SIMP(statut='o',typ='R',defaut=1.0E-13), 
9835              COEF_B          =SIMP(statut='f',typ='R',defaut=1.2E+0),  
9836              COEF_N          =SIMP(statut='f',typ='R',defaut=2.44E-8),  
9837              COEF_S          =SIMP(statut='f',typ='R',defaut=1.14E-16),  
9838            ),   
9839            MATER_USURE     =SIMP(statut='f',typ='TXM'),  
9840            USURE_OBST      =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")),
9841          ),
9842          SECTEUR         =FACT(statut='f',min=01,max='**',
9843            CONTACT         =SIMP(statut='f',typ='TXM',into=("TUBE_BAV","TUBE_ALESAGE","TUBE_4_ENCO",  
9844                                                             "GRAPPE_ALESAGE","TUBE_3_ENCO","TUBE_TUBE", 
9845                                                             "GRAPPE_1_ENCO","GRAPPE_2_ENCO")),
9846            COEF_USUR_MOBILE=SIMP(statut='f',typ='R'),  
9847            COEF_USUR_OBST  =SIMP(statut='f',typ='R'),  
9848            ANGL_INIT       =SIMP(statut='f',typ='R'),  
9849            ANGL_FIN        =SIMP(statut='f',typ='R'),  
9850          ),
9851          CONTACT         =SIMP(statut='f',typ='TXM',into=("TUBE_BAV","TUBE_ALESAGE","TUBE_4_ENCO",    
9852                                                           "GRAPPE_ALESAGE","TUBE_3_ENCO","TUBE_TUBE",        
9853                                                           "GRAPPE_1_ENCO","GRAPPE_2_ENCO")),
9854          LARGEUR_OBST    =SIMP(statut='f',typ='R'),  
9855          ANGL_INCLI      =SIMP(statut='f',typ='R'),  
9856          ANGL_ISTHME     =SIMP(statut='f',typ='R'),  
9857          ANGL_IMPACT     =SIMP(statut='f',typ='R'),  
9858          INST            =SIMP(statut='f',typ='R',max='**'),  
9859          LIST_INST       =SIMP(statut='f',typ=listr8),
9860          COEF_INST       =SIMP(statut='f',typ='R',defaut=1.0E+0),  
9861          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
9862          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),  
9863 )  ;
9864 #& MODIF COMMANDE  DATE 31/08/1999   AUTEUR G8BHHXD X.DESROCHES 
9865 POST_ZAC=OPER(nom="POST_ZAC",op= 175,sd_prod=mult_elas,docu="U4.83.21-B",reentrant='n',
9866               fr="Donne l'état adapté ou accommodé d'une structure sous chargement cyclique élastique affine ou non",
9867          MODELE          =SIMP(statut='o',typ=modele),
9868          CHAM_MATER      =SIMP(statut='o',typ=cham_mater),
9869          EXCIT           =FACT(statut='o',min=01,max='**',
9870            CHARGE          =SIMP(statut='o',typ=char_meca),
9871            FONC_MULT       =SIMP(statut='f',typ=fonction),
9872            TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FIXE_CSTE",into=("FIXE_CSTE",)),
9873          ),
9874          EVOL_ELAS       =SIMP(statut='o',typ=evol_elas),
9875          b_evol_elas     =BLOC(condition="EVOL_ELAS != None",
9876            regles=(UN_PARMI('NUME_ORDRE','LIST_INST','INST'),),
9877            NUME_ORDRE      =SIMP(statut='f',typ='I',max='**'),  
9878            LIST_INST       =SIMP(statut='f',typ=listr8),
9879            INST            =SIMP(statut='f',typ='R',max='**'),  
9880          ),
9881          TEMP_ZAC        =SIMP(statut='f',typ='R',defaut=0.0E+0),  
9882          EVOL_NOLI       =SIMP(statut='f',typ=evol_noli),
9883          b_evol_noli     =BLOC(condition="EVOL_NOLI != None",
9884            INST_MAX        =SIMP(statut='o',typ='R'),  
9885          ),
9886          PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3),  
9887          CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")),
9888
9889 )  ;
9890 #& AJOUT COMMANDE    
9891 POURSUITE=MACRO(nom="POURSUITE",op=0,repetable='n',fr="Poursuite d une étude",
9892                 docu="U4.11.03-f",sd_prod = ops.POURSUITE,
9893                 op_init = ops.POURSUITE_context,fichier_ini = 1,
9894          PAR_LOT         =SIMP(fr="mode de traitement des commandes",statut='f',typ='TXM' ),
9895          BASE            =FACT(fr="définition des parmètres associés aux bases JEVEUX",
9896                                statut='f',min=01,max=03,
9897            FICHIER         =SIMP(fr="nom de la base",statut='o',typ='TXM'),
9898            TITRE           =SIMP(statut='f',typ='TXM'),
9899            CAS             =SIMP(statut='f',typ='TXM'),
9900            NMAX_ENRE       =SIMP(fr="nombre maximum d enregistrements",statut='f',typ='I'),
9901            LONG_ENRE       =SIMP(fr="longueur des enregistrements",statut='f',typ='I'),
9902            LONG_REPE       =SIMP(fr="longueur du répertoire",statut='f',typ='I'),
9903          ),
9904          IMPRESSION      =FACT(statut='f',min=01,max=03,
9905            FICHIER         =SIMP(statut='o',typ='TXM'),
9906            UNITE           =SIMP(statut='o',typ='I'),
9907          ),
9908          CATALOGUE       =FACT(statut='f',min=01,max=10,
9909            FICHIER         =SIMP(statut='o',typ='TXM'),
9910            TITRE           =SIMP(statut='f',typ='TXM'),
9911            UNITE           =SIMP(statut='f',typ='I'),
9912          ),
9913          DEBUG           =FACT(fr="option de déboggage reservée aux développeurs",
9914                                statut='f',min=01,max=01,
9915            JXVERI          =SIMP(fr="vérifie l intégrité de la segmentation mémoire",
9916                                  statut='f',typ='TXM',into=('OUI','NON'),defaut='NON'),
9917            JEVEUX          =SIMP(fr="force les déchargement sur disque",
9918                                  statut='f',typ='TXM',into=('OUI','NON'),defaut='NON'),
9919            ENVIMA          =SIMP(fr="imprime les valeurs définies dans ENVIMA",
9920                                  statut='f',typ='TXM',into=('TES',)),
9921          ),
9922          MEMOIRE         =FACT(fr="mode de gestion mémoire utilisé",statut='f',min=01,max=01,
9923            GESTION         =SIMP(statut='f',typ='TXM',into=('COMPACTE','RAPIDE'),defaut='RAPIDE'),  
9924            TYPE_ALLOCATION =SIMP(statut='f',typ='I',into=(1,2,3,4),defaut=1),  
9925            TAILLE          =SIMP(statut='f',typ='I'),  
9926            PARTITION       =SIMP(statut='f',typ='R' ),  
9927          ),
9928 )  ;
9929 #& MODIF COMMANDE DATE 01/04/92 AUTEUR INCONNU INCONNU
9930 PRE_CHAR_IDEAS=PROC(nom="PRE_CHAR_IDEAS",op=100,docu="U7.01.02-E",
9931                     fr="Conversion de conditions aux limites et chargements IDEAS en commandes Aster",
9932          UNITE_IDEAS     =SIMP(statut='f',typ='I',defaut=19),  
9933          UNITE_ASTER     =SIMP(statut='f',typ='I',defaut=21),  
9934          MODELE          =SIMP(statut='o',typ=modele),
9935 )  ;
9936 #& MODIF COMMANDE DATE 28/11/90 AUTEUR INCONNU INCONNU
9937 PRE_GIBI=PROC(nom="PRE_GIBI",op=49,docu="U7.01.11-F",
9938               fr="Conversion d un fichier de maillage GIBI",
9939          UNITE_GIBI      =SIMP(statut='f',typ='I',defaut=19),  
9940          UNITE_MAILLAGE  =SIMP(statut='f',typ='I',defaut=20),  
9941 )  ;
9942 #& MODIF COMMANDE DATE 23/04/92 AUTEUR INCONNU INCONNU
9943 PRE_IDEAS=PROC(nom="PRE_IDEAS",op=47,docu="U7.01.01-F",
9944                fr="Conversion d un fichier universel IDEAS-SUPERTAB au format Aster",
9945          UNITE_IDEAS     =SIMP(statut='f',typ='I',defaut=19),  
9946          UNITE_MAILLAGE  =SIMP(statut='f',typ='I',defaut=20),  
9947 )  ;
9948 #& MODIF COMMANDE  DATE 16/06/2000   AUTEUR D6BHHJP J.P.LEFEBVRE 
9949 PROCEDURE=PROC(nom="PROCEDURE",op=-3, docu="U4.13.03-E",
9950           fr="Nommer le fichier de commandes secondaires",
9951           NOM  =SIMP(statut='f',typ='TXM',defaut=" "),
9952 ) ;                                                                                                                                                                                                                    
9953 #& MODIF COMMANDE  DATE 11/07/95   AUTEUR CIBHHLV L.VIVAN 
9954 def prod_matr_cham_prod(MATR_ASSE,**args):
9955   if AsType(MATR_ASSE) == matr_asse_depl_r : return cham_no_depl_r
9956   if AsType(MATR_ASSE) == matr_asse_depl_c : return cham_no_depl_c
9957   if AsType(MATR_ASSE) == matr_asse_temp_r : return cham_no_temp_r
9958   if AsType(MATR_ASSE) == matr_asse_pres_c : return cham_no_pres_c
9959   raise AsException("type de concept resultat non prevu")
9960
9961 PROD_MATR_CHAM=OPER(nom="PROD_MATR_CHAM",op= 156,sd_prod=prod_matr_cham_prod,
9962                     fr="Effectuer le produit d une matrice par un vecteur",
9963                     docu="U4.72.06-B",reentrant='n',
9964          MATR_ASSE       =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_temp_r,matr_asse_pres_c ) ),
9965          CHAM_NO         =SIMP(statut='o',typ=(cham_no_depl_r,cham_no_depl_c,cham_no_temp_r,cham_no_pres_c ) ),
9966          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
9967 )  ;
9968 #& MODIF COMMANDE  DATE 12/05/99   AUTEUR VABHHTS J.PELLET 
9969 def proj_champ_prod(RESULTAT=None,CHAM_NO_REFE=None,**args ):
9970     if AsType(RESULTAT)     == evol_ther      : return evol_ther
9971     if AsType(RESULTAT)     == evol_elas      : return evol_elas
9972     if AsType(RESULTAT)     == evol_noli      : return evol_noli
9973     if AsType(CHAM_NO_REFE) == cham_no_depl_r : return cham_no_depl_r
9974     if AsType(CHAM_NO_REFE) == cham_no_depl_c : return cham_no_depl_c
9975     if AsType(CHAM_NO_REFE) == cham_no_pres_c : return cham_no_pres_c
9976     if AsType(CHAM_NO_REFE) == cham_no_temp_r : return cham_no_temp_r
9977     if AsType(CHAM_NO_REFE) == cham_no_epsi_r : return cham_no_epsi_r
9978     if AsType(CHAM_NO_REFE) == cham_no_sief_r : return cham_no_sief_r
9979     if AsType(CHAM_NO_REFE) == cham_no_flux_r : return cham_no_flux_r
9980     raise AsException("type de concept resultat non prevu")
9981
9982 PROJ_CHAMP=OPER(nom="PROJ_CHAMP",op= 166,sd_prod=proj_champ_prod,docu="U4.72.05-C",reentrant='n',
9983                 fr="Projection d un champ aux noeuds sur les noeuds d un autre maillage",
9984
9985          METHODE         =SIMP(statut='f',typ='TXM',defaut="NUAGE_DEG_1",    
9986                                into=("NUAGE_DEG_0","NUAGE_DEG_1","ELEM",) ),
9987          b_nuage         =BLOC(condition="(METHODE=='NUAGE_DEG_1') or (METHODE=='NUAGE_DEG_0')",
9988                                fr="Lissage d un nuage de points",
9989            CHAM_NO         =SIMP(statut='f',typ=(cham_no_depl_r,cham_no_depl_c,cham_no_pres_c,cham_no_temp_r,        
9990                                                  cham_no_epsi_r,cham_no_sief_r,cham_no_flux_r)),
9991            CHAM_NO_REFE    =SIMP(statut='f',typ=(cham_no_depl_r,cham_no_depl_c,cham_no_pres_c,cham_no_temp_r,        
9992                                                  cham_no_epsi_r,cham_no_sief_r,cham_no_flux_r)),
9993          ),                    
9994          b_elem          =BLOC(condition="METHODE=='ELEM'",
9995                               fr="Utilisation des fonctions de forme",
9996            regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','LIST_INST','LIST_FREQ','LIST_ORDRE'), ),
9997            RESULTAT        =SIMP(statut='f',typ=(evol_ther,evol_elas,evol_noli) ),
9998            MODELE_1        =SIMP(statut='f',typ=modele),
9999            MODELE_2        =SIMP(statut='f',typ=modele),
10000            TOUT_ORDRE      =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI",) ),
10001            NUME_ORDRE      =SIMP(statut='f',typ='I',max='**' ),  
10002            LIST_ORDRE      =SIMP(statut='f',typ=listis),
10003            INST            =SIMP(statut='f',typ='R',max='**' ),  
10004            LIST_INST       =SIMP(statut='f',typ=listr8),
10005            FREQ            =SIMP(statut='f',typ='R',max='**' ),  
10006            LIST_FREQ       =SIMP(statut='f',typ=listr8),
10007          ), 
10008
10009          VIS_A_VIS       =FACT(statut='f',min=01,max='**',
10010            regles=(AU_MOINS_UN('TOUT_1','GROUP_MA_1','MAILLE_1','GROUP_NO_1','NOEUD_1'),
10011                    AU_MOINS_UN('TOUT_2','GROUP_MA_2','MAILLE_2','GROUP_NO_2','NOEUD_2'),),
10012            TOUT_1          =SIMP(statut='f',typ='TXM',into=("OUI",) ),
10013            GROUP_MA_1      =SIMP(statut='f',typ=grma,max='**'),
10014            MAILLE_1        =SIMP(statut='f',typ=ma,max='**'),
10015            GROUP_NO_1      =SIMP(statut='f',typ=grno,max='**'),
10016            NOEUD_1         =SIMP(statut='f',typ=no,max='**'),
10017            TOUT_2          =SIMP(statut='f',typ='TXM',into=("OUI",) ),
10018            GROUP_MA_2      =SIMP(statut='f',typ=grma,max='**'),
10019            MAILLE_2        =SIMP(statut='f',typ=ma,max='**'),
10020            GROUP_NO_2      =SIMP(statut='f',typ=grno,max='**'),
10021            NOEUD_2         =SIMP(statut='f',typ=no,max='**'),
10022          ),
10023
10024          TITRE           =SIMP(statut='f',typ='TXM',max='**' ), 
10025 )  ;
10026 #& MODIF COMMANDE  DATE 29/06/95   AUTEUR ACBHHJA G.JACQUART 
10027 PROJ_MATR_BASE=OPER(nom="PROJ_MATR_BASE",op=  71,sd_prod=matr_asse_gene_r,
10028                     fr="Projection d une matrice assemblée sur une base (modale ou de RITZ)",
10029                     docu="U4.63.12-E",reentrant='n',
10030          regles=(UN_PARMI('MATR_ASSE','MATR_ASSE_GENE'),),            
10031          BASE            =SIMP(statut='o',typ=(mode_meca,base_modale,mode_gene ) ),
10032          NUME_DDL_GENE   =SIMP(statut='o',typ=nume_ddl_gene ),
10033          NB_VECT         =SIMP(statut='f',typ='I',defaut= 9999 ),
10034          MATR_ASSE       =SIMP(statut='f',typ=matr_asse_depl_r ),
10035          MATR_ASSE_GENE  =SIMP(statut='f',typ=matr_asse_gene_r ),
10036 )  ;
10037
10038 #& MODIF COMMANDE  DATE 27/06/2000   AUTEUR CIBHHBC B.CIREE 
10039 def proj_mesu_modal_prod(MESURE,**args):
10040      vale=MESURE['NOM_PARA']
10041      if  vale == 'INST'   : return tran_gene
10042      raise AsException("type de concept resultat non prevu")
10043
10044 PROJ_MESU_MODAL=OPER(nom="PROJ_MESU_MODAL",op= 193,
10045                      sd_prod=proj_mesu_modal_prod,
10046                      docu="U4.73.01-A",reentrant='n',
10047                      fr="Extrapolation de resultats experimentaux sur un modele numerique en dynamique",
10048
10049 # commentaire C. Durand-13/10/2000 :
10050 #le mot cle NOM_PARA, par construction, vaut tjs INST : donc on retourne TRAN_GENE a chaque fois
10051 #def proj_mesu_modal_prod(**args):
10052 #     vale=args['MESURE'].get_child('NOM_PARA').get_valeur()
10053 #     if  vale == 'INST'   : return tran_gene
10054 #     raise AsException("type de concept resultat non prevu")
10055 #PROJ_MESU_MODAL=OPER(nom="PROJ_MESU_MODAL",op= 193,sd_prod=proj_mesu_modal_prod,)
10056
10057          MODELE          =SIMP(statut='f',typ=(modele) ),
10058          MASS_GENE       =SIMP(statut='o',typ=(matr_asse_gene_r) ),
10059          RIGI_GENE       =SIMP(statut='o',typ=(matr_asse_gene_r) ),
10060          MESURE          =FACT(statut='o',min=01,max=01,
10061            MAILLAGE        =SIMP(statut='o',typ=(maillage) ),
10062            CARA_ELEM       =SIMP(statut='o',typ=(cara_elem) ),
10063            UNITE           =SIMP(statut='f',typ='I',defaut= 33 ),  
10064            NOM_PARA        =SIMP(statut='f',typ='TXM',defaut="INST",into=("INST",) ),
10065            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),  
10066            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ),
10067            NOM_CHAM        =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL","SIGM_NOEU_DEPL","EPSI_NOEU_DEPL",) ),
10068                          ),
10069          REGULARISATION  =FACT(statut='f',min=01,max=01,
10070       regles=(UN_PARMI('COEF_PONDER','COEF_PONDER_F', ),),
10071            METHODE         =SIMP(statut='f',typ='TXM',defaut="TIKHONOV",into=("TIKHONOV",) ),
10072            NORM_MIN        =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ),
10073            COEF_PONDER     =SIMP(statut='f',typ='R',max='**' ),  
10074            COEF_PONDER_F   =SIMP(statut='f',typ=(fonction),max='**' ),
10075                          ),
10076                        )  ;
10077 #& MODIF COMMANDE  DATE 11/02/98   AUTEUR SABJLMA P.LATRUBESSE 
10078 PROJ_SPEC_BASE=OPER(nom="PROJ_SPEC_BASE",op= 146,sd_prod=tabl_intsp,docu="U4.63.14-C",reentrant='n',
10079                     fr="Projection d un ou plusieurs spectres de turbulence, définis par DEFI_SPEC_TURB, sur un ensemble de bases modales ",
10080       regles=(UN_PARMI('BASE_ELAS_FLUI','MODE_MECA','CHAM_NO'),
10081               ENSEMBLE('FREQ_INIT','FREQ_FIN','NB_POIN'),),
10082          SPEC_TURB       =SIMP(statut='o',typ=spectre,max='**' ),
10083          BASE_ELAS_FLUI  =SIMP(statut='f',typ=melasflu ),
10084          MODE_MECA       =SIMP(statut='f',typ=mode_meca ),
10085          CHAM_NO         =SIMP(statut='f',typ=cham_no_depl_r ),
10086          FREQ_INIT       =SIMP(statut='f',typ='R' ),  
10087          FREQ_FIN        =SIMP(statut='f',typ='R' ),  
10088          NB_POIN         =SIMP(statut='f',typ='I' ),  
10089          OPTION          =SIMP(statut='f',typ='TXM',defaut="TOUT",into=("TOUT","DIAG")),
10090          GROUP_MA        =SIMP(statut='f',typ=grma),
10091 #  Quel est le type attendu derriere  MODELE_INTERFACE         
10092          MODELE_INTERFACE=SIMP(statut='f',typ=modele),
10093          VECT_X          =SIMP(statut='f',typ='R',min=03,max=03 ),  
10094          VECT_Y          =SIMP(statut='f',typ='R',min=03,max=03 ),  
10095          ORIG_AXE        =SIMP(statut='f',typ='R',min=03,max=03 ),  
10096          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),  
10097 )  ;
10098 #& MODIF COMMANDE  DATE 29/06/95   AUTEUR ACBHHJA G.JACQUART 
10099 PROJ_VECT_BASE=OPER(nom="PROJ_VECT_BASE",op=  72,sd_prod=vect_asse_gene,
10100                     fr="Projection d un vecteur assemblé sur une base (modale ou de RITZ)",
10101                     docu="U4.63.13-E",reentrant='n',
10102          regles=(UN_PARMI('VECT_ASSE','VECT_ASSE_GENE'),),              
10103          BASE            =SIMP(statut='o',typ=(mode_meca,base_modale,mode_gene ) ),
10104          NUME_DDL_GENE   =SIMP(statut='o',typ=nume_ddl_gene ),
10105          NB_VECT         =SIMP(statut='f',typ='I',defaut= 9999 ),
10106          TYPE_VECT       =SIMP(statut='f',typ='TXM',defaut="FORC"),
10107          VECT_ASSE       =SIMP(statut='f',typ=cham_no_depl_r ),
10108          VECT_ASSE_GENE  =SIMP(statut='f',typ=vect_asse_gene ),
10109 )  ;
10110 #& MODIF COMMANDE  DATE 25/09/2000   AUTEUR T2BAXJM R.MASSON 
10111 RECA_WEIBULL=OPER(nom="RECA_WEIBULL",op= 197,sd_prod=tabl_reca_weib,
10112                      fr=" ",docu="U4.82.06-A",reentrant='n',
10113          LIST_PARA       =SIMP(statut='o',typ='TXM',max='**',into=("SIGM_REFE","M",) ),
10114          RESU            =FACT(statut='o',min=01,max='**',
10115            regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST',),            
10116                    AU_MOINS_UN('TOUT','GROUP_MA','MAILLE', ),),
10117            EVOL_NOLI       =SIMP(statut='o',typ=(evol_noli) ),
10118            MODELE          =SIMP(statut='o',typ=(modele) ),
10119            CHAM_MATER      =SIMP(statut='o',typ=(cham_mater) ),
10120            TEMPE           =SIMP(statut='f',typ='R' ),  
10121            LIST_INST_RUPT  =SIMP(statut='o',typ='R',max='**' ),  
10122            TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
10123            NUME_ORDRE      =SIMP(statut='f',typ='I',max='**' ),  
10124            INST            =SIMP(statut='f',typ='R',max='**' ),  
10125            LIST_INST       =SIMP(statut='f',typ=(listr8) ),
10126            TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400.E0 ),  
10127            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
10128            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
10129            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
10130            COEF_MULT       =SIMP(statut='f',typ='R',defaut= 1.E0 ),  
10131                          ),
10132          OPTION          =SIMP(statut='f',typ='TXM',defaut="SIGM_ELGA",into=("SIGM_ELGA","SIGM_ELMOY",) ),
10133          CORR_PLAST      =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ),
10134          METHODE         =SIMP(statut='f',typ='TXM',defaut="MAXI_VRAI",into=("MAXI_VRAI","REGR_LINE",) ),
10135          INCO_GLOB_RELA  =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),  
10136          ITER_GLOB_MAXI  =SIMP(statut='f',typ='I',defaut= 10 ),  
10137          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ,) ),
10138                        )  ;
10139 #& MODIF COMMANDE  DATE 07/06/2000   AUTEUR VABHHTS J.PELLET 
10140 def recu_champ_prod(NOM_CHAM,RESULTAT,**args ):
10141   if AsType(RESULTAT) == dyna_harmo : return cham_no_depl_c
10142   if NOM_CHAM == "GEOMETRIE"      : return cham_no_geom_r
10143   if NOM_CHAM == "DEPL"           : return cham_no_depl_r
10144   if NOM_CHAM == "DEPL_ABSOLU"    : return cham_no_depl_r
10145   if NOM_CHAM == "VITE"           : return cham_no_depl_r
10146   if NOM_CHAM == "VITE_ABSOLU"    : return cham_no_depl_r
10147   if NOM_CHAM == "ACCE"           : return cham_no_depl_r
10148   if NOM_CHAM == "ACCE_ABSOLU"    : return cham_no_depl_r
10149   if NOM_CHAM == "TEMP"           : return cham_no_temp_r
10150   if NOM_CHAM == "FORC_NODA"      : return cham_no_depl_r
10151   if NOM_CHAM == "REAC_NODA"      : return cham_no_depl_r
10152   if NOM_CHAM == "EPSI_NOEU_DEPL" : return cham_no_sief_r
10153   if NOM_CHAM == "SIGM_NOEU_CART" : return cham_no_sief_r
10154   if NOM_CHAM == "SIGM_NOEU_DEPL" : return cham_no_sief_r
10155   if NOM_CHAM == "SIGM_NOEU_VARI" : return cham_no_sief_r
10156   if NOM_CHAM == "SIGM_NOEU_SIEF" : return cham_no_sief_r
10157   if NOM_CHAM == "SIPO_NOEU_SIEF" : return cham_no_sief_r
10158   if NOM_CHAM == "EFGE_NOEU_CART" : return cham_no_sief_r
10159   if NOM_CHAM == "EFGE_NOEU_DEPL" : return cham_no_sief_r
10160   if NOM_CHAM == "EQUI_NOEU_SIGM" : return cham_no_sief_r
10161   if NOM_CHAM == "EQUI_NOEU_EPSI" : return cham_no_sief_r
10162   if NOM_CHAM == "FLUX_NOEU_TEMP" : return cham_no_flux_r
10163   if NOM_CHAM == "SIGM_NOZ1_ELGA" : return cham_no_sief_r
10164   if NOM_CHAM == "SIGM_NOZ2_ELGA" : return cham_no_sief_r
10165   if NOM_CHAM == "INTE_NOEU_ACTI" : return cham_no_inte_r
10166   if NOM_CHAM == "INTE_NOEU_REAC" : return cham_no_inte_r
10167   if NOM_CHAM == "PRES_NOEU_DBEL" : return cham_no_dbel_r
10168   if NOM_CHAM == "PRES_NOEU_IMAG" : return cham_no_pres_r
10169   if NOM_CHAM == "PRES_NOEU_REEL" : return cham_no_pres_r
10170   if NOM_CHAM == "VARI_NOEU_ELGA" : return cham_no_var2_r
10171   if NOM_CHAM == "META_NOEU_TEMP" : return cham_no_var2_r
10172   if NOM_CHAM == "GRAD_NOEU_THETA": return cham_no_var2_r
10173   if NOM_CHAM == "PHASMETA"       : return cham_elem_meta_r
10174   if NOM_CHAM == "DEGE_ELNO_DEPL" : return cham_elem_epsi_r
10175   if NOM_CHAM == "ECIN_ELEM_DEPL" : return cham_elem_ener_r
10176   if NOM_CHAM == "EFGE_ELNO_CART" : return cham_elem_sief_r
10177   if NOM_CHAM == "EFGE_ELNO_DEPL" : return cham_elem_sief_r
10178   if NOM_CHAM == "EPOT_ELEM_DEPL" : return cham_elem_ener_r
10179   if NOM_CHAM == "EPSG_ELGA_DEPL" : return cham_elem_epsi_r
10180   if NOM_CHAM == "EPSG_ELNO_DEPL" : return cham_elem_epsi_r
10181   if NOM_CHAM == "EPSP_ELGA"      : return cham_elem_epsi_r
10182   if NOM_CHAM == "EPSP_ELNO"      : return cham_elem_epsi_r
10183   if NOM_CHAM == "EPSI_ELGA_DEPL" : return cham_elem_epsi_r
10184   if NOM_CHAM == "EPSI_ELNO_DEPL" : return cham_elem_epsi_r
10185   if NOM_CHAM == "EPSA_ELNO"      : return cham_elem_epsi_r
10186   if NOM_CHAM == "EQUI_ELGA_SIGM" : return cham_elem_sief_r
10187   if NOM_CHAM == "EQUI_ELGA_EPSI" : return cham_elem_sief_r
10188   if NOM_CHAM == "EQUI_ELNO_EPSI" : return cham_elem_sief_r
10189   if NOM_CHAM == "EQUI_ELNO_SIGM" : return cham_elem_sief_r
10190   if NOM_CHAM == "ERRE_ELEM_NOZ1" : return cham_elem_erreur
10191   if NOM_CHAM == "ERRE_ELEM_NOZ2" : return cham_elem_erreur
10192   if NOM_CHAM == "ERRE_ELGA_NORE" : return cham_elem_erreur
10193   if NOM_CHAM == "ERRE_ELNO_ELGA" : return cham_elem_erreur
10194   if NOM_CHAM == "FLUX_ELGA_TEMP" : return cham_elem_flux_r
10195   if NOM_CHAM == "FLUX_ELNO_TEMP" : return cham_elem_flux_r
10196   if NOM_CHAM == "INTE_ELNO_ACTI" : return cham_elem_inte_r
10197   if NOM_CHAM == "INTE_ELNO_REAC" : return cham_elem_inte_r
10198   if NOM_CHAM == "PRES_ELNO_DBEL" : return cham_elem_dbel_r
10199   if NOM_CHAM == "PRES_ELNO_IMAG" : return cham_elem_pres_r
10200   if NOM_CHAM == "PRES_ELNO_REEL" : return cham_elem_pres_r
10201   if NOM_CHAM == "SIEF_ELGA"      : return cham_elem_sief_r
10202   if NOM_CHAM == "SIEF_ELNO"      : return cham_elem_sief_r
10203   if NOM_CHAM == "SIEF_ELGA_DEPL" : return cham_elem_sief_r
10204   if NOM_CHAM == "SIGM_ELNO_CART" : return cham_elem_sief_r
10205   if NOM_CHAM == "SIGM_ELNO_DEPL" : return cham_elem_sief_r
10206   if NOM_CHAM == "SIGM_ELNO_VARI" : return cham_elem_sief_r
10207   if NOM_CHAM == "SIGM_ELNO_SIEF" : return cham_elem_sief_r
10208   if NOM_CHAM == "SIPO_ELNO_SIEF" : return cham_elem_sief_r
10209   if NOM_CHAM == "SIEF_ELNO_ELGA" : return cham_elem_sief_r
10210   if NOM_CHAM == "SIPO_ELNO_DEPL" : return cham_elem_sief_r
10211   if NOM_CHAM == "SIRE_ELNO_DEPL" : return cham_elem_sief_r
10212   if NOM_CHAM == "SOUR_ELGA_ELEC" : return cham_elem_sour_r
10213   if NOM_CHAM == "VARI_ELGA"      : return cham_elem_vari_r
10214   if NOM_CHAM == "VARI_ELNO"      : return cham_elem_vari_r
10215   if NOM_CHAM == "VARI_ELNO_ELGA" : return cham_elem_vari_r
10216   if NOM_CHAM == "VNOR_ELEM_DEPL" : return cham_elem_vnor_c
10217   if NOM_CHAM == "DCHA_ELGA_SIGM" : return cham_elem_vari_r
10218   if NOM_CHAM == "DCHA_ELNO_SIGM" : return cham_elem_vari_r
10219   if NOM_CHAM == "RADI_ELGA_SIGM" : return cham_elem_vari_r
10220   if NOM_CHAM == "RADI_ELNO_SIGM" : return cham_elem_vari_r
10221   if NOM_CHAM == "ENDO_ELNO_SIGM" : return cham_elem_sief_r
10222   if NOM_CHAM == "ENDO_ELNO_SIGA" : return cham_elem_sief_r
10223   if NOM_CHAM == "ENDO_ELNO_SINO" : return cham_elem_sief_r
10224   if NOM_CHAM == "EPME_ELNO_DEPL" : return cham_elem_epsi_r
10225   if NOM_CHAM == "EPME_ELGA_DEPL" : return cham_elem_epsi_r
10226   if NOM_CHAM == "EPME_ELNO_DPGE" : return cham_elem_epsi_r
10227   if NOM_CHAM == "EPMG_ELNO_DEPL" : return cham_elem_epsi_r
10228   if NOM_CHAM == "EPMG_ELGA_DEPL" : return cham_elem_epsi_r
10229   if NOM_CHAM == "THETA"          : return cham_no_depl_r
10230   if NOM_CHAM == "GRAD_ELGA_THETA" : return cham_elem_g_depl
10231   if NOM_CHAM == "GRAD_ELNO_ELGA" : return cham_elem_g_depl
10232   if NOM_CHAM == "HYDR_ELGA"      : return cham_elem_hydr_r
10233   raise AsException("type de concept resultat non prevu")
10234
10235 RECU_CHAMP=OPER(nom="RECU_CHAMP",op=  59,sd_prod=recu_champ_prod,
10236                 fr="Récupération dans un résultat composé d un seul champ aux noeuds ou par éléments",
10237                 docu="U4.71.01-F",reentrant='n',
10238       regles=(UN_PARMI('TYPE_MAXI','NUME_ORDRE','INST','FREQ','NUME_MODE','NOEUD_CMP','NOM_CAS','ANGL', ),
10239               UN_PARMI('RESULTAT','MAILLAGE'),),
10240 #  creer une structure de donnees RESULTAT global              
10241          RESULTAT        =SIMP(statut='f',typ=resultat),
10242          MAILLAGE        =SIMP(statut='f',typ=maillage),
10243          NOM_CHAM        =SIMP(statut='o',typ='TXM',     
10244                                into=( "DEPL","VITE","ACCE","DEPL_ABSOLU",         
10245                                       "VITE_ABSOLU","TEMP","ACCE_ABSOLU","FORC_NODA",
10246                                       "REAC_NODA","EFGE_NOEU_DEPL","EFGE_NOEU_CART",
10247                                       "EPSI_NOEU_DEPL","SIGM_NOEU_DEPL",
10248                                       "SIGM_NOEU_CART","SIPO_NOEU_DEPL",
10249                                       "EQUI_NOEU_SIGM","EQUI_NOEU_EPSI",
10250                                       "FLUX_NOEU_TEMP","FLUX_ELGA_TEMP",
10251                                       "FLUX_ELNO_TEMP","META_ELGA_TEMP",
10252                                       "META_ELNO_TEMP","META_NOEU_TEMP",
10253                                       "DURT_ELGA_META","DURT_ELNO_META",
10254                                       "DURT_NOEU_META","SIEF_ELGA","SIEF_ELNO_ELGA",
10255                                       "SIEF_ELGA_DEPL","VARI_ELNO_ELGA","VARI_ELGA",
10256                                       "EPOT_ELEM_DEPL","ECIN_ELEM_DEPL",
10257                                       "SOUR_ELGA_ELEC","PRES_ELNO_REEL",
10258                                       "PRES_ELNO_IMAG","PRES_ELNO_DBEL",
10259                                       "INTE_ELNO_ACTI","INTE_ELNO_REAC",
10260                                       "EFGE_ELNO_DEPL","SIGM_ELNO_DEPL",
10261                                       "EFGE_ELNO_CART","SIGM_ELNO_CART",
10262                                       "SIPO_ELNO_DEPL","EPSI_ELNO_DEPL",
10263                                       "EPSI_ELGA_DEPL","EPSG_ELNO_DEPL",
10264                                       "EPSG_ELGA_DEPL","EPSP_ELNO","EPSP_ELGA",
10265                                       "EQUI_ELNO_SIGM","EQUI_ELGA_SIGM",
10266                                       "EQUI_ELNO_EPSI","EQUI_ELGA_EPSI",
10267                                       "ERRE_ELNO_ELGA","ERRE_ELGA_NORE",
10268                                       "ERRE_ELEM_NOZ1","ERRE_ELEM_NOZ2",
10269                                       "SIGM_NOZ1_ELGA","SIGM_NOZ2_ELGA",
10270                                       "DEGE_ELNO_DEPL","SIRE_ELNO_DEPL",
10271                                       "VNOR_ELEM_DEPL","SIEF_ELNO","VARI_ELNO",
10272                                       "SIEF_NOEU_ELGA","VARI_NOEU_ELGA",
10273                                       "PRES_NOEU_DBEL","PRES_NOEU_REEL",
10274                                       "PRES_NOEU_IMAG","INTE_NOEU_ACTI",
10275                                       "INTE_NOEU_REAC","DCHA_ELGA_SIGM",
10276                                       "DCHA_ELNO_SIGM","RADI_ELGA_SIGM",
10277                                       "RADI_ELNO_SIGM","ENDO_ELNO_SIGA",
10278                                       "ENDO_ELNO_SINO","ENDO_ELNO_SIGM",
10279                                       "SIGM_ELNO_VARI","SIGM_NOEU_VARI",
10280                                       "EPME_ELNO_DEPL","EPME_ELGA_DEPL",
10281                                       "EPME_ELNO_DPGE","EPMG_ELNO_DEPL",
10282                                       "EPMG_ELGA_DEPL","GRAD_ELGA_THETA",
10283                                       "GTHE_ELNO_ELGA","GRAD_NOEU_THETA","HYDR_ELGA",
10284                                       "THETA","SIGM_ELNO_SIEF","SIPO_ELNO_SIEF",) ),
10285          TYPE_MAXI       =SIMP(statut='f',typ='TXM',     
10286                                into=("MAXI","MINI","MAXI_ABS","MINI_ABS","NORM_TRAN") ),
10287          NUME_ORDRE      =SIMP(statut='f',typ='I' ),  
10288          INST            =SIMP(statut='f',typ='R' ),  
10289          FREQ            =SIMP(statut='f',typ='R' ),  
10290          NUME_MODE       =SIMP(statut='f',typ='I' ),  
10291          NOEUD_CMP       =SIMP(statut='f',typ='TXM',max='**' ),  
10292          NOM_CAS         =SIMP(statut='f',typ='TXM' ),  
10293          ANGL            =SIMP(statut='f',typ='R' ),  
10294          b_prec_crit     =BLOC(condition = "(INST != None) or (FREQ != None)",
10295            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),  
10296            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
10297            INTERPOL        =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","LIN") ),
10298          ), 
10299          b_type_maxi     =BLOC(condition = "TYPE_MAXI != None",
10300            regles=(EXCLUS('TOUT_ORDRE','LIST_INST' ),),
10301            TYPE_RESU       =SIMP(statut='f',typ='TXM',defaut="VALE",into=("VALE","INST") ),
10302            TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
10303            LIST_INST       =SIMP(statut='f',typ=listr8 ),
10304            b_prec_crit   =BLOC(condition = "(INST != None) or (FREQ != None)",
10305              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),  
10306              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
10307            ),
10308          ),
10309          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),  
10310 )  ;
10311 #& MODIF COMMANDE  DATE 28/06/2000   AUTEUR CIBHHLV L.VIVAN 
10312 def recu_fonction_prod(RESULTAT=None,OBSTACLE=None,TABLE=None,RESU_GENE=None,BASE_ELAS_FLUI=None,CHAM_GD=None,TYPE_RESU=None,**args):
10313   if AsType(RESULTAT) == dyna_harmo : return fonction_c
10314 #  On ne sait pas interpreter les deux conditions suivantes
10315   if TABLE != None :
10316      if TYPE_RESU != None :
10317         if TYPE_RESU == "FONCTION_C" : return fonction_c
10318         if TYPE_RESU == "FONCTION"   : return fonction
10319      else:
10320         return fonction
10321   if RESU_GENE      != None         : return fonction
10322   if BASE_ELAS_FLUI != None         : return fonction
10323   if RESULTAT       != None         : return fonction
10324   if CHAM_GD        != None         : return fonction
10325   if OBSTACLE       != None         : return fonction
10326   raise AsException("type de concept resultat non prevu")
10327
10328 RECU_FONCTION=OPER(nom="RECU_FONCTION",op=  90,sd_prod=recu_fonction_prod,
10329                    fr="Extraire sous forme d une fonction, l évolution temporelle d une composante d un champ ou d une table",
10330                    docu="U4.32.03-E",reentrant='n',
10331          regles=(UN_PARMI('CHAM_GD','RESULTAT','RESU_GENE','TABLE','BASE_ELAS_FLUI','OBSTACLE'),),
10332              
10333          CHAM_GD         =SIMP(statut='f',typ=(cham_no_depl_r,cham_no_temp_r,cham_no_pres_r,cham_elem_sief_r,
10334                                                cham_elem_vari_r,cham_elem_epsi_r,cham_elem_flux_r,
10335                                                cham_elem_pres_r,cham_elem_meta_r ) ),
10336          RESULTAT        =SIMP(statut='f',typ=(evol_elas,dyna_trans,evol_noli,evol_ther,dyna_harmo ) ),
10337          RESU_GENE       =SIMP(statut='f',typ=tran_gene),
10338 #  concept table à créer         
10339          TABLE           =SIMP(statut='f',typ=table),
10340          BASE_ELAS_FLUI  =SIMP(statut='f',typ=melasflu),
10341          REPERE          =SIMP(statut='f',typ='TXM',into=("POLAIRE","GLOBAL") ),
10342          OBSTACLE        =SIMP(statut='f',typ=obstacle),
10343          
10344          b_tran_gene = BLOC ( condition = "RESU_GENE != None",fr="Récupération de la fonction concernant les chocs à partir d un concept TRAN_GENE",
10345             regles=(PRESENT_PRESENT('SOUS_STRUC','INTITULE'),
10346                     PRESENT_ABSENT('MULT_APPUI','CORR_STAT'),),
10347              MULT_APPUI      =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","OUI") ),
10348              CORR_STAT       =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
10349              ACCE_MONO_APPUI =SIMP(statut='f',typ=fonction),
10350              PARA_X          =SIMP(statut='f',typ='TXM' ),
10351              PARA_Y          =SIMP(statut='f',typ='TXM' ),
10352              SOUS_STRUC      =SIMP(statut='f',typ='TXM' ),
10353              LIST_PARA       =SIMP(statut='f',typ=listr8 ),
10354              INTITULE        =SIMP(statut='f',typ='TXM' ),                       
10355          ), 
10356          b_base_elas_flui = BLOC ( condition = "BASE_ELAS_FLUI != None",fr="Récupération de la fonction à partir d un concept melasflu",
10357            regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE'),),
10358            TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
10359            NUME_ORDRE      =SIMP(statut='f',typ='I',max='**'),
10360            NUME_MODE       =SIMP(statut='o',typ='I' ),
10361            PARA_X          =SIMP(statut='o',typ='TXM',into=("VITE_FLU",) ),
10362            PARA_Y          =SIMP(statut='o',typ='TXM',into=("FREQ","AMOR") ),                   
10363          ), 
10364          b_table = BLOC ( condition = "TABLE != None",fr="Récupération de la fonction à partir d un concept table",
10365            regles=(UN_PARMI('PARA_X','NOM_PARA_TABL'),
10366                    PRESENT_PRESENT('PARA_X','PARA_Y'),),
10367            PARA_X          =SIMP(statut='f',typ='TXM',
10368                                  fr="1ère colonne de la table qui définit la fonction à récupérer", ),
10369            PARA_Y          =SIMP(statut='f',typ='TXM',
10370                                  fr="2ème colonne de la table qui définit la fonction à récupérer", ),
10371            NOM_PARA_TABL   =SIMP(statut='f',typ='TXM',into=("FONCTION",),
10372                                  fr="Nom du paramètre de la table à qui est associé la fonction" ),  
10373            b_nom_para_tabl = BLOC (condition = "NOM_PARA_TABL != None",
10374              TYPE_RESU       =SIMP(statut='f',typ='TXM',defaut="FONCTION",into=("FONCTION","FONCTION_C") ),
10375            ),
10376            FILTRE          =FACT(statut='f',min=01,max='**',
10377              regles=(UN_PARMI('VALE','VALE_I','VALE_C','VALE_K','VALE_CO'),),
10378              NOM_PARA        =SIMP(statut='o',typ='TXM' ),
10379              CRIT_COMP       =SIMP(statut='f',typ='TXM',defaut="EQ",
10380                                    into=("EQ","LT","GT",
10381                                          "NE","LE","GE",
10382                                          "VIDE","NON_VIDE",) ),
10383              VALE            =SIMP(statut='f',typ='R' ),
10384              VALE_I          =SIMP(statut='f',typ='I' ),
10385              VALE_C          =SIMP(statut='f',typ='C' ),
10386              VALE_K          =SIMP(statut='f',typ='TXM' ),
10387              VALE_CO         =SIMP(statut='f',typ=geom),
10388              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
10389              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
10390            ),
10391          ),
10392 # RESULTAT
10393          b_resu = BLOC ( condition = "RESULTAT != None", fr="Opérandes en cas de RESULTAT",
10394            regles=(
10395 #    A voir par Matthieu Courtois : il existe de tests (SDNX300B) qui ne satisfont pas ce UN_PARMI
10396 #           UN_PARMI('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','TOUT_INST','LIST_INST','FREQ','LIST_FREQ'),
10397                    AU_MOINS_UN('MAILLE','GROUP_MA','GROUP_NO','NOEUD','NOEUD_CHOC','GROUP_NO_CHOC'),
10398                    PRESENT_PRESENT('MAILLE','NOM_CMP'),
10399                    PRESENT_PRESENT('GROUP_MA','NOM_CMP'),
10400                    PRESENT_PRESENT('NOEUD','NOM_CMP'),
10401                    PRESENT_PRESENT('GROUP_NO','NOM_CMP'),
10402                    PRESENT_PRESENT('POINT','NOM_CMP'),
10403                    EXCLUS('POINT','NOEUD'),
10404                    EXCLUS('GROUP_MA','MAILLE'),
10405                    EXCLUS('GROUP_NO','NOEUD'),
10406                    EXCLUS('NOEUD_CHOC','GROUP_NO_CHOC'),),
10407 #    A voir par Matthieu Courtois : les champs INTO de NOM_CHAM
10408 #           NOM_CHAM        =SIMP(statut='f',typ='TXM',into=("DEPL","VITE","ACCE","PTEM") ),
10409            NOM_CHAM        =SIMP(statut='f',typ='TXM' ),
10410            TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
10411            NUME_ORDRE      =SIMP(statut='f',typ='I',max='**'),
10412            LIST_ORDRE      =SIMP(statut='f',typ=listis ),
10413            TOUT_INST       =SIMP(statut='f',typ='TXM',into=("OUI",) ),
10414            INST            =SIMP(statut='f',typ='R',max='**'),
10415            LIST_INST       =SIMP(statut='f',typ=listr8 ),
10416            FREQ            =SIMP(statut='f',typ='R',max='**'),
10417            LIST_FREQ       =SIMP(statut='f',typ=listr8 ),
10418            b_prec = BLOC ( condition = "(INST != None) or (LIST_INST != None) or (FREQ != None) or (LIST_FREQ != None)",
10419              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
10420              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
10421              INTERP_NUME     =SIMP(statut='f',typ='TXM',max=02,into=("NON","LIN") ),
10422            ),  
10423            NOM_CMP         =SIMP(statut='f',typ='TXM' ),
10424
10425            MAILLE          =SIMP(statut='f',typ=ma),
10426            GROUP_MA        =SIMP(statut='f',typ=grma),
10427            NOEUD           =SIMP(statut='f',typ=no),
10428            GROUP_NO        =SIMP(statut='f',typ=grno),
10429            POINT           =SIMP(statut='f',typ='I' ),
10430            NOEUD_CHOC      =SIMP(statut='f',typ=no),
10431            GROUP_NO_CHOC   =SIMP(statut='f',typ=grno),
10432          ),
10433 # RESU_GENE
10434          b_resu_gene = BLOC ( condition = "RESU_GENE != None", fr="Opérandes en cas de RESU_GENE",
10435 #    A voir par Matthieu Courtois : il existe de tests (SDNX300B) qui ne satisfont pas ce UN_PARMI
10436 #           regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','TOUT_INST','LIST_INST','FREQ','LIST_FREQ'),),
10437 #    A voir par Matthieu Courtois : les champs INTO de NOM_CHAM
10438 #    A voir par Matthieu Courtois : NOM_CHAM facultatif et non obligatoire
10439 #           NOM_CHAM        =SIMP(statut='o',typ='TXM',into=("DEPL","VITE","ACCE","PTEM") ),
10440            NOM_CHAM        =SIMP(statut='f',typ='TXM' ),
10441            TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
10442            NUME_ORDRE      =SIMP(statut='f',typ='I',max='**'),
10443            LIST_ORDRE      =SIMP(statut='f',typ=listis ),
10444            TOUT_INST       =SIMP(statut='f',typ='TXM',into=("OUI",) ),
10445            INST            =SIMP(statut='f',typ='R',max='**'),
10446            LIST_INST       =SIMP(statut='f',typ=listr8 ),
10447            FREQ            =SIMP(statut='f',typ='R',max='**'),
10448            LIST_FREQ       =SIMP(statut='f',typ=listr8 ),
10449            b_prec = BLOC ( condition = "(INST != None) or (LIST_INST != None) or (FREQ != None) or (LIST_FREQ != None)",
10450              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
10451              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
10452              INTERP_NUME     =SIMP(statut='f',typ='TXM',max=02,into=("NON","LIN") ),
10453            ),  
10454            b_local_cham = BLOC ( condition = "NOM_CHAM!='PTEM'", fr="Opérandes de localisation du champ",
10455              regles=(AU_MOINS_UN('MAILLE','GROUP_MA','GROUP_NO','NOEUD','NOEUD_CHOC','GROUP_NO_CHOC'),
10456                      PRESENT_PRESENT('MAILLE','NOM_CMP'),
10457                      PRESENT_PRESENT('GROUP_MA','NOM_CMP'),
10458                      PRESENT_PRESENT('NOEUD','NOM_CMP'),
10459                      PRESENT_PRESENT('GROUP_NO','NOM_CMP'),
10460                      PRESENT_PRESENT('POINT','NOM_CMP'),
10461                      EXCLUS('POINT','NOEUD'),
10462                      EXCLUS('GROUP_MA','MAILLE'),
10463                      EXCLUS('GROUP_NO','NOEUD'),
10464                      EXCLUS('NOEUD_CHOC','GROUP_NO_CHOC'),),
10465              NOM_CMP         =SIMP(statut='f',typ='TXM' ),
10466
10467              MAILLE          =SIMP(statut='f',typ=ma),
10468              GROUP_MA        =SIMP(statut='f',typ=grma),
10469              NOEUD           =SIMP(statut='f',typ=no),
10470              GROUP_NO        =SIMP(statut='f',typ=grno),
10471              POINT           =SIMP(statut='f',typ='I' ),
10472              NOEUD_CHOC      =SIMP(statut='f',typ=no),
10473              GROUP_NO_CHOC   =SIMP(statut='f',typ=grno),
10474            ),  
10475          ),
10476 # CHAM_GD
10477          b_cham_gd = BLOC ( condition = "(CHAM_GD != None)", fr="Opérandes en cas de CHAM_GD",
10478 #    A voir par Matthieu Courtois : les champs INTO de NOM_CHAM
10479 #    A voir par Matthieu Courtois : NOM_CHAM facultatif et non obligatoire
10480 #           NOM_CHAM        =SIMP(statut='o',typ='TXM',into=("DEPL","VITE","ACCE","PTEM") ),
10481            NOM_CHAM        =SIMP(statut='f',typ='TXM' ),
10482            regles=(AU_MOINS_UN('MAILLE','GROUP_MA','GROUP_NO','NOEUD','NOEUD_CHOC','GROUP_NO_CHOC'),
10483                    PRESENT_PRESENT('MAILLE','NOM_CMP'),
10484                    PRESENT_PRESENT('GROUP_MA','NOM_CMP'),
10485                    PRESENT_PRESENT('NOEUD','NOM_CMP'),
10486                    PRESENT_PRESENT('GROUP_NO','NOM_CMP'),
10487                    PRESENT_PRESENT('POINT','NOM_CMP'),
10488                    EXCLUS('POINT','NOEUD'),
10489                    EXCLUS('GROUP_MA','MAILLE'),
10490                    EXCLUS('GROUP_NO','NOEUD'),
10491                    EXCLUS('NOEUD_CHOC','GROUP_NO_CHOC'),),
10492            NOM_CMP         =SIMP(statut='f',typ='TXM' ),
10493
10494            MAILLE          =SIMP(statut='f',typ=ma),
10495            GROUP_MA        =SIMP(statut='f',typ=grma),
10496            NOEUD           =SIMP(statut='f',typ=no),
10497            GROUP_NO        =SIMP(statut='f',typ=grno),
10498            POINT           =SIMP(statut='f',typ='I' ),
10499            NOEUD_CHOC      =SIMP(statut='f',typ=no),
10500            GROUP_NO_CHOC   =SIMP(statut='f',typ=grno),
10501          ),
10502 ###
10503          NOM_PARA        =SIMP(statut='f',typ='TXM',
10504                                into=("DX","DY","DZ","DRX","DRY","DRZ","TEMP",
10505                                      "INST","X","Y","Z","EPSI","FREQ","PULS","AMOR","ABSC") ),
10506          NOM_RESU        =SIMP(statut='f',typ='TXM' ),
10507          INTERPOL        =SIMP(statut='f',typ='TXM',max=02,into=("NON","LIN","LOG") ),
10508          PROL_DROIT      =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ),
10509          PROL_GAUCHE     =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ),
10510                   
10511          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
10512          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ),
10513 )  ;
10514 #& MODIF COMMANDE  DATE 03/03/97   AUTEUR A2BHHWS A.C.LEGER 
10515 RECU_GENE=OPER(nom="RECU_GENE",op=  76,sd_prod=vect_asse_gene,docu="U4.71.03-E",reentrant='n',
10516                fr="Récupération d un champ de grandeur à partir d un résultat en coordonnées généralisées",
10517          RESU_GENE       =SIMP(statut='o',typ=tran_gene ),
10518          INST            =SIMP(statut='o',typ='R' ),
10519          NOM_CHAM        =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL","VITE","ACCE") ),
10520          INTERPOL        =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","LIN") ),
10521          CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF" ,into=("ABSOLU","RELATIF") ),
10522          PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
10523 )  ;
10524 #& MODIF COMMANDE  DATE 22/07/99   AUTEUR CIBHHLV L.VIVAN 
10525 RECU_TABLE=OPER(nom="RECU_TABLE",op= 174,sd_prod=table,
10526                 fr=" ",docu="U4.71.02-A",reentrant='n',
10527          CO              =SIMP(statut='o',typ=assd),
10528          NOM_TABLE       =SIMP(statut='o',typ='TXM' ),  
10529          TITRE           =SIMP(statut='f',typ='TXM',max='**'),  
10530 )  ;
10531 #& MODIF COMMANDE  DATE 03/05/2000   AUTEUR VABHHTS J.PELLET 
10532 def reso_grad_prod(MATR_ASSE,**args ):
10533   if AsType(MATR_ASSE) == matr_asse_depl_r : return cham_no_depl_r
10534   if AsType(MATR_ASSE) == matr_asse_temp_r : return cham_no_temp_r
10535   if AsType(MATR_ASSE) == matr_asse_pres_r : return cham_no_pres_r
10536   raise AsException("type de concept resultat non prevu")
10537
10538 RESO_GRAD=OPER(nom="RESO_GRAD",op=  84,sd_prod=reso_grad_prod,
10539                fr="Résolution par la méthode du gradient conjugué préconditionné",
10540                docu="U4.55.04-E",reentrant='f',
10541          MATR_ASSE       =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r ) ),
10542          CHAM_NO         =SIMP(statut='o',typ=(cham_no_depl_r,cham_no_temp_r,cham_no_pres_r ) ),
10543          CHAM_CINE       =SIMP(statut='f',typ=(cham_no_temp_r,cham_no_depl_r,cham_no_pres_r ) ),
10544          MATR_FACT       =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r ) ),
10545          NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),  
10546          REPRISE         =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
10547          RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1E-6 ),  
10548          INFO            =SIMP(statut='f',typ='I',into=(1,2) ),
10549 )  ;
10550 #& MODIF COMMANDE  DATE 02/10/96   AUTEUR CIBHHLV L.VIVAN 
10551 def reso_ldlt_prod(CHAM_NO,**args ):
10552   if AsType(CHAM_NO) == cham_no_temp_r : return cham_no_temp_r
10553   if AsType(CHAM_NO) == cham_no_depl_r : return cham_no_depl_r
10554   if AsType(CHAM_NO) == cham_no_pres_r : return cham_no_pres_r
10555   if AsType(CHAM_NO) == cham_no_temp_c : return cham_no_temp_c
10556   if AsType(CHAM_NO) == cham_no_depl_c : return cham_no_depl_c
10557   if AsType(CHAM_NO) == cham_no_pres_c : return cham_no_pres_c
10558   raise AsException("type de concept resultat non prevu")
10559
10560 RESO_LDLT=OPER(nom="RESO_LDLT",op=15,sd_prod=reso_ldlt_prod,reentrant='f',
10561                fr="Résolution en place ou hors place d un système factorisé",docu="U4.55.02-F",
10562          MATR_FACT       =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_temp_r,
10563                                                matr_asse_temp_c,matr_asse_pres_r,matr_asse_pres_c) ),
10564          CHAM_NO         =SIMP(statut='o',typ=(cham_no_temp_r,cham_no_depl_r,cham_no_pres_r,
10565                                                cham_no_temp_c,cham_no_depl_c,cham_no_pres_c) ),
10566          CHAM_CINE       =SIMP(statut='f',typ=(cham_no_temp_r,cham_no_depl_r,cham_no_pres_c) ),
10567          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
10568          INFO            =SIMP(statut='f',typ='I',into=(1,2) ),
10569 )  ;
10570 #& MODIF COMMANDE  DATE 31/05/2000   AUTEUR CIBHHLV L.VIVAN 
10571 def rest_base_phys_prod(RESU_GENE,RESULTAT,**args ):
10572   if AsType(RESU_GENE) == tran_gene : return dyna_trans
10573   if AsType(RESU_GENE) == mode_gene : return mode_meca
10574   if AsType(RESU_GENE) == mode_cycl : return mode_meca
10575   if AsType(RESU_GENE) == harm_gene : return dyna_harmo
10576   if AsType(RESULTAT)  == mode_meca : return mode_meca
10577   raise AsException("type de concept resultat non prevu")
10578
10579 REST_BASE_PHYS=OPER(nom="REST_BASE_PHYS",op=  75,sd_prod=rest_base_phys_prod,
10580                     fr="Restituer dans la base physique des résultats en coordonnées généralisées",
10581                     docu="U4.63.21-E",reentrant='n',
10582         regles=(UN_PARMI('RESU_GENE','RESULTAT'),
10583                 EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST','TOUT_INST'),
10584                 EXCLUS('TOUT_INST','NUME_ORDRE','INST','LIST_INST','TOUT_ORDRE'),
10585 #  Doc U à revoir
10586                 PRESENT_ABSENT('MULT_APPUI','CORR_STAT'),
10587                 EXCLUS('MULT_APPUI','NOEUD','GROUP_NO'),
10588                 EXCLUS('CORR_STAT','NOEUD','GROUP_NO'),             
10589                 EXCLUS('NOEUD','GROUP_NO'), 
10590                 PRESENT_PRESENT('RESULTAT','SQUELETTE'),
10591                 PRESENT_PRESENT('ACCE_MONO_APPUI','DIRECTION'),),
10592          RESU_GENE       =SIMP(statut='f',typ=(tran_gene,mode_gene,mode_cycl,harm_gene ) ),
10593          RESULTAT        =SIMP(statut='f',typ=mode_meca ),
10594          
10595          MODE_MECA       =SIMP(statut='f',typ=mode_meca ),
10596          TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
10597          NUME_ORDRE      =SIMP(statut='f',typ='I',max='**' ),  
10598          TOUT_INST       =SIMP(statut='f',typ='TXM',into=("OUI",) ),
10599          INST            =SIMP(statut='f',typ='R',max='**' ),  
10600          LIST_INST       =SIMP(statut='f',typ=listr8 ),
10601          FREQ            =SIMP(statut='f',typ='R',max='**' ),  
10602          LIST_FREQ       =SIMP(statut='f',typ=listr8 ),
10603          b_prec_crit     =BLOC(condition = "INST != None or LIST_INST != None or FREQ != None or LIST_FREQ != None",
10604            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("ABSOLU","RELATIF") ),
10605            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),  
10606          ),
10607          INTERPOL        =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","LIN") ),
10608          
10609          MULT_APPUI      =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
10610          CORR_STAT       =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
10611          NOM_CHAM        =SIMP(statut='f',typ='TXM',max=8,defaut="ACCE",   
10612                                into=("DEPL","VITE","ACCE","ACCE_ABSOLU","EFGE_ELNO_DEPL","SIPO_ELNO_DEPL",                 
10613                                      "SIGM_ELNO_DEPL","FORC_NODA",) ),
10614          TOUT_CHAM       =SIMP(statut='f',typ='TXM',into=("OUI",) ),
10615          GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
10616          NOEUD           =SIMP(statut='f',typ=no,max='**'),
10617  
10618          ACCE_MONO_APPUI =SIMP(statut='f',typ=fonction),
10619          DIRECTION       =SIMP(statut='f',typ='R',max='**' ),
10620
10621          SQUELETTE       =SIMP(statut='f',typ=squelette ),
10622          SOUS_STRUC      =SIMP(statut='f',typ='TXM' ),  
10623          SECTEUR         =SIMP(statut='f',typ='I',defaut= 1 ),  
10624          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),  
10625 )  ;
10626 #& MODIF COMMANDE  DATE 16/12/97   AUTEUR CIBHHLV L.VIVAN 
10627 REST_SPEC_PHYS=OPER(nom="REST_SPEC_PHYS",op= 148,sd_prod=tabl_intsp,
10628                     fr="Calcul, à partir d un interspectre de réponse modale, de la réponse d une structure dans la base physique, à certains noeuds sélectionnés du maillage",
10629                     docu="U4.63.22-C",reentrant='n',
10630          regles=(AU_MOINS_UN('BASE_ELAS_FLUI','MODE_MECA'),),
10631          BASE_ELAS_FLUI  =SIMP(statut='f',typ=melasflu ),
10632          MODE_MECA       =SIMP(statut='f',typ=mode_meca ),
10633          BANDE           =SIMP(statut='f',typ='R',min=02,max=02 ),  
10634          NUME_ORDRE      =SIMP(statut='f',typ='I',max='**' ),  
10635          INTE_SPEC_GENE  =SIMP(statut='o',typ=tabl_intsp ),
10636          NOEUD           =SIMP(statut='o',typ=no,max='**'),
10637          NOM_CMP         =SIMP(statut='o',typ='TXM',max='**' ),  
10638          MAILLE          =SIMP(statut='f',typ=ma,max='**'),
10639          NOM_CHAM        =SIMP(statut='o',typ='TXM',max=07,    
10640                                into=("DEPL","VITE","ACCE","EFGE_ELNO_DEPL",      
10641                                      "SIPO_ELNO_DEPL","SIGM_ELNO_DEPL","FORC_NODA") ),
10642          MODE_STAT       =SIMP(statut='f',typ=mode_stat ),
10643          EXCIT           =FACT(statut='f',max=01,
10644            NOEUD           =SIMP(statut='o',typ=no,max='**'),
10645            NOM_CMP         =SIMP(statut='o',typ='TXM',max='**' ),  
10646          ),
10647          MOUVEMENT       =SIMP(statut='f',typ='TXM',defaut="ABSOLU",into=("RELATIF","ABSOLU","DIFFERENTIEL") ),
10648          OPTION          =SIMP(statut='f',typ='TXM',defaut="DIAG_DIAG",    
10649                                into=("DIAG_TOUT","DIAG_DIAG","TOUT_TOUT","TOUT_DIAG") ),
10650          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),  
10651 )  ;
10652 #& MODIF COMMANDE  DATE 16/06/2000   AUTEUR D6BHHJP J.P.LEFEBVRE 
10653 RETOUR=PROC(nom="RETOUR",op= -2,docu="U4.13.02-E",
10654             fr="Retour au fichier de commandes appelant", 
10655 ) ;
10656 #& MODIF COMMANDE  DATE 03/10/2000   AUTEUR VABHHTS J.PELLET 
10657 #  RESPONSABLE                            GJBHHEL E.LORENTZ
10658 STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli,
10659                    fr="Analyse mécanique statique non linéaire",
10660                    docu="U4.51.03-E",reentrant='f',
10661          regles=(AU_MOINS_UN('COMP_INCR','COMP_ELAS'),
10662                  EXCLUS('RECH_LINEAIRE','PILOTAGE'), ),
10663          MODELE          =SIMP(statut='o',typ=modele),
10664          CHAM_MATER      =SIMP(statut='o',typ=cham_mater),
10665          CARA_ELEM       =SIMP(statut='f',typ=cara_elem),
10666          EXCIT           =FACT(statut='o',min=01,max='**',
10667            CHARGE          =SIMP(statut='o',typ=char_meca),
10668            FONC_MULT       =SIMP(statut='f',typ=fonction),
10669            TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FIXE_CSTE",    
10670                                  into=("FIXE_CSTE","FIXE_PILO","SUIV","DIDI")),
10671          ),
10672          COMP_INCR       =FACT(statut='f',min=01,max='**',
10673            RELATION        =SIMP(statut='o',typ='TXM',defaut="VMIS_ISOT_TRAC",    
10674                                  into=( "ELAS",
10675                                         "VMIS_ISOT_TRAC",
10676                                         "VMIS_ISOT_LINE",
10677                                         "VMIS_ECMI_TRAC",
10678                                         "VMIS_ECMI_LINE",
10679                                         "ENDO_LOCAL",
10680                                         "ENDO_FRAGILE",
10681                                         "BETON_ENDO_LOCAL",
10682                                         "RUPT_FRAG",
10683                                         "PLAS_GRAD",
10684                                         "DURC_GRAD",
10685                                         "META_PL",
10686                                         "META_PL_PT",
10687                                         "META_PL_RE",
10688                                         "META_PL_PT_RE",
10689                                         "META_VL",
10690                                         "META_VL_PT",
10691                                         "META_VL_RE",
10692                                         "META_VL_PT_RE",
10693                                         "META_PNL",
10694                                         "META_PNL_PT",
10695                                         "META_PNL_RE",
10696                                         "META_PNL_PT_RE",
10697                                         "META_VNL",
10698                                         "META_VNL_PT",
10699                                         "META_VNL_RE",
10700                                         "META_VNL_PT_RE",
10701                                         "VMIS_CINE_LINE",
10702                                         "TAHERI",
10703                                         "VISC_TAHERI",
10704                                         "CHABOCHE",
10705                                         "VISCOCHAB",
10706                                         "VMIS_CIN1_CHAB",
10707                                         "VMIS_CIN2_CHAB",
10708                                         "POLY_CFC",
10709                                         "LMARC",
10710                                         "ROUSSELIER",
10711                                         "VMIS_POU_LINE",
10712                                         "VMIS_POU_FLEJOU",
10713                                         "COULOMB",
10714                                         "ARME",
10715                                         "ASSE_CORN",
10716                                         "NORTON_HOFF",
10717                                         "LEMAITRE",
10718                                         "ZIRC_CYRA2",
10719                                         "ZIRC_EPRI",
10720                                         "ASSE_COMBU",
10721                                         "VENDOCHAB",
10722                                         "NADAI_B",
10723                                         "DIS_CONTACT",
10724                                         "DIS_CHOC",
10725                                         "DIS_GOUJ2E_PLAS",
10726                                         "DIS_GOUJ2E_ELAS",
10727                                         "GRILLE_ISOT_LINE",
10728                                         "GRILLE_CINE_LINE",
10729                                         "GRILLE_PINTO_MEN",
10730                                         "PINTO_MENEGOTTO",
10731                                         "CJS",
10732                                         "OHNO",
10733                                         "GRANGER_FP",
10734                                         "GRANGER_FP_V",
10735                                         "BETON_DOUBLE_DP",
10736                                         "KIT_HM",
10737                                         "KIT_HHM",
10738                                         "KIT_THH",
10739                                         "KIT_THM",
10740                                         "KIT_THHM",
10741                                         "VMIS_ASYM_LINE",
10742                                         "ELAS_THM",
10743                                         "SURF_ETAT_NSAT",
10744                                         "SURF_ETAT_SATU",
10745                                         "CAM_CLAY_THM",
10746                                         "KIT_DDI",
10747                                         ) ),
10748            ELAS            =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
10749            VMIS_ISOT_TRAC  =SIMP(statut='c',typ='I',defaut=2,into=(2,)),
10750            VMIS_ISOT_LINE  =SIMP(statut='c',typ='I',defaut=2,into=(2,)),
10751            VMIS_ECMI_TRAC  =SIMP(statut='c',typ='I',defaut=8,into=(8,)),
10752            VMIS_ECMI_LINE  =SIMP(statut='c',typ='I',defaut=8,into=(8,)),
10753            ENDO_LOCAL      =SIMP(statut='c',typ='I',defaut=2,into=(2,)),
10754            ENDO_FRAGILE    =SIMP(statut='c',typ='I',defaut=5,into=(5,)),
10755            BETON_ENDO_LOCAL=SIMP(statut='c',typ='I',defaut=2,into=(2,)),
10756            RUPT_FRAG       =SIMP(statut='c',typ='I',defaut=4,into=(4,)),
10757            PLAS_GRAD       =SIMP(statut='c',typ='I',defaut=5,into=(5,)),
10758            DURC_GRAD       =SIMP(statut='c',typ='I',defaut=5,into=(5,)),
10759            META_PL         =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
10760            META_PL_PT      =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
10761            META_PL_RE      =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
10762            META_PL_PT_RE   =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
10763            META_VL         =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
10764            META_VL_PT      =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
10765            META_VL_RE      =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
10766            META_VL_PT_RE   =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
10767            META_PNL        =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
10768            META_PNL_PT     =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
10769            META_PNL_RE     =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
10770            META_PNL_PT_RE  =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
10771            META_VNL        =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
10772            META_VNL_PT     =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
10773            META_VNL_RE     =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
10774            META_VNL_PT_RE  =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
10775            VMIS_CINE_LINE  =SIMP(statut='c',typ='I',defaut=7,into=(7,)),
10776            CHABOCHE        =SIMP(statut='c',typ='I',defaut=14,into=(14,)),
10777            VISCOCHAB       =SIMP(statut='c',typ='I',defaut=28,into=(28,)),
10778            VMIS_CIN1_CHAB  =SIMP(statut='c',typ='I',defaut=8,into=(8,)),
10779            VMIS_CIN2_CHAB  =SIMP(statut='c',typ='I',defaut=14,into=(14,)),
10780            POLY_CFC        =SIMP(statut='c',typ='I',defaut=1688,into=(1688,)),
10781            LMARC           =SIMP(statut='c',typ='I',defaut=20,into=(20,)),
10782            TAHERI          =SIMP(statut='c',typ='I',defaut=15,into=(15,)),
10783            VISC_TAHERI     =SIMP(statut='c',typ='I',defaut=9,into=(9,)),
10784            ROUSSELIER      =SIMP(statut='c',typ='I',defaut=3,into=(3,)),
10785            VMIS_POU_LINE   =SIMP(statut='c',typ='I',defaut=9,into=(9,)),
10786            VMIS_POU_FLEJOU =SIMP(statut='c',typ='I',defaut=9 ,into=(9,)),
10787            COULOMB         =SIMP(statut='c',typ='I',defaut=4,into=(4,)),
10788            ASSE_CORN       =SIMP(statut='c',typ='I',defaut=4,into=(4,)),
10789            ARME            =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
10790            NORTON_HOFF     =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
10791            LEMAITRE        =SIMP(statut='c',typ='I',defaut=2,into=(2,)),
10792            ZIRC_CYRA2      =SIMP(statut='c',typ='I',defaut=2,into=(2,)),
10793            ZIRC_EPRI       =SIMP(statut='c',typ='I',defaut=2,into=(2,)),
10794            ASSE_COMBU      =SIMP(statut='c',typ='I',defaut=5,into=(5,)),
10795            NADAI_B         =SIMP(statut='c',typ='I',defaut=34,into=(34,)),
10796            VENDOCHAB       =SIMP(statut='c',typ='I',defaut=10,into=(10,)),
10797            GRILLE_ISOT_LINE=SIMP(statut='c',typ='I',defaut=4,into=(4,)),
10798            GRILLE_CINE_LINE=SIMP(statut='c',typ='I',defaut=4,into=(4,)),
10799            GRILLE_PINTO_MEN=SIMP(statut='c',typ='I',defaut=16,into=(16,)),
10800            DIS_CONTACT     =SIMP(statut='c',typ='I',defaut=6,into=(6,)),
10801            DIS_CHOC        =SIMP(statut='c',typ='I',defaut=7,into=(7,)),
10802            DIS_GOUJ2E_PLAS =SIMP(statut='c',typ='I',defaut=2,into=(2,)),
10803            DIS_GOUJ2E_ELAS =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
10804            PINTO_MENEGOTTO =SIMP(statut='c',typ='I',defaut=8,into=(8,)),
10805            CJS             =SIMP(statut='c',typ='I',defaut=16,into=(16,)),
10806            OHNO            =SIMP(statut='c',typ='I',defaut=32,into=(32,)),
10807            GRANGER_FP      =SIMP(statut='c',typ='I',defaut=55,into=(55,)),
10808            GRANGER_FP_V    =SIMP(statut='c',typ='I',defaut=55,into=(55,)),
10809            BETON_DOUBLE_DP =SIMP(statut='c',typ='I',defaut=4,into=(4,)),
10810            KIT_HM          =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
10811            KIT_HHM         =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
10812            KIT_THH         =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
10813            KIT_THM         =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
10814            KIT_THHM        =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
10815            VMIS_ASYM_LINE  =SIMP(statut='c',typ='I',defaut=4,into=(4,)),
10816
10817            RELATION_KIT    =SIMP(statut='f',typ='TXM',max='**',     
10818                                  into=(
10819 # MECA
10820                                        "ELAS",
10821                                        "CJS",
10822                                        "ELAS_THM",
10823                                        "SURF_ETAT_NSAT",
10824                                        "SURF_ETAT_SATU",
10825                                        "CAM_CLAY_THM",
10826 # THMC
10827                                        "GAZ",
10828                                        "LIQU_SATU",
10829                                        "LIQU_SATU_GAT",
10830                                        "LIQU_GAZ_ATM",
10831                                        "LIQU_VAPE_GAZ",           
10832                                        "LIQU_NSAT_GAT",           
10833                                        "LIQU_GAZ",
10834 # THER
10835                                        "THER_HOMO",
10836                                        "THER_POLY",
10837 # HYDR
10838                                        "HYDR_UTIL",
10839                                        "HYDR",
10840 # MECA_META
10841                                        "ACIER",
10842                                        "ZIRC",
10843 # MECA KIT_DDI
10844                                        "VMIS_ISOT_TRAC",
10845                                        "VMIS_ISOT_LINE",
10846                                        "VMIS_ISOT_CINE",
10847                                        "GRANGER_FP",
10848                                        "GRANGER_FP_V",
10849                                        "ROUSSELIER",
10850                                        "CHABOCHE",
10851                                        "OHNO",
10852                                        "NADAI_B",
10853                                        "BETON_DOUBLE_DP",
10854                                        ) ),
10855            ELAS_THM        =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
10856            SURF_ETAT_NSAT  =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
10857            SURF_ETAT_SATU  =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
10858            CAM_CLAY_THM    =SIMP(statut='c',typ='I',defaut=6,into=(6,)),
10859            GAZ             =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
10860            LIQU_SATU       =SIMP(statut='c',typ='I',defaut=2,into=(2,)),
10861            LIQU_SATU_GAT   =SIMP(statut='c',typ='I',defaut=2,into=(2,)),
10862            LIQU_GAZ_ATM    =SIMP(statut='c',typ='I',defaut=2,into=(2,)),
10863            LIQU_VAPE_GAZ   =SIMP(statut='c',typ='I',defaut=3,into=(3,)),
10864            LIQU_NSAT_GAT   =SIMP(statut='c',typ='I',defaut=3,into=(3,)),
10865            LIQU_GAZ        =SIMP(statut='c',typ='I',defaut=2,into=(2,)),
10866            THER_HOMO       =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
10867            THER_POLY       =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
10868            HYDR_UTIL       =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
10869            HYDR            =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
10870            ACIER           =SIMP(statut='c',typ='I',defaut=7,into=(7,)),
10871            ZIRC            =SIMP(statut='c',typ='I',defaut=5,into=(5,)),
10872
10873            COQUE_NCOU      =SIMP(statut='f',typ='I'),  
10874            TUYAU_NCOU      =SIMP(statut='f',typ='I' ),  
10875            TUYAU_NSEC      =SIMP(statut='f',typ='I' ),  
10876            DEFORMATION     =SIMP(statut='f',typ='TXM',defaut="PETIT",into=("PETIT","PETIT_REAC","SIMO_MIEHE")),
10877            ALGO_C_PLAN     =SIMP(statut='f',typ='TXM',into=("DEBORST",)),
10878            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
10879            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
10880            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
10881          ),
10882          COMP_ELAS       =FACT(statut='f',min=01,max='**',
10883            RELATION        =SIMP(statut='o',typ='TXM',defaut="ELAS",    
10884                                  into=("ELAS","ELAS_VMIS_LINE","ELAS_VMIS_TRAC", 
10885                                        "ELAS_POUTRE_GR","CABLE")),
10886            ELAS            =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
10887            ELAS_VMIS_TRAC  =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
10888            ELAS_VMIS_LINE  =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
10889            ELAS_POUTRE_GR  =SIMP(statut='c',typ='I',defaut=3,into=(3,)),
10890            CABLE           =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
10891            COQUE_NCOU      =SIMP(statut='f',typ='I'),  
10892            TUYAU_NCOU      =SIMP(statut='f',typ='I'),  
10893            TUYAU_NSEC      =SIMP(statut='f',typ='I'),  
10894            DEFORMATION     =SIMP(statut='f',typ='TXM',defaut="PETIT" ,into=("PETIT","GREEN","GREEN_GR",) ),
10895            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
10896            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
10897            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
10898          ),
10899          ETAT_INIT       =FACT(statut='f',min=01,max=01,
10900            regles=(AU_MOINS_UN('EVOL_NOLI','DEPL','SIGM','VARI','VARI_NON_LOCAL',),  
10901                    EXCLUS('EVOL_NOLI','DEPL',),
10902                    EXCLUS('EVOL_NOLI','SIGM',),
10903                    EXCLUS('EVOL_NOLI','VARI',),
10904                    EXCLUS('EVOL_NOLI','VARI_NON_LOCAL',),       
10905                    EXCLUS('NUME_ORDRE','INST'), ),
10906            DEPL            =SIMP(statut='f',typ=cham_no_depl_r),
10907            SIGM            =SIMP(statut='f',typ=(cham_elem_sief_r,carte_sief_r)),
10908            VARI            =SIMP(statut='f',typ=cham_elem_vari_r),
10909            VARI_NON_LOCAL  =SIMP(statut='f',typ=cham_no_vanl_r),
10910            EVOL_NOLI       =SIMP(statut='f',typ=evol_noli),
10911            NUME_ORDRE      =SIMP(statut='f',typ='I'),  
10912            INST            =SIMP(statut='f',typ='R'),  
10913            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),  
10914            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
10915            NUME_DIDI       =SIMP(statut='f',typ='I'),  
10916            INST_ETAT_INIT  =SIMP(statut='f',typ='R'),  
10917          ),
10918          INCREMENT       =FACT(statut='o',min=01,max=01,
10919            regles=(EXCLUS('NUME_INST_INIT','INST_INIT'),
10920                    EXCLUS('NUME_INST_FIN','INST_FIN'),),
10921            LIST_INST       =SIMP(statut='o',typ=listr8),
10922            EVOLUTION       =SIMP(statut='f',typ='TXM',defaut="CHRONOLOGIQUE",    
10923                                  into=("CHRONOLOGIQUE","RETROGRADE","SANS",) ),
10924            NUME_INST_INIT  =SIMP(statut='f',typ='I'),  
10925            INST_INIT       =SIMP(statut='f',typ='R'),  
10926            NUME_INST_FIN   =SIMP(statut='f',typ='I'),  
10927            INST_FIN        =SIMP(statut='f',typ='R'),  
10928            PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3 ),  
10929            SUBD_PAS        =SIMP(statut='f',typ='I',defaut=1),  
10930            SUBD_PAS_MINI   =SIMP(statut='f',typ='R'),  
10931            COEF_SUBD_PAS_1 =SIMP(statut='f',typ='R',defaut= 1.0E+0),  
10932          ),
10933          NEWTON          =FACT(statut='d',min=01,max=01,
10934            REAC_INCR       =SIMP(statut='f',typ='I',defaut= 1 ),  
10935            PREDICTION      =SIMP(statut='f',typ='TXM',into=("DEPL_CALCULE","TANGENTE","ELASTIQUE","EXTRAPOL") ),
10936            MATRICE         =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE") ),
10937            REAC_ITER       =SIMP(statut='f',typ='I',defaut=0),  
10938            EVOL_NOLI       =SIMP(statut='f',typ=evol_noli),
10939          ),
10940          RECH_LINEAIRE   =FACT(statut='f',min=01,max=01,
10941            RESI_LINE_RELA  =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),  
10942            ITER_LINE_MAXI  =SIMP(statut='f',typ='I',defaut= 3),  
10943          ),
10944          PILOTAGE        =FACT(statut='f',min=01,max=01,
10945            regles=(EXCLUS('NOEUD','GROUP_NO'),),
10946            TYPE            =SIMP(statut='o',typ='TXM',into=("DDL_IMPO","LONG_ARC","PRED_ELAS") ),
10947            COEF_MULT       =SIMP(statut='f',typ='R',defaut= 1.0E+0),  
10948            ETA_PILO_MAX    =SIMP(statut='f',typ='R'),  
10949            ETA_PILO_MIN    =SIMP(statut='f',typ='R'),  
10950            NOEUD           =SIMP(statut='f',typ=no,max='**'),
10951            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
10952            NOM_CMP         =SIMP(statut='f',typ='TXM',max='**' ),  
10953                          ),
10954          CONVERGENCE     =FACT(statut='d',min=01,max=01,
10955            RESI_GLOB_MAXI  =SIMP(statut='f',typ='R'),  
10956            RESI_GLOB_RELA  =SIMP(statut='f',typ='R'),  
10957            ITER_GLOB_MAXI  =SIMP(statut='f',typ='I',defaut=10),  
10958            ARRET           =SIMP(statut='f',typ='TXM',defaut="OUI"),  
10959            RESI_INTE_RELA  =SIMP(statut='f',typ='R'     
10960                                 ,defaut= 1.0E-6),  
10961            ITER_INTE_MAXI  =SIMP(statut='f',typ='I',defaut= 10 ),  
10962            ITER_INTE_PAS   =SIMP(statut='f',typ='I',defaut= 0 ),  
10963            TYPE_MATR_COMP  =SIMP(statut='f',typ='TXM',defaut="TANG_VIT",into=("TANG_VIT",)),
10964            RESO_INTE       =SIMP(statut='f',typ='TXM',defaut="IMPLICITE",into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")),
10965          ),
10966          PARM_THETA      =SIMP(statut='f',typ='R'     
10967                               ,defaut= 1. ),  
10968          SOLVEUR         =FACT(statut='d',min=01,max=01,
10969            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
10970            b_mult_front    =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
10971              RENUM           =SIMP(statut='f',typ='TXM',defaut="MDA",into=("MD","MDA","METIS") ),
10972            ),
10973            b_ldlt         =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT",
10974              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
10975              TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400. ),
10976            ),
10977            b_ldlt_mult    =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
10978                                    fr="Paramètres relatifs à la non inversibilité de la matrice à factorise",
10979              NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
10980              STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),             
10981            ),
10982            b_gcpc         =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué",
10983              PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC","SANS","DIAG") ),
10984              NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ),
10985              RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
10986              NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
10987              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
10988            ),
10989 #  A quoi sert eps           
10990            EPS             =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
10991            SYME            =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
10992          ),
10993          ARCHIVAGE       =FACT(statut='f',min=01,max=01,
10994            regles=(EXCLUS('PAS_ARCH','LIST_INST','INST'),
10995                    EXCLUS('ARCH_ETAT_INIT','NUME_INIT'), ),
10996            LIST_INST       =SIMP(statut='f',typ=(listr8) ),
10997            INST            =SIMP(statut='f',typ='R',max='**' ),  
10998            PAS_ARCH        =SIMP(statut='f',typ='I' ),  
10999            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3),  
11000            ARCH_ETAT_INIT  =SIMP(statut='f',typ='TXM',into=("OUI",)),
11001            NUME_INIT       =SIMP(statut='f',typ='I'),  
11002            DETR_NUME_SUIV  =SIMP(statut='f',typ='TXM',into=("OUI",)),
11003            CHAM_EXCLU      =SIMP(statut='f',typ='TXM',max='**',into=("DEPL","SIEF_ELGA","VARI_ELGA",           
11004                                                                      "VARI_NON_LOCAL","LANL_ELGA")),
11005          ),
11006          MODELE_NON_LOCAL=SIMP(statut='f',typ=(modele) ),
11007          SOLV_NON_LOCAL  =FACT(statut='d',min=01,max=01,
11008            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
11009            b_mult_front    =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
11010              RENUM           =SIMP(statut='f',typ='TXM',defaut="MDA",into=("MD","MDA","METIS") ),
11011            ),
11012            b_ldlt         =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT",
11013              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
11014              TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400. ),
11015            ),
11016            b_ldlt_mult    =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
11017                                    fr="Paramètres relatifs à la non inversibilité de la matrice à factorise",
11018              NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
11019              STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),             
11020            ),
11021            b_gcpc         =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué",
11022              PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC","SANS","DIAG") ),
11023              NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ),
11024              RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
11025              NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
11026            ),
11027 #  A quoi sert eps           
11028            EPS             =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
11029          ),
11030          LAGR_NON_LOCAL  =FACT(statut='d',max=01,
11031            ITER_DUAL_MAXI  =SIMP(statut='f',typ='I',defaut= 50),  
11032            RESI_DUAL_ABSO  =SIMP(statut='o',typ='R'),  
11033            RESI_PRIM_ABSO  =SIMP(statut='o',typ='R'),  
11034            RHO             =SIMP(statut='f',typ='R',defaut= 1000.),  
11035            ITER_PRIM_MAXI  =SIMP(statut='f',typ='I',defaut= 10),  
11036          ),
11037          INFO            =SIMP(statut='f',typ='I',into=(1,2) ),
11038          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),  
11039  )  ;
11040 #& MODIF COMMANDE  DATE 20/09/1999   AUTEUR DURAND C.DURAND 
11041 TEST_FONCTION=PROC(nom="TEST_FONCTION",op= 135,fr="Extraction d une valeur numérique ou d un attribut de fonction pour la comparer à une valeur de référence",
11042                    docu="U4.92.02-E",
11043          FICHIER         =SIMP(statut='f',typ='TXM',defaut="RESULTAT"),
11044          TEST_NOOK       =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
11045          VALEUR          =FACT(statut='f',min=01,max='**',
11046                                fr="Tester la valeur d une fonction ou d une nappe",
11047            regles=(UN_PARMI('VALE_REFE','VALE_REFE_C', ),),
11048            FONCTION        =SIMP(statut='o',typ=fonction ),
11049            NOM_PARA        =SIMP(statut='f',typ='TXM',max=02),
11050            VALE_PARA       =SIMP(statut='o',typ='R',max=02),
11051            VALE_REFE       =SIMP(statut='f',typ='R' ),
11052            VALE_REFE_C     =SIMP(statut='f',typ='C' ),
11053            CRITERE         =SIMP(statut='f',typ='TXM',fr="Critère de comparaison avec la solution de référence",
11054                                  defaut="RELATIF",into=("RELATIF","ABSOLU") ),
11055            PRECISION       =SIMP(statut='f',typ='R',fr="Ecart maximal autorisé avec la solution de référence",
11056                                  defaut= 1.E-3 ),
11057            REFERENCE       =SIMP(statut='f',typ='TXM',
11058                                  into=("ANALYTIQUE","SOURCE_EXTERNE","NON_REGRESSION","AUTRE_ASTER") ),
11059            b_version = BLOC (condition = "REFERENCE == 'NON_REGRESSION'", 
11060              VERSION         =SIMP(statut='f',typ='TXM' ),
11061            ),
11062          ),
11063          ATTRIBUT        =FACT(statut='f',min=01,max='**',
11064                                fr="Tester la valeur d un attribut d une fonction ou d''une nappe",
11065            FONCTION        =SIMP(statut='o',typ=fonction ),
11066            PARA            =SIMP(statut='f',typ='R' ),
11067            CRIT_PARA       =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
11068            PREC_PARA       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
11069            ATTR            =SIMP(statut='o',typ='TXM',
11070                                  into=("NOM_PARA","NOM_RESU","PROL_DROIT","PROL_GAUCHE","INTERPOL",
11071                                        "PROL_GAUCHE_FONC","PROL_DROIT_FONC","INTERPOL_FONC","NOM_PARA_FONC") ),
11072            ATTR_REFE       =SIMP(statut='o',typ='TXM' ),
11073            REFERENCE       =SIMP(statut='f',typ='TXM',
11074                                  into=("ANALYTIQUE","SOURCE_EXTERNE","NON_REGRESSION","AUTRE_ASTER") ),
11075            b_version       =BLOC(condition = "REFERENCE == 'NON_REGRESSION'", 
11076              VERSION         =SIMP(statut='f',typ='TXM' ),
11077            ),
11078          ),
11079          TABL_INTSP      =FACT(statut='f',min=01,max='**',
11080                                fr="Tester la valeur d une fonction contenue dans une table interspectrale",
11081            regles=(UN_PARMI('NUME_ORDRE_I','NOEUD_I'),),
11082            INTE_SPEC       =SIMP(statut='o',typ=tabl_intsp ),
11083            NOEUD_I         =SIMP(statut='f',typ=no),
11084            NUME_ORDRE_I    =SIMP(statut='f',typ='I' ),
11085            b_nume_ordre_i = BLOC (condition = "NUME_ORDRE_I != None", 
11086              NUME_ORDRE_J    =SIMP(statut='o',typ='I' ),
11087            ),
11088            b_noeud_i = BLOC (condition = "NOEUD_I != None",             
11089              NOEUD_J         =SIMP(statut='o',typ=no),
11090              NOM_CMP_I       =SIMP(statut='o',typ='TXM' ),
11091              NOM_CMP_J       =SIMP(statut='o',typ='TXM' ),
11092            ),
11093            NUME_VITE_FLUI  =SIMP(statut='f',typ='I' ),
11094            VALE_PARA       =SIMP(statut='o',typ='R' ),
11095            VALE_REFE_C     =SIMP(statut='o',typ='C' ),
11096            CRITERE         =SIMP(statut='f',typ='TXM',fr="Critère de comparaison avec la solution de référence",
11097                                  defaut="RELATIF",into=("RELATIF","ABSOLU") ),
11098            PRECISION       =SIMP(statut='f',typ='R',fr="Ecart maximal autorisé avec la solution de référence",
11099                                  defaut= 1.E-3 ),
11100            REFERENCE       =SIMP(statut='f',typ='TXM',
11101                                  into=("ANALYTIQUE","SOURCE_EXTERNE","NON_REGRESSION","AUTRE_ASTER") ),
11102            b_version       =BLOC(condition = "REFERENCE == 'NON_REGRESSION'", 
11103              VERSION         =SIMP(statut='f',typ='TXM' ),
11104            ),
11105          ),
11106 )  ;
11107 #& MODIF COMMANDE  DATE 03/05/2000   AUTEUR VABHHTS J.PELLET 
11108 TEST_RESU=PROC(nom="TEST_RESU",op=23,docu="U4.92.01-F",
11109                fr="Extraction d une valeur et comparaison à une valeur de référence",
11110          regles=(AU_MOINS_UN('CHAM_NO','CHAM_ELEM','RESU','OBJET')),
11111          FICHIER         =SIMP(statut='f',typ='TXM',defaut="RESULTAT"),  
11112          CHAM_NO         =FACT(statut='f',min=01,max='**',
11113            regles=(UN_PARMI('NOEUD','GROUP_NO','TYPE_TEST'),
11114                    EXCLUS('NOEUD','GROUP_NO'),
11115                    PRESENT_PRESENT('NOEUD','NOM_CMP'),
11116                    PRESENT_PRESENT( 'GROUP_NO','NOM_CMP'),
11117                    UN_PARMI('VALE','VALE_I','VALE_C'),),
11118            CHAM_GD         =SIMP(statut='o',typ=cham_no),
11119            NOEUD           =SIMP(statut='f',typ=no,max='**'),
11120            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
11121            NOM_CMP         =SIMP(statut='f',typ='TXM' ),  
11122            TYPE_TEST       =SIMP(statut='f',typ='TXM',into=("SOMM_ABS","SOMM","MAX","MIN")),
11123            VALE            =SIMP(statut='f',typ='R'),  
11124            VALE_I          =SIMP(statut='f',typ='I'),  
11125            VALE_C          =SIMP(statut='f',typ='C'),  
11126            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")),
11127            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3),  
11128            REFERENCE       =SIMP(statut='f',typ='TXM',into=("ANALYTIQUE","SOURCE_EXTERNE",            
11129                                                             "NON_REGRESSION","AUTRE_ASTER")),
11130            VERSION         =SIMP(statut='f',typ='TXM'),  
11131          ),
11132          CHAM_ELEM       =FACT(statut='f',min=01,max='**',
11133            regles=(UN_PARMI('MAILLE','TYPE_TEST',),
11134                    EXCLUS('NOEUD','GROUP_NO','POINT'),
11135                    PRESENT_PRESENT('NOEUD','NOM_CMP'),
11136                    PRESENT_PRESENT('GROUP_NO','NOM_CMP'),
11137                    PRESENT_PRESENT('POINT','NOM_CMP'),       
11138                    UN_PARMI('VALE','VALE_I','VALE_C'), ),
11139            CHAM_GD         =SIMP(statut='o',typ=cham_elem),# CO()
11140            MAILLE          =SIMP(statut='f',typ=ma),# CO()
11141            POINT           =SIMP(statut='f',typ='I' ),  
11142            NOEUD           =SIMP(statut='f',typ=no),# CO()
11143            GROUP_NO        =SIMP(statut='f',typ=grno),# CO()
11144            NOM_CMP         =SIMP(statut='f',typ='TXM' ),  
11145            TYPE_TEST       =SIMP(statut='f',typ='TXM',into=("SOMM_ABS","SOMM","MAX","MIN") ),
11146            VALE            =SIMP(statut='f',typ='R' ),  
11147            VALE_I          =SIMP(statut='f',typ='I' ),  
11148            VALE_C          =SIMP(statut='f',typ='C' ),  
11149            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")),
11150            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),  
11151            REFERENCE       =SIMP(statut='f',typ='TXM',into=("ANALYTIQUE","SOURCE_EXTERNE",            
11152                                                             "NON_REGRESSION","AUTRE_ASTER") ),
11153            VERSION         =SIMP(statut='f',typ='TXM' ),  
11154          ),
11155          RESU            =FACT(statut='f',min=01,max='**',
11156            regles=(UN_PARMI('NUME_ORDRE','INST','FREQ','NUME_MODE','NOEUD_CMP','NOM_CAS','ANGL'),
11157                    UN_PARMI('NOM_CHAM','PARA'),
11158                    PRESENT_ABSENT('PARA','NOEUD','GROUP_NO','POINT','NOM_CMP','TYPE_TEST'),        
11159                    PRESENT_PRESENT('NOM_CMP','NOM_CHAM'),
11160                    EXCLUS('NOEUD','GROUP_NO','POINT','TYPE_TEST'),
11161                    PRESENT_PRESENT('NOEUD','NOM_CMP'),        
11162                    PRESENT_PRESENT('GROUP_NO','NOM_CMP'),
11163                    PRESENT_PRESENT('POINT','NOM_CMP'),
11164                    UN_PARMI('VALE','VALE_I','VALE_C') ,),
11165            RESULTAT        =SIMP(statut='o',typ=resultat),
11166            NUME_ORDRE      =SIMP(statut='f',typ='I'),  
11167            INST            =SIMP(statut='f',typ='R'),  
11168            FREQ            =SIMP(statut='f',typ='R'),  
11169            NUME_MODE       =SIMP(statut='f',typ='I'),  
11170            NOEUD_CMP       =SIMP(statut='f',typ='TXM',max='**' ),  
11171            NOM_CAS         =SIMP(statut='f',typ='TXM'),  
11172            ANGL            =SIMP(statut='f',typ='R'),  
11173            PARA            =SIMP(statut='f',typ='TXM'),  
11174            NOM_CHAM        =SIMP(statut='f',typ='TXM'),  
11175            NOM_CMP         =SIMP(statut='f',typ='TXM'),  
11176            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
11177            NOEUD           =SIMP(statut='f',typ=no,max='**'),
11178            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
11179            POINT           =SIMP(statut='f',typ='I'),  
11180            TYPE_TEST       =SIMP(statut='f',typ='TXM',into=("SOMM_ABS","SOMM","MAX","MIN")),
11181            VALE            =SIMP(statut='f',typ='R'),  
11182            VALE_I          =SIMP(statut='f',typ='I'),  
11183            VALE_C          =SIMP(statut='f',typ='C'),  
11184            CRITERE         =SIMP(statut='f',typ='TXM',into=("RELATIF","ABSOLU"),max=02),
11185            PRECISION       =SIMP(statut='f',typ='R',max=02),  
11186            REFERENCE       =SIMP(statut='f',typ='TXM',into=("ANALYTIQUE","SOURCE_EXTERNE",            
11187                                                             "NON_REGRESSION","AUTRE_ASTER",) ),
11188            VERSION         =SIMP(statut='f',typ='TXM' ),  
11189          ),
11190          OBJET           =FACT(statut='f',max='**',
11191          regles=(UN_PARMI('INDICE','S_I','S_R','RESUME',),
11192                  UN_PARMI('VALE','VALE_I','VALE_C','RESUME','S_R','S_I'),),
11193            NOM             =SIMP(statut='o',typ='TXM'),  
11194            INDICE          =SIMP(statut='f',typ='I'),  
11195            NUM_OBJ         =SIMP(statut='f',typ='I'),  
11196            S_R             =SIMP(statut='f',typ='R'),  
11197            S_I             =SIMP(statut='f',typ='I'),  
11198            RESUME          =SIMP(statut='f',typ='I'),  
11199            VALE            =SIMP(statut='f',typ='R'),  
11200            VALE_I          =SIMP(statut='f',typ='I'),  
11201            VALE_C          =SIMP(statut='f',typ='C'),  
11202            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")),
11203            PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3 ),  
11204            REFERENCE       =SIMP(statut='f',typ='TXM',into=("ANALYTIQUE","SOURCE_EXTERNE",            
11205                                                             "NON_REGRESSION","AUTRE_ASTER",) ),
11206            VERSION         =SIMP(statut='f',typ='TXM' ),  
11207          ),
11208 )  ;
11209 #& MODIF COMMANDE  DATE 20/09/1999   AUTEUR DURAND C.DURAND 
11210 TEST_TABLE=PROC(nom="TEST_TABLE",op= 177,fr="Tester une 'cellule' d un concept de type table.Imprime dans le fichier 'RESULTAT' : OK si la valeur trouvée est identique à la valeur donnée en référence, NOOK sinon",
11211                 docu="U4.92.03-B",
11212          regles=(UN_PARMI('VALE','VALE_I','VALE_C', ),),
11213          FICHIER         =SIMP(statut='f',typ='TXM',defaut="RESULTAT"),
11214 #  concept table à créer           
11215          TABLE           =SIMP(statut='o',typ=table),
11216          FILTRE          =FACT(statut='f',min=01,max='**',
11217            regles=(UN_PARMI('VALE','VALE_I','VALE_C','VALE_K','VALE_CO', ),),
11218            NOM_PARA        =SIMP(statut='o',typ='TXM' ),  
11219            VALE            =SIMP(statut='f',typ='R' ),  
11220            VALE_I          =SIMP(statut='f',typ='I' ),  
11221            VALE_C          =SIMP(statut='f',typ='C' ),  
11222            VALE_K          =SIMP(statut='f',typ='TXM' ),  
11223            VALE_CO         =SIMP(statut='f',typ=geom),
11224            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
11225            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),  
11226          ),
11227          TYPE_TEST       =SIMP(statut='f',typ='TXM',into=("SOMM_ABS","SOMM","MAX","MIN") ),
11228          NOM_PARA        =SIMP(statut='o',typ='TXM' ),  
11229          VALE            =SIMP(statut='f',typ='R' ),  
11230          VALE_I          =SIMP(statut='f',typ='I' ),  
11231          VALE_C          =SIMP(statut='f',typ='C' ),  
11232          CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
11233          PRECISION       =SIMP(statut='f',typ='R',defaut= 1.2E-3 ),  
11234          REFERENCE       =SIMP(statut='f',typ='TXM',     
11235                                into=("ANALYTIQUE","SOURCE_EXTERNE","NON_REGRESSION","AUTRE_ASTER") ),
11236          b_version       =BLOC(condition = "REFERENCE == 'NON_REGRESSION'", 
11237              VERSION         =SIMP(statut='f',typ='TXM' ),
11238          ),  
11239 )  ;
11240 #& MODIF COMMANDE  DATE 19/05/2000   AUTEUR JFBHHUC C.ROSE 
11241 THER_LINEAIRE=OPER(nom="THER_LINEAIRE",op=25,sd_prod=evol_ther,docu="U4.54.01-F",reentrant='f',
11242                    fr="Analyse thermique linéaire stationnaire ou transitoire",
11243          MODELE          =SIMP(statut='o',typ=modele),
11244          CHAM_MATER      =SIMP(statut='o',typ=cham_mater),
11245          CARA_ELEM       =SIMP(statut='f',typ=cara_elem),
11246          EXCIT           =FACT(statut='o',min=01,max='**',
11247            CHARGE          =SIMP(statut='o',typ=(char_ther,char_cine_ther)),
11248            FONC_MULT       =SIMP(statut='f',typ=fonction),
11249          ),
11250          INCREMENT       =FACT(statut='f',min=01,max=01,
11251            LIST_INST       =SIMP(statut='o',typ=listr8 ),
11252            NUME_INIT       =SIMP(statut='f',typ='I'),
11253            NUME_FIN        =SIMP(statut='f',typ='I'),
11254          ),
11255          TEMP_INIT       =FACT(statut='f',min=01,max=01,
11256            regles=(EXCLUS('STATIONNAIRE','EVOL_THER','CHAM_NO','VALE'),),
11257            STATIONNAIRE    =SIMP(statut='f',typ='TXM',into=("OUI",) ),
11258            EVOL_THER       =SIMP(statut='f',typ=evol_ther),
11259            CHAM_NO         =SIMP(statut='f',typ=cham_no_temp_r),
11260            VALE            =SIMP(statut='f',typ='R'),
11261            NUME_INIT       =SIMP(statut='f',typ='I'),
11262          ),
11263          SENSIBILITE     =FACT(statut='f',min=01,max=01,
11264            THETA           =SIMP(statut='o',typ=theta_geom),
11265          ),
11266          DEUL_INIT       =FACT(statut='f',min=01,max=01,
11267            regles=(EXCLUS('STATIONNAIRE','EVOL_THER', ),),
11268            STATIONNAIRE    =SIMP(statut='f',typ='TXM',into=("OUI",) ),
11269            EVOL_THER       =SIMP(statut='f',typ=evol_ther),
11270            NUME_INIT       =SIMP(statut='f',typ='I'),
11271          ),
11272          SOLVEUR         =FACT(statut='d',min=01,max=01,
11273            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
11274            b_mult_front    =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
11275              RENUM           =SIMP(statut='f',typ='TXM',defaut="MDA",into=("MD","MDA","METIS") ),
11276            ),
11277            b_ldlt          =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT",
11278              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
11279              TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400. ),
11280            ),
11281            b_ldlt_mult      =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
11282                                    fr="Paramètres relatifs à la non inversibilité de la matrice à factorise",
11283              NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
11284              STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),             
11285            ),
11286            b_gcpc          =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué",
11287              PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC","SANS","DIAG") ),
11288              NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ),
11289              RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
11290              NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
11291              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
11292            ),
11293 #  A quoi sert eps           
11294            EPS             =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
11295          ),
11296          PARM_THETA      =SIMP(statut='f',typ='R',defaut= 0.57),
11297          ARCHIVAGE       =FACT(statut='f',min=01,max=01,
11298            regles=(UN_PARMI('LIST_ARCH','PAS_ARCH','LIST_INST','INST'),),
11299            LIST_ARCH       =SIMP(statut='f',typ=listis),
11300            LIST_INST       =SIMP(statut='f',typ=listr8),
11301            INST            =SIMP(statut='f',typ='R',max='**'),
11302            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),
11303            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",
11304                                  into=("RELATIF","ABSOLU")),
11305            PAS_ARCH        =SIMP(statut='f',typ='I'),
11306            CHAM_EXCLU      =SIMP(statut='f',typ='TXM',max='**',into=("VARI",)),
11307          ),
11308          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
11309          OPTION          =SIMP(statut='f',typ='TXM',max='**',
11310                                into=("FLUX_ELGA_TEMP","FLUX_ELNO_TEMP")),
11311          INFO            =SIMP(statut='f',typ='I',into=(1,2)),
11312 )  ;
11313 #& MODIF COMMANDE  DATE 19/05/2000   AUTEUR JFBHHUC C.ROSE 
11314 THER_NON_LINE=OPER(nom="THER_NON_LINE",op= 186,sd_prod=evol_ther,docu="U4.54.02-D",reentrant='f',
11315                    fr="Analyse thermique non linéaire stationnaire ou transitoire" ,
11316          MODELE          =SIMP(statut='o',typ=(modele) ),
11317          CHAM_MATER      =SIMP(statut='o',typ=(cham_mater) ),
11318          CARA_ELEM       =SIMP(statut='c',typ=(cara_elem) ),
11319          COMP_THER_NL    =FACT(statut='d',min=01,max='**',
11320            RELATION        =SIMP(statut='f',typ='TXM',defaut="THER_NL",
11321                                  into=("THER_NL",
11322                                        "THER_HYDR",
11323                                        "SECH_GRANGER",
11324                                        "SECH_MENSI",
11325                                        "SECH_BAZANT",
11326                                        "SECH_NAPPE"
11327                                        ) ),
11328            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
11329            GROUP_MA        =SIMP(statut='f',typ=grma,max='**'),
11330            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
11331          ),
11332          EVOL_THER_SECH  =SIMP(statut='f',typ=evol_ther),
11333          EXCIT           =FACT(statut='o',min=01,max='**',
11334            CHARGE          =SIMP(statut='o',typ=char_ther),
11335            FONC_MULT       =SIMP(statut='f',typ=fonction),
11336          ),
11337          INCREMENT       =FACT(statut='f',min=01,max=01,
11338            LIST_INST       =SIMP(statut='o',typ=listr8),
11339            NUME_INIT       =SIMP(statut='f',typ='I'),
11340            NUME_FIN        =SIMP(statut='f',typ='I'),
11341          ),
11342          TEMP_INIT       =FACT(statut='f',min=01,max=01,
11343            regles=(EXCLUS('STATIONNAIRE','EVOL_THER','CHAM_NO','VALE'),),
11344            STATIONNAIRE    =SIMP(statut='f',typ='TXM',into=("OUI",)),
11345            EVOL_THER       =SIMP(statut='f',typ=evol_ther),
11346            CHAM_NO         =SIMP(statut='f',typ=cham_no_temp_r),
11347            VALE            =SIMP(statut='f',typ='R'),
11348            NUME_INIT       =SIMP(statut='f',typ='I'),
11349          ),
11350          NEWTON          =FACT(statut='d',min=01,max=01,
11351            REAC_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
11352            RESI_LINE_RELA  =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),
11353            ITER_LINE_MAXI  =SIMP(statut='f',typ='I',defaut= 0 ),
11354          ),
11355          CONVERGENCE     =FACT(statut='d',min=01,max=01,
11356            RESI_GLOB_MAXI  =SIMP(statut='f',typ='R'),
11357            RESI_GLOB_RELA  =SIMP(statut='f',typ='R'),
11358            ITER_GLOB_MAXI  =SIMP(statut='f',typ='I',defaut= 10 ),
11359          ),
11360          SOLVEUR         =FACT(statut='d',min=01,max=01,
11361            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
11362            b_mult_front    =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
11363              RENUM           =SIMP(statut='f',typ='TXM',defaut="MDA",into=("MD","MDA","METIS") ),
11364            ),
11365            b_ldlt          =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT",
11366              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
11367              TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400. ),
11368            ),
11369            b_ldlt_mult     =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
11370                                    fr="Paramètres relatifs à la non inversibilité de la matrice à factorise",
11371              NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
11372              STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),             
11373            ),
11374            b_gcpc          =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué",
11375              PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC","SANS","DIAG") ),
11376              NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ),
11377              RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
11378              NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
11379              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
11380            ),
11381 #  A quoi sert eps           
11382            EPS             =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
11383            SYME            =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ),
11384          ),
11385          PARM_THETA      =SIMP(statut='f',typ='R',defaut= 0.57 ),
11386          ARCHIVAGE       =FACT(statut='f',min=01,max=01,
11387            regles=(UN_PARMI('LIST_ARCH','PAS_ARCH','LIST_INST','INST', ),),
11388            LIST_ARCH       =SIMP(statut='f',typ=(listis) ),
11389            LIST_INST       =SIMP(statut='f',typ=(listr8) ),
11390            INST            =SIMP(statut='f',typ='R',max='**'),
11391            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),
11392            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ),
11393            PAS_ARCH        =SIMP(statut='f',typ='I'),
11394            CHAM_EXCLU      =SIMP(statut='f',typ='TXM',max='**',into=("VARI",)),
11395          ),
11396          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
11397          OPTION          =SIMP(statut='f',typ='TXM',max='**',
11398                                into=("FLUX_ELGA_TEMP","FLUX_ELNO_TEMP") ),
11399          INFO            =SIMP(statut='f',typ='I',into=(1,2) ),
11400 )  ;
11401 #& MODIF COMMANDE  DATE 19/05/2000   AUTEUR JFBHHUC C.ROSE 
11402 THER_NON_LINE_MO=OPER(nom="THER_NON_LINE_MO",op= 171,sd_prod=evol_ther,
11403                      fr="Thermique non lineaire en repere mobile",
11404                      docu="U4.54.03-B",reentrant='f',
11405          MODELE          =SIMP(statut='o',typ=modele ),
11406          CHAM_MATER      =SIMP(statut='o',typ=cham_mater ),
11407          CARA_ELEM       =SIMP(statut='c',typ=cara_elem ),
11408          EXCIT           =FACT(statut='o',min=01,max='**',
11409            CHARGE          =SIMP(statut='o',typ=char_ther ),
11410            FONC_MULT       =SIMP(statut='c',typ=fonction ),
11411          ),
11412          TEMP_INIT       =FACT(statut='f',min=01,max=01,
11413            EVOL_THER       =SIMP(statut='f',typ=evol_ther ),
11414            NUME_INIT       =SIMP(statut='f',typ='I',defaut= 0 ),  
11415          ),
11416          CONVERGENCE     =FACT(statut='d',min=01,max=01,
11417            CRIT_TEMP_RELA  =SIMP(statut='f',typ='R',defaut= 1.E-3 ),  
11418            CRIT_ENTH_RELA  =SIMP(statut='f',typ='R',defaut= 1.E-2 ),  
11419            ITER_GLOB_MAXI  =SIMP(statut='f',typ='I',defaut= 10 ),  
11420            ARRET           =SIMP(statut='c',typ='TXM',defaut="OUI",into=("OUI","NON") ),
11421          ),
11422          SOLVEUR         =FACT(statut='d',min=01,max=01,
11423            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
11424            b_mult_front    =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
11425              RENUM           =SIMP(statut='f',typ='TXM',defaut="MDA",into=("MD","MDA","METIS") ),
11426            ),
11427            b_ldlt          =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT",
11428              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
11429              TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut= 400. ),
11430            ),
11431            b_ldlt_mult     =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
11432                                    fr="Paramètres relatifs à la non inversibilité de la matrice à factorise",
11433              NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
11434              STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),             
11435            ),
11436            b_gcpc          =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué",
11437              PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC","SANS","DIAG") ),
11438              NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ),
11439              RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
11440              NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
11441              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
11442            ),
11443            EPS             =SIMP(statut='f',typ='R',defaut= 0.E+0 ),  
11444            SYME            =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
11445          ),
11446          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),  
11447          INFO            =SIMP(statut='f',typ='I',into=(1,2) ),
11448 )  ;
11449
11450
11451