]> SALOME platform Git repositories - tools/eficas.git/blob - Aster/Cata/cata_STA7.py
Salome HOME
mise a jour sdist
[tools/eficas.git] / Aster / Cata / cata_STA7.py
1 #& MODIF ENTETE  DATE 26/09/2003   AUTEUR DURAND C.DURAND 
2 #            CONFIGURATION MANAGEMENT OF EDF VERSION
3 # ======================================================================
4 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
5 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
6 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
7 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR
8 # (AT YOUR OPTION) ANY LATER VERSION.
9 #
10 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT
11 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF
12 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU
13 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.
14 #
15 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE
16 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,
17 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.
18 # ======================================================================
19 import Accas
20 from Accas import *
21 from Accas import _F
22 import string
23
24 import ops
25
26 try:
27   import aster
28 except:
29   pass
30
31 #
32 __version__="$Name:  $"
33 __Id__="$Id: cata_STA7.py,v 1.3.2.1 2003/10/15 15:11:51 eficas Exp $"
34 #
35 JdC = JDC_CATA(code='ASTER',
36                execmodul=None,
37                regles = (AU_MOINS_UN('DEBUT','POURSUITE'),
38                          AU_MOINS_UN('FIN'),
39                          A_CLASSER(('DEBUT','POURSUITE'),'FIN')))
40 # Type le plus general
41 class entier  (ASSD):pass
42 class reel    (ASSD):pass
43 class complexe(ASSD):pass
44 class chaine  (ASSD):pass
45
46
47 # Type geometriques
48 class no  (GEOM):pass
49 class grno(GEOM):pass
50 class ma  (GEOM):pass
51 class grma(GEOM):pass
52
53
54
55 # Autres
56
57 class cabl_precont    (ASSD):pass
58 class cara_elem       (ASSD):pass
59 class cara_pout       (ASSD):pass
60 class cham_mater      (ASSD):pass
61 class char_acou       (ASSD):pass
62 class char_cine_acou  (ASSD):pass
63 class char_cine_meca  (ASSD):pass
64 class char_cine_ther  (ASSD):pass
65 class char_meca       (ASSD):pass
66 class char_ther       (ASSD):pass
67 class courbe          (ASSD):pass
68 class fond_fiss       (ASSD):pass
69 class interf_dyna_clas(ASSD):pass
70 class interspfact     (ASSD):pass
71 class listis          (ASSD):pass
72 class liste           (ASSD):pass
73 class macr_elem_dyna  (ASSD):pass
74 class macr_elem_stat  (ASSD):pass
75 class mater           (ASSD):pass
76 class melasflu        (ASSD):pass
77 class modele          (ASSD):pass
78 class modele_gene     (ASSD):pass
79 class nume_ddl        (ASSD):pass
80 class nume_ddl_gene   (ASSD):pass
81 class obstacle        (ASSD):pass
82 class spectre         (ASSD):pass
83 class surface         (ASSD):pass
84 class tran_gene       (ASSD):pass
85 class type_flui_stru  (ASSD):pass
86 class valeur          (ASSD):pass
87
88
89 # liste :
90 #--------------------------------
91 class listr8   (ASSD):
92   def LIST_VALEURS(self) :
93     """ retourne la liste des valeurs [ val1, ...] """
94     vale=string.ljust(self.get_name(),19)+'.VALE'
95     return list(aster.getvectjev(vale))
96
97
98
99 # maillage :
100 #--------------------------------
101 class maillage(ASSD):
102   def LIST_GROUP_NO(self) :
103     """ retourne la liste des groupes de noeuds sous la forme :
104         [ (gno1, nb noeuds  gno1), ...] """
105     return aster.GetMaillage(self.get_name(), "GROUP_NO")
106   def LIST_GROUP_MA(self) :
107     """ retourne la liste des groupes de mailles sous la forme :
108         [ (gma1, nb mailles gma1, dime max des mailles gma1), ...] """
109     return aster.GetMaillage(self.get_name(), "GROUP_MA")
110
111
112 class squelette     (maillage):pass
113
114
115 # cham_gd (carte,cham_no,cham_elem)
116 #--------------------------------
117
118 class cham_gd(ASSD):pass
119
120 # cham_gd/carte :
121 #--------------------------------
122 class carte(cham_gd):pass
123 class carte_dbel_r   (carte):pass
124 class carte_depl_c   (carte):pass
125 class carte_depl_f   (carte):pass
126 class carte_depl_r   (carte):pass
127 class carte_durt_r   (carte):pass
128 class carte_ener_r   (carte):pass
129 class carte_epsi_r   (carte):pass
130 class carte_erreur   (carte):pass
131 class carte_flux_r   (carte):pass
132 class carte_g_depl_r (carte):pass
133 class carte_geom_r   (carte):pass
134 class carte_hydr_r   (carte):pass
135 class carte_inst_r   (carte):pass
136 class carte_inte_r   (carte):pass
137 class carte_irra_r   (carte):pass
138 class carte_neut_f   (carte):pass
139 class carte_neut_r   (carte):pass
140 class carte_pres_r   (carte):pass
141 class carte_sief_r   (carte):pass
142 class carte_sour_r   (carte):pass
143 class carte_temp_f   (carte):pass
144 class carte_temp_r   (carte):pass
145 class carte_var2_r   (carte):pass
146 class carte_vnor_c   (carte):pass
147
148
149 # cham_gd/cham_elem :
150 #--------------------------------
151 class cham_elem(cham_gd):pass
152 class cham_elem_crit_r(cham_elem):pass
153 class cham_elem_dbel_r(cham_elem):pass
154 class cham_elem_depl_c(cham_elem):pass
155 class cham_elem_depl_f(cham_elem):pass
156 class cham_elem_depl_r(cham_elem):pass
157 class cham_elem_dommag(cham_elem):pass
158 class cham_elem_durt_r(cham_elem):pass
159 class cham_elem_ener_r(cham_elem):pass
160 class cham_elem_epsi_c(cham_elem):pass
161 class cham_elem_epsi_r(cham_elem):pass
162 class cham_elem_erreur(cham_elem):pass
163 class cham_elem_facy_r(cham_elem):pass
164 class cham_elem_flux_r(cham_elem):pass
165 class cham_elem_g_depl(cham_elem):pass
166 class cham_elem_geom_r(cham_elem):pass
167 class cham_elem_hydr_r(cham_elem):pass
168 class cham_elem_inst_r(cham_elem):pass
169 class cham_elem_inte_r(cham_elem):pass
170 class cham_elem_irra_r(cham_elem):pass
171 class cham_elem_neut_f(cham_elem):pass
172 class cham_elem_neut_r(cham_elem):pass
173 class cham_elem_pres_r(cham_elem):pass
174 class cham_elem_sief_c(cham_elem):pass
175 class cham_elem_sief_r(cham_elem):pass
176 class cham_elem_sour_r(cham_elem):pass
177 class cham_elem_spma_r(cham_elem):pass
178 class cham_elem_temp_f(cham_elem):pass
179 class cham_elem_temp_r(cham_elem):pass
180 class cham_elem_vari_r(cham_elem):pass
181 class cham_elem_vnor_c(cham_elem):pass
182
183
184 # cham_gd/cham_no :
185 #--------------------------------
186 class cham_no(cham_gd):pass
187 class cham_no_dbel_r   (cham_no):pass
188 class cham_no_depl_c   (cham_no):pass
189 class cham_no_depl_f   (cham_no):pass
190 class cham_no_depl_r   (cham_no):pass
191 class cham_no_durt_r   (cham_no):pass
192 class cham_no_ener_r   (cham_no):pass
193 class cham_no_epsi_r   (cham_no):pass
194 class cham_no_erreur   (cham_no):pass
195 class cham_no_facy_r   (cham_no):pass
196 class cham_no_flux_r   (cham_no):pass
197 class cham_no_g_depl_r (cham_no):pass
198 class cham_no_geom_r   (cham_no):pass
199 class cham_no_hydr_r   (cham_no):pass
200 class cham_no_inst_r   (cham_no):pass
201 class cham_no_inte_r   (cham_no):pass
202 class cham_no_irra_r   (cham_no):pass
203 class cham_no_neut_f   (cham_no):pass
204 class cham_no_neut_r   (cham_no):pass
205 class cham_no_pres_c   (cham_no):pass
206 class cham_no_pres_r   (cham_no):pass
207 class cham_no_sief_r   (cham_no):pass
208 class cham_no_sour_r   (cham_no):pass
209 class cham_no_spma_r   (cham_no):pass
210 class cham_no_temp_c   (cham_no):pass
211 class cham_no_temp_f   (cham_no):pass
212 class cham_no_temp_r   (cham_no):pass
213 class cham_no_vanl_r   (cham_no):pass
214 class cham_no_var2_r   (cham_no):pass
215 class cham_no_vnor_c   (cham_no):pass
216
217
218 # resultat : (evol,mode_stat,mode_meca)
219 #--------------------------------
220
221 class resultat(ASSD):
222   def LIST_CHAMPS (self) :
223     return aster.GetResu(self.get_name(), "CHAMPS")
224   def LIST_NOM_CMP (self) :
225     return aster.GetResu(self.get_name(), "COMPOSANTES")
226   def LIST_VARI_ACCES (self) :
227     return aster.GetResu(self.get_name(), "VARI_ACCES")
228   def LIST_PARA (self) :
229     return aster.GetResu(self.get_name(), "PARAMETRES")
230
231 class acou_harmo    (resultat):pass
232 class base_modale     (resultat):pass
233 class comb_fourier  (resultat):pass
234 class dyna_harmo    (resultat):pass
235 class dyna_trans    (resultat):pass
236 class fourier_elas  (resultat):pass
237 class harm_gene     (resultat):pass
238 class mode_acou     (resultat):pass
239 class mode_cycl     (resultat):pass
240 class mode_flamb    (resultat):pass
241 class mode_gene     (resultat):pass
242 class mult_elas     (resultat):pass
243 class theta_geom    (resultat):pass
244
245 # resultat/evol :
246 #--------------------------------
247 class evol(resultat):pass
248 class evol_char(evol):pass
249 class evol_elas(evol):pass
250 class evol_noli(evol):pass
251 class evol_ther(evol):pass
252 class evol_varc(evol):pass
253
254 # resultat/mode_stat :
255 #--------------------------------
256 class mode_stat(resultat):pass
257 class mode_stat_depl(mode_stat):pass
258 class mode_stat_acce(mode_stat):pass
259 class mode_stat_forc(mode_stat):pass
260
261
262 # resultat/mode_meca :
263 #--------------------------------
264 class mode_meca(resultat):pass
265 class mode_meca_c(mode_meca):pass
266
267
268 # fonction :
269 #--------------------------------
270 class fonction(ASSD):
271   def LIST_VALEURS(self) :
272     """ retourne la liste des valeurs [ val1, ...] """
273     vale=string.ljust(self.get_name(),19)+'.VALE'
274     lbl=list(aster.getvectjev(vale))
275     lbr=[]
276     for i in range(len(lbl)/2):
277         lbr.append(lbl[i])
278         lbr.append(lbl[len(lbl)/2+i])
279     return lbr
280 class para_sensi(fonction):pass
281 class fonction_c(fonction):
282   def LIST_VALEURS(self) :
283     """ retourne la liste des valeurs [ val1, ...] """
284     vale=string.ljust(self.get_name(),19)+'.VALE'
285     lbl=list(aster.getvectjev(vale))
286     lbr=[]
287     for i in range(len(lbl)/3):
288         lbr.append(lbl[i])
289         lbr.append(lbl[len(lbl)/3+i*2])
290         lbr.append(lbl[len(lbl)/3+i*2+1])
291     return lbr
292 class nappe(fonction):pass
293
294
295 # matr_asse :
296 #--------------------------------
297 class matr_asse(ASSD):pass
298
299 class matr_asse_gene(matr_asse):pass
300 class matr_asse_gene_r(matr_asse_gene):pass
301 class matr_asse_gene_c(matr_asse_gene):pass
302
303 class matr_asse_gd(matr_asse):pass
304 class matr_asse_depl_c(matr_asse_gd):pass
305 class matr_asse_depl_r(matr_asse_gd):pass
306 class matr_asse_pres_c(matr_asse_gd):pass
307 class matr_asse_pres_r(matr_asse_gd):pass
308 class matr_asse_temp_c(matr_asse_gd):pass
309 class matr_asse_temp_r(matr_asse_gd):pass
310
311 # matr_elem :
312 #--------------------------------
313 class matr_elem(ASSD):pass
314 class matr_elem_depl_c(matr_elem):pass
315 class matr_elem_depl_r(matr_elem):pass
316 class matr_elem_pres_c(matr_elem):pass
317 class matr_elem_temp_r(matr_elem):pass
318
319
320
321
322 # table :
323 #--------------------------------
324
325 class table(ASSD):
326   def __getitem__(self,key):
327       requete=string.ljust(key[0],24)
328       tblp=string.ljust(self.get_name(),19)+'.TBLP'
329       tabnom=list(aster.getvectjev(tblp))
330       for i in range(len(tabnom)) :
331          if tabnom[i]==requete: break
332       resu=aster.getvectjev(tabnom[i+2])
333       if key[1]>len(resu) : raise KeyError
334       else                : return resu[key[1]-1]
335
336 class tabl_aire_int   (table):pass
337 class tabl_calc_g_loca(table):pass
338 class tabl_calc_g_th  (table):pass
339 class tabl_cara_geom  (table):pass
340 class tabl_char_limite(table):pass
341 class tabl_ener_elas  (table):pass
342 class tabl_ener_pot   (table):pass
343 class tabl_ener_cin   (table):pass
344 class tabl_trav_ext   (table):pass
345 class tabl_ener_totale(table):pass
346 class tabl_indic_ener (table):pass
347 class tabl_indic_seuil(table):pass
348 class tabl_intsp      (table):pass
349 class tabl_mass_iner  (table):pass
350 class tabl_post_alea  (table):pass
351 class tabl_post_beta  (table):pass
352 class tabl_post_dyna  (table):pass
353 class tabl_post_f_alea(table):pass
354 class tabl_post_fatig (table):pass
355 class tabl_post_gouj2e(table):pass
356 class tabl_post_k     (table):pass
357 class tabl_post_rccm  (table):pass
358 class tabl_post_rele  (table):pass
359 class tabl_post_simpli(table):pass
360 class tabl_post_usur  (table):pass
361 class tabl_reca_weib  (table):pass
362 class tabl_rice_tracey(table):pass
363 class tabl_texture    (table):pass
364 class tabl_trc        (table):pass
365 class tabl_weibull    (table):pass
366
367
368 # vect_asse :
369 #--------------------------------
370 class vect_asse(ASSD):pass
371 class vect_asse_gene(vect_asse):pass
372
373
374 # vect_elem :
375 #--------------------------------
376 class vect_elem(ASSD):pass
377 class vect_elem_depl_r(vect_elem):pass
378 class vect_elem_pres_c(vect_elem):pass
379 class vect_elem_pres_r(vect_elem):pass
380 class vect_elem_temp_r(vect_elem):pass
381
382
383 #& MODIF COMMUN  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
384 #            CONFIGURATION MANAGEMENT OF EDF VERSION
385 # ======================================================================
386 # COPYRIGHT (C) 1991 - 2003  EDF R&D                  WWW.CODE-ASTER.ORG
387 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY  
388 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY  
389 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR     
390 # (AT YOUR OPTION) ANY LATER VERSION.                                                  
391 #                                                                       
392 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT   
393 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF            
394 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU      
395 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                              
396 #                                                                       
397 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE     
398 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,         
399 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.        
400 # ======================================================================
401 def C_COMP_INCR() : return FACT(statut='f',min=1,max='**',  #COMMUN#
402            RELATION        =SIMP(statut='o',typ='TXM',defaut="VMIS_ISOT_TRAC",
403                                  into=( "ELAS",
404                                         "VMIS_ISOT_TRAC",
405                                         "VMIS_ISOT_LINE",
406                                         "VMIS_ECMI_TRAC",
407                                         "VMIS_ECMI_LINE",
408                                         "LABORD_1D",
409                                         "ENDO_FRAGILE",
410                                         "ENDO_ISOT_BETON",
411                                         "MAZARS",
412                                         "RUPT_FRAG",
413                                         "BARENBLATT",
414                                         "META_P_IL",
415                                         "META_P_IL_PT",
416                                         "META_P_IL_RE",
417                                         "META_P_IL_PT_RE",
418                                         "META_V_IL",
419                                         "META_V_IL_PT",
420                                         "META_V_IL_RE",
421                                         "META_V_IL_PT_RE",
422                                         "META_P_INL",
423                                         "META_P_INL_PT",
424                                         "META_P_INL_RE",
425                                         "META_P_INL_PT_RE",
426                                         "META_V_INL",
427                                         "META_V_INL_PT",
428                                         "META_V_INL_RE",
429                                         "META_V_INL_PT_RE",
430                                         "META_P_CL",
431                                         "META_P_CL_PT",
432                                         "META_P_CL_RE",
433                                         "META_P_CL_PT_RE",
434                                         "META_V_CL",
435                                         "META_V_CL_PT",
436                                         "META_V_CL_RE",
437                                         "META_V_CL_PT_RE",
438                                         "VMIS_CINE_LINE",
439                                         "VISC_TAHERI",
440                                         "CHABOCHE",
441                                         "VISCOCHAB",
442                                         "VISC_CIN1_CHAB",
443                                         "VISC_CIN2_CHAB",
444                                         "POLY_CFC",
445                                         "LMARC",
446                                         "ROUSSELIER",
447                                         "ROUSS_PR",
448                                         "ROUSS_VISC",
449                                         "VMIS_POU_LINE",
450                                         "VMIS_POU_FLEJOU",
451                                         "COULOMB",
452                                         "ARME",
453                                         "ASSE_CORN",
454                                         "NORTON_HOFF",
455                                         "LEMAITRE",
456                                         "ZIRC_CYRA2",
457                                         "ZIRC_EPRI",
458                                         "ASSE_COMBU",
459                                         "VENDOCHAB",
460                                         "NADAI_B",
461                                         "DIS_CONTACT",
462                                         "DIS_CHOC",
463                                         "DIS_GOUJ2E_PLAS",
464                                         "DIS_GOUJ2E_ELAS",
465                                         "GRILLE_ISOT_LINE",
466                                         "GRILLE_CINE_LINE",
467                                         "GRILLE_PINTO_MEN",
468                                         "PINTO_MENEGOTTO",
469                                         "CJS",
470                                         "CAM_CLAY",
471                                         "LAIGLE",
472                                         "OHNO",
473                                         "GRANGER_FP",
474                                         "GRANGER_FP_V",
475                                         "BAZANT_FD",
476                                         "BETON_UMLV_FP",
477                                         "BETON_DOUBLE_DP",
478                                         "KIT_HM",
479                                         "KIT_HHM",
480                                         "KIT_THH",
481                                         "KIT_THV",
482                                         "KIT_THM",
483                                         "KIT_THHM",
484                                         "VMIS_ASYM_LINE",
485                                         "ELAS_THM",
486                                         "SURF_ETAT_NSAT",
487                                         "SURF_ETAT_SATU",
488                                         "CAM_CLAY_THM",
489                                         "KIT_DDI",
490                                         "SANS",
491                                      ) ),
492           ELAS            =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
493           SANS            =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
494           VMIS_ISOT_TRAC  =SIMP(statut='c',typ='I',defaut=2,into=(2,)),
495           VMIS_ISOT_LINE  =SIMP(statut='c',typ='I',defaut=2,into=(2,)),
496           VMIS_ECMI_TRAC  =SIMP(statut='c',typ='I',defaut=8,into=(8,)),
497           VMIS_ECMI_LINE  =SIMP(statut='c',typ='I',defaut=8,into=(8,)),
498           LABORD_1D   =SIMP(statut='c',typ='I',defaut=5,into=(5,)),
499           ENDO_FRAGILE    =SIMP(statut='c',typ='I',defaut=2,into=(2,)),
500           ENDO_ISOT_BETON =SIMP(statut='c',typ='I',defaut=2,into=(2,)),
501           MAZARS          =SIMP(statut='c',typ='I',defaut=3,into=(3,)),
502           RUPT_FRAG       =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
503           BARENBLATT      =SIMP(statut='c',typ='I',defaut=3,into=(3,)),
504           META_P_IL         =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
505           META_P_IL_PT       =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
506           META_P_IL_RE       =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
507           META_P_IL_PT_RE    =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
508           META_V_IL          =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
509           META_V_IL_PT       =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
510           META_V_IL_RE       =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
511           META_V_IL_PT_RE    =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
512           META_P_INL         =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
513           META_P_INL_PT      =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
514           META_P_INL_RE      =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
515           META_P_INL_PT_RE   =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
516           META_V_INL         =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
517           META_V_INL_PT      =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
518           META_V_INL_RE      =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
519           META_V_INL_PT_RE   =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
520           META_P_CL          =SIMP(statut='c',typ='I',defaut=6,into=(6,)),
521           META_P_CL_PT       =SIMP(statut='c',typ='I',defaut=6,into=(6,)),
522           META_P_CL_RE       =SIMP(statut='c',typ='I',defaut=6,into=(6,)),
523           META_P_CL_PT_RE    =SIMP(statut='c',typ='I',defaut=6,into=(6,)),
524           META_V_CL          =SIMP(statut='c',typ='I',defaut=6,into=(6,)),
525           META_V_CL_PT       =SIMP(statut='c',typ='I',defaut=6,into=(6,)),
526           META_V_CL_RE       =SIMP(statut='c',typ='I',defaut=6,into=(6,)),
527           META_V_CL_PT_RE    =SIMP(statut='c',typ='I',defaut=6,into=(6,)),
528           VMIS_CINE_LINE  =SIMP(statut='c',typ='I',defaut=7,into=(7,)),
529           CHABOCHE        =SIMP(statut='c',typ='I',defaut=14,into=(14,)),
530           VISCOCHAB       =SIMP(statut='c',typ='I',defaut=28,into=(28,)),
531           VISC_CIN1_CHAB  =SIMP(statut='c',typ='I',defaut=8,into=(8,)),
532           VISC_CIN2_CHAB  =SIMP(statut='c',typ='I',defaut=14,into=(14,)),
533           POLY_CFC        =SIMP(statut='c',typ='I',defaut=1688,into=(1688,)),
534           LMARC           =SIMP(statut='c',typ='I',defaut=20,into=(20,)),
535           VISC_TAHERI     =SIMP(statut='c',typ='I',defaut=9,into=(9,)),
536           ROUSSELIER      =SIMP(statut='c',typ='I',defaut=9,into=(9,)),
537           ROUSS_PR        =SIMP(statut='c',typ='I',defaut=3,into=(3,)),
538           ROUSS_VISC      =SIMP(statut='c',typ='I',defaut=3,into=(3,)),
539           VMIS_POU_LINE   =SIMP(statut='c',typ='I',defaut=9,into=(9,)),
540           VMIS_POU_FLEJOU =SIMP(statut='c',typ='I',defaut=9 ,into=(9,)),
541           COULOMB         =SIMP(statut='c',typ='I',defaut=4,into=(4,)),
542           ASSE_CORN       =SIMP(statut='c',typ='I',defaut=4,into=(4,)),
543           ARME            =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
544           NORTON_HOFF     =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
545           LEMAITRE        =SIMP(statut='c',typ='I',defaut=2,into=(2,)),
546           ZIRC_CYRA2      =SIMP(statut='c',typ='I',defaut=2,into=(2,)),
547           ZIRC_EPRI       =SIMP(statut='c',typ='I',defaut=2,into=(2,)),
548           ASSE_COMBU      =SIMP(statut='c',typ='I',defaut=5,into=(5,)),
549           NADAI_B         =SIMP(statut='c',typ='I',defaut=34,into=(34,)),
550           VENDOCHAB       =SIMP(statut='c',typ='I',defaut=10,into=(10,)),
551           GRILLE_ISOT_LINE=SIMP(statut='c',typ='I',defaut=4,into=(4,)),
552           GRILLE_CINE_LINE=SIMP(statut='c',typ='I',defaut=4,into=(4,)),
553           GRILLE_PINTO_MEN=SIMP(statut='c',typ='I',defaut=16,into=(16,)),
554           DIS_CONTACT     =SIMP(statut='c',typ='I',defaut=6,into=(6,)),
555           DIS_CHOC        =SIMP(statut='c',typ='I',defaut=7,into=(7,)),
556           DIS_GOUJ2E_PLAS =SIMP(statut='c',typ='I',defaut=2,into=(2,)),
557           DIS_GOUJ2E_ELAS =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
558           PINTO_MENEGOTTO =SIMP(statut='c',typ='I',defaut=8,into=(8,)),
559           CJS             =SIMP(statut='c',typ='I',defaut=16,into=(16,)),
560           CAM_CLAY        =SIMP(statut='c',typ='I',defaut=2,into=(2,)),
561           LAIGLE          =SIMP(statut='c',typ='I',defaut=4,into=(4,)),
562           OHNO            =SIMP(statut='c',typ='I',defaut=32,into=(32,)),
563           GRANGER_FP      =SIMP(statut='c',typ='I',defaut=55,into=(55,)),
564           GRANGER_FP_V    =SIMP(statut='c',typ='I',defaut=55,into=(55,)),
565           BAZANT_FD       =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
566           BETON_DOUBLE_DP =SIMP(statut='c',typ='I',defaut=4,into=(4,)),
567           KIT_HM          =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
568           KIT_HHM         =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
569           KIT_THH         =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
570           KIT_THV         =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
571           KIT_THM         =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
572           KIT_THHM        =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
573           VMIS_ASYM_LINE  =SIMP(statut='c',typ='I',defaut=4,into=(4,)),
574           BETON_UMLV_FP   =SIMP(statut='c',typ='I',defaut=20,into=(20,)),
575
576            RELATION_KIT    =SIMP(statut='f',typ='TXM',max='**',validators=NoRepeat(),
577                                  into=(
578 # MECA
579                                        "ELAS",
580                                        "CJS",
581                                        "CAM_CLAY",
582                                        "LAIGLE",
583                                        "ELAS_THM",
584                                        "SURF_ETAT_NSAT",
585                                        "SURF_ETAT_SATU",
586                                        "CAM_CLAY_THM",
587                                        "MAZARS",
588                                        "ENDO_ISOT_BETON",
589 # THMC
590                                        "GAZ",
591                                        "LIQU_SATU",
592                                        "LIQU_SATU_GAT",
593                                        "LIQU_GAZ_ATM",
594                                        "LIQU_VAPE_GAZ",
595                                        "LIQU_VAPE",
596                                        "LIQU_NSAT_GAT",
597                                        "LIQU_GAZ",
598 # THER
599                                        "THER_HOMO",
600                                        "THER_POLY",
601 # HYDR
602                                        "HYDR_UTIL",
603                                        "HYDR",
604                                        "HYDR_ENDO",
605 # MECA_META
606                                        "ACIER",
607                                        "ZIRC",
608 # MECA KIT_DDI
609                                        "VMIS_ISOT_TRAC",
610                                        "VMIS_ISOT_LINE",
611                                        "VMIS_ISOT_CINE",
612                                        "GRANGER_FP",
613                                        "GRANGER_FP_V",
614                                        "BETON_UMLV_FP",
615                                        "ROUSS_PR",
616                                        "CHABOCHE",
617                                        "OHNO",
618                                        "NADAI_B",
619                                        "BETON_DOUBLE_DP",
620                                        ),),
621                             
622                                         
623            ELAS_THM        =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
624            SURF_ETAT_NSAT  =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
625            SURF_ETAT_SATU  =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
626            CAM_CLAY_THM    =SIMP(statut='c',typ='I',defaut=6,into=(6,)),
627            GAZ             =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
628            LIQU_SATU       =SIMP(statut='c',typ='I',defaut=2,into=(2,)),
629            LIQU_SATU_GAT   =SIMP(statut='c',typ='I',defaut=2,into=(2,)),
630            LIQU_GAZ_ATM    =SIMP(statut='c',typ='I',defaut=3,into=(3,)),
631            LIQU_VAPE_GAZ   =SIMP(statut='c',typ='I',defaut=4,into=(4,)),
632            LIQU_VAPE       =SIMP(statut='c',typ='I',defaut=4,into=(4,)),
633            LIQU_NSAT_GAT   =SIMP(statut='c',typ='I',defaut=3,into=(3,)),
634            LIQU_GAZ        =SIMP(statut='c',typ='I',defaut=3,into=(3,)),
635            THER_HOMO       =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
636            THER_POLY       =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
637            HYDR_UTIL       =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
638            HYDR            =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
639            HYDR_ENDO       =SIMP(statut='c',typ='I',defaut=0,into=(0,)),
640            ACIER           =SIMP(statut='c',typ='I',defaut=5,into=(5,)),
641            ZIRC            =SIMP(statut='c',typ='I',defaut=3,into=(3,)),
642
643            DEFORMATION     =SIMP(statut='f',typ='TXM',defaut="PETIT",into=("PETIT","PETIT_REAC","SIMO_MIEHE","GREEN_GR","GREEN",)),
644            ALGO_C_PLAN     =SIMP(statut='f',typ='TXM',defaut="ANALYTIQUE",into=("DEBORST","ANALYTIQUE",)),
645       regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),),
646            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
647            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
648            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
649          ) ;
650
651 #& MODIF COMMUN  DATE 16/09/2003   AUTEUR JMBHH01 J.M.PROIX 
652 #            CONFIGURATION MANAGEMENT OF EDF VERSION
653 # ======================================================================
654 # COPYRIGHT (C) 1991 - 2003  EDF R&D                  WWW.CODE-ASTER.ORG
655 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY  
656 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY  
657 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR     
658 # (AT YOUR OPTION) ANY LATER VERSION.                                                  
659 #                                                                       
660 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT   
661 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF            
662 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU      
663 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                              
664 #                                                                       
665 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE     
666 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,         
667 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.        
668 # ======================================================================
669 # RESPONSABLE VABHHTS J.PELLET
670 # ce fichier contient la liste des "into" possibles pour le mot cle NOM_CHAM
671 # c'est a dire les noms de champs des SD RESULTAT (DATA de la routine RSCRSD)
672 def C_NOM_CHAM_INTO() : return  ("ACCE",    #COMMUN#
673                         "ACCE_ABSOLU",
674                         "ALPH0_ELGA_EPSP",
675                         "ALPHP_ELGA_ALPH0",
676                         "COMPORTEMENT",
677                         "COMPORTHER",
678                         "CRIT_ELNO_RUPT",
679                         "DCHA_ELGA_SIGM",
680                         "DCHA_ELNO_SIGM",
681                         "DCHA_NOEU_SIGM",
682                         "DEDE_ELNO_DLDE",
683                         "DEDE_NOEU_DLDE",
684                         "DEGE_ELNO_DEPL",
685                         "DEGE_NOEU_DEPL",
686                         "DEPL",
687                         "DEPL_ABSOLU",
688                         "DESI_ELNO_DLSI",
689                         "DESI_NOEU_DLSI",
690                         "DETE_ELNO_DLTE",
691                         "DETE_NOEU_DLTE",
692                         "DURT_ELGA_META",
693                         "DURT_ELNO_META",
694                         "DURT_NOEU_META",
695                         "ECIN_ELEM_DEPL",
696                         "EFGE_ELNO_CART",
697                         "EFGE_ELNO_DEPL",
698                         "EFGE_NOEU_CART",
699                         "EFGE_NOEU_DEPL",
700                         "ENDO_ELNO_SIGA",
701                         "ENDO_ELNO_SINO",
702                         "ENDO_NOEU_SINO",
703                         "ENEL_ELGA",
704                         "ENEL_ELNO_ELGA",
705                         "ENEL_NOEU_ELGA",
706                         "EPEQ_ELNO_TUYO",
707                         "EPGR_ELGA",
708                         "EPGR_ELNO",
709                         "EPME_ELGA_DEPL",
710                         "EPME_ELNO_DEPL",
711                         "EPMG_ELGA_DEPL",
712                         "EPMG_ELNO_DEPL",
713                         "EPMG_NOEU_DEPL",
714                         "EPOT_ELEM_DEPL",
715                         "EPSA_ELNO",
716                         "EPSA_NOEU",
717                         "EPSG_ELGA_DEPL",
718                         "EPSG_ELNO_DEPL",
719                         "EPSG_NOEU_DEPL",
720                         "EPSI_ELGA_DEPL",
721                         "EPSI_ELNO_DEPL",
722                         "EPSI_ELNO_TUYO",
723                         "EPSI_NOEU_DEPL",
724                         "EPSP_ELGA",
725                         "EPSP_ELNO",
726                         "EPSP_ELNO_ZAC",
727                         "EPSP_NOEU",
728                         "EPSP_NOEU_ZAC",
729                         "EQUI_ELGA_EPME",
730                         "EQUI_ELGA_EPSI",
731                         "EQUI_ELGA_SIGM",
732                         "EQUI_ELNO_EPME",
733                         "EQUI_ELNO_EPSI",
734                         "EQUI_ELNO_SIGM",
735                         "EQUI_NOEU_EPME",
736                         "EQUI_NOEU_EPSI",
737                         "EQUI_NOEU_SIGM",
738                         "ERRE_ELEM_NOZ1",
739                         "ERRE_ELEM_NOZ2",
740                         "ERRE_ELGA_NORE",
741                         "ERRE_ELNO_ELGA",
742                         "ERRE_NOEU_ELGA",
743                         "ERTH_ELEM_TEMP",
744                         "ERTH_ELNO_ELEM",
745                         "ETOT_ELEM",
746                         "ETOT_ELGA",
747                         "ETOT_ELNO_ELGA",
748                         "FLUX_ELGA_TEMP",
749                         "FLUX_ELNO_TEMP",
750                         "FLUX_NOEU_TEMP",
751                         "FORC_NODA",
752                         "FSUR_2D",
753                         "FSUR_3D",
754                         "FVOL_2D",
755                         "FVOL_3D",
756                         "GRAD_NOEU_THETA",
757                         "HYDR_ELGA",
758                         "HYDR_ELNO_ELGA",
759                         "HYDR_NOEU_ELGA",
760                         "INTE_ELNO_ACTI",
761                         "INTE_ELNO_REAC",
762                         "INTE_NOEU_ACTI",
763                         "INTE_NOEU_REAC",
764                         "IRRA",
765                         "LANL_ELGA",
766                         "META_ELGA_TEMP",
767                         "META_ELNO_TEMP",
768                         "META_NOEU_TEMP",
769                         "MODE_FLAMB",
770                         "PMPB_ELGA_SIEF",
771                         "PMPB_ELNO_SIEF",
772                         "PMPB_NOEU_SIEF",
773                         "PRES",
774                         "PRES_DBEL_DEPL",
775                         "PRES_ELNO_DBEL",
776                         "PRES_ELNO_IMAG",
777                         "PRES_ELNO_REEL",
778                         "PRES_NOEU_DBEL",
779                         "PRES_NOEU_IMAG",
780                         "PRES_NOEU_REEL",
781                         "RADI_ELGA_SIGM",
782                         "RADI_ELNO_SIGM",
783                         "RADI_NOEU_SIGM",
784                         "REAC_NODA",
785                         "SIEF_ELGA",
786                         "SIEF_ELGA_DEPL",
787                         "SIEF_ELNO",
788                         "SIEF_ELNO_ELGA",
789                         "SIEF_NOEU",
790                         "SIEF_NOEU_ELGA",
791                         "SIEQ_ELNO_TUYO",
792                         "SIGM_ELNO_CART",
793                         "SIGM_ELNO_COQU",
794                         "SIGM_ELNO_DEPL",
795                         "SIGM_ELNO_SIEF",
796                         "SIGM_ELNO_TUYO",
797                         "SIGM_ELNO_ZAC",
798                         "SIGM_NOEU_CART",
799                         "SIGM_NOEU_COQU",
800                         "SIGM_NOEU_DEPL",
801                         "SIGM_NOEU_SIEF",
802                         "SIGM_NOEU_ZAC",
803                         "SIGM_NOZ1_ELGA",
804                         "SIGM_NOZ2_ELGA",
805                         "SIPO_ELNO_DEPL",
806                         "SIPO_ELNO_SIEF",
807                         "SIPO_NOEU_DEPL",
808                         "SIPO_NOEU_SIEF",
809                         "SIRE_ELNO_DEPL",
810                         "SIRE_NOEU_DEPL",
811                         "TEMP",
812                         "THETA",
813                         "VALE_CONT",
814                         "VALE_NCOU_MAXI",
815                         "VARI_ELGA",
816                         "VARI_ELGA_ZAC",
817                         "VARI_ELNO",
818                         "VARI_ELNO_COQU",
819                         "VARI_ELNO_ELGA",
820                         "VARI_ELNO_TUYO",
821                         "VARI_NOEU",
822                         "VARI_NOEU_ELGA",
823                         "VARI_NON_LOCAL",
824                         "VITE",
825                         "VITE_ABSOLU",
826                         "VITE_VENT",
827                         )
828
829 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
830 #            CONFIGURATION MANAGEMENT OF EDF VERSION
831 # ======================================================================
832 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
833 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
834 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
835 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
836 # (AT YOUR OPTION) ANY LATER VERSION.                                 
837 #
838 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
839 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
840 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
841 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
842 #
843 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
844 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
845 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
846 # ======================================================================
847 # RESPONSABLE JMBHH01 J.M.PROIX
848 AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op=  19,sd_prod=cara_elem,
849                     fr="Affectation de caractéristiques à des éléments de structure",
850                     docu="U4.42.01-g",reentrant='n',
851             UIinfo={"groupes":("Modélisation",)},
852          regles=(AU_MOINS_UN('POUTRE','BARRE','COQUE','CABLE','DISCRET','MASSIF',
853                              'ASSE_GRIL','GRILLE','AFFE_SECT','AFFE_FIBRE'),),
854          MODELE          =SIMP(statut='o',typ=modele ),
855          INFO            =SIMP(statut='f',typ='I', defaut= 1 ,into=(1,2) ),
856          VERIF           =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',into=("MAILLE","NOEUD") ),
857
858          POUTRE          =FACT(statut='f',max='**',
859            regles=(UN_PARMI('MAILLE','GROUP_MA'),),
860            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
861            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
862            SECTION         =SIMP(statut='o',typ='TXM' ,into=("GENERALE","RECTANGLE","CERCLE") ),
863            CARA_SECT       =SIMP(statut='f',typ=(cara_pout) ),
864            TUYAU_NCOU      =SIMP(statut='f',typ='I',val_max=10,defaut=3),
865            TUYAU_NSEC      =SIMP(statut='f',typ='I',val_max=32,defaut=16),
866            b_generale      =BLOC( condition = "SECTION=='GENERALE'",
867              CARA            =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',
868                                  into=("A","IY","IZ","AY","AZ","EY","EZ","JX","RY","RZ","RT",
869                                                            "AI","JG","IYR2","IZR2","A1",
870                                        "IY1","IZ1","AY1","AZ1","EY1","EZ1","JX1","RY1",
871                                        "RZ1","RT1","AI1","JG1","IYR21","IZR21","A2",
872                                        "IY2","IZ2","AY2","AZ2","EY2","EZ2","JX2","RY2",
873                                        "RZ2","RT2","AI2","JG2","IYR22","IZR22","H",
874                                        "HZ","HY","EP","EPY","EPZ","H1","HZ1","HY1",
875                                        "EP1","EPY1","EPZ1","H2","HZ2","HY2","EP2",
876                                        "EPY2","EPZ2","R","R1","R2") ),
877              VALE            =SIMP(statut='o',typ='R',max='**'),
878              VARI_SECT       =SIMP(statut='f',typ='TXM',into=("HOMOTHETIQUE",) ),
879            ),
880            b_rectangle     =BLOC( condition = "SECTION=='RECTANGLE'",
881              CARA            =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',
882                                  into=("H","EP","HY","HZ","EPY","EPZ",
883                                                            "H1","HZ1","HY1","EP1","EPY1","EPZ1",
884                                                            "H2","HZ2","HY2","EP2","EPY2","EPZ2") ),
885              VALE            =SIMP(statut='o',typ='R',max='**'),
886              VARI_SECT       =SIMP(statut='f',typ='TXM',into=("HOMOTHETIQUE","AFFINE"),defaut="HOMOTHETIQUE"),
887            ),
888            b_cercle        =BLOC( condition = "SECTION=='CERCLE'",
889              CARA            =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',
890                                  into=("R","EP","R1","R2","EP1","EP2") ),
891              VALE            =SIMP(statut='o',typ='R',max='**'),
892              VARI_SECT       =SIMP(statut='f',typ='TXM',into=("HOMOTHETIQUE",) ),
893              MODI_METRIQUE   =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
894            ),
895            FCX             =SIMP(statut='f',typ=(fonction,formule) ),
896          ),
897
898          BARRE           =FACT(statut='f',max='**',
899            regles=(UN_PARMI('MAILLE','GROUP_MA'),),
900            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
901            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
902            SECTION         =SIMP(statut='o',typ='TXM',into=("GENERALE","RECTANGLE","CERCLE") ),
903            b_generale      =BLOC( condition = "SECTION=='GENERALE'",
904              CARA            =SIMP(statut='o',typ='TXM',into=("A",) ),
905              VALE            =SIMP(statut='o',typ='R' ),
906            ),
907            b_rectangle     =BLOC( condition = "SECTION=='RECTANGLE'",
908              CARA            =SIMP(statut='o',typ='TXM',into=("H","HZ","HY","EPY","EPZ","EP"),validators=NoRepeat(),max=6 ),
909              VALE            =SIMP(statut='o',typ='R',max=6 ),
910            ),
911            b_cercle        =BLOC( condition = "SECTION=='CERCLE'",
912              CARA            =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=2,into=("R","EP") ),
913              VALE            =SIMP(statut='o',typ='R',max=2 ),
914            ),
915            FCX             =SIMP(statut='f',typ=(fonction,formule) ),
916          ),
917
918          COQUE           =FACT(statut='f',max='**',
919            regles=(UN_PARMI('MAILLE','GROUP_MA' ),
920                    PRESENT_PRESENT( 'EXCENTREMENT','INER_ROTA' ),),
921            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
922            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
923            EPAIS           =SIMP(statut='o',typ='R' ),
924            ANGL_REP        =SIMP(statut='f',typ='R',min=2,max=2),
925            A_CIS           =SIMP(statut='c',typ='R',defaut= 0.8333333E0),
926            COEF_RIGI_DRZ   =SIMP(statut='f',typ='R',defaut= 1.0E-5 ),
927            COQUE_NCOU      =SIMP(statut='f',typ='I',defaut= 1 ),
928            EXCENTREMENT    =SIMP(statut='f',typ='R' ),
929            INER_ROTA       =SIMP(statut='f',typ='TXM',into=("OUI",) ),
930            MODI_METRIQUE   =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
931          ),
932
933          CABLE           =FACT(statut='f',max='**',
934            regles=(UN_PARMI('MAILLE','GROUP_MA'),),
935            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
936            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
937            N_INIT          =SIMP(statut='f',typ='R',defaut= 5000. ),
938            SECTION         =SIMP(statut='f',typ='R' ),
939            FCX             =SIMP(statut='f',typ=(fonction,formule) ),
940          ),
941
942          DISCRET         =FACT(statut='f',max='**',
943            regles=(UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'),),
944            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
945            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
946            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
947            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
948            REPERE          =SIMP(statut='f',typ='TXM',into=("LOCAL","GLOBAL") ),
949            AMOR_HYST       =SIMP(statut='f',typ='R' ),
950            CARA            =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',
951                                  into=("K_T_D_N","K_T_D_L","K_TR_D_N","K_TR_D_L",
952                                                            "K_T_N",  "K_T_L",  "K_TR_N",  "K_TR_L",
953                                                                 "M_T_D_N","M_TR_D_N","M_T_N",
954                                                            "M_T_L",  "M_TR_N",  "M_TR_L",
955                                        "A_T_D_N","A_TR_D_N","A_T_D_L","A_TR_D_L",
956                                                            "A_T_N",  "A_T_L",   "A_TR_N", "A_TR_L") ),
957            VALE            =SIMP(statut='o',typ='R',max='**'),
958          ),
959
960          ORIENTATION     =FACT(statut='f',max='**',
961            regles=(UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO' ),),
962            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
963            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
964            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
965            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
966            CARA            =SIMP(statut='o',typ='TXM',
967                                  into=("VECT_Y","ANGL_VRIL","VECT_X_Y","ANGL_NAUT","GENE_TUYAU") ),
968            VALE            =SIMP(statut='o',typ='R',max='**'),
969            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-4 ),
970            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
971          ),
972
973          DEFI_ARC        =FACT(statut='f',max='**',
974            regles=(UN_PARMI('MAILLE','GROUP_MA'),
975                    UN_PARMI('ORIE_ARC','CENTRE','NOEUD_CENTRE','GROUP_NO_CENTRE',
976                             'POIN_TANG','NOEUD_POIN_TANG','GROUP_NO_POIN_TG'),
977                    PRESENT_PRESENT('ORIE_ARC','RAYON'),
978                    EXCLUS('COEF_FLEX','COEF_FLEX_XY'),
979                    EXCLUS('COEF_FLEX','COEF_FLEX_XZ'),
980                    EXCLUS('INDI_SIGM','INDI_SIGM_XY'),
981                    EXCLUS('INDI_SIGM','INDI_SIGM_XZ'),
982                    PRESENT_PRESENT('COEF_FLEX_XY','COEF_FLEX_XZ'),
983                    PRESENT_PRESENT('INDI_SIGM_XY','INDI_SIGM_XZ'),),
984            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
985            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
986            ORIE_ARC        =SIMP(statut='f',typ='R'),
987            CENTRE          =SIMP(statut='f',typ='R',max='**'),
988            NOEUD_CENTRE    =SIMP(statut='f',typ=no),
989            GROUP_NO_CENTRE =SIMP(statut='f',typ=grno),
990            POIN_TANG       =SIMP(statut='f',typ='R',max='**'),
991            NOEUD_POIN_TANG =SIMP(statut='f',typ=no),
992            GROUP_NO_POIN_TG=SIMP(statut='f',typ=grno),
993            RAYON           =SIMP(statut='f',typ='R'),
994            COEF_FLEX       =SIMP(statut='f',typ='R'),
995            INDI_SIGM       =SIMP(statut='f',typ='R'),
996            COEF_FLEX_XY    =SIMP(statut='f',typ='R'),
997            INDI_SIGM_XY    =SIMP(statut='f',typ='R'),
998            COEF_FLEX_XZ    =SIMP(statut='f',typ='R'),
999            INDI_SIGM_XZ    =SIMP(statut='f',typ='R'),
1000            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3),
1001            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
1002          ),
1003
1004          MASSIF          =FACT(statut='f',max='**',
1005            regles=(UN_PARMI('MAILLE','GROUP_MA'),
1006                    UN_PARMI('ANGL_REP','ANGL_AXE'),
1007                    EXCLUS('ANGL_REP','ANGL_AXE'),
1008                    EXCLUS('ANGL_REP','ORIG_AXE'),
1009                    PRESENT_PRESENT('ANGL_AXE','ORIG_AXE'), ),
1010            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1011            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1012            ANGL_REP        =SIMP(statut='f',typ='R',max=3),
1013            ANGL_AXE        =SIMP(statut='f',typ='R',max=2),
1014            ORIG_AXE        =SIMP(statut='f',typ='R',max=3),
1015          ),
1016
1017          POUTRE_FLUI     =FACT(statut='f',max='**',
1018            regles=(UN_PARMI('MAILLE','GROUP_MA'),),
1019            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1020            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1021            B_T             =SIMP(statut='o',typ='R'),
1022            B_N             =SIMP(statut='o',typ='R'),
1023            B_TN            =SIMP(statut='o',typ='R',defaut= 0.E+0 ),
1024            A_FLUI          =SIMP(statut='o',typ='R'),
1025            A_CELL          =SIMP(statut='o',typ='R'),
1026            COEF_ECHELLE    =SIMP(statut='o',typ='R'),
1027          ),
1028
1029          GRILLE          =FACT(statut='f',max='**',
1030            regles=(UN_PARMI('MAILLE','GROUP_MA'),
1031                    EXCLUS('ANGL_REP','ORIG_AXE'),
1032                    ENSEMBLE('ORIG_AXE','AXE')),
1033            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1034            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1035            SECTION_L       =SIMP(statut='o',typ='R'),
1036            ANGL_REP        =SIMP(statut='f',typ='R',max=2),
1037            ANGL_L          =SIMP(statut='f',typ='R'),
1038            POUR_CENT_L     =SIMP(statut='f',typ='R'),
1039            POUR_CENT_T     =SIMP(statut='f',typ='R'),
1040            EXCENTREMENT    =SIMP(statut='f',typ='R'),
1041            ORIG_AXE        =SIMP(statut='f',typ='R',max='**'),
1042            AXE             =SIMP(statut='f',typ='R',max='**'),
1043            COEF_RIGI_DRZ   =SIMP(statut='f',typ='R',defaut= 1.0E-10 ),
1044            GRILLE_NCOU     =SIMP(statut='f',typ='I',defaut= 1,),
1045          ),
1046
1047          RIGI_PARASOL    =FACT(statut='f',max='**',
1048            regles=(UN_PARMI('COEF_GROUP','FONC_GROUP'),
1049                    UN_PARMI('COOR_CENTRE','NOEUD_CENTRE','GROUP_NO_CENTRE'),),
1050            GROUP_MA        =SIMP(statut='o',typ=ma,validators=NoRepeat(),max='**'),
1051            GROUP_MA_POI1   =SIMP(statut='f',typ=ma),
1052            FONC_GROUP      =SIMP(statut='f',typ=(fonction,formule) ),
1053            COEF_GROUP      =SIMP(statut='f',typ='R',max='**'),
1054            REPERE          =SIMP(statut='f',typ='TXM',into=("LOCAL","GLOBAL") ),
1055            CARA            =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=("K_TR_D_N","A_TR_D_N") ),
1056            VALE            =SIMP(statut='o',typ='R',max='**'),
1057            GROUP_NO_CENTRE =SIMP(statut='f',typ=grno),
1058            NOEUD_CENTRE    =SIMP(statut='f',typ=no),
1059            COOR_CENTRE     =SIMP(statut='f',typ='R',max='**'),
1060          ),
1061
1062          ASSE_GRIL       =FACT(statut='f',max='**',
1063            regles=(UN_PARMI('MAILLE','GROUP_MA'),),
1064            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1065            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1066            CARA            =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',
1067                                  into=("K_TR_D_N","K_TR_D_L_T","K_TR_D_L_N",) ),
1068            VALE            =SIMP(statut='o',typ='R',max='**'),
1069            PAS_T           =SIMP(statut='o',typ='R'),
1070            PAS_N           =SIMP(statut='o',typ='R'),
1071            ANGL_REP        =SIMP(statut='o',typ='R',max='**'),
1072            COEF_ECHELLE    =SIMP(statut='o',typ='R'),
1073          ),
1074
1075
1076          AFFE_SECT     =FACT(statut='f',max='**',
1077               regles=(AU_MOINS_UN('GROUP_MA','MAILLE'),
1078                       AU_MOINS_UN('TOUT_SECT','GROUP_MA_SECT','MAILLE_SECT'),
1079                       PRESENT_ABSENT('TOUT_SECT','GROUP_MA_SECT','MAILLE_SECT'),),
1080
1081               NOM             =SIMP(statut='f',typ='TXM'),
1082
1083               GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1084               MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1085
1086               TOUT_SECT         =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1087               GROUP_MA_SECT     =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1088               MAILLE_SECT       =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1089
1090               MAILLAGE_SECT     =SIMP(statut='o',typ=maillage),
1091               COOR_AXE_POUTRE    =SIMP(statut='o',typ='R',min=2,max=2),
1092          ),
1093
1094
1095          AFFE_FIBRE     =FACT(statut='f',max='**',
1096               regles=(AU_MOINS_UN('GROUP_MA','MAILLE'),),
1097
1098               NOM             =SIMP(statut='f',typ='TXM'),
1099
1100               GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1101               MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1102
1103               CARA              =SIMP(statut='f',typ='TXM',defaut='SURFACE',into=('SURFACE','DIAMETRE',)),
1104               VALE              =SIMP(statut='o',typ='R',max='**'),
1105               COOR_AXE_POUTRE    =SIMP(statut='o',typ='R',min=2,max=2),
1106          ),
1107
1108
1109 ) ;
1110
1111 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
1112 #            CONFIGURATION MANAGEMENT OF EDF VERSION
1113 # ======================================================================
1114 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
1115 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
1116 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
1117 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
1118 # (AT YOUR OPTION) ANY LATER VERSION.                                 
1119 #
1120 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
1121 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
1122 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
1123 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
1124 #
1125 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
1126 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
1127 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
1128 # ======================================================================
1129 AFFE_CHAR_ACOU=OPER(nom="AFFE_CHAR_ACOU",op=  68,sd_prod=char_acou,
1130                     fr="Affectation de charges et conditions aux limites acoustiques constantes",
1131                     docu="U4.44.04-f",reentrant='n',
1132             UIinfo={"groupes":("Modélisation",)},
1133          regles=(AU_MOINS_UN('PRES_IMPO','VITE_FACE','IMPE_FACE','LIAISON_UNIF' ),),
1134          MODELE          =SIMP(statut='o',typ=modele ),
1135          VERI_DDL        =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
1136          PRES_IMPO       =FACT(statut='f',max='**',
1137            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'),),
1138            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1139            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1140            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1141            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
1142            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
1143            PRES            =SIMP(statut='o',typ='C' ),
1144          ),
1145          VITE_FACE       =FACT(statut='f',max='**',
1146              regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
1147                      PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),),
1148            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1149            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1150            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1151            VNOR            =SIMP(statut='o',typ='C' ),
1152          ),
1153          IMPE_FACE       =FACT(statut='f',max='**',
1154              regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
1155                      PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),),
1156            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1157            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1158            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1159            IMPE            =SIMP(statut='o',typ='C' ),
1160          ),
1161          LIAISON_UNIF    =FACT(statut='f',max='**',
1162            regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE' ),),
1163            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
1164            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
1165            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1166            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1167            DDL             =SIMP(statut='o',typ='TXM',max='**'),
1168          ),
1169 )  ;
1170
1171 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
1172 #            CONFIGURATION MANAGEMENT OF EDF VERSION
1173 # ======================================================================
1174 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
1175 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
1176 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
1177 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
1178 # (AT YOUR OPTION) ANY LATER VERSION.                                 
1179 #
1180 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
1181 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
1182 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
1183 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
1184 #
1185 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
1186 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
1187 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
1188 # ======================================================================
1189 # RESPONSABLE VABHHTS J.PELLET
1190 def affe_char_cine_prod(MECA_IMPO,THER_IMPO,ACOU_IMPO,**args):
1191   if MECA_IMPO != None  : return char_cine_meca
1192   if THER_IMPO != None  : return char_cine_ther
1193   if ACOU_IMPO != None  : return char_cine_acou
1194   raise AsException("type de concept resultat non prevu")
1195
1196 AFFE_CHAR_CINE=OPER(nom="AFFE_CHAR_CINE",op= 101,sd_prod=affe_char_cine_prod
1197                     ,fr="Affectation de conditions aux limites cinématiques pour traitement sans dualisation",
1198                      docu="U4.44.03-f",reentrant='n',
1199             UIinfo={"groupes":("Modélisation",)},
1200          regles=(AU_MOINS_UN('MECA_IMPO','THER_IMPO','ACOU_IMPO'),
1201                  EXCLUS('MECA_IMPO','THER_IMPO'),
1202                  EXCLUS('MECA_IMPO','ACOU_IMPO'),
1203                  EXCLUS('THER_IMPO','ACOU_IMPO'),),
1204          MODELE          =SIMP(statut='o',typ=modele ),
1205          MECA_IMPO       =FACT(statut='f',max='**',
1206            regles=(UN_PARMI('TOUT','GROUP_NO','NOEUD'),
1207                    AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','TEMP','PHI'),),
1208            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1209            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
1210            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
1211            DX              =SIMP(statut='f',typ='R' ),
1212            DY              =SIMP(statut='f',typ='R' ),
1213            DZ              =SIMP(statut='f',typ='R' ),
1214            DRX             =SIMP(statut='f',typ='R' ),
1215            DRY             =SIMP(statut='f',typ='R' ),
1216            DRZ             =SIMP(statut='f',typ='R' ),
1217            GRX             =SIMP(statut='f',typ='R' ),
1218            PRES            =SIMP(statut='f',typ='R' ),
1219            TEMP            =SIMP(statut='f',typ='R' ),
1220            PHI             =SIMP(statut='f',typ='R' ),
1221          ),
1222          THER_IMPO       =FACT(statut='f',max='**',
1223            regles=(UN_PARMI('TOUT','GROUP_NO','NOEUD'),
1224                    AU_MOINS_UN('TEMP','TEMP_INF','TEMP_SUP'),),
1225            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1226            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
1227            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
1228            TEMP_SUP        =SIMP(statut='f',typ='R' ),
1229            TEMP            =SIMP(statut='f',typ='R' ),
1230            TEMP_INF        =SIMP(statut='f',typ='R' ),
1231          ),
1232          ACOU_IMPO       =FACT(statut='f',max='**',
1233            regles=(UN_PARMI('TOUT','GROUP_NO','NOEUD' ),),
1234            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1235            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
1236            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
1237            PRES            =SIMP(statut='o',typ='C' ),
1238          ),
1239          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
1240 )  ;
1241
1242 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
1243 #            CONFIGURATION MANAGEMENT OF EDF VERSION
1244 # ======================================================================
1245 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
1246 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
1247 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
1248 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
1249 # (AT YOUR OPTION) ANY LATER VERSION.                                 
1250 #
1251 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
1252 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
1253 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
1254 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
1255 #
1256 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
1257 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
1258 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
1259 # ======================================================================
1260 def affe_char_cine_f_prod(MECA_IMPO,THER_IMPO,**args):
1261   if MECA_IMPO != None  : return char_cine_meca
1262   if THER_IMPO != None  : return char_cine_ther
1263   raise AsException("type de concept resultat non prevu")
1264
1265 AFFE_CHAR_CINE_F=OPER(nom="AFFE_CHAR_CINE_F",op= 108,sd_prod=affe_char_cine_f_prod
1266                     ,fr="Affectation de conditions aux limites cinématiques pour traitement sans dualisation",
1267                      docu="U4.44.03-f",reentrant='n',
1268             UIinfo={"groupes":("Modélisation",)},
1269          regles=(AU_MOINS_UN('MECA_IMPO','THER_IMPO'),
1270                  EXCLUS('MECA_IMPO','THER_IMPO'),),
1271          MODELE          =SIMP(statut='o',typ=modele ),
1272          MECA_IMPO       =FACT(statut='f',max='**',
1273            regles=(UN_PARMI('TOUT','GROUP_NO','NOEUD'),
1274                    AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','TEMP','PHI'),),
1275            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1276            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
1277            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
1278            DX              =SIMP(statut='f',typ=(fonction,formule) ),
1279            DY              =SIMP(statut='f',typ=(fonction,formule) ),
1280            DZ              =SIMP(statut='f',typ=(fonction,formule) ),
1281            DRX             =SIMP(statut='f',typ=(fonction,formule) ),
1282            DRY             =SIMP(statut='f',typ=(fonction,formule) ),
1283            DRZ             =SIMP(statut='f',typ=(fonction,formule) ),
1284            GRX             =SIMP(statut='f',typ=(fonction,formule) ),
1285            PRES            =SIMP(statut='f',typ=(fonction,formule) ),
1286            TEMP            =SIMP(statut='f',typ=(fonction,formule) ),
1287            PHI             =SIMP(statut='f',typ=(fonction,formule) ),
1288          ),
1289          THER_IMPO       =FACT(statut='f',max='**',
1290            regles=(UN_PARMI('TOUT','GROUP_NO','NOEUD'),
1291                    AU_MOINS_UN('TEMP','TEMP_INF','TEMP_SUP' ),),
1292            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1293            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
1294            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
1295            TEMP_SUP        =SIMP(statut='f',typ=(fonction,formule) ),
1296            TEMP            =SIMP(statut='f',typ=(fonction,formule) ),
1297            TEMP_INF        =SIMP(statut='f',typ=(fonction,formule) ),
1298          ),
1299          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
1300 )  ;
1301
1302 #& MODIF COMMANDE  DATE 29/09/2003   AUTEUR CIBHHPD D.NUNEZ 
1303 #            CONFIGURATION MANAGEMENT OF EDF VERSION
1304 # ======================================================================
1305 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
1306 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
1307 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
1308 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
1309 # (AT YOUR OPTION) ANY LATER VERSION.                                 
1310 #
1311 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
1312 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
1313 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
1314 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
1315 #
1316 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
1317 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
1318 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
1319 # ======================================================================
1320 # RESPONSABLE G8BHHXD X.DESROCHES 
1321
1322 AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op=   7,sd_prod=char_meca
1323                     ,fr="Affectation de charges et conditions aux limites mécaniques constantes",
1324                      docu="U4.44.01-g",reentrant='n',
1325             UIinfo={"groupes":("Modélisation",)},
1326          regles=(AU_MOINS_UN('DDL_IMPO','FACE_IMPO','LIAISON_DDL','FORCE_NODALE',  
1327                              'FORCE_FACE','FORCE_ARETE','FORCE_CONTOUR','FORCE_INTERNE',       
1328                              'PRES_REP','FORCE_POUTRE','FORCE_COQUE','LIAISON_OBLIQUE',        
1329                              'FORCE_ELEC','INTE_ELEC','PESANTEUR','ROTATION','IMPE_FACE',      
1330                              'VITE_FACE','TEMP_CALCULEE','RELA_CINE_BP','EPSI_INIT','CONTACT', 
1331                              'LIAISON_GROUP','LIAISON_UNIF','FLUX_THM_REP',  
1332                              'LIAISON_SOLIDE','LIAISON_ELEM','ONDE_FLUI','PRES_CALCULEE',      
1333                              'EPSA_CALCULEE','LIAISON_CHAMNO','VECT_ASSE','LIAISON_COQUE',     
1334                              'LIAISON_MAIL','FORCE_TUYAU','SECH_CALCULEE','HYDR_CALCULEE',     
1335                              'EFFE_FOND','EVOL_CHAR','ARLEQUIN','DDL_POUTRE'),
1336                  EXCLUS('PRES_CALCULEE','EVOL_CHAR'),),            
1337          VERI_DDL        =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
1338          VERI_NORM       =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
1339          MODELE          =SIMP(statut='o',typ=(modele) ),
1340          TEMP_CALCULEE   =SIMP(statut='f',fr="Champ de température issu d'un autre calcul",
1341                                typ=(evol_ther,cham_no_temp_r,carte_temp_r,carte_temp_f ) ),
1342          HYDR_CALCULEE   =SIMP(statut='f',fr="Champ d hydratation issu d'un autre calcul",
1343                                typ=evol_ther ),
1344          SECH_CALCULEE   =SIMP(statut='f',fr="Champ de séchage issu d'un autre calcul",
1345                                typ=(evol_ther,cham_no_temp_r,carte_temp_r,carte_temp_f ) ),
1346          EPSA_CALCULEE   =SIMP(statut='f',fr="Champ de déformation anélastique issu d'un autre calcul",
1347                                typ=evol_noli ),
1348 #    A TERME PRES_CALCULEE N'EXISTERA PLUS
1349          EVOL_CHAR       =SIMP(statut='f',fr="Champ de pression issu d'un autre calcul",
1350                                typ=evol_char ),
1351          PRES_CALCULEE   =SIMP(statut='f',fr="Champ de pression issu d'un autre calcul",
1352                                typ=evol_char ),
1353          
1354          PESANTEUR       =SIMP(statut='f',typ='R',fr="Champ de pesanteur",min=4,max=4),
1355          ROTATION        =SIMP(statut='f',typ='R',fr="Champ de rotation", min=4,max=4),
1356          b_rotation      =BLOC ( condition = "ROTATION != None",
1357            CENTRE          =SIMP(statut='f',typ='R',defaut=(0.,0.,0.),max=3),),     
1358
1359          DDL_IMPO        =FACT(statut='f',max='**',
1360              regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'),
1361                      AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI',
1362                                  'TEMP','PRE1','PRE2','UI2','UI3','VI2','VI3','WI2','WI3','UO2',
1363                                  'UO3','VO2','VO3','WO2','WO3','UI4','UI5','VI4','VI5','WI4',
1364                                  'WI5','UO4','UO5','VO4','VO5','WO4','WO5','UI6','UO6','VI6',
1365                                  'VO6','WI6','WO6','WO','WI1','WO1','GONF','LIAISON'),),
1366              TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1367              GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
1368              NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
1369              GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1370              MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1371              LIAISON         =SIMP(statut='f',typ='TXM',into=('ENCASTRE',)),
1372              DX              =SIMP(statut='f',typ='R' ),
1373              DY              =SIMP(statut='f',typ='R' ),
1374              DZ              =SIMP(statut='f',typ='R' ),
1375              DRX             =SIMP(statut='f',typ='R' ),
1376              DRY             =SIMP(statut='f',typ='R' ),
1377              DRZ             =SIMP(statut='f',typ='R' ),
1378              GRX             =SIMP(statut='f',typ='R' ),
1379              PRES            =SIMP(statut='f',typ='R' ),
1380              PHI             =SIMP(statut='f',typ='R' ),
1381              TEMP            =SIMP(statut='f',typ='R' ),
1382              PRE1            =SIMP(statut='f',typ='R' ),
1383              PRE2            =SIMP(statut='f',typ='R' ),
1384              UI2             =SIMP(statut='f',typ='R' ),
1385              UI3             =SIMP(statut='f',typ='R' ),
1386              UI4             =SIMP(statut='f',typ='R' ),
1387              UI5             =SIMP(statut='f',typ='R' ),
1388              UI6             =SIMP(statut='f',typ='R' ),
1389              UO2             =SIMP(statut='f',typ='R' ),
1390              UO3             =SIMP(statut='f',typ='R' ),
1391              UO4             =SIMP(statut='f',typ='R' ),
1392              UO5             =SIMP(statut='f',typ='R' ),
1393              UO6             =SIMP(statut='f',typ='R' ),
1394              VI2             =SIMP(statut='f',typ='R' ),
1395              VI3             =SIMP(statut='f',typ='R' ),
1396              VI4             =SIMP(statut='f',typ='R' ),
1397              VI5             =SIMP(statut='f',typ='R' ),
1398              VI6             =SIMP(statut='f',typ='R' ),
1399              VO2             =SIMP(statut='f',typ='R' ),
1400              VO3             =SIMP(statut='f',typ='R' ),
1401              VO4             =SIMP(statut='f',typ='R' ),
1402              VO5             =SIMP(statut='f',typ='R' ),
1403              VO6             =SIMP(statut='f',typ='R' ),
1404              WI2             =SIMP(statut='f',typ='R' ),
1405              WI3             =SIMP(statut='f',typ='R' ),
1406              WI4             =SIMP(statut='f',typ='R' ),
1407              WI5             =SIMP(statut='f',typ='R' ),
1408              WI6             =SIMP(statut='f',typ='R' ),
1409              WO2             =SIMP(statut='f',typ='R' ),
1410              WO3             =SIMP(statut='f',typ='R' ),
1411              WO4             =SIMP(statut='f',typ='R' ),
1412              WO5             =SIMP(statut='f',typ='R' ),
1413              WO6             =SIMP(statut='f',typ='R' ),
1414              WO              =SIMP(statut='f',typ='R' ),
1415              WI1             =SIMP(statut='f',typ='R' ),
1416              WO1             =SIMP(statut='f',typ='R' ),
1417              GONF            =SIMP(statut='f',typ='R' ),
1418            ),
1419
1420
1421
1422          DDL_POUTRE    =FACT(statut='f',max='**',
1423              regles=(AU_MOINS_UN('GROUP_NO','NOEUD'),
1424                      AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ'),
1425                      UN_PARMI('VECT_Y','ANGL_VRIL'),),
1426              GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
1427              NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
1428              DX              =SIMP(statut='f',typ='R' ),
1429              DY              =SIMP(statut='f',typ='R' ),
1430              DZ              =SIMP(statut='f',typ='R' ),
1431              DRX             =SIMP(statut='f',typ='R' ),
1432              DRY             =SIMP(statut='f',typ='R' ),
1433              DRZ             =SIMP(statut='f',typ='R' ),
1434 #  définition du repère local
1435              VECT_Y          =SIMP(statut='f',typ='R',min=3,max=3),
1436              ANGL_VRIL       =SIMP(statut='f',typ='R',),
1437 #  restriction sur les mailles servant à définir le repère local
1438              GROUP_MA        =SIMP(statut='f',typ=grma,),
1439              MAILLE          =SIMP(statut='f',typ=ma,),
1440                             ),
1441
1442
1443          
1444            FACE_IMPO       =FACT(statut='f',max='**',
1445              regles=(UN_PARMI('GROUP_MA','MAILLE',),
1446                      AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI',
1447                                  'TEMP','PRE1','PRE2','DNOR','DTAN'),
1448                      EXCLUS('DNOR','DX'),
1449                      EXCLUS('DNOR','DY'),
1450                      EXCLUS('DNOR','DZ'),
1451                      EXCLUS('DNOR','DRX'),
1452                      EXCLUS('DNOR','DRY'),
1453                      EXCLUS('DNOR','DRZ'),
1454                      EXCLUS('DTAN','DX'),
1455                      EXCLUS('DTAN','DY'),
1456                      EXCLUS('DTAN','DZ'),
1457                      EXCLUS('DTAN','DRX'),
1458                      EXCLUS('DTAN','DRY'),
1459                      EXCLUS('DTAN','DRZ'),),
1460 #  rajout d'un mot clé REPERE :/ LOCAL /GLOBAL                     
1461              GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1462              MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1463              DX              =SIMP(statut='f',typ='R' ),
1464              DY              =SIMP(statut='f',typ='R' ),
1465              DZ              =SIMP(statut='f',typ='R' ),
1466              DRX             =SIMP(statut='f',typ='R' ),
1467              DRY             =SIMP(statut='f',typ='R' ),
1468              DRZ             =SIMP(statut='f',typ='R' ),
1469              DNOR            =SIMP(statut='f',typ='R' ),
1470              DTAN            =SIMP(statut='f',typ='R' ),
1471              GRX             =SIMP(statut='f',typ='R' ),
1472              PRES            =SIMP(statut='f',typ='R' ),
1473              PHI             =SIMP(statut='f',typ='R' ),
1474              TEMP            =SIMP(statut='f',typ='R' ),
1475              PRE1            =SIMP(statut='f',typ='R' ),
1476              PRE2            =SIMP(statut='f',typ='R' ),
1477            ),
1478
1479            LIAISON_DDL     =FACT(statut='f',max='**',
1480                                  fr="Définir une relation linéaire entre des ddls de deux ou plusieurs noeuds",
1481              regles=(UN_PARMI('GROUP_NO','NOEUD'),),
1482              GROUP_NO        =SIMP(statut='f',typ=grno ,max='**'),
1483              NOEUD           =SIMP(statut='f',typ=no   ,max='**'),
1484              DDL             =SIMP(statut='o',typ='TXM',max='**'),
1485              COEF_MULT       =SIMP(statut='o',typ='R'  ,max='**'),
1486              COEF_IMPO       =SIMP(statut='o',typ='R' ),
1487            ),
1488
1489            LIAISON_OBLIQUE =FACT(statut='f',max='**',
1490                                  fr="Appliquer à des noeuds une valeur de déplacement dans un repere oblique",
1491              regles=(UN_PARMI('GROUP_NO','NOEUD'),
1492                      UN_PARMI('DX','DY','DZ','DRX','DRY','DRZ'),),
1493              GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
1494              NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
1495              ANGL_NAUT       =SIMP(statut='o',typ='R',max=3),
1496              DX              =SIMP(statut='f',typ='R' ),
1497              DY              =SIMP(statut='f',typ='R' ),
1498              DZ              =SIMP(statut='f',typ='R' ),
1499              DRX             =SIMP(statut='f',typ='R' ),
1500              DRY             =SIMP(statut='f',typ='R' ),
1501              DRZ             =SIMP(statut='f',typ='R' ),
1502            ), 
1503  
1504            LIAISON_GROUP   =FACT(statut='f',max='**',
1505                                  fr="Définir des relations linéaires entre certains ddls de couples de noeuds",
1506              regles=(UN_PARMI('GROUP_MA_1','MAILLE_1','GROUP_NO_1','NOEUD_1'),        
1507                      UN_PARMI('GROUP_MA_2','MAILLE_2','GROUP_NO_2','NOEUD_2'),
1508                      EXCLUS('GROUP_MA_1','GROUP_NO_2'),
1509                      EXCLUS('GROUP_MA_1','NOEUD_2'),      
1510                      EXCLUS('GROUP_NO_1','GROUP_MA_2'),
1511                      EXCLUS('GROUP_NO_1','MAILLE_2'),
1512                      EXCLUS('MAILLE_1','GROUP_NO_2'),
1513                      EXCLUS('MAILLE_1','NOEUD_2'),
1514                      EXCLUS('NOEUD_1','GROUP_MA_2'),
1515                      EXCLUS('NOEUD_1','MAILLE_2'),
1516                      EXCLUS('SANS_NOEUD','SANS_GROUP_NO'),),
1517              
1518                GROUP_MA_1      =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1519                MAILLE_1        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1520                GROUP_MA_2      =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1521                MAILLE_2        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1522                GROUP_NO_1      =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
1523                NOEUD_1         =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
1524                GROUP_NO_2      =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
1525                NOEUD_2         =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
1526              
1527              SANS_NOEUD      =SIMP(statut='f',typ=no   ,validators=NoRepeat(),max='**'),
1528              SANS_GROUP_NO   =SIMP(statut='f',typ=grno ,validators=NoRepeat(),max='**'),
1529              DDL_1           =SIMP(statut='o',typ='TXM',max='**'),
1530              COEF_MULT_1     =SIMP(statut='o',typ='R'  ,max='**'),
1531              DDL_2           =SIMP(statut='o',typ='TXM',max='**'),
1532              COEF_MULT_2     =SIMP(statut='o',typ='R'  ,max='**'),
1533              COEF_IMPO       =SIMP(statut='o',typ='R' ),
1534              SOMMET          =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1535              TRAN            =SIMP(statut='f',typ='R',max=3),
1536              ANGL_NAUT       =SIMP(statut='f',typ='R',max=3),
1537              CENTRE          =SIMP(statut='f',typ='R',max=3),
1538            ),
1539
1540            LIAISON_MAIL    =FACT(statut='f',max='**',
1541              regles=(AU_MOINS_UN('GROUP_MA_MAIT','MAILLE_MAIT'),
1542                      AU_MOINS_UN('GROUP_MA_ESCL','MAILLE_ESCL','GROUP_NO_ESCL','NOEUD_ESCL'),
1543                      PRESENT_PRESENT('DDL_MAIT','DDL_ESCL'),),
1544               GROUP_MA_MAIT   =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1545               MAILLE_MAIT     =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'), 
1546               GROUP_MA_ESCL   =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1547               MAILLE_ESCL     =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'), 
1548               GROUP_NO_ESCL   =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
1549               NOEUD_ESCL      =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'), 
1550               TRAN            =SIMP(statut='f',typ='R',max=3 ),
1551               ANGL_NAUT       =SIMP(statut='f',typ='R',max=3 ),
1552               CENTRE          =SIMP(statut='f',typ='R',max=3 ),
1553               DDL_MAIT        =SIMP(statut='f',typ='TXM',into=("DNOR",) ),
1554               DDL_ESCL        =SIMP(statut='f',typ='TXM',into=("DNOR",) ),
1555          ),
1556
1557          
1558            LIAISON_SOLIDE  =FACT(statut='f',fr="Modéliser une partie indéformable d'une structure",max='**',
1559              regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),),
1560              GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
1561              NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
1562              GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1563              MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1564              NUME_LAGR       =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES") ),
1565            ), 
1566
1567            LIAISON_ELEM    =FACT(statut='f',fr="Raccorder une poutre à une partie massive 3D ou une coque",max='**',
1568              regles=(UN_PARMI('GROUP_MA_1','MAILLE_1'),
1569                      UN_PARMI('GROUP_NO_2','NOEUD_2'),),
1570              OPTION          =SIMP(statut='o',typ='TXM',into=("3D_TUYAU","3D_POU","COQ_POU","COQ_TUYAU") ),
1571              GROUP_MA_1      =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1572              MAILLE_1        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1573              GROUP_NO_2      =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
1574              NOEUD_2         =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
1575              NUME_LAGR       =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES") ),
1576              CARA_ELEM       =SIMP(statut='f',typ=(cara_elem) ),
1577              AXE_POUTRE      =SIMP(statut='f',typ='R',max=3),
1578              ANGL_MAX        =SIMP(statut='f',typ='R',defaut= 1. ),
1579            ),
1580
1581            LIAISON_UNIF    =FACT(statut='f',max='**',
1582                                  fr="Imposer une meme valeur (inconnue) à des ddls d'un emsemble de noeuds",
1583              regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),),
1584              GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
1585              NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
1586              GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1587              MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1588              DDL             =SIMP(statut='o',typ='TXM',max='**'),
1589            ), 
1590
1591          LIAISON_CHAMNO  =FACT(statut='f',max='**',
1592                                fr="définir une relation linéaire entre tous les ddls d'un concept cham_no",
1593 #  type de cham_no CO()
1594              CHAM_NO         =SIMP(statut='o',typ=cham_no), #CO()
1595              COEF_IMPO       =SIMP(statut='o',typ='R' ),
1596              NUME_LAGR       =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES") ),
1597            ), 
1598
1599          VECT_ASSE       =SIMP(statut='f',typ=cham_no_depl_r ),
1600
1601          CONTACT         =FACT(statut='f',fr="Imposer du contact avec ou sans frottement",max='**',
1602            regles=(UN_PARMI('GROUP_MA_2','MAILLE_2'),),
1603            APPARIEMENT     =SIMP(statut='f',typ='TXM',defaut="MAIT_ESCL",
1604                                  into=("NON","NODAL","NODAL_SYME","MAIT_ESCL","MAIT_ESCL_SYME")),
1605            RECHERCHE       =SIMP(statut='f',typ='TXM',defaut="NOEUD_VOISIN",into=("NOEUD_BOUCLE","NOEUD_VOISIN")),
1606            LISSAGE         =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")),                 
1607            NORMALE         =SIMP(statut='f',typ='TXM',defaut="MAIT",into=("MAIT","MAIT_ESCL")),
1608            METHODE         =SIMP(statut='f',typ='TXM',defaut="CONTRAINTE",    
1609                                  into=("CONTRAINTE","LAGRANGIEN","PENALISATION","CONTINUE") ),           
1610            PROJECTION      =SIMP(statut='f',typ='TXM',defaut="LINEAIRE",into=("LINEAIRE","QUADRATIQUE") ),
1611            GROUP_MA_1      =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1612            MAILLE_1        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1613            GROUP_MA_2      =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1614            MAILLE_2        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1615            b_active        =BLOC(condition = "METHODE == 'CONTRAINTE' ",
1616                                  fr="Paramètres de la méthode des contraintes actives (contact uniquement)",
1617                 regles=(EXCLUS('DIST_2','COEF_IMPO'),
1618                         EXCLUS('DIST_1','COEF_IMPO'),),
1619                 NOM_CHAM        =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL","PRES","TEMP")),
1620                 FROTTEMENT      =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SANS",) ), 
1621                 NB_RESOL        =SIMP(statut='f',typ='I', defaut=10 ),
1622                 REAC_GEOM       =SIMP(statut='f',typ='TXM',defaut="AUTOMATIQUE",into=("AUTOMATIQUE","CONTROLE","SANS")),
1623                 b_reac_geom     =BLOC(condition = "REAC_GEOM == 'CONTROLE' ",
1624                                  fr="Paramètre de la réactualisation géométrique",
1625                       NB_REAC_GEOM   =SIMP(statut='o',typ='I'),),
1626                 SANS_NOEUD      =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
1627                 SANS_GROUP_NO   =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
1628                 COEF_IMPO       =SIMP(statut='f',typ='R'),
1629                 COEF_MULT_2     =SIMP(statut='f',typ='R'),
1630                 VECT_NORM_2     =SIMP(statut='f',typ='R',max=3),
1631                 VECT_Y          =SIMP(statut='f',typ='R',min=3,max=3),
1632                 DIST_1          =SIMP(statut='f',typ='R'),
1633                 DIST_2          =SIMP(statut='f',typ='R'),
1634                 STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")),),
1635            b_lagrangien    =BLOC(condition = "METHODE == 'LAGRANGIEN' ",
1636                                  fr="Paramètres de la méthode Lagrangienne (contact avec ou sans frottement)",
1637                 NOM_CHAM        =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL",)),
1638                 FROTTEMENT      =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SANS","COULOMB",) ),
1639                 NB_RESOL        =SIMP(statut='f',typ='I', defaut=10 ), 
1640                 REAC_GEOM       =SIMP(statut='f',typ='TXM',defaut="AUTOMATIQUE",into=("AUTOMATIQUE","CONTROLE","SANS")),
1641                 b_reac_geom     =BLOC(condition = "REAC_GEOM == 'CONTROLE' ",
1642                                  fr="Paramètre de la réactualisation géométrique",
1643                       NB_REAC_GEOM   =SIMP(statut='o',typ='I'),),
1644                 SANS_NOEUD      =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
1645                 SANS_GROUP_NO   =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
1646                 DIST_1          =SIMP(statut='f',typ='R'),
1647                 DIST_2          =SIMP(statut='f',typ='R'),
1648                 VECT_Y          =SIMP(statut='f',typ='R',min=3,max=3),
1649                 STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")),
1650                 b_frottement    =BLOC(condition = "FROTTEMENT == 'COULOMB' ",fr="Paramètres du frottement de Coulomb",
1651                      COULOMB         =SIMP(statut='o',typ='R',),
1652                      COEF_MATR_FROT  =SIMP(statut='f',typ='R',defaut=0.E+0),  
1653                      ),),
1654            b_penalisation       =BLOC(condition = "METHODE == 'PENALISATION' ",
1655                                       fr="Paramètres de la méthode pénalisée (contact avec ou sans frottement)",
1656                 NOM_CHAM        =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL",)),
1657                 E_N             =SIMP(statut='f',typ='R'), 
1658                 FROTTEMENT      =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SANS","COULOMB",) ), 
1659                 NB_RESOL        =SIMP(statut='f',typ='I', defaut=10 ),
1660                 REAC_GEOM       =SIMP(statut='f',typ='TXM',defaut="AUTOMATIQUE",into=("AUTOMATIQUE","CONTROLE","SANS")),
1661                 b_reac_geom     =BLOC(condition = "REAC_GEOM == 'CONTROLE' ",
1662                                  fr="Paramètre de la réactualisation géométrique",
1663                       NB_REAC_GEOM   =SIMP(statut='o',typ='I'),),
1664                 SANS_NOEUD      =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
1665                 SANS_GROUP_NO   =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
1666                 DIST_1          =SIMP(statut='f',typ='R'),
1667                 DIST_2          =SIMP(statut='f',typ='R'),
1668                 VECT_Y          =SIMP(statut='f',typ='R',min=3,max=3),
1669                 STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")),
1670                 b_frottement    =BLOC(condition = "FROTTEMENT == 'COULOMB' ",fr="Paramètres du frottement de Coulomb",
1671                      COULOMB         =SIMP(statut='o',typ='R',),
1672                      E_T             =SIMP(statut='f',typ='R',
1673                                            fr="Active la pénalisation sur le frottement et définit le coefficient de pénalisation"),
1674                      COEF_MATR_FROT  =SIMP(statut='f',typ='R',defaut=0.E+0),  
1675                      ),),
1676            b_continue      =BLOC(condition = "METHODE == 'CONTINUE' ",
1677                                  fr="Paramètres de la méthode continue (contact avec ou sans frottement)",
1678                 NOM_CHAM        =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL",)),
1679                 FROTTEMENT      =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SANS","COULOMB",) ), 
1680                 INTEGRATION     =SIMP(statut='f',typ='TXM',defaut="NOEUD",into=("GAUSS","NOEUD","SIMPSON","SIMPSON1","SIMPSON2")),
1681                 COEF_REGU_CONT  =SIMP(statut='f',typ='R',defaut=100.E+0),
1682                 MODL_AXIS       =SIMP(statut='o',typ='TXM',into=("OUI","NON")),
1683                 DIRE_APPA       =SIMP(statut='f',typ='R',max=3,defaut=(0.,0.,0.,)),
1684                 ITER_GEOM_MAXI  =SIMP(statut='f',typ='I',defaut=2),
1685                 ITER_CONT_MAXI  =SIMP(statut='f',typ='I',defaut=30),
1686                 b_frottement    =BLOC(condition = "FROTTEMENT == 'COULOMB' ",fr="Paramètres du frottement de Coulomb",
1687                      COULOMB         =SIMP(statut='o',typ='R',),
1688                      ITER_FROT_MAXI  =SIMP(statut='f',typ='I',defaut=2),
1689                      COEF_REGU_FROT  =SIMP(statut='f',typ='R',defaut=100.E+0),
1690                      SEUIL_INIT      =SIMP(statut='f',typ='I',defaut=0),),),
1691          ),         
1692          
1693          FORCE_NODALE    =FACT(statut='f',fr="Imposer des forces nodales en des noeuds",max='**',
1694            regles=(AU_MOINS_UN('GROUP_NO','NOEUD'),
1695                    AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ' ),),
1696            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
1697            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
1698            FX              =SIMP(statut='f',typ='R' ),
1699            FY              =SIMP(statut='f',typ='R' ),
1700            FZ              =SIMP(statut='f',typ='R' ),
1701            MX              =SIMP(statut='f',typ='R' ),
1702            MY              =SIMP(statut='f',typ='R' ),
1703            MZ              =SIMP(statut='f',typ='R' ),
1704            ANGL_NAUT       =SIMP(statut='f',typ='R',max=3),
1705          ),
1706
1707          FORCE_FACE      =FACT(statut='f',max='**',
1708                                fr="Appliquer des forces surfaciques sur une face d'éléments volumiques",
1709              regles=(AU_MOINS_UN('GROUP_MA','MAILLE'),
1710                      AU_MOINS_UN('FX','FY','FZ'),),
1711              GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1712              MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1713              FX              =SIMP(statut='f',typ='R' ),
1714              FY              =SIMP(statut='f',typ='R' ),
1715              FZ              =SIMP(statut='f',typ='R' ),
1716            ), 
1717
1718          FORCE_ARETE     =FACT(statut='f',max='**',
1719                                fr="Appliquer des forces linéiques à une arete d élément volumique ou de coque",
1720              regles=(AU_MOINS_UN('GROUP_MA','MAILLE',),
1721                      AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ' ),),
1722              GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1723              MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1724              FX              =SIMP(statut='f',typ='R' ),
1725              FY              =SIMP(statut='f',typ='R' ),
1726              FZ              =SIMP(statut='f',typ='R' ),
1727              MX              =SIMP(statut='f',typ='R' ),
1728              MY              =SIMP(statut='f',typ='R' ),
1729              MZ              =SIMP(statut='f',typ='R' ),
1730            ), 
1731          
1732          FORCE_CONTOUR   =FACT(statut='f',max='**',
1733                                fr="Appliquer des forces linéiques au bord d'un domaine 2D ou AXIS_FOURIER",
1734              regles=(AU_MOINS_UN('GROUP_MA','MAILLE'),
1735                      AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),),
1736              GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1737              MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1738              FX              =SIMP(statut='f',typ='R' ),
1739              FY              =SIMP(statut='f',typ='R' ),
1740              FZ              =SIMP(statut='f',typ='R' ),
1741              MX              =SIMP(statut='f',typ='R' ),
1742              MY              =SIMP(statut='f',typ='R' ),
1743              MZ              =SIMP(statut='f',typ='R' ),
1744            ), 
1745
1746          FORCE_INTERNE   =FACT(statut='f',max='**',
1747                                fr="Appliquer des forces volumiques (2D ou 3D) à un domaine volumique",
1748              regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
1749                      PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),
1750                      AU_MOINS_UN('FX','FY','FZ' ),),
1751              TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1752              GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1753              MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1754              FX              =SIMP(statut='f',typ='R' ),
1755              FY              =SIMP(statut='f',typ='R' ),
1756              FZ              =SIMP(statut='f',typ='R' ),
1757            ), 
1758
1759          PRES_REP        =FACT(statut='f',max='**',
1760                                fr="Appliquer une pression à un domaine de milieu continu 2D ou 3D",
1761              regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
1762                      PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),
1763                      AU_MOINS_UN('PRES','CISA_2D' ),),
1764              TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1765              GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1766              MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1767              PRES            =SIMP(statut='f',typ='R' ),
1768              CISA_2D         =SIMP(statut='f',typ='R' ),
1769            ),
1770          
1771          EFFE_FOND       =FACT(statut='f',fr="Imposer un effet de fond",max='**',
1772            regles=(AU_MOINS_UN('GROUP_MA','MAILLE'),),
1773            GROUP_MA_INT    =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'),
1774            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1775            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1776            PRES            =SIMP(statut='o',typ='R' ),
1777          ),
1778         
1779          EPSI_INIT       =FACT(statut='f',max='**',
1780                                fr="Appliquer un chargement de déformation initiale à un volume 3D ou 2D",
1781              regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
1782                      PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),
1783                      AU_MOINS_UN('EPXX','EPYY','EPZZ','EPXY','EPXZ','EPYZ','EPX',
1784                                  'KY','KZ','EXX','EYY','EXY','KXX','KYY','KXY'),),
1785              TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1786              GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1787              MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1788              EPXX            =SIMP(statut='f',typ='R' ),
1789              EPYY            =SIMP(statut='f',typ='R' ),
1790              EPZZ            =SIMP(statut='f',typ='R' ),
1791              EPXY            =SIMP(statut='f',typ='R' ),
1792              EPXZ            =SIMP(statut='f',typ='R' ),
1793              EPYZ            =SIMP(statut='f',typ='R' ),
1794              EPX             =SIMP(statut='f',typ='R' ),
1795              KY              =SIMP(statut='f',typ='R' ),
1796              KZ              =SIMP(statut='f',typ='R' ),
1797              EXX             =SIMP(statut='f',typ='R' ),
1798              EYY             =SIMP(statut='f',typ='R' ),
1799              EXY             =SIMP(statut='f',typ='R' ),
1800              KXX             =SIMP(statut='f',typ='R' ),
1801              KYY             =SIMP(statut='f',typ='R' ),
1802              KXY             =SIMP(statut='f',typ='R' ),
1803            ),
1804            
1805          ARLEQUIN        =FACT(statut='f',max='**',
1806            GROUP_MA_1     =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'),
1807            GROUP_MA_2     =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'),
1808            GROUP_MA_COLL  =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'),
1809            CARA_ELEM      =SIMP(statut='f',typ=(cara_elem) ),
1810            regles        =(UN_PARMI('POIDS_1','POIDS_2'),),
1811            POIDS_1       =SIMP(statut='f',typ='R'),
1812            POIDS_2       =SIMP(statut='f',typ='R'),
1813          ),
1814          
1815         FORCE_POUTRE    =FACT(statut='f',fr="Appliquer des forces linéiques sur des poutres",max='**',
1816              regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
1817                      PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),
1818                      AU_MOINS_UN('FX','FY','FZ','N','VY','VZ'),
1819                      PRESENT_ABSENT('FX','N','VY','VZ'),              
1820                      PRESENT_ABSENT('FY','N','VY','VZ'),
1821                      PRESENT_ABSENT('FZ','N','VY','VZ'),
1822                      PRESENT_ABSENT('N','FX','FY','FZ'),
1823                      PRESENT_ABSENT('VY','FX','FY','FZ'),
1824                      PRESENT_ABSENT('VZ','FX','FY','FZ'),),
1825              TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1826              GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1827              MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1828              TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FORCE",into=("VENT","FORCE",) ),
1829 #  rajour d'un mot clé REPERE :/ LOCAL /GLOBAL              
1830                FX              =SIMP(statut='f',typ='R' ),
1831                FY              =SIMP(statut='f',typ='R' ),
1832                FZ              =SIMP(statut='f',typ='R' ),
1833              
1834                N               =SIMP(statut='f',typ='R' ),
1835                VY              =SIMP(statut='f',typ='R' ),
1836                VZ              =SIMP(statut='f',typ='R' ),
1837               
1838            ),
1839          
1840          FORCE_TUYAU     =FACT(statut='f',fr="imposer une pression dans un élément TUYAU",max='**',
1841              regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
1842                      PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),),
1843              TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1844              GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1845              MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1846              PRES            =SIMP(statut='f',typ='R' ),
1847            ),
1848           
1849          FORCE_COQUE     =FACT(statut='f',fr="Appliquer des forces surfaciques sur des coques",max='**',
1850              regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
1851                      PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),
1852                      AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ','PRES','F1','F2','F3','MF1','MF2'),               
1853                      PRESENT_ABSENT('FX','PRES','F1','F2','F3','MF1','MF2'),
1854                      PRESENT_ABSENT('FY','PRES','F1','F2','F3','MF1','MF2'),
1855                      PRESENT_ABSENT('FZ','PRES','F1','F2','F3','MF1','MF2'),
1856                      PRESENT_ABSENT('MX','PRES','F1','F2','F3','MF1','MF2'),
1857                      PRESENT_ABSENT('MY','PRES','F1','F2','F3','MF1','MF2'),
1858                      PRESENT_ABSENT('MZ','PRES','F1','F2','F3','MF1','MF2'),
1859                      PRESENT_ABSENT('F1','FX','FY','FZ','MX','MY','MZ','PRES'),
1860                      PRESENT_ABSENT('F2','FX','FY','FZ','MX','MY','MZ','PRES'),
1861                      PRESENT_ABSENT('F3','FX','FY','FZ','MX','MY','MZ','PRES'),
1862                      PRESENT_ABSENT('MF1','FX','FY','FZ','MX','MY','MZ','PRES'),
1863                      PRESENT_ABSENT('MF2','FX','FY','FZ','MX','MY','MZ','PRES'),
1864                      PRESENT_ABSENT('PRES','FX','FY','FZ','MX','MY','MZ','F1','F2','F3','MF1','MF2'),),
1865 #  rajour d'un mot clé REPERE :/ LOCAL /GLOBAL              
1866              TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1867              GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1868              MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1869              
1870                FX              =SIMP(statut='f',typ='R' ),
1871                FY              =SIMP(statut='f',typ='R' ),
1872                FZ              =SIMP(statut='f',typ='R' ),
1873                MX              =SIMP(statut='f',typ='R' ),
1874                MY              =SIMP(statut='f',typ='R' ),
1875                MZ              =SIMP(statut='f',typ='R' ),
1876              
1877                F1              =SIMP(statut='f',typ='R' ),
1878                F2              =SIMP(statut='f',typ='R' ),
1879                F3              =SIMP(statut='f',typ='R' ),
1880                MF1             =SIMP(statut='f',typ='R' ),
1881                MF2             =SIMP(statut='f',typ='R' ),
1882               
1883              PRES            =SIMP(statut='f',typ='R' ),
1884              PLAN            =SIMP(statut='f',typ='TXM',defaut="MAIL",into=("SUP","INF","MOY","MAIL",) ),
1885            ),
1886
1887
1888            LIAISON_COQUE   =FACT(statut='f',max='**',
1889              GROUP_MA_1      =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1890              MAILLE_1        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1891              GROUP_NO_1      =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
1892              NOEUD_1         =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
1893              GROUP_MA_2      =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1894              MAILLE_2        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1895              GROUP_NO_2      =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
1896              NOEUD_2         =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
1897              NUME_LAGR       =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES") ),
1898            ),
1899
1900          RELA_CINE_BP    =FACT(statut='f',max='**',
1901            CABLE_BP        =SIMP(statut='o',typ=cabl_precont ),
1902            SIGM_BPEL       =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
1903            RELA_CINE       =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
1904          ),
1905            
1906          FORCE_ELEC      =FACT(statut='f',max='**',
1907                                fr="Force de Laplace due à la présence d'un conducteur rectiligne secondaire non maillé",
1908              regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
1909                      PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),
1910                      AU_MOINS_UN('FX','FY','FZ','POSITION'),
1911                      EXCLUS('FX','POSITION'),
1912                      EXCLUS('FY','POSITION'),   
1913                      EXCLUS('FZ','POSITION'),),
1914 #  trop de regles : les blocs conditionnels permettent d en suprimer              
1915              TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1916              GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1917              MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1918               
1919              FX              =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
1920              FY              =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
1921              FZ              =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
1922              
1923              POSITION        =SIMP(statut='f',typ='TXM',fr="Direction prédéfinie",into=("PARA","INFI","FINI",) ),
1924              b_para     =BLOC ( condition = "POSITION == 'PARA'",
1925                regles=(UN_PARMI('TRANS','DIST'),),
1926                TRANS           =SIMP(statut='f',typ='R',max=3),
1927                DIST            =SIMP(statut='f',typ='R' ),
1928                b_point2        =BLOC ( condition = "DIST != None", 
1929                  POINT2           =SIMP(statut='o',typ='R',max=3),
1930                ),
1931              ),
1932              b_fini_infi     =BLOC ( condition = "(POSITION == 'FINI') or (POSITION == 'INFI')",
1933                POINT1          =SIMP(statut='o',typ='R',max=3),
1934                POINT2          =SIMP(statut='o',typ='R',max=3),
1935              ), 
1936            ),
1937
1938
1939
1940              
1941         INTE_ELEC       =FACT(statut='f',max='**',
1942                               fr="Force de Laplace due à la présence d'un conducteur non rectiligne secondaire",
1943              regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
1944                      PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),
1945                      AU_MOINS_UN('GROUP_MA_2','MAILLE_2','TRANS','SYME'),
1946                      EXCLUS('TRANS','SYME'),),
1947              TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1948              GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1949              MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1950              GROUP_MA_2      =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1951              MAILLE_2        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1952              TRANS           =SIMP(statut='f',typ='R' ,max='**'),
1953              SYME            =SIMP(statut='f',typ='R' ,max='**'),
1954            ),
1955          
1956
1957          IMPE_FACE       =FACT(statut='f',fr="Appliquer une impédance acoustique à une face",max='**',
1958              regles=(AU_MOINS_UN('GROUP_MA','MAILLE' ),),
1959              GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1960              MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1961              IMPE            =SIMP(statut='o',typ='R' ),
1962            ),
1963          
1964          VITE_FACE       =FACT(statut='f',fr="Imposer des vitesses acoustiquesnormales à une face",max='**',
1965              regles=(AU_MOINS_UN('GROUP_MA','MAILLE'),),
1966              GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1967              MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1968              VNOR            =SIMP(statut='o',typ='R' ),
1969            ),
1970            
1971
1972
1973          ONDE_FLUI       =FACT(statut='f',fr="Appliquer une amplitude de pression d onde incidente",max='**',
1974              regles=(AU_MOINS_UN('GROUP_MA','MAILLE'),),
1975              GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1976              MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1977              PRES            =SIMP(statut='o',typ='R' ),
1978            ),
1979          
1980          FLUX_THM_REP    =FACT(statut='f',max='**',
1981              regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
1982                      PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),
1983                      AU_MOINS_UN('FLUN','FLUN_HYDR1','FLUN_HYDR2'),),
1984              TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
1985              GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
1986              MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
1987              FLUN            =SIMP(statut='f',typ='R' ),
1988              FLUN_HYDR1      =SIMP(statut='f',typ='R' ),
1989              FLUN_HYDR2      =SIMP(statut='f',typ='R' ),
1990            ),
1991
1992          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
1993 )  ;
1994
1995
1996
1997 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
1998 #            CONFIGURATION MANAGEMENT OF EDF VERSION
1999 # ======================================================================
2000 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
2001 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
2002 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
2003 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
2004 # (AT YOUR OPTION) ANY LATER VERSION.                                 
2005 #
2006 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
2007 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
2008 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
2009 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
2010 #
2011 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
2012 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
2013 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
2014 # ======================================================================
2015 # RESPONSABLE G8BHHXD X.DESROCHES
2016 AFFE_CHAR_MECA_C=OPER(nom="AFFE_CHAR_MECA_C",op=   7,sd_prod=char_meca,
2017                      fr="Affectation de charges et conditions aux limites mécaniques complexes",
2018                      docu="U4.44.05-d",reentrant='n',
2019             UIinfo={"groupes":("Modélisation",)},
2020          regles=(AU_MOINS_UN('DDL_IMPO','FORCE_POUTRE','LIAISON_DDL', ),),
2021          MODELE          =SIMP(statut='o',typ=modele ),
2022          VERI_DDL        =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
2023          DDL_IMPO        =FACT(statut='f',max='**',
2024            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD',),
2025                    AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI','LIAISON', ),),
2026            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2027            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2028            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2029            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
2030            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
2031            LIAISON         =SIMP(statut='f',typ='TXM',into=('ENCASTRE',)), 
2032            DX              =SIMP(statut='f',typ='C' ),
2033            DY              =SIMP(statut='f',typ='C' ),
2034            DZ              =SIMP(statut='f',typ='C' ),
2035            DRX             =SIMP(statut='f',typ='C' ),
2036            DRY             =SIMP(statut='f',typ='C' ),
2037            DRZ             =SIMP(statut='f',typ='C' ),
2038            GRX             =SIMP(statut='f',typ='C' ),
2039            PRES            =SIMP(statut='f',typ='C' ),
2040            PHI             =SIMP(statut='f',typ='C' ),
2041          ),
2042          FORCE_POUTRE    =FACT(statut='f',max='**',
2043            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
2044                    PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),
2045                    AU_MOINS_UN('FX','FY','FZ','N','VY','VZ',),
2046                    PRESENT_ABSENT('FX','N','VY','VZ',),
2047                    PRESENT_ABSENT('FY','N','VY','VZ',),
2048                    PRESENT_ABSENT('FZ','N','VY','VZ',),
2049                    PRESENT_ABSENT('N','FX','FY','FZ',),
2050                    PRESENT_ABSENT('VY', 'FX','FY','FZ',),
2051                    PRESENT_ABSENT('VZ','FX','FY','FZ', ),),
2052            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2053            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2054            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2055            TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FORCE",into=("VENT","FORCE") ),
2056            FX              =SIMP(statut='f',typ='C' ),
2057            FY              =SIMP(statut='f',typ='C' ),
2058            FZ              =SIMP(statut='f',typ='C' ),
2059            N               =SIMP(statut='f',typ='C' ),
2060            VY              =SIMP(statut='f',typ='C' ),
2061            VZ              =SIMP(statut='f',typ='C' ),
2062          ),
2063          LIAISON_DDL     =FACT(statut='f',max='**',
2064            regles=(UN_PARMI('GROUP_NO','NOEUD', ),),
2065            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
2066            NOEUD           =SIMP(statut='f',typ=no  ,max='**'),
2067            DDL             =SIMP(statut='o',typ='TXM',max='**'),
2068            COEF_MULT       =SIMP(statut='o',typ='R'  ,max='**'),
2069            COEF_IMPO       =SIMP(statut='o',typ='C' ),
2070          ),
2071          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
2072 )  ;
2073
2074 #& MODIF COMMANDE  DATE 29/09/2003   AUTEUR CIBHHPD D.NUNEZ 
2075 #            CONFIGURATION MANAGEMENT OF EDF VERSION
2076 # ======================================================================
2077 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
2078 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
2079 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
2080 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
2081 # (AT YOUR OPTION) ANY LATER VERSION.                                 
2082 #
2083 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
2084 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
2085 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
2086 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
2087 #
2088 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
2089 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
2090 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
2091 # ======================================================================
2092 # RESPONSABLE G8BHHXD X.DESROCHES
2093 AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca,
2094                       fr="Affectation de charges et conditions aux limites mécaniques fonction d une grandeur",
2095                       docu="U4.44.01-g",reentrant='n',
2096             UIinfo={"groupes":("Modélisation",)},
2097         regles=(AU_MOINS_UN('DDL_IMPO','FACE_IMPO','LIAISON_DDL','FORCE_NODALE',
2098                             'FORCE_FACE','FORCE_ARETE','FORCE_CONTOUR','FORCE_INTERNE',
2099                             'PRES_REP','FORCE_POUTRE','VITE_FACE','IMPE_FACE','ONDE_PLANE',
2100                             'LIAISON_OBLIQUE','EPSI_INIT','LIAISON_GROUP','LIAISON_UNIF',
2101                             'LIAISON_SOLIDE','FORCE_COQUE','LIAISON_COQUE','FORCE_TUYAU',
2102                             'CONTACT','EFFE_FOND'),),
2103          VERI_DDL        =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
2104          VERI_NORM       =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
2105          MODELE          =SIMP(statut='o',typ=modele ),
2106
2107          DDL_IMPO        =FACT(statut='f',max='**',
2108            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'),
2109                    AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI',
2110                                'TEMP','PRE1','PRE2','LIAISON',),),
2111            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2112            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2113            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2114            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
2115            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
2116            LIAISON         =SIMP(statut='f',typ='TXM',into=('ENCASTRE',)), 
2117            DX              =SIMP(statut='f',typ=(fonction,formule) ),
2118            DY              =SIMP(statut='f',typ=(fonction,formule) ),
2119            DZ              =SIMP(statut='f',typ=(fonction,formule) ),
2120            DRX             =SIMP(statut='f',typ=(fonction,formule) ),
2121            DRY             =SIMP(statut='f',typ=(fonction,formule) ),
2122            DRZ             =SIMP(statut='f',typ=(fonction,formule) ),
2123            GRX             =SIMP(statut='f',typ=(fonction,formule) ),
2124            PRES            =SIMP(statut='f',typ=(fonction,formule) ),
2125            PHI             =SIMP(statut='f',typ=(fonction,formule) ),
2126            TEMP            =SIMP(statut='f',typ=(fonction,formule) ),
2127            PRE1            =SIMP(statut='f',typ=(fonction,formule) ),
2128            PRE2            =SIMP(statut='f',typ=(fonction,formule) ),
2129          ),
2130
2131          FACE_IMPO       =FACT(statut='f',max='**',
2132            regles=(UN_PARMI('GROUP_MA','MAILLE'),
2133                    AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI','TEMP','PRE1','PRE2','DNOR','DTAN'),
2134                    EXCLUS('DNOR','DX'),
2135                    EXCLUS('DNOR','DY'),
2136                    EXCLUS('DNOR','DZ'),
2137                    EXCLUS('DNOR','DRX'),
2138                    EXCLUS('DNOR','DRY'),
2139                    EXCLUS('DNOR','DRZ'),
2140                    EXCLUS('DTAN','DX'),
2141                    EXCLUS('DTAN','DY'),
2142                    EXCLUS('DTAN','DZ'),
2143                    EXCLUS('DTAN','DRX'),
2144                    EXCLUS('DTAN','DRY'),
2145                    EXCLUS('DTAN','DRZ'),),
2146 #  rajout d un mot cle REPERE : / GLOBAL / LOCAL
2147            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2148            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2149            DX              =SIMP(statut='f',typ=(fonction,formule) ),
2150            DY              =SIMP(statut='f',typ=(fonction,formule) ),
2151            DZ              =SIMP(statut='f',typ=(fonction,formule) ),
2152            DRX             =SIMP(statut='f',typ=(fonction,formule) ),
2153            DRY             =SIMP(statut='f',typ=(fonction,formule) ),
2154            DRZ             =SIMP(statut='f',typ=(fonction,formule) ),
2155            GRX             =SIMP(statut='f',typ=(fonction,formule) ),
2156            PRES            =SIMP(statut='f',typ=(fonction,formule) ),
2157            PHI             =SIMP(statut='f',typ=(fonction,formule) ),
2158            TEMP            =SIMP(statut='f',typ=(fonction,formule) ),
2159            PRE1            =SIMP(statut='f',typ=(fonction,formule) ),
2160            PRE2            =SIMP(statut='f',typ=(fonction,formule) ),
2161            DNOR            =SIMP(statut='f',typ=(fonction,formule) ),
2162            DTAN            =SIMP(statut='f',typ=(fonction,formule) ),
2163          ),
2164          
2165          LIAISON_DDL     =FACT(statut='f',max='**',
2166                                fr="Définir une relation linéaire entre des ddls de deux ou plusieurs noeuds",
2167            regles=(UN_PARMI('GROUP_NO','NOEUD'),),
2168            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
2169            NOEUD           =SIMP(statut='f',typ=no  ,max='**'),
2170            DDL             =SIMP(statut='o',typ='TXM',max='**'),
2171            COEF_MULT       =SIMP(statut='o',typ='R',max='**'),
2172            COEF_IMPO       =SIMP(statut='o',typ=(fonction,formule) ),
2173          ),
2174
2175          LIAISON_OBLIQUE =FACT(statut='f',max='**',
2176                                fr="Définir des relations linéaires entre certains ddls de couples de noeuds",
2177            regles=(UN_PARMI('GROUP_NO','NOEUD'),
2178                    UN_PARMI('DX','DY','DZ','DRX','DRY','DRZ'),),
2179            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
2180            NOEUD           =SIMP(statut='f',typ=no  ,max='**'),
2181            ANGL_NAUT       =SIMP(statut='o',typ='R',max=3),
2182            DX              =SIMP(statut='f',typ=(fonction,formule) ),
2183            DY              =SIMP(statut='f',typ=(fonction,formule) ),
2184            DZ              =SIMP(statut='f',typ=(fonction,formule) ),
2185            DRX             =SIMP(statut='f',typ=(fonction,formule) ),
2186            DRY             =SIMP(statut='f',typ=(fonction,formule) ),
2187            DRZ             =SIMP(statut='f',typ=(fonction,formule) ),
2188          ),         
2189          
2190          LIAISON_GROUP   =FACT(statut='f',max='**',
2191                                fr="Définir des relations linéaires entre certains ddls de couples de noeuds",
2192            regles=(UN_PARMI('GROUP_MA_1','MAILLE_1','GROUP_NO_1','NOEUD_1'),
2193                    UN_PARMI('GROUP_MA_2','MAILLE_2','GROUP_NO_2','NOEUD_2'),
2194                    EXCLUS('GROUP_MA_1','GROUP_NO_2'),
2195                    EXCLUS('GROUP_MA_1','NOEUD_2'),
2196                    EXCLUS('GROUP_NO_1','GROUP_MA_2'),
2197                    EXCLUS('GROUP_NO_1','MAILLE_2'),
2198                    EXCLUS('MAILLE_1','GROUP_NO_2'),
2199                    EXCLUS('MAILLE_1','NOEUD_2'),
2200                    EXCLUS('NOEUD_1','GROUP_MA_2'),
2201                    EXCLUS('NOEUD_1','MAILLE_2'),
2202                    EXCLUS('SANS_NOEUD','SANS_GROUP_NO'),),
2203            GROUP_MA_1      =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2204            MAILLE_1        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2205            GROUP_NO_1      =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
2206            NOEUD_1         =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
2207            GROUP_MA_2      =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2208            MAILLE_2        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2209            GROUP_NO_2      =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
2210            NOEUD_2         =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
2211            SANS_NOEUD      =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
2212            SANS_GROUP_NO   =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
2213            DDL_1           =SIMP(statut='o',typ='TXM',max='**'),
2214            COEF_MULT_1     =SIMP(statut='o',typ='R',max='**'),
2215            DDL_2           =SIMP(statut='o',typ='TXM',max='**'),
2216            COEF_MULT_2     =SIMP(statut='o',typ='R',max='**'),
2217            COEF_IMPO       =SIMP(statut='o',typ=(fonction,formule) ),
2218            SOMMET          =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2219            TRAN            =SIMP(statut='f',typ='R',max=3),
2220            ANGL_NAUT       =SIMP(statut='f',typ='R',max=3),
2221            CENTRE          =SIMP(statut='f',typ='R',max=3),
2222          ),
2223
2224          CONTACT         =FACT(statut='f',fr="Imposer du contact avec ou sans frottement",max='**',
2225            regles=(UN_PARMI('GROUP_MA_2','MAILLE_2'),),
2226            APPARIEMENT     =SIMP(statut='f',typ='TXM',defaut="MAIT_ESCL",
2227                                  into=("NON","NODAL","NODAL_SYME","MAIT_ESCL","MAIT_ESCL_SYME")),
2228            RECHERCHE       =SIMP(statut='f',typ='TXM',defaut="NOEUD_VOISIN",into=("NOEUD_BOUCLE","NOEUD_VOISIN")),
2229            LISSAGE         =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")),                 
2230            NORMALE         =SIMP(statut='f',typ='TXM',defaut="MAIT",into=("MAIT","MAIT_ESCL")),
2231            METHODE         =SIMP(statut='f',typ='TXM',defaut="CONTRAINTE",    
2232                                  into=("CONTRAINTE","LAGRANGIEN","PENALISATION","CONTINUE") ),           
2233            PROJECTION      =SIMP(statut='f',typ='TXM',defaut="LINEAIRE",into=("LINEAIRE","QUADRATIQUE") ),
2234            GROUP_MA_1      =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2235            MAILLE_1        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2236            GROUP_MA_2      =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2237            MAILLE_2        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2238            b_active        =BLOC(condition = "METHODE == 'CONTRAINTE' ",
2239                                  fr="Paramètres de la méthode des contraintes actives (contact uniquement)",
2240                 regles=(EXCLUS('DIST_2','COEF_IMPO'),
2241                         EXCLUS('DIST_1','COEF_IMPO'),),
2242                 NOM_CHAM        =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL","PRES","TEMP")),
2243                 FROTTEMENT      =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SANS",) ), 
2244                 NB_RESOL        =SIMP(statut='f',typ='I', defaut=10 ),
2245                 REAC_GEOM       =SIMP(statut='f',typ='TXM',defaut="AUTOMATIQUE",into=("AUTOMATIQUE","CONTROLE","SANS")),
2246                 b_reac_geom     =BLOC(condition = "REAC_GEOM == 'CONTROLE' ",
2247                                  fr="Paramètre de la réactualisation géométrique",
2248                       NB_REAC_GEOM   =SIMP(statut='o',typ='I'),),
2249                 SANS_NOEUD      =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
2250                 SANS_GROUP_NO   =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
2251                 COEF_IMPO       =SIMP(statut='f',typ='R'),
2252                 COEF_MULT_2     =SIMP(statut='f',typ='R'),
2253                 VECT_NORM_2     =SIMP(statut='f',typ='R',max=3),
2254                 VECT_Y          =SIMP(statut='f',typ='R',min=3,max=3),
2255                 DIST_1          =SIMP(statut='f',typ=(fonction,formule)),
2256                 DIST_2          =SIMP(statut='f',typ=(fonction,formule)),
2257                 STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")),),
2258            b_lagrangien    =BLOC(condition = "METHODE == 'LAGRANGIEN' ",
2259                                  fr="Paramètres de la méthode Lagrangienne (contact avec ou sans frottement)",
2260                 NOM_CHAM        =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL",)),
2261                 FROTTEMENT      =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SANS","COULOMB",) ),
2262                 NB_RESOL        =SIMP(statut='f',typ='I', defaut=10 ), 
2263                 REAC_GEOM       =SIMP(statut='f',typ='TXM',defaut="AUTOMATIQUE",into=("AUTOMATIQUE","CONTROLE","SANS")),
2264                 b_reac_geom     =BLOC(condition = "REAC_GEOM == 'CONTROLE' ",
2265                                  fr="Paramètre de la réactualisation géométrique",
2266                       NB_REAC_GEOM   =SIMP(statut='o',typ='I'),),
2267                 SANS_NOEUD      =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
2268                 SANS_GROUP_NO   =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
2269                 DIST_1          =SIMP(statut='f',typ=(fonction,formule)),
2270                 DIST_2          =SIMP(statut='f',typ=(fonction,formule)),
2271                 VECT_Y          =SIMP(statut='f',typ='R',min=3,max=3),
2272                 STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")),
2273                 b_frottement    =BLOC(condition = "FROTTEMENT == 'COULOMB' ",fr="Paramètres du frottement de Coulomb",
2274                      COULOMB         =SIMP(statut='o',typ='R',),
2275                      COEF_MATR_FROT  =SIMP(statut='f',typ='R',defaut=0.E+0),  
2276                      ),),
2277            b_penalisation       =BLOC(condition = "METHODE == 'PENALISATION' ",
2278                                       fr="Paramètres de la méthode pénalisée (contact avec ou sans frottement)",
2279                 NOM_CHAM        =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL",)),
2280                 E_N             =SIMP(statut='f',typ='R'), 
2281                 FROTTEMENT      =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SANS","COULOMB",) ),
2282                 NB_RESOL        =SIMP(statut='f',typ='I', defaut=10 ), 
2283                 REAC_GEOM       =SIMP(statut='f',typ='TXM',defaut="AUTOMATIQUE",into=("AUTOMATIQUE","CONTROLE","SANS")),
2284                 b_reac_geom     =BLOC(condition = "REAC_GEOM == 'CONTROLE' ",
2285                                  fr="Paramètre de la réactualisation géométrique",
2286                       NB_REAC_GEOM   =SIMP(statut='o',typ='I'),),
2287                 SANS_NOEUD      =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
2288                 SANS_GROUP_NO   =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
2289                 DIST_1          =SIMP(statut='f',typ=(fonction,formule)),
2290                 DIST_2          =SIMP(statut='f',typ=(fonction,formule)),
2291                 VECT_Y          =SIMP(statut='f',typ='R',min=3,max=3),
2292                 STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")),
2293                 b_frottement    =BLOC(condition = "FROTTEMENT == 'COULOMB' ",fr="Paramètres du frottement de Coulomb",
2294                      COULOMB         =SIMP(statut='o',typ='R',),
2295                      E_T             =SIMP(statut='f',typ='R',
2296                                            fr="Active la pénalisation sur le frottement et définit le coefficient de pénalisation"),
2297                      COEF_MATR_FROT  =SIMP(statut='f',typ='R',defaut=0.E+0),  
2298                      ),),
2299            b_continue      =BLOC(condition = "METHODE == 'CONTINUE' ",
2300                                  fr="Paramètres de la méthode continue (contact avec ou sans frottement)",
2301                 NOM_CHAM        =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL",)),
2302                 FROTTEMENT      =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SANS","COULOMB",) ), 
2303                 INTEGRATION     =SIMP(statut='f',typ='TXM',defaut="NOEUD",into=("GAUSS","NOEUD","SIMPSON","SIMPSON1","SIMPSON2")),
2304                 COEF_REGU_CONT  =SIMP(statut='f',typ='R',defaut=100.E+0),
2305                 MODL_AXIS       =SIMP(statut='o',typ='TXM',into=("OUI","NON")),
2306                 DIRE_APPA       =SIMP(statut='f',typ='R',max=3),
2307                 ITER_GEOM_MAXI  =SIMP(statut='f',typ='I',defaut=2),
2308                 ITER_CONT_MAXI  =SIMP(statut='f',typ='I',defaut=30),
2309                 b_frottement    =BLOC(condition = "FROTTEMENT == 'COULOMB' ",fr="Paramètres du frottement de Coulomb",
2310                      COULOMB         =SIMP(statut='o',typ='R',),
2311                      ITER_FROT_MAXI  =SIMP(statut='f',typ='I',defaut=2),
2312                      COEF_REGU_FROT  =SIMP(statut='f',typ='R',defaut=100.E+0),
2313                      SEUIL_INIT      =SIMP(statut='f',typ='I',defaut=0),),),
2314          ),        
2315          
2316           LIAISON_UNIF    =FACT(statut='f',max='**',
2317                                fr="Imposer une meme valeur (inconnue) a des ddls d un emsemble de noeuds",
2318            regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),),
2319            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2320            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2321            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
2322            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
2323            DDL             =SIMP(statut='o',typ='TXM',max='**'),
2324          ),
2325
2326          LIAISON_SOLIDE  =FACT(statut='f',max='**',
2327                                fr="Modéliser une partie indéformable d une structure",
2328            regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),),
2329            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2330            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2331            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
2332            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
2333            NUME_LAGR       =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES",) ),
2334          ),
2335
2336
2337
2338          FORCE_NODALE    =FACT(statut='f',max='**',
2339            regles=(UN_PARMI('GROUP_NO','NOEUD'),
2340                    AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),),
2341            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
2342            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
2343            FX              =SIMP(statut='f',typ=(fonction,formule) ),
2344            FY              =SIMP(statut='f',typ=(fonction,formule) ),
2345            FZ              =SIMP(statut='f',typ=(fonction,formule) ),
2346            MX              =SIMP(statut='f',typ=(fonction,formule) ),
2347            MY              =SIMP(statut='f',typ=(fonction,formule) ),
2348            MZ              =SIMP(statut='f',typ=(fonction,formule) ),
2349            ANGL_NAUT       =SIMP(statut='f',typ=(fonction,formule),max=3 ),
2350          ),
2351
2352          FORCE_FACE      =FACT(statut='f',max='**',
2353            regles=(AU_MOINS_UN('GROUP_MA','MAILLE'),
2354                    AU_MOINS_UN('FX','FY','FZ'),),
2355            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2356            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2357            FX              =SIMP(statut='f',typ=(fonction,formule) ),
2358            FY              =SIMP(statut='f',typ=(fonction,formule) ),
2359            FZ              =SIMP(statut='f',typ=(fonction,formule) ),
2360          ),
2361          FORCE_ARETE     =FACT(statut='f',max='**',
2362            regles=(AU_MOINS_UN('GROUP_MA','MAILLE'),
2363                    AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),),
2364            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2365            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2366            FX              =SIMP(statut='f',typ=(fonction,formule) ),
2367            FY              =SIMP(statut='f',typ=(fonction,formule) ),
2368            FZ              =SIMP(statut='f',typ=(fonction,formule) ),
2369            MX              =SIMP(statut='f',typ=(fonction,formule) ),
2370            MY              =SIMP(statut='f',typ=(fonction,formule) ),
2371            MZ              =SIMP(statut='f',typ=(fonction,formule) ),
2372          ),
2373          FORCE_CONTOUR   =FACT(statut='f',max='**',
2374            regles=(AU_MOINS_UN('GROUP_MA','MAILLE'),
2375                    AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),),
2376            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2377            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2378            FX              =SIMP(statut='f',typ=(fonction,formule) ),
2379            FY              =SIMP(statut='f',typ=(fonction,formule) ),
2380            FZ              =SIMP(statut='f',typ=(fonction,formule) ),
2381            MX              =SIMP(statut='f',typ=(fonction,formule) ),
2382            MY              =SIMP(statut='f',typ=(fonction,formule) ),
2383            MZ              =SIMP(statut='f',typ=(fonction,formule) ),
2384          ),
2385
2386          FORCE_INTERNE   =FACT(statut='f',max='**',
2387            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
2388                    PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),
2389                    AU_MOINS_UN('FX','FY','FZ'),),
2390            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2391            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2392            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2393            FX              =SIMP(statut='f',typ=(fonction,formule) ),
2394            FY              =SIMP(statut='f',typ=(fonction,formule) ),
2395            FZ              =SIMP(statut='f',typ=(fonction,formule) ),
2396          ),
2397          
2398          PRES_REP        =FACT(statut='f',max='**',
2399            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
2400                    PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),
2401                    AU_MOINS_UN('PRES','CISA_2D'),),
2402            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2403            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2404            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2405            PRES            =SIMP(statut='f',typ=(fonction,formule) ),
2406            CISA_2D         =SIMP(statut='f',typ=(fonction,formule) ),
2407          ),
2408
2409          EFFE_FOND       =FACT(statut='f',fr="Imposer un effet de fond",max='**',
2410            regles=(AU_MOINS_UN('GROUP_MA','MAILLE'),),
2411            GROUP_MA_INT    =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'),
2412            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2413            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2414            PRES            =SIMP(statut='o',typ=(fonction,formule) ),
2415          ),
2416
2417          EPSI_INIT       =FACT(statut='f',max='**',
2418            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
2419                    PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),
2420                    AU_MOINS_UN('EPXX','EPYY','EPZZ','EPXY','EPXZ','EPYZ'),),
2421            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2422            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2423            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2424            EPXX            =SIMP(statut='f',typ=(fonction,formule) ),
2425            EPYY            =SIMP(statut='f',typ=(fonction,formule) ),
2426            EPZZ            =SIMP(statut='f',typ=(fonction,formule) ),
2427            EPXY            =SIMP(statut='f',typ=(fonction,formule) ),
2428            EPXZ            =SIMP(statut='f',typ=(fonction,formule) ),
2429            EPYZ            =SIMP(statut='f',typ=(fonction,formule) ),
2430          ),
2431          
2432          FORCE_POUTRE    =FACT(statut='f',max='**',
2433            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
2434                    PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),
2435                    AU_MOINS_UN('FX','FY','FZ','N','VY','VZ'),
2436                    PRESENT_ABSENT('FX','N','VY','VZ'),
2437                    PRESENT_ABSENT('FY','N','VY','VZ'),
2438                    PRESENT_ABSENT('FZ','N','VY','VZ'),
2439                    PRESENT_ABSENT('N','FX','FY','FZ'),
2440                    PRESENT_ABSENT('VY','FX','FY','FZ'),
2441                    PRESENT_ABSENT('VZ','FX','FY','FZ'),),
2442 #  rajout d un mot cle REPERE : / GLOBAL / LOCAL
2443            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2444            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2445            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2446            TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FORCE",into=("VENT","FORCE") ),
2447            FX              =SIMP(statut='f',typ=(fonction,formule) ),
2448            FY              =SIMP(statut='f',typ=(fonction,formule) ),
2449            FZ              =SIMP(statut='f',typ=(fonction,formule) ),
2450            N               =SIMP(statut='f',typ=(fonction,formule) ),
2451            VY              =SIMP(statut='f',typ=(fonction,formule) ),
2452            VZ              =SIMP(statut='f',typ=(fonction,formule) ),
2453          ),
2454
2455          FORCE_TUYAU     =FACT(statut='f',max='**',
2456            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
2457                    PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),),
2458            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2459            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2460            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2461            PRES            =SIMP(statut='f',typ=(fonction,formule) ),
2462          ),
2463          
2464          FORCE_COQUE     =FACT(statut='f',max='**',
2465            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
2466                    PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),
2467                    AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ','PRES','F1','F2','F3','MF1','MF2'),
2468                    PRESENT_ABSENT('FX','PRES','F1','F2','F3','MF1','MF2'),
2469                    PRESENT_ABSENT('FY','PRES','F1','F2','F3','MF1','MF2'),
2470                    PRESENT_ABSENT('FZ','PRES','F1','F2','F3','MF1','MF2'),
2471                    PRESENT_ABSENT('MX','PRES','F1','F2','F3','MF1','MF2'),
2472                    PRESENT_ABSENT('MY','PRES','F1','F2','F3','MF1','MF2'),
2473                    PRESENT_ABSENT('MZ','PRES','F1','F2','F3','MF1','MF2'),
2474                    PRESENT_ABSENT('F1','PRES','FX','FY','FZ','MX','MY','MZ'),
2475                    PRESENT_ABSENT('F2','PRES','FX','FY','FZ','MX','MY','MZ'),
2476                    PRESENT_ABSENT('F3','PRES','FX','FY','FZ','MX','MY','MZ'),
2477                    PRESENT_ABSENT('MF1','PRES','FX','FY','FZ','MX','MY','MZ'),
2478                    PRESENT_ABSENT('MF2','PRES','FX','FY','FZ','MX','MY','MZ'),
2479                    PRESENT_ABSENT('PRES','FX','FY','FZ','MX','MY','MZ','F1','F2','F3','MF1','MF2'),),
2480 #  rajout d un mot cle REPERE : / GLOBAL / LOCAL
2481            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2482            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2483            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2484            FX              =SIMP(statut='f',typ=(fonction,formule) ),
2485            FY              =SIMP(statut='f',typ=(fonction,formule) ),
2486            FZ              =SIMP(statut='f',typ=(fonction,formule) ),
2487            MX              =SIMP(statut='f',typ=(fonction,formule) ),
2488            MY              =SIMP(statut='f',typ=(fonction,formule) ),
2489            MZ              =SIMP(statut='f',typ=(fonction,formule) ),
2490            F1              =SIMP(statut='f',typ=(fonction,formule) ),
2491            F2              =SIMP(statut='f',typ=(fonction,formule) ),
2492            F3              =SIMP(statut='f',typ=(fonction,formule) ),
2493            MF1             =SIMP(statut='f',typ=(fonction,formule) ),
2494            MF2             =SIMP(statut='f',typ=(fonction,formule) ),
2495            PRES            =SIMP(statut='f',typ=(fonction,formule) ),
2496            PLAN            =SIMP(statut='f',typ='TXM',defaut="MAIL",
2497                                  into=("SUP","INF","MOY","MAIL") ),
2498          ),
2499
2500          LIAISON_COQUE   =FACT(statut='f',max='**',
2501            GROUP_MA_1      =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2502            MAILLE_1        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2503            GROUP_NO_1      =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
2504            NOEUD_1         =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
2505            GROUP_MA_2      =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2506            MAILLE_2        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2507            GROUP_NO_2      =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
2508            NOEUD_2         =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
2509            NUME_LAGR       =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES",) ),
2510          ),         
2511          
2512
2513          VITE_FACE       =FACT(statut='f',max='**',
2514            regles=(AU_MOINS_UN('GROUP_MA','MAILLE'),
2515                    PRESENT_ABSENT('GROUP_MA','MAILLE'),),
2516            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2517            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2518            VNOR            =SIMP(statut='o',typ=(fonction,formule) ),
2519          ),
2520          IMPE_FACE       =FACT(statut='f',max='**',
2521            regles=(AU_MOINS_UN('GROUP_MA','MAILLE'),
2522                    PRESENT_ABSENT('GROUP_MA','MAILLE'),),
2523            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2524            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2525            IMPE            =SIMP(statut='o',typ=(fonction,formule) ),
2526          ),
2527          ONDE_PLANE      =FACT(statut='f',max='**',
2528            DIRECTION       =SIMP(statut='o',typ='R',max='**'),
2529            TYPE_ONDE       =SIMP(statut='o',typ='TXM' ),
2530            FONC_SIGNAL     =SIMP(statut='o',typ=(fonction,formule) ),
2531            DIST_ORIG       =SIMP(statut='o',typ='R' ),
2532          ),
2533
2534
2535
2536          FLUX_THM_REP    =FACT(statut='f',max='**',
2537            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
2538                    PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),
2539                    AU_MOINS_UN('FLUN','FLUN_HYDR1','FLUN_HYDR2'),),
2540            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2541            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2542            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2543            FLUN            =SIMP(statut='f',typ=(fonction,formule) ),
2544            FLUN_HYDR1      =SIMP(statut='f',typ=(fonction,formule) ),
2545            FLUN_HYDR2      =SIMP(statut='f',typ=(fonction,formule) ),
2546          ),
2547
2548          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
2549 )  ;
2550
2551
2552
2553 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
2554 #            CONFIGURATION MANAGEMENT OF EDF VERSION
2555 # ======================================================================
2556 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
2557 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
2558 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
2559 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
2560 # (AT YOUR OPTION) ANY LATER VERSION.                                 
2561 #
2562 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
2563 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
2564 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
2565 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
2566 #
2567 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
2568 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
2569 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
2570 # ======================================================================
2571 AFFE_CHAR_OPS011=OPER(nom="AFFE_CHAR_OPS011",op= 190,sd_prod=char_ther,
2572                       fr=" ",
2573                       docu="",reentrant='n',
2574             UIinfo={"groupes":("Outils métier",)},
2575          regles=(AU_MOINS_UN('CARA_TORSION', ),),
2576          MODELE          =SIMP(statut='o',typ=modele ),
2577          VERI_DDL        =SIMP(statut='f',typ='TXM',defaut="OUI",
2578                                into=("OUI","NON") ),
2579          CARA_TORSION    =FACT(statut='f',max='**',
2580            regles=(UN_PARMI('TOUT','GROUP_MA'),),
2581            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2582            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2583          ),
2584          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
2585 )  ;
2586
2587 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
2588 #            CONFIGURATION MANAGEMENT OF EDF VERSION
2589 # ======================================================================
2590 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
2591 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
2592 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
2593 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
2594 # (AT YOUR OPTION) ANY LATER VERSION.                                 
2595 #
2596 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
2597 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
2598 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
2599 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
2600 #
2601 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
2602 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
2603 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
2604 # ======================================================================
2605 AFFE_CHAR_THER=OPER(nom="AFFE_CHAR_THER",op=34,sd_prod=char_ther
2606                     ,fr="Affectation de charges et conditions aux limites thermiques constantes",
2607                     docu="U4.44.02-g",reentrant='n',
2608             UIinfo={"groupes":("Modélisation",)},
2609       regles=(AU_MOINS_UN('TEMP_IMPO','SOURCE','FLUX_REP','ECHANGE',
2610                           'ECHANGE_PAROI','GRAD_TEMP_INIT','LIAISON_DDL','LIAISON_GROUP',
2611                           'LIAISON_UNIF','LIAISON_CHAMNO','RAYONNEMENT','LIAISON_MAIL' ),),
2612          VERI_DDL        =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="OUI"),
2613          MODELE          =SIMP(statut='o',typ=(modele) ),
2614
2615          TEMP_IMPO       =FACT(statut='f',max='**',
2616            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'),
2617                    AU_MOINS_UN('TEMP_SUP','TEMP','TEMP_INF'),),
2618            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2619            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2620            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2621            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
2622            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
2623            TEMP            =SIMP(statut='f',typ='R'),
2624            TEMP_INF        =SIMP(statut='f',typ='R'),
2625            TEMP_SUP        =SIMP(statut='f',typ='R'), ),
2626
2627          FLUX_REP        =FACT(statut='f',max='**',
2628            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
2629                    PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),
2630                    PRESENT_PRESENT('CARA_TORSION','GROUP_MA'),
2631                    AU_MOINS_UN('FLUN','FLUN_INF','FLUN_SUP','CARA_TORSION') ),
2632            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2633            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2634            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2635            FLUN            =SIMP(statut='f',typ='R'),
2636            FLUN_INF        =SIMP(statut='f',typ='R'),
2637            FLUN_SUP        =SIMP(statut='f',typ='R'),
2638            CARA_TORSION    =SIMP(statut='f',typ=tabl_aire_int ),
2639          ),
2640         
2641
2642          RAYONNEMENT     =FACT(statut='f',max='**',
2643            fr="Attention, exprimer les températures en Celsius si rayonnement",
2644            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
2645                    PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),),
2646            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2647            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2648            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2649            SIGMA           =SIMP(statut='o',typ='R'),
2650            EPSILON         =SIMP(statut='o',typ='R'),
2651            TEMP_EXT        =SIMP(statut='o',typ='R'),
2652          ),
2653          
2654          ECHANGE         =FACT(statut='f',max='**',
2655            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
2656                    PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),
2657                    AU_MOINS_UN('COEF_H','COEF_H_INF','COEF_H_SUP'),
2658                    ENSEMBLE('COEF_H','TEMP_EXT',),
2659                    ENSEMBLE('COEF_H_INF','TEMP_EXT_INF'),
2660                              ENSEMBLE('COEF_H_SUP','TEMP_EXT_SUP'),),
2661            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2662            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2663            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2664            COEF_H          =SIMP(statut='f',typ='R'),
2665            TEMP_EXT        =SIMP(statut='f',typ='R'),
2666            COEF_H_INF      =SIMP(statut='f',typ='R'),
2667            TEMP_EXT_INF    =SIMP(statut='f',typ='R'),
2668            COEF_H_SUP      =SIMP(statut='f',typ='R'),
2669            TEMP_EXT_SUP    =SIMP(statut='f',typ='R'),
2670          ),         
2671          
2672          SOURCE          =FACT(statut='f',max='**',
2673            regles=(UN_PARMI('SOUR','SOUR_CALCULEE',),
2674                    PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),
2675                    PRESENT_ABSENT('SOUR_CALCULEE','TOUT','GROUP_MA','MAILLE'),),
2676            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2677            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2678            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2679            SOUR            =SIMP(statut='f',typ='R'),
2680            SOUR_CALCULEE   =SIMP(statut='f',typ=(cham_elem_sour_r) ),
2681          ),
2682          
2683          GRAD_TEMP_INIT  =FACT(statut='f',max='**',
2684            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
2685                    PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),
2686                    AU_MOINS_UN('FLUX_X','FLUX_Y','FLUX_Z'),),
2687            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2688            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2689            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2690            FLUX_X          =SIMP(statut='f',typ='R' ),
2691            FLUX_Y          =SIMP(statut='f',typ='R' ),
2692            FLUX_Z          =SIMP(statut='f',typ='R' ),
2693                          ),
2694                          
2695          LIAISON_DDL     =FACT(statut='f',max='**',
2696            regles=(UN_PARMI('GROUP_NO','NOEUD', ),),
2697            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
2698            NOEUD           =SIMP(statut='f',typ=no  ,max='**'),
2699            DDL             =SIMP(statut='f',typ='TXM',max='**',
2700                                  into=("TEMP","TEMP_INF","TEMP_SUP") ),
2701            COEF_MULT       =SIMP(statut='o',typ='R',max='**'),
2702            COEF_IMPO       =SIMP(statut='o',typ='R' ),
2703          ),
2704          
2705          LIAISON_GROUP   =FACT(statut='f',max='**',
2706            regles=(UN_PARMI('GROUP_MA_1','MAILLE_1','GROUP_NO_1','NOEUD_1'),
2707                    UN_PARMI('GROUP_MA_2','MAILLE_2','GROUP_NO_2','NOEUD_2'),
2708                              EXCLUS('GROUP_MA_1','GROUP_NO_2'),
2709                              EXCLUS('GROUP_MA_1','NOEUD_2'),
2710                    EXCLUS('GROUP_NO_1','GROUP_MA_2'),
2711                              EXCLUS('GROUP_NO_1','MAILLE_2'),
2712                              EXCLUS('MAILLE_1','GROUP_NO_2'),
2713                              EXCLUS('MAILLE_1','NOEUD_2'),
2714                              EXCLUS('NOEUD_1','GROUP_MA_2'),
2715                              EXCLUS('NOEUD_1','MAILLE_2'),
2716                              EXCLUS('SANS_NOEUD','SANS_GROUP_NO'),),
2717            GROUP_MA_1      =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2718            MAILLE_1        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2719            GROUP_NO_1      =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
2720            NOEUD_1         =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
2721            GROUP_MA_2      =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2722            MAILLE_2        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2723            GROUP_NO_2      =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
2724            NOEUD_2         =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
2725            SANS_NOEUD      =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
2726            SANS_GROUP_NO   =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
2727            DDL_1           =SIMP(statut='f',typ='TXM',max='**',defaut="TEMP",
2728                                  into=("TEMP","TEMP_INF","TEMP_SUP") ),
2729            COEF_MULT_1     =SIMP(statut='o',typ='R',max='**'),
2730            DDL_2           =SIMP(statut='f',typ='TXM',max='**',defaut="TEMP",
2731                                  into=("TEMP","TEMP_INF","TEMP_SUP",) ),
2732            COEF_MULT_2     =SIMP(statut='o',typ='R',max='**'),
2733            COEF_IMPO       =SIMP(statut='o',typ='R' ),
2734            SOMMET          =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2735            TRAN            =SIMP(statut='f',typ='R',max='**'),
2736            ANGL_NAUT       =SIMP(statut='f',typ='R',max='**'),
2737            CENTRE          =SIMP(statut='f',typ='R',max='**'),
2738          ),
2739
2740          LIAISON_MAIL    =FACT(statut='f',max='**',
2741            regles=(AU_MOINS_UN('GROUP_MA_MAIT','MAILLE_MAIT'),
2742                    AU_MOINS_UN('GROUP_MA_ESCL','MAILLE_ESCL','GROUP_NO_ESCL',
2743                                'NOEUD_ESCL'),),
2744            GROUP_MA_MAIT   =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2745            MAILLE_MAIT     =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2746            GROUP_MA_ESCL   =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2747            MAILLE_ESCL     =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2748            GROUP_NO_ESCL   =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
2749            NOEUD_ESCL      =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
2750            TRAN            =SIMP(statut='f',typ='R',max='**' ),
2751            ANGL_NAUT       =SIMP(statut='f',typ='R',max='**' ),
2752            CENTRE          =SIMP(statut='f',typ='R',max='**' ),
2753          ),      
2754          
2755          ECHANGE_PAROI   =FACT(statut='f',max='**',
2756            regles=(UN_PARMI('GROUP_MA_1','MAILLE_1'),
2757                    UN_PARMI('GROUP_MA_2','MAILLE_2'),),
2758            GROUP_MA_1      =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2759            MAILLE_1        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2760            GROUP_MA_2      =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2761            MAILLE_2        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2762            COEF_H          =SIMP(statut='f',typ='R'),
2763            TRAN            =SIMP(statut='f',typ='R',min=2,max=3),
2764            ANGL_NAUT       =SIMP(statut='f',typ='R',max=3),
2765            CENTRE          =SIMP(statut='f',typ='R',min=2,max=3),
2766                          ),
2767
2768          LIAISON_UNIF    =FACT(statut='f',max='**',
2769            regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),),
2770            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
2771            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
2772            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2773            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2774            DDL             =SIMP(statut='f',typ='TXM',max='**',defaut="TEMP",
2775                                  into=("TEMP","TEMP_INF","TEMP_SUP") ),
2776          ),
2777
2778          LIAISON_CHAMNO  =FACT(statut='f',max='**',
2779            CHAM_NO         =SIMP(statut='o',typ=cham_no),# CO()# "il faut definir une structure de donnee generique chamno"
2780            COEF_IMPO       =SIMP(statut='o',typ='R' ),
2781            NUME_LAGR       =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES") ),
2782          ),
2783
2784          CONVECTION      =FACT(statut='f',max='**',
2785            VITESSE         =SIMP(statut='o',typ=(cham_no_depl_r) ),
2786          ),
2787
2788
2789          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
2790 )  ;
2791
2792 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
2793 #            CONFIGURATION MANAGEMENT OF EDF VERSION
2794 # ======================================================================
2795 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
2796 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
2797 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
2798 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
2799 # (AT YOUR OPTION) ANY LATER VERSION.                                 
2800 #
2801 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
2802 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
2803 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
2804 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
2805 #
2806 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
2807 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
2808 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
2809 # ======================================================================
2810 AFFE_CHAR_THER_F=OPER(nom="AFFE_CHAR_THER_F",op=33,sd_prod=char_ther,
2811                      fr="Affectation de charges et conditions aux limites thermiques fonction dune grandeur (temps, ...)",
2812                      docu="U4.44.02-g",reentrant='n',
2813             UIinfo={"groupes":("Modélisation",)},
2814       regles=(AU_MOINS_UN('TEMP_IMPO','SOURCE','FLUX_REP','FLUX_NL','ECHANGE',
2815                           'ECHANGE_PAROI','LIAISON_DDL','LIAISON_GROUP','LIAISON_UNIF',
2816                           'GRAD_TEMP_INIT','RAYONNEMENT'),),
2817          VERI_DDL        =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
2818          MODELE          =SIMP(statut='o',typ=(modele) ),
2819
2820          TEMP_IMPO       =FACT(statut='f',max='**',
2821            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'),
2822                    AU_MOINS_UN('TEMP_SUP','TEMP','TEMP_INF','EVOL_THER'),
2823                    PRESENT_ABSENT('EVOL_THER','TEMP','TEMP_INF','TEMP_SUP'),),
2824            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2825            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2826            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2827            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
2828            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
2829            EVOL_THER       =SIMP(statut='f',typ=(evol_ther) ),
2830            DDL             =SIMP(statut='f',typ='TXM',into=("TEMP",) ),
2831            TEMP            =SIMP(statut='f',typ=(fonction,formule) ),
2832            TEMP_INF        =SIMP(statut='f',typ=(fonction,formule) ),
2833            TEMP_SUP        =SIMP(statut='f',typ=(fonction,formule) ),
2834          ),
2835          
2836          FLUX_REP        =FACT(statut='f',max='**',
2837            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
2838                    PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),
2839                    AU_MOINS_UN('FLUN','FLUN_INF','FLUN_SUP','FLUX_X','FLUX_Y','FLUX_Z'),),
2840            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2841            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2842            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2843            FLUN            =SIMP(statut='f',typ=(fonction,formule) ),
2844            FLUN_INF        =SIMP(statut='f',typ=(fonction,formule) ),
2845            FLUN_SUP        =SIMP(statut='f',typ=(fonction,formule) ),
2846            FLUX_X          =SIMP(statut='f',typ=(fonction,formule) ),
2847            FLUX_Y          =SIMP(statut='f',typ=(fonction,formule) ),
2848            FLUX_Z          =SIMP(statut='f',typ=(fonction,formule) ),
2849          ),
2850
2851          FLUX_NL         =FACT(statut='f',max='**',
2852            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
2853                    PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),),
2854            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2855            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2856            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2857            FLUN            =SIMP(statut='o',typ=(fonction,formule) ),
2858          ), 
2859          
2860
2861          RAYONNEMENT     =FACT(statut='f',max='**',
2862            fr="Attention, exprimer les températures en Celsius si rayonnement",
2863            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
2864                    PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),),
2865            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2866            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2867            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2868            SIGMA           =SIMP(statut='o',typ=(fonction,formule) ),
2869            EPSILON         =SIMP(statut='o',typ=(fonction,formule) ),
2870            TEMP_EXT        =SIMP(statut='o',typ=(fonction,formule) ),
2871          ),
2872          
2873
2874
2875          ECHANGE         =FACT(statut='f',max='**',
2876            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
2877                    PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),
2878                    AU_MOINS_UN('COEF_H','COEF_H_INF','COEF_H_SUP'),
2879                    ENSEMBLE('COEF_H','TEMP_EXT'),
2880                    ENSEMBLE('COEF_H_INF','TEMP_EXT_INF'),
2881                    ENSEMBLE('COEF_H_SUP','TEMP_EXT_SUP'),),
2882            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2883            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2884            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2885            COEF_H          =SIMP(statut='f',typ=(fonction,formule) ),
2886            TEMP_EXT        =SIMP(statut='f',typ=(fonction,formule) ),
2887            COEF_H_INF      =SIMP(statut='f',typ=(fonction,formule) ),
2888            TEMP_EXT_INF    =SIMP(statut='f',typ=(fonction,formule) ),
2889            COEF_H_SUP      =SIMP(statut='f',typ=(fonction,formule) ),
2890            TEMP_EXT_SUP    =SIMP(statut='f',typ=(fonction,formule) ),
2891          ),
2892          
2893
2894          SOURCE          =FACT(statut='f',max='**',
2895            regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),),
2896            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2897            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2898            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2899            SOUR            =SIMP(statut='o',typ=(fonction,formule) ),
2900          ),
2901          
2902          GRAD_TEMP_INIT  =FACT(statut='f',max='**',
2903            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),
2904                    PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),
2905                    AU_MOINS_UN('FLUX_X','FLUX_Y','FLUX_Z'),),
2906            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2907            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2908            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2909            FLUX_X          =SIMP(statut='f',typ=(fonction,formule) ),
2910            FLUX_Y          =SIMP(statut='f',typ=(fonction,formule) ),
2911            FLUX_Z          =SIMP(statut='f',typ=(fonction,formule) ),
2912          ),
2913          
2914          ECHANGE_PAROI   =FACT(statut='f',max='**',
2915            regles=(UN_PARMI('GROUP_MA_1','MAILLE_1'),
2916                         UN_PARMI('GROUP_MA_2','MAILLE_2'),),
2917            GROUP_MA_1      =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2918            MAILLE_1        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2919            GROUP_MA_2      =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2920            MAILLE_2        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2921            COEF_H          =SIMP(statut='o',typ=(fonction,formule) ),
2922            TRAN            =SIMP(statut='f',typ='R',min=2,max=3),
2923            ANGL_NAUT       =SIMP(statut='f',typ='R',max=3),
2924            CENTRE          =SIMP(statut='f',typ='R',min=2,max=3),
2925          ),
2926
2927         LIAISON_DDL     =FACT(statut='f',max='**',
2928            regles=(UN_PARMI('GROUP_NO','NOEUD'),),
2929            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
2930            NOEUD           =SIMP(statut='f',typ=no  ,max='**'),
2931            DDL             =SIMP(statut='f',typ='TXM',max='**',into=("TEMP","TEMP_INF","TEMP_SUP") ),
2932            COEF_MULT       =SIMP(statut='o',typ='R',max='**'),
2933            COEF_IMPO       =SIMP(statut='o',typ=(fonction,formule) ),
2934          ),
2935
2936          LIAISON_GROUP   =FACT(statut='f',max='**',
2937            regles=(UN_PARMI('GROUP_MA_1','MAILLE_1','GROUP_NO_1','NOEUD_1'),
2938                    UN_PARMI('GROUP_MA_2','MAILLE_2','GROUP_NO_2','NOEUD_2'),
2939                              EXCLUS('GROUP_MA_1','GROUP_NO_2'),
2940                         EXCLUS('GROUP_MA_1','NOEUD_2'),
2941                    EXCLUS('GROUP_NO_1','GROUP_MA_2'),
2942                         EXCLUS('GROUP_NO_1','MAILLE_2'),
2943                         EXCLUS('MAILLE_1','GROUP_NO_2'),
2944                         EXCLUS('MAILLE_1','NOEUD_2'),
2945                         EXCLUS('NOEUD_1','GROUP_MA_2'),
2946                         EXCLUS('NOEUD_1','MAILLE_2'),
2947                         EXCLUS('SANS_NOEUD','SANS_GROUP_NO'),),
2948            GROUP_MA_1      =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2949            MAILLE_1        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2950            GROUP_NO_1      =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
2951            NOEUD_1         =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
2952            GROUP_MA_2      =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2953            MAILLE_2        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2954            GROUP_NO_2      =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
2955            NOEUD_2         =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
2956            SANS_NOEUD      =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
2957            SANS_GROUP_NO   =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
2958            DDL_1           =SIMP(statut='f',typ='TXM',max='**',defaut="TEMP",
2959                                  into=("TEMP","TEMP_INF","TEMP_SUP") ),
2960            COEF_MULT_1     =SIMP(statut='o',typ='R',max='**'),
2961            DDL_2           =SIMP(statut='f',typ='TXM',max='**',defaut="TEMP",
2962                                  into=("TEMP","TEMP_INF","TEMP_SUP") ),
2963            COEF_MULT_2     =SIMP(statut='o',typ='R',max='**'),
2964            COEF_IMPO       =SIMP(statut='o',typ=(fonction,formule) ),
2965            SOMMET          =SIMP(statut='f',typ='TXM',into=("OUI",) ),
2966            TRAN            =SIMP(statut='f',typ='R',max='**'),
2967            ANGL_NAUT       =SIMP(statut='f',typ='R',max='**'),
2968            CENTRE          =SIMP(statut='f',typ='R',max='**'),
2969          ),
2970
2971          LIAISON_UNIF    =FACT(statut='f',max='**',
2972            regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),),
2973            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
2974            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
2975            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
2976            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
2977            DDL             =SIMP(statut='f',typ='TXM',defaut="TEMP",
2978                                  into=("TEMP","TEMP_INF","TEMP_SUP") ),
2979          ),
2980
2981          CONVECTION      =FACT(statut='f',max='**',
2982            VITESSE         =SIMP(statut='o',typ=(cham_no_depl_r) ),
2983          ),
2984
2985          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
2986 )  ;
2987
2988 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
2989 #            CONFIGURATION MANAGEMENT OF EDF VERSION
2990 # ======================================================================
2991 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
2992 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
2993 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
2994 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR
2995 # (AT YOUR OPTION) ANY LATER VERSION.
2996 #
2997 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT
2998 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF
2999 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU
3000 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.
3001 #
3002 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE
3003 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,
3004 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.
3005 # ======================================================================
3006 # RESPONSABLE VABHHTS J.PELLET
3007 AFFE_MATERIAU=OPER(nom="AFFE_MATERIAU",op=6,sd_prod=cham_mater,
3008                    fr="Affectation de caractéristiques de matériaux à un maillage",
3009                          docu="U4.43.03-g",reentrant='n',
3010             UIinfo={"groupes":("Modélisation",)},
3011          MAILLAGE        =SIMP(statut='o',typ=maillage),
3012          MODELE          =SIMP(statut='f',typ=modele),
3013          AFFE            =FACT(statut='o',max='**',
3014            regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),),
3015            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
3016            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
3017            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
3018            MATER           =SIMP(statut='o',typ=mater),
3019            TEMP_REF        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
3020          ),
3021 )  ;
3022
3023 #& MODIF COMMANDE  DATE 29/09/2003   AUTEUR JMBHH01 J.M.PROIX 
3024 #            CONFIGURATION MANAGEMENT OF EDF VERSION
3025 # ======================================================================
3026 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
3027 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
3028 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
3029 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR
3030 # (AT YOUR OPTION) ANY LATER VERSION.
3031 #
3032 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT
3033 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF
3034 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU
3035 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.
3036 #
3037 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE
3038 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,
3039 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.
3040 # ======================================================================
3041 # RESPONSABLE JMBHH01 J.M.PROIX
3042 AFFE_MODELE=OPER(nom="AFFE_MODELE",op=18,sd_prod=modele,docu="U4.41.01-g",
3043             UIinfo={"groupes":("Modélisation",)},
3044                  fr="Affectation des éléments finis sur le maillage",reentrant='n',
3045          regles=(AU_MOINS_UN('AFFE','AFFE_SOUS_STRUC'),),
3046          MAILLAGE        =SIMP(statut='o',typ=(maillage) ),
3047          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
3048          VERIF           =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=2,into=("MAILLE","NOEUD") ),
3049          AFFE_SOUS_STRUC =FACT(statut='f',
3050            regles=(UN_PARMI('TOUT','MAILLE'),),
3051            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
3052            MAILLE          =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'),
3053            PHENOMENE       =SIMP(statut='f',typ='TXM',defaut="MECANIQUE",into=("MECANIQUE",) ),
3054          ),
3055          AFFE            =FACT(statut='f',max='**',
3056            regles=(UN_PARMI('TOUT','GROUP_MA','GROUP_NO','MAILLE','NOEUD'),),
3057            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
3058            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
3059            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
3060            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
3061            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
3062            PHENOMENE       =SIMP(statut='o',typ='TXM',
3063                                  into=("MECANIQUE","THERMIQUE","ACOUSTIQUE") ),
3064                 b_mecanique     =BLOC( condition = "PHENOMENE=='MECANIQUE'",
3065                                         fr="modelisations mécaniques",
3066                     MODELISATION    =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=(
3067                                                                       "2D_DIS_T",
3068                                                                       "2D_DIS_TR",
3069                                                                       "2D_FLUI_ABSO",
3070                                                                       "2D_FLUI_PESA",
3071                                                                       "2D_FLUI_STRU",
3072                                                                       "2D_FLUIDE",
3073                                                                       "3D",
3074                                                                       "3D_ABSO",
3075                                                                       "3D_FAISCEAU",
3076                                                                       "3D_FLUI_ABSO",
3077                                                                       "3D_FLUIDE",
3078                                                                       "3D_HHM" ,
3079                                                                       "3D_HM",
3080                                                                       "3D_INCO",
3081                                                                       "3D_JOINT_CT",
3082                                                                       "3D_SI",
3083                                                                       "3D_THH",
3084                                                                       "3D_THHM",
3085                                                                       "3D_THM",
3086                                                                       "3D_GRAD_EPSI",
3087                                                                       "3D_GRAD_VARI",
3088                                                                       "APPUI_REP",
3089                                                                       "ASSE_GRIL",
3090                                                                       "AXIS",
3091                                                                       "AXIS_FLUI_STRU",
3092                                                                       "AXIS_FLUIDE",
3093                                                                       "AXIS_FOURIER",
3094                                                                       "AXIS_HHM",
3095                                                                       "AXIS_HM",
3096                                                                       "AXIS_INCO",
3097                                                                       "AXIS_SI",
3098                                                                       "AXIS_THH",
3099                                                                       "AXIS_THHM",
3100                                                                       "AXIS_THM",
3101                                                                       "AXIS_GRAD_VARI",
3102                                                                       "AXIS_FISSURE",
3103                                                                       "BARRE",
3104                                                                       "2D_BARRE",
3105                                                                       "C_PLAN",
3106                                                                       "C_PLAN_SI",
3107                                                                       "C_PLAN_GRAD_EPSI",
3108                                                                       "C_PLAN_GRAD_VARI",
3109                                                                       "CABLE",
3110                                                                       "CABLE_POULIE",
3111                                                                       "COQUE_3D",
3112                                                                       "COQUE_AXIS",
3113                                                                       "COQUE_C_PLAN",
3114                                                                       "COQUE_D_PLAN",
3115                                                                       "D_PLAN",
3116                                                                       "D_PLAN_GRAD_EPSI",
3117                                                                       "D_PLAN_GRAD_VARI",
3118                                                                       "PLAN_FISSURE",
3119                                                                       "D_PLAN_ABSO",
3120                                                                       "D_PLAN_HHM",
3121                                                                       "D_PLAN_HM",
3122                                                                       "D_PLAN_INCO",
3123                                                                       "D_PLAN_SI",
3124                                                                       "D_PLAN_THH",
3125                                                                       "D_PLAN_THHM",
3126                                                                       "D_PLAN_THM",
3127                                                                        "3D_HHMD",
3128                                                                        "3D_HMD",
3129                                                                        "3D_THHD",
3130                                                                        "3D_THVD",
3131                                                                        "3D_THHMD",
3132                                                                        "3D_THMD",
3133                                                                        "AXIS_HHMD",
3134                                                                        "AXIS_HMD",
3135                                                                        "AXIS_THHD",
3136                                                                        "AXIS_THVD",
3137                                                                        "AXIS_THHMD",
3138                                                                        "AXIS_THMD",
3139                                                                        "D_PLAN_HHMD",
3140                                                                        "D_PLAN_HMD",
3141                                                                        "D_PLAN_THHD",
3142                                                                        "D_PLAN_THVD",
3143                                                                        "D_PLAN_THHMD",
3144                                                                        "D_PLAN_THMD",
3145                                                                       "DIS_T",
3146                                                                       "DIS_TR",
3147                                                                       "DKT",
3148                                                                       "DST",
3149                                                                       "FLUI_STRU",
3150                                                                       "GRILLE",
3151                                                                       "POU_C_T",
3152                                                                       "POU_D_E",
3153                                                                       "POU_D_EM",
3154                                                                       "POU_D_T",
3155                                                                       "POU_D_T_GD",
3156                                                                       "POU_D_TG",
3157                                                                       "POU_D_TGM",
3158                                                                       "Q4G",
3159                                                                       "TUYAU_3M",
3160                                                                       "TUYAU_6M",
3161                                                                       "SHB8"
3162                                                                      )  )  ),
3163
3164                 b_thermique     =BLOC( condition = "PHENOMENE=='THERMIQUE'",
3165                                         fr="modelisations thermiques",
3166                     MODELISATION    =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=(
3167                                                                       "3D",
3168                                                                       "3D_DIAG",
3169                                                                       "AXIS",
3170                                                                       "AXIS_DIAG",
3171                                                                       "AXIS_FOURIER",
3172                                                                       "COQUE",
3173                                                                       "COQUE_AXIS",
3174                                                                       "COQUE_PLAN",
3175                                                                       "PLAN",
3176                                                                       "PLAN_DIAG",
3177                                                                       ),),),
3178
3179                 b_acoustique    =BLOC( condition = "PHENOMENE=='ACOUSTIQUE'",
3180                                         fr="modelisations acoustiques",
3181                      MODELISATION    =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=(
3182                                                                        "3D",
3183                                                                        "PLAN"
3184                                                                        ), ),),
3185
3186          ),
3187 ) ;
3188
3189 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
3190 #            CONFIGURATION MANAGEMENT OF EDF VERSION
3191 # ======================================================================
3192 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
3193 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
3194 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
3195 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
3196 # (AT YOUR OPTION) ANY LATER VERSION.                                 
3197 #
3198 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
3199 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
3200 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
3201 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
3202 #
3203 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
3204 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
3205 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
3206 # ======================================================================
3207 AIDE=PROC(nom="AIDE",op=42,docu="U4.02.01-g",
3208        UIinfo={"groupes":("Modélisation",)},
3209        fr="Interrogation sur le catalogue des commandes et les concepts produits",
3210        regles=(AU_MOINS_UN('CONCEPT','TYPE_ELEM', ),),
3211        FICHIER     =SIMP(statut='f',typ='TXM',defaut="RESULTAT"),
3212        TYPE_ELEM   =FACT(fr="couple type_elem option",statut='f',
3213          INITEL       =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ),
3214                         ),
3215        CONCEPT     =FACT(statut='f',max='**',
3216          NOM          =SIMP(fr="liste des noms de concept",statut='f',typ='TXM',validators=NoRepeat(),max='**',defaut="*"),
3217          OPTION       =SIMP(fr="option d'édition de concept",statut='f',typ='TXM',defaut="TOUT_TYPE",
3218                                  into=("TOUT_TYPE","CREER","A_CREER",) ),
3219          ),
3220 ) ;
3221
3222 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
3223 #            CONFIGURATION MANAGEMENT OF EDF VERSION
3224 # ======================================================================
3225 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
3226 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
3227 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
3228 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
3229 # (AT YOUR OPTION) ANY LATER VERSION.                                 
3230 #
3231 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
3232 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
3233 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
3234 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
3235 #
3236 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
3237 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
3238 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
3239 # ======================================================================
3240 # RESPONSABLE VABHHTS J.PELLET
3241 ASSE_MAILLAGE=OPER(nom="ASSE_MAILLAGE",op= 105,sd_prod=maillage,
3242                    fr="Assembler deux maillages sous un seul nom",
3243                    docu="U4.23.03-f",reentrant='n',
3244             UIinfo={"groupes":("Maillage",)},
3245          MAILLAGE        =SIMP(statut='o',typ=maillage,min=2,validators=NoRepeat(),max=2 ),
3246 )  ;
3247
3248 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
3249 #            CONFIGURATION MANAGEMENT OF EDF VERSION
3250 # ======================================================================
3251 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
3252 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
3253 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
3254 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
3255 # (AT YOUR OPTION) ANY LATER VERSION.                                 
3256 #
3257 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
3258 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
3259 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
3260 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
3261 #
3262 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
3263 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
3264 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
3265 # ======================================================================
3266 ASSE_MATR_GENE=OPER(nom="ASSE_MATR_GENE",op= 128,sd_prod=matr_asse_gene_r,
3267                     fr="Assemblage des matrices généralisées de macro éléments pour construction de la matrice globale généralisée",
3268                     docu="U4.65.04-e",reentrant='n',
3269             UIinfo={"groupes":("Matrices/vecteurs",)},
3270          NUME_DDL_GENE   =SIMP(statut='o',typ=nume_ddl_gene ),
3271          OPTION          =SIMP(statut='o',typ='TXM',into=("RIGI_GENE","MASS_GENE","AMOR_GENE") ),
3272 )  ;
3273
3274 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
3275 #            CONFIGURATION MANAGEMENT OF EDF VERSION
3276 # ======================================================================
3277 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
3278 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
3279 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
3280 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
3281 # (AT YOUR OPTION) ANY LATER VERSION.                                 
3282 #
3283 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
3284 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
3285 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
3286 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
3287 #
3288 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
3289 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
3290 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
3291 # ======================================================================
3292 # RESPONSABLE VABHHTS J.PELLET
3293 def asse_matrice_prod(MATR_ELEM,**args):
3294   if AsType(MATR_ELEM) == matr_elem_depl_r : return matr_asse_depl_r
3295   if AsType(MATR_ELEM) == matr_elem_depl_c : return matr_asse_depl_c
3296   if AsType(MATR_ELEM) == matr_elem_temp_r : return matr_asse_temp_r
3297   if AsType(MATR_ELEM) == matr_elem_pres_c : return matr_asse_pres_c
3298   raise AsException("type de concept resultat non prevu")
3299
3300 ASSE_MATRICE=OPER(nom="ASSE_MATRICE",op=12,sd_prod=asse_matrice_prod,
3301                   fr="Construction d une matrice assemblée",docu="U4.61.22-g",reentrant='n',
3302             UIinfo={"groupes":("Matrices/vecteurs",)},
3303          MATR_ELEM       =SIMP(statut='o',
3304                                typ=(matr_elem_depl_r,matr_elem_depl_c,matr_elem_temp_r,matr_elem_pres_c) ),
3305          NUME_DDL        =SIMP(statut='o',typ=nume_ddl),
3306          CHAR_CINE       =SIMP(statut='f',typ=(char_cine_meca,char_cine_ther,char_cine_acou) ),
3307          INFO            =SIMP(statut='f',typ='I',into=(1,2) ),
3308 )  ;
3309
3310 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
3311 #            CONFIGURATION MANAGEMENT OF EDF VERSION
3312 # ======================================================================
3313 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
3314 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
3315 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
3316 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
3317 # (AT YOUR OPTION) ANY LATER VERSION.                                 
3318 #
3319 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
3320 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
3321 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
3322 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
3323 #
3324 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
3325 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
3326 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
3327 # ======================================================================
3328 ASSE_VECT_GENE=OPER(nom="ASSE_VECT_GENE",op= 140,sd_prod=vect_asse_gene,
3329                     fr="Assemblage de vecteurs de chargement en coordonnées généralisées",
3330                     docu="U4.65.05-e",reentrant='n',
3331             UIinfo={"groupes":("Matrices/vecteurs",)},
3332          NUME_DDL_GENE   =SIMP(statut='o',typ=nume_ddl_gene ),
3333          CHAR_SOUS_STRUC =FACT(statut='o',max='**',
3334            SOUS_STRUC      =SIMP(statut='o',typ='TXM' ),
3335            VECT_ASSE       =SIMP(statut='o',typ=cham_no_depl_r ),
3336          ),
3337 )  ;
3338
3339 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
3340 #            CONFIGURATION MANAGEMENT OF EDF VERSION
3341 # ======================================================================
3342 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
3343 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
3344 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
3345 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
3346 # (AT YOUR OPTION) ANY LATER VERSION.                                 
3347 #
3348 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
3349 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
3350 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
3351 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
3352 #
3353 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
3354 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
3355 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
3356 # ======================================================================
3357 # RESPONSABLE VABHHTS J.PELLET
3358 def asse_vecteur_prod(VECT_ELEM,**args):
3359   if AsType(VECT_ELEM) == vect_elem_depl_r : return cham_no_depl_r
3360   if AsType(VECT_ELEM) == vect_elem_temp_r : return cham_no_temp_r
3361   if AsType(VECT_ELEM) == vect_elem_pres_r : return cham_no_pres_r
3362   if AsType(VECT_ELEM) == vect_elem_pres_c : return cham_no_pres_c
3363   raise AsException("type de concept resultat non prevu ")
3364
3365 ASSE_VECTEUR=OPER(nom="ASSE_VECTEUR",op=13,sd_prod=asse_vecteur_prod,
3366                   fr="Assemblage d un second membre",docu="U4.61.23-g",reentrant='n',
3367             UIinfo={"groupes":("Matrices/vecteurs",)},
3368          VECT_ELEM       =SIMP(statut='o',typ=vect_elem,max='**'),
3369          NUME_DDL        =SIMP(statut='o',typ=nume_ddl ),
3370          INFO            =SIMP(statut='f',typ='I',into=(1,2,) ),
3371 )  ;
3372
3373 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
3374 #            CONFIGURATION MANAGEMENT OF EDF VERSION
3375 # ======================================================================
3376 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
3377 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
3378 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
3379 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
3380 # (AT YOUR OPTION) ANY LATER VERSION.                                 
3381 #
3382 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
3383 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
3384 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
3385 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
3386 #
3387 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
3388 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
3389 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
3390 # ======================================================================
3391 CALC_AMOR_MODAL=OPER(nom="CALC_AMOR_MODAL",op= 172,sd_prod=listr8,
3392                      fr="Création d'une liste d'amortissements modaux calculés selon la règle du RCC-G",
3393                      docu="U4.52.13-d",reentrant='n',
3394             UIinfo={"groupes":("Résolution",)},
3395          ENER_SOL        =FACT(statut='o',
3396            regles=(UN_PARMI('GROUP_NO_RADIER','GROUP_MA_RADIER'),
3397                    PRESENT_ABSENT('COEF_GROUP','FONC_GROUP'),
3398 #  Peut-on remplacer les deux règles suivantes par un ENSEMBLE_('KRX','KRY','KRZ')
3399                    PRESENT_PRESENT('KRX','KRY'),
3400                    PRESENT_PRESENT('KRX','KRZ'),
3401                    PRESENT_ABSENT('COOR_CENTRE','NOEUD_CENTRE'),
3402                    PRESENT_ABSENT('GROUP_NO_CENTRE','NOEUD_CENTRE'),
3403                    PRESENT_ABSENT('GROUP_NO_CENTRE','COOR_CENTRE'),),
3404            METHODE         =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL","RIGI_PARASOL") ),
3405            MODE_MECA       =SIMP(statut='o',typ=mode_meca ),
3406            GROUP_NO_RADIER =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
3407            GROUP_MA_RADIER =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
3408            FONC_GROUP      =SIMP(statut='f',typ=(fonction,formule) ),
3409            COEF_GROUP      =SIMP(statut='f',typ='R',max='**'),
3410            KX              =SIMP(statut='o',typ='R' ),
3411            KY              =SIMP(statut='o',typ='R' ),
3412            KZ              =SIMP(statut='o',typ='R' ),
3413            KRX             =SIMP(statut='f',typ='R' ),
3414            KRY             =SIMP(statut='f',typ='R' ),
3415            KRZ             =SIMP(statut='f',typ='R' ),
3416            GROUP_NO_CENTRE =SIMP(statut='f',typ=grno),
3417            NOEUD_CENTRE    =SIMP(statut='f',typ=no),
3418            COOR_CENTRE     =SIMP(statut='f',typ='R',max=3),
3419          ),
3420          AMOR_INTERNE    =FACT(statut='o',
3421            ENER_POT        =SIMP(statut='o',typ=tabl_ener_pot ),
3422            GROUP_MA        =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'),
3423            AMOR_REDUIT     =SIMP(statut='o',typ='R',max='**'),
3424          ),
3425          AMOR_SOL        =FACT(statut='o',
3426            AMOR_REDUIT     =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
3427            FONC_AMOR_GEO   =SIMP(statut='o',typ=(fonction,formule),max='**' ),
3428            HOMOGENE        =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
3429            SEUIL           =SIMP(statut='f',typ='R',defaut= 0.3 ),
3430          ),
3431 )  ;
3432
3433 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
3434 #            CONFIGURATION MANAGEMENT OF EDF VERSION
3435 # ======================================================================
3436 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
3437 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
3438 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
3439 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
3440 # (AT YOUR OPTION) ANY LATER VERSION.                                 
3441 #
3442 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
3443 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
3444 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
3445 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
3446 #
3447 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
3448 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
3449 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
3450 # ======================================================================
3451 # RESPONSABLE JMBHH01 J.M.PROIX
3452 def calc_cham_elem_prod(OPTION,**args):
3453
3454 # options mecaniques
3455   if OPTION == "DEGE_ELNO_DEPL" : return cham_elem_epsi_r
3456   if OPTION == "ECIN_ELEM_DEPL" : return cham_elem_ener_r
3457   if OPTION == "EFGE_ELNO_CART" : return cham_elem_sief_r
3458   if OPTION == "EFGE_ELNO_DEPL" : return cham_elem_sief_r
3459   if OPTION == "ENDO_ELNO_SIGM" : return cham_elem_sief_r
3460   if OPTION == "EPOT_ELEM_DEPL" : return cham_elem_ener_r
3461   if OPTION == "ENEL_ELGA" :      return cham_elem_ener_r
3462   if OPTION == "ENEL_ELNO_ELGA" : return cham_elem_ener_r
3463   if OPTION == "EPSI_ELNO_DEPL" : return cham_elem_epsi_r
3464   if OPTION == "EQUI_ELGA_EPSI" : return cham_elem_epsi_r
3465   if OPTION == "EQUI_ELGA_SIGM" : return cham_elem_sief_r
3466   if OPTION == "EQUI_ELNO_EPSI" : return cham_elem_epsi_r
3467   if OPTION == "EQUI_ELNO_SIGM" : return cham_elem_sief_r
3468   if OPTION == "PRES_DBEL_DEPL" : return cham_elem_dbel_r
3469   if OPTION == "SIEF_ELGA_DEPL" : return cham_elem_sief_r
3470   if OPTION == "SIEF_ELGA_LAGR" : return cham_elem_sief_r
3471   if OPTION == "SIGM_ELNO_CART" : return cham_elem_sief_r
3472   if OPTION == "SIGM_ELNO_DEPL" : return cham_elem_sief_r
3473   if OPTION == "SIGM_ELNO_LAGR" : return cham_elem_sief_r
3474   if OPTION == "SIPO_ELNO_DEPL" : return cham_elem_sief_r
3475
3476 # options thermiques
3477
3478   if OPTION == "FLUX_ELGA_TEMP" : return cham_elem_flux_r
3479   if OPTION == "FLUX_ELNO_TEMP" : return cham_elem_flux_r
3480   if OPTION == "SOUR_ELGA_ELEC" : return cham_elem_sour_r
3481
3482 # options acoustiques
3483
3484   if OPTION == "PRES_ELNO_DBEL" : return cham_elem_dbel_r
3485   if OPTION == "PRES_ELNO_REEL" : return cham_elem_pres_r
3486   if OPTION == "PRES_ELNO_IMAG" : return cham_elem_pres_r
3487
3488 # autres options
3489
3490   if OPTION == "COOR_ELGA" :      return cham_elem_geom_r
3491
3492   raise AsException("type de concept resultat non prevu")
3493
3494 CALC_CHAM_ELEM=OPER(nom="CALC_CHAM_ELEM",op=38,sd_prod=calc_cham_elem_prod,
3495                     fr="Calcul de champs par éléments à partir de champs solution ou de champs par éléments",
3496                     docu="U4.81.03-g",reentrant='n',
3497             UIinfo={"groupes":("Post traitements",)},
3498          MODELE          =SIMP(statut='o',typ=modele),
3499          CHAM_MATER      =SIMP(statut='o',typ=cham_mater),
3500          CARA_ELEM       =SIMP(statut='f',typ=cara_elem),
3501
3502          regles=(EXCLUS('TOUT','GROUP_MA',),EXCLUS('TOUT','MAILLE',),),
3503          TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
3504          GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
3505          MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
3506
3507 #
3508 #
3509 #  introduire un mot cle de type modelisation : mécanique,thermique,...
3510 #
3511
3512          OPTION          =SIMP(statut='o',typ='TXM',
3513                                into=("DEGE_ELNO_DEPL","ECIN_ELEM_DEPL","EFGE_ELNO_CART",
3514                                      "EFGE_ELNO_DEPL","ENDO_ELNO_SIGM","EPOT_ELEM_DEPL",
3515                                      "ENEL_ELGA",     "ENEL_ELNO_ELGA","EPSI_ELNO_DEPL",
3516                                      "EQUI_ELGA_EPSI","EQUI_ELGA_SIGM","EQUI_ELNO_EPSI",
3517                                      "EQUI_ELNO_SIGM","PRES_DBEL_DEPL","SIEF_ELGA_DEPL",
3518                                      "SIEF_ELGA_LAGR","SIGM_ELNO_CART","SIGM_ELNO_DEPL",
3519                                      "SIGM_ELNO_LAGR","SIPO_ELNO_DEPL",
3520                                      "FLUX_ELGA_TEMP","FLUX_ELNO_TEMP","SOUR_ELGA_ELEC",
3521                                      "PRES_ELNO_DBEL","PRES_ELNO_REEL","PRES_ELNO_IMAG",
3522                                      "COOR_ELGA"), ),
3523
3524          b_dege_elno_depl  =BLOC(condition="OPTION=='DEGE_ELNO_DEPL'",
3525            DEPL            =SIMP(statut='o',typ=(cham_no_depl_r,)),
3526            PLAN            =SIMP(statut='o',typ='TXM',defaut="MAIL", into=("SUP","INF","MOY","MAIL"), ),
3527          ),
3528
3529          b_ecin_elem_depl  =BLOC(condition="OPTION=='ECIN_ELEM_DEPL'",
3530            regles=(UN_PARMI('VITE','DEPL',),ENSEMBLE('DEPL','FREQ',),),
3531            FREQ            =SIMP(statut='f',typ='R'),
3532            VITE            =SIMP(statut='f',typ=cham_no_depl_r),
3533            DEPL            =SIMP(statut='f',typ=(cham_no_depl_r,cham_no_depl_c)),
3534          ),
3535
3536          b_efge_elno_cart  =BLOC(condition="OPTION=='EFGE_ELNO_CART'",
3537            CHAM_ELEM       =SIMP(statut='o',typ=(cham_elem_sief_r,) ),
3538            PLAN            =SIMP(statut='o',typ='TXM',defaut="MAIL", into=("SUP","INF","MOY","MAIL"), ),
3539          ),
3540
3541          b_efge_elno_depl  =BLOC(condition="OPTION=='EFGE_ELNO_DEPL'",
3542            DEPL            =SIMP(statut='o',typ=(cham_no_depl_r,)),
3543            PLAN            =SIMP(statut='o',typ='TXM',defaut="MAIL", into=("SUP","INF","MOY","MAIL"), ),
3544          ),
3545
3546          b_endo_elno_sigm  =BLOC(condition="OPTION=='ENDO_ELNO_SIGM'",
3547            CHAM_ELEM       =SIMP(statut='o',typ=(cham_elem_sief_r,) ),
3548          ),
3549
3550          b_epot_elem_depl  =BLOC(condition="OPTION=='EPOT_ELEM_DEPL'",
3551            DEPL            =SIMP(statut='o',typ=(cham_no_depl_r,)),
3552          ),
3553
3554          b_enel_elga       =BLOC(condition="OPTION=='ENEL_ELGA'",
3555            CHAM_ELEM       =SIMP(statut='o',typ=(cham_elem_sief_r,) ),
3556          ),
3557
3558          b_enel_elno_elga  =BLOC(condition="OPTION=='ENEL_ELNO_ELGA'",
3559            CHAM_ELEM       =SIMP(statut='o',typ=(cham_elem_sief_r,) ),
3560          ),
3561
3562          b_epsi_elno_depl  =BLOC(condition="OPTION=='EPSI_ELNO_DEPL'",
3563            DEPL            =SIMP(statut='o',typ=(cham_no_depl_r,)),
3564          ),
3565
3566          b_equi_elga_epsi  =BLOC(condition="OPTION=='EQUI_ELGA_EPSI'",
3567            CHAM_ELEM       =SIMP(statut='o',typ=(cham_elem_epsi_r,) ),
3568          ),
3569
3570          b_equi_elga_sigm  =BLOC(condition="OPTION=='EQUI_ELGA_SIGM'",
3571            CHAM_ELEM       =SIMP(statut='o',typ=(cham_elem_sief_r,) ),
3572          ),
3573
3574          b_equi_elno_epsi  =BLOC(condition="OPTION=='EQUI_ELNO_EPSI'",
3575            CHAM_ELEM       =SIMP(statut='o',typ=(cham_elem_epsi_r,) ),
3576          ),
3577
3578          b_equi_elno_sigm  =BLOC(condition="OPTION=='EQUI_ELNO_SIGM'",
3579            CHAM_ELEM       =SIMP(statut='o',typ=(cham_elem_sief_r,) ),
3580          ),
3581
3582          b_pres_dbel_depl  =BLOC(condition="OPTION=='PRES_DBEL_DEPL'",
3583            DEPL            =SIMP(statut='o',typ=(cham_no_depl_c,)),
3584          ),
3585
3586          b_sief_elga_depl  =BLOC(condition="OPTION=='SIEF_ELGA_DEPL'",
3587            DEPL            =SIMP(statut='o',typ=(cham_no_depl_r,)),
3588          ),
3589
3590          b_sief_elga_lagr  =BLOC(condition="OPTION=='SIEF_ELGA_LAGR'",
3591            DEPL            =SIMP(statut='o',typ=(cham_no_depl_r,)),
3592            THETA           =SIMP(statut='o',typ=(theta_geom,)),
3593            PROPAGATION     =SIMP(statut='f',typ='R',defaut=0.E+0),
3594          ),
3595
3596          b_sigm_elno_cart  =BLOC(condition="OPTION=='SIGM_ELNO_CART'",
3597            CHAM_ELEM       =SIMP(statut='o',typ=(cham_elem_sief_r,) ),
3598          ),
3599
3600          b_sigm_elno_depl  =BLOC(condition="OPTION=='SIGM_ELNO_DEPL'",
3601            DEPL            =SIMP(statut='o',typ=(cham_no_depl_r,) ),
3602          ),
3603
3604          b_sigm_elno_lagr  =BLOC(condition="OPTION=='SIGM_ELNO_LAGR'",
3605            DEPL            =SIMP(statut='o',typ=(cham_no_depl_r,)),
3606            THETA           =SIMP(statut='o',typ=(theta_geom,)),
3607            PROPAGATION     =SIMP(statut='f',typ='R',defaut=0.E+0),
3608          ),
3609
3610          b_sipo_elno_depl  =BLOC(condition="OPTION=='SIPO_ELNO_DEPL'",
3611            DEPL            =SIMP(statut='o',typ=(cham_no_depl_r,)),
3612          ),
3613
3614          b_thermique  =BLOC(condition="OPTION in ('FLUX_ELNO_TEMP','FLUX_ELGA_TEMP','SOUR_ELGA_ELEC',)",
3615            TEMP            =SIMP(statut='o',typ=(cham_no_temp_r,)),
3616          ),
3617
3618          b_acoustique  =BLOC(condition="OPTION in ('PRES_ELNO_DBEL','PRES_ELNO_REEL','PRES_ELNO_IMAG',)",
3619            PRES            =SIMP(statut='o',typ=(cham_no_pres_c,)),
3620          ),
3621
3622
3623
3624          EXCIT           =FACT(statut='f',max='**',
3625                regles=(EXCLUS('FONC_MULT','COEF_MULT', ),),
3626                CHARGE          =SIMP(statut='o',typ=(char_meca,char_ther,char_acou)),
3627                FONC_MULT       =SIMP(statut='f',typ=(fonction,formule)),
3628                COEF_MULT       =SIMP(statut='f',typ='R'), ),
3629
3630          INST            =SIMP(statut='f',typ='R',defaut= 0.E+0),
3631          ACCE            =SIMP(statut='f',typ=cham_no_depl_r),
3632          NUME_COUCHE     =SIMP(statut='f',typ='I',defaut= 1),
3633          NIVE_COUCHE     =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY") ),
3634          MODE_FOURIER    =SIMP(statut='f',typ='I',defaut= 0 ),
3635          ANGLE           =SIMP(statut='f',typ='I',defaut= 0),
3636 )  ;
3637
3638 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
3639 #            CONFIGURATION MANAGEMENT OF EDF VERSION
3640 # ======================================================================
3641 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
3642 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
3643 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
3644 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
3645 # (AT YOUR OPTION) ANY LATER VERSION.                                 
3646 #
3647 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
3648 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
3649 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
3650 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
3651 #
3652 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
3653 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
3654 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
3655 # ======================================================================
3656 # RESPONSABLE VABHHTS J.PELLET
3657 def calc_char_cine_prod(CHAR_CINE,**args):
3658   if AsType(CHAR_CINE) == char_cine_meca : return cham_no_depl_r
3659   if AsType(CHAR_CINE) == char_cine_ther : return cham_no_temp_r
3660   if AsType(CHAR_CINE) == char_cine_acou : return cham_no_pres_c
3661   raise AsException("type de concept resultat non prevu")
3662
3663 CALC_CHAR_CINE=OPER(nom="CALC_CHAR_CINE",op= 102,sd_prod=calc_char_cine_prod,
3664                     fr="Calcul des seconds membres associés à des charges cinématiques (conditions aux limites non dualisées)",
3665                     docu="U4.61.03-f",reentrant='n',
3666             UIinfo={"groupes":("Matrices/vecteurs",)},
3667          NUME_DDL        =SIMP(statut='o',typ=nume_ddl ),
3668          CHAR_CINE       =SIMP(statut='o',typ=(char_cine_meca,char_cine_ther,char_cine_acou ) ),
3669          INST            =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
3670          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ),
3671 )  ;
3672
3673 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
3674 #            CONFIGURATION MANAGEMENT OF EDF VERSION
3675 # ======================================================================
3676 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
3677 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
3678 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
3679 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
3680 # (AT YOUR OPTION) ANY LATER VERSION.                                 
3681 #
3682 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
3683 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
3684 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
3685 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
3686 #
3687 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
3688 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
3689 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
3690 # ======================================================================
3691 def calc_char_seisme_prod(MATR_MASS,**args ):
3692   if AsType(MATR_MASS) == matr_asse_depl_r : return cham_no_depl_r
3693   raise AsException("type de concept resultat non prevu")
3694
3695 CALC_CHAR_SEISME=OPER(nom="CALC_CHAR_SEISME",op=  92,sd_prod=calc_char_seisme_prod,
3696                       docu="U4.63.01-f",reentrant='n',
3697             UIinfo={"groupes":("Matrices/vecteurs",)},
3698          regles=(UN_PARMI('MONO_APPUI','MODE_STAT' ),),
3699          MATR_MASS       =SIMP(statut='o',typ=matr_asse_depl_r,fr="Matrice de masse" ),
3700          DIRECTION       =SIMP(statut='o',typ='R',max=6,fr="Directions du séisme imposé"),
3701          MONO_APPUI      =SIMP(statut='f',typ='TXM',into=("OUI",) ),         
3702          MODE_STAT       =SIMP(statut='f',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc,) ),
3703          b_mode_stat     =BLOC ( condition = "MODE_STAT != None",
3704            regles=(UN_PARMI('NOEUD','GROUP_NO' ),),
3705            NOEUD           =SIMP(statut='f',typ=no,validators=NoRepeat(),max='**'),
3706            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
3707          ),
3708          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
3709 )  ;
3710
3711 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
3712 #            CONFIGURATION MANAGEMENT OF EDF VERSION
3713 # ======================================================================
3714 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
3715 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
3716 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
3717 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
3718 # (AT YOUR OPTION) ANY LATER VERSION.                                 
3719 #
3720 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
3721 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
3722 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
3723 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
3724 #
3725 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
3726 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
3727 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
3728 # ======================================================================
3729 # RESPONSABLE JMBHH01 J.M.PROIX
3730 def calc_elem_prod(RESULTAT,**args):
3731    if AsType(RESULTAT) != None : return AsType(RESULTAT)
3732    raise AsException("type de concept resultat non prevu")
3733
3734 CALC_ELEM=OPER(nom="CALC_ELEM",op=58,sd_prod=calc_elem_prod,docu="U4.81.01-g",reentrant='f',
3735             UIinfo={"groupes":("Post traitements",)},
3736             fr="Compléter ou créer un résultat en calculant des champs par éléments (contraintes, déformations,... )",
3737      MODELE          =SIMP(statut='o',typ=modele),
3738      CHAM_MATER      =SIMP(statut='o',typ=cham_mater),
3739      CARA_ELEM       =SIMP(statut='f',typ=cara_elem),
3740
3741      RESULTAT        =SIMP(statut='o',typ=(evol_elas,dyna_trans,dyna_harmo,mode_meca,
3742                                 mode_stat,mode_stat_depl,mode_stat_acce,mode_stat_forc,
3743                                 evol_noli,mult_elas,fourier_elas,
3744                                 evol_ther,base_modale,
3745                                 acou_harmo,mode_acou,mode_flamb) ,
3746                 fr="Résultat d'une commande globale"),
3747                                            
3748      regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE',
3749                     'NOEUD_CMP','LIST_INST','LIST_FREQ','LIST_ORDRE','NOM_CAS'),),
3750      TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
3751      NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
3752      NUME_MODE       =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
3753      NOEUD_CMP       =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'),
3754      NOM_CAS         =SIMP(statut='f',typ='TXM' ),
3755
3756      INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
3757      FREQ            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
3758      LIST_INST       =SIMP(statut='f',typ=listr8),
3759      LIST_FREQ       =SIMP(statut='f',typ=listr8),
3760      PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3 ),
3761      CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ),
3762      LIST_ORDRE      =SIMP(statut='f',typ=listis),
3763      
3764      TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
3765      GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**',
3766                            fr="le calcul ne sera effectué que sur ces mailles là"),
3767      MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**',
3768                            fr="le calcul ne sera effectué que sur ces mailles là"),
3769
3770 #    options pour des resultats lineaire 
3771
3772      b_lineaire =BLOC( condition = "AsType(RESULTAT) in (evol_elas,dyna_trans,dyna_harmo,mode_meca,\
3773                                                                mode_stat,mode_stat_depl,mode_stat_acce,mode_stat_forc,\
3774                                                                mult_elas,fourier_elas,base_modale,mode_flamb)",
3775                                                                fr="options mecaniques lineaires",
3776           TYPE_OPTION =SIMP(statut='f',typ='TXM',defaut='TOUTES',fr="type d'options mecaniques lineaires",
3777                            into=("SIGM_MASSIF","SIGM_STRUCT","EPSI","ENER","CRIT","DERIVEES",
3778                                  "INDI_ERRE","AUTRES","TOUTES"),
3779                            ),
3780           b_toutes=BLOC( condition = "TYPE_OPTION == 'TOUTES'",fr="toutes les options evol elas",
3781                OPTION =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',defaut="SIEF_ELNO_ELGA",
3782                               #  contraintes
3783                            into=( "SIEF_ELNO_ELGA","SIGM_ELNO_DEPL","SIEF_ELGA_DEPL",
3784                                   "SIPO_ELNO_DEPL","EFGE_ELNO_DEPL","EFGE_ELNO_CART","SIGM_ELNO_CART",
3785                                   "SIGM_ELNO_SIEF","SIPO_ELNO_SIEF","SIGM_ELNO_TUYO",
3786                               # déformations
3787                                  "EPSI_ELNO_DEPL","EPSI_ELGA_DEPL","EPSG_ELGA_DEPL","EPSG_ELNO_DEPL",
3788                                  "EPME_ELNO_DEPL","EPME_ELGA_DEPL","DEGE_ELNO_DEPL","EPSI_ELNO_TUYO",
3789                               #  ENER    
3790                                  "EPOT_ELEM_DEPL","ECIN_ELEM_DEPL","ENEL_ELGA","ENEL_ELNO_ELGA",
3791                                  "ETOT_ELGA","ETOT_ELNO_ELGA","ETOT_ELEM",
3792                               #  estimateurs erreur 
3793                                  "SIGM_NOZ1_ELGA","ERRE_ELEM_NOZ1","SIGM_NOZ2_ELGA","ERRE_ELEM_NOZ2",
3794                                  "SIRE_ELNO_DEPL","ERRE_ELGA_NORE","ERRE_ELNO_ELGA",
3795                               #  CRIT    
3796                                  "EQUI_ELNO_SIGM","EQUI_ELGA_SIGM","CRIT_ELNO_RUPT",
3797                                  "EQUI_ELNO_EPSI","EQUI_ELGA_EPSI","EQUI_ELNO_EPME","EQUI_ELGA_EPME",
3798                                 "ENDO_ELNO_SIGA","ENDO_ELNO_SINO","SIEQ_ELNO_TUYO","EPEQ_ELNO_TUYO",
3799                               #  derivees    
3800                                  "DEUL_ELGA_DEPL","DEDE_ELNO_DLDE","DESI_ELNO_DLSI",
3801                               #  autres      
3802                                  "VNOR_ELEM_DEPL","VALE_NCOU_MAXI","PRES_DBEL_DEPL"),),
3803
3804                NUME_COUCHE =SIMP(statut='f',typ='I',defaut= 1,
3805                                 fr="numero de couche dans l'épaisseur de la coque ou du tuyau" ),
3806                NIVE_COUCHE =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY"),
3807                                 fr="position dans l'épaisseur de la coque, ou de la couche" ),
3808                ANGLE       =SIMP(statut='f',typ='I',defaut= 0,fr="angle en degres à partir de la génératrice"),
3809                NOM_CHAM  =SIMP(statut='f',typ='TXM',fr="nom du champ pour VALE_NCOU_MAXI", ),
3810                NOM_CMP   =SIMP(statut='f',typ='TXM',fr="nom de la composante pour VALE_NCOU_MAXI",  ),
3811                PLAN =     SIMP(statut='f',typ='TXM',defaut="MAIL",into=("SUP","INF","MOY","MAIL"),
3812                                fr="Plan de calcul pour les plaques excentrées" ),
3813               
3814               
3815                EXCIT           =FACT(statut='f',max='**',
3816                                      fr="Charges contenant les températures, les efforts répartis pour les poutres...",
3817                                      regles=(EXCLUS('FONC_MULT','FONC_MULT_C','COEF_MULT','COEF_MULT_C'),),
3818                     CHARGE          =SIMP(statut='o',typ=char_meca ),
3819                     FONC_MULT       =SIMP(statut='f',typ=(fonction,formule)),
3820                     FONC_MULT_C     =SIMP(statut='f',typ=fonction_c),
3821                     COEF_MULT       =SIMP(statut='f',typ='R'),
3822                     COEF_MULT_C     =SIMP(statut='f',typ='C'),
3823                     PHAS_DEG        =SIMP(statut='f',typ='R'),
3824                     PUIS_PULS       =SIMP(statut='f',typ='I'),
3825                     TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",),),),
3826                 
3827                                 
3828                             ),
3829 #             fin bloc b_toutes
3830
3831           b_sigm_massif =BLOC( condition = "TYPE_OPTION == 'SIGM_MASSIF'",
3832                                      fr="options de contraintes elasticite 2D et 3D",
3833               OPTION =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',defaut='SIEF_ELNO_ELGA',
3834                             fr="option de calcul des contraintes",
3835                            into=( "SIEF_ELNO_ELGA","SIGM_ELNO_DEPL","SIEF_ELGA_DEPL",),),
3836                            
3837                     b_charge =BLOC( condition = "OPTION in ('SIGM_ELNO_DEPL','SIEF_ELGA_DEPL',) or \
3838                                       (type(OPTION)==type(()) and  'SIGM_ELNO_DEPL' in OPTION ) or \
3839                                       (type(OPTION)==type(()) and  'SIEF_ELGA_DEPL' in OPTION ) ",
3840                                       fr="charge contenant les temperatures ou autre charge",
3841                          EXCIT           =FACT(statut='o',max='**',
3842                          CHARGE          =SIMP(statut='o',typ=char_meca ),),
3843                                     ),
3844                                   ),
3845                                   
3846           b_sigm_struct =BLOC( condition = "TYPE_OPTION == 'SIGM_STRUCT'",
3847                                       fr="options de contraintes elasticite poutres, coques, tuyaux",
3848                OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',defaut='SIEF_ELNO_ELGA',
3849                             fr="option de calcul des contraintes ou efforts generalises",
3850                             into=( "SIEF_ELNO_ELGA","SIGM_ELNO_DEPL","SIEF_ELGA_DEPL","SIGM_ELNO_TUYO",
3851                                    "SIPO_ELNO_DEPL","EFGE_ELNO_DEPL","EFGE_ELNO_CART","SIGM_ELNO_CART",
3852                                    "SIGM_ELNO_SIEF","SIPO_ELNO_SIEF"),),
3853                            
3854                b_charge =BLOC( condition = "OPTION in ('SIGM_ELNO_DEPL','SIEF_ELGA_DEPL',\
3855                                                        'SIPO_ELNO_DEPL','EFGE_ELNO_DEPL',) or \
3856                                             (type(OPTION)==type(()) and  'SIGM_ELNO_DEPL' in OPTION ) or \
3857                                             (type(OPTION)==type(()) and  'SIEF_ELGA_DEPL' in OPTION ) or \
3858                                             (type(OPTION)==type(()) and  'SIPO_ELNO_DEPL' in OPTION ) or \
3859                                             (type(OPTION)==type(()) and  'EFGE_ELNO_DEPL' in OPTION ) ",
3860                                             fr="charge contenant les temperatures ou les efforts répartis (poutres) ou autre",
3861                     EXCIT           =FACT(statut='o',max='**',
3862                                           regles=(EXCLUS('FONC_MULT','FONC_MULT_C','COEF_MULT','COEF_MULT_C'),),
3863                          CHARGE          =SIMP(statut='o',typ=char_meca ),
3864                          FONC_MULT       =SIMP(statut='f',typ=(fonction,formule)),
3865                          FONC_MULT_C     =SIMP(statut='f',typ=fonction_c),
3866                          COEF_MULT       =SIMP(statut='f',typ='R'),
3867                          COEF_MULT_C     =SIMP(statut='f',typ='C'),
3868                          PHAS_DEG        =SIMP(statut='f',typ='R'),
3869                          PUIS_PULS       =SIMP(statut='f',typ='I'),
3870                          TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",),),),
3871                              ),
3872                           
3873                b_niv_couche = BLOC( condition = "OPTION in ('SIGM_ELNO_DEPL',) or \
3874                                                  (type(OPTION)==type(()) and  'SIGM_ELNO_DEPL' in OPTION) ",
3875                                                  
3876                          NUME_COUCHE =SIMP(statut='f',typ='I',defaut= 1,
3877                                            fr="numero de couche dans l'épaisseur de la coque (coques multicouches)" ),
3878                          NIVE_COUCHE =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY"),
3879                                            fr="position dans l'épaisseur de la coque, ou de la couche" ),
3880                               ),     
3881                                  
3882                b_sigtuyo = BLOC( condition = "OPTION == 'SIGM_ELNO_TUYO' or \
3883                                   (type(OPTION)==type(()) and  'SIGM_ELNO_TUYO' in OPTION) ",
3884                          NUME_COUCHE =SIMP(statut='f',typ='I',defaut= 1 ,
3885                                            fr="numero de couche dans l'épaisseur du tuyau" ),
3886                          ANGLE       =SIMP(statut='f',typ='I',defaut= 0,fr="angle en degres à partir de la génératrice" ),
3887                          NIVE_COUCHE =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY"),
3888                                            fr="position dans l'épaisseur de la couche" ),
3889                                ),
3890                b_plan_excentrement    =BLOC( condition = "OPTION=='EFGE_ELNO_DEPL' or \
3891                                             (type(OPTION)==type(()) and 'EFGE_ELNO_DEPL' in OPTION)",
3892                                              fr="Plan de calcul des efforts pour les plaques avec excentrement",
3893                          PLAN =     SIMP(statut='f',typ='TXM',defaut="MAIL",into=("SUP","INF","MOY","MAIL"),
3894                                          fr="Plan de calcul des efforts pour les plaques avec excentrement",),
3895                          
3896                             ),
3897                             ),
3898 #          fin bloc contraintes struct
3899
3900           b_epsi         =BLOC( condition = "TYPE_OPTION=='EPSI'",
3901                OPTION    =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',
3902                            into=("EPSI_ELNO_DEPL","EPSI_ELGA_DEPL","EPME_ELNO_DEPL","EPME_ELGA_DEPL",
3903                                  "DEGE_ELNO_DEPL","EPSI_ELNO_TUYO",),
3904                                  ),
3905                b_niv_couche = BLOC( condition = "OPTION =='EPSI_ELNO_DEPL' or \
3906                                   (type(OPTION)==type(()) and  'EPSI_ELNO_DEPL' in OPTION) ",
3907                          NUME_COUCHE =SIMP(statut='f',typ='I',defaut= 1,
3908                                            fr="numero de couche dans l'épaisseur de la coque (coques multicouches)" ),
3909                          NIVE_COUCHE =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY"),
3910                                            fr="position dans l'épaisseur de la coque, ou de la couche" ),
3911                                  ) ,
3912                b_epstuyo = BLOC( condition = "OPTION == 'EPSI_ELNO_TUYO' or \
3913                                   (type(OPTION)==type(()) and  'EPSI_ELNO_TUYO' in OPTION) ",
3914                          NUME_COUCHE =SIMP(statut='f',typ='I',defaut= 1 ,
3915                                            fr="numero de couche dans l'épaisseur du tuyau" ),
3916                          ANGLE       =SIMP(statut='f',typ='I',defaut= 0,fr="angle en degres à partir de la génératrice" ),
3917                          NIVE_COUCHE =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY"),
3918                                            fr="position dans l'épaisseur de la couche" ),
3919                                ),
3920 b_charge =BLOC( condition = "OPTION in ('EPME_ELNO_DEPL','EPSI_ELGA_DEPL','EPME_ELGA_DEPL','EPSI_ELNO_DEPL','EPSI_ELNO_TUYO' ) or \
3921                                       (type(OPTION)==type(()) and  'EPSI_ELNO_DEPL' in OPTION ) or \
3922                                       (type(OPTION)==type(()) and  'EPSI_ELNO_TUYO' in OPTION ) or \
3923                                       (type(OPTION)==type(()) and  'EPSI_ELGA_DEPL' in OPTION ) or \
3924                                       (type(OPTION)==type(()) and  'EPME_ELNO_DEPL' in OPTION ) or \
3925                                       (type(OPTION)==type(()) and  'EPME_ELGA_DEPL' in OPTION ) ",
3926                                       fr="charge contenant les temperatures",
3927                     EXCIT           =FACT(statut='o',max='**',
3928                          CHARGE          =SIMP(statut='o',typ=(char_meca,char_ther,char_acou) ),),
3929                                  ),
3930                                        ),
3931           b_ener         =BLOC( condition = "TYPE_OPTION=='ENER'",
3932                OPTION    =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',
3933                            into=("EPOT_ELEM_DEPL","ECIN_ELEM_DEPL","ENEL_ELGA","ENEL_ELNO_ELGA",
3934                                  "ETOT_ELGA","ETOT_ELNO_ELGA","ETOT_ELEM",),
3935                                  ),
3936                b_charge =BLOC( condition = "OPTION in ('EPOT_ELEM_DEPL','ECIN_ELEM_DEPL','ENEL_ELGA','ENEL_ELNO_ELGA',) or \
3937                                       (type(OPTION)==type(()) and  'EPOT_ELEM_DEPL' in OPTION ) or \
3938                                       (type(OPTION)==type(()) and  'ENEL_ELGA' in OPTION ) or \
3939                                       (type(OPTION)==type(()) and  'ENEL_ELNO_ELGA' in OPTION ) or \
3940                                       (type(OPTION)==type(()) and  'ECIN_ELEM_DEPL' in OPTION ) ",
3941                                       fr="charge contenant les temperatures",
3942                     EXCIT           =FACT(statut='o',max='**',
3943                          CHARGE          =SIMP(statut='o',typ=(char_meca,char_ther,char_acou) ),),
3944                               ),
3945                                  ),
3946                                  
3947           b_crit         =BLOC( condition = "TYPE_OPTION=='CRIT'",
3948                OPTION    =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',
3949                            into=("EQUI_ELNO_SIGM","EQUI_ELGA_SIGM",
3950                                  "EQUI_ELNO_EPSI","EQUI_ELGA_EPSI","EQUI_ELNO_EPME","EQUI_ELGA_EPME",
3951                                  "ENDO_ELNO_SIGA","ENDO_ELNO_SINO","CRIT_ELNO_RUPT","SIEQ_ELNO_TUYO","EPEQ_ELNO_TUYO",
3952                                  ) ),
3953                b_niv_couche = BLOC( condition = "OPTION in ('CRIT_ELNO_RUPT','EQUI_ELNO_SIGM') or \
3954                                   (type(OPTION)==type(()) and  'EQUI_ELNO_SIGM' in OPTION) or \
3955                                   (type(OPTION)==type(()) and  'SIEQ_ELNO_TUYO' in OPTION) or \
3956                                   (type(OPTION)==type(()) and  'CRIT_ELNO_RUPT' in OPTION) ",
3957                     NUME_COUCHE =SIMP(statut='f',typ='I',defaut= 1,
3958                                            fr="numero de couche dans l'épaisseur de la coque (coques multicouches)" ),
3959                     NIVE_COUCHE =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY"),
3960                                            fr="position dans l'épaisseur de la coque, ou de la couche" ),
3961                                   ),        
3962                 EXCIT           =FACT(statut='f',max='**',fr="charge contenant les temperatures",
3963                      CHARGE          =SIMP(statut='o',typ=(char_meca,char_ther,char_acou) ),),
3964                                  ),
3965                                  
3966           b_derivees         =BLOC( condition = "TYPE_OPTION=='DERIVEES'",
3967                   OPTION    =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',
3968                            into=("DEUL_ELGA_DEPL","DEDE_ELNO_DLDE","DESI_ELNO_DLSI",
3969                                  ) ),),
3970
3971           b_autres         =BLOC( condition = "TYPE_OPTION=='AUTRES'",
3972                   OPTION    =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',
3973                            into=("VALE_NCOU_MAXI","PRES_DBEL_DEPL","VNOR_ELEM_DEPL",
3974                                  ) ),
3975                b_maxi    =BLOC( condition = "OPTION=='VALE_NCOU_MAXI' or \
3976                                 (type(OPTION)==type(()) and 'VALE_NCOU_MAXI' in OPTION)",
3977                     NOM_CHAM  =SIMP(statut='o',typ='TXM',fr="Nom du champ pour VALE_NCOU_MAXI" ),
3978                     NOM_CMP   =SIMP(statut='o',typ='TXM',fr="Nom de la composante pour VALE_NCOU_MAXI"),),
3979                                  ),
3980
3981           b_indi_erre         =BLOC( condition = "TYPE_OPTION=='INDI_ERRE'",
3982                OPTION    =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',defaut="ERRE_ELGA_NORE",
3983                            into=("SIGM_NOZ1_ELGA","ERRE_ELEM_NOZ1","SIGM_NOZ2_ELGA","ERRE_ELEM_NOZ2",
3984                                  "SIRE_ELNO_DEPL","ERRE_ELGA_NORE","ERRE_ELNO_ELGA",
3985                                  ) ),
3986                 EXCIT           =FACT(statut='f',max='**',fr="charge contenant les temperatures",
3987                      CHARGE          =SIMP(statut='o',typ=(char_meca,char_ther,char_acou) ),),
3988                                  ),
3989                                  ),
3990 #    fin bloc lineaire                                
3991                             
3992                                  
3993 #    statique ou dynamique non lineaire : evol_noli                                
3994      b_noli          =BLOC( condition = "AsType(RESULTAT) == evol_noli",fr="options evol noli",
3995           TYPE_OPTION =SIMP(statut='f',typ='TXM',defaut='TOUTES',
3996                            into=("SIGM_MASSIF","SIGM_STRUCT","EPSI","ENER","CRIT",
3997                                  "VARI","INDI_ERRE","TOUTES","AUTRES"),
3998                           ),
3999           b_toutes =BLOC( condition = "TYPE_OPTION == 'TOUTES'",fr="toutes les options evol elas",
4000                OPTION      =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',
4001                            into=( "SIEF_ELNO_ELGA",
4002                                   "SIGM_ELNO_TUYO","SIGM_ELNO_COQU",
4003                                   "SIGM_ELNO_SIEF","SIPO_ELNO_SIEF","EFGE_ELNO_CART",
4004                                   # EPSI
4005                                   "EPSI_ELNO_DEPL","EPSI_ELGA_DEPL","EPSG_ELNO_DEPL","EPSG_ELGA_DEPL",
4006                                  "EPME_ELNO_DEPL","EPME_ELGA_DEPL","EPMG_ELNO_DEPL","EPMG_ELGA_DEPL",
4007                                  "DEGE_ELNO_DEPL","EPSI_ELNO_TUYO",
4008                                  "EPSP_ELNO","EPSP_ELGA",
4009                                  "EPGR_ELNO","EPGR_ELGA",
4010                                  "VARI_ELNO_ELGA","VARI_ELNO_TUYO","VARI_ELNO_COQU","CRIT_ELNO_RUPT",
4011                                  # CRIT
4012                                  "EQUI_ELNO_SIGM","EQUI_ELGA_SIGM","SIEQ_ELNO_TUYO","EPEQ_ELNO_TUYO",
4013                                  "ERRE_ELGA_NORE","ERRE_ELNO_ELGA","ERRE_ELEM_NOZ1","ERRE_ELEM_NOZ2",
4014                                  "EQUI_ELNO_EPSI","EQUI_ELGA_EPSI","EQUI_ELNO_EPME","EQUI_ELGA_EPME",
4015                                  "DCHA_ELNO_SIGM","DCHA_ELGA_SIGM","RADI_ELNO_SIGM","RADI_ELGA_SIGM",
4016                                  "ENDO_ELNO_SIGA","ENDO_ELNO_SINO",
4017                                  "PMPB_ELNO_SIEF","PMPB_ELGA_SIEF","ENEL_ELGA","ENEL_ELNO_ELGA",
4018                                  "ETOT_ELGA","ETOT_ELNO_ELGA","ETOT_ELEM","VALE_NCOU_MAXI"),
4019                                ),
4020                NORME =SIMP(statut='f',typ='TXM',defaut="VMIS",
4021                                  into=("VMIS","TOTAL","VMIS_CINE","TOTAL_CINE"),
4022                                  fr="Type de norme pour les options RADI_ et DCHA_"),
4023                                  
4024                NUME_COUCHE =SIMP(statut='f',typ='I',defaut= 1,fr="numéro de couche pour coques et tuyaux" ),
4025                NIVE_COUCHE =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY"),
4026                                  fr="choix du point d'intégration dans la couche" ),
4027                ANGLE       =SIMP(statut='f',typ='I',defaut= 0 ,fr="angle de dépouillement pour les tuyaux"),
4028                NOM_CHAM  =SIMP(statut='f',typ='TXM',fr="Nom du champ pour VALE_NCOU_MAXI"),
4029                NOM_CMP   =SIMP(statut='f',typ='TXM',fr="Nom de la composante pour VALE_NCOU_MAXI"),
4030                PLAN =     SIMP(statut='f',typ='TXM',defaut="MAIL",into=("SUP","INF","MOY","MAIL") ),
4031               
4032                EXCIT           =FACT(statut='f',max='**',
4033                                       regles=(EXCLUS('FONC_MULT','FONC_MULT_C','COEF_MULT','COEF_MULT_C'),),
4034                     CHARGE          =SIMP(statut='o',typ=char_meca ),
4035                     FONC_MULT       =SIMP(statut='f',typ=(fonction,formule)),
4036                     FONC_MULT_C     =SIMP(statut='f',typ=fonction_c),
4037                     COEF_MULT       =SIMP(statut='f',typ='R'),
4038                     COEF_MULT_C     =SIMP(statut='f',typ='C'),
4039                     PHAS_DEG        =SIMP(statut='f',typ='R'),
4040                     PUIS_PULS       =SIMP(statut='f',typ='I'),
4041                     TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",),),),
4042                          ),
4043                          
4044           b_sigm_massif =BLOC( condition = "TYPE_OPTION == 'SIGM_MASSIF'",
4045                                       fr="options de contraintes non lin 2D et 3D",
4046                OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',
4047                               #  contraintes
4048                            into=( "SIEF_ELNO_ELGA",),),
4049                             ),
4050                             
4051           b_sigm_struct =BLOC( condition = "TYPE_OPTION == 'SIGM_STRUCT'",
4052                                        fr="options de contraintes non lin poutres, coques",
4053                OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',
4054                               #  contraintes
4055                            into=( "SIEF_ELNO_ELGA","EFGE_ELNO_CART","SIGM_ELNO_TUYO","SIGM_ELNO_COQU",
4056                            "SIGM_ELNO_SIEF","SIPO_ELNO_SIEF",),),
4057                b_sigcoqu = BLOC( condition = "OPTION in ('SIGM_ELNO_COQU',) or \
4058                                   (type(OPTION)==type(()) and  'SIGM_ELNO_COQU' in OPTION) ",
4059                     NUME_COUCHE =SIMP(statut='f',typ='I',defaut= 1,
4060                          fr="numéro de couche dans l'épaisseur de la coque"  ),
4061                     NIVE_COUCHE =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY"),
4062                          fr="choix du point d'intégration dans la couche"  ),
4063                               ),        
4064                b_sigtuyo = BLOC( condition = "OPTION in ('SIGM_ELNO_TUYO',) or \
4065                                   (type(OPTION)==type(()) and  'SIGM_ELNO_TUYO' in OPTION)",
4066                     NUME_COUCHE =SIMP(statut='f',typ='I',defaut= 1,
4067                          fr="numéro de couche dans l'épaisseur du tuyau" ),
4068                     ANGLE       =SIMP(statut='f',typ='I',defaut= 0,
4069                          fr="angle de dépouillement pour les tuyaux, en degres" ),
4070                     NIVE_COUCHE =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY"),
4071                          fr="choix du point d'intégration dans la couche"),
4072                                ),
4073                              ),
4074                              
4075           b_epsi         =BLOC( condition = "TYPE_OPTION=='EPSI'",
4076                OPTION    =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',
4077                            into=( "EPSI_ELNO_DEPL","EPSI_ELGA_DEPL","EPSG_ELNO_DEPL","EPSG_ELGA_DEPL",
4078                                  "EPME_ELNO_DEPL","EPME_ELGA_DEPL","EPMG_ELNO_DEPL","EPMG_ELGA_DEPL",
4079                                  "EPSP_ELNO","EPSP_ELGA","EPGR_ELNO","EPGR_ELGA",
4080                                  "DEGE_ELNO_DEPL",),
4081                                  ),
4082                b_niv_couche = BLOC( condition = "OPTION =='EPSI_ELNO_DEPL' or \
4083                                   (type(OPTION)==type(()) and  'EPSI_ELNO_DEPL' in OPTION) ",
4084                     NUME_COUCHE =SIMP(statut='f',typ='I',defaut= 1,
4085                                            fr="numero de couche dans l'épaisseur de la coque (coques multicouches)" ),
4086                     NIVE_COUCHE =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY"),
4087                                            fr="position dans l'épaisseur de la coque, ou de la couche" ),
4088                                  ) ,
4089                EXCIT           =FACT(statut='f',max='**',fr="charge contenant les temperatures",
4090                     CHARGE          =SIMP(statut='o',typ=(char_meca,char_ther,char_acou) ),),
4091                                  ),
4092                b_epstuyo = BLOC( condition = "OPTION == 'EPSI_ELNO_TUYO' or \
4093                                   (type(OPTION)==type(()) and  'EPSI_ELNO_TUYO' in OPTION) ",
4094                          NUME_COUCHE =SIMP(statut='f',typ='I',defaut= 1 ,
4095                                            fr="numero de couche dans l'épaisseur du tuyau" ),
4096                          ANGLE       =SIMP(statut='f',typ='I',defaut= 0,fr="angle en degres à partir de la génératrice" ),
4097                          NIVE_COUCHE =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY"),
4098                                            fr="position dans l'épaisseur de la couche" ),
4099               EXCIT           =FACT(statut='f',max='**',fr="charge contenant les temperatures",
4100                     CHARGE          =SIMP(statut='o',typ=(char_meca,char_ther,char_acou) ),),
4101                                ),
4102                                  
4103           b_vari         =BLOC( condition = "TYPE_OPTION=='VARI'",
4104                                        fr="Calcul et extraction des variables internes",
4105                    OPTION    =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',
4106                                    into=("VARI_ELNO_ELGA","VARI_ELNO_TUYO","VARI_ELNO_COQU",),
4107                                  ),
4108                b_varcoqu = BLOC( condition = "OPTION in ('VARI_ELNO_COQU',) or \
4109                                   (type(OPTION)==type(()) and  'VARI_ELNO_COQU' in OPTION) ",
4110                          NUME_COUCHE =SIMP(statut='f',typ='I',defaut= 1,
4111                          fr="numéro de couche dans l'épaisseur de la coque"),
4112                          NIVE_COUCHE =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY"),
4113                          fr="choix du point d'intégration dans la couche" ),
4114                               ),        
4115                b_vartuyo = BLOC( condition = "OPTION in ('VARI_ELNO_TUYO',) or \
4116                                   (type(OPTION)==type(()) and  'VARI_ELNO_TUYO' in OPTION) ",
4117                          NUME_COUCHE =SIMP(statut='f',typ='I',defaut= 1,
4118                          fr="numéro de couche dans l'épaisseur de tuyau" ),
4119                          ANGLE       =SIMP(statut='f',typ='I',defaut= 0,
4120                          fr="angle de dépouillement pour les tuyaux, en degres"),
4121                          NIVE_COUCHE =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY"),
4122                          fr="choix du point d'intégration dans la couche" ),
4123                                ),
4124                                  ),
4125                                  
4126           b_ener         =BLOC( condition = "TYPE_OPTION=='ENER'",
4127                OPTION    =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',
4128                            into=("ETOT_ELGA","ETOT_ELNO_ELGA","ETOT_ELEM","ENEL_ELGA","ENEL_ELNO_ELGA",),
4129                                  ),
4130                EXCIT           =FACT(statut='f',max='**',fr="charge contenant les temperatures",
4131                     CHARGE          =SIMP(statut='o',typ=(char_meca,char_ther,char_acou) ),),
4132                                  ),
4133                                  
4134           b_crit         =BLOC( condition = "TYPE_OPTION=='CRIT'",
4135                OPTION    =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',
4136                            into=("EQUI_ELNO_SIGM","EQUI_ELGA_SIGM",
4137                                  "EQUI_ELNO_EPSI","EQUI_ELGA_EPSI","EQUI_ELNO_EPME","EQUI_ELGA_EPME",
4138                                  "ENDO_ELNO_SIGA","ENDO_ELNO_SINO","CRIT_ELNO_RUPT",
4139                                  "PMPB_ELNO_SIEF","PMPB_ELGA_SIEF","SIEQ_ELNO_TUYO","EPEQ_ELNO_TUYO",
4140                                  ) ),
4141                          NUME_COUCHE =SIMP(statut='f',typ='I',defaut= 1,fr="numéro de couche dans l'épaisseur de la coque"),
4142                          NIVE_COUCHE =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY"),
4143                          fr="choix du point d'intégration dans la couche" ),
4144                                  ),
4145                                  
4146           b_autres         =BLOC( condition = "TYPE_OPTION=='AUTRES'",
4147                   OPTION    =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',
4148                            into=("VALE_NCOU_MAXI",) ),
4149                b_maxi    =BLOC( condition = "OPTION=='VALE_NCOU_MAXI' or \
4150                                 (type(OPTION)==type(()) and 'VALE_NCOU_MAXI' in OPTION)",
4151                     NOM_CHAM  =SIMP(statut='o',typ='TXM',fr="Nom du champ pour VALE_NCOU_MAXI" ),
4152                     NOM_CMP   =SIMP(statut='o',typ='TXM',fr="Nom de la composante pour VALE_NCOU_MAXI"),),
4153                                  ),
4154
4155
4156           b_indi_erre         =BLOC( condition = "TYPE_OPTION=='INDI_ERRE'",
4157                OPTION    =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',defaut="ERRE_ELGA_NORE",
4158                            into=("ERRE_ELGA_NORE","ERRE_ELNO_ELGA","ERRE_ELEM_NOZ1","ERRE_ELEM_NOZ2",
4159                                  "DCHA_ELNO_SIGM","DCHA_ELGA_SIGM","RADI_ELNO_SIGM","RADI_ELGA_SIGM",
4160                                  ) ),
4161                b_indic = BLOC( condition ="OPTION in ('DCHA_ELNO_SIGM','DCHA_ELGA_SIGM','RADI_ELNO_SIGM','RADI_ELGA_SIGM') or\
4162                                             (type(OPTION)==type(()) and 'DCHA_ELNO_SIGM' in OPTION) or\
4163                                             (type(OPTION)==type(()) and 'DCHA_ELGA_SIGM' in OPTION) or\
4164                                             (type(OPTION)==type(()) and 'RADI_ELNO_SIGM' in OPTION) or\
4165                                             (type(OPTION)==type(()) and 'RADI_ELGA_SIGM' in OPTION) ",
4166                     NORME =SIMP(statut='f',typ='TXM',defaut="VMIS",
4167                                  into=("VMIS","TOTAL","VMIS_CINE","TOTAL_CINE") ),
4168                                  ),
4169                                  ),
4170                                  ),
4171 #          fin bloc evol_noli
4172
4173 #           thermique : evol_ther                                
4174      b_ther          =BLOC( condition = "AsType(RESULTAT) == evol_ther",fr="options thermiques",
4175           OPTION          =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',
4176                            into=("DEUL_ELGA_TEMP","DETE_ELNO_DLTE","FLUX_ELGA_TEMP","FLUX_ELNO_TEMP",
4177                                   "HYDR_ELNO_ELGA","DURT_ELGA_META","DURT_ELNO_META",
4178                                  "SOUR_ELGA_ELEC","ERTH_ELEM_TEMP","ERTH_ELNO_ELEM",),),
4179                EXCIT           =FACT(statut='f',max='**',
4180                     regles=(EXCLUS('FONC_MULT','FONC_MULT_C','COEF_MULT','COEF_MULT_C'),),
4181                     CHARGE          =SIMP(statut='o',typ=char_ther ),
4182                     FONC_MULT       =SIMP(statut='f',typ=(fonction,formule)),
4183                     FONC_MULT_C     =SIMP(statut='f',typ=fonction_c),
4184                     COEF_MULT       =SIMP(statut='f',typ='R'),
4185                     COEF_MULT_C     =SIMP(statut='f',typ='C'),
4186                     PHAS_DEG        =SIMP(statut='f',typ='R'),
4187                     PUIS_PULS       =SIMP(statut='f',typ='I'),
4188                     TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",),),
4189                                      ),
4190                     NIVE_COUCHE =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY"),
4191                                       fr="choix du point de calcul dans l'épaisseur des coques"  ),
4192                                  
4193                                  ),
4194                                  
4195 #    acoustique                                
4196      b_acou          =BLOC( condition = "AsType(RESULTAT) in (acou_harmo,mode_acou,)",fr="options acoustiques",
4197           OPTION          =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',
4198                            into=("PRES_ELNO_DBEL","PRES_ELNO_REEL","PRES_ELNO_IMAG",
4199                                  "INTE_ELNO_ACTI","INTE_ELNO_REAC",
4200                                  ),),
4201           EXCIT           =FACT(statut='f',max='**',
4202                 regles=(EXCLUS('FONC_MULT','FONC_MULT_C','COEF_MULT','COEF_MULT_C'),),
4203                 CHARGE          =SIMP(statut='o',typ=char_acou ),
4204                 FONC_MULT       =SIMP(statut='f',typ=(fonction,formule)),
4205                 FONC_MULT_C     =SIMP(statut='f',typ=fonction_c),
4206                 COEF_MULT       =SIMP(statut='f',typ='R'),
4207                 COEF_MULT_C     =SIMP(statut='f',typ='C'),
4208                 PHAS_DEG        =SIMP(statut='f',typ='R'),
4209                 PUIS_PULS       =SIMP(statut='f',typ='I'),
4210                 TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",),),),
4211                                  ),
4212                                  
4213      SENSIBILITE     =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**',
4214                            fr="Liste des paramètres de sensibilité.",
4215                            ang="List of sensitivity parameters"),
4216      INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
4217      TITRE           =SIMP(statut='f',typ='TXM',max='**'),
4218 ) ;
4219
4220 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
4221 #            CONFIGURATION MANAGEMENT OF EDF VERSION
4222 # ======================================================================
4223 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
4224 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
4225 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
4226 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
4227 # (AT YOUR OPTION) ANY LATER VERSION.                                 
4228 #
4229 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
4230 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
4231 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
4232 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
4233 #
4234 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
4235 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
4236 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
4237 # ======================================================================
4238 def calc_fatigue_prod(TYPE_CALCUL,OPTION,**args):
4239   if TYPE_CALCUL == "CUMUL_DOMMAGE" : return cham_elem_dommag
4240   if TYPE_CALCUL == "FATIGUE_MULTI" and OPTION == "DOMA_ELGA": return cham_elem_facy_r
4241   if TYPE_CALCUL == "FATIGUE_MULTI" and OPTION == "DOMA_NOEUD": return cham_no_facy_r
4242   raise AsException("type de calcul non prevu")
4243
4244 CALC_FATIGUE=OPER(nom="CALC_FATIGUE",op= 151,sd_prod=calc_fatigue_prod,reentrant='n',
4245                   fr="Calcul d un cham de dommage ou d un cisaillement maximal dans le plan critique.",
4246                   docu="U4.83.02-d",
4247             UIinfo={"groupes":("Post traitements",)},
4248
4249          TYPE_CALCUL = SIMP(statut='o',typ='TXM',
4250                                into=("CUMUL_DOMMAGE","FATIGUE_MULTI",) ),
4251
4252          b_cumul_domma   =BLOC(condition = "TYPE_CALCUL == 'CUMUL_DOMMAGE'",
4253                                fr="Calcul d un champ de dommage subi par une structure.",
4254            regles=(PRESENT_PRESENT('DOMMAGE','MATER', ),),
4255            OPTION          =SIMP(statut='o',typ='TXM',
4256                                  into=("DOMA_ELNO_SIGM","DOMA_ELGA_SIGM",
4257                                        "DOMA_ELNO_EPSI","DOMA_ELGA_EPSI",
4258                                        "DOMA_ELNO_EPME","DOMA_ELGA_EPME") ),
4259            HISTOIRE        =FACT(statut='o',
4260              RESULTAT        =SIMP(statut='o',typ=(evol_elas,dyna_trans,
4261                                                    evol_noli) ),
4262              EQUI_GD         =SIMP(statut='f',typ='TXM',defaut="VMIS_SG",
4263                                  into=("VMIS_SG","INVA_2_SG") ),
4264            ),
4265            DOMMAGE         =SIMP(statut='o',typ='TXM',
4266                                into=("WOHLER","MANSON_COFFIN","TAHERI_MANSON",
4267                                      "TAHERI_MIXTE",) ),
4268            MATER           =SIMP(statut='o',typ=(mater) ),
4269            TAHERI_NAPPE    =SIMP(statut='f',typ=(nappe,formule) ),
4270            TAHERI_FONC     =SIMP(statut='f',typ=(fonction,formule) ),
4271          ),
4272
4273          b_fatigue_multi   =BLOC(condition = "TYPE_CALCUL == 'FATIGUE_MULTI'",
4274                                  fr="Plan critique dans le cas de la fatigue multiaxiale à grand nombre de cycles.",
4275            OPTION        =SIMP(statut='o',typ='TXM',into=("DOMA_ELGA","DOMA_NOEUD") ),
4276            RESULTAT      =SIMP(statut='o',typ=(evol_elas, evol_noli) ),
4277            CHAM_MATER    =SIMP(statut='o',typ=(cham_mater) ),
4278            CRITERE       =SIMP(statut='o',typ='TXM',into=("MATAKE","DANG_VAN") ),
4279            METHODE       =SIMP(statut='o',typ='TXM',into=("CERCLE_EXACT",) ),
4280            GROUP_MA      =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**' ),
4281            MAILLE        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**' ),
4282            GROUP_NO      =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**' ),
4283            NOEUD         =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**' ),
4284            b_fati_mult_ma =BLOC(condition = "(GROUP_MA != None or MAILLE != None or GROUP_NO != None or NOEUD != None) and \
4285                                               OPTION == 'DOMA_NOEUD'",
4286                MODELE        =SIMP(statut='o',typ=modele ),
4287                MAILLAGE      =SIMP(statut='o',typ=maillage ),
4288            ),
4289          ),
4290
4291          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
4292 )  ;
4293
4294 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
4295 #            CONFIGURATION MANAGEMENT OF EDF VERSION
4296 # ======================================================================
4297 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
4298 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
4299 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
4300 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
4301 # (AT YOUR OPTION) ANY LATER VERSION.                                 
4302 #
4303 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
4304 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
4305 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
4306 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
4307 #
4308 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
4309 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
4310 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
4311 # ======================================================================
4312 CALC_FLUI_STRU=OPER(nom="CALC_FLUI_STRU",op= 144,sd_prod=melasflu,
4313                     docu="U4.66.02-e",reentrant='n',
4314             UIinfo={"groupes":("Matrices/vecteurs",)},
4315          VITE_FLUI       =FACT(statut='o',
4316                                fr="Définir la plage de vitesse fluide étudiée",
4317            VITE_MIN        =SIMP(statut='o',typ='R' ),
4318            VITE_MAX        =SIMP(statut='o',typ='R' ),
4319            NB_POIN         =SIMP(statut='o',typ='I' ),
4320          ),
4321          BASE_MODALE     =FACT(statut='o',
4322                                
4323            regles=(UN_PARMI('AMOR_REDUIT','AMOR_UNIF'),),
4324            MODE_MECA       =SIMP(statut='o',typ=mode_meca ),
4325            NUME_ORDRE      =SIMP(statut='f',typ='I',max='**'),
4326            AMOR_REDUIT     =SIMP(statut='f',typ='R',max='**'),
4327            AMOR_UNIF       =SIMP(statut='f',typ='R' ),
4328          ),
4329          TYPE_FLUI_STRU  =SIMP(statut='o',typ=type_flui_stru ),
4330          IMPRESSION      =FACT(statut='f',
4331                                fr="Choix des informations à imprimer dans le fichier RESULTAT",
4332            PARA_COUPLAGE   =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
4333            DEFORMEE        =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
4334          ),
4335 )  ;
4336
4337 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
4338 #            CONFIGURATION MANAGEMENT OF EDF VERSION
4339 # ======================================================================
4340 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
4341 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
4342 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
4343 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
4344 # (AT YOUR OPTION) ANY LATER VERSION.                                 
4345 #
4346 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
4347 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
4348 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
4349 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
4350 #
4351 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
4352 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
4353 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
4354 # ======================================================================
4355 CALC_FONC_INTERP=OPER(nom="CALC_FONC_INTERP",op= 134,sd_prod=fonction,
4356                       docu="U4.32.01-e",reentrant='n',
4357            UIinfo={"groupes":("Fonction",)},
4358          regles=(UN_PARMI('VALE_PARA','LIST_PARA'),
4359          EXCLUS('VALE_PARA_FONC','LIST_PARA_FONC'),),
4360          FONCTION        =SIMP(statut='o',typ=formule ),
4361          NOM_RESU        =SIMP(statut='f',typ='TXM',defaut="TOUTRESU"),
4362          NOM_PARA        =SIMP(statut='o',typ='TXM'),
4363          VALE_PARA       =SIMP(statut='f',typ='R',max='**'),
4364          LIST_PARA       =SIMP(statut='f',typ=listr8 ),
4365          NOM_PARA_FONC   =SIMP(statut='f',typ='TXM'),
4366          VALE_PARA_FONC  =SIMP(statut='f',typ='R',max='**'),
4367          LIST_PARA_FONC  =SIMP(statut='f',typ=listr8 ),
4368          INTERPOL        =SIMP(statut='f',typ='TXM',max=2,defaut="LIN",
4369                               into=("NON","LIN","LOG") ),
4370          PROL_DROITE     =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("EXCLU","CONSTANT",
4371                               "LINEAIRE") ),
4372          PROL_GAUCHE     =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("EXCLU","CONSTANT",
4373                               "LINEAIRE") ),
4374          INTERPOL_FONC   =SIMP(statut='f',typ='TXM',max=2,into=("NON","LIN","LOG") ),
4375          PROL_DROITE_FONC=SIMP(statut='f',typ='TXM',
4376                                into=("EXCLU","CONSTANT","LINEAIRE") ),
4377          PROL_GAUCHE_FONC=SIMP(statut='f',typ='TXM',into=("EXCLU",
4378                               "CONSTANT","LINEAIRE") ),
4379          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
4380          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ),
4381 )  ;
4382
4383 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
4384 #            CONFIGURATION MANAGEMENT OF EDF VERSION
4385 # ======================================================================
4386 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
4387 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
4388 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
4389 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
4390 # (AT YOUR OPTION) ANY LATER VERSION.                                 
4391 #
4392 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
4393 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
4394 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
4395 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
4396 #
4397 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
4398 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
4399 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
4400 # ======================================================================
4401 # RESPONSABLE MCOURTOI M.COURTOIS
4402 def calc_fonction_prod(DERIVE,EXTRACTION,INTEGRE,ECART_TYPE,INVERSE,RMS,NOCI_SEISME,MAX,COMB,COMB_C,ENVELOPPE,
4403                        SPEC_OSCI,ASSE,FFT,COMPOSE,CORR_ACCE,PUISSANCE,LISS_ENVELOP,NORME,ABS, **args):
4404   if (RMS         != None): return table
4405   if (MAX         != None): return table
4406   if (NOCI_SEISME != None): return table
4407   if (ECART_TYPE  != None): return table
4408   if (INTEGRE     != None): return fonction
4409   if (DERIVE      != None): return fonction
4410   if (INVERSE     != None): return fonction
4411   if (COMB        != None): return fonction
4412   if (ENVELOPPE   != None): return fonction
4413   if (EXTRACTION  != None): return fonction
4414   if (SPEC_OSCI   != None): return fonction
4415   if (COMB_C      != None): return fonction_c
4416   if (COMPOSE     != None): return fonction
4417   if (ASSE        != None): return fonction
4418   if (FFT         != None): 
4419      vale=FFT.get_child('FONCTION').get_valeur()
4420      if (AsType(vale) == fonction )  : return fonction_c
4421      if (AsType(vale) == fonction_c) : return fonction
4422   if (CORR_ACCE   != None): return fonction
4423   if (LISS_ENVELOP!= None): return fonction
4424   if (PUISSANCE   != None): return fonction
4425   if (ABS         != None): return fonction
4426   if (NORME       != None): return table
4427   raise AsException("type de concept resultat non prevu")
4428
4429 CALC_FONCTION=OPER(nom="CALC_FONCTION",op=  91,sd_prod=calc_fonction_prod
4430                     ,fr="Opérations mathématiques sur des concepts de type fonction",
4431                      docu="U4.32.04-f",reentrant='n',
4432             UIinfo={"groupes":("Fonction",)},
4433          regles=(UN_PARMI('DERIVE','INTEGRE','SPEC_OSCI','MAX','COMB','COMB_C','ENVELOPPE','RMS',
4434                           'NOCI_SEISME','COMPOSE','EXTRACTION','ASSE','FFT','CORR_ACCE', 'PUISSANCE',
4435                           'NORME','LISS_ENVELOP','ECART_TYPE','INVERSE','ABS'),),
4436          FFT             =FACT(statut='f',fr="Calcul de la transformee de Fourier ou de son inverse",
4437            FONCTION        =SIMP(statut='o',typ=(fonction,fonction_c,formule) )
4438          ),
4439          DERIVE          =FACT(statut='f',fr="Calcul de la dérivée d une fonction",
4440            METHODE         =SIMP(statut='f',typ='TXM',defaut="DIFF_CENTREE",into=("DIFF_CENTREE",) ),
4441            FONCTION        =SIMP(statut='o',typ=(fonction,formule) ),
4442          ),
4443          INTEGRE         =FACT(statut='f',fr="Calcul de l intégrale d une fonction",
4444            METHODE         =SIMP(statut='f',typ='TXM',defaut="TRAPEZE",into=("SIMPSON","TRAPEZE") ),
4445            FONCTION        =SIMP(statut='o',typ=(fonction,formule)),
4446            COEF            =SIMP(statut='f',typ='R',defaut= 0.E+0,fr="Valeur de la constante d intégration" ),
4447          ),
4448          RMS             =FACT(statut='f',fr="Calcul de la valeur RMS d une fonction",
4449            METHODE         =SIMP(statut='f',typ='TXM',defaut="TRAPEZE",into=("SIMPSON","TRAPEZE") ),
4450            FONCTION        =SIMP(statut='o',typ=(fonction,formule) ),
4451            INST_INIT       =SIMP(statut='f',typ='R',fr="Instant initial définissant le début du signal" ),
4452            INST_FIN        =SIMP(statut='f',typ='R',fr="Instant final définissant la fin du signal" ),
4453            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
4454            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
4455          ),
4456          NOCI_SEISME     =FACT(statut='f',
4457            FONCTION        =SIMP(statut='f',typ=(fonction,formule) ),
4458            SPEC_OSCI       =SIMP(statut='f',typ=(fonction,formule) ),
4459            OPTION          =SIMP(statut='f',typ='TXM',defaut="TOUT",validators=NoRepeat(),max='**',
4460                                  into=("INTE_ARIAS","POUV_DEST","INTE_SPEC","VITE_ABSO_CUMU",
4461                                        "DUREE_PHAS_FORT","MAXI","ACCE_SUR_VITE","TOUT",) ),
4462            INST_INIT       =SIMP(statut='f',typ='R'),
4463            INST_FIN        =SIMP(statut='f',typ='R'),
4464            NATURE          =SIMP(statut='f',typ='TXM',into=("DEPL","VITE","ACCE") ),
4465            COEF            =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
4466            PESANTEUR       =SIMP(statut='f',typ='R',defaut= 9.81E+0 ),
4467            FREQ_INIT       =SIMP(statut='f',typ='R',defaut= 4.E-1 ),
4468            FREQ_FIN        =SIMP(statut='f',typ='R',defaut= 10.E+0 ),
4469            AMOR_REDUIT     =SIMP(statut='f',typ='R'),
4470            LIST_FREQ       =SIMP(statut='f',typ=listr8 ),
4471            FREQ            =SIMP(statut='f',typ='R',max='**'),
4472            NORME           =SIMP(statut='f',typ='R',defaut= 1.E+0 ),
4473            BORNE_INF       =SIMP(statut='f',typ='R',defaut= 0.05E+0 ),
4474            BORNE_SUP       =SIMP(statut='f',typ='R',defaut= 0.95E+0 ),
4475            b_acce_reel     =BLOC(condition="(INST_INIT != None)or(INST_FIN != None)or(FREQ_INIT != None)or(FREQ_FIN != None)",
4476              PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3),
4477              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
4478            ),
4479          ),
4480          LISS_ENVELOP    = FACT(statut='f',fr="Lissage d une enveloppe",
4481            FONCTION        =SIMP(statut='o',typ=(fonction,formule) ),
4482            AMOR            =SIMP(statut='f',typ='R',max='**'),
4483            FREQ_MIN        =SIMP(statut='f',typ='R'),
4484            FREQ_MAX        =SIMP(statut='f',typ='R'),
4485            FREQ_CREUX      =SIMP(statut='f',typ='R',max='**'),
4486            ELARG           =SIMP(statut='f',typ='TXM',defaut="GLOBAL",into=("GLOBAL","LOCAL") ),
4487               b_elarg_glob = BLOC ( condition = " (ELARG=='GLOBAL') ",
4488                    GAUCHE       =SIMP(statut='f',typ='R',defaut =10.0E0 ),  
4489                    DROITE       =SIMP(statut='f',typ='R',defaut =10.0E0 ),  
4490                 ),
4491               b_elarg_loc = BLOC ( condition = " (ELARG=='LOCAL') ",
4492                    FREQ_1       =SIMP(statut='o',typ='R'),  
4493                    FREQ_2       =SIMP(statut='o',typ='R' ),  
4494                    GAUCHE       =SIMP(statut='f',typ='R',defaut =10.0E0 ),  
4495                    DROITE       =SIMP(statut='f',typ='R',defaut =10.0E0 ),  
4496                 ),
4497            TOLE_LISS      =SIMP(statut='f',typ='R',defaut=25.0E0),
4498            ECH_FREQ_REF = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
4499                b_oui    =BLOC ( condition = "(ECH_FREQ_REF=='OUI') ",
4500                     regles=(UN_PARMI("LIST_FREQ", "AMOR_ECH"),),
4501                        LIST_FREQ   =SIMP(statut='f',typ=listr8 ),
4502                        AMOR_ECH    =SIMP(statut='f',typ='R',max='**'),
4503                               ),
4504          ),
4505          SPEC_OSCI       =FACT(statut='f',fr="Calcul du spectre d oscillateur",
4506            METHODE         =SIMP(statut='f',typ='TXM',defaut="NIGAM",into=("NIGAM",) ),
4507            FONCTION        =SIMP(statut='o',typ=(fonction,formule) ),
4508            AMOR_REDUIT     =SIMP(statut='f',typ='R',max='**'),
4509            LIST_FREQ       =SIMP(statut='f',typ=listr8 ),
4510            FREQ            =SIMP(statut='f',typ='R',max='**'),
4511            NORME           =SIMP(statut='f',typ='R',defaut= 9.81E+0,fr="Valeur de la norme du spectre d oscillateur" ),
4512            NATURE          =SIMP(statut='f',typ='TXM',defaut="ACCE",into=("DEPL","VITE","ACCE") ),
4513            NATURE_FONC     =SIMP(statut='f',typ='TXM',defaut="ACCE",into=("DEPL","VITE","ACCE") ),
4514          ),
4515          MAX             =FACT(statut='f',fr="Calcul des extrémas locaux d une fonction",
4516            FONCTION        =SIMP(statut='o',typ=(fonction,formule) ),
4517          ),
4518          ABS             =FACT(statut='f',fr="Calcul de la valeur absolue d une fonction",
4519            FONCTION        =SIMP(statut='o',typ=(fonction,formule),),
4520          ),
4521          COMB            =FACT(statut='f',max='**',fr="Calcul d une combinaison linéaire réelle de fonctions",
4522            FONCTION        =SIMP(statut='o',typ=(fonction,formule) ),
4523            COEF            =SIMP(statut='o',typ='R',fr="Coefficient réel de la combinaison linéaire associée à la fonction" ),
4524          ),
4525          COMB_C          =FACT(statut='f',max='**',fr="Calcul d une combinaison linéaire complexe de fonctions",
4526            regles=(UN_PARMI('COEF_R','COEF_C'),),
4527            FONCTION        =SIMP(statut='o',typ=(fonction, fonction_c,formule) ),
4528            COEF_R          =SIMP(statut='f',typ='R',fr="Coefficient réel de la combinaison linéaire associée à la fonction" ),
4529            COEF_C          =SIMP(statut='f',typ='C',fr="Coefficient complexe de la combinaison linéaire associée à la fonction" ),
4530          ),
4531          b_comb          =BLOC ( condition = " (COMB != None) or (COMB_C != None)",
4532              LIST_PARA      =SIMP(statut='f',typ=listr8 ),  
4533          ),
4534          COMPOSE         =FACT(statut='f',fr="Calcul de la composition de deux fonctions FONC_RESU(FONC_PARA)",
4535            FONC_RESU       =SIMP(statut='o',typ=(fonction,formule)),
4536            FONC_PARA       =SIMP(statut='o',typ=(fonction,formule)),
4537          ),
4538          EXTRACTION      =FACT(statut='f',fr="Opération d extraction sur une fonction complexe",
4539            FONCTION        =SIMP(statut='o',typ=fonction_c),
4540            PARTIE          =SIMP(statut='o',typ='TXM',into=("REEL","IMAG","MODULE","PHASE"),fr="Partie à extraire"),
4541          ),
4542          ENVELOPPE       =FACT(statut='f',fr="Calcul de l enveloppe d une famille de fonctions",
4543            FONCTION        =SIMP(statut='o',typ=(fonction,formule),max='**' ),
4544            CRITERE         =SIMP(statut='f',typ='TXM',defaut="SUP",into=("SUP","INF"),fr="Type de l enveloppe" ),
4545          ),
4546          ASSE            =FACT(statut='f',fr="Création à partir de la concatenation de fonctions",
4547            FONCTION        =SIMP(statut='o',typ=(fonction,formule),max='**' ),
4548            SURCHARGE       =SIMP(statut='f',typ='TXM',defaut="DROITE",into=("DROITE","GAUCHE")),
4549          ),
4550           CORR_ACCE     =FACT(statut='f',fr="Correction d un accelerogramme reel",
4551             CORR_DEPL       =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")),
4552             FONCTION        =SIMP(statut='o',typ=(fonction,formule) ),
4553          ),
4554          PUISSANCE       =FACT(statut='f',fr="Cacul du carré d'une fonction",
4555             FONCTION      =SIMP(statut='o', typ=(fonction,formule)),
4556             EXPOSANT      =SIMP(statut='f', typ='I', defaut=1 ),
4557          ),
4558          NORME           =FACT(statut='f',fr="Cacul de la norme L2 d'une fonction",
4559             FONCTION      =SIMP(statut='o', typ=(fonction,formule)),
4560          ),     
4561          INVERSE         =FACT(statut='f',fr="Cacul de l inverse d une fonction",
4562             FONCTION      =SIMP(statut='o', typ=fonction),
4563          ),     
4564          ECART_TYPE      =FACT(statut='f',fr="Cacul de l ecart-type d une fonction",
4565             METHODE       =SIMP(statut='f',typ='TXM',defaut="TRAPEZE",into=("SIMPSON","TRAPEZE") ),
4566             FONCTION      =SIMP(statut='o',typ=fonction),
4567             INST_INIT     =SIMP(statut='f',typ='R',fr="Instant initial définissant le début du signal" ),
4568             INST_FIN      =SIMP(statut='f',typ='R',fr="Instant final définissant la fin du signal" ),
4569             CRITERE       =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
4570             PRECISION     =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
4571          ),     
4572          NOM_PARA        =SIMP(statut='f',typ='TXM',into=("DX","DY","DZ","DRX","DRY","DRZ","TEMP",
4573                                                           "INST","X","Y","Z","EPSI","FREQ","PULS",
4574                                                           "AMOR","ABSC") ),
4575          NOM_RESU        =SIMP(statut='f',typ='TXM' ),
4576          INTERPOL        =SIMP(statut='f',typ='TXM',max=2,into=("NON","LIN","LOG") ),
4577          PROL_DROITE     =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ),
4578          PROL_GAUCHE     =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ),
4579          NOM_PARA_FONC   =SIMP(statut='f',typ='TXM',into=("DX","DY","DZ","DRX","DRY","DRZ","TEMP",
4580                                                           "INST","X","Y","Z","EPSI","FREQ","PULS",
4581                                                           "AMOR","ABSC") ),
4582          INTERPOL_FONC   =SIMP(statut='f',typ='TXM',max=2,into=("NON","LIN","LOG") ),
4583          PROL_DROITE_FONC=SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ),
4584          PROL_GAUCHE_FONC=SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ),
4585          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ),
4586          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
4587 )  ;
4588
4589 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
4590 #            CONFIGURATION MANAGEMENT OF EDF VERSION
4591 # ======================================================================
4592 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
4593 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
4594 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
4595 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
4596 # (AT YOUR OPTION) ANY LATER VERSION.                                 
4597 #
4598 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
4599 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
4600 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
4601 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
4602 #
4603 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
4604 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
4605 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
4606 # ======================================================================
4607 CALC_FORC_AJOU=OPER(nom="CALC_FORC_AJOU",op=199,sd_prod=vect_asse_gene,
4608                    fr="calcul de la force ajoutee ",
4609                    docu="U4.66.03-a",reentrant ='n',
4610             UIinfo={"groupes":("Matrices/vecteurs",)},
4611
4612         regles=(EXCLUS('MODE_MECA','MODELE_GENE'),
4613                 PRESENT_PRESENT( 'MODELE_GENE','NUME_DDL_GENE'),
4614                 UN_PARMI('MONO_APPUI', 'NOEUD','GROUP_NO'),
4615                 UN_PARMI('MONO_APPUI','MODE_STAT')),
4616
4617          MODELE_FLUIDE   =SIMP(statut='o',typ=modele ),
4618          MODELE_INTERFACE=SIMP(statut='o',typ=modele ),
4619          CHAM_MATER      =SIMP(statut='o',typ=cham_mater ),
4620          CHARGE          =SIMP(statut='o',typ=char_ther ),
4621          MODE_MECA       =SIMP(statut='f',typ=mode_meca ),
4622          MODELE_GENE     =SIMP(statut='f',typ=modele_gene ),
4623          NUME_DDL_GENE   =SIMP(statut='f',typ=nume_ddl_gene ),
4624          DIST_REFE       =SIMP(statut='f',typ='R',defaut= 1.E-2 ),
4625          AVEC_MODE_STAT  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
4626          NUME_MODE_MECA  =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
4627          POTENTIEL       =SIMP(statut='f',typ=evol_ther ),
4628          NOEUD_DOUBLE    =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
4629
4630          DIRECTION       =SIMP(statut='o',typ='R',max=3),
4631          MONO_APPUI      =SIMP(statut='f',typ='TXM',into=("OUI",),),
4632          NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
4633          GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
4634          MODE_STAT       =SIMP(statut='f',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc,),),
4635
4636          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ),
4637
4638          SOLVEUR         =FACT(statut='d',
4639            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
4640            b_mult_front    = BLOC ( condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
4641              RENUM           =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ),
4642            ),
4643            b_ldlt          =BLOC( condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT",
4644              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
4645            ),
4646            b_ldlt_mult     =BLOC( condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
4647                                    fr="Paramètres relatifs à la non iversibilité de la matrice à factorise",
4648              NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
4649              STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
4650            ),
4651            b_gcpc          =BLOC (condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué",
4652              PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ),
4653              NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut=0),
4654              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ),
4655              RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
4656              NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
4657            ),
4658                            ),
4659
4660            ) ;
4661
4662 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
4663 #            CONFIGURATION MANAGEMENT OF EDF VERSION
4664 # ======================================================================
4665 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
4666 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
4667 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
4668 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
4669 # (AT YOUR OPTION) ANY LATER VERSION.                                 
4670 #
4671 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
4672 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
4673 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
4674 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
4675 #
4676 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
4677 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
4678 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
4679 # ======================================================================
4680 CALC_G_LOCAL_T=OPER(nom="CALC_G_LOCAL_T",op=77,sd_prod=tabl_calc_g_loca,
4681                     fr="Calcul du taux de restitution local d énergie",docu="U4.82.04-f",reentrant='n',
4682             UIinfo={"groupes":("Post traitements",)},
4683          MODELE          =SIMP(statut='o',typ=modele),
4684          CHAM_MATER      =SIMP(statut='o',typ=cham_mater),
4685          regles=(UN_PARMI('RESULTAT','DEPL'),
4686                  UN_PARMI('R_INF','R_INF_FO'),
4687                  PRESENT_PRESENT('R_INF','R_SUP'),
4688                  PRESENT_PRESENT('R_INF_FO','R_SUP_FO'), ),
4689          FOND_FISS       =SIMP(statut='o',typ=fond_fiss),               
4690          DEPL            =SIMP(statut='f',typ=cham_no_depl_r),
4691          RESULTAT        =SIMP(statut='f',typ=(evol_elas,evol_noli),),
4692          b_extrac        =BLOC(condition="RESULTAT != None",fr="extraction d un champ",
4693              regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),),
4694              TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
4695              NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
4696              LIST_ORDRE      =SIMP(statut='f',typ=listis),
4697              INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
4698              LIST_INST       =SIMP(statut='f',typ=listr8),
4699              
4700              b_acce_reel     =BLOC(condition="(INST != None)or(LIST_INST != None)",
4701                PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-6),
4702                CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
4703              ),
4704          ),
4705  
4706          CHARGE          =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'),
4707          SYME_CHAR       =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SYME","ANTI","SANS") ),
4708  
4709          COMP_ELAS       =FACT(statut='f',
4710                RELATION        =SIMP(statut='f',typ='TXM',defaut="ELAS",
4711                                      into=("ELAS","ELAS_VMIS_LINE","ELAS_VMIS_TRAC") ),
4712                ELAS            =SIMP(statut='f',typ='I',defaut=1,into=(1,) ),
4713                ELAS_VMIS_LINE  =SIMP(statut='f',typ='I',defaut=1,into=(1,) ),
4714                ELAS_VMIS_TRAC  =SIMP(statut='f',typ='I',defaut=1,into=(1,) ),
4715                DEFORMATION     =SIMP(statut='f',typ='TXM',defaut="PETIT",into=("PETIT","GREEN") ),
4716       regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),),
4717                TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
4718                GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
4719                MAILLE          =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'),
4720          ),
4721  
4722          COMP_INCR       =FACT(statut='f',
4723                RELATION        =SIMP(statut='f',typ='TXM',defaut="ELAS",
4724                                      into=("ELAS","VMIS_ISOT_TRAC","VMIS_ISOT_LINE","VMIS_CINE_LINE") ),
4725                ELAS            =SIMP(statut='f',typ='I',defaut=1,into=(1,) ),
4726                VMIS_ISOT_TRAC  =SIMP(statut='f',typ='I',defaut=2,into=(2,) ),
4727                VMIS_ISOT_LINE  =SIMP(statut='f',typ='I',defaut=2,into=(2,) ),
4728                VMIS_CINE_LINE  =SIMP(statut='f',typ='I',defaut=7,into=(7,) ),
4729                DEFORMATION     =SIMP(statut='f',typ='TXM',defaut="PETIT",into=("PETIT","PETIT_REAC") ),
4730       regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),),
4731                TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
4732                GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
4733                MAILLE          =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'),
4734          ),
4735          
4736          ETAT_INIT       =FACT(statut='f',
4737            SIGM            =SIMP(statut='f',typ=cham_elem_sief_r),
4738            DEPL            =SIMP(statut='f',typ=cham_no_depl_r),
4739          ),
4740
4741          OPTION          =SIMP(statut='f',typ='TXM',defaut="CALC_G",
4742                                into=("CALC_G","CALC_G_LGLO","G_BILINEAIRE","CALC_G_MAX") ),
4743          b_g             =BLOC(condition="OPTION=='CALC_G'",
4744            LISSAGE_THETA   =SIMP(statut='f',typ='TXM',defaut="LEGENDRE",into=("LEGENDRE","LAGRANGE") ),
4745            LISSAGE_G       =SIMP(statut='f',typ='TXM',defaut="LEGENDRE",into=("LEGENDRE","LAGRANGE","LAGRANGE_NO_NO",) ),
4746          ), 
4747          b_g_lglo        =BLOC(condition="OPTION=='CALC_G_LGLO'",
4748            PROPAGATION     =SIMP(statut='o',typ='R'),
4749            THETA           =SIMP(statut='o',typ=theta_geom),
4750            DIRE_THETA      =SIMP(statut='f',typ=cham_no_depl_r),
4751            LISSAGE_THETA   =SIMP(statut='f',typ='TXM',defaut="LEGENDRE",into=("LEGENDRE","LAGRANGE") ),
4752            LISSAGE_G       =SIMP(statut='f',typ='TXM',defaut="LEGENDRE",into=("LEGENDRE","LAGRANGE","LAGRANGE_NO_NO",) ),
4753          ), 
4754          b_g_bilin       =BLOC(condition="OPTION=='G_BILINEAIRE'",
4755            LISSAGE_THETA   =SIMP(statut='f',typ='TXM',defaut="LEGENDRE",into=("LEGENDRE","LAGRANGE") ),
4756            LISSAGE_G       =SIMP(statut='f',typ='TXM',defaut="LEGENDRE",into=("LEGENDRE","LAGRANGE") ),
4757          ), 
4758          b_calc_g_max    =BLOC(condition="OPTION=='CALC_G_MAX'",
4759            BORNES          =FACT(statut='o',max='**',
4760               NUME_ORDRE     =SIMP(statut='o',typ='I'),
4761               VALE_MIN       =SIMP(statut='o',typ='R'),
4762               VALE_MAX       =SIMP(statut='o',typ='R'),
4763                                 ),
4764            LISSAGE_THETA   =SIMP(statut='f',typ='TXM',defaut="LEGENDRE",into=("LEGENDRE","LAGRANGE") ),
4765            LISSAGE_G       =SIMP(statut='f',typ='TXM',defaut="LEGENDRE",into=("LEGENDRE","LAGRANGE") ),
4766          ),
4767            
4768          DEGRE           =SIMP(statut='f',typ='I',defaut=5,into=(0,1,2,3,4,5,6,7) ),
4769
4770          R_INF           =SIMP(statut='f',typ='R'),
4771          R_SUP           =SIMP(statut='f',typ='R'),
4772          R_INF_FO        =SIMP(statut='f',typ=(fonction,formule)),
4773          R_SUP_FO        =SIMP(statut='f',typ=(fonction,formule)),
4774  
4775          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
4776          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
4777 )  ;
4778
4779 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
4780 #            CONFIGURATION MANAGEMENT OF EDF VERSION
4781 # ======================================================================
4782 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
4783 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
4784 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
4785 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
4786 # (AT YOUR OPTION) ANY LATER VERSION.                                 
4787 #
4788 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
4789 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
4790 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
4791 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
4792 #
4793 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
4794 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
4795 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
4796 # ======================================================================
4797 CALC_G_THETA_T=OPER(nom="CALC_G_THETA_T",op=53,sd_prod=tabl_calc_g_th,
4798                     fr="Calcul du taux de restitution d énergie par la méthode theta en thermo-élasticité en 2D ou en 3D",
4799                     docu="U4.82.03-f",reentrant='f',
4800             UIinfo={"groupes":("Post traitements",)},
4801          regles=(UN_PARMI('RESULTAT','DEPL'),
4802                  EXCLUS('COMP_ELAS','COMP_INCR'),),
4803          MODELE          =SIMP(statut='o',typ=modele),
4804          CHAM_MATER      =SIMP(statut='o',typ=cham_mater),
4805          THETA           =SIMP(statut='o',typ=theta_geom),
4806          DEPL            =SIMP(statut='f',typ=cham_no_depl_r),
4807          RESULTAT        =SIMP(statut='f',typ=(evol_elas,evol_noli),),
4808
4809          b_extrac        =BLOC(condition="RESULTAT != None",fr="extraction d un champ",
4810            regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),),
4811            TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
4812            NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
4813            LIST_ORDRE      =SIMP(statut='f',typ=listis),
4814            INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
4815            LIST_INST       =SIMP(statut='f',typ=listr8),
4816             
4817            b_acce_reel     =BLOC(condition="(INST != None)or(LIST_INST != None)",
4818              PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-6),
4819              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
4820            ),
4821          ),
4822
4823          CHARGE          =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'),
4824          SYME_CHAR       =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SYME","ANTI","SANS") ),
4825  
4826          COMP_ELAS       =FACT(statut='f',
4827                RELATION        =SIMP(statut='f',typ='TXM',defaut="ELAS",
4828                                      into=("ELAS","ELAS_VMIS_LINE","ELAS_VMIS_TRAC") ),
4829                ELAS            =SIMP(statut='f',typ='I',defaut=1,into=(1,) ),
4830                ELAS_VMIS_LINE  =SIMP(statut='f',typ='I',defaut=1,into=(1,) ),
4831                ELAS_VMIS_TRAC  =SIMP(statut='f',typ='I',defaut=1,into=(1,) ),
4832                DEFORMATION     =SIMP(statut='f',typ='TXM',defaut="PETIT",into=("PETIT","GREEN") ),
4833       regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),),
4834                TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
4835                GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
4836                MAILLE          =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'),
4837          ),  
4838          COMP_INCR       =FACT(statut='f',
4839                RELATION        =SIMP(statut='f',typ='TXM',defaut="ELAS",
4840                                      into=("ELAS","VMIS_ISOT_TRAC","VMIS_ISOT_LINE","VMIS_CINE_LINE") ),
4841                ELAS            =SIMP(statut='f',typ='I',defaut=1,into=(1,) ),
4842                VMIS_ISOT_TRAC  =SIMP(statut='f',typ='I',defaut=2,into=(2,) ),
4843                VMIS_ISOT_LINE  =SIMP(statut='f',typ='I',defaut=2,into=(2,) ),
4844                VMIS_CINE_LINE  =SIMP(statut='f',typ='I',defaut=7,into=(7,) ),
4845                DEFORMATION     =SIMP(statut='f',typ='TXM',defaut="PETIT",into=("PETIT","PETIT_REAC") ),
4846       regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),),
4847                TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
4848                GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
4849                MAILLE          =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'),
4850          ),
4851          ETAT_INIT       =FACT(statut='f',
4852            SIGM            =SIMP(statut='f',typ=cham_elem_sief_r),
4853            DEPL            =SIMP(statut='f',typ=cham_no_depl_r),
4854          ),
4855          OPTION          =SIMP(statut='f',typ='TXM',defaut="CALC_G",
4856                                into=("CALC_G","CALC_G_LAGR","CALC_K_G","G_BILINEAIRE","CALC_G_MAX",) ),
4857          b_calc_g_max    =BLOC(condition="OPTION=='CALC_G_MAX'",
4858            BORNES          =FACT(statut='o',max='**',
4859                 NUME_ORDRE     =SIMP(statut='o',typ='I'),
4860                 VALE_MIN       =SIMP(statut='o',typ='R'),
4861                 VALE_MAX       =SIMP(statut='o',typ='R'),
4862                                 ),
4863          ),
4864          b_calc_k_g      =BLOC(condition="OPTION=='CALC_K_G'",
4865            FOND_FISS       =SIMP(statut='o',typ=fond_fiss),
4866          ),
4867          b_calc_g_lagr   =BLOC(condition="OPTION=='CALC_G_LAGR'",
4868            PROPAGATION     =SIMP(statut='o',typ='R'),
4869          ),
4870
4871          SENSIBILITE     =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**',
4872                            fr="Liste des paramètres de sensibilité.",
4873                            ang="List of sensitivity parameters"),
4874
4875          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
4876          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
4877 )  ;
4878
4879 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
4880 #            CONFIGURATION MANAGEMENT OF EDF VERSION
4881 # ======================================================================
4882 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
4883 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
4884 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
4885 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
4886 # (AT YOUR OPTION) ANY LATER VERSION.                                 
4887 #
4888 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
4889 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
4890 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
4891 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
4892 #
4893 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
4894 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
4895 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
4896 # ======================================================================
4897 CALC_INTE_SPEC=OPER(nom="CALC_INTE_SPEC",op= 120,sd_prod=tabl_intsp,
4898                     fr="Calcul d une matrice interspectrale d une fonction du temps",
4899                     docu="U4.36.03-f",reentrant='n',
4900             UIinfo={"groupes":("Fonction",)},
4901          INST_INIT       =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
4902          INST_FIN        =SIMP(statut='o',typ='R' ),
4903          DUREE_ANALYSE   =SIMP(statut='f',typ='R' ),
4904          DUREE_DECALAGE  =SIMP(statut='f',typ='R' ),
4905          NB_POIN         =SIMP(statut='o',typ='I' ),
4906          FONCTION        =SIMP(statut='o',typ=(fonction,formule),max='**' ),
4907          TITRE           =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'),
4908          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
4909 )  ;
4910
4911 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
4912 #            CONFIGURATION MANAGEMENT OF EDF VERSION
4913 # ======================================================================
4914 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
4915 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
4916 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
4917 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
4918 # (AT YOUR OPTION) ANY LATER VERSION.                                 
4919 #
4920 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
4921 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
4922 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
4923 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
4924 #
4925 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
4926 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
4927 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
4928 # ======================================================================
4929 CALC_MATR_AJOU=OPER(nom="CALC_MATR_AJOU",op= 152,sd_prod=matr_asse_gene_r,
4930                     fr="Calcul des matrices de masse, d amortissement ou de raideur ajoutées",
4931                     docu="U4.66.01-d",reentrant='n',
4932             UIinfo={"groupes":("Matrices/vecteurs",)},
4933          regles=(EXCLUS('MODE_MECA','CHAM_NO','MODELE_GENE'),
4934                  PRESENT_ABSENT('NUME_DDL_GENE','CHAM_NO'),
4935                  PRESENT_PRESENT('MODELE_GENE','NUME_DDL_GENE'),),
4936          MODELE_FLUIDE   =SIMP(statut='o',typ=modele ),
4937          MODELE_INTERFACE=SIMP(statut='o',typ=modele ),
4938          CHAM_MATER      =SIMP(statut='o',typ=cham_mater ),
4939          CHARGE          =SIMP(statut='o',typ=char_ther ),
4940          MODE_MECA       =SIMP(statut='f',typ=mode_meca ),
4941          CHAM_NO         =SIMP(statut='f',typ=cham_no_depl_r ),
4942          MODELE_GENE     =SIMP(statut='f',typ=modele_gene ),
4943          NUME_DDL_GENE   =SIMP(statut='f',typ=nume_ddl_gene ),
4944          DIST_REFE       =SIMP(statut='f',typ='R',defaut= 1.E-2 ),
4945          AVEC_MODE_STAT  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
4946          NUME_MODE_MECA  =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
4947          OPTION          =SIMP(statut='o',typ='TXM',into=("MASS_AJOU","AMOR_AJOU","RIGI_AJOU") ),
4948          POTENTIEL       =SIMP(statut='f',typ=evol_ther ),
4949          NOEUD_DOUBLE    =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
4950          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ),
4951
4952          SOLVEUR         =FACT(statut='d',
4953            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
4954            b_mult_front    = BLOC ( condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
4955              RENUM           =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ),
4956            ),
4957            b_ldlt          =BLOC( condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT",
4958              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
4959            ),
4960            b_ldlt_mult     =BLOC( condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
4961                                    fr="Paramètres relatifs à la non iversibilité de la matrice à factorise",
4962              NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
4963              STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
4964            ),
4965            b_gcpc          =BLOC (condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué",
4966              PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ),
4967              NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut=0),
4968              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ),
4969              RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
4970              NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
4971            ),
4972          ),
4973 )  ;
4974
4975 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
4976 #            CONFIGURATION MANAGEMENT OF EDF VERSION
4977 # ======================================================================
4978 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
4979 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
4980 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
4981 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
4982 # (AT YOUR OPTION) ANY LATER VERSION.                                 
4983 #
4984 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
4985 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
4986 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
4987 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
4988 #
4989 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
4990 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
4991 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
4992 # ======================================================================
4993 # RESPONSABLE VABHHTS J.PELLET
4994 def calc_matr_elem_prod(OPTION,**args):
4995   if OPTION == "RIGI_MECA"        : return matr_elem_depl_r
4996   if OPTION == "RIGI_FLUI_STRU"   : return matr_elem_depl_r
4997   if OPTION == "RIGI_MECA_LAGR"   : return matr_elem_depl_r
4998   if OPTION == "MASS_ID_MDEP_R"   : return matr_elem_depl_r
4999   if OPTION == "MASS_ID_MDNS_R"   : return matr_elem_depl_r
5000   if OPTION == "MASS_ID_MTEM_R"   : return matr_elem_temp_r
5001   if OPTION == "MASS_ID_MTNS_R"   : return matr_elem_temp_r
5002   if OPTION == "MASS_MECA"        : return matr_elem_depl_r
5003   if OPTION == "MASS_FLUI_STRU"   : return matr_elem_depl_r
5004   if OPTION == "RIGI_GEOM"        : return matr_elem_depl_r
5005   if OPTION == "RIGI_ROTA"        : return matr_elem_depl_r
5006   if OPTION == "AMOR_MECA"        : return matr_elem_depl_r
5007   if OPTION == "IMPE_MECA"        : return matr_elem_depl_r
5008   if OPTION == "ONDE_FLUI"        : return matr_elem_depl_r
5009   if OPTION == "RIGI_MECA_HYST"   : return matr_elem_depl_c
5010   if OPTION == "RIGI_THER"        : return matr_elem_temp_r
5011   if OPTION == "MASS_THER"        : return matr_elem_temp_r
5012   if OPTION == "MASS_MECA_DIAG"   : return matr_elem_depl_r
5013   if OPTION == "RIGI_ACOU"        : return matr_elem_pres_c
5014   if OPTION == "MASS_ACOU"        : return matr_elem_pres_c
5015   if OPTION == "AMOR_ACOU"        : return matr_elem_pres_c
5016   raise AsException("type de concept resultat non prevu")
5017
5018 CALC_MATR_ELEM=OPER(nom="CALC_MATR_ELEM",op=   9,sd_prod=calc_matr_elem_prod
5019                     ,fr="Calcul des matrices élémentaires",docu="U4.61.01-g",reentrant='n',
5020             UIinfo={"groupes":("Matrices/vecteurs",)},
5021          OPTION          =SIMP(statut='o',typ='TXM',
5022                                into=("RIGI_MECA","MASS_MECA","RIGI_GEOM",
5023                                      "AMOR_MECA","RIGI_THER","MASS_THER","IMPE_MECA",
5024                                      "ONDE_FLUI","MASS_FLUI_STRU","RIGI_FLUI_STRU",
5025                                      "RIGI_ROTA","MASS_MECA_DIAG","RIGI_ACOU",
5026                                      "MASS_ID_MDEP_R","MASS_ID_MDNS_R","MASS_ID_MTEM_R","MASS_ID_MTNS_R",
5027                                      "MASS_ACOU","AMOR_ACOU","RIGI_MECA_HYST",
5028                                      "RIGI_MECA_LAGR") ),
5029
5030          b_rigi_meca = BLOC( condition = "OPTION=='RIGI_MECA'",
5031            regles=(AU_MOINS_UN('MODELE','CHARGE' ),),
5032            MODELE          =SIMP(statut='f',typ=modele ),
5033            b_modele        =BLOC(condition = "MODELE != None",
5034              CHAM_MATER      =SIMP(statut='f',typ=cham_mater ),
5035              CARA_ELEM       =SIMP(statut='f',typ=cara_elem ),
5036              MODE_FOURIER    =SIMP(statut='f',typ='I',defaut= 0 ),
5037            ),
5038            CHARGE          =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**' ),
5039            b_charge        =BLOC (condition = "CHARGE != None",
5040              INST            =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5041            ),
5042          ),
5043
5044          b_rigi_meca_lagr  =BLOC(condition = "OPTION=='RIGI_MECA_LAGR'",
5045            MODELE            =SIMP(statut='o',typ=modele ),
5046            CHAM_MATER        =SIMP(statut='o',typ=cham_mater ),
5047            CHARGE            =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'  ),
5048            b_charge        =BLOC(condition = "CHARGE != None",
5049              INST            =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5050            ),
5051            THETA           =SIMP(statut='o',typ=theta_geom ),
5052            PROPAGATION     =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5053          ),
5054
5055          b_mass_meca       =BLOC(condition = "(OPTION=='MASS_MECA') or (OPTION=='MASS_MECA_DIAG')",
5056            regles=(AU_MOINS_UN('MODELE','CHARGE'),),
5057            MODELE          =SIMP(statut='f',typ=modele ),
5058            b_modele          =BLOC(condition = "MODELE != None",
5059              CHAM_MATER        =SIMP(statut='f',typ=cham_mater ),
5060              CARA_ELEM         =SIMP(statut='f',typ=cara_elem ),
5061            ),
5062            CHARGE          =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**' ),
5063            b_charge        =BLOC(condition = "CHARGE != None",
5064              INST            =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5065            ),
5066          ),
5067
5068          b_mass_identite   =BLOC(condition = "(OPTION in ('MASS_ID_MDEP_R','MASS_ID_MTEM_R','MASS_ID_MDNS_R','MASS_ID_MTNS_R')) ",
5069            MODELE            =SIMP(statut='o',typ=modele ),
5070            # j'ajoute ces 2 mot clés inutiles à cause de l'alarme pas assez subtile de MEDOME
5071            CHAM_MATER        =SIMP(statut='f',typ=cham_mater ),
5072            CARA_ELEM         =SIMP(statut='f',typ=cara_elem ),
5073          ),
5074
5075          b_rigi_geom       =BLOC(condition = "OPTION=='RIGI_GEOM'",
5076            MODELE            =SIMP(statut='o',typ=modele ),
5077            CARA_ELEM         =SIMP(statut='f',typ=cara_elem ),
5078            SIEF_ELGA         =SIMP(statut='o',typ=cham_elem_sief_r ),
5079            MODE_FOURIER      =SIMP(statut='f',typ='I',defaut= 0 ),
5080          ),
5081
5082          b_rigi_rota       =BLOC(condition = "OPTION=='RIGI_ROTA'",
5083            MODELE            =SIMP(statut='o',typ=modele ),
5084            CHAM_MATER        =SIMP(statut='o',typ=cham_mater ),
5085            CHARGE            =SIMP(statut='o',typ=char_meca,validators=NoRepeat(),max='**' ),
5086            INST              =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5087          ),
5088
5089          b_amor_meca       =BLOC(condition = "OPTION=='AMOR_MECA'",
5090            regles=(AU_MOINS_UN('CARA_ELEM','RIGI_MECA'),
5091                    ENSEMBLE('RIGI_MECA','MASS_MECA','CHAM_MATER'), ),
5092            MODELE            =SIMP(statut='o',typ=modele ),
5093            CARA_ELEM         =SIMP(statut='f',typ=cara_elem ),
5094            CHAM_MATER        =SIMP(statut='f',typ=cham_mater ),
5095            RIGI_MECA         =SIMP(statut='f',typ=matr_elem_depl_r ),
5096            MASS_MECA         =SIMP(statut='f',typ=matr_elem_depl_r ),
5097            CHARGE            =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**' ),
5098          ),
5099
5100          b_rigi_meca_hyst  =BLOC( condition = "OPTION=='RIGI_MECA_HYST'",
5101            MODELE            =SIMP(statut='o',typ=modele ),
5102            CHARGE            =SIMP(statut='f',typ=char_meca ,validators=NoRepeat(),max='**' ),
5103            CHAM_MATER        =SIMP(statut='f',typ=cham_mater ),
5104            CARA_ELEM         =SIMP(statut='f',typ=cara_elem ),
5105            RIGI_MECA         =SIMP(statut='o',typ=matr_elem_depl_r ),
5106          ),
5107
5108          b_rigi_ther       =BLOC(condition = "OPTION=='RIGI_THER'",
5109            regles=(AU_MOINS_UN('MODELE','CHARGE' ),),
5110            MODELE            =SIMP(statut='f',typ=modele ),
5111            b_modele          =BLOC(condition = "MODELE != None",
5112              CHAM_MATER        =SIMP(statut='o',typ=cham_mater ),
5113              CARA_ELEM         =SIMP(statut='f',typ=cara_elem ),
5114              MODE_FOURIER      =SIMP(statut='f',typ='I',defaut= 0 ),
5115            ),
5116            CHARGE            =SIMP(statut='f',typ=char_ther,validators=NoRepeat(),max='**' ),
5117          ),
5118
5119          b_mass_ther       =BLOC(condition = "OPTION=='MASS_THER'",
5120            MODELE            =SIMP(statut='o',typ=modele ),
5121            CHAM_MATER        =SIMP(statut='o',typ=cham_mater ),
5122            CARA_ELEM         =SIMP(statut='f',typ=cara_elem ),
5123          ),
5124
5125          b_rigi_acou       =BLOC(condition = "(OPTION=='RIGI_ACOU') or (OPTION=='MASS_ACOU') or (OPTION=='AMOR_ACOU')",
5126            MODELE            =SIMP(statut='o',typ=modele ),
5127            CHAM_MATER        =SIMP(statut='o',typ=cham_mater ),
5128            CHARGE            =SIMP(statut='f',typ=char_acou ,validators=NoRepeat(),max='**' ),
5129          ),
5130
5131          b_rigi_flui       =BLOC(condition = "(OPTION=='RIGI_FLUI_STRU') or (OPTION=='MASS_FLUI_STRU')",
5132            MODELE            =SIMP(statut='o',typ=modele ),
5133            CARA_ELEM         =SIMP(statut='o',typ=cara_elem ),
5134            CHAM_MATER        =SIMP(statut='o',typ=cham_mater ),
5135            CHARGE            =SIMP(statut='o',typ=char_meca ,validators=NoRepeat(),max='**' ),
5136            INST              =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5137          ),
5138
5139          b_impe_meca       =BLOC(condition = "(OPTION=='IMPE_MECA') or (OPTION=='ONDE_FLUI')",
5140            MODELE            =SIMP(statut='o',typ=modele ),
5141            CHARGE            =SIMP(statut='o',typ=char_meca,validators=NoRepeat(),max='**' ),
5142            CHAM_MATER        =SIMP(statut='o',typ=cham_mater ),
5143          ),
5144 )  ;
5145
5146 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
5147 #            CONFIGURATION MANAGEMENT OF EDF VERSION
5148 # ======================================================================
5149 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
5150 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
5151 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
5152 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
5153 # (AT YOUR OPTION) ANY LATER VERSION.                                 
5154 #
5155 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
5156 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
5157 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
5158 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
5159 #
5160 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
5161 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
5162 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
5163 # ======================================================================
5164 CALC_META=OPER(nom="CALC_META",op=194,sd_prod=evol_ther,docu="U4.85.01-b",reentrant='o',
5165             UIinfo={"groupes":("Post traitements",)},
5166                fr="Calcule la métallurgie a partir du résultat du calcul thermique",
5167          MODELE          =SIMP(statut='o',typ=modele ),
5168          CHAM_MATER      =SIMP(statut='o',typ=cham_mater ),
5169          RESULTAT        =SIMP(statut='o',typ=evol_ther ),
5170          ETAT_INIT       =FACT(statut='o',
5171       regles=(UN_PARMI('NUME_INIT', 'INST_INIT', 'META_INIT',),),
5172            EVOL_THER       =SIMP(statut='f',typ=evol_ther ),
5173            NUME_INIT       =SIMP(statut='f',typ='I' ),  
5174            INST_INIT       =SIMP(statut='f',typ='R'),
5175              b_inst     =BLOC(condition="(INST_INIT != None)",
5176                PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3),
5177                CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
5178                              ),
5179            META_INIT       =SIMP(statut='f',typ=carte_var2_r ),
5180          ),
5181          COMP_INCR       =FACT(statut='o',max='**',
5182            RELATION        =SIMP(statut='o',typ='TXM',into=("ACIER","ZIRC",) ),
5183            ACIER           =SIMP(statut='c',typ='I',defaut=7,into=(7,) ),
5184            ZIRC            =SIMP(statut='c',typ='I',defaut=3,into=(3,) ),
5185       regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),),
5186            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
5187            GROUP_MA        =SIMP(statut='f',typ=grma),
5188            MAILLE          =SIMP(statut='f',typ=ma),
5189          ),
5190          OPTION          =SIMP(statut='f',typ='TXM'     
5191                              ,into=("META_ELNO_TEMP",) ),
5192 )  ;
5193
5194 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
5195 #            CONFIGURATION MANAGEMENT OF EDF VERSION
5196 # ======================================================================
5197 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
5198 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
5199 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
5200 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
5201 # (AT YOUR OPTION) ANY LATER VERSION.                                 
5202 #
5203 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
5204 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
5205 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
5206 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
5207 #
5208 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
5209 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
5210 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
5211 # ======================================================================
5212 # RESPONSABLE G8BHHXD X.DESROCHES
5213 def calc_no_prod(RESULTAT,**args):
5214    if AsType(RESULTAT) != None : return AsType(RESULTAT)
5215    raise AsException("type de concept resultat non prevu")
5216
5217 CALC_NO=OPER(nom="CALC_NO",op= 106,sd_prod=calc_no_prod,docu="U4.81.02-f",reentrant='o',
5218             UIinfo={"groupes":("Post traitements",)},
5219          RESULTAT        =SIMP(statut='o',typ=(evol_elas,dyna_trans,dyna_harmo,acou_harmo,mode_meca,
5220                                                mode_acou,mode_stat,mode_stat_depl,mode_stat_acce,
5221                                               mode_stat_forc,evol_ther,evol_noli,base_modale,
5222                                                mult_elas,fourier_elas,mode_flamb ) ),
5223          SENSIBILITE     =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**',
5224                                fr="Liste des paramètres de sensibilité.",
5225                                ang="List of sensitivity parameters"),
5226
5227          regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE',
5228                         'NOEUD_CMP','LIST_INST','LIST_FREQ','LIST_ORDRE','NOM_CAS'),),
5229          TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
5230          NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
5231          NUME_MODE       =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
5232          NOEUD_CMP       =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'),
5233          NOM_CAS         =SIMP(statut='f',typ='TXM' ),
5234          INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
5235          FREQ            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
5236          LIST_INST       =SIMP(statut='f',typ=listr8),
5237          LIST_FREQ       =SIMP(statut='f',typ=listr8),
5238          PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3 ),
5239          CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
5240          LIST_ORDRE      =SIMP(statut='f',typ=listis),
5241
5242          OPTION          =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',
5243                                into=("FORC_NODA","REAC_NODA",
5244                                      "DCHA_NOEU_SIGM",
5245                                      "DEGE_NOEU_DEPL",
5246                                      "DETE_NOEU_DLTE",
5247                                      "DEDE_NOEU_DLDE",
5248                                      "DESI_NOEU_DLSI",
5249                                      "DURT_NOEU_META",
5250                                      "EFGE_NOEU_CART","EFGE_NOEU_DEPL",
5251                                      "ENDO_NOEU_SINO",
5252                                      "ENEL_NOEU_ELGA",
5253                                      "EPMG_NOEU_DEPL",
5254                                      "EPSA_NOEU",
5255                                      "EPSG_NOEU_DEPL",
5256                                      "EPSI_NOEU_DEPL",
5257                                      "EPSP_NOEU"     ,"EPSP_NOEU_ZAC",
5258                                      "EQUI_NOEU_EPME","EQUI_NOEU_EPSI","EQUI_NOEU_SIGM",
5259                                      "ERRE_NOEU_ELGA",
5260                                      "FLUX_NOEU_TEMP",
5261                                      "HYDR_NOEU_ELGA",
5262                                      "INTE_NOEU_ACTI","INTE_NOEU_REAC",
5263                                      "META_NOEU_TEMP",
5264                                      "PMPB_NOEU_SIEF",
5265                                      "PRES_NOEU_DBEL","PRES_NOEU_IMAG","PRES_NOEU_REEL",
5266                                      "RADI_NOEU_SIGM",
5267                                      "SIEF_NOEU"     ,"SIEF_NOEU_ELGA",
5268                                      "SIGM_NOEU_CART","SIGM_NOEU_COQU","SIGM_NOEU_DEPL",
5269                                      "SIGM_NOEU_SIEF","SIGM_NOEU_ZAC",
5270                                      "SIPO_NOEU_DEPL","SIPO_NOEU_SIEF",
5271                                      "SIRE_NOEU_DEPL",
5272                                      "VARI_NOEU"     ,"VARI_NOEU_ELGA",) ),
5273
5274          b_forc_reac     =BLOC(condition = """(OPTION == 'FORC_NODA') or (type(OPTION) == type(()) and 'FORC_NODA' in OPTION) or\
5275  (OPTION == 'REAC_NODA') or (type(OPTION) == type(()) and 'REAC_NODA' in OPTION)""",
5276              MODELE          =SIMP(statut='o',typ=modele),
5277          ),
5278
5279          CHAM_MATER      =SIMP(statut='f',typ=cham_mater),
5280          CARA_ELEM       =SIMP(statut='f',typ=cara_elem),
5281          EXCIT           =FACT(statut='f',max='**',
5282            CHARGE          =SIMP(statut='f',typ=(char_meca,char_ther,char_acou) ),
5283            FONC_MULT       =SIMP(statut='f',typ=(fonction,formule)),
5284            TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FIXE_CSTE",
5285                                  into=("FIXE_CSTE","FIXE_PILO","SUIV") ),
5286          ),
5287          TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
5288          GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
5289          MAILLE          =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'),
5290 )  ;
5291
5292 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
5293 #            CONFIGURATION MANAGEMENT OF EDF VERSION
5294 # ======================================================================
5295 # COPYRIGHT (C) 1991 - 2003  EDF R&D                  WWW.CODE-ASTER.ORG
5296 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY  
5297 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY  
5298 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR     
5299 # (AT YOUR OPTION) ANY LATER VERSION.                                                  
5300 #                                                                       
5301 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT   
5302 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF            
5303 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU      
5304 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                              
5305 #                                                                       
5306 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE     
5307 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,         
5308 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.        
5309 # ======================================================================
5310 # RESPONSABLE ASSIRE A.ASSIRE
5311
5312 from Macro.calc_precont_ops import calc_precont_ops
5313
5314
5315 # ===========================================================================
5316 #           CATALOGUE DE LA MACRO "CALC_PRECONT"
5317 #           -----------------------------------------
5318 # USAGE :
5319
5320 #  
5321 # ===========================================================================
5322
5323 CALC_PRECONT=MACRO(nom="CALC_PRECONT",op=calc_precont_ops,sd_prod=evol_noli,
5324                    fr="imposer la tension definie par le BPEL dans les cables",
5325                    docu="",reentrant='f',
5326          reuse =SIMP(statut='f',typ='evol_noli'),
5327          MODELE           =SIMP(statut='o',typ=modele),
5328          CHAM_MATER       =SIMP(statut='o',typ=cham_mater),
5329          CARA_ELEM        =SIMP(statut='o',typ=cara_elem),
5330          CABLE_BP         =SIMP(statut='o',typ=cabl_precont,validators=NoRepeat(),max='**'),
5331          CABLE_BP_INACTIF =SIMP(statut='f',typ=cabl_precont,validators=NoRepeat(),max='**'),
5332          INCREMENT        =FACT(statut='o',
5333            LIST_INST       =SIMP(statut='o',typ=listr8),
5334            INST_INIT       =SIMP(statut='f',typ='R'),
5335            INST_FIN        =SIMP(statut='f',typ='R'),
5336            PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3 ),
5337            SUBD_PAS        =SIMP(statut='f',typ='I',defaut=1),
5338            SUBD_PAS_MINI   =SIMP(statut='f',typ='R'),
5339            COEF_SUBD_PAS_1 =SIMP(statut='f',typ='R',defaut= 1.0E+0),
5340          ),
5341
5342          NEWTON          =FACT(statut='d',
5343             REAC_INCR       =SIMP(statut='f',typ='I',defaut= 1 ),
5344             PREDICTION      =SIMP(statut='f',typ='TXM',into=("DEPL_CALCULE","TANGENTE","ELASTIQUE","EXTRAPOL") ),
5345             MATRICE         =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE") ),
5346             PAS_MINI_ELAS   =SIMP(statut='f',typ='R',defaut=0.0E+0),
5347             REAC_ITER       =SIMP(statut='f',typ='I',defaut=0),
5348             EVOL_NOLI       =SIMP(statut='f',typ=evol_noli),
5349           ),
5350          RECH_LINEAIRE   =FACT(statut='f',
5351            RESI_LINE_RELA  =SIMP(statut='f',typ='R',defaut= 1.0E-1 ),
5352            ITER_LINE_MAXI  =SIMP(statut='f',typ='I',defaut= 3),
5353          ),
5354           CONVERGENCE     =FACT(statut='d',
5355             RESI_GLOB_MAXI  =SIMP(statut='f',typ='R'),
5356             RESI_GLOB_RELA  =SIMP(statut='f',typ='R'),
5357             ITER_GLOB_MAXI  =SIMP(statut='f',typ='I',defaut=10),
5358             ITER_GLOB_ELAS  =SIMP(statut='f',typ='I',defaut=25),
5359             ARRET           =SIMP(statut='f',typ='TXM',defaut="OUI"),
5360             RESI_INTE_RELA  =SIMP(statut='f',typ='R'
5361                                  ,defaut= 1.0E-6),
5362             ITER_INTE_MAXI  =SIMP(statut='f',typ='I',defaut= 10 ),
5363             ITER_INTE_PAS   =SIMP(statut='f',typ='I',defaut= 0 ),
5364             TYPE_MATR_COMP  =SIMP(statut='f',typ='TXM',defaut="TANG_VIT",into=("TANG_VIT",)),
5365             RESO_INTE       =SIMP(statut='f',typ='TXM',defaut="IMPLICITE",
5366                                   into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")),
5367           ),
5368           ETAT_INIT       =FACT(statut='f',
5369             regles=(AU_MOINS_UN('EVOL_NOLI','DEPL','SIGM','VARI','VARI_NON_LOCAL',),
5370                     EXCLUS('EVOL_NOLI','DEPL',),
5371                     EXCLUS('EVOL_NOLI','SIGM',),
5372                     EXCLUS('EVOL_NOLI','VARI',),
5373                     EXCLUS('EVOL_NOLI','VARI_NON_LOCAL',),
5374                     EXCLUS('NUME_ORDRE','INST'), ),
5375             DEPL            =SIMP(statut='f',typ=cham_no_depl_r),
5376             SIGM            =SIMP(statut='f',typ=(cham_elem_sief_r,carte_sief_r)),
5377             VARI            =SIMP(statut='f',typ=cham_elem_vari_r),
5378             VARI_NON_LOCAL  =SIMP(statut='f',typ=cham_no_vanl_r),
5379             EVOL_NOLI       =SIMP(statut='f',typ=evol_noli),
5380             NUME_ORDRE      =SIMP(statut='f',typ='I'),
5381             INST            =SIMP(statut='f',typ='R'),
5382             PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),
5383             CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
5384             NUME_DIDI       =SIMP(statut='f',typ='I'),
5385             INST_ETAT_INIT  =SIMP(statut='f',typ='R'),
5386           ),
5387           SOLVEUR         =FACT(statut='d',
5388             METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
5389             b_mult_front    =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
5390               RENUM           =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ),
5391             ),
5392             b_ldlt         =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT",
5393               RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
5394             ),
5395             b_ldlt_mult    =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
5396                                     fr="Paramètres relatifs à la non inversibilité de la matrice à factorise",
5397               NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
5398               STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON","DECOUPE") ),
5399             ),
5400             b_gcpc         =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué",
5401               PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ),
5402               NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ),
5403               RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ),
5404               RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
5405               NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
5406             ),
5407             SYME            =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
5408           ),
5409             SOLV_NON_LOCAL  =FACT(statut='f',
5410               METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
5411               b_mult_front    =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
5412                 RENUM           =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ),
5413               ),
5414               b_ldlt         =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT",
5415                 RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
5416               ),
5417               b_ldlt_mult    =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
5418                                      fr="Paramètres relatifs à la non inversibilité de la matrice à factorise",
5419                 NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
5420                 STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
5421               ),
5422               b_gcpc         =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué",
5423                 PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ),
5424                 NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ),
5425                 RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
5426                 NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
5427               ),
5428               EPS             =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5429             ),
5430             LAGR_NON_LOCAL  =FACT(statut='f',
5431               ITER_DUAL_MAXI  =SIMP(statut='f',typ='I',defaut= 50),
5432               RESI_DUAL_ABSO  =SIMP(statut='o',typ='R'),
5433               RESI_PRIM_ABSO  =SIMP(statut='o',typ='R'),
5434               R               =SIMP(statut='f',typ='R',defaut= 1000.),
5435               ITER_PRIM_MAXI  =SIMP(statut='f',typ='I',defaut= 10),
5436             ),
5437           PARM_THETA      =SIMP(statut='f',typ='R'
5438                                ,defaut= 1. ),
5439           INFO            =SIMP(statut='f',typ='I',into=(1,2) ),
5440           TITRE           =SIMP(statut='f',typ='TXM',max='**' ),
5441
5442           EXCIT           =FACT(statut='o',max='**',
5443             CHARGE          =SIMP(statut='o',typ=char_meca),
5444           ),
5445
5446          COMP_INCR       =C_COMP_INCR(),
5447   )  ;
5448
5449 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
5450 #            CONFIGURATION MANAGEMENT OF EDF VERSION
5451 # ======================================================================
5452 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
5453 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
5454 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
5455 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
5456 # (AT YOUR OPTION) ANY LATER VERSION.                                 
5457 #
5458 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
5459 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
5460 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
5461 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
5462 #
5463 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
5464 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
5465 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
5466 # ======================================================================
5467 CALC_THETA=OPER(nom="CALC_THETA",op=54,sd_prod=theta_geom,docu="U4.82.02-e",reentrant='n',
5468             UIinfo={"groupes":("Post traitements",)},
5469                 fr="Affectation d un champ sur le maillage (mécanique de la rupture)",
5470          regles=(UN_PARMI('THETA_2D','THETA_3D','THETA_BANDE'),
5471                  PRESENT_ABSENT('THETA_2D','DIRE_THETA'),
5472                  EXCLUS('DIRECTION','DIRE_THETA'),),
5473          OPTION          =SIMP(statut='f',typ='TXM',defaut="COURONNE",into=("COURONNE","BANDE") ),
5474          MODELE          =SIMP(statut='o',typ=(modele) ),
5475          THETA_3D        =FACT(statut='f',max='**',
5476            regles=(UN_PARMI('TOUT','GROUP_NO','NOEUD'),
5477                    UN_PARMI('MODULE','MODULE_FO'),
5478                    ENSEMBLE('MODULE','R_INF','R_SUP'),
5479                    ENSEMBLE('MODULE_FO','R_INF_FO','R_SUP_FO'),),
5480            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
5481            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
5482            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
5483            MODULE          =SIMP(statut='f',typ='R'),
5484            R_INF           =SIMP(statut='f',typ='R'),
5485            R_SUP           =SIMP(statut='f',typ='R'),
5486            MODULE_FO       =SIMP(statut='f',typ=(fonction,formule)),
5487            R_INF_FO        =SIMP(statut='f',typ=(fonction,formule)),
5488            R_SUP_FO        =SIMP(statut='f',typ=(fonction,formule)),
5489                          ),
5490          b_theta_3d     =BLOC(condition="THETA_3D != None",
5491            FOND_FISS       =SIMP(statut='f',typ=fond_fiss),),
5492          DIRE_THETA      =SIMP(statut='f',typ=(cham_no_depl_r) ),
5493          DIRECTION       =SIMP(statut='f',typ='R',max='**'),
5494          THETA_2D        =FACT(statut='f',max='**',
5495            regles=(UN_PARMI('GROUP_NO','NOEUD'),),
5496            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
5497            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
5498            MODULE          =SIMP(statut='o',typ='R'),
5499            R_INF           =SIMP(statut='o',typ='R'),
5500            R_SUP           =SIMP(statut='o',typ='R'),
5501          ),
5502          THETA_BANDE     =FACT(statut='f',max='**',
5503            MODULE          =SIMP(statut='o',typ='R'),
5504            R_INF           =SIMP(statut='o',typ='R'),
5505            R_SUP           =SIMP(statut='o',typ='R'),
5506          ),
5507          GRAD_NOEU_THETA =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
5508          IMPRESSION      =FACT(statut='f',
5509            FICHIER         =SIMP(statut='f',typ='TXM',defaut="RESULTAT",into=("RESULTAT",) ),
5510            FORMAT          =SIMP(statut='f',typ='TXM',defaut="EXCEL",into=("EXCEL","AGRAF") ),
5511          ),
5512 )  ;
5513
5514 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
5515 #            CONFIGURATION MANAGEMENT OF EDF VERSION
5516 # ======================================================================
5517 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
5518 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
5519 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
5520 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
5521 # (AT YOUR OPTION) ANY LATER VERSION.                                 
5522 #
5523 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
5524 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
5525 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
5526 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
5527 #
5528 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
5529 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
5530 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
5531 # ======================================================================
5532 # RESPONSABLE VABHHTS J.PELLET
5533 def calc_vect_elem_prod(OPTION,**args):
5534   if OPTION == "CHAR_MECA" :      return vect_elem_depl_r
5535   if OPTION == "CHAR_MECA_LAGR" : return vect_elem_depl_r
5536   if OPTION == "CHAR_THER" :      return vect_elem_temp_r
5537   if OPTION == "CHAR_ACOU" :      return vect_elem_pres_c
5538   if OPTION == "FORC_NODA" :      return vect_elem_depl_r
5539   raise AsException("type de concept resultat non prevu")
5540
5541 CALC_VECT_ELEM=OPER(nom="CALC_VECT_ELEM",op=8,sd_prod=calc_vect_elem_prod,docu="U4.61.02-g",reentrant='n',
5542             UIinfo={"groupes":("Matrices/vecteurs",)},
5543                     fr="Calcul des seconds membres élémentaires",
5544          OPTION          =SIMP(statut='o',typ='TXM',into=("CHAR_MECA","CHAR_THER","CHAR_ACOU",
5545                                                            "FORC_NODA","CHAR_MECA_LAGR") ),
5546          b_char_meca     =BLOC(condition = "OPTION=='CHAR_MECA'",
5547            regles=(AU_MOINS_UN('CHARGE','MODELE'),),
5548            CHARGE          =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'),
5549            MODELE          =SIMP(statut='f',typ=modele),
5550            b_charge     =BLOC(condition = "CHARGE != None", fr="modèle ne contenant pas de sous-structure",
5551               CHAM_MATER   =SIMP(statut='f',typ=cham_mater),
5552               CARA_ELEM    =SIMP(statut='f',typ=cara_elem),
5553               INST         =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5554               MODE_FOURIER =SIMP(statut='f',typ='I',defaut= 0 ),
5555            ),  
5556            b_modele     =BLOC(condition = "(MODELE != None)",fr="modèle contenant une sous-structure",
5557               SOUS_STRUC      =FACT(statut='o',min=01,
5558                 regles=(UN_PARMI('TOUT','MAILLE'),),
5559                 CAS_CHARGE  =SIMP(statut='o',typ='TXM' ),
5560                 TOUT        =SIMP(statut='f',typ='TXM',into=("OUI",) ),
5561                 MAILLE      =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**',),
5562               ),
5563            ),
5564          ),
5565          b_char_ther     =BLOC(condition = "OPTION=='CHAR_THER'",
5566            CARA_ELEM        =SIMP(statut='f',typ=cara_elem),
5567            CHARGE           =SIMP(statut='o',typ=char_ther,validators=NoRepeat(),max='**'),
5568            INST             =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5569          ),
5570               
5571          b_char_acou     =BLOC(condition = "OPTION=='CHAR_ACOU'",
5572            CHAM_MATER        =SIMP(statut='o',typ=cham_mater),
5573            CHARGE            =SIMP(statut='o',typ=char_acou,validators=NoRepeat(),max='**'),
5574          ),
5575          
5576          b_forc_noda     =BLOC(condition = "OPTION=='FORC_NODA'",
5577            SIEF_ELGA         =SIMP(statut='o',typ=cham_elem_sief_r),
5578            CARA_ELEM         =SIMP(statut='f',typ=cara_elem),
5579            MODELE            =SIMP(statut='f',typ=modele),
5580          ),
5581          
5582          b_meca_lagr     =BLOC(condition = "OPTION=='CHAR_MECA_LAGR'",
5583            CHAM_MATER        =SIMP(statut='o',typ=cham_mater),
5584            THETA             =SIMP(statut='o',typ=theta_geom),
5585            PROPAGATION       =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5586            CHARGE            =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'),
5587            INST              =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
5588          ),
5589 ) ;
5590
5591 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
5592 #            CONFIGURATION MANAGEMENT OF EDF VERSION
5593 # ======================================================================
5594 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
5595 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
5596 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
5597 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
5598 # (AT YOUR OPTION) ANY LATER VERSION.                                 
5599 #
5600 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
5601 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
5602 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
5603 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
5604 #
5605 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
5606 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
5607 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
5608 # ======================================================================
5609 # RESPONSABLE G8BHHXD X.DESROCHES
5610 def comb_cham_elem_prod(COMB_R=None,COMB_C=None,COMB_FOURIER=None,**args):
5611
5612   if COMB_R != None:
5613     vale=COMB_R.get_child('CHAM_ELEM').get_valeur()
5614   elif COMB_C != None:
5615     vale=COMB_C.get_child('CHAM_ELEM').get_valeur()
5616   elif COMB_FOURIER != None:
5617     vale=COMB_FOURIER.get_child('CHAM_ELEM').get_valeur()
5618   else :
5619     raise AsException("type de concept resultat non prevu")
5620
5621   if AsType(vale) == cham_elem_sief_r : return cham_elem_sief_r
5622   if AsType(vale) == cham_elem_flux_r : return cham_elem_flux_r
5623   if AsType(vale) == cham_elem_epsi_r : return cham_elem_epsi_r
5624   if AsType(vale) == cham_elem_ener_r : return cham_elem_ener_r
5625   if AsType(vale) == cham_elem_crit_r : return cham_elem_crit_r
5626   if AsType(vale) == cham_elem_dbel_r : return cham_elem_dbel_r
5627   if AsType(vale) == cham_elem_pres_r : return cham_elem_pres_r
5628   if AsType(vale) == cham_elem_sief_c : return cham_elem_sief_c
5629   raise AsException("type de concept resultat non prevu")
5630
5631 COMB_CHAM_ELEM=OPER(nom="COMB_CHAM_ELEM",op= 139,sd_prod=comb_cham_elem_prod,reentrant='f',
5632                     fr="Combinaison linéaire de champs par éléments",docu="U4.72.03-f",
5633             UIinfo={"groupes":("Résultats et champs",)},
5634       regles=(UN_PARMI('COMB_R','COMB_C','COMB_FOURIER'),
5635               PRESENT_PRESENT('COMB_FOURIER','ANGL'),),
5636       COMB_R          =FACT(statut='f',max='**',
5637         PARTIE          =SIMP(statut='f',typ='TXM',into=("REEL","IMAG") ),
5638         COEF_R          =SIMP(statut='o',typ='R'),
5639         CHAM_ELEM       =SIMP(statut='o',
5640                               typ=(cham_elem_sief_r,cham_elem_flux_r,cham_elem_epsi_r,
5641                                    cham_elem_ener_r,cham_elem_crit_r,cham_elem_dbel_r,
5642                                    cham_elem_pres_r,cham_elem_sief_c ) ),
5643       ),
5644       COMB_C          =FACT(statut='f',max='**',
5645         regles=(UN_PARMI('COEF_R','COEF_C', ),),
5646         COEF_R          =SIMP(statut='f',typ='R'),
5647         COEF_C          =SIMP(statut='f',typ='C'),
5648         CHAM_ELEM       =SIMP(statut='o',typ=(cham_elem_sief_r) ),
5649       ),
5650       COMB_FOURIER    =FACT(statut='f',max='**',
5651         COEF_R          =SIMP(statut='f',typ='R',defaut= 1.),
5652         NUME_MODE       =SIMP(statut='o',typ='I'),
5653         TYPE_MODE       =SIMP(statut='o',typ='TXM',into=("SYME","ANTI") ),
5654         CHAM_ELEM       =SIMP(statut='o',typ=(cham_elem_sief_r,cham_elem_flux_r,cham_elem_epsi_r ) ),
5655       ),
5656       ANGL            =SIMP(statut='f',typ='R' ),
5657 )  ;
5658
5659
5660 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
5661 #            CONFIGURATION MANAGEMENT OF EDF VERSION
5662 # ======================================================================
5663 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
5664 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
5665 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
5666 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
5667 # (AT YOUR OPTION) ANY LATER VERSION.                                 
5668 #
5669 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
5670 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
5671 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
5672 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
5673 #
5674 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
5675 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
5676 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
5677 # ======================================================================
5678 # RESPONSABLE G8BHHXD X.DESROCHES
5679 def comb_cham_no_prod(COMB_R,COMB_C,COMB_FOURIER,**args):
5680   if COMB_C != None:
5681     type_mat = AsType(COMB_C.get_child('CHAM_NO').get_valeur())
5682     if type_mat in  (cham_no_depl_c,cham_no_depl_r) : return cham_no_depl_c
5683     if type_mat in  (cham_no_temp_c,cham_no_temp_r) : return cham_no_temp_c
5684     if type_mat in  (cham_no_pres_c,cham_no_pres_r) : return cham_no_pres_c
5685   elif COMB_R != None:
5686     type_mat = AsType(COMB_R.get_child('CHAM_NO').get_valeur())
5687     if type_mat in  (cham_no_depl_c,cham_no_depl_r) : return cham_no_depl_r
5688     if type_mat in  (cham_no_temp_c,cham_no_temp_r) : return cham_no_temp_r
5689     if type_mat in  (cham_no_pres_c,cham_no_pres_r) : return cham_no_pres_r
5690     if type_mat ==  matr_asse_gene_r : return matr_asse_gene_r
5691   elif COMB_FOURIER != None:
5692     type_mat = AsType(COMB_FOURIER.get_child('CHAM_NO').get_valeur())
5693     if type_mat == cham_no_temp_r : return cham_no_temp_r
5694     if type_mat == cham_no_depl_r : return cham_no_depl_r
5695   raise AsException("type de concept resultat non prevu")
5696
5697
5698 COMB_CHAM_NO=OPER(nom="COMB_CHAM_NO",op=  30,sd_prod=comb_cham_no_prod
5699                     ,fr="Combinaison linéaire de champs aux noeuds",
5700                      docu="U4.72.02-g",reentrant='f',
5701             UIinfo={"groupes":("Résultats et champs",)},
5702          regles=(UN_PARMI('COMB_R','COMB_C','COMB_FOURIER'),),
5703          COMB_R          =FACT(statut='f',max='**',
5704            PARTIE          =SIMP(statut='f',typ='TXM',into=("REEL","IMAG",) ),
5705            CHAM_NO         =SIMP(statut='o',typ=(cham_no_temp_r,cham_no_temp_c,cham_no_depl_r,cham_no_depl_c
5706                                                 ,cham_no_pres_r,cham_no_pres_c ) ),
5707            COEF_R          =SIMP(statut='o',typ='R' ),
5708          ),
5709          COMB_C          =FACT(statut='f',max='**',
5710            regles=(UN_PARMI('COEF_R','COEF_C' ),),
5711            CHAM_NO         =SIMP(statut='o',typ=(cham_no_temp_r,cham_no_depl_r,cham_no_pres_r,cham_no_temp_c
5712                                                 ,cham_no_depl_c,cham_no_pres_c ) ),
5713            COEF_R          =SIMP(statut='f',typ='R' ),
5714            COEF_C          =SIMP(statut='f',typ='C' ),
5715          ),
5716          COMB_FOURIER    =FACT(statut='f',max='**',
5717            CHAM_NO         =SIMP(statut='o',typ=(cham_no_temp_r,cham_no_depl_r) ),
5718            COEF_R          =SIMP(statut='f',typ='R',defaut= 1. ),
5719            NUME_MODE       =SIMP(statut='o',typ='I' ),
5720            TYPE_MODE       =SIMP(statut='o',typ='TXM',into=("SYME","ANTI") ),
5721          ),
5722          b_angl = BLOC ( condition = "COMB_FOURIER != None",
5723            ANGL            =SIMP(statut='o',typ='R' ),
5724          ),
5725 )  ;
5726
5727 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
5728 #            CONFIGURATION MANAGEMENT OF EDF VERSION
5729 # ======================================================================
5730 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
5731 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
5732 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
5733 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
5734 # (AT YOUR OPTION) ANY LATER VERSION.                                 
5735 #
5736 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
5737 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
5738 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
5739 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
5740 #
5741 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
5742 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
5743 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
5744 # ======================================================================
5745 # RESPONSABLE G8BHHXD X.DESROCHES
5746 COMB_FOURIER=OPER(nom="COMB_FOURIER",op= 161,sd_prod=comb_fourier,
5747                   docu="U4.83.31-d",reentrant='n',
5748             UIinfo={"groupes":("Post traitements",)},
5749          RESULTAT        =SIMP(statut='o',typ=fourier_elas ),
5750          ANGL            =SIMP(statut='o',typ='R',max='**'),
5751          NOM_CHAM        =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=5,
5752                                into=("DEPL","REAC_NODA","SIEF_ELGA_DEPL","EPSI_ELNO_DEPL","SIGM_ELNO_DEPL") ),
5753 )  ;
5754
5755 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
5756 #            CONFIGURATION MANAGEMENT OF EDF VERSION
5757 # ======================================================================
5758 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
5759 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
5760 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
5761 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
5762 # (AT YOUR OPTION) ANY LATER VERSION.                                 
5763 #
5764 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
5765 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
5766 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
5767 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
5768 #
5769 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
5770 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
5771 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
5772 # ======================================================================
5773 # RESPONSABLE VABHHTS J.PELLET
5774 def comb_matr_asse_prod(COMB_R,COMB_C,CALC_AMOR_GENE,**args):
5775   if COMB_C != None:
5776     type_mat = AsType(COMB_C.get_child('MATR_ASSE').get_valeur())
5777     if type_mat in  (matr_asse_depl_c,matr_asse_depl_r) : return matr_asse_depl_c
5778     if type_mat in  (matr_asse_gene_c,matr_asse_gene_r) : return matr_asse_gene_c    
5779     if type_mat in  (matr_asse_temp_c,matr_asse_temp_r) : return matr_asse_temp_c
5780     if type_mat in  (matr_asse_pres_c,matr_asse_pres_r) : return matr_asse_pres_c
5781   elif COMB_R != None:
5782     type_mat = AsType(COMB_R.get_child('MATR_ASSE').get_valeur())
5783     if type_mat in  (matr_asse_depl_c,matr_asse_depl_r) : return matr_asse_depl_r
5784     if type_mat in  (matr_asse_temp_c,matr_asse_temp_r) : return matr_asse_temp_r
5785     if type_mat in  (matr_asse_pres_c,matr_asse_pres_r) : return matr_asse_pres_r
5786     if type_mat in  (matr_asse_gene_c,matr_asse_gene_r) : return matr_asse_gene_r
5787   elif CALC_AMOR_GENE != None: return matr_asse_gene_r
5788   raise AsException("type de concept resultat non prevu")
5789
5790 COMB_MATR_ASSE=OPER(nom="COMB_MATR_ASSE",op=  31,sd_prod=comb_matr_asse_prod,
5791                     fr="Combinaison linéaire de matrices assemblées",
5792                     docu="U4.72.01-g",reentrant='f',
5793             UIinfo={"groupes":("Résultats et champs",)},
5794          regles=(UN_PARMI('COMB_R','COMB_C','CALC_AMOR_GENE' ),),
5795          COMB_R          =FACT(statut='f',max='**',
5796            PARTIE          =SIMP(statut='f',typ='TXM',into=("REEL","IMAG") ),
5797            MATR_ASSE       =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_temp_r,matr_asse_temp_c
5798                                                 ,matr_asse_pres_r,matr_asse_pres_c,matr_asse_gene_r,matr_asse_gene_c ) ),
5799            COEF_R          =SIMP(statut='o',typ='R' ),
5800          ),
5801          COMB_C          =FACT(statut='f',max='**',
5802            regles=(UN_PARMI('COEF_R','COEF_C' ),),
5803            MATR_ASSE       =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_temp_r,matr_asse_temp_c
5804                                                 ,matr_asse_pres_r,matr_asse_pres_c,matr_asse_gene_r,matr_asse_gene_c ) ),
5805            COEF_R          =SIMP(statut='f',typ='R' ),
5806            COEF_C          =SIMP(statut='f',typ='C' ),
5807          ),
5808          CALC_AMOR_GENE   =FACT(statut='f',
5809            regles=(UN_PARMI('AMOR_REDUIT','LIST_AMOR' ),),
5810            MASS_GENE    = SIMP(statut='f', typ=matr_asse_gene_r),
5811            RIGI_GENE    = SIMP(statut='f', typ=matr_asse_gene_r),
5812            AMOR_REDUIT  = SIMP(statut='f',typ='R',max='**'),
5813            LIST_AMOR    = SIMP(statut='f',typ=listr8 ),
5814          ),         
5815          SANS_CMP        =SIMP(statut='f',typ='TXM',into=("LAGR",) ),
5816 )  ;
5817
5818 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
5819 #            CONFIGURATION MANAGEMENT OF EDF VERSION
5820 # ======================================================================
5821 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
5822 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
5823 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
5824 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
5825 # (AT YOUR OPTION) ANY LATER VERSION.                                 
5826 #
5827 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
5828 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
5829 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
5830 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
5831 #
5832 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
5833 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
5834 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
5835 # ======================================================================
5836 COMB_SISM_MODAL=OPER(nom="COMB_SISM_MODAL",op= 109,sd_prod=mode_stat,
5837                      fr="Réponse sismique par recombinaison modale par une méthode spectrale",
5838                      docu="U4.84.01-e",reentrant='n',
5839             UIinfo={"groupes":("Post traitements",)},
5840          regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','FREQ','NUME_MODE','LIST_FREQ','LIST_ORDRE'),
5841                  UN_PARMI('AMOR_REDUIT','LIST_AMOR','AMOR_GENE' ),),
5842          MODE_MECA       =SIMP(statut='o',typ=mode_meca ),
5843          TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
5844          NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
5845          LIST_ORDRE      =SIMP(statut='f',typ=listis ),
5846          NUME_MODE       =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
5847          FREQ            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
5848          LIST_FREQ       =SIMP(statut='f',typ=listr8 ),
5849          b_freq          =BLOC(condition = "FREQ != None or LIST_FREQ != None",
5850            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
5851            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
5852          ),
5853          MODE_CORR       =SIMP(statut='f',typ=mode_stat_acce ),
5854          
5855          AMOR_REDUIT     =SIMP(statut='f',typ='R',max='**'),
5856          LIST_AMOR       =SIMP(statut='f',typ=listr8 ),
5857          AMOR_GENE       =SIMP(statut='f',typ=matr_asse_gene_r ),
5858          
5859          MASS_INER       =SIMP(statut='f',typ=tabl_mass_iner ),
5860          CORR_FREQ       =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
5861          
5862          EXCIT           =FACT(statut='o',max='**',
5863            regles=(UN_PARMI('MONO_APPUI','NOEUD','GROUP_NO'),
5864                    UN_PARMI('AXE','TRI_AXE','TRI_SPEC' ),),
5865            
5866            MONO_APPUI      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
5867            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
5868            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
5869            AXE             =SIMP(statut='f',typ='R',max=3,fr="Excitation suivant un seul axe",),
5870            TRI_AXE         =SIMP(statut='f',typ='R',max=3,fr="Excitation suivant les trois axes mais avec le meme spectre",),
5871            TRI_SPEC        =SIMP(statut='f',typ='TXM',into=("OUI",),
5872                                  fr="Excitation suivant les trois axes  avec trois spectres"),
5873            b_axe           =BLOC(condition = "AXE != None",fr="Excitation suivant un seul axe",
5874              SPEC_OSCI       =SIMP(statut='o',typ=(fonction,formule),),
5875              ECHELLE         =SIMP(statut='f',typ='R',),
5876            ),
5877            b_tri_axe       =BLOC(condition = "TRI_AXE != None",fr="Excitation suivant les trois axes mais avec le meme spectre",
5878              SPEC_OSCI       =SIMP(statut='o',typ=(fonction,formule),),
5879              ECHELLE         =SIMP(statut='f',typ='R',),
5880            ),
5881            b_tri_spec      =BLOC(condition = "TRI_SPEC != None",fr="Excitation suivant les trois axes  avec trois spectres",
5882              SPEC_OSCI       =SIMP(statut='o',typ=(fonction,formule),min=3,max=3 ),
5883              ECHELLE         =SIMP(statut='f',typ='R',min=3,max=3),
5884            ),       
5885            NATURE          =SIMP(statut='f',typ='TXM',defaut="ACCE",into=("ACCE","VITE","DEPL") ),
5886          ),
5887          COMB_MODE       =FACT(statut='o',
5888            TYPE            =SIMP(statut='o',typ='TXM',into=("SRSS","CQC","DSC","ABS","DPC") ),
5889            DUREE           =SIMP(statut='f',typ='R' ),
5890          ),
5891          COMB_DIRECTION  =FACT(statut='f',
5892            TYPE            =SIMP(statut='f',typ='TXM',into=("QUAD","NEWMARK") ),
5893          ),
5894          COMB_MULT_APPUI =FACT(statut='f',max='**',
5895            regles=(UN_PARMI('TOUT','NOEUD','GROUP_NO' ),),
5896            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
5897            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
5898            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
5899            TYPE_COMBI      =SIMP(statut='f',typ='TXM',into=("QUAD","LINE",) ),
5900          ),
5901          COMB_DEPL_APPUI=FACT(statut='f',max='**',
5902            regles=(UN_PARMI('TOUT','LIST_CAS'),),
5903            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",)),
5904            LIST_CAS       =SIMP(statut='f',typ='I',max='**'),
5905            TYPE_COMBI      =SIMP(statut='f',typ='TXM',into=("QUAD","LINE","ABS") ),
5906          ),
5907          DEPL_MULT_APPUI =FACT(statut='f',max='**',
5908            regles=(UN_PARMI('NOEUD','GROUP_NO'),
5909                    AU_MOINS_UN('DX','DY','DZ' ),),
5910            NOM_CAS         =SIMP(statut='o',typ='TXM',max='**'),
5911            NUME_CAS        =SIMP(statut='o',typ='I',max='**'),
5912            MODE_STAT       =SIMP(statut='f',typ=(mode_stat_depl,), ),
5913            NOEUD_REFE      =SIMP(statut='f',typ=no),
5914            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
5915            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
5916            DX              =SIMP(statut='f',typ='R' ),
5917            DY              =SIMP(statut='f',typ='R' ),
5918            DZ              =SIMP(statut='f',typ='R' ),
5919          ),
5920          OPTION          =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=9,
5921                                into=("DEPL","VITE","ACCE_ABSOLU","SIGM_ELNO_DEPL","SIEF_ELGA_DEPL",
5922                                      "EFGE_ELNO_DEPL","REAC_NODA","FORC_NODA","EFGE_ELNO_CART",
5923                                      "SIPO_ELNO_DEPL") ),
5924          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ),
5925          IMPRESSION      =FACT(statut='f',max='**',
5926            regles=(EXCLUS('TOUT','NIVEAU'),),
5927            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
5928            NIVEAU          =SIMP(statut='f',typ='TXM',into=("SPEC_OSCI","MASS_EFFE","MAXI_GENE"),validators=NoRepeat(),max=3 ),
5929          ),
5930          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
5931 )  ;
5932
5933 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
5934 # RESPONSABLE VABHHTS J.PELLET
5935 #            CONFIGURATION MANAGEMENT OF EDF VERSION
5936 # ======================================================================
5937 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
5938 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
5939 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
5940 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR
5941 # (AT YOUR OPTION) ANY LATER VERSION.
5942 #
5943 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT
5944 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF
5945 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU
5946 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.
5947 #
5948 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE
5949 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,
5950 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.
5951 # ======================================================================
5952 def crea_champ_prod(TYPE_CHAM,**args):
5953   import string
5954   grandeur=string.lower(TYPE_CHAM[5:])
5955
5956   if TYPE_CHAM[0:5] == "CART_" :
5957      uu="carte_"+grandeur
5958   elif TYPE_CHAM[0:5] == "NOEU_" :
5959      uu="cham_no_"+grandeur
5960   elif TYPE_CHAM[0:2] == "EL"    :
5961      uu="cham_elem_"+grandeur
5962   else :
5963      raise AsException("type de concept resultat non prevu")
5964
5965   vv=eval(uu) ; return vv
5966
5967
5968 CREA_CHAMP=OPER(nom="CREA_CHAMP",op= 195,sd_prod=crea_champ_prod,
5969                 fr="  ",docu="U4.72.04-b",reentrant='n',
5970             UIinfo={"groupes":("Résultats et champs",)},
5971          TYPE_CHAM       =SIMP(statut='o',typ='TXM',),
5972       # TYPE_CHAM doit etre de la forme : CART_xx, NOEU_xx, ELEM_xx, ELGA_xx ou ELNO_xx
5973       # ou xx est le nom d'une grandeur définie dans le catalogue des grandeurs
5974
5975 #        SI CREATION D'UN CHAM_NO, POUR IMPOSER LA NUMEROTATION DES DDLS :
5976 #        ------------------------------------------------------------------
5977          regles=(EXCLUS('NUME_DDL','CHAM_NO',)),
5978          NUME_DDL        =SIMP(statut='f',typ=(nume_ddl) ),
5979          CHAM_NO         =SIMP(statut='f',typ=(cham_no) ),
5980
5981 #        SI CREATION D'UN CHAM_ELEM, POUR aider a l'allocation du champ :
5982 #        (PAR DEFAUT : TOU_INI_ELNO/_ELGA/_ELEM)
5983 #        ------------------------------------------------------------------
5984          OPTION         =SIMP(statut='f',typ='TXM'),
5985
5986          OPERATION       =SIMP(statut='o',typ='TXM',into=("AFFE","ASSE","EVAL","EXTR","DISC",) ),
5987
5988          b_affe          =BLOC(condition = "OPERATION == 'AFFE'",
5989              regles=(UN_PARMI('MAILLAGE','MODELE'),),
5990              MAILLAGE        =SIMP(statut='f',typ=(maillage) ),
5991              MODELE          =SIMP(statut='f',typ=(modele) ),
5992              b_affe_modele   =BLOC(condition = "MODELE != None",
5993                  PROL_ZERO       =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ), ),
5994              AFFE            =FACT(statut='o',max='**',
5995                 regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD',),
5996                         UN_PARMI('VALE','VALE_I','VALE_C','VALE_F', ),),
5997                 TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
5998                 GROUP_MA        =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'),
5999                 MAILLE          =SIMP(statut='f',typ=ma   ,validators=NoRepeat(),max='**'),
6000                 GROUP_NO        =SIMP(statut='f',typ=grno ,validators=NoRepeat(),max='**'),
6001                 NOEUD           =SIMP(statut='f',typ=no   ,validators=NoRepeat(),max='**'),
6002                 NOM_CMP         =SIMP(statut='o',typ='TXM',max='**'),
6003                 VALE            =SIMP(statut='f',typ='R',max='**' ),
6004                 VALE_I          =SIMP(statut='f',typ='I',max='**' ),
6005                 VALE_C          =SIMP(statut='f',typ='C',max='**' ),
6006                 VALE_F          =SIMP(statut='f',typ=(fonction,formule),max='**'),
6007                                    ),
6008                              ),
6009          b_asse          =BLOC(condition = "OPERATION == 'ASSE'",
6010              regles=(UN_PARMI('MAILLAGE','MODELE'),),
6011              MAILLAGE        =SIMP(statut='f',typ=(maillage) ),
6012              MODELE          =SIMP(statut='f',typ=(modele) ),
6013              b_asse_modele   =BLOC(condition = "MODELE != None",
6014                  PROL_ZERO       =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ), ),
6015              ASSE            =FACT(statut='o',max='**',
6016                 regles=(AU_MOINS_UN('TOUT','GROUP_MA','GROUP_NO','MAILLE','NOEUD',),
6017                 PRESENT_PRESENT('NOM_CMP_RESU','NOM_CMP', ),),
6018                 TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
6019                 GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
6020                 GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
6021                 MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
6022                 NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
6023                 CHAM_GD         =SIMP(statut='o',typ=(cham_gd)),
6024                 NOM_CMP         =SIMP(statut='f',typ='TXM',max='**' ),
6025                 NOM_CMP_RESU    =SIMP(statut='f',typ='TXM',max='**' ),
6026                 CUMUL           =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ),
6027                 COEF_R          =SIMP(statut='f',typ='R',defaut= 1. ),
6028                                     ),
6029                              ),
6030          b_eval          =BLOC(condition = "OPERATION == 'EVAL'",
6031              CHAM_F          =SIMP(statut='o',typ=(cham_gd)),
6032              CHAM_PARA       =SIMP(statut='o',typ=(cham_gd),max='**'),
6033                              ),
6034          b_disc          =BLOC(condition = "OPERATION == 'DISC'",
6035              MODELE          =SIMP(statut='f',typ=(modele) ),
6036              PROL_ZERO       =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ),
6037              CHAM_GD         =SIMP(statut='o',typ=(cham_gd)),
6038                              ),
6039          b_extr          =BLOC(condition = "OPERATION == 'EXTR'",
6040              regles=(UN_PARMI('MAILLAGE','RESULTAT'),),
6041              MAILLAGE        =SIMP(statut='f',typ=(maillage) ),
6042              RESULTAT        =SIMP(statut='f',typ=(resultat) ),
6043              b_extr_maillage =BLOC(condition = "MAILLAGE != None",
6044                  NOM_CHAM        =SIMP(statut='o',typ='TXM',into=("GEOMETRIE",)),
6045                                   ),
6046              b_extr_resultat =BLOC(condition = "RESULTAT != None",
6047                  regles=(EXCLUS('TYPE_MAXI','NUME_ORDRE','INST','FREQ','NUME_MODE',
6048                                 'NOEUD_CMP','NOM_CAS','ANGL', ),),
6049                  SENSIBILITE     =SIMP(statut='f',typ=(para_sensi,theta_geom),
6050                                    fr="Paramètre de sensibilité.",
6051                                    ang="Sensitivity parameter"),
6052                  NOM_CHAM        =SIMP(statut='o',typ='TXM',into=C_NOM_CHAM_INTO()),
6053                  TYPE_MAXI       =SIMP(statut='f',typ='TXM',into=("MAXI","MINI","MAXI_ABS","MINI_ABS","NORM_TRAN",) ),
6054                  TYPE_RESU       =SIMP(statut='f',typ='TXM',defaut="VALE",into=("VALE","INST",) ),
6055                  TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
6056                  LIST_INST       =SIMP(statut='f',typ=(listr8) ),
6057                  NUME_ORDRE      =SIMP(statut='f',typ='I'),
6058                  INST            =SIMP(statut='f',typ='R'),
6059                  FREQ            =SIMP(statut='f',typ='R'),
6060                  NUME_MODE       =SIMP(statut='f',typ='I'),
6061                  NOEUD_CMP       =SIMP(statut='f',typ='TXM',max='**'),
6062                  NOM_CAS         =SIMP(statut='f',typ='TXM'),
6063                  ANGL            =SIMP(statut='f',typ='R'),
6064                  PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3),
6065                  CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ),
6066                  INTERPOL        =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","LIN",) ),
6067                               ),
6068
6069                 ),
6070 # FIN DU CATALOGUE : INFO,TITRE ET TYPAGE DU RESULAT :
6071 #-----------------------------------------------------
6072          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2,) ),
6073          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),
6074 )  ;
6075
6076 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
6077 # RESPONSABLE MCOURTOI M.COURTOIS
6078 #            CONFIGURATION MANAGEMENT OF EDF VERSION
6079 # ======================================================================
6080 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
6081 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
6082 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
6083 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR
6084 # (AT YOUR OPTION) ANY LATER VERSION.
6085 #
6086 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT
6087 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF
6088 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU
6089 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.
6090 #
6091 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE
6092 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,
6093 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.
6094 # ======================================================================
6095 CREA_MAILLAGE=OPER(nom="CREA_MAILLAGE",op= 167,sd_prod=maillage,
6096                      docu="U4.23.02-d",reentrant='n',
6097             UIinfo={"groupes":("Maillage",)},
6098          regles=(EXCLUS('ECLA_PG','CREA_MAILLE'),
6099                  EXCLUS('ECLA_PG','CREA_GROUP_MA'),
6100                  EXCLUS('ECLA_PG','DETR_GROUP_MA'),
6101                  EXCLUS('ECLA_PG','MODI_MAILLE'),
6102                  EXCLUS('ECLA_PG','LINE_QUAD'),
6103                  EXCLUS('ECLA_PG','COQU_VOLU'),
6104                  EXCLUS('LINE_QUAD','MODI_MAILLE'),
6105                  EXCLUS('LINE_QUAD','CREA_MAILLE'),
6106                  EXCLUS('LINE_QUAD','CREA_GROUP_MA'),
6107                  EXCLUS('LINE_QUAD','DETR_GROUP_MA'),
6108                  EXCLUS('LINE_QUAD','COQU_VOLU'),
6109                  EXCLUS('COQU_VOLU','MODI_MAILLE'),
6110                  EXCLUS('COQU_VOLU','CREA_MAILLE'),
6111                  EXCLUS('COQU_VOLU','CREA_GROUP_MA'),
6112                  EXCLUS('COQU_VOLU','DETR_GROUP_MA'),
6113                  ),
6114          MAILLAGE        =SIMP(statut='o',typ=maillage ),
6115          CREA_POI1       =FACT(statut='f',max='**',fr="Création de mailles de type POI1 à partir de noeuds",
6116            regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD' ),),
6117            NOM_GROUP_MA    =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
6118            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
6119            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
6120            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
6121            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
6122            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
6123          ),
6124          CREA_MAILLE     =FACT(statut='f',max='**',fr="Duplication de mailles",
6125            regles=(AU_MOINS_UN('TOUT','MAILLE','GROUP_MA'),),
6126            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
6127            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
6128            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
6129            PREF_MAILLE     =SIMP(statut='o',typ='TXM' ),
6130            PREF_NUME       =SIMP(statut='f',typ='I' ),
6131          ),
6132          CREA_GROUP_MA   =FACT(statut='f',max='**',fr="Duplication de mailles et création de groupes de mailles",
6133            regles=(AU_MOINS_UN('TOUT','MAILLE','GROUP_MA' ),),
6134            NOM             =SIMP(statut='o',typ='TXM'),
6135            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
6136            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
6137            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
6138            PREF_MAILLE     =SIMP(statut='o',typ='TXM' ),
6139            PREF_NUME       =SIMP(statut='f',typ='I' ),
6140          ),
6141          DETR_GROUP_MA   =FACT(statut='f',fr="Destruction de groupes de mailles",
6142            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
6143            NB_MAILLE       =SIMP(statut='f',typ='I',defaut= 0,
6144                                  fr="Nombre minimal de mailles que doit contenir le groupe pour etre détruit",  ),
6145          ),
6146          COQU_VOLU   =FACT(statut='f',
6147                            fr="Creation de mailles volumiques à partir de mailles surfaciques",
6148            NOM             =SIMP(statut='o',typ='TXM'),
6149            GROUP_MA        =SIMP(statut='o',typ=grma,validators=NoRepeat(),max ='**'),
6150            EPAIS           =SIMP(statut='o',typ='R' ),
6151            PREF_MAILLE     =SIMP(statut='f',typ='TXM',defaut="MS" ),
6152            PREF_NOEUD      =SIMP(statut='f',typ='TXM',defaut="NS" ),
6153            PREF_NUME       =SIMP(statut='f',typ='I'  ,defaut=1 ),
6154            PLAN            =SIMP(statut='o',typ='TXM',into=("SUP","MOY","INF")),
6155            b_MOY =BLOC(condition = "PLAN == 'MOY'",
6156              TRANSLATION   =SIMP(statut='o',typ='TXM',into=("SUP","INF") ),
6157            ),
6158          ),
6159          MODI_MAILLE     =FACT(statut='f',max='**',fr="Modification du type de mailles",
6160            regles=(AU_MOINS_UN('TOUT','MAILLE','GROUP_MA' ),),
6161            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
6162            MAILLE          =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
6163            GROUP_MA        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
6164            OPTION          =SIMP(statut='o',typ='TXM',into=("TRIA6_7","QUAD8_9","SEG3_4","QUAD_TRIA3"),
6165                                  fr="Choix de la transformation" ),
6166            b_NOS =BLOC(condition = "OPTION == 'TRIA6_7'  or  OPTION == 'QUAD8_9'  or  OPTION == 'SEG3_4'",
6167              PREF_NOEUD      =SIMP(statut='f',typ='TXM',defaut="NS"),
6168              PREF_NUME       =SIMP(statut='f',typ='I',defaut= 1 ),
6169            ),
6170            b_QTR =BLOC(condition = "OPTION == 'QUAD_TRIA3'",
6171              PREF_MAILLE     =SIMP(statut='f',typ='TXM',defaut="MS" ),
6172              PREF_NUME       =SIMP(statut='f',typ='I',defaut= 1 ),
6173            ),
6174          ),
6175          LINE_QUAD     =FACT(statut='f',fr="Passage linéaire -> quadratique",
6176            regles=(AU_MOINS_UN('TOUT','MAILLE','GROUP_MA' ),),
6177            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
6178            MAILLE          =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
6179            GROUP_MA        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
6180            PREF_NOEUD      =SIMP(statut='f',typ='TXM',defaut="NS"),
6181            PREF_NUME       =SIMP(statut='f',typ='I',defaut= 1 ),
6182          ),
6183          REPERE          =FACT(statut='f',max='**',
6184                                fr="changement de repère servant à déterminer les caractéristiques d une section de poutre",
6185            TABLE           =SIMP(statut='o',typ=tabl_cara_geom,
6186                                  fr="Nom de la table contenant les caractéristiques de la section de poutre" ),
6187            NOM_ORIG        =SIMP(statut='f',typ='TXM',into=("CDG","TORSION"),fr="Origine du nouveau repère" ),
6188            NOM_ROTA        =SIMP(statut='f',typ='TXM',into=("INERTIE",),fr="Direction du repére"  ),
6189            b_cdg =BLOC(condition = "NOM_ORIG == 'CDG'",
6190              GROUP_MA        =SIMP(statut='f',typ=grma,
6191                                    fr="Nom du groupe de mailles dont le centre de gravité sera l origine du nouveau repère"),
6192            ),
6193          ),
6194          ECLA_PG         =FACT(statut='f',
6195                                fr="Eclatement des mailles en petites mailles contenant chacune un seul point de gauss",
6196            MODELE          =SIMP(statut='o',typ=modele ),
6197            SHRINK          =SIMP(statut='f',typ='R',defaut= 0.9, fr="Facteur de réduction" ),
6198          ),
6199          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
6200 #
6201          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
6202 )  ;
6203
6204 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
6205 #            CONFIGURATION MANAGEMENT OF EDF VERSION
6206 # ======================================================================
6207 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
6208 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
6209 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
6210 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
6211 # (AT YOUR OPTION) ANY LATER VERSION.                                 
6212 #
6213 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
6214 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
6215 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
6216 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
6217 #
6218 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
6219 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
6220 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
6221 # ======================================================================
6222 def crea_resu_prod(TYPE_RESU,**args):
6223   if TYPE_RESU == "EVOL_ELAS"    : return evol_elas
6224   if TYPE_RESU == "EVOL_NOLI"    : return evol_noli
6225   if TYPE_RESU == "EVOL_THER"    : return evol_ther
6226   if TYPE_RESU == "MULT_ELAS"    : return mult_elas
6227   if TYPE_RESU == "FOURIER_ELAS" : return fourier_elas
6228   if TYPE_RESU == "EVOL_VARC"    : return evol_varc
6229   raise AsException("type de concept resultat non prevu")
6230
6231 CREA_RESU=OPER(nom="CREA_RESU",op=124,sd_prod=crea_resu_prod,docu="U4.44.12-e",reentrant='f',
6232             UIinfo={"groupes":("Modélisation",)},
6233                fr="Engendrer ou enrichir une structure de donnees en affectant les cham_gd associes",
6234
6235          OPERATION =SIMP(statut='o',typ='TXM',into=("AFFE","ECLA_PG","PERM_CHAM","PROL_RTZ",),
6236                          fr="choix de la fonction a activer",),
6237
6238          b_affe       =BLOC(condition = "OPERATION == 'AFFE'",
6239
6240            TYPE_RESU    =SIMP(statut='o',typ='TXM',into=("MULT_ELAS","EVOL_ELAS","EVOL_NOLI","FOURIER_ELAS",
6241                                                          "EVOL_THER","EVOL_VARC",) ),
6242            NOM_CHAM     =SIMP(statut='f',typ='TXM',into=("DEPL","TEMP","IRRA","HYDR_ELGA",),),
6243            AFFE         =FACT(statut='o',max='**',
6244              regles=(UN_PARMI('NOM_CAS','NUME_MODE','LIST_INST','INST',),),
6245              CHAM_GD         =SIMP(statut='f',typ=(cham_gd)),
6246              NOM_CAS         =SIMP(statut='f',typ='TXM' ),
6247              NUME_MODE       =SIMP(statut='f',typ='I'),
6248              TYPE_MODE       =SIMP(statut='f',typ='TXM',defaut="SYME",into=("SYME","ANTI","TOUS") ),
6249              INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
6250              LIST_INST       =SIMP(statut='f',typ=listr8),
6251              NUME_INIT       =SIMP(statut='f',typ='I'),
6252              NUME_FIN        =SIMP(statut='f',typ='I'),
6253              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),
6254              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
6255            ),
6256          ),
6257
6258          b_ecla_pg    =BLOC(condition = "OPERATION == 'ECLA_PG'",
6259
6260            TYPE_RESU       =SIMP(statut='o',typ='TXM',into=("EVOL_ELAS","EVOL_NOLI","EVOL_THER"), ),
6261
6262            ECLA_PG         =FACT(statut='o',
6263              regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST','LIST_ORDRE'),),
6264              NOM_CHAM        =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',
6265                                    into=("SIEF_ELGA","VARI_ELGA","SIEF_ELGA_DEPL","FLUX_ELGA_TEMP",) ),
6266              MODELE_INIT     =SIMP(statut='o',typ=modele),
6267              RESU_INIT       =SIMP(statut='o',typ=resultat),
6268              MAILLAGE        =SIMP(statut='o',typ=maillage),
6269              TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
6270              NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
6271              LIST_ORDRE      =SIMP(statut='f',typ=listis),
6272              INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
6273              LIST_INST       =SIMP(statut='f',typ=listr8),
6274              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3),
6275              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ),
6276            ),
6277          ),
6278
6279          b_perm_cham =BLOC(condition = "OPERATION == 'PERM_CHAM'",
6280
6281            TYPE_RESU       =SIMP(statut='o',typ='TXM',into=("EVOL_NOLI",) ),
6282            NOM_CHAM        =SIMP(statut='f',typ='TXM',into=("DEPL","SIEF_ELGA","VARI_ELGA",),validators=NoRepeat(),max='**' ),
6283            RESU_INIT       =SIMP(statut='o',typ=evol_noli),
6284            INST_INIT       =SIMP(statut='f',typ='R'),
6285            PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3),
6286            CRITERE         =SIMP(statut='f',typ='TXM',into=('RELATIF','ABSOLU'),defaut='RELATIF'),
6287            MAILLAGE_INIT   =SIMP(statut='o',typ=maillage,),
6288            RESU_FINAL      =SIMP(statut='o',typ=evol_noli,),
6289            MAILLAGE_FINAL  =SIMP(statut='o',typ=maillage,),
6290            PERM_CHAM       =FACT(statut='o',
6291               GROUP_MA_FINAL =SIMP(statut='o',typ=grma),
6292               GROUP_MA_INIT  =SIMP(statut='o',typ=grma),
6293               TRAN           =SIMP(statut='o',typ='R',max='**'),
6294               PRECISION      =SIMP(statut='f',typ='R',defaut=1.0E-3),
6295            ),
6296          ),
6297
6298          b_prol_rtz   =BLOC(condition = "OPERATION == 'PROL_RTZ'",
6299
6300            TYPE_RESU       =SIMP(statut='o',typ='TXM',into=("EVOL_THER",) ),
6301
6302            PROL_RTZ        =FACT(statut='o',
6303               regles=(EXCLUS('INST','LIST_INST'),),
6304               MAILLAGE_FINAL  =SIMP(statut='o',typ=maillage,),
6305               TABLE           =SIMP(statut='o',typ=tabl_post_rele,fr="Table issue de post_releve_t"),
6306               INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
6307               LIST_INST       =SIMP(statut='f',typ=listr8),
6308               b_acce_reel     =BLOC(condition="(INST != None)or(LIST_INST != None)",
6309                  PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-6),
6310                  CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
6311               ),
6312               PROL_DROITE     =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU",),),
6313               PROL_GAUCHE     =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU",),),
6314               REPERE          =SIMP(statut='o',typ='TXM',into=("CYLINDRIQUE",),),
6315               ORIGINE         =SIMP(statut='o',typ='R',min=3,max=3),
6316               AXE_Z           =SIMP(statut='o',typ='R',min=3,max=3),
6317            ),
6318          ),
6319
6320 )  ;
6321
6322 #& MODIF COMMANDE  DATE 16/09/2003   AUTEUR REZETTE C.REZETTE 
6323 #            CONFIGURATION MANAGEMENT OF EDF VERSION
6324 # ======================================================================
6325 # COPYRIGHT (C) 1991 - 2003  EDF R&D                  WWW.CODE-ASTER.ORG
6326 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY  
6327 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY  
6328 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR     
6329 # (AT YOUR OPTION) ANY LATER VERSION.                                                  
6330 #                                                                       
6331 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT   
6332 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF            
6333 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU      
6334 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                              
6335 #                                                                       
6336 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE     
6337 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,         
6338 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.        
6339 # ======================================================================
6340 CREA_TABLE=OPER(nom="CREA_TABLE",op=  36,sd_prod=table,
6341                 fr="Creation d'une table a partir d'une fonction ou de deux listes",
6342                 reentrant='n',docu='U4.99.99',UIinfo={"groupes":("Table",)},
6343
6344            regles=(EXCLUS('FONCTION','LISTE')),
6345
6346            FONCTION=FACT(statut='f',min=1,max=1,
6347                     fr="Creation d'une table a partir d'une fonction",
6348                         FONCTION=SIMP(statut='o',typ=fonction),
6349                         PARA=SIMP(statut='f',typ='TXM',min=2,max=2)),  
6350
6351            LISTE=FACT(statut='f',min=2,max=2,
6352                  fr="Creation d'une table a partir de deux listes",
6353                  regles=(UN_PARMI('LISTE_I','LISTE_R','LISTE_K')), 
6354                         PARA=SIMP(statut='o',typ='TXM'),
6355                         TYPE_K=SIMP(statut='f',typ='TXM',defaut='K8',
6356                                     into=('K8','K16','K24')),
6357                         LISTE_I=SIMP(statut='f',typ='I',max='**'),
6358                         LISTE_R=SIMP(statut='f',typ='R',max='**'),
6359                         LISTE_K=SIMP(statut='f',typ='TXM', max='**')),
6360 )  ;
6361
6362
6363
6364
6365 #& MODIF COMMANDE  DATE 06/09/2003   AUTEUR D6BHHJP J.P.LEFEBVRE 
6366 #            CONFIGURATION MANAGEMENT OF EDF VERSION
6367 # ======================================================================
6368 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
6369 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
6370 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
6371 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
6372 # (AT YOUR OPTION) ANY LATER VERSION.                                 
6373 #
6374 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
6375 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
6376 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
6377 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
6378 #
6379 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
6380 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
6381 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
6382 # ======================================================================
6383 DEBUT=MACRO(nom="DEBUT",op=ops.build_debut ,docu="U4.11.01-g",repetable='n',
6384             UIinfo={"groupes":("Gestion du travail",)},
6385            fr="Ouverture d une étude. Allocation des ressources mémoire et disque",
6386           sd_prod=ops.DEBUT,
6387
6388          PAR_LOT         =SIMP(fr="mode de traitement des commandes",statut='f',typ='TXM',
6389                            into=("OUI","NON"),defaut="OUI"),
6390          HDF             =FACT(statut='f',min=1,max=1,
6391            FICHIER         =SIMP(fr="nom du fichier hdf associe",statut='o',typ='TXM'),
6392          ),
6393          BASE            =FACT(fr="définition des paramètres associés aux bases JEVEUX",
6394                                statut='f',min=1,max=3,
6395            FICHIER         =SIMP(fr="nom de la base",statut='o',typ='TXM',
6396                                  into=('GLOBALE','VOLATILE','LOCALE'),),
6397            TITRE           =SIMP(statut='f',typ='TXM'),
6398            CAS             =SIMP(statut='f',typ='TXM'),
6399            NMAX_ENRE       =SIMP(fr="nombre maximum d enregistrements",statut='f',typ='I'),
6400            LONG_ENRE       =SIMP(fr="longueur des enregistrements",statut='f',typ='I'),
6401            LONG_REPE       =SIMP(fr="longueur du répertoire",statut='f',typ='I'),
6402          ),
6403          IMPRESSION      =FACT(statut='f',min=1,max=3,
6404            FICHIER         =SIMP(statut='o',typ='TXM'),
6405            UNITE           =SIMP(statut='o',typ='I'),
6406          ),
6407          CATALOGUE       =FACT(statut='f',min=1,max=10,
6408            FICHIER         =SIMP(statut='o',typ='TXM'),
6409            TITRE           =SIMP(statut='f',typ='TXM'),
6410            UNITE           =SIMP(statut='f',typ='I'),
6411          ),
6412          CODE            =FACT(fr="définition d un nom pour l'ensemble d'une étude",
6413                                statut='f',min=1,max=1,
6414            NOM             =SIMP(statut='o',typ='TXM'),
6415            NIV_PUB_WEB     =SIMP(statut='o',typ='TXM',into=('INTERNET','INTRANET')),
6416            UNITE           =SIMP(statut='f',typ='I',defaut=15),
6417          ),
6418          DEBUG           =FACT(fr="option de déboggage reservée aux développeurs",
6419                                statut='f',min=1,max=1,
6420            JXVERI          =SIMP(fr="vérifie l intégrité de la segmentation mémoire",
6421                                  statut='f',typ='TXM',into=('OUI','NON'),defaut='NON'),
6422            JEVEUX          =SIMP(fr="force les déchargement sur disque",
6423                                  statut='f',typ='TXM',into=('OUI','NON'),defaut='NON'),
6424            ENVIMA          =SIMP(fr="imprime les valeurs définies dans ENVIMA",
6425                                  statut='f',typ='TXM',into=('TEST',)),
6426          ),
6427          MEMOIRE         =FACT(fr="mode de gestion mémoire utilisé",statut='f',min=1,max=1,
6428            GESTION         =SIMP(statut='f',typ='TXM',into=('COMPACTE','RAPIDE'),defaut='RAPIDE'),
6429            TYPE_ALLOCATION =SIMP(statut='f',typ='I',into=(1,2,3,4),defaut=1),
6430            TAILLE          =SIMP(statut='f',typ='I'),
6431            TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut=800.),
6432            PARTITION       =SIMP(statut='f',typ='R'),
6433          ),
6434  );
6435
6436 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
6437 #            CONFIGURATION MANAGEMENT OF EDF VERSION
6438 # ======================================================================
6439 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
6440 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
6441 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
6442 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
6443 # (AT YOUR OPTION) ANY LATER VERSION.                                 
6444 #
6445 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
6446 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
6447 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
6448 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
6449 #
6450 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
6451 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
6452 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
6453 # ======================================================================
6454 DEFI_BASE_MODALE=OPER(nom="DEFI_BASE_MODALE",op=  99,sd_prod=base_modale,
6455                      docu="U4.64.02-f",reentrant='f',
6456             UIinfo={"groupes":("Matrices/vecteurs",)},
6457          regles=(UN_PARMI('CLASSIQUE','RITZ','DIAG_MASS'),),
6458          CLASSIQUE       =FACT(statut='f',
6459            INTERF_DYNA     =SIMP(statut='o',typ=interf_dyna_clas ),
6460            MODE_MECA       =SIMP(statut='o',typ=mode_meca,max='**' ),
6461            NMAX_MODE       =SIMP(statut='f',typ='I',defaut= 10 ),
6462          ),
6463          RITZ            =FACT(statut='f',max='**',
6464            regles=(UN_PARMI('MODE_STAT','MODE_MECA','MULT_ELAS','BASE_MODALE'),),
6465            MODE_MECA       =SIMP(statut='f',typ=mode_meca,max='**'  ),
6466            NMAX_MODE       =SIMP(statut='f',typ='I',defaut= 999 ),
6467            MODE_STAT       =SIMP(statut='f',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc,) ),
6468            MULT_ELAS       =SIMP(statut='f',typ=mult_elas ),
6469            BASE_MODALE     =SIMP(statut='f',typ=base_modale ),
6470          ),
6471         DIAG_MASS        =FACT(statut='f',max='**',
6472            MODE_MECA       =SIMP(statut='o',typ=mode_meca,max='**'  ),
6473            MODE_STAT       =SIMP(statut='o',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc,) ),
6474          ),
6475 #  le bloc conditionnel remplace-t-il PRESENT_PRESENT('RITZ','NUME_REF'),
6476 #                                     PRESENT_ABSENT('INTERF_DYNA','CLASSIQUE'),        
6477          b_ritz          =BLOC(condition = "RITZ != None",
6478            INTERF_DYNA     =SIMP(statut='f',typ=interf_dyna_clas ),
6479            NUME_REF        =SIMP(statut='o',typ=nume_ddl ),
6480          ),
6481          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
6482          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
6483 )  ;
6484
6485 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
6486 #            CONFIGURATION MANAGEMENT OF EDF VERSION
6487 # ======================================================================
6488 # COPYRIGHT (C) 1991 - 2003  EDF R&D                  WWW.CODE-ASTER.ORG
6489 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY  
6490 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY  
6491 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR     
6492 # (AT YOUR OPTION) ANY LATER VERSION.                                                  
6493 #                                                                       
6494 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT   
6495 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF            
6496 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU      
6497 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                              
6498 #                                                                       
6499 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE     
6500 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,         
6501 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.        
6502 # ======================================================================
6503
6504 from Macro.defi_cable_bp_ops import defi_cable_bp_ops
6505
6506 # ===========================================================================
6507 #           CATALOGUE DE LA MACRO "DEFI_CABLE_BP"
6508 #           -----------------------------------------
6509 #
6510 # USAGE :
6511 # Entrée :
6512 #  - MAILLAGE
6513 #  - MODELE
6514 #  - CABLE
6515 #  - CHAM_MATER
6516 #  - CARA_ELEM
6517 #  - GROUP_MA_BETON
6518 #  - DEFI_CABLE
6519 #  - TENSION_INIT
6520 #  - RECUL_ANCRAGE
6521 #  - RELAXATION
6522 #  - CONE
6523 #      RAYON
6524 #      LONGUEUR
6525 #      PRESENT          OUI ou NON deux fois
6526 #  - TITRE
6527 #  - INFO               1 / 2
6528 #
6529 # ===========================================================================
6530
6531
6532 def defi_cable_bp_prod(self,MAILLAGE,**args ):
6533   if MAILLAGE!= None : self.type_sdprod(MAILLAGE,maillage)
6534   return cabl_precont
6535   raise AsException("type de concept resultat non prevu")
6536
6537 DEFI_CABLE_BP=MACRO(nom="DEFI_CABLE_BP",op=defi_cable_bp_ops,sd_prod=defi_cable_bp_prod,
6538                    fr=" ",
6539                    docu="U4.42.04-a",reentrant='n',
6540          regles=(PRESENT_PRESENT('MAILLAGE','CONE'),),
6541          MAILLAGE        =SIMP(statut='f',typ=(maillage,CO)),
6542          MODELE          =SIMP(statut='o',typ=modele ),
6543          CHAM_MATER      =SIMP(statut='o',typ=cham_mater ),
6544          CARA_ELEM       =SIMP(statut='o',typ=cara_elem ),
6545          GROUP_MA_BETON  =SIMP(statut='o',typ=grma),
6546          DEFI_CABLE      =FACT(statut='o',max='**',
6547            regles=(UN_PARMI('MAILLE','GROUP_MA'),
6548                    UN_PARMI('NOEUD_ANCRAGE','GROUP_NO_ANCRAGE'),),
6549            MAILLE          =SIMP(statut='f',typ=ma,min=2,validators=NoRepeat(),max='**'),
6550            GROUP_MA        =SIMP(statut='f',typ=grma),
6551            NOEUD_ANCRAGE   =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max=2),
6552            GROUP_NO_ANCRAGE=SIMP(statut='f',typ=grno,validators=NoRepeat(),max=2),
6553          ),
6554          TYPE_ANCRAGE    =SIMP(statut='o',typ='TXM',min=2,max=2,into=("ACTIF","PASSIF") ),
6555          TENSION_INIT    =SIMP(statut='o',typ='R',val_min=0.E+0 ),  
6556          RECUL_ANCRAGE   =SIMP(statut='o',typ='R',val_min=0.E+0 ),  
6557          RELAXATION      =FACT(statut='f',min=0,
6558            R_J             =SIMP(statut='o',typ='R',val_min=0.E+0 ),  
6559          ),
6560          CONE            =FACT(statut='f',min=0,
6561            RAYON             =SIMP(statut='o',typ='R',val_min=0.E+0 ),  
6562            LONGUEUR          =SIMP(statut='o',typ='R',val_min=0.E+0 ),  
6563            PRESENT           =SIMP(statut='o',typ='TXM',min=2,max=2,into=("OUI","NON") ),
6564          ),
6565          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),  
6566          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
6567 )  ;
6568
6569 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
6570 #            CONFIGURATION MANAGEMENT OF EDF VERSION
6571 # ======================================================================
6572 # COPYRIGHT (C) 1991 - 2003  EDF R&D                  WWW.CODE-ASTER.ORG
6573 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY  
6574 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY  
6575 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR     
6576 # (AT YOUR OPTION) ANY LATER VERSION.                                                  
6577 #                                                                       
6578 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT   
6579 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF            
6580 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU      
6581 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                              
6582 #                                                                       
6583 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE     
6584 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,         
6585 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.        
6586 # ======================================================================
6587
6588 DEFI_CABLE_OP=OPER(nom="DEFI_CABLE_OP",op= 180,sd_prod=cabl_precont,
6589                    fr=" ",
6590                    docu="U4.42.04-a",reentrant='n',
6591             UIinfo={"groupes":("Modélisation",)},
6592          MODELE          =SIMP(statut='o',typ=modele ),
6593          CHAM_MATER      =SIMP(statut='o',typ=cham_mater ),
6594          CARA_ELEM       =SIMP(statut='o',typ=cara_elem ),
6595          GROUP_MA_BETON  =SIMP(statut='o',typ=grma),
6596          DEFI_CABLE      =FACT(statut='o',max='**',
6597            regles=(UN_PARMI('MAILLE','GROUP_MA'),
6598                    UN_PARMI('NOEUD_ANCRAGE','GROUP_NO_ANCRAGE'),),
6599            MAILLE          =SIMP(statut='f',typ=ma,min=2,validators=NoRepeat(),max='**'),
6600            GROUP_MA        =SIMP(statut='f',typ=grma),
6601            NOEUD_ANCRAGE   =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max=2),
6602            GROUP_NO_ANCRAGE=SIMP(statut='f',typ=grno,validators=NoRepeat(),max=2),
6603            GROUP_NO_FUT    =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=2),
6604          ),
6605          TYPE_ANCRAGE    =SIMP(statut='o',typ='TXM',min=2,max=2,into=("ACTIF","PASSIF") ),
6606          TENSION_INIT    =SIMP(statut='o',typ='R',val_min=0.E+0 ),  
6607          RECUL_ANCRAGE   =SIMP(statut='o',typ='R',val_min=0.E+0 ),  
6608          RELAXATION      =FACT(statut='f',min=0,
6609            R_J             =SIMP(statut='o',typ='R',val_min=0.E+0 ),  
6610          ),
6611          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),  
6612          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
6613          CONE            =FACT(statut='f',min=0,
6614            RAYON             =SIMP(statut='o',typ='R',val_min=0.E+0 ),  
6615            LONGUEUR          =SIMP(statut='o',typ='R',val_min=0.E+0, defaut=0.E+0 ),  
6616            PRESENT           =SIMP(statut='o',typ='TXM',min=2,max=2,into=("OUI","NON") ),
6617          ),
6618 )  ;
6619
6620 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
6621 #            CONFIGURATION MANAGEMENT OF EDF VERSION
6622 # ======================================================================
6623 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
6624 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
6625 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
6626 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
6627 # (AT YOUR OPTION) ANY LATER VERSION.                                 
6628 #
6629 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
6630 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
6631 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
6632 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
6633 #
6634 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
6635 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
6636 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
6637 # ======================================================================
6638 DEFI_CONSTANTE=OPER(nom="DEFI_CONSTANTE",op=   2,sd_prod=fonction,
6639                     fr="Définition d une fonction constante",
6640                     docu="U4.31.01-g",reentrant='n',
6641             UIinfo={"groupes":("Fonction",)},
6642          NOM_RESU        =SIMP(statut='f',typ='TXM',defaut="TOUTRESU"),
6643          VALE            =SIMP(statut='o',typ='R',),
6644          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
6645 )  ;
6646
6647 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
6648 #            CONFIGURATION MANAGEMENT OF EDF VERSION
6649 # ======================================================================
6650 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
6651 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
6652 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
6653 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
6654 # (AT YOUR OPTION) ANY LATER VERSION.                                 
6655 #
6656 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
6657 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
6658 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
6659 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
6660 #
6661 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
6662 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
6663 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
6664 # ======================================================================
6665 DEFI_COQU_MULT=OPER(nom="DEFI_COQU_MULT",op=56,sd_prod=mater,docu="U4.42.03-f",reentrant='n',
6666             UIinfo={"groupes":("Modélisation",)},
6667                     fr="Définition d une coque composite couche par couche",
6668          COUCHE          =FACT(statut='o',max='**',
6669            EPAIS           =SIMP(statut='o',typ='R',val_min=0.E+0 ),
6670            MATER           =SIMP(statut='o',typ=(mater) ),
6671            ORIENTATION     =SIMP(statut='f',typ='R',defaut= 0.E+0,
6672                                  val_min=-90.E+0,val_max=90.E+0   ),
6673          ),
6674          IMPRESSION      =FACT(statut='f',
6675            FICHIER         =SIMP(statut='f',typ='TXM',defaut="RESULTAT",
6676                                  into=("RESULTAT",) ),
6677          ),
6678 )  ;
6679
6680 #& MODIF COMMANDE  DATE 10/10/2003   AUTEUR D6BHHJP J.P.LEFEBVRE 
6681 #            CONFIGURATION MANAGEMENT OF EDF VERSION
6682 # ======================================================================
6683 # COPYRIGHT (C) 1991 - 2003  EDF R&D                  WWW.CODE-ASTER.ORG
6684 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY  
6685 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY  
6686 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR     
6687 # (AT YOUR OPTION) ANY LATER VERSION.                                                  
6688 #                                                                       
6689 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT   
6690 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF            
6691 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU      
6692 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                              
6693 #                                                                       
6694 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE     
6695 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,         
6696 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.        
6697 # ======================================================================
6698 # RESPONSABLE D6BHHJP J.P.LEFEBVRE
6699 DEFI_FICHIER=PROC(nom="DEFI_FICHIER",op=26,docu="U4.12.03-a",
6700                   UIinfo={"groupes":("Gestion du travail",)},
6701                   fr="Gestion d une unité logique : ajout, suppression",
6702
6703             ACTION        =SIMP(statut='f',typ='TXM',into=("ASSOCIER","LIBERER"),defaut="ASSOCIER"),
6704             UNITE         =SIMP(statut='o',typ='I' ,val_min=1),
6705             b_associer    =BLOC(condition = "ACTION == 'ASSOCIER'",fr="Paramètres pour l ouverture du fichier",
6706                TYPE          =SIMP(statut='f',typ='TXM',into=("ASCII","BINARY","LIBRE"),defaut="ASCII"),
6707                b_type_ascii  =BLOC(condition = "TYPE == 'ASCII'",fr="Paramètres pour le type ASCII",
6708                   NOM_SYSTEME   =SIMP(statut='f',typ='TXM',validators=LongStr(1,255)),
6709                   FICHIER       =SIMP(statut='o',typ='TXM'),
6710                ),
6711                b_type_autre  =BLOC(condition = "TYPE != 'ASCII'",fr="Paramètres pour les types BINARY et LIBRE",
6712                   regles=(AU_MOINS_UN('NOM_SYSTEME','FICHIER'),),
6713                   NOM_SYSTEME   =SIMP(statut='f',typ='TXM',validators=LongStr(1,255)),
6714                   FICHIER       =SIMP(statut='f',typ='TXM'),
6715                ),
6716                ACCES         =SIMP(statut='f',typ='TXM',into=("NEW","APPEND","OLD"),defaut="NEW"),
6717             ),
6718             INFO          =SIMP(statut='f',typ='I',into=(1,2) ),           
6719            )
6720
6721 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
6722 #            CONFIGURATION MANAGEMENT OF EDF VERSION
6723 # ======================================================================
6724 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
6725 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
6726 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
6727 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
6728 # (AT YOUR OPTION) ANY LATER VERSION.                                 
6729 #
6730 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
6731 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
6732 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
6733 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
6734 #
6735 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
6736 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
6737 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
6738 # ======================================================================
6739 DEFI_FLUI_STRU=OPER(nom="DEFI_FLUI_STRU",op= 143,sd_prod=type_flui_stru,
6740                     docu="U4.25.01-e",reentrant='n',
6741             UIinfo={"groupes":("Maillage",)},
6742          regles=(  UN_PARMI('FAISCEAU_TRANS','GRAPPE','FAISCEAU_AXIAL','COQUE_COAX',),),
6743          FAISCEAU_TRANS  =FACT(statut='f',max='**',
6744            COUPLAGE        =SIMP(statut='f',typ='TXM',into=("OUI","NON") ),
6745            CARA_ELEM       =SIMP(statut='f',typ=cara_elem ),
6746            PROF_VITE_FLUI  =SIMP(statut='o',typ=(fonction,formule) ),
6747            PROF_RHO_F_INT  =SIMP(statut='f',typ=(fonction,formule) ),
6748            PROF_RHO_F_EXT  =SIMP(statut='f',typ=(fonction,formule) ),
6749            NOM_CMP         =SIMP(statut='f',typ='TXM',into=("DX","DY","DZ") ),
6750            COEF_MASS_AJOU  =SIMP(statut='f',typ='R' ),
6751            TYPE_PAS        =SIMP(statut='f',typ='TXM',into=("CARRE_LIGN","TRIA_LIGN") ),
6752            TYPE_RESEAU     =SIMP(statut='f',typ='I' ),
6753            UNITE_CD        =SIMP(statut='f',typ='I',defaut=70),
6754            UNITE_CK        =SIMP(statut='f',typ='I',defaut=71),            
6755            PAS             =SIMP(statut='f',typ='R' ),
6756          ),
6757          GRAPPE          =FACT(statut='f',
6758            regles=(ENSEMBLE('GRAPPE_2','NOEUD','CARA_ELEM','MODELE','RHO_FLUI',),
6759                    PRESENT_PRESENT('COEF_MASS_AJOU','GRAPPE_2', ),),
6760 #  peut on créer un bloc a partir de la valeur de couplage  
6761            COUPLAGE        =SIMP(statut='o',typ='TXM',into=("OUI","NON") ),
6762            GRAPPE_2        =SIMP(statut='f',typ='TXM',
6763                                  into=("ASC_CEN","ASC_EXC","DES_CEN","DES_EXC") ),
6764            NOEUD           =SIMP(statut='f',typ=no),
6765            CARA_ELEM       =SIMP(statut='f',typ=cara_elem ),
6766            MODELE          =SIMP(statut='f',typ=modele ),
6767            COEF_MASS_AJOU  =SIMP(statut='f',typ='R' ),
6768            RHO_FLUI        =SIMP(statut='f',typ='R' ),
6769            UNITE_CA        =SIMP(statut='f',typ='I',defaut=70),
6770            UNITE_KA        =SIMP(statut='f',typ='I',defaut=71),            
6771          ),
6772          FAISCEAU_AXIAL  =FACT(statut='f',max='**',
6773            regles=(UN_PARMI('GROUP_MA','TRI_GROUP_MA'),
6774                    UN_PARMI('CARA_ELEM','RAYON_TUBE'),
6775                    ENSEMBLE('RAYON_TUBE','COOR_TUBE'),
6776                    PRESENT_ABSENT('RAYON_TUBE','TRI_GROUP_MA'),
6777                    ENSEMBLE('CARA_PAROI','VALE_PAROI'),
6778                    ENSEMBLE('LONG_TYPG','LARG_TYPG','EPAI_TYPG','RUGO_TYPG','COEF_TRAI_TYPG','COEF_DPOR_TYPG',
6779                             'COOR_GRILLE','TYPE_GRILLE', ),),
6780 #  on doit pouvoir mettre des blocs conditionnels mais pas assez d infos pour le faire                            
6781            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
6782            TRI_GROUP_MA    =SIMP(statut='f',typ='TXM' ),
6783            VECT_X          =SIMP(statut='f',typ='R',max=3),
6784            PROF_RHO_FLUI   =SIMP(statut='f',typ=(fonction,formule) ),
6785            PROF_VISC_CINE  =SIMP(statut='f',typ=(fonction,formule) ),
6786            CARA_ELEM       =SIMP(statut='f',typ=cara_elem ),
6787            RAYON_TUBE      =SIMP(statut='f',typ='R' ),
6788            COOR_TUBE       =SIMP(statut='f',typ='R',max='**'),
6789            PESANTEUR       =SIMP(statut='f',typ='R',min=4,max=4),
6790            RUGO_TUBE       =SIMP(statut='f',typ='R' ),
6791            CARA_PAROI      =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=5,
6792                                  into=("YC","ZC","R","HY","HZ") ),
6793            VALE_PAROI      =SIMP(statut='f',typ='R',max=5),
6794            ANGL_VRIL       =SIMP(statut='f',typ='R' ),
6795            LONG_TYPG       =SIMP(statut='f',typ='R',max='**',val_min=0.E+0),
6796            LARG_TYPG       =SIMP(statut='f',typ='R',max='**',val_min=0.E+0),
6797            EPAI_TYPG       =SIMP(statut='f',typ='R',max='**',val_min=0.E+0),
6798            RUGO_TYPG       =SIMP(statut='f',typ='R',max='**',val_min=0.E+0),
6799            COEF_TRAI_TYPG  =SIMP(statut='f',typ='R',max='**',val_min=0.E+0),
6800            COEF_DPOR_TYPG  =SIMP(statut='f',typ='R',max='**'),
6801            COOR_GRILLE     =SIMP(statut='f',typ='R',max='**'),
6802            TYPE_GRILLE     =SIMP(statut='f',typ='I',max='**'),
6803          ),
6804          COQUE_COAX      =FACT(statut='f',
6805            MASS_AJOU       =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
6806            GROUP_MA_INT    =SIMP(statut='o',typ=grma),
6807            GROUP_MA_EXT    =SIMP(statut='o',typ=grma),
6808            VECT_X          =SIMP(statut='o',typ='R',max='**'),
6809            CARA_ELEM       =SIMP(statut='o',typ=cara_elem ),
6810            MATER_INT       =SIMP(statut='o',typ=mater ),
6811            MATER_EXT       =SIMP(statut='o',typ=mater ),
6812            RHO_FLUI        =SIMP(statut='o',typ='R' ),
6813            VISC_CINE       =SIMP(statut='o',typ='R' ),
6814            RUGOSITE        =SIMP(statut='o',typ='R' ),
6815            PDC_MOY_1       =SIMP(statut='o',typ='R' ),
6816            PDC_DYN_1       =SIMP(statut='o',typ='R' ),
6817            PDC_MOY_2       =SIMP(statut='o',typ='R' ),
6818            PDC_DYN_2       =SIMP(statut='o',typ='R' ),
6819          ),
6820          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
6821 )  ;
6822
6823 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
6824 #            CONFIGURATION MANAGEMENT OF EDF VERSION
6825 # ======================================================================
6826 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
6827 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
6828 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
6829 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
6830 # (AT YOUR OPTION) ANY LATER VERSION.                                 
6831 #
6832 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
6833 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
6834 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
6835 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
6836 #
6837 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
6838 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
6839 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
6840 # ======================================================================
6841 DEFI_FONC_ELEC=OPER(nom="DEFI_FONC_ELEC",op=64,sd_prod=fonction,docu="U4.mk.10-e",reentrant='n',
6842             UIinfo={"groupes":("Outils métier",)},
6843                     fr="Définition d une fonction du temps pour calculer des forces de LAPLACE",
6844       regles=(UN_PARMI('COUR_PRIN','COUR'),
6845               EXCLUS('COUR','COUR_SECO'), ),
6846          FREQ            =SIMP(statut='f',typ='R',defaut= 50.),
6847          SIGNAL          =SIMP(statut='f',typ='TXM',defaut="COMPLET",into=("COMPLET","CONTINU") ),
6848          COUR            =FACT(statut='f',max='**',
6849          fr="Définition du courant de court-circuit",
6850            regles=(UN_PARMI('PHI_CC_1','INTC_CC_1'),
6851                    UN_PARMI('PHI_CC_2','INTC_CC_2'),),
6852            INTE_CC_1       =SIMP(statut='o',typ='R'),
6853            TAU_CC_1        =SIMP(statut='o',typ='R'),
6854            PHI_CC_1        =SIMP(statut='f',typ='R'),
6855            INTC_CC_1       =SIMP(statut='f',typ='R'),
6856            INTE_CC_2       =SIMP(statut='o',typ='R'),
6857            TAU_CC_2        =SIMP(statut='o',typ='R'),
6858            PHI_CC_2        =SIMP(statut='f',typ='R'),
6859            INTC_CC_2       =SIMP(statut='f',typ='R'),
6860            INST_CC_INIT    =SIMP(statut='o',typ='R'),
6861            INST_CC_FIN     =SIMP(statut='o',typ='R'),
6862          ),
6863          COUR_PRIN       =FACT(statut='f',
6864          fr="Définition du courant de court-circuit avec réenclenchement",
6865            regles=(UN_PARMI('PHI_CC_1','INTC_CC_1'),),
6866            INTE_CC_1       =SIMP(statut='o',typ='R'),
6867            TAU_CC_1        =SIMP(statut='o',typ='R'),
6868            PHI_CC_1        =SIMP(statut='f',typ='R'),
6869            INTC_CC_1       =SIMP(statut='f',typ='R'),
6870            INTE_RENC_1     =SIMP(statut='f',typ='R'),
6871            TAU_RENC_1      =SIMP(statut='f',typ='R'),
6872            PHI_RENC_1      =SIMP(statut='f',typ='R'),
6873            INST_CC_INIT    =SIMP(statut='o',typ='R'),
6874            INST_CC_FIN     =SIMP(statut='o',typ='R'),
6875            INST_RENC_INIT  =SIMP(statut='f',typ='R',defaut= 0.0E+0),
6876            INST_RENC_FIN   =SIMP(statut='f',typ='R',defaut= 0.0E+0),
6877          ),
6878          COUR_SECO       =FACT(statut='f',max='**',
6879          fr="Définition du courant de court-circuit avec un intervalle de temps différent de celui de COUR_PRIN",
6880            regles=(UN_PARMI('PHI_CC_2','INTC_CC_2'),),
6881            INTE_CC_2       =SIMP(statut='o',typ='R'),
6882            TAU_CC_2        =SIMP(statut='o',typ='R'),
6883            PHI_CC_2        =SIMP(statut='f',typ='R'),
6884            INTC_CC_2       =SIMP(statut='f',typ='R'),
6885            INTE_RENC_2     =SIMP(statut='f',typ='R'),
6886            TAU_RENC_2      =SIMP(statut='f',typ='R'),
6887            PHI_RENC_2      =SIMP(statut='f',typ='R'),
6888            DIST            =SIMP(statut='f',typ='R',defaut=1.0E+0),
6889          ),
6890          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
6891 )  ;
6892
6893 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
6894 #            CONFIGURATION MANAGEMENT OF EDF VERSION
6895 # ======================================================================
6896 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
6897 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
6898 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
6899 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
6900 # (AT YOUR OPTION) ANY LATER VERSION.                                 
6901 #
6902 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
6903 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
6904 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
6905 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
6906 #
6907 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
6908 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
6909 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
6910 # ======================================================================
6911 DEFI_FONC_FLUI=OPER(nom="DEFI_FONC_FLUI",op= 142,sd_prod=fonction,
6912                     docu="U4.35.01-d",reentrant='n',
6913             UIinfo={"groupes":("Fonction",)},
6914          MAILLAGE        =SIMP(statut='o',typ=(maillage) ),
6915          NOEUD_INIT      =SIMP(statut='o',typ=no),
6916          NOEUD_FIN       =SIMP(statut='o',typ=no),
6917          VITE            =FACT(statut='o',
6918            VALE            =SIMP(statut='f',typ='R',defaut= 1. ),
6919            PROFIL          =SIMP(statut='o',typ='TXM',into=("UNIFORME","LEONARD") ),
6920            NB_BAV          =SIMP(statut='f',typ='I',defaut= 0,into=( 0 , 2 , 3 ) ),
6921          ),
6922          INTERPOL        =SIMP(statut='f',typ='TXM',max=2,defaut="LIN",
6923                                into=("NON","LIN","LOG") ),
6924          PROL_DROITE     =SIMP(statut='f',typ='TXM',defaut="EXCLU",
6925                                into=("CONSTANT","LINEAIRE","EXCLU") ),
6926          PROL_GAUCHE     =SIMP(statut='f',typ='TXM' ,defaut="EXCLU",
6927                                into=("CONSTANT","LINEAIRE","EXCLU") ),
6928          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ),
6929          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
6930 )  ;
6931
6932 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
6933 #            CONFIGURATION MANAGEMENT OF EDF VERSION
6934 # ======================================================================
6935 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
6936 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
6937 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
6938 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
6939 # (AT YOUR OPTION) ANY LATER VERSION.                                 
6940 #
6941 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
6942 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
6943 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
6944 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
6945 #
6946 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
6947 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
6948 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
6949 # ======================================================================
6950 # RESPONSABLE MCOURTOI M.COURTOIS
6951 def defi_fonction_prod(VALE,VALE_PARA,VALE_C,NOEUD_PARA,**args):
6952   if VALE != None  : return fonction
6953   if VALE_C != None  : return fonction_c
6954   if VALE_PARA != None  : return fonction
6955   if NOEUD_PARA != None  : return fonction
6956   raise AsException("type de concept resultat non prevu")
6957
6958 DEFI_FONCTION=OPER(nom="DEFI_FONCTION",op=3,sd_prod=defi_fonction_prod
6959                     ,fr="Définition des valeurs réelles ou complexes d une fonction réelle",
6960                      docu="U4.31.02-g",reentrant='n',
6961             UIinfo={"groupes":("Fonction",)},
6962          regles=(UN_PARMI('VALE','VALE_C','VALE_PARA','NOEUD_PARA'),),
6963          NOM_PARA        =SIMP(statut='o',typ='TXM',
6964                                into=("DX","DY","DZ","DRX","DRY","DRZ","TEMP",
6965                                      "INST","X","Y","Z","EPSI","META","FREQ","PULS",
6966                                      "AMOR","ABSC","SIGM","HYDR","SECH","PORO","SAT",
6967                                      "PGAZ","PCAP","VITE","ENDO") ),
6968          NOM_RESU        =SIMP(statut='f',typ='TXM',defaut="TOUTRESU"),
6969          VALE            =SIMP(statut='f',typ='R',min=2,max='**',
6970                                fr ="Fonction réelle définie par une liste de couples (abscisse,ordonnée)"),
6971          VALE_C          =SIMP(statut='f',typ='R',min=2,max='**',
6972                                fr ="Fonction complexe définie par une liste de couples"),
6973          VALE_PARA       =SIMP(statut='f',typ=listr8,
6974                                fr ="Fonction réelle définie par deux concepts de type listr8" ),
6975          b_vale_para     =BLOC(condition = "VALE_PARA != None",
6976            VALE_FONC       =SIMP(statut='o',typ=listr8 ),
6977          ),
6978          NOEUD_PARA      =SIMP(statut='f',typ=no,max='**',
6979                                fr ="Fonction réelle définie par une liste de noeuds et un maillage"),
6980          b_noeud_para    =BLOC(condition = "NOEUD_PARA != None",
6981            MAILLAGE        =SIMP(statut='o',typ=maillage ),
6982            VALE_Y          =SIMP(statut='o',typ='R',max='**'),
6983          ),
6984
6985          INTERPOL        =SIMP(statut='f',typ='TXM',max=2,defaut="LIN",into=("NON","LIN","LOG") ),
6986          PROL_DROITE     =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ),
6987          PROL_GAUCHE     =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ),
6988          VERIF           =SIMP(statut='f',typ='TXM',defaut="CROISSANT",into=("CROISSANT","NON") ),
6989          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
6990          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
6991 )  ;
6992
6993 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
6994 #            CONFIGURATION MANAGEMENT OF EDF VERSION
6995 # ======================================================================
6996 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
6997 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
6998 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
6999 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
7000 # (AT YOUR OPTION) ANY LATER VERSION.                                 
7001 #
7002 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
7003 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
7004 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
7005 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
7006 #
7007 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
7008 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
7009 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
7010 # ======================================================================
7011 DEFI_FOND_FISS=OPER(nom="DEFI_FOND_FISS",op=55,sd_prod=fond_fiss,docu="U4.82.01-f",reentrant='n',
7012             UIinfo={"groupes":("Post traitements",)},
7013                     fr="Définition de lèvres et d un fond de fissure en 3D",
7014          regles=(UN_PARMI('FOND','FOND_FERME'),
7015                  EXCLUS('FOND_FERME','DTAN_ORIG'),
7016                  EXCLUS('FOND_FERME','DTAN_EXTR'),
7017                       EXCLUS('FOND_FERME','VECT_GRNO_ORIG'),
7018                       EXCLUS('FOND_FERME','VECT_GRNO_EXTR'),
7019                  UN_PARMI('LEVRE_SUP','NORMALE'),
7020                       EXCLUS('LEVRE_INF','NORMALE'),
7021                  ENSEMBLE('DTAN_ORIG','DTAN_EXTR'),
7022                       ENSEMBLE('VECT_GRNO_ORIG','VECT_GRNO_EXTR'),
7023                       EXCLUS('DTAN_ORIG','VECT_GRNO_ORIG'),
7024                       EXCLUS('DTAN_EXTR','VECT_GRNO_EXTR') ,),
7025            MAILLAGE        =SIMP(statut='o',typ=maillage ),
7026            FOND            =FACT(statut='f',
7027              regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),
7028                      EXCLUS('NOEUD_ORIG','GROUP_NO_ORIG'),
7029                           EXCLUS('NOEUD_EXTR','GROUP_NO_EXTR'),),
7030              GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
7031              NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
7032              GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
7033              MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
7034 #  à mettre à jour le max vaut-il 1  
7035              NOEUD_ORIG      =SIMP(statut='f',typ=no,),
7036              GROUP_NO_ORIG   =SIMP(statut='f',typ=grno,),
7037              NOEUD_EXTR      =SIMP(statut='f',typ=no,),
7038              GROUP_NO_EXTR   =SIMP(statut='f',typ=grno,),
7039            ),
7040            FOND_FERME      =FACT(statut='f',
7041              regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),
7042                           EXCLUS('NOEUD_ORIG','GROUP_NO_ORIG'),),
7043              GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
7044              NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
7045              GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
7046              MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
7047              NOEUD_ORIG      =SIMP(statut='f',typ=no,),
7048              GROUP_NO_ORIG   =SIMP(statut='f',typ=grno,),
7049              MAILLE_ORIG     =SIMP(statut='f',typ=ma,),
7050              GROUP_MA_ORIG   =SIMP(statut='f',typ=ma,),
7051            ),
7052            LEVRE_SUP       =FACT(statut='f',
7053              regles=(UN_PARMI('GROUP_MA','MAILLE'),),
7054              GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
7055              MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
7056            ),
7057            LEVRE_INF       =FACT(statut='f',
7058              regles=(UN_PARMI('GROUP_MA','MAILLE', ),),
7059              GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
7060              MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
7061            ),
7062            NORMALE         =SIMP(statut='f',typ='R',max='**'),
7063            DTAN_ORIG       =SIMP(statut='f',typ='R',max='**'),
7064            DTAN_EXTR       =SIMP(statut='f',typ='R',max='**'),
7065            VECT_GRNO_ORIG  =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=2),
7066            VECT_GRNO_EXTR  =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=2),
7067            INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
7068 )  ;
7069
7070 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
7071 #            CONFIGURATION MANAGEMENT OF EDF VERSION
7072 # ======================================================================
7073 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
7074 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
7075 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
7076 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR
7077 # (AT YOUR OPTION) ANY LATER VERSION.
7078 #
7079 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT
7080 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF
7081 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU
7082 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.
7083 #
7084 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE
7085 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,
7086 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.
7087 # ======================================================================
7088 # RESPONSABLE VABHHTS J.PELLET
7089 def defi_group_prod(MAILLAGE,**args):
7090   if AsType(MAILLAGE) == maillage : return maillage
7091   if AsType(MAILLAGE) == squelette : return squelette
7092   raise AsException("type de concept resultat non prevu")
7093
7094 DEFI_GROUP=OPER(nom="DEFI_GROUP",op= 104,sd_prod=defi_group_prod,
7095                 fr="Définition de nouveaux groupes de noeuds et/ou de mailles dans un concept maillage",
7096                 docu="U4.22.01-f",reentrant='o',
7097             UIinfo={"groupes":("Maillage",)},
7098          regles=(AU_MOINS_UN('CREA_GROUP_MA','CREA_GROUP_NO'),),
7099          MAILLAGE        =SIMP(statut='o',typ=(maillage,squelette) ),
7100
7101          CREA_GROUP_MA   =FACT(statut='f',max='**',
7102           
7103 regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE','INTERSEC','UNION','DIFFE','OPTION'),),
7104 #  quel est le concept attendu deriere NOM
7105            NOM             =SIMP(statut='o',typ=grma),
7106            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
7107            GROUP_MA        =SIMP(statut='f',typ=grma),
7108            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
7109            INTERSEC        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
7110            UNION           =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
7111            DIFFE           =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
7112            OPTION          =SIMP(statut='f',typ='TXM',into=("FACE_NORMALE","SPHERE","CYLINDRE","BANDE","APPUI_LACHE") ),
7113            b_group_ma      =BLOC(condition = "GROUP_MA != None",
7114              regles=(EXCLUS('POSITION','NUME_INIT'),),
7115              NUME_INIT       =SIMP(statut='f',typ='I'),
7116              POSITION        =SIMP(statut='f',typ='TXM',into=("INIT","FIN","MILIEU") ),
7117              b_nume_init   =BLOC(condition = "NUME_INIT != None",
7118                NUME_FIN        =SIMP(statut='f',typ='I' ),
7119              ),
7120            ),
7121            b_face_normale  =BLOC(condition = "OPTION == 'FACE_NORMALE'",
7122              regles=(UN_PARMI('ANGL_NAUT','VECT_NORMALE'),),
7123              ANGL_NAUT       =SIMP(statut='f',typ='R',max=2),
7124              VECT_NORMALE    =SIMP(statut='f',typ='R',max=3),
7125              ANGL_PREC       =SIMP(statut='f',typ='R',defaut= 0.5 ),
7126              VERI_SIGNE      =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
7127            ),
7128            b_sphere        =BLOC(condition = "OPTION == 'SPHERE'",
7129              regles=(UN_PARMI('POINT','NOEUD_CENTRE','GROUP_NO_CENTRE'),),
7130              POINT           =SIMP(statut='f',typ='R',max=3),
7131              NOEUD_CENTRE    =SIMP(statut='f',typ=no),
7132              GROUP_NO_CENTRE =SIMP(statut='f',typ=grno),
7133              RAYON           =SIMP(statut='o',typ='R' ),
7134            ),
7135            b_cylindre      =BLOC(condition = "OPTION == 'CYLINDRE'",
7136              regles=(UN_PARMI('POINT','NOEUD_CENTRE','GROUP_NO_CENTRE'),
7137                      UN_PARMI('ANGL_NAUT','VECT_NORMALE'),),
7138              POINT           =SIMP(statut='f',typ='R',max=3),
7139              NOEUD_CENTRE    =SIMP(statut='f',typ=no),
7140              GROUP_NO_CENTRE =SIMP(statut='f',typ=grno),
7141              RAYON           =SIMP(statut='o',typ='R' ),
7142              ANGL_NAUT       =SIMP(statut='f',typ='R',max=2),
7143              VECT_NORMALE    =SIMP(statut='f',typ='R',max=3),
7144            ),
7145            b_bande         =BLOC(condition = "OPTION == 'BANDE'",
7146              regles=(UN_PARMI('POINT','NOEUD_CENTRE','GROUP_NO_CENTRE'),
7147                      UN_PARMI('ANGL_NAUT','VECT_NORMALE'),),
7148              POINT           =SIMP(statut='f',typ='R' ,max=3),
7149              NOEUD_CENTRE    =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max=1),
7150              GROUP_NO_CENTRE =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=1),
7151              DIST            =SIMP(statut='o',typ='R' ),
7152              ANGL_NAUT       =SIMP(statut='f',typ='R',max=2),
7153              VECT_NORMALE    =SIMP(statut='f',typ='R',max=3),
7154            ),
7155            b_app_lache         =BLOC(condition = "OPTION == 'APPUI_LACHE'",
7156              regles=(UN_PARMI('NOEUD','GROUP_NO'),),
7157              NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
7158              GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
7159            ),
7160          ),
7161          CREA_GROUP_NO   =FACT(statut='f',max='**',
7162            regles = ( AU_MOINS_UN ('TOUT_GROUP_MA','GROUP_MA','NOEUD',
7163                                    'INTERSEC','UNION','DIFFE','GROUP_NO','OPTION'),
7164                       PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),
7165                       EXCLUS ('TOUT_GROUP_MA','GROUP_MA','NOEUD','INTERSEC','UNION','DIFFE'),),
7166            TOUT_GROUP_MA   =SIMP(statut='f',typ='TXM',into=("OUI",) ),
7167            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
7168            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
7169            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
7170            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
7171            INTERSEC        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
7172            UNION           =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
7173            DIFFE           =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
7174            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
7175            OPTION          =SIMP(statut='f',typ='TXM',into=("ENV_SPHERE","ENV_CYLINDRE","PLAN",
7176                                                "SEGM_DROI_ORDO","NOEUD_ORDO","TUNNEL") ),
7177            b_nom_group_ma  =BLOC(condition = "GROUP_MA != None",
7178              NOM             =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
7179            ),
7180            b_crit_noeud    = BLOC(condition = "GROUP_MA != None",
7181              CRIT_NOEUD    = SIMP(statut='f',typ='TXM',defaut="TOUS",
7182                             into=("TOUS","SOMMET","MILIEU","CENTRE"),),),
7183            b_nom =BLOC(condition = "GROUP_MA == None and TOUT_GROUP_MA == None" ,
7184              NOM             =SIMP(statut='o',typ=geom),
7185            ),
7186            b_group_no      =BLOC(condition = "GROUP_NO != None",
7187              regles=(EXCLUS('POSITION','NUME_INIT'),),
7188              NUME_INIT       =SIMP(statut='f',typ='I'),
7189              POSITION        =SIMP(statut='f',typ='TXM',into=("INIT","FIN","MILIEU") ),
7190              b_nume_init     =BLOC(condition = "NUME_INIT != None",
7191                NUME_FIN        =SIMP(statut='f',typ='I' ),
7192              ),
7193            ),
7194            b_env_sphere    =BLOC(condition = "OPTION == 'ENV_SPHERE'",
7195              regles=(UN_PARMI('POINT','NOEUD_CENTRE','GROUP_NO_CENTRE'),),
7196              POINT           =SIMP(statut='f',typ='R' ,max=3),
7197              NOEUD_CENTRE    =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max=1),
7198              GROUP_NO_CENTRE =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=1),
7199              RAYON           =SIMP(statut='o',typ='R' ),
7200              PRECISION       =SIMP(statut='o',typ='R' ),
7201            ),
7202            b_env_cylindre  =BLOC(condition = "OPTION == 'ENV_CYLINDRE'",
7203              regles=(UN_PARMI('POINT','NOEUD_CENTRE','GROUP_NO_CENTRE'),
7204                      UN_PARMI('ANGL_NAUT','VECT_NORMALE'),),
7205              POINT           =SIMP(statut='f',typ='R' ,max=3),
7206              NOEUD_CENTRE    =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max=1),
7207              GROUP_NO_CENTRE =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=1),
7208              RAYON           =SIMP(statut='o',typ='R' ),
7209              ANGL_NAUT       =SIMP(statut='f',typ='R',max=3),
7210              VECT_NORMALE    =SIMP(statut='f',typ='R',max=3),
7211              PRECISION       =SIMP(statut='o',typ='R' ),
7212            ),
7213            b_env_plan      =BLOC(condition = "OPTION == 'PLAN'",
7214              regles=(UN_PARMI('POINT','NOEUD_CENTRE','GROUP_NO_CENTRE'),
7215                      UN_PARMI('ANGL_NAUT','VECT_NORMALE'),),
7216              POINT           =SIMP(statut='f',typ='R' ,max=3),
7217              NOEUD_CENTRE    =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max=1),
7218              GROUP_NO_CENTRE =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=1),
7219              ANGL_NAUT       =SIMP(statut='f',typ='R' ,max=3),
7220              VECT_NORMALE    =SIMP(statut='f',typ='R' ,max=3),
7221              PRECISION       =SIMP(statut='o',typ='R' ),
7222            ),
7223            b_segm_droi_ordo=BLOC(condition = "OPTION == 'SEGM_DROI_ORDO'",
7224              regles=(UN_PARMI('NOEUD_ORIG','GROUP_NO_ORIG'),
7225                      UN_PARMI('NOEUD_EXTR','GROUP_NO_EXTR'),),
7226              NOEUD_ORIG      =SIMP(statut='f',typ=no),
7227              GROUP_NO_ORIG   =SIMP(statut='f',typ=grno),
7228              NOEUD_EXTR      =SIMP(statut='f',typ=no),
7229              GROUP_NO_EXTR   =SIMP(statut='f',typ=grno),
7230              PRECISION       =SIMP(statut='o',typ='R' ),
7231              CRITERE         =SIMP(statut='o',typ='TXM',into=("ABSOLU","RELATIF") ),
7232            ),
7233            b_noeud_ordo    =BLOC(condition = "OPTION == 'NOEUD_ORDO'",
7234              regles=(EXCLUS('NOEUD_ORIG','GROUP_NO_ORIG'),
7235                      EXCLUS('NOEUD_EXTR','GROUP_NO_EXTR'),),
7236              NOEUD_ORIG      =SIMP(statut='f',typ=no),
7237              GROUP_NO_ORIG   =SIMP(statut='f',typ=grno),
7238              NOEUD_EXTR      =SIMP(statut='f',typ=no),
7239              GROUP_NO_EXTR   =SIMP(statut='f',typ=grno),
7240            ),
7241            b_tunnel    =BLOC(condition = "OPTION == 'TUNNEL'",
7242              regles=(EXCLUS('NOEUD_ORIG','GROUP_NO_ORIG'),
7243                      AU_MOINS_UN ('GROUP_MA_AXE','MAILLE_AXE'),),
7244              GROUP_MA_AXE    =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
7245              MAILLE_AXE      =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
7246              NOEUD_ORIG      =SIMP(statut='f',typ=no),
7247              GROUP_NO_ORIG   =SIMP(statut='f',typ=grno),
7248              RAYON           =SIMP(statut='o',typ='R'),
7249              LONGUEUR        =SIMP(statut='f',typ='R'),
7250            ),
7251          ),
7252          ALARME          =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
7253          INFO            =SIMP(statut='f',typ='I',into=( 1 , 2 ) ),
7254 )  ;
7255
7256 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
7257 #            CONFIGURATION MANAGEMENT OF EDF VERSION
7258 # ======================================================================
7259 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
7260 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
7261 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
7262 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
7263 # (AT YOUR OPTION) ANY LATER VERSION.                                 
7264 #
7265 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
7266 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
7267 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
7268 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
7269 #
7270 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
7271 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
7272 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
7273 # ======================================================================
7274 DEFI_INTE_SPEC=OPER(nom="DEFI_INTE_SPEC",op= 115,sd_prod=tabl_intsp,
7275                     docu="U4.36.02-f",reentrant='n',
7276             UIinfo={"groupes":("Fonction",)},
7277
7278          DIMENSION       =SIMP(statut='f',typ='I',defaut= 1 ),
7279
7280          PAR_FONCTION    =FACT(statut='f',max='**',
7281            NUME_ORDRE_I    =SIMP(statut='o',typ='I' ),
7282            NUME_ORDRE_J    =SIMP(statut='o',typ='I' ),
7283            FONCTION        =SIMP(statut='o',typ=fonction_c ),
7284          ),
7285          KANAI_TAJIMI    =FACT(statut='f',max='**',
7286            regles=(EXCLUS('VALE_R','VALE_C'),),
7287            NUME_ORDRE_I    =SIMP(statut='o',typ='I' ),
7288            NUME_ORDRE_J    =SIMP(statut='o',typ='I' ),
7289            FREQ_MIN        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
7290            FREQ_MAX        =SIMP(statut='f',typ='R',defaut= 100. ),
7291            PAS             =SIMP(statut='f',typ='R',defaut= 1. ),
7292            AMOR_REDUIT     =SIMP(statut='f',typ='R',defaut= 0.6 ),
7293            FREQ_MOY        =SIMP(statut='f',typ='R',defaut= 5. ),
7294            VALE_R          =SIMP(statut='f',typ='R' ),
7295            VALE_C          =SIMP(statut='f',typ='C' ),
7296            INTERPOL        =SIMP(statut='f',typ='TXM',max=2,defaut="LIN",into=("NON","LIN","LOG") ),
7297            PROL_DROITE     =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ),
7298            PROL_GAUCHE     =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ),
7299          ),
7300          CONSTANT        =FACT(statut='f',max='**',
7301            regles=(EXCLUS('VALE_R','VALE_C'),),
7302            NUME_ORDRE_I    =SIMP(statut='o',typ='I' ),
7303            NUME_ORDRE_J    =SIMP(statut='o',typ='I' ),
7304            FREQ_MIN        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
7305            FREQ_MAX        =SIMP(statut='f',typ='R',defaut= 100. ),
7306            PAS             =SIMP(statut='f',typ='R',defaut= 1. ),
7307            VALE_R          =SIMP(statut='f',typ='R' ),
7308            VALE_C          =SIMP(statut='f',typ='C' ),
7309            INTERPOL        =SIMP(statut='f',typ='TXM',max=2,defaut="LIN",into=("NON","LIN","LOG") ),
7310            PROL_DROITE     =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ),
7311            PROL_GAUCHE     =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ),
7312          ),
7313          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
7314          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),               
7315 )  ;
7316
7317 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
7318 #            CONFIGURATION MANAGEMENT OF EDF VERSION
7319 # ======================================================================
7320 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
7321 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
7322 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
7323 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
7324 # (AT YOUR OPTION) ANY LATER VERSION.                                 
7325 #
7326 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
7327 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
7328 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
7329 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
7330 #
7331 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
7332 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
7333 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
7334 # ======================================================================
7335 DEFI_INTERF_DYNA=OPER(nom="DEFI_INTERF_DYNA",op=  98,sd_prod=interf_dyna_clas,
7336                       docu="U4.64.01-f",reentrant='n',
7337             UIinfo={"groupes":("Matrices/vecteurs",)},
7338          NUME_DDL        =SIMP(statut='o',typ=nume_ddl ),
7339          INTERFACE       =FACT(statut='o',max='**',
7340            regles=(ENSEMBLE('NOM','TYPE'),
7341 #  erreur doc U sur la condition qui suit
7342                    UN_PARMI('NOEUD','GROUP_NO'),),
7343            NOM             =SIMP(statut='f',typ='TXM' ),
7344            TYPE            =SIMP(statut='f',typ='TXM',into=("MNEAL","CRAIGB","CB_HARMO","AUCUN") ),
7345            NOEUD           =SIMP(statut='f',typ=no,max='**'),
7346            GROUP_NO        =SIMP(statut='f',typ=grno,max='**'),
7347            DDL_ACTIF       =SIMP(statut='f',typ='TXM',max='**'),
7348            MASQUE          =SIMP(statut='f',typ='TXM',max='**'),
7349          ),
7350          FREQ            =SIMP(statut='f',typ='R',defaut= 1.),
7351          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
7352 )  ;
7353
7354 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
7355 #            CONFIGURATION MANAGEMENT OF EDF VERSION
7356 # ======================================================================
7357 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
7358 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
7359 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
7360 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
7361 # (AT YOUR OPTION) ANY LATER VERSION.                                 
7362 #
7363 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
7364 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
7365 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
7366 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
7367 #
7368 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
7369 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
7370 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
7371 # ======================================================================
7372 # RESPONSABLE VABHHTS J.PELLET
7373 DEFI_LIST_ENTI=OPER(nom="DEFI_LIST_ENTI",op=22,sd_prod=listis,
7374                     fr="Définition d une suite croissante d entiers",
7375                     docu="U4.34.02-g",reentrant='n',
7376             UIinfo={"groupes":("Fonction",)},
7377          regles=(UN_PARMI('VALE','DEBUT'),
7378                  EXCLUS('VALE','INTERVALLE'),),
7379          VALE            =SIMP(statut='f',typ='I',max='**'),
7380          DEBUT           =SIMP(statut='f',typ='I'),
7381          INTERVALLE      =FACT(statut='f',max='**',
7382            regles=(UN_PARMI('NOMBRE','PAS'),),
7383            JUSQU_A         =SIMP(statut='o',typ='I'),
7384            NOMBRE          =SIMP(statut='f',typ='I',val_min=1,),
7385            PAS             =SIMP(statut='f',typ='I',val_min=1,),
7386          ),
7387          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
7388          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
7389 )  ;
7390
7391 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
7392 #            CONFIGURATION MANAGEMENT OF EDF VERSION
7393 # ======================================================================
7394 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
7395 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
7396 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
7397 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
7398 # (AT YOUR OPTION) ANY LATER VERSION.                                 
7399 #
7400 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
7401 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
7402 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
7403 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
7404 #
7405 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
7406 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
7407 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
7408 # ======================================================================
7409 # RESPONSABLE VABHHTS J.PELLET
7410 DEFI_LIST_REEL=OPER(nom="DEFI_LIST_REEL",op=24,sd_prod=listr8,
7411                     fr="Définition d une suite croissante de réels",
7412                     docu="U4.34.01-g",reentrant='n',
7413             UIinfo={"groupes":("Fonction",)},
7414          regles=(UN_PARMI('VALE','DEBUT',),
7415                  EXCLUS('VALE','INTERVALLE'),
7416                  ENSEMBLE('DEBUT','INTERVALLE')),
7417          VALE            =SIMP(statut='f',typ='R',max='**'),
7418          DEBUT           =SIMP(statut='f',typ='R'),
7419          INTERVALLE      =FACT(statut='f',max='**',
7420            regles=(UN_PARMI('NOMBRE','PAS'),),
7421            JUSQU_A         =SIMP(statut='o',typ='R'),
7422            NOMBRE          =SIMP(statut='f',typ='I'),
7423            PAS             =SIMP(statut='f',typ='R'),
7424          ),
7425          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
7426          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
7427 )  ;
7428
7429 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
7430 #            CONFIGURATION MANAGEMENT OF EDF VERSION
7431 # ======================================================================
7432 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
7433 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
7434 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
7435 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
7436 # (AT YOUR OPTION) ANY LATER VERSION.                                 
7437 #
7438 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
7439 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
7440 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
7441 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
7442 #
7443 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
7444 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
7445 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
7446 # ======================================================================
7447 # RESPONSABLE VABHHTS J.PELLET
7448 DEFI_MAILLAGE=OPER(nom="DEFI_MAILLAGE",op=  88,sd_prod=maillage,
7449                    fr="Définition d un nouveau maillage à partir de macro éléments",
7450                    docu="U4.23.01-f",reentrant='n',
7451             UIinfo={"groupes":("Maillage",)},
7452          DEFI_MAILLE     =FACT(statut='o',max='**',
7453            MACR_ELEM_STAT  =SIMP(statut='o',typ=macr_elem_stat,max='**' ),
7454            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
7455            TRAN            =SIMP(statut='f',typ='R',max=3),
7456            ANGL_NAUT       =SIMP(statut='f',typ='R',max=3),
7457            b_angl_naut     =BLOC(condition = "ANGL_NAUT != None",
7458              CENTRE          =SIMP(statut='f',typ='R',max=3),
7459            ),
7460          ),
7461          RECO_GLOBAL     =FACT(statut='f',max='**',
7462            regles=(UN_PARMI('TOUT','MAILLE'),),
7463            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
7464            MAILLE          =SIMP(statut='f',typ=ma,max='**'),
7465            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
7466            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
7467          ),
7468          RECO_MAILLE     =FACT(statut='f',max='**',
7469            MAILLE          =SIMP(statut='o',typ=ma,max='**'),
7470            GROUP_NO        =SIMP(statut='o',typ=grno,max='**'),
7471            OPTION          =SIMP(statut='f',typ='TXM',defaut="GEOMETRIQUE",into=("GEOMETRIQUE","NOEUD_A_NOEUD","INVERSE") ),
7472            geometrique     =BLOC(condition = "OPTION == 'GEOMETRIQUE'",
7473              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
7474              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
7475            ),
7476          ),
7477          DEFI_NOEUD      =FACT(statut='f',max='**',
7478            regles=(UN_PARMI('TOUT','NOEUD_INIT'),),
7479            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",),
7480                                  fr="Renommage de tous les noeuds" ),
7481            NOEUD_INIT      =SIMP(statut='f',typ=no,
7482                                  fr="Renommage d un seul noeud"),                     
7483            b_tout          =BLOC(condition = "TOUT != None",
7484              PREFIXE         =SIMP(statut='f',typ='TXM' ),
7485              INDEX           =SIMP(statut='o',typ='I',max='**'),
7486            ),
7487            b_noeud_init    =BLOC(condition = "NOEUD_INIT != None",
7488              MAILLE          =SIMP(statut='o',typ=ma),
7489              NOEUD_FIN       =SIMP(statut='o',typ=no),
7490            ),        
7491          ),
7492          DEFI_GROUP_NO   =FACT(statut='f',max='**',
7493            regles=(UN_PARMI('TOUT','MAILLE'),
7494                 AU_MOINS_UN('INDEX','GROUP_NO_FIN'),
7495                    ENSEMBLE('GROUP_NO_INIT','GROUP_NO_FIN'),),
7496 #  la regle ancien catalogue AU_MOINS_UN__: ( INDEX , GROUP_NO_FIN ) incoherente avec doc U           
7497            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",),
7498                                  fr="Création de plusieurs groupes de noeuds" ),
7499            MAILLE          =SIMP(statut='f',typ=ma,
7500                                  fr="Création de plusieurs groupes de noeuds"),
7501            GROUP_NO_INIT   =SIMP(statut='f',typ=grno,
7502                                  fr="Création d un seul groupe de noeuds"),
7503            PREFIXE         =SIMP(statut='f',typ='TXM' ),
7504            INDEX           =SIMP(statut='f',typ='I',max='**'),
7505            GROUP_NO_FIN    =SIMP(statut='f',typ=grno),
7506          ),
7507 )  ;
7508
7509 #& MODIF COMMANDE  DATE 26/09/2003   AUTEUR DURAND C.DURAND 
7510 #            CONFIGURATION MANAGEMENT OF EDF VERSION
7511 # ======================================================================
7512 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
7513 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
7514 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
7515 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
7516 # (AT YOUR OPTION) ANY LATER VERSION.                                 
7517 #
7518 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
7519 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
7520 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
7521 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
7522 #
7523 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
7524 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
7525 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
7526 # ======================================================================
7527 DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater,
7528                    fr="Définition des paramètres décrivant le comportement d un matériau",
7529                    docu="U4.43.01-g",reentrant='n',
7530             UIinfo={"groupes":("Modélisation",)},
7531        regles=(EXCLUS('ELAS','ELAS_FO','ELAS_FLUI','ELAS_ISTR','ELAS_ISTR_FO','ELAS_ORTH',
7532                       'ELAS_ORTH_FO','ELAS_COQUE','ELAS_COQUE_FO',
7533                       'SURF_ETAT_SATU','CAM_CLAY_THM','SURF_ETAT_NSAT'),
7534                EXCLUS('THER','THER_FO','THER_ORTH','THER_NL'),
7535                EXCLUS('ECRO_LINE','ECRO_LINE_FO'),
7536                EXCLUS('TAHERI','TAHERI_FO'),
7537                EXCLUS('ROUSSELIER','ROUSSELIER_FO'),
7538                PRESENT_PRESENT('ROUSSELIER','TRACTION'),
7539                PRESENT_PRESENT('ROUSSELIER_FO','TRACTION'),
7540                EXCLUS('CIN1_CHAB','CIN1_CHAB_FO'),
7541                EXCLUS('CIN2_CHAB','CIN2_CHAB_FO'),
7542                EXCLUS('VISCOCHAB','VISCOCHAB_FO'),
7543                EXCLUS('POLY_CFC','POLY_CFC_FO'),
7544                EXCLUS('LEMAITRE','LEMAITRE_FO','ZIRC_CYRA2','ZIRC_EPRI'),
7545                EXCLUS('OHNO','OHNO_FO'),
7546                EXCLUS('LMARC','LMARC_FO'),
7547                EXCLUS('VMIS_POUTRE','VMIS_POUTRE_FO'),
7548                EXCLUS('VENDOCHAB','VENDOCHAB_FO'),
7549                PRESENT_PRESENT('BPEL_ACIER','ELAS'),
7550                EXCLUS('RCCM','RCCM_FO'),
7551                EXCLUS('WEIBULL','WEIBULL_FO'),
7552                PRESENT_PRESENT('CAM_CLAY','ELAS'),
7553                PRESENT_PRESENT('LAIGLE','ELAS'),
7554                EXCLUS('MAZARS','MAZARS_FO'),
7555                PRESENT_PRESENT('BAZANT_FD','ELAS_FO'),
7556                ),
7557 #
7558 # comportement élastique
7559 #
7560            ELAS            =FACT(statut='f',
7561              E               =SIMP(statut='o',typ='R',val_min=0.E+0),
7562              NU              =SIMP(statut='o',typ='R',val_min=-1.E+0,val_max=0.5E+0),
7563              RHO             =SIMP(statut='f',typ='R'),
7564              ALPHA           =SIMP(statut='f',typ='R'),
7565              AMOR_ALPHA      =SIMP(statut='f',typ='R'),
7566              AMOR_BETA       =SIMP(statut='f',typ='R'),
7567              AMOR_HYST       =SIMP(statut='f',typ='R'),
7568            ),
7569            ELAS_FO         =FACT(statut='f',
7570              regles=(PRESENT_PRESENT('ALPHA','TEMP_DEF_ALPHA'),),
7571              E               =SIMP(statut='o',typ=(fonction,formule)),
7572              NU              =SIMP(statut='o',typ=(fonction,formule)),
7573              RHO             =SIMP(statut='f',typ='R'),
7574              TEMP_DEF_ALPHA  =SIMP(statut='f',typ='R'),
7575              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.),
7576              ALPHA           =SIMP(statut='f',typ=(fonction,formule)),
7577              AMOR_ALPHA      =SIMP(statut='f',typ=(fonction,formule)),
7578              AMOR_BETA       =SIMP(statut='f',typ=(fonction,formule)),
7579              AMOR_HYST       =SIMP(statut='f',typ=(fonction,formule)),
7580              K_DESSIC        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
7581              B_ENDOGE        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
7582              FONC_DESORP     =SIMP(statut='f',typ=(fonction,formule)),
7583              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP","INST",) ),
7584              VERI_P2         =SIMP(statut='c',typ='TXM',defaut="INST",into=("TEMP","INST",) ),
7585              VERI_P3         =SIMP(statut='c',typ='TXM',defaut="HYDR",into=("HYDR",) ),
7586              VERI_P4         =SIMP(statut='c',typ='TXM',defaut="SECH",into=("SECH",) ),
7587            ),
7588            ELAS_FLUI       =FACT(statut='f',
7589              E               =SIMP(statut='o',typ='R'),
7590              NU              =SIMP(statut='o',typ='R'),
7591              RHO             =SIMP(statut='o',typ='R'),
7592              PROF_RHO_F_INT  =SIMP(statut='o',typ=(fonction,formule)),
7593              PROF_RHO_F_EXT  =SIMP(statut='o',typ=(fonction,formule)),
7594              COEF_MASS_AJOU  =SIMP(statut='o',typ=(fonction,formule)),
7595              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="ABSC",into=("ABSC",) ),
7596            ),
7597            ELAS_ISTR       =FACT(statut='f',
7598              E_L             =SIMP(statut='o',typ='R'),
7599              E_N             =SIMP(statut='o',typ='R'),
7600              NU_LT           =SIMP(statut='o',typ='R'),
7601              NU_LN           =SIMP(statut='o',typ='R'),
7602              G_LN            =SIMP(statut='o',typ='R'),
7603              RHO             =SIMP(statut='f',typ='R'),
7604              ALPHA_L         =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
7605              ALPHA_N         =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
7606            ),
7607            ELAS_ISTR_FO    =FACT(statut='f',
7608              regles=(
7609                       PRESENT_PRESENT('ALPHA_L','TEMP_DEF_ALPHA'),
7610                       PRESENT_PRESENT('ALPHA_N','TEMP_DEF_ALPHA'),
7611                     ),
7612              E_L             =SIMP(statut='o',typ=(fonction,formule)),
7613              E_N             =SIMP(statut='o',typ=(fonction,formule)),
7614              NU_LT           =SIMP(statut='o',typ=(fonction,formule)),
7615              NU_LN           =SIMP(statut='o',typ=(fonction,formule)),
7616              G_LN            =SIMP(statut='o',typ=(fonction,formule)),
7617              RHO             =SIMP(statut='f',typ='R'),
7618              TEMP_DEF_ALPHA  =SIMP(statut='f',typ='R'),
7619              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.),
7620              ALPHA_L         =SIMP(statut='f',typ=(fonction,formule)),
7621              ALPHA_N         =SIMP(statut='f',typ=(fonction,formule)),
7622              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP","INST")),
7623            ),
7624            ELAS_ORTH       =FACT(statut='f',
7625              E_L             =SIMP(statut='o',typ='R'),
7626              E_T             =SIMP(statut='o',typ='R'),
7627              E_N             =SIMP(statut='f',typ='R'),
7628              NU_LT           =SIMP(statut='o',typ='R'),
7629              NU_LN           =SIMP(statut='f',typ='R'),
7630              NU_TN           =SIMP(statut='f',typ='R'),
7631              G_LT            =SIMP(statut='o',typ='R'),
7632              G_LN            =SIMP(statut='f',typ='R'),
7633              G_TN            =SIMP(statut='f',typ='R'),
7634              RHO             =SIMP(statut='f',typ='R'),
7635              ALPHA_L         =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
7636              ALPHA_T         =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
7637              ALPHA_N         =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
7638              XT              =SIMP(statut='f',typ='R',defaut= 1. ),
7639              XC              =SIMP(statut='f',typ='R',defaut= 1. ),
7640              YT              =SIMP(statut='f',typ='R',defaut= 1. ),
7641              YC              =SIMP(statut='f',typ='R',defaut= 1. ),
7642              S_LT            =SIMP(statut='f',typ='R',defaut= 1. ),
7643            ),
7644            ELAS_ORTH_FO    =FACT(statut='f',
7645              regles=(
7646                       PRESENT_PRESENT('ALPHA_L','TEMP_DEF_ALPHA'),
7647                       PRESENT_PRESENT('ALPHA_N','TEMP_DEF_ALPHA'),
7648                       PRESENT_PRESENT('ALPHA_T','TEMP_DEF_ALPHA'),
7649                     ),
7650              E_L             =SIMP(statut='o',typ=(fonction,formule)),
7651              E_T             =SIMP(statut='o',typ=(fonction,formule)),
7652              E_N             =SIMP(statut='o',typ=(fonction,formule)),
7653              NU_LT           =SIMP(statut='o',typ=(fonction,formule)),
7654              NU_LN           =SIMP(statut='o',typ=(fonction,formule)),
7655              NU_TN           =SIMP(statut='o',typ=(fonction,formule)),
7656              G_LT            =SIMP(statut='o',typ=(fonction,formule)),
7657              G_LN            =SIMP(statut='o',typ=(fonction,formule)),
7658              G_TN            =SIMP(statut='o',typ=(fonction,formule)),
7659              RHO             =SIMP(statut='f',typ='R'),
7660              TEMP_DEF_ALPHA  =SIMP(statut='f',typ='R'),
7661              PRECISION       =SIMP(statut='f',typ='R',defaut= 1. ),
7662              ALPHA_L         =SIMP(statut='f',typ=(fonction,formule)),
7663              ALPHA_T         =SIMP(statut='f',typ=(fonction,formule)),
7664              ALPHA_N         =SIMP(statut='f',typ=(fonction,formule)),
7665              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP","INST",) ),
7666            ),
7667            ELAS_THM        =FACT(statut='f',
7668              RHO_S           =SIMP(statut='o',typ='R'),
7669              UN_SUR_KS       =SIMP(statut='o',typ='R'),
7670              E               =SIMP(statut='f',typ='R'),
7671              KB              =SIMP(statut='f',typ='R'),
7672              D_KB_T          =SIMP(statut='f',typ='R'),
7673              ALPHA_S         =SIMP(statut='f',typ='R'),
7674              ALPHA_D         =SIMP(statut='f',typ='R'),
7675            ),
7676            SURF_ETAT_SATU  =FACT(statut='f',
7677              E_CHAR          =SIMP(statut='o',typ='R'),
7678              E_DECHAR        =SIMP(statut='o',typ='R'),
7679              XN              =SIMP(statut='f',typ='R'),
7680              RF              =SIMP(statut='f',typ='R'),
7681              EV_KB           =SIMP(statut='f',typ='R'),
7682              EV_XM           =SIMP(statut='f',typ='R'),
7683              D_E_T           =SIMP(statut='f',typ='R'),
7684              ALPHA0          =SIMP(statut='f',typ='R'),
7685              ALPHA1          =SIMP(statut='f',typ='R'),
7686              ALPHA2          =SIMP(statut='f',typ='R'),
7687              ALPHA3          =SIMP(statut='f',typ='R'),
7688              ALPHA_S         =SIMP(statut='f',typ='R'),
7689              ANG_FRT         =SIMP(statut='o',typ='R'),
7690              COHE            =SIMP(statut='o',typ='R'),
7691              RESI_TRAC       =SIMP(statut='o',typ='R'),
7692            ),
7693            CAM_CLAY_THM    =FACT(statut='f',
7694              NU              =SIMP(statut='f',typ='R'),
7695              LAMBDA          =SIMP(statut='o',typ='R'),
7696              KAPA            =SIMP(statut='o',typ='R'),
7697              M               =SIMP(statut='f',typ='R'),
7698              PRES_CRIT       =SIMP(statut='f',typ='R'),
7699              GAMA            =SIMP(statut='o',typ='R'),
7700              A0_PC           =SIMP(statut='o',typ='R'),
7701              A1_PC           =SIMP(statut='f',typ='R'),
7702              A2_PC           =SIMP(statut='f',typ='R'),
7703              ALPHA0_PC       =SIMP(statut='f',typ='R'),
7704              ALPHA1_PC       =SIMP(statut='f',typ='R'),
7705              ALPHA2_PC       =SIMP(statut='f',typ='R'),
7706              ALPHA3_PC       =SIMP(statut='f',typ='R'),
7707              ALPHA_S         =SIMP(statut='f',typ='R'),
7708                          ),
7709            SURF_ETAT_NSAT  =FACT(statut='f',
7710              E_CHAR          =SIMP(statut='o',typ='R'),
7711              E_DECHAR        =SIMP(statut='o',typ='R'),
7712              XN              =SIMP(statut='f',typ='R'),
7713              RF              =SIMP(statut='f',typ='R'),
7714              EV_KB           =SIMP(statut='f',typ='R'),
7715              EV_XM           =SIMP(statut='f',typ='R'),
7716              EV_A            =SIMP(statut='f',typ='R'),
7717              EV_B            =SIMP(statut='f',typ='R'),
7718              EV_CT           =SIMP(statut='f',typ='R'),
7719              EV_SIGB         =SIMP(statut='f',typ='R'),
7720              D_E_T           =SIMP(statut='f',typ='R'),
7721              D_E_SUCC        =SIMP(statut='f',typ='R'),
7722              ANG_FRT         =SIMP(statut='o',typ='R'),
7723              COHE            =SIMP(statut='o',typ='R'),
7724              D_COEH_SUCC     =SIMP(statut='f',typ='R'),
7725              ANG_FRT_ULT     =SIMP(statut='f',typ='R'),
7726              SUCC_ULTM       =SIMP(statut='f',typ='R'),
7727              RESI_TRAC       =SIMP(statut='f',typ='R'),
7728              A_SURF_SATU     =SIMP(statut='f',typ='R'),
7729              B_SURF_SATU     =SIMP(statut='f',typ='R'),
7730              C_SURF_SATU     =SIMP(statut='f',typ='R'),
7731              D_SURF_SATU     =SIMP(statut='f',typ='R'),
7732            ),
7733            ELAS_COQUE      =FACT(statut='f',
7734              regles=(EXCLUS('MEMB_L','M_LLLL',),
7735                      PRESENT_PRESENT('MEMB_L','MEMB_LT', 'MEMB_T','MEMB_G_LT','FLEX_L','FLEX_LT',
7736                                      'FLEX_T','FLEX_G_LT','CISA_L','CISA_T',),
7737                      PRESENT_PRESENT('M_LLLL','M_LLTT','M_LLLT','M_TTTT','M_TTLT','M_LTLT','F_LLLL',
7738                                      'F_LLTT','F_LLLT','F_TTTT','F_TTLT','F_LTLT','MF_LLLL',
7739                                      'MF_LLTT','MF_LLLT','MF_TTTT','MF_TTLT','MF_LTLT','MC_LLLZ',
7740                                      'MC_LLTZ','MC_TTLZ','MC_TTTZ','MC_LTLZ','MC_LTTZ','FC_LLLZ',
7741                                      'FC_LLTZ','FC_TTLZ','FC_TTTZ','FC_LTLZ','FC_LTTZ','C_LZLZ',
7742                                      'C_LZTZ','C_TZTZ'),),
7743              MEMB_L          =SIMP(statut='f',typ='R'),
7744              MEMB_LT         =SIMP(statut='f',typ='R'),
7745              MEMB_T          =SIMP(statut='f',typ='R'),
7746              MEMB_G_LT       =SIMP(statut='f',typ='R'),
7747              FLEX_L          =SIMP(statut='f',typ='R'),
7748              FLEX_LT         =SIMP(statut='f',typ='R'),
7749              FLEX_T          =SIMP(statut='f',typ='R'),
7750              FLEX_G_LT       =SIMP(statut='f',typ='R'),
7751              CISA_L          =SIMP(statut='f',typ='R'),
7752              CISA_T          =SIMP(statut='f',typ='R'),
7753              M_LLLL          =SIMP(statut='f',typ='R'),
7754              M_LLTT          =SIMP(statut='f',typ='R'),
7755              M_LLLT          =SIMP(statut='f',typ='R'),
7756              M_TTTT          =SIMP(statut='f',typ='R'),
7757              M_TTLT          =SIMP(statut='f',typ='R'),
7758              M_LTLT          =SIMP(statut='f',typ='R'),
7759              F_LLLL          =SIMP(statut='f',typ='R'),
7760              F_LLTT          =SIMP(statut='f',typ='R'),
7761              F_LLLT          =SIMP(statut='f',typ='R'),
7762              F_TTTT          =SIMP(statut='f',typ='R'),
7763              F_TTLT          =SIMP(statut='f',typ='R'),
7764              F_LTLT          =SIMP(statut='f',typ='R'),
7765              MF_LLLL         =SIMP(statut='f',typ='R'),
7766              MF_LLTT         =SIMP(statut='f',typ='R'),
7767              MF_LLLT         =SIMP(statut='f',typ='R'),
7768              MF_TTTT         =SIMP(statut='f',typ='R'),
7769              MF_TTLT         =SIMP(statut='f',typ='R'),
7770              MF_LTLT         =SIMP(statut='f',typ='R'),
7771              MC_LLLZ         =SIMP(statut='f',typ='R'),
7772              MC_LLTZ         =SIMP(statut='f',typ='R'),
7773              MC_TTLZ         =SIMP(statut='f',typ='R'),
7774              MC_TTTZ         =SIMP(statut='f',typ='R'),
7775              MC_LTLZ         =SIMP(statut='f',typ='R'),
7776              MC_LTTZ         =SIMP(statut='f',typ='R'),
7777              FC_LLLZ         =SIMP(statut='f',typ='R'),
7778              FC_LLTZ         =SIMP(statut='f',typ='R'),
7779              FC_TTLZ         =SIMP(statut='f',typ='R'),
7780              FC_TTTZ         =SIMP(statut='f',typ='R'),
7781              FC_LTLZ         =SIMP(statut='f',typ='R'),
7782              FC_LTTZ         =SIMP(statut='f',typ='R'),
7783              C_LZLZ          =SIMP(statut='f',typ='R'),
7784              C_LZTZ          =SIMP(statut='f',typ='R'),
7785              C_TZTZ          =SIMP(statut='f',typ='R'),
7786              RHO             =SIMP(statut='f',typ='R'),
7787              ALPHA           =SIMP(statut='f',typ='R'),
7788            ),
7789            ELAS_COQUE_FO   =FACT(statut='f',
7790              regles=(EXCLUS('MEMB_L','M_LLLL',),
7791                      PRESENT_PRESENT('MEMB_L','MEMB_LT','MEMB_T','MEMB_G_LT','FLEX_L','FLEX_LT',
7792                                      'FLEX_T','FLEX_G_LT','CISA_L','CISA_T',),
7793                      PRESENT_PRESENT('M_LLLL','M_LLTT','M_LLLT','M_TTTT','M_TTLT','M_LTLT','F_LLLL',
7794                                      'F_LLTT','F_LLLT','F_TTTT','F_TTLT','F_LTLT','MF_LLLL','MF_LLTT',
7795                                      'MF_LLLT','MF_TTTT','MF_TTLT','MF_LTLT','MC_LLLZ','MC_LLTZ',
7796                                      'MC_TTLZ','MC_TTTZ','MC_LTLZ','MC_LTTZ','FC_LLLZ','FC_LLTZ',
7797                                      'FC_TTLZ','FC_TTTZ','FC_LTLZ','FC_LTTZ','C_LZLZ','C_LZTZ','C_TZTZ'),),
7798              MEMB_L          =SIMP(statut='f',typ=(fonction,formule)),
7799              MEMB_LT         =SIMP(statut='f',typ=(fonction,formule)),
7800              MEMB_T          =SIMP(statut='f',typ=(fonction,formule)),
7801              MEMB_G_LT       =SIMP(statut='f',typ=(fonction,formule)),
7802              FLEX_L          =SIMP(statut='f',typ=(fonction,formule)),
7803              FLEX_LT         =SIMP(statut='f',typ=(fonction,formule)),
7804              FLEX_T          =SIMP(statut='f',typ=(fonction,formule)),
7805              FLEX_G_LT       =SIMP(statut='f',typ=(fonction,formule)),
7806              CISA_L          =SIMP(statut='f',typ=(fonction,formule)),
7807              CISA_T          =SIMP(statut='f',typ=(fonction,formule)),
7808              M_LLLL          =SIMP(statut='f',typ=(fonction,formule)),
7809              M_LLTT          =SIMP(statut='f',typ=(fonction,formule)),
7810              M_LLLT          =SIMP(statut='f',typ=(fonction,formule)),
7811              M_TTTT          =SIMP(statut='f',typ=(fonction,formule)),
7812              M_TTLT          =SIMP(statut='f',typ=(fonction,formule)),
7813              M_LTLT          =SIMP(statut='f',typ=(fonction,formule)),
7814              F_LLLL          =SIMP(statut='f',typ=(fonction,formule)),
7815              F_LLTT          =SIMP(statut='f',typ=(fonction,formule)),
7816              F_LLLT          =SIMP(statut='f',typ=(fonction,formule)),
7817              F_TTTT          =SIMP(statut='f',typ=(fonction,formule)),
7818              F_TTLT          =SIMP(statut='f',typ=(fonction,formule)),
7819              F_LTLT          =SIMP(statut='f',typ=(fonction,formule)),
7820              MF_LLLL         =SIMP(statut='f',typ=(fonction,formule)),
7821              MF_LLTT         =SIMP(statut='f',typ=(fonction,formule)),
7822              MF_LLLT         =SIMP(statut='f',typ=(fonction,formule)),
7823              MF_TTTT         =SIMP(statut='f',typ=(fonction,formule)),
7824              MF_TTLT         =SIMP(statut='f',typ=(fonction,formule)),
7825              MF_LTLT         =SIMP(statut='f',typ=(fonction,formule)),
7826              MC_LLLZ         =SIMP(statut='f',typ=(fonction,formule)),
7827              MC_LLTZ         =SIMP(statut='f',typ=(fonction,formule)),
7828              MC_TTLZ         =SIMP(statut='f',typ=(fonction,formule)),
7829              MC_TTTZ         =SIMP(statut='f',typ=(fonction,formule)),
7830              MC_LTLZ         =SIMP(statut='f',typ=(fonction,formule)),
7831              MC_LTTZ         =SIMP(statut='f',typ=(fonction,formule)),
7832              FC_LLLZ         =SIMP(statut='f',typ=(fonction,formule)),
7833              FC_LLTZ         =SIMP(statut='f',typ=(fonction,formule)),
7834              FC_TTLZ         =SIMP(statut='f',typ=(fonction,formule)),
7835              FC_TTTZ         =SIMP(statut='f',typ=(fonction,formule)),
7836              FC_LTLZ         =SIMP(statut='f',typ=(fonction,formule)),
7837              FC_LTTZ         =SIMP(statut='f',typ=(fonction,formule)),
7838              C_LZLZ          =SIMP(statut='f',typ=(fonction,formule)),
7839              C_LZTZ          =SIMP(statut='f',typ=(fonction,formule)),
7840              C_TZTZ          =SIMP(statut='f',typ=(fonction,formule)),
7841              RHO             =SIMP(statut='f',typ='R'),
7842              ALPHA           =SIMP(statut='f',typ=(fonction,formule)),
7843              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP","INST") ),
7844            ),
7845            APPUI_ELAS      =FACT(statut='f',
7846              E_N             =SIMP(statut='o',typ='R'),
7847              E_TAN           =SIMP(statut='f',typ='R',defaut= 0.E+0),
7848            ),
7849            CABLE           =FACT(statut='f',
7850              E               =SIMP(statut='o',typ='R'),
7851              EC_SUR_E        =SIMP(statut='f',typ='R',defaut= 1.E-4 ),
7852              RHO             =SIMP(statut='f',typ='R'),
7853              ALPHA           =SIMP(statut='f',typ='R'),
7854              AMOR_ALPHA      =SIMP(statut='f',typ='R'),
7855              AMOR_BETA       =SIMP(statut='f',typ='R'),
7856            ),
7857 #
7858 # comportement mécanique non linéaire
7859 #
7860            TRACTION        =FACT(statut='f',
7861              SIGM            =SIMP(statut='o',typ=(fonction,formule)),
7862              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="EPSI",into=("EPSI",) ),
7863              VERI_P2         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
7864              VERI_P3         =SIMP(statut='c',typ='TXM',defaut="HYDR",into=("HYDR",) ),
7865              VERI_P4         =SIMP(statut='c',typ='TXM',defaut="SECH",into=("SECH",) ),
7866            ),
7867            ECRO_LINE       =FACT(statut='f',
7868              D_SIGM_EPSI     =SIMP(statut='o',typ='R'),
7869              SY              =SIMP(statut='o',typ='R'),
7870            ),
7871            ECRO_LINE_FO    =FACT(statut='f',
7872              D_SIGM_EPSI     =SIMP(statut='o',typ=(fonction,formule)),
7873              SY              =SIMP(statut='o',typ=(fonction,formule)),
7874              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
7875            ),
7876            BETON_ECRO_LINE =FACT(statut='f',
7877              D_SIGM_EPSI     =SIMP(statut='o',typ='R'),
7878              SYT             =SIMP(statut='o',typ='R'),
7879              SYC             =SIMP(statut='f',typ='R'),
7880            ),
7881            PRAGER          =FACT(statut='f',
7882              C               =SIMP(statut='o',typ='R'),
7883            ),
7884            PRAGER_FO       =FACT(statut='f',
7885              C               =SIMP(statut='o',typ=(fonction,formule)),
7886              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
7887            ),
7888            ECRO_FLEJOU     =FACT(statut='f',
7889              EP              =SIMP(statut='o',typ='R'),
7890              SY              =SIMP(statut='o',typ='R'),
7891              SU              =SIMP(statut='o',typ='R'),
7892              PUISS           =SIMP(statut='o',typ='R'),
7893            ),
7894            TAHERI          =FACT(statut='f',
7895              R_0             =SIMP(statut='o',typ='R'),
7896              ALPHA           =SIMP(statut='o',typ='R'),
7897              M               =SIMP(statut='o',typ='R'),
7898              A               =SIMP(statut='o',typ='R'),
7899              B               =SIMP(statut='o',typ='R'),
7900              C1              =SIMP(statut='o',typ='R'),
7901              C_INF           =SIMP(statut='o',typ='R'),
7902              S               =SIMP(statut='o',typ='R'),
7903            ),
7904            TAHERI_FO       =FACT(statut='f',
7905              R_0             =SIMP(statut='o',typ=(fonction,formule)),
7906              ALPHA           =SIMP(statut='o',typ=(fonction,formule)),
7907              M               =SIMP(statut='o',typ=(fonction,formule)),
7908              A               =SIMP(statut='o',typ=(fonction,formule)),
7909              B               =SIMP(statut='o',typ=(fonction,formule)),
7910              C1              =SIMP(statut='o',typ=(fonction,formule)),
7911              C_INF           =SIMP(statut='o',typ=(fonction,formule)),
7912              S               =SIMP(statut='o',typ=(fonction,formule)),
7913              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
7914            ),
7915            ROUSSELIER      =FACT(statut='f',
7916              D               =SIMP(statut='o',typ='R'),
7917              SIGM_1          =SIMP(statut='o',typ='R'),
7918              PORO_INIT       =SIMP(statut='o',typ='R'),
7919              PORO_CRIT       =SIMP(statut='f',typ='R',defaut= 1. ),
7920              PORO_ACCE       =SIMP(statut='f',typ='R',defaut= 1. ),
7921              PORO_LIMI       =SIMP(statut='f',typ='R',defaut= 0.999 ),
7922              D_SIGM_EPSI_NORM=SIMP(statut='f',typ='R',defaut= 1. ),
7923              AN              =SIMP(statut='f',typ='R',defaut= 0. ),
7924            ),
7925            ROUSSELIER_FO   =FACT(statut='f',
7926              D               =SIMP(statut='o',typ=(fonction,formule)),
7927              SIGM_1          =SIMP(statut='o',typ=(fonction,formule)),
7928              PORO_INIT       =SIMP(statut='o',typ=(fonction,formule)),
7929              PORO_CRIT       =SIMP(statut='f',typ='R',defaut= 1. ),
7930              PORO_ACCE       =SIMP(statut='f',typ='R',defaut= 1. ),
7931              PORO_LIMI       =SIMP(statut='f',typ='R',defaut= 0.999 ),
7932              D_SIGM_EPSI_NORM=SIMP(statut='f',typ='R',defaut= 1. ),
7933              AN              =SIMP(statut='f',typ='R',defaut= 0. ),
7934              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
7935            ),
7936            ROUSS_VISC      =FACT(statut='f',
7937              SIGM_0          =SIMP(statut='o',typ='R'),
7938              EPSI_0          =SIMP(statut='o',typ='R'),
7939              M               =SIMP(statut='o',typ='R'),
7940            ),
7941            CHABOCHE        =FACT(statut='f',
7942              R_I             =SIMP(statut='o',typ='R'),
7943              R_0             =SIMP(statut='o',typ='R'),
7944              B               =SIMP(statut='o',typ='R'),
7945              K               =SIMP(statut='o',typ='R'),
7946              W               =SIMP(statut='o',typ='R'),
7947              A1              =SIMP(statut='o',typ='R'),
7948              A2              =SIMP(statut='o',typ='R'),
7949              C1              =SIMP(statut='o',typ='R'),
7950              C2              =SIMP(statut='o',typ='R'),
7951            ),
7952            CIN1_CHAB  =FACT(statut='f',
7953              R_0             =SIMP(statut='o',typ='R'),
7954              R_I             =SIMP(statut='f',typ='R'),
7955              B               =SIMP(statut='f',typ='R',defaut= 0.0E+0),
7956              C_I             =SIMP(statut='o',typ='R'),
7957              K               =SIMP(statut='f',typ='R',defaut= 1.0E+0),
7958              W               =SIMP(statut='f',typ='R',defaut= 0.0E+0),
7959              G_0             =SIMP(statut='o',typ='R'),
7960              A_I             =SIMP(statut='f',typ='R',defaut= 1.0E+0),
7961            ),
7962            CIN1_CHAB_FO  =FACT(statut='f',
7963              R_0             =SIMP(statut='o',typ=(fonction,formule)),
7964              R_I             =SIMP(statut='o',typ=(fonction,formule)),
7965              B               =SIMP(statut='o',typ=(fonction,formule)),
7966              C_I             =SIMP(statut='o',typ=(fonction,formule)),
7967              K               =SIMP(statut='o',typ=(fonction,formule)),
7968              W               =SIMP(statut='o',typ=(fonction,formule)),
7969              G_0             =SIMP(statut='o',typ=(fonction,formule)),
7970              A_I             =SIMP(statut='o',typ=(fonction,formule)),
7971              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
7972            ),
7973            CIN2_CHAB  =FACT(statut='f',
7974              R_0             =SIMP(statut='o',typ='R'),
7975              R_I             =SIMP(statut='f',typ='R'),
7976              B               =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
7977              C1_I            =SIMP(statut='o',typ='R'),
7978              C2_I            =SIMP(statut='o',typ='R'),
7979              K               =SIMP(statut='f',typ='R',defaut= 1.),
7980              W               =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
7981              G1_0            =SIMP(statut='o',typ='R'),
7982              G2_0            =SIMP(statut='o',typ='R'),
7983              A_I             =SIMP(statut='f',typ='R',defaut= 1.E+0 ),
7984            ),
7985            CIN2_CHAB_FO  =FACT(statut='f',
7986              R_0             =SIMP(statut='o',typ=(fonction,formule)),
7987              R_I             =SIMP(statut='o',typ=(fonction,formule)),
7988              B               =SIMP(statut='o',typ=(fonction,formule)),
7989              C1_I            =SIMP(statut='o',typ=(fonction,formule)),
7990              C2_I            =SIMP(statut='o',typ=(fonction,formule)),
7991              K               =SIMP(statut='o',typ=(fonction,formule)),
7992              W               =SIMP(statut='o',typ=(fonction,formule)),
7993              G1_0            =SIMP(statut='o',typ=(fonction,formule)),
7994              G2_0            =SIMP(statut='o',typ=(fonction,formule)),
7995              A_I             =SIMP(statut='o',typ=(fonction,formule)),
7996              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
7997            ),
7998            VISCOCHAB       =FACT(statut='f',
7999              K_0             =SIMP(statut='o',typ='R'),
8000              A_K             =SIMP(statut='o',typ='R'),
8001              A_R             =SIMP(statut='o',typ='R'),
8002              K               =SIMP(statut='o',typ='R'),
8003              N               =SIMP(statut='o',typ='R'),
8004              ALP             =SIMP(statut='o',typ='R'),
8005              B               =SIMP(statut='o',typ='R'),
8006              M_R             =SIMP(statut='o',typ='R'),
8007              G_R             =SIMP(statut='o',typ='R'),
8008              MU              =SIMP(statut='o',typ='R'),
8009              Q_M             =SIMP(statut='o',typ='R'),
8010              Q_0             =SIMP(statut='o',typ='R'),
8011              QR_0            =SIMP(statut='o',typ='R'),
8012              ETA             =SIMP(statut='o',typ='R'),
8013              C1              =SIMP(statut='o',typ='R'),
8014              M_1             =SIMP(statut='o',typ='R'),
8015              D1              =SIMP(statut='o',typ='R'),
8016              G_X1            =SIMP(statut='o',typ='R'),
8017              G1_0            =SIMP(statut='o',typ='R'),
8018              C2              =SIMP(statut='o',typ='R'),
8019              M_2             =SIMP(statut='o',typ='R'),
8020              D2              =SIMP(statut='o',typ='R'),
8021              G_X2            =SIMP(statut='o',typ='R'),
8022              G2_0            =SIMP(statut='o',typ='R'),
8023              A_I             =SIMP(statut='o',typ='R'),
8024            ),
8025            VISCOCHAB_FO    =FACT(statut='f',
8026              K_0             =SIMP(statut='o',typ=(fonction,formule)),
8027              A_K             =SIMP(statut='o',typ=(fonction,formule)),
8028              A_R             =SIMP(statut='o',typ=(fonction,formule)),
8029              K               =SIMP(statut='o',typ=(fonction,formule)),
8030              N               =SIMP(statut='o',typ=(fonction,formule)),
8031              ALP             =SIMP(statut='o',typ=(fonction,formule)),
8032              B               =SIMP(statut='o',typ=(fonction,formule)),
8033              M_R             =SIMP(statut='o',typ=(fonction,formule)),
8034              G_R             =SIMP(statut='o',typ=(fonction,formule)),
8035              MU              =SIMP(statut='o',typ=(fonction,formule)),
8036              Q_M             =SIMP(statut='o',typ=(fonction,formule)),
8037              Q_0             =SIMP(statut='o',typ=(fonction,formule)),
8038              QR_0            =SIMP(statut='o',typ=(fonction,formule)),
8039              ETA             =SIMP(statut='o',typ=(fonction,formule)),
8040              C1              =SIMP(statut='o',typ=(fonction,formule)),
8041              M_1             =SIMP(statut='o',typ=(fonction,formule)),
8042              D1              =SIMP(statut='o',typ=(fonction,formule)),
8043              G_X1            =SIMP(statut='o',typ=(fonction,formule)),
8044              G1_0            =SIMP(statut='o',typ=(fonction,formule)),
8045              C2              =SIMP(statut='o',typ=(fonction,formule)),
8046              M_2             =SIMP(statut='o',typ=(fonction,formule)),
8047              D2              =SIMP(statut='o',typ=(fonction,formule)),
8048              G_X2            =SIMP(statut='o',typ=(fonction,formule)),
8049              G2_0            =SIMP(statut='o',typ=(fonction,formule)),
8050              A_I             =SIMP(statut='o',typ=(fonction,formule)),
8051              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
8052            ),
8053            POLY_CFC        =FACT(statut='f',
8054              TEXTURE         =SIMP(statut='o',typ=(tabl_texture) ),
8055              DL              =SIMP(statut='f',typ='R'),
8056              DA              =SIMP(statut='f',typ='R'),
8057              N               =SIMP(statut='o',typ='R'),
8058              K               =SIMP(statut='o',typ='R'),
8059              TAU_0           =SIMP(statut='o',typ='R'),
8060              Q1              =SIMP(statut='o',typ='R'),
8061              B1              =SIMP(statut='o',typ='R'),
8062              HL              =SIMP(statut='o',typ='R'),
8063              Q2              =SIMP(statut='o',typ='R'),
8064              B2              =SIMP(statut='o',typ='R'),
8065              C1              =SIMP(statut='o',typ='R'),
8066              D1              =SIMP(statut='o',typ='R'),
8067              C2              =SIMP(statut='o',typ='R'),
8068            ),
8069            POLY_CFC_FO     =FACT(statut='f',
8070              TEXTURE         =SIMP(statut='o',typ=(tabl_texture) ),
8071              DL              =SIMP(statut='o',typ=(fonction,formule)),
8072              DA              =SIMP(statut='o',typ=(fonction,formule)),
8073              N               =SIMP(statut='o',typ=(fonction,formule)),
8074              K               =SIMP(statut='o',typ=(fonction,formule)),
8075              TAU_0           =SIMP(statut='o',typ=(fonction,formule)),
8076              Q1              =SIMP(statut='o',typ=(fonction,formule)),
8077              B1              =SIMP(statut='o',typ=(fonction,formule)),
8078              HL              =SIMP(statut='o',typ=(fonction,formule)),
8079              Q2              =SIMP(statut='o',typ=(fonction,formule)),
8080              B2              =SIMP(statut='o',typ=(fonction,formule)),
8081              C1              =SIMP(statut='o',typ=(fonction,formule)),
8082              D1              =SIMP(statut='o',typ=(fonction,formule)),
8083              C2              =SIMP(statut='o',typ=(fonction,formule)),
8084              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
8085            ),
8086            LEMAITRE        =FACT(statut='f',
8087              N               =SIMP(statut='o',typ='R'),
8088              UN_SUR_K        =SIMP(statut='o',typ='R'),
8089              UN_SUR_M        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8090            ),
8091            ZIRC_CYRA2      =FACT(statut='f',
8092              EPSI_FAB        =SIMP(statut='o',typ=(fonction,formule)),
8093              TEMP_RECUIT     =SIMP(statut='o',typ=(fonction,formule)),
8094              FLUX_PHI        =SIMP(statut='o',typ=(fonction,formule)),
8095              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="INST",into=("INST",) ),
8096            ),
8097            ZIRC_EPRI       =FACT(statut='f',
8098              FLUX_PHI        =SIMP(statut='o',typ='R'),
8099              R_P             =SIMP(statut='o',typ='R'),
8100              THETA_MAX       =SIMP(statut='o',typ='R'),
8101            ),
8102            LEMAITRE_FO     =FACT(statut='f',
8103              N               =SIMP(statut='o',typ=(fonction,formule)),
8104              UN_SUR_K        =SIMP(statut='o',typ=(fonction,formule)),
8105              UN_SUR_M        =SIMP(statut='o',typ=(fonction,formule)),
8106              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
8107            ),
8108            GRAN_IRRA       =FACT(statut='f',
8109              A               =SIMP(statut='f',typ='R',defaut= 0.E+0),
8110              B               =SIMP(statut='f',typ='R',defaut= 0.E+0),
8111              S               =SIMP(statut='f',typ='R',defaut= 0.E+0),
8112            ),
8113            FLU_IRRA       =FACT(statut='f',
8114              QSR_K           =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8115              BETA            =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8116              PHI_ZERO        =SIMP(statut='f',typ='R',defaut= 1.E+20),
8117              L               =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8118            ),
8119            OHNO            =FACT(statut='f',
8120              R_I             =SIMP(statut='o',typ='R'),
8121              R_0             =SIMP(statut='o',typ='R'),
8122              B               =SIMP(statut='o',typ='R'),
8123              PHI             =SIMP(statut='o',typ='R'),
8124              A1              =SIMP(statut='o',typ='R'),
8125              A2              =SIMP(statut='o',typ='R'),
8126              A3              =SIMP(statut='o',typ='R'),
8127              A4              =SIMP(statut='o',typ='R'),
8128              A5              =SIMP(statut='o',typ='R'),
8129              GAMMA1          =SIMP(statut='o',typ='R'),
8130              GAMMA2          =SIMP(statut='o',typ='R'),
8131              GAMMA3          =SIMP(statut='o',typ='R'),
8132              GAMMA4          =SIMP(statut='o',typ='R'),
8133              GAMMA5          =SIMP(statut='o',typ='R'),
8134              M1              =SIMP(statut='o',typ='R'),
8135              M2              =SIMP(statut='o',typ='R'),
8136              M3              =SIMP(statut='o',typ='R'),
8137              M4              =SIMP(statut='o',typ='R'),
8138              M5              =SIMP(statut='o',typ='R'),
8139                            ),
8140            OHNO_FO         =FACT(statut='f',
8141              R_I             =SIMP(statut='o',typ=(fonction,formule)),
8142              R_0             =SIMP(statut='o',typ=(fonction,formule)),
8143              B               =SIMP(statut='o',typ=(fonction,formule)),
8144              PHI             =SIMP(statut='o',typ=(fonction,formule)),
8145              A1              =SIMP(statut='o',typ=(fonction,formule)),
8146              A2              =SIMP(statut='o',typ=(fonction,formule)),
8147              A3              =SIMP(statut='o',typ=(fonction,formule)),
8148              A4              =SIMP(statut='o',typ=(fonction,formule)),
8149              A5              =SIMP(statut='o',typ=(fonction,formule)),
8150              GAMMA1          =SIMP(statut='o',typ=(fonction,formule)),
8151              GAMMA2          =SIMP(statut='o',typ=(fonction,formule)),
8152              GAMMA3          =SIMP(statut='o',typ=(fonction,formule)),
8153              GAMMA4          =SIMP(statut='o',typ=(fonction,formule)),
8154              GAMMA5          =SIMP(statut='o',typ=(fonction,formule)),
8155              M1              =SIMP(statut='o',typ=(fonction,formule)),
8156              M2              =SIMP(statut='o',typ=(fonction,formule)),
8157              M3              =SIMP(statut='o',typ=(fonction,formule)),
8158              M4              =SIMP(statut='o',typ=(fonction,formule)),
8159              M5              =SIMP(statut='o',typ=(fonction,formule)),
8160              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
8161            ),
8162            LMARC           =FACT(statut='f',
8163              DE_0            =SIMP(statut='o',typ='R'),
8164              R_0             =SIMP(statut='o',typ='R'),
8165              N               =SIMP(statut='o',typ='R'),
8166              K               =SIMP(statut='o',typ='R'),
8167              Y_I             =SIMP(statut='o',typ='R'),
8168              Y_0             =SIMP(statut='o',typ='R'),
8169              B               =SIMP(statut='o',typ='R'),
8170              A_0             =SIMP(statut='o',typ='R'),
8171              RM              =SIMP(statut='o',typ='R'),
8172              M               =SIMP(statut='o',typ='R'),
8173              P               =SIMP(statut='o',typ='R'),
8174              P1              =SIMP(statut='o',typ='R'),
8175              P2              =SIMP(statut='o',typ='R'),
8176              M11             =SIMP(statut='o',typ='R'),
8177              M22             =SIMP(statut='o',typ='R'),
8178              M33             =SIMP(statut='o',typ='R'),
8179              M66             =SIMP(statut='o',typ='R'),
8180              N11             =SIMP(statut='o',typ='R'),
8181              N22             =SIMP(statut='o',typ='R'),
8182              N33             =SIMP(statut='o',typ='R'),
8183              N66             =SIMP(statut='o',typ='R'),
8184              Q11             =SIMP(statut='o',typ='R'),
8185              Q22             =SIMP(statut='o',typ='R'),
8186              Q33             =SIMP(statut='o',typ='R'),
8187              Q66             =SIMP(statut='o',typ='R'),
8188              R11             =SIMP(statut='o',typ='R'),
8189              R22             =SIMP(statut='o',typ='R'),
8190              R33             =SIMP(statut='o',typ='R'),
8191              R66             =SIMP(statut='o',typ='R'),
8192            ),
8193            LMARC_FO        =FACT(statut='f',
8194              DE_0            =SIMP(statut='o',typ=(fonction,formule)),
8195              R_0             =SIMP(statut='o',typ=(fonction,formule)),
8196              N               =SIMP(statut='o',typ=(fonction,formule)),
8197              K               =SIMP(statut='o',typ=(fonction,formule)),
8198              Y_I             =SIMP(statut='o',typ=(fonction,formule)),
8199              Y_0             =SIMP(statut='o',typ=(fonction,formule)),
8200              B               =SIMP(statut='o',typ=(fonction,formule)),
8201              A_0             =SIMP(statut='o',typ=(fonction,formule)),
8202              RM              =SIMP(statut='o',typ=(fonction,formule)),
8203              M               =SIMP(statut='o',typ=(fonction,formule)),
8204              P               =SIMP(statut='o',typ=(fonction,formule)),
8205              P1              =SIMP(statut='o',typ=(fonction,formule)),
8206              P2              =SIMP(statut='o',typ=(fonction,formule)),
8207              M11             =SIMP(statut='o',typ=(fonction,formule)),
8208              M22             =SIMP(statut='o',typ=(fonction,formule)),
8209              M33             =SIMP(statut='o',typ=(fonction,formule)),
8210              M66             =SIMP(statut='o',typ=(fonction,formule)),
8211              N11             =SIMP(statut='o',typ=(fonction,formule)),
8212              N22             =SIMP(statut='o',typ=(fonction,formule)),
8213              N33             =SIMP(statut='o',typ=(fonction,formule)),
8214              N66             =SIMP(statut='o',typ=(fonction,formule)),
8215              Q11             =SIMP(statut='o',typ=(fonction,formule)),
8216              Q22             =SIMP(statut='o',typ=(fonction,formule)),
8217              Q33             =SIMP(statut='o',typ=(fonction,formule)),
8218              Q66             =SIMP(statut='o',typ=(fonction,formule)),
8219              R11             =SIMP(statut='o',typ=(fonction,formule)),
8220              R22             =SIMP(statut='o',typ=(fonction,formule)),
8221              R33             =SIMP(statut='o',typ=(fonction,formule)),
8222              R66             =SIMP(statut='o',typ=(fonction,formule)),
8223              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
8224            ),
8225            VMIS_POUTRE     =FACT(statut='f',
8226              NP              =SIMP(statut='o',typ='R'),
8227              MEY             =SIMP(statut='o',typ='R'),
8228              MPY             =SIMP(statut='o',typ='R'),
8229              CAY             =SIMP(statut='o',typ='R'),
8230              CBY             =SIMP(statut='o',typ='R'),
8231              MEZ             =SIMP(statut='o',typ='R'),
8232              MPZ             =SIMP(statut='o',typ='R'),
8233              CAZ             =SIMP(statut='o',typ='R'),
8234              CBZ             =SIMP(statut='o',typ='R'),
8235              MPX             =SIMP(statut='o',typ='R'),
8236            ),
8237            VMIS_POUTRE_FO  =FACT(statut='f',
8238              NP              =SIMP(statut='o',typ=(fonction,formule)),
8239              MEY             =SIMP(statut='o',typ=(fonction,formule)),
8240              MPY             =SIMP(statut='o',typ=(fonction,formule)),
8241              CAY             =SIMP(statut='o',typ=(fonction,formule)),
8242              CBY             =SIMP(statut='o',typ=(fonction,formule)),
8243              MEZ             =SIMP(statut='o',typ=(fonction,formule)),
8244              MPZ             =SIMP(statut='o',typ=(fonction,formule)),
8245              CAZ             =SIMP(statut='o',typ=(fonction,formule)),
8246              CBZ             =SIMP(statut='o',typ=(fonction,formule)),
8247              MPX             =SIMP(statut='o',typ=(fonction,formule)),
8248              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
8249            ),
8250            ARME            =FACT(statut='f',
8251              KYE             =SIMP(statut='o',typ='R'),
8252              DLE             =SIMP(statut='o',typ='R'),
8253              KYP             =SIMP(statut='o',typ='R'),
8254              DLP             =SIMP(statut='o',typ='R'),
8255              KYG             =SIMP(statut='o',typ='R'),
8256            ),
8257            ASSE_CORN       =FACT(statut='f',
8258              NU_1            =SIMP(statut='o',typ='R'),
8259              MU_1            =SIMP(statut='o',typ='R'),
8260              DXU_1           =SIMP(statut='o',typ='R'),
8261              DRYU_1          =SIMP(statut='o',typ='R'),
8262              C_1             =SIMP(statut='o',typ='R'),
8263              NU_2            =SIMP(statut='o',typ='R'),
8264              MU_2            =SIMP(statut='o',typ='R'),
8265              DXU_2           =SIMP(statut='o',typ='R'),
8266              DRYU_2          =SIMP(statut='o',typ='R'),
8267              C_2             =SIMP(statut='o',typ='R'),
8268              KY              =SIMP(statut='o',typ='R'),
8269              KZ              =SIMP(statut='o',typ='R'),
8270              KRX             =SIMP(statut='o',typ='R'),
8271              KRZ             =SIMP(statut='o',typ='R'),
8272            ),
8273            DIS_CONTACT     =FACT(statut='f',
8274              RIGI_NOR        =SIMP(statut='f',typ='R' ),
8275              DIST_1          =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8276              DIST_2          =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8277              RIGI_TAN        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8278              AMOR_NOR        =SIMP(statut='f',typ='R' ),
8279              AMOR_TAN        =SIMP(statut='f',typ='R' ),
8280              COULOMB         =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8281              JEU             =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8282              KT_ULTM         =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8283              EFFO_N_INIT     =SIMP(statut='f',typ=(fonction,formule)),
8284              regles=(EXCLUS('RIGI_N_FO','RIGI_N_IRRA',),
8285                      EXCLUS('RELA_MZ','ANGLE_1'),
8286                      PRESENT_PRESENT('ANGLE_1','ANGLE_2','ANGLE_3','ANGLE_4',
8287                                      'MOMENT_1','MOMENT_2','MOMENT_3','MOMENT_4'),),
8288              RIGI_N_IRRA     =SIMP(statut='f',typ=(fonction,formule)),
8289              RIGI_N_FO       =SIMP(statut='f',typ=(fonction,formule)),
8290              RELA_MZ         =SIMP(statut='f',typ=(fonction,formule)),
8291              ANGLE_1         =SIMP(statut='f',typ=(fonction,formule)),
8292              ANGLE_2         =SIMP(statut='f',typ=(fonction,formule)),
8293              ANGLE_3         =SIMP(statut='f',typ=(fonction,formule)),
8294              ANGLE_4         =SIMP(statut='f',typ=(fonction,formule)),
8295              MOMENT_1        =SIMP(statut='f',typ=(fonction,formule)),
8296              MOMENT_2        =SIMP(statut='f',typ=(fonction,formule)),
8297              MOMENT_3        =SIMP(statut='f',typ=(fonction,formule)),
8298              MOMENT_4        =SIMP(statut='f',typ=(fonction,formule)),
8299              C_PRAGER_MZ     =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8300              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="DRZ",into=("DRZ",) ),
8301              VERI_P2         =SIMP(statut='c',typ='TXM',defaut="INST",into=("INST",) ),
8302              VERI_P3         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
8303            ),
8304            NADAI_B         =FACT(statut='f',
8305              F_C             =SIMP(statut='o',typ='R'),
8306              F_T             =SIMP(statut='o',typ='R'),
8307              CRIT_E_C        =SIMP(statut='o',typ='R'),
8308              EPSP_P_C        =SIMP(statut='o',typ='R'),
8309              EPSP_R_C        =SIMP(statut='o',typ='R'),
8310              EPSI_R_T        =SIMP(statut='o',typ='R'),
8311              FAC_T_C         =SIMP(statut='o',typ='R'),
8312            ),
8313            BETON_DOUBLE_DP =FACT(statut='f',
8314              F_C             =SIMP(statut='o',typ=(fonction,formule)),
8315              F_T             =SIMP(statut='o',typ=(fonction,formule)),
8316              COEF_BIAX       =SIMP(statut='o',typ=(fonction,formule)),
8317              ENER_COMP_RUPT  =SIMP(statut='o',typ=(fonction,formule)),
8318              ENER_TRAC_RUPT  =SIMP(statut='o',typ=(fonction,formule)),
8319              COEF_ELAS_COMP  =SIMP(statut='o',typ='R'),
8320              LONG_CARA       =SIMP(statut='f',typ='R'),
8321              ECRO_COMP_P_PIC =SIMP(statut='f',typ='TXM',defaut="LINEAIRE",into=("LINEAIRE","PARABOLE") ),
8322              ECRO_TRAC_P_PIC =SIMP(statut='f',typ='TXM',defaut="LINEAIRE",into=("LINEAIRE","EXPONENT") ),
8323              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP","INST",) ),
8324              VERI_P2         =SIMP(statut='c',typ='TXM',defaut="INST",into=("TEMP","INST",) ),
8325              VERI_P3         =SIMP(statut='c',typ='TXM',defaut="HYDR",into=("HYDR",) ),
8326              VERI_P4         =SIMP(statut='c',typ='TXM',defaut="SECH",into=("SECH",) ),
8327            ),
8328            LABORD_1D=FACT(statut='f',min=0 ,
8329              Y01             =SIMP(statut='o',typ='R'),
8330              Y02             =SIMP(statut='o',typ='R'),
8331              A1              =SIMP(statut='o',typ='R'),
8332              A2              =SIMP(statut='o',typ='R'),
8333              B1              =SIMP(statut='o',typ='R'),
8334              B2              =SIMP(statut='o',typ='R'),
8335              BETA1           =SIMP(statut='o',typ='R'),
8336              BETA2           =SIMP(statut='o',typ='R'),
8337              SIGF            =SIMP(statut='o',typ='R'),
8338            ),
8339          MAZARS=FACT(statut='f',min=0 ,
8340              EPSD0           =SIMP(statut='o',typ='R'),
8341              BETA            =SIMP(statut='o',typ='R'),
8342              AC              =SIMP(statut='o',typ='R'),
8343              BC              =SIMP(statut='o',typ='R'),
8344              AT              =SIMP(statut='o',typ='R'),
8345              BT              =SIMP(statut='o',typ='R'),
8346            ),
8347          MAZARS_FO=FACT(statut='f',min=0 ,
8348              EPSD0           =SIMP(statut='o',typ=(fonction,formule)),
8349              BETA            =SIMP(statut='o',typ='R'),
8350              AC              =SIMP(statut='o',typ=(fonction,formule)),
8351              BC              =SIMP(statut='o',typ=(fonction,formule)),
8352              AT              =SIMP(statut='o',typ=(fonction,formule)),
8353              BT              =SIMP(statut='o',typ=(fonction,formule)),
8354              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
8355            ),
8356           VENDOCHAB       =FACT(statut='f',
8357              S_VP            =SIMP(statut='o',typ='R'),
8358              SEDVP1          =SIMP(statut='o',typ='R'),
8359              SEDVP2          =SIMP(statut='o',typ='R'),
8360              N_VP            =SIMP(statut='o',typ='R'),
8361              M_VP            =SIMP(statut='o',typ='R'),
8362              K_VP            =SIMP(statut='o',typ='R'),
8363              R_D             =SIMP(statut='o',typ='R'),
8364              A_D             =SIMP(statut='o',typ='R'),
8365              K_D             =SIMP(statut='o',typ='R'),
8366            ),
8367            VENDOCHAB_FO    =FACT(statut='f',
8368              S_VP            =SIMP(statut='o',typ=(fonction,formule)),
8369              SEDVP1          =SIMP(statut='o',typ=(fonction,formule)),
8370              SEDVP2          =SIMP(statut='o',typ=(fonction,formule)),
8371              N_VP            =SIMP(statut='o',typ=(fonction,formule)),
8372              M_VP            =SIMP(statut='o',typ=(fonction,formule)),
8373              K_VP            =SIMP(statut='o',typ=(fonction,formule)),
8374              R_D             =SIMP(statut='o',typ=(fonction,formule)),
8375              A_D             =SIMP(statut='o',typ=(fonction,formule)),
8376              K_D             =SIMP(statut='o',typ=(fonction,formule)),
8377              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
8378              VERI_P2         =SIMP(statut='c',typ='TXM',defaut="X",into=("X",) ),
8379            ),
8380            PINTO_MENEGOTTO =FACT(statut='f',
8381              SY              =SIMP(statut='o',typ='R'),
8382              EPSI_ULTM       =SIMP(statut='o',typ='R'),
8383              SIGM_ULTM       =SIMP(statut='o',typ='R'),
8384              ELAN            =SIMP(statut='f',typ='R',defaut= 4. ),
8385              EPSP_HARD       =SIMP(statut='o',typ='R'),
8386              R_PM            =SIMP(statut='f',typ='R',defaut= 20. ),
8387              EP_SUR_E        =SIMP(statut='f',typ='R'),
8388              A1_PM           =SIMP(statut='f',typ='R',defaut= 18.5 ),
8389              A2_PM           =SIMP(statut='f',typ='R',defaut= 0.15 ),
8390              A6_PM           =SIMP(statut='f',typ='R',defaut= 620. ),
8391              C_PM            =SIMP(statut='f',typ='R',defaut= 0.5 ),
8392              A_PM            =SIMP(statut='f',typ='R',defaut= 6.0E-3 ),
8393            ),
8394            BPEL_BETON      =FACT(statut='f',
8395              PERT_FLUA       =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8396              PERT_RETR       =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8397            ),
8398            BPEL_ACIER      =FACT(statut='f',
8399             regles=(PRESENT_PRESENT('RELAX_1000','F_PRG',),
8400                      PRESENT_PRESENT('MU0_RELAX','F_PRG',),),
8401              RELAX_1000      =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8402              MU0_RELAX       =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8403              F_PRG           =SIMP(statut='f',typ='R'),
8404              FROT_COURB      =SIMP(statut='f',typ='R',defaut=0.E+0),
8405              FROT_LINE       =SIMP(statut='f',typ='R',defaut=0.E+0),
8406            ),
8407            CAM_CLAY      =FACT(statut='f',
8408              PORO            =SIMP(statut='o',typ='R'),
8409              LAMBDA          =SIMP(statut='o',typ='R'),
8410              KAPA            =SIMP(statut='o',typ='R'),
8411              M               =SIMP(statut='o',typ='R'),
8412              PRES_CRIT       =SIMP(statut='o',typ='R'),
8413              PA              =SIMP(statut='o',typ='R'),
8414            ),
8415            CJS             =FACT(statut='f',
8416              BETA_CJS        =SIMP(statut='o',typ='R'),
8417              RM              =SIMP(statut='o',typ='R'),
8418              N_CJS           =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8419              KP              =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8420              RC              =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8421              A_CJS           =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8422              B_CJS           =SIMP(statut='f',typ='R',defaut= 1.0E+25 ),
8423              C_CJS           =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8424              GAMMA_CJS       =SIMP(statut='o',typ='R'),
8425              MU_CJS          =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8426              PCO             =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8427              PA              =SIMP(statut='o',typ='R'),
8428              Q_INIT          =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8429              R_INIT          =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
8430            ),
8431            ECRO_ASYM_LINE  =FACT(statut='f',
8432              DC_SIGM_EPSI    =SIMP(statut='o',typ='R'),
8433              SY_C            =SIMP(statut='o',typ='R'),
8434              DT_SIGM_EPSI    =SIMP(statut='o',typ='R'),
8435              SY_T            =SIMP(statut='o',typ='R'),
8436            ),
8437            GRANGER_FP      =FACT(statut='f',
8438              J1              =SIMP(statut='f',typ='R'),
8439              J2              =SIMP(statut='f',typ='R'),
8440              J3              =SIMP(statut='f',typ='R'),
8441              J4              =SIMP(statut='f',typ='R'),
8442              J5              =SIMP(statut='f',typ='R'),
8443              J6              =SIMP(statut='f',typ='R'),
8444              J7              =SIMP(statut='f',typ='R'),
8445              J8              =SIMP(statut='f',typ='R'),
8446              TAUX_1          =SIMP(statut='f',typ='R'),
8447              TAUX_2          =SIMP(statut='f',typ='R'),
8448              TAUX_3          =SIMP(statut='f',typ='R'),
8449              TAUX_4          =SIMP(statut='f',typ='R'),
8450              TAUX_5          =SIMP(statut='f',typ='R'),
8451              TAUX_6          =SIMP(statut='f',typ='R'),
8452              TAUX_7          =SIMP(statut='f',typ='R'),
8453              TAUX_8          =SIMP(statut='f',typ='R'),
8454              QSR_K           =SIMP(statut='f',typ='R'),
8455            ),
8456            V_GRANGER_FP    =FACT(statut='f',
8457              QSR_VEIL        =SIMP(statut='f',typ='R'),
8458              FONC_V          =SIMP(statut='f',typ=(fonction,formule)),
8459              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="INST",into=("INST",) ),
8460            ),
8461            BAZANT_FD      =FACT(statut='f',
8462              LAM_VISC      =SIMP(statut='o',typ='R'),
8463            ),  
8464            BETON_UMLV_FP   =FACT(statut='f',min=0 ,
8465              K_RS            =SIMP(statut='o',typ='R'),
8466              ETA_RS          =SIMP(statut='o',typ='R'),
8467              K_IS            =SIMP(statut='o',typ='R'),
8468              ETA_IS          =SIMP(statut='o',typ='R'),
8469              K_RD            =SIMP(statut='o',typ='R'),
8470              ETA_RD          =SIMP(statut='o',typ='R'),
8471              ETA_ID          =SIMP(statut='o',typ='R'),
8472            ),
8473 #
8474 # comportement thermique
8475 #
8476            THER_NL         =FACT(statut='f',
8477              regles=(UN_PARMI('BETA','RHO_CP', ),),
8478              LAMBDA          =SIMP(statut='o',typ=(fonction,formule)),
8479              BETA            =SIMP(statut='f',typ=(fonction,formule)),
8480              RHO_CP          =SIMP(statut='f',typ=(fonction,formule)),
8481              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
8482            ),
8483            THER_HYDR       =FACT(statut='f',
8484              LAMBDA          =SIMP(statut='o',typ=(fonction,formule)),
8485              BETA            =SIMP(statut='f',typ=(fonction,formule)),
8486              AFFINITE        =SIMP(statut='o',typ=(fonction,formule)),
8487              CHALHYDR        =SIMP(statut='o',typ='R'),
8488              QSR_K           =SIMP(statut='o',typ='R'),
8489              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("HYDR",) ),
8490              VERI_P2         =SIMP(statut='c',typ='TXM',defaut="HYDR",into=("HYDR",) ),
8491            ),
8492            THER            =FACT(statut='f',
8493              LAMBDA          =SIMP(statut='o',typ='R'),
8494              RHO_CP          =SIMP(statut='f',typ='R'),
8495            ),
8496            THER_FO         =FACT(statut='f',
8497              LAMBDA          =SIMP(statut='o',typ=(fonction,formule)),
8498              RHO_CP          =SIMP(statut='f',typ=(fonction,formule)),
8499              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="INST",into=("INST",) ),
8500            ),
8501            THER_ORTH       =FACT(statut='f',
8502              LAMBDA_L        =SIMP(statut='o',typ='R'),
8503              LAMBDA_T        =SIMP(statut='o',typ='R'),
8504              LAMBDA_N        =SIMP(statut='f',typ='R'),
8505              RHO_CP          =SIMP(statut='f',typ='R'),
8506            ),
8507            THER_COQUE      =FACT(statut='f',
8508              COND_LMM        =SIMP(statut='o',typ='R'),
8509              COND_TMM        =SIMP(statut='o',typ='R'),
8510              COND_LMP        =SIMP(statut='o',typ='R'),
8511              COND_TMP        =SIMP(statut='o',typ='R'),
8512              COND_LPP        =SIMP(statut='o',typ='R'),
8513              COND_TPP        =SIMP(statut='o',typ='R'),
8514              COND_LSI        =SIMP(statut='o',typ='R'),
8515              COND_TSI        =SIMP(statut='o',typ='R'),
8516              COND_NMM        =SIMP(statut='o',typ='R'),
8517              COND_NMP        =SIMP(statut='o',typ='R'),
8518              COND_NPP        =SIMP(statut='o',typ='R'),
8519              COND_NSI        =SIMP(statut='o',typ='R'),
8520              CMAS_MM         =SIMP(statut='f',typ='R'),
8521              CMAS_MP         =SIMP(statut='f',typ='R'),
8522              CMAS_PP         =SIMP(statut='f',typ='R'),
8523              CMAS_SI         =SIMP(statut='f',typ='R'),
8524            ),
8525            THER_COQUE_FO   =FACT(statut='f',
8526              COND_LMM        =SIMP(statut='o',typ=(fonction,formule)),
8527              COND_TMM        =SIMP(statut='o',typ=(fonction,formule)),
8528              COND_LMP        =SIMP(statut='o',typ=(fonction,formule)),
8529              COND_TMP        =SIMP(statut='o',typ=(fonction,formule)),
8530              COND_LPP        =SIMP(statut='o',typ=(fonction,formule)),
8531              COND_TPP        =SIMP(statut='o',typ=(fonction,formule)),
8532              COND_LSI        =SIMP(statut='o',typ=(fonction,formule)),
8533              COND_TSI        =SIMP(statut='o',typ=(fonction,formule)),
8534              COND_NMM        =SIMP(statut='o',typ=(fonction,formule)),
8535              COND_NMP        =SIMP(statut='o',typ=(fonction,formule)),
8536              COND_NPP        =SIMP(statut='o',typ=(fonction,formule)),
8537              COND_NSI        =SIMP(statut='o',typ=(fonction,formule)),
8538              CMAS_MM         =SIMP(statut='f',typ=(fonction,formule)),
8539              CMAS_MP         =SIMP(statut='f',typ=(fonction,formule)),
8540              CMAS_PP         =SIMP(statut='f',typ=(fonction,formule)),
8541              CMAS_SI         =SIMP(statut='f',typ=(fonction,formule)),
8542            ),
8543            SECH_GRANGER    =FACT(statut='f',
8544              A               =SIMP(statut='o',typ='R'),
8545              B               =SIMP(statut='o',typ='R'),
8546              QSR_K           =SIMP(statut='o',typ='R'),
8547              TEMP_0_C        =SIMP(statut='o',typ='R'),
8548            ),
8549            SECH_MENSI      =FACT(statut='f',
8550              A               =SIMP(statut='o',typ='R'),
8551              B               =SIMP(statut='o',typ='R'),
8552            ),
8553            SECH_BAZANT     =FACT(statut='f',
8554              D1              =SIMP(statut='o',typ='R'),
8555              ALPHA_BAZANT    =SIMP(statut='o',typ='R'),
8556              N               =SIMP(statut='o',typ='R'),
8557            ),
8558            SECH_NAPPE      =FACT(statut='f',
8559              FONCTION        =SIMP(statut='o',typ=(nappe,formule)),
8560              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
8561              VERI_P2         =SIMP(statut='c',typ='TXM',defaut="TSEC",into=("TSEC",) ),
8562            ),
8563 #
8564 # comportement métallurgique
8565 #
8566            META_ACIER      =FACT(statut='f',
8567              TRC             =SIMP(statut='o',typ=(tabl_trc) ),
8568              AR3             =SIMP(statut='o',typ='R'),
8569              ALPHA           =SIMP(statut='o',typ='R'),
8570              MS0             =SIMP(statut='o',typ='R'),
8571              AC1             =SIMP(statut='o',typ='R'),
8572              AC3             =SIMP(statut='o',typ='R'),
8573              TAUX_1          =SIMP(statut='o',typ='R'),
8574              TAUX_3          =SIMP(statut='o',typ='R'),
8575              LAMBDA0         =SIMP(statut='f',typ='R'),
8576              QSR_K           =SIMP(statut='f',typ='R'),
8577              D10             =SIMP(statut='f',typ='R'),
8578              WSR_K           =SIMP(statut='f',typ='R'),
8579            ),
8580            META_ZIRC       =FACT(statut='f',
8581              TDEQ            =SIMP(statut='o',typ='R'),
8582              N               =SIMP(statut='o',typ='R'),
8583              K               =SIMP(statut='o',typ='R'),
8584              TDC             =SIMP(statut='o',typ='R'),
8585              AC              =SIMP(statut='o',typ='R'),
8586              M               =SIMP(statut='o',typ='R'),
8587              QSR_K           =SIMP(statut='f',typ='R'),
8588              TDR             =SIMP(statut='o',typ='R'),
8589              AR              =SIMP(statut='o',typ='R'),
8590              BR              =SIMP(statut='o',typ='R'),
8591            ),
8592            DURT_META       =FACT(statut='f',
8593              F1_DURT         =SIMP(statut='o',typ='R'),
8594              F2_DURT         =SIMP(statut='o',typ='R'),
8595              F3_DURT         =SIMP(statut='o',typ='R'),
8596              F4_DURT         =SIMP(statut='o',typ='R'),
8597              C_DURT          =SIMP(statut='o',typ='R'),
8598            ),
8599            ELAS_META       =FACT(statut='f',
8600              E               =SIMP(statut='o',typ='R'),
8601              NU              =SIMP(statut='o',typ='R'),
8602              F_ALPHA         =SIMP(statut='o',typ='R'),
8603              C_ALPHA         =SIMP(statut='o',typ='R'),
8604              PHASE_REFE      =SIMP(statut='o',typ='TXM',into=("CHAUD","FROID")),
8605              EPSF_EPSC_TREF  =SIMP(statut='o',typ='R'),
8606              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E+0),
8607              F1_SY           =SIMP(statut='f',typ='R'),
8608              F2_SY           =SIMP(statut='f',typ='R'),
8609              F3_SY           =SIMP(statut='f',typ='R'),
8610              F4_SY           =SIMP(statut='f',typ='R'),
8611              C_SY            =SIMP(statut='f',typ='R'),
8612              SY_MELANGE      =SIMP(statut='f',typ=(fonction,formule)),
8613              F1_S_VP         =SIMP(statut='f',typ='R'),
8614              F2_S_VP         =SIMP(statut='f',typ='R'),
8615              F3_S_VP         =SIMP(statut='f',typ='R'),
8616              F4_S_VP         =SIMP(statut='f',typ='R'),
8617              C_S_VP          =SIMP(statut='f',typ='R' ),
8618              S_VP_MELANGE    =SIMP(statut='f',typ=(fonction,formule)),
8619              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="META",into=("META",)),
8620            ),
8621            ELAS_META_FO    =FACT(statut='f',
8622              regles=(
8623                       PRESENT_PRESENT('F_ALPHA','TEMP_DEF_ALPHA'),
8624                       PRESENT_PRESENT('C_ALPHA','TEMP_DEF_ALPHA'),
8625                     ),
8626              E               =SIMP(statut='o',typ=(fonction,formule)),
8627              NU              =SIMP(statut='o',typ=(fonction,formule)),
8628              F_ALPHA         =SIMP(statut='o',typ=(fonction,formule)),
8629              C_ALPHA         =SIMP(statut='o',typ=(fonction,formule)),
8630              PHASE_REFE      =SIMP(statut='o',typ='TXM',into=("CHAUD","FROID")),
8631              EPSF_EPSC_TREF  =SIMP(statut='o',typ='R'),
8632              TEMP_DEF_ALPHA  =SIMP(statut='f',typ='R'),
8633              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E+0),
8634              F1_SY           =SIMP(statut='f',typ=(fonction,formule)),
8635              F2_SY           =SIMP(statut='f',typ=(fonction,formule)),
8636              F3_SY           =SIMP(statut='f',typ=(fonction,formule)),
8637              F4_SY           =SIMP(statut='f',typ=(fonction,formule)),
8638              C_SY            =SIMP(statut='f',typ=(fonction,formule)),
8639              SY_MELANGE      =SIMP(statut='f',typ=(fonction,formule)),
8640              F1_S_VP         =SIMP(statut='f',typ=(fonction,formule)),
8641              F2_S_VP         =SIMP(statut='f',typ=(fonction,formule)),
8642              F3_S_VP         =SIMP(statut='f',typ=(fonction,formule)),
8643              F4_S_VP         =SIMP(statut='f',typ=(fonction,formule)),
8644              C_S_VP          =SIMP(statut='f',typ=(fonction,formule)),
8645              S_VP_MELANGE    =SIMP(statut='f',typ=(fonction,formule)),
8646              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
8647              VERI_P2         =SIMP(statut='c',typ='TXM',defaut="META",into=("META",)),
8648            ),
8649            META_ECRO_LINE  =FACT(statut='f',
8650              F1_D_SIGM_EPSI  =SIMP(statut='f',typ=(fonction,formule)),
8651              F2_D_SIGM_EPSI  =SIMP(statut='f',typ=(fonction,formule)),
8652              F3_D_SIGM_EPSI  =SIMP(statut='f',typ=(fonction,formule)),
8653              F4_D_SIGM_EPSI  =SIMP(statut='f',typ=(fonction,formule)),
8654              C_D_SIGM_EPSI   =SIMP(statut='f',typ=(fonction,formule)),
8655              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
8656            ),
8657            META_TRACTION   =FACT(statut='f',
8658              SIGM_F1         =SIMP(statut='f',typ=(fonction,formule)),
8659              SIGM_F2         =SIMP(statut='f',typ=(fonction,formule)),
8660              SIGM_F3         =SIMP(statut='f',typ=(fonction,formule)),
8661              SIGM_F4         =SIMP(statut='f',typ=(fonction,formule)),
8662              SIGM_C          =SIMP(statut='f',typ=(fonction,formule)),
8663              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="EPSI",into=("EPSI",)),
8664              VERI_P2         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
8665            ),
8666            META_VISC_FO    =FACT(statut='f',
8667              F1_ETA          =SIMP(statut='f',typ=(fonction,formule)),
8668              F1_N            =SIMP(statut='f',typ=(fonction,formule)),
8669              F1_C            =SIMP(statut='f',typ=(fonction,formule)),
8670              F1_M            =SIMP(statut='f',typ=(fonction,formule)),
8671              F2_ETA          =SIMP(statut='f',typ=(fonction,formule)),
8672              F2_N            =SIMP(statut='f',typ=(fonction,formule)),
8673              F2_C            =SIMP(statut='f',typ=(fonction,formule)),
8674              F2_M            =SIMP(statut='f',typ=(fonction,formule)),
8675              F3_ETA          =SIMP(statut='f',typ=(fonction,formule)),
8676              F3_N            =SIMP(statut='f',typ=(fonction,formule)),
8677              F3_C            =SIMP(statut='f',typ=(fonction,formule)),
8678              F3_M            =SIMP(statut='f',typ=(fonction,formule)),
8679              F4_ETA          =SIMP(statut='f',typ=(fonction,formule)),
8680              F4_N            =SIMP(statut='f',typ=(fonction,formule)),
8681              F4_C            =SIMP(statut='f',typ=(fonction,formule)),
8682              F4_M            =SIMP(statut='f',typ=(fonction,formule)),
8683              C_ETA           =SIMP(statut='f',typ=(fonction,formule)),
8684              C_N             =SIMP(statut='f',typ=(fonction,formule)),
8685              C_C             =SIMP(statut='f',typ=(fonction,formule)),
8686              C_M             =SIMP(statut='f',typ=(fonction,formule)),
8687              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
8688            ),
8689            META_PT         =FACT(statut='f',
8690              F1_K            =SIMP(statut='f',typ='R'),
8691              F2_K            =SIMP(statut='f',typ='R'),
8692              F3_K            =SIMP(statut='f',typ='R'),
8693              F4_K            =SIMP(statut='f',typ='R'),
8694              F1_D_F_META     =SIMP(statut='f',typ=(fonction,formule)),
8695              F2_D_F_META     =SIMP(statut='f',typ=(fonction,formule)),
8696              F3_D_F_META     =SIMP(statut='f',typ=(fonction,formule)),
8697              F4_D_F_META     =SIMP(statut='f',typ=(fonction,formule)),
8698              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
8699              VERI_P2         =SIMP(statut='c',typ='TXM',defaut="META",into=("META",) ),
8700            ),
8701            META_RE         =FACT(statut='f',
8702              C_F1_THETA      =SIMP(statut='f',typ='R'),
8703              C_F2_THETA      =SIMP(statut='f',typ='R'),
8704              C_F3_THETA      =SIMP(statut='f',typ='R'),
8705              C_F4_THETA      =SIMP(statut='f',typ='R'),
8706              F1_C_THETA      =SIMP(statut='f',typ='R'),
8707              F2_C_THETA      =SIMP(statut='f',typ='R'),
8708              F3_C_THETA      =SIMP(statut='f',typ='R'),
8709              F4_C_THETA      =SIMP(statut='f',typ='R'),
8710            ),
8711 #
8712 # comportement fluide
8713 #
8714            FLUIDE          =FACT(statut='f',
8715              regles=(EXCLUS('CELE_C','CELE_R'),),
8716              RHO             =SIMP(statut='o',typ='R'),
8717              CELE_C          =SIMP(statut='f',typ='C'),
8718              CELE_R          =SIMP(statut='f',typ='R'),
8719            ),
8720            PORO_JOINT      =FACT(statut='f',
8721              RHO_FLUI        =SIMP(statut='o',typ='R'),
8722              ENTRO_FLUI      =SIMP(statut='o',typ='R'),
8723              BIOT_M          =SIMP(statut='o',typ='R'),
8724              C_0             =SIMP(statut='o',typ='R'),
8725              T_R             =SIMP(statut='o',typ='R'),
8726              ALPHA_M         =SIMP(statut='o',typ='R'),
8727              LAMBDA_T        =SIMP(statut='o',typ='R'),
8728              LAMBDA_H        =SIMP(statut='o',typ='R'),
8729              SOURCE_INIT     =SIMP(statut='o',typ='R'),
8730              OMEGA_0         =SIMP(statut='o',typ='R'),
8731            ),
8732 # =================================================================================
8733 # COMPORTEMENT THERMO_HYDRO_MECANIQUE
8734 # LES DONNEES NECESSAIRES A LA DEFINITION DU MATERIAU SONT DEPENDANTES
8735 # DE LA LOI DE COUPLAGE THM DE LA RELATION
8736 # LE COMPORTEMENT DE COUPLAGE COMP_THM N EST VALABLE QUE POUR LES LOIS
8737 # DE COUPLAGE : LIQU_SATU,LIQU_GAZ,GAZ,LIQU_GAZ_ATM,LIQU_VAPE_GAZ,LIQU_VAPE
8738 # POUR LES LOIS DE COUPLAGE LIQU_SATU_GAT ET LIQU_NSAT_GAT
8739 # ON NE MODIFIE RIEN
8740 # LA CORRESPONDANCE AVEC LES VARIABLES CACHEES EST LA SUIVANTE :
8741 # 1 -->  LIQU_SATU
8742 # 2 -->  GAZ
8743 # 3 -->  LIQU_VAPE
8744 # 4 -->  LIQU_VAPE_GAZ
8745 # 5 -->  LIQU_GAZ
8746 # 6 -->  LIQU_GAZ_ATM
8747 # 7 -->  LIQU_SATU_GAT
8748 # 8 -->  LIQU_NSAT_GAT
8749 # =================================================================================
8750            COMP_THM        = SIMP(statut='f', typ='TXM',
8751                                   into = ( "LIQU_SATU"     ,
8752                                            "LIQU_GAZ"      ,
8753                                            "GAZ"           ,
8754                                            "LIQU_GAZ_ATM"  ,
8755                                            "LIQU_VAPE_GAZ" ,
8756                                            "LIQU_VAPE"     ,
8757                                            "LIQU_SATU_GAT" ,
8758                                            "LIQU_NSAT_GAT" ,
8759                                           ) ),
8760 # =================================================================================
8761 # --- LOI DE COUPLAGE DE TYPE LIQU_SATU -------------------------------------------
8762 # =================================================================================
8763 # --- PRESENCE OBLIGATOIRE DES MOT-CLES SUIVANT : ---------------------------------
8764 # --- THM_INIT, THM_DIFFU, THM_LIQU -----------------------------------------------
8765 # =================================================================================
8766            b_liqusatu      = BLOC(condition = "COMP_THM == 'LIQU_SATU' ",
8767                                  fr="Paramètres nécessaires pour une loi de couplage de type LIQU_SATU",
8768 # =================================================================================
8769 # --- MOT-CLE OBLIGATOIRE ---------------------------------------------------------
8770 # =================================================================================
8771                              THM_INIT   = FACT(statut='o',
8772 # ---------------------------------------------------------------------------------
8773 # -------------------   DONNEES OBLIGATOIRE   -------------------------------------
8774 # ---------------------------------------------------------------------------------
8775                                            PRE1          = SIMP(statut='o',typ='R'),
8776                                            PORO          = SIMP(statut='o',typ='R'),
8777 # ---------------------------------------------------------------------------------
8778 # -------------------   DONNEES NECESSAIRE SI THERMIQUE   -------------------------
8779 # ---------------------------------------------------------------------------------
8780                                            TEMP          = SIMP(statut='f',typ='R'),
8781 # ---------------------------------------------------------------------------------
8782 # -------------------   DONNEES INUTILES   ----------------------------------------
8783 # ---------------------------------------------------------------------------------
8784                                            PRE2          = SIMP(statut='f',typ='R'),
8785                                            PRES_VAPE     = SIMP(statut='f',typ='R'),
8786                                            DEGR_SATU     = SIMP(statut='f',typ='R'),
8787                                            PRES_ATMO     = SIMP(statut='f',typ='R'),
8788 # ---------------------------------------------------------------------------------
8789 # -------------------   DONNEE CACHEE ---------------------------------------------
8790 # ---------------------------------------------------------------------------------
8791                                            COMP_THM         = SIMP(statut='c',typ='R',defaut= 1.0,),
8792                                              ),
8793 # =================================================================================
8794 # --- MOT-CLE OBLIGATOIRE ---------------------------------------------------------
8795 # =================================================================================
8796                              THM_DIFFU  = FACT(statut='o',
8797 # ---------------------------------------------------------------------------------
8798 # -------------------   DONNEES OBLIGATOIRE   -------------------------------------
8799 # ---------------------------------------------------------------------------------
8800                                            RHO           = SIMP(statut='o',typ='R'),
8801                                            BIOT_COEF     = SIMP(statut='o',typ='R'),
8802                                            PESA_X        = SIMP(statut='o',typ='R'),
8803                                            PESA_Y        = SIMP(statut='o',typ='R'),
8804                                            PESA_Z        = SIMP(statut='o',typ='R'),
8805 # ---------------------------------------------------------------------------------
8806 # -------------------   DONNEES NECESSAIRE SI THERMIQUE   -------------------------
8807 # ---------------------------------------------------------------------------------
8808                                            CP            = SIMP(statut='f',typ='R'),
8809                                            PERM_IN       = SIMP(statut='f',typ=(fonction,formule)),
8810                                            PERM_END      = SIMP(statut='f',typ=(fonction,formule)),
8811                                                            regles = (EXCLUS('PERM_IN','PERM_END'),),
8812                                            LAMBDA        = SIMP(statut='f',typ=(fonction,formule)),
8813                                            D_LAMBDA_TEMP = SIMP(statut='f',typ=(fonction,formule)),
8814 # ---------------------------------------------------------------------------------
8815 # -------------------   DONNEES INUTILES   ----------------------------------------
8816 # ---------------------------------------------------------------------------------
8817                                            R_GAZ         = SIMP(statut='f',typ='R'),
8818                                            SATU_PRES       =SIMP(statut='f',typ=(fonction,formule)),
8819                                            D_SATU_PRES     =SIMP(statut='f',typ=(fonction,formule)),
8820                                            PERM_LIQU       =SIMP(statut='f',typ=(fonction,formule)),
8821                                            D_PERM_LIQU_SATU=SIMP(statut='f',typ=(fonction,formule)),
8822                                            PERM_GAZ        =SIMP(statut='f',typ=(fonction,formule)),
8823                                            D_PERM_SATU_GAZ =SIMP(statut='f',typ=(fonction,formule)),
8824                                            D_PERM_PRES_GAZ =SIMP(statut='f',typ=(fonction,formule)),
8825                                            FICK            =SIMP(statut='f',typ=(fonction,formule)),
8826                                            D_FICK_TEMP     =SIMP(statut='f',typ=(fonction,formule)),
8827                                            D_FICK_GAZ_PRES =SIMP(statut='f',typ=(fonction,formule)),
8828                                            SIGMA_T         =SIMP(statut='f',typ=(fonction,formule)),
8829                                            D_SIGMA_T       =SIMP(statut='f',typ=(fonction,formule)),
8830                                            PERM_G_INTR     =SIMP(statut='f',typ=(fonction,formule)),
8831                                            CHAL_VAPO       =SIMP(statut='f',typ=(fonction,formule)),
8832 # ---------------------------------------------------------------------------------
8833 # -------------------   DONNEES CACHEES -------------------------------------------
8834 # ---------------------------------------------------------------------------------
8835                                            VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
8836                                            VERI_P2         =SIMP(statut='c',typ='TXM',defaut="SAT", into=("SAT" ,) ),
8837                                            VERI_P3         =SIMP(statut='c',typ='TXM',defaut="PORO",into=("PORO",) ),
8838                                            VERI_P4         =SIMP(statut='c',typ='TXM',defaut="PGAZ",into=("PGAZ",) ),
8839                                            VERI_P5         =SIMP(statut='c',typ='TXM',defaut="PCAP",into=("PCAP",) ),
8840                                            VERI_P6         =SIMP(statut='c',typ='TXM',defaut="ENDO",into=("ENDO",) ),
8841                                              ),
8842 # =================================================================================
8843 # --- MOT-CLE OBLIGATOIRE ---------------------------------------------------------
8844 # =================================================================================
8845                              THM_LIQU   = FACT(statut='o',
8846 # ---------------------------------------------------------------------------------
8847 # -------------------   DONNEES OBLIGATOIRE   -------------------------------------
8848 # ---------------------------------------------------------------------------------
8849                                            RHO           = SIMP(statut='o',typ='R'),
8850                                            UN_SUR_K      = SIMP(statut='o',typ='R'),
8851                                            VISC          = SIMP(statut='o',typ=(fonction,formule)),
8852                                            D_VISC_TEMP   = SIMP(statut='o',typ=(fonction,formule)),
8853 # ---------------------------------------------------------------------------------
8854 # -------------------   DONNEES NECESSAIRE SI THERMIQUE   -------------------------
8855 # ---------------------------------------------------------------------------------
8856                                            ALPHA         = SIMP(statut='f',typ='R'),
8857                                            CP            = SIMP(statut='f',typ='R'),
8858                                            LAMBDA        = SIMP(statut='f',typ=(fonction,formule)),
8859                                            D_LAMBDA_TEMP = SIMP(statut='f',typ=(fonction,formule)),
8860 # ---------------------------------------------------------------------------------
8861 # -------------------   DONNEES INUTILES   ----------------------------------------
8862 # ---------------------------------------------------------------------------------
8863                                            COEF_HENRY      =SIMP(statut='f',typ='R'),
8864 # ---------------------------------------------------------------------------------
8865 # -------------------   DONNEES CACHEES -------------------------------------------
8866 # ---------------------------------------------------------------------------------
8867                                            VERI_P1       = SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
8868                                          ),
8869 # =================================================================================
8870 # --- MOT-CLE INUTILE -------------------------------------------------------------
8871 # =================================================================================
8872            THM_GAZ         =FACT(statut='f',
8873              MASS_MOL        =SIMP(statut='f',typ='R'),
8874              CP              =SIMP(statut='f',typ='R'),
8875              VISC            =SIMP(statut='f',typ=(fonction,formule)),
8876              D_VISC_TEMP     =SIMP(statut='f',typ=(fonction,formule)),
8877              LAMBDA          =SIMP(statut='f',typ=(fonction,formule)),
8878              D_LAMBDA_TEMP   =SIMP(statut='f',typ=(fonction,formule)),
8879              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
8880            ),
8881 # =================================================================================
8882 # --- MOT-CLE INUTILE -------------------------------------------------------------
8883 # =================================================================================
8884            THM_VAPE_GAZ    =FACT(statut='f',
8885              MASS_MOL        =SIMP(statut='f',typ='R'),
8886              CP              =SIMP(statut='f',typ='R'),
8887              VISC            =SIMP(statut='f',typ=(fonction,formule)),
8888              D_VISC_TEMP     =SIMP(statut='f',typ=(fonction,formule)),
8889              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
8890            ),
8891                                  ),
8892 # =================================================================================
8893 # --- LOI DE COUPLAGE DE TYPE LIQU_GAZ --------------------------------------------
8894 # =================================================================================
8895 # --- PRESENCE OBLIGATOIRE DES MOT-CLES SUIVANT : ---------------------------------
8896 # --- THM_INIT, THM_DIFFU, THM_LIQU, THM_GAZ --------------------------------------
8897 # =================================================================================
8898            b_liqugaz      = BLOC(condition = "COMP_THM == 'LIQU_GAZ' ",
8899                                  fr="Paramètres nécessaires pour une loi de couplage de type LIQU_GAZ",
8900 # =================================================================================
8901 # --- MOT-CLE OBLIGATOIRE ---------------------------------------------------------
8902 # =================================================================================
8903                              THM_INIT   = FACT(statut='o',
8904 # ---------------------------------------------------------------------------------
8905 # -------------------   DONNEES OBLIGATOIRE   -------------------------------------
8906 # ---------------------------------------------------------------------------------
8907                                            PRE1             = SIMP(statut='o',typ='R'),
8908                                            PRE2             = SIMP(statut='o',typ='R'),
8909                                            PORO             = SIMP(statut='o',typ='R'),
8910 # ---------------------------------------------------------------------------------
8911 # -------------------   DONNEES NECESSAIRE SI THERMIQUE   -------------------------
8912 # ---------------------------------------------------------------------------------
8913                                            TEMP             = SIMP(statut='f',typ='R'),
8914 # ---------------------------------------------------------------------------------
8915 # -------------------   DONNEES INUTILES   ----------------------------------------
8916 # ---------------------------------------------------------------------------------
8917                                            PRES_VAPE        = SIMP(statut='f',typ='R'),
8918                                            DEGR_SATU        = SIMP(statut='f',typ='R'),
8919                                            PRES_ATMO        = SIMP(statut='f',typ='R'),
8920 # ---------------------------------------------------------------------------------
8921 # -------------------   DONNEE CACHEE ---------------------------------------------
8922 # ---------------------------------------------------------------------------------
8923                                            COMP_THM         = SIMP(statut='c',typ='R',defaut= 5.0,),
8924                                              ),
8925 # =================================================================================
8926 # --- MOT-CLE OBLIGATOIRE ---------------------------------------------------------
8927 # =================================================================================
8928                              THM_DIFFU  = FACT(statut='o',
8929 # ---------------------------------------------------------------------------------
8930 # -------------------   DONNEES OBLIGATOIRE   -------------------------------------
8931 # ---------------------------------------------------------------------------------
8932                                            R_GAZ            = SIMP(statut='o',typ='R'),
8933                                            RHO              = SIMP(statut='o',typ='R'),
8934                                            BIOT_COEF        = SIMP(statut='o',typ='R'),
8935                                            PESA_X           = SIMP(statut='o',typ='R'),
8936                                            PESA_Y           = SIMP(statut='o',typ='R'),
8937                                            PESA_Z           = SIMP(statut='o',typ='R'),
8938                                            SATU_PRES        = SIMP(statut='o',typ=(fonction,formule)),
8939                                            D_SATU_PRES      = SIMP(statut='o',typ=(fonction,formule)),
8940                                            PERM_LIQU        = SIMP(statut='o',typ=(fonction,formule)),
8941                                            D_PERM_LIQU_SATU = SIMP(statut='o',typ=(fonction,formule)),
8942                                            PERM_GAZ         = SIMP(statut='o',typ=(fonction,formule)),
8943                                            D_PERM_SATU_GAZ  = SIMP(statut='o',typ=(fonction,formule)),
8944                                            D_PERM_PRES_GAZ  = SIMP(statut='o',typ=(fonction,formule)),
8945 # ---------------------------------------------------------------------------------
8946 # -------------------   DONNEES NECESSAIRE SI THERMIQUE   -------------------------
8947 # ---------------------------------------------------------------------------------
8948                                            CP               = SIMP(statut='f',typ='R'),
8949                                            PERM_IN          = SIMP(statut='f',typ=(fonction,formule)),
8950                                            PERM_END         = SIMP(statut='f',typ=(fonction,formule)),
8951                                                            regles = (EXCLUS('PERM_IN','PERM_END'),),
8952                                            LAMBDA           = SIMP(statut='f',typ=(fonction,formule)),
8953                                            D_LAMBDA_TEMP    = SIMP(statut='f',typ=(fonction,formule)),
8954 # ---------------------------------------------------------------------------------
8955 # -------------------   DONNEES INUTILES   ----------------------------------------
8956 # ---------------------------------------------------------------------------------
8957                                            FICK             = SIMP(statut='f',typ=(fonction,formule)),
8958                                            D_FICK_TEMP      = SIMP(statut='f',typ=(fonction,formule)),
8959                                            D_FICK_GAZ_PRES  = SIMP(statut='f',typ=(fonction,formule)),
8960                                            SIGMA_T          = SIMP(statut='f',typ=(fonction,formule)),
8961                                            D_SIGMA_T        = SIMP(statut='f',typ=(fonction,formule)),
8962                                            PERM_G_INTR      = SIMP(statut='f',typ=(fonction,formule)),
8963                                            CHAL_VAPO        = SIMP(statut='f',typ=(fonction,formule)),
8964 # ---------------------------------------------------------------------------------
8965 # -------------------   DONNEES CACHEES -------------------------------------------
8966 # ---------------------------------------------------------------------------------
8967                                            VERI_P1          = SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
8968                                            VERI_P2          = SIMP(statut='c',typ='TXM',defaut="SAT" ,into=("SAT" ,) ),
8969                                            VERI_P3          = SIMP(statut='c',typ='TXM',defaut="PORO",into=("PORO",) ),
8970                                            VERI_P4          = SIMP(statut='c',typ='TXM',defaut="PGAZ",into=("PGAZ",) ),
8971                                            VERI_P5          = SIMP(statut='c',typ='TXM',defaut="PCAP",into=("PCAP",) ),
8972                                            VERI_P6          = SIMP(statut='c',typ='TXM',defaut="ENDO",into=("ENDO",) ),
8973                                              ) ,
8974 # =================================================================================
8975 # --- MOT-CLE OBLIGATOIRE ---------------------------------------------------------
8976 # =================================================================================
8977                              THM_LIQU   = FACT(statut='o',
8978 # ---------------------------------------------------------------------------------
8979 # -------------------   DONNEES OBLIGATOIRE   -------------------------------------
8980 # ---------------------------------------------------------------------------------
8981                                            RHO              = SIMP(statut='o',typ='R'),
8982                                            UN_SUR_K         = SIMP(statut='o',typ='R'),
8983                                            VISC             = SIMP(statut='o',typ=(fonction,formule)),
8984                                            D_VISC_TEMP      = SIMP(statut='o',typ=(fonction,formule)),
8985 # ---------------------------------------------------------------------------------
8986 # -------------------   DONNEES NECESSAIRE SI THERMIQUE   -------------------------
8987 # ---------------------------------------------------------------------------------
8988                                            ALPHA            = SIMP(statut='f',typ='R'),
8989                                            CP               = SIMP(statut='f',typ='R'),
8990                                            LAMBDA           = SIMP(statut='f',typ=(fonction,formule)),
8991                                            D_LAMBDA_TEMP    = SIMP(statut='f',typ=(fonction,formule)),
8992 # ---------------------------------------------------------------------------------
8993 # -------------------   DONNEES INUTILES   ----------------------------------------
8994 # ---------------------------------------------------------------------------------
8995                                            COEF_HENRY       = SIMP(statut='f',typ='R'),
8996 # ---------------------------------------------------------------------------------
8997 # -------------------   DONNEES CACHEES -------------------------------------------
8998 # ---------------------------------------------------------------------------------
8999                                            VERI_P1          = SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
9000                                              ),
9001 # =================================================================================
9002 # --- MOT-CLE OBLIGATOIRE ---------------------------------------------------------
9003 # =================================================================================
9004                              THM_GAZ    = FACT(statut='o',
9005 # ---------------------------------------------------------------------------------
9006 # -------------------   DONNEES OBLIGATOIRE   -------------------------------------
9007 # ---------------------------------------------------------------------------------
9008                                            MASS_MOL        = SIMP(statut='o',typ='R'),
9009                                            VISC            = SIMP(statut='o',typ=(fonction,formule)),
9010                                            D_VISC_TEMP     = SIMP(statut='o',typ=(fonction,formule)),
9011 # ---------------------------------------------------------------------------------
9012 # -------------------   DONNEES NECESSAIRE SI THERMIQUE   -------------------------
9013 # ---------------------------------------------------------------------------------
9014                                            CP              = SIMP(statut='f',typ='R'),
9015                                            LAMBDA          = SIMP(statut='f',typ=(fonction,formule)),
9016                                            D_LAMBDA_TEMP   = SIMP(statut='f',typ=(fonction,formule)),
9017 # ---------------------------------------------------------------------------------
9018 # -------------------   DONNEES CACHEES -------------------------------------------
9019 # ---------------------------------------------------------------------------------
9020                                            VERI_P1         = SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
9021                                              ),
9022 # =================================================================================
9023 # --- MOT-CLE INUTILE -------------------------------------------------------------
9024 # =================================================================================
9025            THM_VAPE_GAZ    =FACT(statut='f',
9026              MASS_MOL        =SIMP(statut='f',typ='R'),
9027              CP              =SIMP(statut='f',typ='R'),
9028              VISC            =SIMP(statut='f',typ=(fonction,formule)),
9029              D_VISC_TEMP     =SIMP(statut='f',typ=(fonction,formule)),
9030              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
9031            ),
9032                                  ),
9033 # =================================================================================
9034 # --- LOI DE COUPLAGE DE TYPE GAZ -------------------------------------------------
9035 # =================================================================================
9036 # --- PRESENCE OBLIGATOIRE DES MOT-CLES SUIVANT : ---------------------------------
9037 # --- THM_INIT, THM_DIFFU, THM_GAZ ------------------------------------------------
9038 # =================================================================================
9039            b_gaz          = BLOC(condition = "COMP_THM == 'GAZ' ",
9040                                  fr="Paramètres nécessaires pour une loi de couplage de type GAZ",
9041 # =================================================================================
9042 # --- MOT-CLE OBLIGATOIRE ---------------------------------------------------------
9043 # =================================================================================
9044                              THM_INIT   = FACT(statut='o',
9045 # ---------------------------------------------------------------------------------
9046 # -------------------   DONNEES OBLIGATOIRE   -------------------------------------
9047 # ---------------------------------------------------------------------------------
9048                                            TEMP             = SIMP(statut='o',typ='R'),
9049                                            PRE1             = SIMP(statut='o',typ='R'),
9050                                            PORO             = SIMP(statut='o',typ='R'),
9051 # ---------------------------------------------------------------------------------
9052 # -------------------   DONNEES INUTILES   ----------------------------------------
9053 # ---------------------------------------------------------------------------------
9054                                            PRE2             = SIMP(statut='f',typ='R'),
9055                                            PRES_VAPE        = SIMP(statut='f',typ='R'),
9056                                            DEGR_SATU        = SIMP(statut='f',typ='R'),
9057                                            PRES_ATMO        = SIMP(statut='f',typ='R'),
9058 # ---------------------------------------------------------------------------------
9059 # -------------------   DONNEE CACHEE ---------------------------------------------
9060 # ---------------------------------------------------------------------------------
9061                                            COMP_THM         = SIMP(statut='c',typ='R',defaut= 2.0,),
9062                                              ),
9063 # =================================================================================
9064 # --- MOT-CLE OBLIGATOIRE ---------------------------------------------------------
9065 # =================================================================================
9066                              THM_DIFFU  = FACT(statut='o',
9067 # ---------------------------------------------------------------------------------
9068 # -------------------   DONNEES OBLIGATOIRE   -------------------------------------
9069 # ---------------------------------------------------------------------------------
9070                                            R_GAZ            = SIMP(statut='o',typ='R'),
9071                                            RHO              = SIMP(statut='o',typ='R'),
9072                                            BIOT_COEF        = SIMP(statut='o',typ='R'),
9073                                            PESA_X           = SIMP(statut='o',typ='R'),
9074                                            PESA_Y           = SIMP(statut='o',typ='R'),
9075                                            PESA_Z           = SIMP(statut='o',typ='R'),
9076 # ---------------------------------------------------------------------------------
9077 # -------------------   DONNEES NECESSAIRE SI THERMIQUE   -------------------------
9078 # ---------------------------------------------------------------------------------
9079                                            CP               = SIMP(statut='f',typ='R'),
9080                                            PERM_IN          = SIMP(statut='f',typ=(fonction,formule)),
9081                                            PERM_END         = SIMP(statut='f',typ=(fonction,formule)),
9082                                                            regles = (EXCLUS('PERM_IN','PERM_END'),),
9083                                            LAMBDA           = SIMP(statut='f',typ=(fonction,formule)),
9084                                            D_LAMBDA_TEMP    = SIMP(statut='f',typ=(fonction,formule)),
9085 # ---------------------------------------------------------------------------------
9086 # -------------------   DONNEES INUTILES   ----------------------------------------
9087 # ---------------------------------------------------------------------------------
9088                                            SATU_PRES       =SIMP(statut='f',typ=(fonction,formule)),
9089                                            D_SATU_PRES     =SIMP(statut='f',typ=(fonction,formule)),
9090                                            PERM_LIQU       =SIMP(statut='f',typ=(fonction,formule)),
9091                                            D_PERM_LIQU_SATU=SIMP(statut='f',typ=(fonction,formule)),
9092                                            PERM_GAZ        =SIMP(statut='f',typ=(fonction,formule)),
9093                                            D_PERM_SATU_GAZ =SIMP(statut='f',typ=(fonction,formule)),
9094                                            D_PERM_PRES_GAZ =SIMP(statut='f',typ=(fonction,formule)),
9095                                            FICK            =SIMP(statut='f',typ=(fonction,formule)),
9096                                            D_FICK_TEMP     =SIMP(statut='f',typ=(fonction,formule)),
9097                                            D_FICK_GAZ_PRES =SIMP(statut='f',typ=(fonction,formule)),
9098                                            SIGMA_T         =SIMP(statut='f',typ=(fonction,formule)),
9099                                            D_SIGMA_T       =SIMP(statut='f',typ=(fonction,formule)),
9100                                            PERM_G_INTR     =SIMP(statut='f',typ=(fonction,formule)),
9101                                            CHAL_VAPO       =SIMP(statut='f',typ=(fonction,formule)),
9102 # ---------------------------------------------------------------------------------
9103 # -------------------   DONNEES CACHEES -------------------------------------------
9104 # ---------------------------------------------------------------------------------
9105                                            VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
9106                                            VERI_P2         =SIMP(statut='c',typ='TXM',defaut="SAT",into=("SAT",) ),
9107                                            VERI_P3         =SIMP(statut='c',typ='TXM',defaut="PORO",into=("PORO",) ),
9108                                            VERI_P4         =SIMP(statut='c',typ='TXM',defaut="PGAZ",into=("PGAZ",) ),
9109                                            VERI_P5         =SIMP(statut='c',typ='TXM',defaut="PCAP",into=("PCAP",) ),
9110                                            VERI_P6         =SIMP(statut='c',typ='TXM',defaut="ENDO",into=("ENDO",) ),
9111                                              ) ,
9112 # =================================================================================
9113 # --- MOT-CLE OBLIGATOIRE ---------------------------------------------------------
9114 # =================================================================================
9115                              THM_GAZ    = FACT(statut='o',
9116 # ---------------------------------------------------------------------------------
9117 # -------------------   DONNEES OBLIGATOIRE   -------------------------------------
9118 # ---------------------------------------------------------------------------------
9119                                            MASS_MOL         = SIMP(statut='o',typ='R'),
9120                                            VISC             = SIMP(statut='o',typ=(fonction,formule)),
9121                                            D_VISC_TEMP      = SIMP(statut='o',typ=(fonction,formule)),
9122 # ---------------------------------------------------------------------------------
9123 # -------------------   DONNEES NECESSAIRE SI THERMIQUE   -------------------------
9124 # ---------------------------------------------------------------------------------
9125                                            CP               = SIMP(statut='f',typ='R'),
9126                                            LAMBDA           = SIMP(statut='f',typ=(fonction,formule)),
9127                                            D_LAMBDA_TEMP    = SIMP(statut='f',typ=(fonction,formule)),
9128 # ---------------------------------------------------------------------------------
9129 # -------------------   DONNEES CACHEES -------------------------------------------
9130 # ---------------------------------------------------------------------------------
9131                                            VERI_P1          = SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
9132                                              ),
9133 # =================================================================================
9134 # --- MOT-CLE INUTILE -------------------------------------------------------------
9135 # =================================================================================
9136            THM_LIQU        =FACT(statut='f',
9137              RHO             =SIMP(statut='f',typ='R'),
9138              UN_SUR_K        =SIMP(statut='f',typ='R'),
9139              ALPHA           =SIMP(statut='f',typ='R'),
9140              CP              =SIMP(statut='f',typ='R'),
9141              VISC            =SIMP(statut='f',typ=(fonction,formule)),
9142              D_VISC_TEMP     =SIMP(statut='f',typ=(fonction,formule)),
9143              LAMBDA          =SIMP(statut='f',typ=(fonction,formule)),
9144              D_LAMBDA_TEMP   =SIMP(statut='f',typ=(fonction,formule)),
9145              COEF_HENRY      =SIMP(statut='f',typ='R'),
9146              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
9147            ),
9148 # =================================================================================
9149 # --- MOT-CLE INUTILE -------------------------------------------------------------
9150 # =================================================================================
9151            THM_VAPE_GAZ    =FACT(statut='f',
9152              MASS_MOL        =SIMP(statut='f',typ='R'),
9153              CP              =SIMP(statut='f',typ='R'),
9154              VISC            =SIMP(statut='f',typ=(fonction,formule)),
9155              D_VISC_TEMP     =SIMP(statut='f',typ=(fonction,formule)),
9156              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
9157            ),
9158                                  ),
9159 # =================================================================================
9160 # --- LOI DE COUPLAGE DE TYPE LIQU_GAZ_ATM ----------------------------------------
9161 # =================================================================================
9162 # --- PRESENCE OBLIGATOIRE DES MOT-CLES SUIVANT : ---------------------------------
9163 # --- THM_INIT, THM_DIFFU, THM_LIQU, THM_GAZ --------------------------------------
9164 # =================================================================================
9165            b_liqugazatm   = BLOC(condition = "COMP_THM == 'LIQU_GAZ_ATM' ",
9166                                  fr="Paramètres nécessaires pour une loi de couplage de type LIQU_GAZ_ATM",
9167 # =================================================================================
9168 # --- MOT-CLE OBLIGATOIRE ---------------------------------------------------------
9169 # =================================================================================
9170                              THM_INIT   = FACT(statut='o',
9171 # ---------------------------------------------------------------------------------
9172 # -------------------   DONNEES OBLIGATOIRE   -------------------------------------
9173 # ---------------------------------------------------------------------------------
9174                                            PRE1             = SIMP(statut='o',typ='R'),
9175                                            PORO             = SIMP(statut='o',typ='R'),
9176 # ---------------------------------------------------------------------------------
9177 # -------------------   DONNEES NECESSAIRE SI THERMIQUE   -------------------------
9178 # ---------------------------------------------------------------------------------
9179                                            TEMP             = SIMP(statut='f',typ='R'),
9180 # ---------------------------------------------------------------------------------
9181 # -------------------   DONNEES INUTILES   ----------------------------------------
9182 # ---------------------------------------------------------------------------------
9183                                            PRE2             = SIMP(statut='f',typ='R'),
9184                                            PRES_VAPE        = SIMP(statut='f',typ='R'),
9185                                            DEGR_SATU        = SIMP(statut='f',typ='R'),
9186                                            PRES_ATMO        = SIMP(statut='f',typ='R'),
9187 # ---------------------------------------------------------------------------------
9188 # -------------------   DONNEE CACHEE ---------------------------------------------
9189 # ---------------------------------------------------------------------------------
9190                                            COMP_THM         = SIMP(statut='c',typ='R',defaut= 6.0,),
9191                                              ),
9192 # =================================================================================
9193 # --- MOT-CLE OBLIGATOIRE ---------------------------------------------------------
9194 # =================================================================================
9195                              THM_DIFFU  = FACT(statut='o',
9196 # ---------------------------------------------------------------------------------
9197 # -------------------   DONNEES OBLIGATOIRE   -------------------------------------
9198 # ---------------------------------------------------------------------------------
9199                                            RHO              = SIMP(statut='o',typ='R'),
9200                                            BIOT_COEF        = SIMP(statut='o',typ='R'),
9201                                            PESA_X           = SIMP(statut='o',typ='R'),
9202                                            PESA_Y           = SIMP(statut='o',typ='R'),
9203                                            PESA_Z           = SIMP(statut='o',typ='R'),
9204                                            SATU_PRES        = SIMP(statut='o',typ=(fonction,formule)),
9205                                            D_SATU_PRES      = SIMP(statut='o',typ=(fonction,formule)),
9206                                            PERM_LIQU        = SIMP(statut='o',typ=(fonction,formule)),
9207                                            D_PERM_LIQU_SATU = SIMP(statut='o',typ=(fonction,formule)),
9208 # ---------------------------------------------------------------------------------
9209 # -------------------   DONNEES NECESSAIRE SI THERMIQUE   -------------------------
9210 # ---------------------------------------------------------------------------------
9211                                            CP               = SIMP(statut='f',typ='R'),
9212                                            PERM_IN          = SIMP(statut='f',typ=(fonction,formule)),
9213                                            PERM_END         = SIMP(statut='f',typ=(fonction,formule)),
9214                                                            regles = (EXCLUS('PERM_IN','PERM_END'),),
9215                                            LAMBDA           = SIMP(statut='f',typ=(fonction,formule)),
9216                                            D_LAMBDA_TEMP    = SIMP(statut='f',typ=(fonction,formule)),
9217 # ---------------------------------------------------------------------------------
9218 # -------------------   DONNEES INUTILES   ----------------------------------------
9219 # ---------------------------------------------------------------------------------
9220              R_GAZ           =SIMP(statut='f',typ='R'),
9221              PERM_GAZ        =SIMP(statut='f',typ=(fonction,formule)),
9222              D_PERM_SATU_GAZ =SIMP(statut='f',typ=(fonction,formule)),
9223              D_PERM_PRES_GAZ =SIMP(statut='f',typ=(fonction,formule)),
9224              FICK            =SIMP(statut='f',typ=(fonction,formule)),
9225              D_FICK_TEMP     =SIMP(statut='f',typ=(fonction,formule)),
9226              D_FICK_GAZ_PRES =SIMP(statut='f',typ=(fonction,formule)),
9227              SIGMA_T         =SIMP(statut='f',typ=(fonction,formule)),
9228              D_SIGMA_T       =SIMP(statut='f',typ=(fonction,formule)),
9229              PERM_G_INTR     =SIMP(statut='f',typ=(fonction,formule)),
9230              CHAL_VAPO       =SIMP(statut='f',typ=(fonction,formule)),
9231 # ---------------------------------------------------------------------------------
9232 # -------------------   DONNEES CACHEES -------------------------------------------
9233 # ---------------------------------------------------------------------------------
9234              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
9235              VERI_P2         =SIMP(statut='c',typ='TXM',defaut="SAT", into=("SAT", ) ),
9236              VERI_P3         =SIMP(statut='c',typ='TXM',defaut="PORO",into=("PORO",) ),
9237              VERI_P4         =SIMP(statut='c',typ='TXM',defaut="PGAZ",into=("PGAZ",) ),
9238              VERI_P5         =SIMP(statut='c',typ='TXM',defaut="PCAP",into=("PCAP",) ),
9239              VERI_P6         =SIMP(statut='c',typ='TXM',defaut="ENDO",into=("ENDO",) ),
9240                                              ) ,
9241 # =================================================================================
9242 # --- MOT-CLE OBLIGATOIRE ---------------------------------------------------------
9243 # =================================================================================
9244                              THM_LIQU   = FACT(statut='o',
9245 # ---------------------------------------------------------------------------------
9246 # -------------------   DONNEES OBLIGATOIRE   -------------------------------------
9247 # ---------------------------------------------------------------------------------
9248                                            RHO              = SIMP(statut='o',typ='R'),
9249                                            UN_SUR_K         = SIMP(statut='o',typ='R'),
9250                                            VISC             = SIMP(statut='o',typ=(fonction,formule)),
9251                                            D_VISC_TEMP      = SIMP(statut='o',typ=(fonction,formule)),
9252 # ---------------------------------------------------------------------------------
9253 # -------------------   DONNEES NECESSAIRE SI THERMIQUE   -------------------------
9254 # ---------------------------------------------------------------------------------
9255                                            ALPHA            = SIMP(statut='f',typ='R'),
9256                                            CP               = SIMP(statut='f',typ='R'),
9257                                            LAMBDA           = SIMP(statut='f',typ=(fonction,formule)),
9258                                            D_LAMBDA_TEMP    = SIMP(statut='f',typ=(fonction,formule)),
9259 # ---------------------------------------------------------------------------------
9260 # -------------------   DONNEES INUTILES   ----------------------------------------
9261 # ---------------------------------------------------------------------------------
9262                                            COEF_HENRY       = SIMP(statut='f',typ='R'),
9263 # ---------------------------------------------------------------------------------
9264 # -------------------   DONNEES CACHEES -------------------------------------------
9265 # ---------------------------------------------------------------------------------
9266                                            VERI_P1          = SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
9267                                              ),
9268 # =================================================================================
9269 # --- MOT-CLE OBLIGATOIRE ---------------------------------------------------------
9270 # =================================================================================
9271                              THM_GAZ    = FACT(statut='o',
9272 # ---------------------------------------------------------------------------------
9273 # -------------------   DONNEES OBLIGATOIRE   -------------------------------------
9274 # ---------------------------------------------------------------------------------
9275                                            MASS_MOL         = SIMP(statut='o',typ='R'),
9276                                            VISC             = SIMP(statut='o',typ=(fonction,formule)),
9277                                            D_VISC_TEMP      = SIMP(statut='o',typ=(fonction,formule)),
9278 # ---------------------------------------------------------------------------------
9279 # -------------------   DONNEES NECESSAIRE SI THERMIQUE   -------------------------
9280 # ---------------------------------------------------------------------------------
9281                                            CP               = SIMP(statut='f',typ='R'),
9282                                            LAMBDA           = SIMP(statut='f',typ=(fonction,formule)),
9283                                            D_LAMBDA_TEMP    = SIMP(statut='f',typ=(fonction,formule)),
9284 # ---------------------------------------------------------------------------------
9285 # -------------------   DONNEES CACHEES ---------------------------------------------
9286 # ---------------------------------------------------------------------------------
9287                                            VERI_P1          = SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
9288                                              ),
9289 # =================================================================================
9290 # --- MOT-CLE INUTILE -------------------------------------------------------------
9291 # =================================================================================
9292            THM_VAPE_GAZ    =FACT(statut='f',
9293              MASS_MOL        =SIMP(statut='f',typ='R'),
9294              CP              =SIMP(statut='f',typ='R'),
9295              VISC            =SIMP(statut='f',typ=(fonction,formule)),
9296              D_VISC_TEMP     =SIMP(statut='f',typ=(fonction,formule)),
9297              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
9298            ),
9299                                  ),
9300 # =================================================================================
9301 # --- LOI DE COUPLAGE DE TYPE LIQU_VAPE_GAZ ---------------------------------------
9302 # =================================================================================
9303 # --- PRESENCE OBLIGATOIRE DES MOT-CLES SUIVANT : ---------------------------------
9304 # --- THM_INIT, THM_DIFFU, THM_LIQU, THM_GAZ, THM_VAPE_GAZ ------------------------
9305 # =================================================================================
9306            b_liquvapegaz  = BLOC(condition = "COMP_THM == 'LIQU_VAPE_GAZ' ",
9307                                  fr="Paramètres nécessaires pour une loi de couplage de type LIQU_VAPE_GAZ",
9308 # =================================================================================
9309 # --- MOT-CLE OBLIGATOIRE ---------------------------------------------------------
9310 # =================================================================================
9311                              THM_INIT   = FACT(statut='o',
9312 # ---------------------------------------------------------------------------------
9313 # -------------------   DONNEES OBLIGATOIRE   -------------------------------------
9314 # ---------------------------------------------------------------------------------
9315                                            PRE1             = SIMP(statut='o',typ='R'),
9316                                            PRE2             = SIMP(statut='o',typ='R'),
9317                                            PORO             = SIMP(statut='o',typ='R'),
9318                                            PRES_VAPE        = SIMP(statut='o',typ='R'),
9319 # ---------------------------------------------------------------------------------
9320 # -------------------   DONNEES NECESSAIRE SI THERMIQUE   -------------------------
9321 # ---------------------------------------------------------------------------------
9322                                            TEMP             = SIMP(statut='f',typ='R'),
9323 # ---------------------------------------------------------------------------------
9324 # -------------------   DONNEES INUTILES   ----------------------------------------
9325 # ---------------------------------------------------------------------------------
9326                                            DEGR_SATU        = SIMP(statut='f',typ='R'),
9327                                            PRES_ATMO        = SIMP(statut='f',typ='R'),
9328 # ---------------------------------------------------------------------------------
9329 # -------------------   DONNEE CACHEE ---------------------------------------------
9330 # ---------------------------------------------------------------------------------
9331                                            COMP_THM         = SIMP(statut='c',typ='R',defaut= 4.0,),
9332                                              ),
9333 # =================================================================================
9334 # --- MOT-CLE OBLIGATOIRE ---------------------------------------------------------
9335 # =================================================================================
9336                              THM_DIFFU  = FACT(statut='o',
9337 # ---------------------------------------------------------------------------------
9338 # -------------------   DONNEES OBLIGATOIRE   -------------------------------------
9339 # ---------------------------------------------------------------------------------
9340                                            R_GAZ            = SIMP(statut='o',typ='R'),
9341                                            RHO              = SIMP(statut='o',typ='R'),
9342                                            BIOT_COEF        = SIMP(statut='o',typ='R'),
9343                                            PESA_X           = SIMP(statut='o',typ='R'),
9344                                            PESA_Y           = SIMP(statut='o',typ='R'),
9345                                            PESA_Z           = SIMP(statut='o',typ='R'),
9346                                            SATU_PRES        = SIMP(statut='o',typ=(fonction,formule)),
9347                                            D_SATU_PRES      = SIMP(statut='o',typ=(fonction,formule)),
9348                                            PERM_LIQU        = SIMP(statut='o',typ=(fonction,formule)),
9349                                            D_PERM_LIQU_SATU = SIMP(statut='o',typ=(fonction,formule)),
9350                                            PERM_GAZ         = SIMP(statut='o',typ=(fonction,formule)),
9351                                            D_PERM_SATU_GAZ  = SIMP(statut='o',typ=(fonction,formule)),
9352                                            D_PERM_PRES_GAZ  = SIMP(statut='o',typ=(fonction,formule)),
9353                                            FICK             = SIMP(statut='o',typ=(fonction,formule)),
9354                                            D_FICK_TEMP      = SIMP(statut='o',typ=(fonction,formule)),
9355                                            D_FICK_GAZ_PRES  = SIMP(statut='o',typ=(fonction,formule)),
9356 # ---------------------------------------------------------------------------------
9357 # -------------------   DONNEES NECESSAIRE SI THERMIQUE   -------------------------
9358 # ---------------------------------------------------------------------------------
9359                                            CP               = SIMP(statut='f',typ='R'),
9360                                            PERM_IN          = SIMP(statut='f',typ=(fonction,formule)),
9361                                            PERM_END         = SIMP(statut='f',typ=(fonction,formule)),
9362                                                            regles = (EXCLUS('PERM_IN','PERM_END'),),
9363                                            LAMBDA           = SIMP(statut='f',typ=(fonction,formule)),
9364                                            D_LAMBDA_TEMP    = SIMP(statut='f',typ=(fonction,formule)),
9365 # ---------------------------------------------------------------------------------
9366 # -------------------   DONNEES INUTILES   ----------------------------------------
9367 # ---------------------------------------------------------------------------------
9368                                            SIGMA_T          = SIMP(statut='f',typ=(fonction,formule)),
9369                                            D_SIGMA_T        = SIMP(statut='f',typ=(fonction,formule)),
9370                                            PERM_G_INTR      = SIMP(statut='f',typ=(fonction,formule)),
9371                                            CHAL_VAPO        = SIMP(statut='f',typ=(fonction,formule)),
9372 # ---------------------------------------------------------------------------------
9373 # -------------------   DONNEES CACHEES -------------------------------------------
9374 # ---------------------------------------------------------------------------------
9375                                            VERI_P1          = SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
9376                                            VERI_P2          = SIMP(statut='c',typ='TXM',defaut="SAT" ,into=("SAT" ,) ),
9377                                            VERI_P3          = SIMP(statut='c',typ='TXM',defaut="PORO",into=("PORO",) ),
9378                                            VERI_P4          = SIMP(statut='c',typ='TXM',defaut="PGAZ",into=("PGAZ",) ),
9379                                            VERI_P5          = SIMP(statut='c',typ='TXM',defaut="PCAP",into=("PCAP",) ),
9380                                            VERI_P6          = SIMP(statut='c',typ='TXM',defaut="ENDO",into=("ENDO",) ),
9381                                              ) ,
9382 # =================================================================================
9383 # --- MOT-CLE OBLIGATOIRE ---------------------------------------------------------
9384 # =================================================================================
9385                              THM_LIQU   = FACT(statut='o',
9386 # ---------------------------------------------------------------------------------
9387 # -------------------   DONNEES OBLIGATOIRE   -------------------------------------
9388 # ---------------------------------------------------------------------------------
9389                                            RHO              = SIMP(statut='o',typ='R'),
9390                                            UN_SUR_K         = SIMP(statut='o',typ='R'),
9391                                            VISC             = SIMP(statut='o',typ=(fonction,formule)),
9392                                            D_VISC_TEMP      = SIMP(statut='o',typ=(fonction,formule)),
9393 # ---------------------------------------------------------------------------------
9394 # -------------------   DONNEES NECESSAIRE SI THERMIQUE   -------------------------
9395 # ---------------------------------------------------------------------------------
9396                                            ALPHA            = SIMP(statut='f',typ='R'),
9397                                            CP               = SIMP(statut='f',typ='R'),
9398                                            LAMBDA           = SIMP(statut='f',typ=(fonction,formule)),
9399                                            D_LAMBDA_TEMP    = SIMP(statut='f',typ=(fonction,formule)),
9400 # ---------------------------------------------------------------------------------
9401 # -------------------   DONNEES INUTILES   ----------------------------------------
9402 # ---------------------------------------------------------------------------------
9403                                            COEF_HENRY       = SIMP(statut='f',typ='R'),
9404 # ---------------------------------------------------------------------------------
9405 # -------------------   DONNEES CACHEES -------------------------------------------
9406 # ---------------------------------------------------------------------------------
9407                                            VERI_P1          = SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
9408                                              ),
9409 # =================================================================================
9410 # --- MOT-CLE OBLIGATOIRE ---------------------------------------------------------
9411 # =================================================================================
9412                              THM_GAZ    = FACT(statut='o',
9413 # ---------------------------------------------------------------------------------
9414 # -------------------   DONNEES OBLIGATOIRE   -------------------------------------
9415 # ---------------------------------------------------------------------------------
9416                                            MASS_MOL         = SIMP(statut='o',typ='R'),
9417                                            VISC             = SIMP(statut='o',typ=(fonction,formule)),
9418                                            D_VISC_TEMP      = SIMP(statut='o',typ=(fonction,formule)),
9419 # ---------------------------------------------------------------------------------
9420 # -------------------   DONNEES NECESSAIRE SI THERMIQUE   -------------------------
9421 # ---------------------------------------------------------------------------------
9422                                            CP               = SIMP(statut='f',typ='R'),
9423                                            LAMBDA           = SIMP(statut='f',typ=(fonction,formule)),
9424                                            D_LAMBDA_TEMP    = SIMP(statut='f',typ=(fonction,formule)),
9425 # ---------------------------------------------------------------------------------
9426 # -------------------   DONNEES CACHEES -------------------------------------------
9427 # ---------------------------------------------------------------------------------
9428                                            VERI_P1          = SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
9429                                              ),
9430 # =================================================================================
9431 # --- MOT-CLE OBLIGATOIRE ---------------------------------------------------------
9432 # =================================================================================
9433                              THM_VAPE_GAZ = FACT(statut='o',
9434 # ---------------------------------------------------------------------------------
9435 # -------------------   DONNEES OBLIGATOIRE   -------------------------------------
9436 # ---------------------------------------------------------------------------------
9437                                            MASS_MOL         = SIMP(statut='o',typ='R'),
9438                                            CP               = SIMP(statut='o',typ='R'),
9439                                            VISC             = SIMP(statut='o',typ=(fonction,formule)),
9440                                            D_VISC_TEMP      = SIMP(statut='o',typ=(fonction,formule)),
9441 # ---------------------------------------------------------------------------------
9442 # -------------------   DONNEES CACHEES -------------------------------------------
9443 # ---------------------------------------------------------------------------------
9444                                            VERI_P1          = SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
9445                                              ),
9446                                  ),
9447 # =================================================================================
9448 # --- LOI DE COUPLAGE DE TYPE LIQU_VAPE -------------------------------------------
9449 # =================================================================================
9450 # --- PRESENCE OBLIGATOIRE DES MOT-CLES SUIVANT : ---------------------------------
9451 # --- THM_INIT, THM_DIFFU, THM_LIQU, THM_VAPE_GAZ ---------------------------------
9452 # =================================================================================
9453            b_liquvape  = BLOC(condition = "COMP_THM == 'LIQU_VAPE' ",
9454                                  fr="Paramètres nécessaires pour une loi de couplage de type LIQU_VAPE",
9455 # =================================================================================
9456 # --- MOT-CLE OBLIGATOIRE ---------------------------------------------------------
9457 # =================================================================================
9458                              THM_INIT   = FACT(statut='o',
9459 # ---------------------------------------------------------------------------------
9460 # -------------------   DONNEES OBLIGATOIRE   -------------------------------------
9461 # ---------------------------------------------------------------------------------
9462                                            PRE1             = SIMP(statut='o',typ='R'),
9463                                            PORO             = SIMP(statut='o',typ='R'),
9464                                            PRES_VAPE        = SIMP(statut='o',typ='R'),
9465 # ---------------------------------------------------------------------------------
9466 # -------------------   DONNEES NECESSAIRE SI THERMIQUE   -------------------------
9467 # ---------------------------------------------------------------------------------
9468                                            TEMP             = SIMP(statut='f',typ='R'),
9469 # ---------------------------------------------------------------------------------
9470 # -------------------   DONNEES INUTILES   ----------------------------------------
9471 # ---------------------------------------------------------------------------------
9472                                            PRE2             = SIMP(statut='f',typ='R'),
9473                                            DEGR_SATU        = SIMP(statut='f',typ='R'),
9474                                            PRES_ATMO        = SIMP(statut='f',typ='R'),
9475 # ---------------------------------------------------------------------------------
9476 # -------------------   DONNEE CACHEE ---------------------------------------------
9477 # ---------------------------------------------------------------------------------
9478                                            COMP_THM         = SIMP(statut='c',typ='R',defaut= 3.0,),
9479                                              ),
9480 # =================================================================================
9481 # --- MOT-CLE OBLIGATOIRE ---------------------------------------------------------
9482 # =================================================================================
9483                              THM_DIFFU  = FACT(statut='o',
9484 # ---------------------------------------------------------------------------------
9485 # -------------------   DONNEES OBLIGATOIRE   -------------------------------------
9486 # ---------------------------------------------------------------------------------
9487                                            R_GAZ            = SIMP(statut='o',typ='R'),
9488                                            RHO              = SIMP(statut='o',typ='R'),
9489                                            BIOT_COEF        = SIMP(statut='o',typ='R'),
9490                                            PESA_X           = SIMP(statut='o',typ='R'),
9491                                            PESA_Y           = SIMP(statut='o',typ='R'),
9492                                            PESA_Z           = SIMP(statut='o',typ='R'),
9493                                            SATU_PRES        = SIMP(statut='o',typ=(fonction,formule)),
9494                                            D_SATU_PRES      = SIMP(statut='o',typ=(fonction,formule)),
9495                                            PERM_LIQU        = SIMP(statut='o',typ=(fonction,formule)),
9496                                            D_PERM_LIQU_SATU = SIMP(statut='o',typ=(fonction,formule)),
9497                                            PERM_GAZ         = SIMP(statut='o',typ=(fonction,formule)),
9498                                            D_PERM_SATU_GAZ  = SIMP(statut='o',typ=(fonction,formule)),
9499                                            D_PERM_PRES_GAZ  = SIMP(statut='o',typ=(fonction,formule)),
9500 # ---------------------------------------------------------------------------------
9501 # -------------------   DONNEES NECESSAIRE SI THERMIQUE   -------------------------
9502 # ---------------------------------------------------------------------------------
9503                                            CP               = SIMP(statut='f',typ='R'),
9504                                            PERM_IN          = SIMP(statut='f',typ=(fonction,formule)),
9505                                            PERM_END         = SIMP(statut='f',typ=(fonction,formule)),
9506                                                            regles = (EXCLUS('PERM_IN','PERM_END'),),
9507                                            LAMBDA           = SIMP(statut='f',typ=(fonction,formule)),
9508                                            D_LAMBDA_TEMP    = SIMP(statut='f',typ=(fonction,formule)),
9509 # ---------------------------------------------------------------------------------
9510 # -------------------   DONNEES INUTILES   ----------------------------------------
9511 # ---------------------------------------------------------------------------------
9512                                            FICK             = SIMP(statut='f',typ=(fonction,formule)),
9513                                            D_FICK_TEMP      = SIMP(statut='f',typ=(fonction,formule)),
9514                                            D_FICK_GAZ_PRES  = SIMP(statut='f',typ=(fonction,formule)),
9515                                            SIGMA_T          = SIMP(statut='f',typ=(fonction,formule)),
9516                                            D_SIGMA_T        = SIMP(statut='f',typ=(fonction,formule)),
9517                                            PERM_G_INTR      = SIMP(statut='f',typ=(fonction,formule)),
9518                                            CHAL_VAPO        = SIMP(statut='f',typ=(fonction,formule)),
9519 # ---------------------------------------------------------------------------------
9520 # -------------------   DONNEES CACHEES -------------------------------------------
9521 # ---------------------------------------------------------------------------------
9522                                            VERI_P1          = SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
9523                                            VERI_P2          = SIMP(statut='c',typ='TXM',defaut="SAT" ,into=("SAT" ,) ),
9524                                            VERI_P3          = SIMP(statut='c',typ='TXM',defaut="PORO",into=("PORO",) ),
9525                                            VERI_P4          = SIMP(statut='c',typ='TXM',defaut="PGAZ",into=("PGAZ",) ),
9526                                            VERI_P5          = SIMP(statut='c',typ='TXM',defaut="PCAP",into=("PCAP",) ),
9527                                            VERI_P6          = SIMP(statut='c',typ='TXM',defaut="ENDO",into=("ENDO",) ),
9528                                              ) ,
9529 # =================================================================================
9530 # --- MOT-CLE OBLIGATOIRE ---------------------------------------------------------
9531 # =================================================================================
9532                              THM_LIQU   = FACT(statut='o',
9533 # ---------------------------------------------------------------------------------
9534 # -------------------   DONNEES OBLIGATOIRE   -------------------------------------
9535 # ---------------------------------------------------------------------------------
9536                                            RHO              = SIMP(statut='o',typ='R'),
9537                                            UN_SUR_K         = SIMP(statut='o',typ='R'),
9538                                            VISC             = SIMP(statut='o',typ=(fonction,formule)),
9539                                            D_VISC_TEMP      = SIMP(statut='o',typ=(fonction,formule)),
9540 # ---------------------------------------------------------------------------------
9541 # -------------------   DONNEES NECESSAIRE SI THERMIQUE   -------------------------
9542 # ---------------------------------------------------------------------------------
9543                                            ALPHA            = SIMP(statut='f',typ='R'),
9544                                            CP               = SIMP(statut='f',typ='R'),
9545                                            LAMBDA           = SIMP(statut='f',typ=(fonction,formule)),
9546                                            D_LAMBDA_TEMP    = SIMP(statut='f',typ=(fonction,formule)),
9547 # ---------------------------------------------------------------------------------
9548 # -------------------   DONNEES INUTILES   ----------------------------------------
9549 # ---------------------------------------------------------------------------------
9550                                            COEF_HENRY       = SIMP(statut='f',typ='R'),
9551 # ---------------------------------------------------------------------------------
9552 # -------------------   DONNEES CACHEES ---------------------------------------------
9553 # ---------------------------------------------------------------------------------
9554                                            VERI_P1          = SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
9555                                              ),
9556 # =================================================================================
9557 # --- MOT-CLE OBLIGATOIRE ---------------------------------------------------------
9558 # =================================================================================
9559                              THM_VAPE_GAZ = FACT(statut='o',
9560 # ---------------------------------------------------------------------------------
9561 # -------------------   DONNEES OBLIGATOIRE   -------------------------------------
9562 # ---------------------------------------------------------------------------------
9563                                            MASS_MOL         = SIMP(statut='o',typ='R'),
9564                                            CP               = SIMP(statut='o',typ='R'),
9565                                            VISC             = SIMP(statut='o',typ=(fonction,formule)),
9566                                            D_VISC_TEMP      = SIMP(statut='o',typ=(fonction,formule)),
9567 # ---------------------------------------------------------------------------------
9568 # -------------------   DONNEES CACHEES -------------------------------------------
9569 # ---------------------------------------------------------------------------------
9570                                            VERI_P1          = SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
9571                                              ),
9572 # =================================================================================
9573 # --- MOT-CLE INUTILE -------------------------------------------------------------
9574 # =================================================================================
9575            THM_GAZ         =FACT(statut='f',
9576              MASS_MOL        =SIMP(statut='f',typ='R'),
9577              CP              =SIMP(statut='f',typ='R'),
9578              VISC            =SIMP(statut='f',typ=(fonction,formule)),
9579              D_VISC_TEMP     =SIMP(statut='f',typ=(fonction,formule)),
9580              LAMBDA          =SIMP(statut='f',typ=(fonction,formule)),
9581              D_LAMBDA_TEMP   =SIMP(statut='f',typ=(fonction,formule)),
9582              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
9583            ),
9584                                  ),
9585 # =================================================================================
9586            b_liqusatugat   = BLOC(condition = "COMP_THM == 'LIQU_SATU_GAT' ",
9587                                  fr="Paramètres nécessaires pour une loi de couplage de type LIQU_SATU_GAT",
9588            THM_LIQU        =FACT(statut='f',
9589              RHO             =SIMP(statut='o',typ='R'),
9590              UN_SUR_K        =SIMP(statut='f',typ='R'),
9591              ALPHA           =SIMP(statut='f',typ='R'),
9592              CP              =SIMP(statut='f',typ='R'),
9593              VISC            =SIMP(statut='f',typ=(fonction,formule)),
9594              D_VISC_TEMP     =SIMP(statut='f',typ=(fonction,formule)),
9595              LAMBDA          =SIMP(statut='f',typ=(fonction,formule)),
9596              D_LAMBDA_TEMP   =SIMP(statut='f',typ=(fonction,formule)),
9597              COEF_HENRY      =SIMP(statut='f',typ='R'),
9598              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
9599            ),
9600            THM_GAZ         =FACT(statut='f',
9601              MASS_MOL        =SIMP(statut='f',typ='R'),
9602              CP              =SIMP(statut='f',typ='R'),
9603              VISC            =SIMP(statut='f',typ=(fonction,formule)),
9604              D_VISC_TEMP     =SIMP(statut='f',typ=(fonction,formule)),
9605              LAMBDA          =SIMP(statut='f',typ=(fonction,formule)),
9606              D_LAMBDA_TEMP   =SIMP(statut='f',typ=(fonction,formule)),
9607              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
9608            ),
9609            THM_VAPE_GAZ    =FACT(statut='f',
9610              MASS_MOL        =SIMP(statut='f',typ='R'),
9611              CP              =SIMP(statut='f',typ='R'),
9612              VISC            =SIMP(statut='f',typ=(fonction,formule)),
9613              D_VISC_TEMP     =SIMP(statut='f',typ=(fonction,formule)),
9614              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
9615            ),
9616            THM_INIT        =FACT(statut='f',
9617              TEMP            =SIMP(statut='o',typ='R'),
9618              PRE1            =SIMP(statut='o',typ='R'),
9619              PRE2            =SIMP(statut='o',typ='R'),
9620              PORO            =SIMP(statut='o',typ='R'),
9621              PRES_VAPE       =SIMP(statut='o',typ='R'),
9622              DEGR_SATU       =SIMP(statut='f',typ='R'),
9623              PRES_ATMO       =SIMP(statut='f',typ='R'),
9624 # ---------------------------------------------------------------------------------
9625 # -------------------   DONNEE CACHEE ---------------------------------------------
9626 # ---------------------------------------------------------------------------------
9627              COMP_THM         = SIMP(statut='c',typ='R',defaut= 7.0,),
9628            ),
9629            THM_DIFFU       =FACT(statut='f',
9630              R_GAZ           =SIMP(statut='o',typ='R'),
9631              RHO             =SIMP(statut='f',typ='R'),
9632              CP              =SIMP(statut='f',typ='R'),
9633              BIOT_COEF       =SIMP(statut='f',typ='R'),
9634              SATU_PRES       =SIMP(statut='f',typ=(fonction,formule)),
9635              D_SATU_PRES     =SIMP(statut='f',typ=(fonction,formule)),
9636              PESA_X          =SIMP(statut='f',typ='R'),
9637              PESA_Y          =SIMP(statut='f',typ='R'),
9638              PESA_Z          =SIMP(statut='f',typ='R'),
9639              PERM_IN         =SIMP(statut='f',typ=(fonction,formule)),
9640              PERM_END       =SIMP(statut='f',typ=(fonction,formule)),
9641                  regles=(EXCLUS('PERM_IN','PERM_END'),),
9642              PERM_LIQU       =SIMP(statut='f',typ=(fonction,formule)),
9643              D_PERM_LIQU_SATU=SIMP(statut='f',typ=(fonction,formule)),
9644              PERM_GAZ        =SIMP(statut='f',typ=(fonction,formule)),
9645              D_PERM_SATU_GAZ =SIMP(statut='f',typ=(fonction,formule)),
9646              D_PERM_PRES_GAZ =SIMP(statut='f',typ=(fonction,formule)),
9647              FICK            =SIMP(statut='f',typ=(fonction,formule)),
9648              D_FICK_TEMP     =SIMP(statut='f',typ=(fonction,formule)),
9649              D_FICK_GAZ_PRES =SIMP(statut='f',typ=(fonction,formule)),
9650              LAMBDA          =SIMP(statut='f',typ=(fonction,formule)),
9651              D_LAMBDA_TEMP   =SIMP(statut='f',typ=(fonction,formule)),
9652              SIGMA_T         =SIMP(statut='f',typ=(fonction,formule)),
9653              D_SIGMA_T       =SIMP(statut='f',typ=(fonction,formule)),
9654              PERM_G_INTR     =SIMP(statut='f',typ=(fonction,formule)),
9655              CHAL_VAPO       =SIMP(statut='f',typ=(fonction,formule)),
9656              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
9657              VERI_P2         =SIMP(statut='c',typ='TXM',defaut="SAT",into=("SAT",) ),
9658              VERI_P3         =SIMP(statut='c',typ='TXM',defaut="PORO",into=("PORO",) ),
9659              VERI_P4         =SIMP(statut='c',typ='TXM',defaut="PGAZ",into=("PGAZ",) ),
9660              VERI_P5         =SIMP(statut='c',typ='TXM',defaut="PCAP",into=("PCAP",) ),
9661              VERI_P6         =SIMP(statut='c',typ='TXM',defaut="ENDO",into=("ENDO",) ),
9662            ),
9663            ),
9664            b_liqunsatgat   = BLOC(condition = "COMP_THM == 'LIQU_NSAT_GAT' ",
9665                                  fr="Paramètres nécessaires pour une loi de couplage de type LIQU_NSAT_GAT",
9666            THM_LIQU        =FACT(statut='f',
9667              RHO             =SIMP(statut='o',typ='R'),
9668              UN_SUR_K        =SIMP(statut='f',typ='R'),
9669              ALPHA           =SIMP(statut='f',typ='R'),
9670              CP              =SIMP(statut='f',typ='R'),
9671              VISC            =SIMP(statut='f',typ=(fonction,formule)),
9672              D_VISC_TEMP     =SIMP(statut='f',typ=(fonction,formule)),
9673              LAMBDA          =SIMP(statut='f',typ=(fonction,formule)),
9674              D_LAMBDA_TEMP   =SIMP(statut='f',typ=(fonction,formule)),
9675              COEF_HENRY      =SIMP(statut='f',typ='R'),
9676              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
9677            ),
9678            THM_GAZ         =FACT(statut='f',
9679              MASS_MOL        =SIMP(statut='f',typ='R'),
9680              CP              =SIMP(statut='f',typ='R'),
9681              VISC            =SIMP(statut='f',typ=(fonction,formule)),
9682              D_VISC_TEMP     =SIMP(statut='f',typ=(fonction,formule)),
9683              LAMBDA          =SIMP(statut='f',typ=(fonction,formule)),
9684              D_LAMBDA_TEMP   =SIMP(statut='f',typ=(fonction,formule)),
9685              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
9686            ),
9687            THM_VAPE_GAZ    =FACT(statut='f',
9688              MASS_MOL        =SIMP(statut='f',typ='R'),
9689              CP              =SIMP(statut='f',typ='R'),
9690              VISC            =SIMP(statut='f',typ=(fonction,formule)),
9691              D_VISC_TEMP     =SIMP(statut='f',typ=(fonction,formule)),
9692              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)),
9693            ),
9694            THM_INIT        =FACT(statut='f',
9695              TEMP            =SIMP(statut='o',typ='R'),
9696              PRE1            =SIMP(statut='o',typ='R'),
9697              PRE2            =SIMP(statut='o',typ='R'),
9698              PORO            =SIMP(statut='o',typ='R'),
9699              PRES_VAPE       =SIMP(statut='o',typ='R'),
9700              DEGR_SATU       =SIMP(statut='f',typ='R'),
9701              PRES_ATMO       =SIMP(statut='f',typ='R'),
9702 # ---------------------------------------------------------------------------------
9703 # -------------------   DONNEE CACHEE ---------------------------------------------
9704 # ---------------------------------------------------------------------------------
9705              COMP_THM         = SIMP(statut='c',typ='R',defaut= 8.0,),
9706            ),
9707            THM_DIFFU       =FACT(statut='f',
9708              R_GAZ           =SIMP(statut='o',typ='R'),
9709              RHO             =SIMP(statut='f',typ='R'),
9710              CP              =SIMP(statut='f',typ='R'),
9711              BIOT_COEF       =SIMP(statut='f',typ='R'),
9712              SATU_PRES       =SIMP(statut='f',typ=(fonction,formule)),
9713              D_SATU_PRES     =SIMP(statut='f',typ=(fonction,formule)),
9714              PESA_X          =SIMP(statut='f',typ='R'),
9715              PESA_Y          =SIMP(statut='f',typ='R'),
9716              PESA_Z          =SIMP(statut='f',typ='R'),
9717              PERM_IN         =SIMP(statut='f',typ=(fonction,formule)),
9718              PERM_END       =SIMP(statut='f',typ=(fonction,formule)),
9719                  regles=(EXCLUS('PERM_IN','PERM_END'),),
9720              PERM_LIQU       =SIMP(statut='f',typ=(fonction,formule)),
9721              D_PERM_LIQU_SATU=SIMP(statut='f',typ=(fonction,formule)),
9722              PERM_GAZ        =SIMP(statut='f',typ=(fonction,formule)),
9723              D_PERM_SATU_GAZ =SIMP(statut='f',typ=(fonction,formule)),
9724              D_PERM_PRES_GAZ =SIMP(statut='f',typ=(fonction,formule)),
9725              FICK            =SIMP(statut='f',typ=(fonction,formule)),
9726              D_FICK_TEMP     =SIMP(statut='f',typ=(fonction,formule)),
9727              D_FICK_GAZ_PRES =SIMP(statut='f',typ=(fonction,formule)),
9728              LAMBDA          =SIMP(statut='f',typ=(fonction,formule)),
9729              D_LAMBDA_TEMP   =SIMP(statut='f',typ=(fonction,formule)),
9730              SIGMA_T         =SIMP(statut='f',typ=(fonction,formule)),
9731              D_SIGMA_T       =SIMP(statut='f',typ=(fonction,formule)),
9732              PERM_G_INTR     =SIMP(statut='f',typ=(fonction,formule)),
9733              CHAL_VAPO       =SIMP(statut='f',typ=(fonction,formule)),
9734              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
9735              VERI_P2         =SIMP(statut='c',typ='TXM',defaut="SAT",into=("SAT",) ),
9736              VERI_P3         =SIMP(statut='c',typ='TXM',defaut="PORO",into=("PORO",) ),
9737              VERI_P4         =SIMP(statut='c',typ='TXM',defaut="PGAZ",into=("PGAZ",) ),
9738              VERI_P5         =SIMP(statut='c',typ='TXM',defaut="PCAP",into=("PCAP",) ),
9739              VERI_P6         =SIMP(statut='c',typ='TXM',defaut="ENDO",into=("ENDO",) ),
9740            ),
9741            ),
9742 #
9743 # courbes et coefficients associés à la fatigue et au dommage
9744 #
9745            FATIGUE         =FACT(statut='f',
9746              regles=(PRESENT_ABSENT('WOHLER','A_BASQUIN','BETA_BASQUIN'),
9747                      PRESENT_ABSENT('WOHLER','A0','A1','A2','A3','SL'),
9748                      PRESENT_ABSENT('A_BASQUIN','A0','A1','A2','A3','SL'),
9749                      ENSEMBLE('A_BASQUIN','BETA_BASQUIN'),
9750                      ENSEMBLE('A0','A1','A2','A3','SL'),
9751                      PRESENT_PRESENT('A0','E_REFE'),
9752                      ENSEMBLE('D0','TAU0'),),
9753              WOHLER          =SIMP(statut='f',typ=(fonction,formule)),
9754              A_BASQUIN       =SIMP(statut='f',typ='R'),
9755              BETA_BASQUIN    =SIMP(statut='f',typ='R'),
9756              A0              =SIMP(statut='f',typ='R'),
9757              A1              =SIMP(statut='f',typ='R'),
9758              A2              =SIMP(statut='f',typ='R'),
9759              A3              =SIMP(statut='f',typ='R'),
9760              SL              =SIMP(statut='f',typ='R'),
9761              MANSON_COFFIN   =SIMP(statut='f',typ=(fonction,formule)),
9762              E_REFE          =SIMP(statut='f',typ='R'),
9763              D0              =SIMP(statut='f',typ='R'),
9764              TAU0            =SIMP(statut='f',typ='R'),
9765              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="SIGM",into=("SIGM",) ),
9766              VERI_P2         =SIMP(statut='c',typ='TXM',defaut="EPSI",into=("EPSI",) ),
9767            ),
9768            DOMMA_LEMAITRE  =FACT(statut='f',
9769              S               =SIMP(statut='o',typ=(fonction,formule)),
9770              EPSP_SEUIL      =SIMP(statut='o',typ='R'),
9771              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
9772            ),
9773            CISA_PLAN_CRIT  =FACT(statut='f',
9774              CRITERE       =SIMP(statut='o',typ='TXM',into=("MATAKE","DANG_VAN") ),
9775
9776              b_critere_matake =BLOC(condition="CRITERE=='MATAKE'",
9777                                     fr="cisaillement plan critique  critère de matake",
9778                MATAKE_A         =SIMP(statut='o',typ='R'),
9779                MATAKE_B         =SIMP(statut='o',typ='R'),
9780                COEF_FLEX_TORS   =SIMP(statut='o',typ='R',val_min=1.0E0,val_max=1.7321E0),
9781              ),
9782
9783              b_critere_dang_van =BLOC(condition="CRITERE=='DANG_VAN'",
9784                                  fr="cisaillement plan critique  critère de Dang Van",
9785                D_VAN_A            =SIMP(statut='o',typ='R'),
9786                D_VAN_B            =SIMP(statut='o',typ='R'),
9787                COEF_CISA_TRAC     =SIMP(statut='o',typ='R',val_min=1.0E0,val_max=1.7321E0),
9788              ),
9789            ),
9790 #
9791 # autres comportements ...
9792 #
9793            WEIBULL         =FACT(statut='f',
9794              M               =SIMP(statut='o',typ='R'),
9795              VOLU_REFE       =SIMP(statut='o',typ='R'),
9796              SIGM_REFE       =SIMP(statut='o',typ='R'),
9797              SEUIL_EPSP_CUMU =SIMP(statut='f',typ='R',defaut= 1.0E-6),
9798            ),
9799            WEIBULL_FO      =FACT(statut='f',
9800              M               =SIMP(statut='o',typ='R'),
9801              VOLU_REFE       =SIMP(statut='o',typ='R'),
9802              SIGM_CNV        =SIMP(statut='o',typ='R'),
9803              SIGM_REFE       =SIMP(statut='o',typ=(fonction,formule)),
9804              SEUIL_EPSP_CUMU =SIMP(statut='f',typ='R',defaut= 1.0E-6),
9805              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
9806            ),
9807            NON_LOCAL       =FACT(statut='f',
9808              LONG_CARA       =SIMP(statut='o',typ='R'),
9809              COEF_RIGI_MINI  =SIMP(statut='f',typ='R'),
9810            ),
9811            RUPT_FRAG       =FACT(statut='f',
9812              GC              =SIMP(statut='o',typ='R'),
9813              SIGM_C          =SIMP(statut='f',typ='R'),
9814              SAUT_C          =SIMP(statut='f',typ='R'),
9815            ),
9816            RCCM            =FACT(statut='f',
9817              SY_02           =SIMP(statut='f',typ='R'),
9818              SM              =SIMP(statut='f',typ='R'),
9819              SU              =SIMP(statut='f',typ='R'),
9820              SC              =SIMP(statut='f',typ='R'),
9821              SH              =SIMP(statut='f',typ='R'),
9822              N_KE            =SIMP(statut='f',typ='R'),
9823              M_KE            =SIMP(statut='f',typ='R'),
9824            ),
9825            RCCM_FO         =FACT(statut='f',
9826              SY_02           =SIMP(statut='f',typ=(fonction,formule)),
9827              SM              =SIMP(statut='f',typ=(fonction,formule)),
9828              SU              =SIMP(statut='f',typ=(fonction,formule)),
9829              S               =SIMP(statut='f',typ=(fonction,formule)),
9830              N_KE            =SIMP(statut='f',typ=(fonction,formule)),
9831              M_KE            =SIMP(statut='f',typ=(fonction,formule)),
9832              VERI_P1         =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
9833            ),
9834            LAIGLE          =FACT(statut='f',
9835              GAMMA_ULT       =SIMP(statut='o',typ='R'),
9836              GAMMA_E         =SIMP(statut='o',typ='R'),
9837              M_ULT           =SIMP(statut='o',typ='R'),
9838              M_E             =SIMP(statut='o',typ='R'),
9839              A_E             =SIMP(statut='o',typ='R'),
9840              M_PIC           =SIMP(statut='o',typ='R'),
9841              A_PIC           =SIMP(statut='o',typ='R'),
9842              ETA             =SIMP(statut='o',typ='R'),
9843              SIGMA_C         =SIMP(statut='o',typ='R'),
9844              GAMMA           =SIMP(statut='o',typ='R'),
9845              KSI             =SIMP(statut='o',typ='R'),
9846              GAMMA_CJS       =SIMP(statut='o',typ='R'),
9847              SIGMA_P1        =SIMP(statut='o',typ='R'),
9848              PA              =SIMP(statut='o',typ='R'),
9849            ),
9850            INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
9851 )  ;
9852
9853 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
9854 #            CONFIGURATION MANAGEMENT OF EDF VERSION
9855 # ======================================================================
9856 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
9857 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
9858 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
9859 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
9860 # (AT YOUR OPTION) ANY LATER VERSION.                                 
9861 #
9862 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
9863 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
9864 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
9865 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
9866 #
9867 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
9868 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
9869 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
9870 # ======================================================================
9871 DEFI_MODELE_GENE=OPER(nom="DEFI_MODELE_GENE",op= 126,sd_prod=modele_gene,
9872                       docu="U4.65.02-e",reentrant='n',
9873             UIinfo={"groupes":("Matrices/vecteurs",)},
9874          SOUS_STRUC      =FACT(statut='o',max='**',
9875            NOM             =SIMP(statut='o',typ='TXM' ),
9876            MACR_ELEM_DYNA  =SIMP(statut='o',typ=macr_elem_dyna ),
9877            ANGL_NAUT       =SIMP(statut='f',typ='R',max=3),
9878            TRANS           =SIMP(statut='f',typ='R',max=3),
9879          ),
9880          LIAISON         =FACT(statut='o',max='**',
9881            SOUS_STRUC_1    =SIMP(statut='o',typ='TXM' ),
9882            INTERFACE_1     =SIMP(statut='o',typ='TXM' ),
9883            SOUS_STRUC_2    =SIMP(statut='o',typ='TXM' ),
9884            INTERFACE_2     =SIMP(statut='o',typ='TXM' ),
9885          ),
9886          VERIF           =FACT(statut='f',max='**',
9887 #  dans la doc U stop_erreur est obligatoire         
9888            STOP_ERREUR     =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
9889            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
9890            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
9891          ),
9892 )  ;
9893
9894 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
9895 #            CONFIGURATION MANAGEMENT OF EDF VERSION
9896 # ======================================================================
9897 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
9898 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
9899 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
9900 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
9901 # (AT YOUR OPTION) ANY LATER VERSION.                                 
9902 #
9903 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
9904 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
9905 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
9906 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
9907 #
9908 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
9909 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
9910 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
9911 # ======================================================================
9912 DEFI_NAPPE=OPER(nom="DEFI_NAPPE",op=   4,sd_prod=nappe,
9913                 fr="Définition des valeurs d une fonction de deux variables réelles",
9914                 docu="U4.31.03-g",reentrant='n',
9915             UIinfo={"groupes":("Fonction",)},
9916          regles=(UN_PARMI('FONCTION','DEFI_FONCTION'),
9917                  EXCLUS('FONCTION','NOM_PARA_FONC',),
9918                  ENSEMBLE('NOM_PARA_FONC','DEFI_FONCTION'),),
9919          NOM_PARA        =SIMP(statut='o',typ='TXM',into=("TEMP","INST","X","Y","Z","FREQ","PULS",
9920                                                           "AMOR","EPAIS","TSEC","HYDR","SECH",
9921                                                           "SAT", "PGAZ","PCAP"
9922                                                           ) ),
9923          NOM_RESU        =SIMP(statut='f',typ='TXM',defaut="TOUTRESU"),       
9924          PARA            =SIMP(statut='o',typ='R',max='**'),
9925          FONCTION        =SIMP(statut='f',typ=(fonction,formule),max='**' ),
9926          NOM_PARA_FONC   =SIMP(statut='f',typ='TXM',into=("TEMP","INST","X","Y","Z","EPSI","FREQ",
9927                                                           "PULS","AMOR","EPAIS","SAT", "PGAZ","PCAP") ),
9928          DEFI_FONCTION   =FACT(statut='f',max='**',
9929            VALE            =SIMP(statut='o',typ='R',max='**'),
9930            INTERPOL        =SIMP(statut='f',typ='TXM',max=2,defaut="LIN",into=("NON","LIN","LOG") ),
9931            PROL_DROITE     =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ),
9932            PROL_GAUCHE     =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ),
9933          ),
9934          INTERPOL        =SIMP(statut='f',typ='TXM',max=2,defaut="LIN",into=("NON","LIN","LOG") ),
9935          PROL_DROITE     =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ),
9936          PROL_GAUCHE     =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ),
9937          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
9938          VERIF           =SIMP(statut='f',typ='TXM',into=("CROISSANT",) ),
9939          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
9940 )  ;
9941
9942 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
9943 #            CONFIGURATION MANAGEMENT OF EDF VERSION
9944 # ======================================================================
9945 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
9946 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
9947 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
9948 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
9949 # (AT YOUR OPTION) ANY LATER VERSION.                                 
9950 #
9951 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
9952 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
9953 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
9954 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
9955 #
9956 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
9957 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
9958 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
9959 # ======================================================================
9960 DEFI_OBSTACLE=OPER(nom="DEFI_OBSTACLE",op=  73,sd_prod=obstacle
9961                     ,fr="Définition d un obstacle plan perpendiculaire à une structure filaire",
9962                      docu="U4.44.21-f",reentrant='n',
9963             UIinfo={"groupes":("Modélisation",)},
9964          TYPE            =SIMP(statut='o',typ='TXM',defaut="CERCLE",
9965                              into=("CERCLE","PLAN_Y","PLAN_Z","DISCRET",
9966                              "BI_CERCLE","BI_PLAN_Y","BI_PLAN_Z","BI_CERC_INT",
9967                              "CRAYON_900","CRAYON_1300","GUID_A_CARTE_900",
9968                              "GUID_B_CARTE_900","GUID_C_CARTE_900",
9969                              "GUID_D_CARTE_900","GUID_E_CARTE_900",
9970                              "GUID_F_CARTE_900","GUID_A_CARTE_1300",
9971                              "GUID_B_CARTE_1300","GUID_C_CARTE_1300",
9972                              "GUID_D_CARTE_1300","GUID_E_CARTE_1300",
9973                              "GUID_F_CARTE_1300","GUID_A_CARSP_900",
9974                              "GUID_B_CARSP_900","GUID_C_CARSP_900",
9975                              "GUID_D_CARSP_900","GUID_E_CARSP_900",
9976                              "GUID_F_CARSP_900","GUID_A_CARSP_1300",
9977                              "GUID_B_CARSP_1300","GUID_C_CARSP_1300",
9978                              "GUID_D_CARSP_1300","GUID_E_CARSP_1300",
9979                              "GUID_F_CARSP_1300","GUID_A_GCONT_900",
9980                              "GUID_B_GCONT_900","GUID_C_GCONT_900",
9981                              "GUID_D_GCONT_900","GUID_E_GCONT_900",
9982                              "GUID_F_GCONT_900","GUID_A_GCONT_1300",
9983                              "GUID_B_GCONT_1300","GUID_C_GCONT_1300",
9984                              "GUID_D_GCONT_1300","GUID_E_GCONT_1300",
9985                              "GUID_F_GCONT_1300","GUID_A_GCOMB_900",
9986                              "GUID_B_GCOMB_900","GUID_C_GCOMB_900",
9987                              "GUID_D_GCOMB_900","GUID_E_GCOMB_900",
9988                              "GUID_F_GCOMB_900","GUID_A_GCOMB_1300",
9989                              "GUID_B_GCOMB_1300","GUID_C_GCOMB_1300",
9990                              "GUID_D_GCOMB_1300","GUID_E_GCOMB_1300",
9991                              "GUID_F_GCOMB_1300",) ),
9992          VALE            =SIMP(statut='f',typ='R',max='**'),
9993          VERIF           =SIMP(statut='f',typ='TXM',defaut="FERME"),
9994 )  ;
9995
9996 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
9997 #            CONFIGURATION MANAGEMENT OF EDF VERSION
9998 # ======================================================================
9999 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
10000 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
10001 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
10002 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
10003 # (AT YOUR OPTION) ANY LATER VERSION.                                 
10004 #
10005 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
10006 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
10007 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
10008 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
10009 #
10010 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
10011 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
10012 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
10013 # ======================================================================
10014 # RESPONSABLE GNICOLAS G.NICOLAS
10015 DEFI_PARA_SENSI=OPER(nom="DEFI_PARA_SENSI",op=   2,sd_prod=para_sensi,
10016                     fr="Définition d'un paramètre de sensibilité",
10017                     ang="Definition of a sensitive parameter",
10018                     docu="U4.31.06-a",reentrant='n',
10019             UIinfo={"groupes":("Fonction",)},
10020          NOM_RESU        =SIMP(statut='c',typ='TXM',into=("TOUTRESU",),defaut="TOUTRESU",
10021                                fr="Nom du concept créé",
10022                                ang="Name of the concept"),
10023          VALE            =SIMP(statut='o',typ='R',
10024                                fr="Valeur du parametre",
10025                                ang="Value of the parameter"),
10026          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
10027 )  ;
10028
10029 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
10030 #            CONFIGURATION MANAGEMENT OF EDF VERSION
10031 # ======================================================================
10032 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
10033 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
10034 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
10035 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
10036 # (AT YOUR OPTION) ANY LATER VERSION.                                 
10037 #
10038 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
10039 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
10040 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
10041 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
10042 #
10043 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
10044 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
10045 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
10046 # ======================================================================
10047 DEFI_SPEC_TURB=OPER(nom="DEFI_SPEC_TURB",op= 145,sd_prod=spectre,
10048                     fr="Définition d'un spectre d'excitation turbulente",
10049                     docu="U4.44.31-d",reentrant='n',
10050             UIinfo={"groupes":("Modélisation",)},
10051          regles=(UN_PARMI('SPEC_LONG_COR_1','SPEC_LONG_COR_2','SPEC_LONG_COR_3',
10052                           'SPEC_LONG_COR_4','SPEC_CORR_CONV_1','SPEC_CORR_CONV_2',
10053                           'SPEC_FONC_FORME','SPEC_EXCI_POINT'),),
10054          SPEC_LONG_COR_1 =FACT(statut='f',
10055            LONG_COR        =SIMP(statut='o',typ='R' ),
10056            PROF_VITE_FLUI  =SIMP(statut='o',typ=(fonction,formule) ),
10057            VISC_CINE       =SIMP(statut='o',typ='R' ),
10058          ),
10059          SPEC_LONG_COR_2 =FACT(statut='f',
10060            regles=(ENSEMBLE('FREQ_COUP','PHI0','BETA' ),),
10061            LONG_COR        =SIMP(statut='o',typ='R' ),
10062            PROF_VITE_FLUI  =SIMP(statut='o',typ=(fonction,formule) ),
10063            FREQ_COUP       =SIMP(statut='f',typ='R',defaut= 0.1 ),
10064            PHI0            =SIMP(statut='f',typ='R',defaut= 1.5E-3 ),
10065            BETA            =SIMP(statut='f',typ='R',defaut= 2.7 ),
10066          ),
10067          SPEC_LONG_COR_3 =FACT(statut='f',
10068            regles=(ENSEMBLE('PHI0_1','BETA_1','PHI0_2','BETA_2','FREQ_COUP'),),
10069            LONG_COR        =SIMP(statut='o',typ='R' ),
10070            PROF_VITE_FLUI  =SIMP(statut='o',typ=(fonction,formule) ),
10071            FREQ_COUP       =SIMP(statut='f',typ='R',defaut= 0.2 ),
10072            PHI0_1          =SIMP(statut='f',typ='R',defaut= 5.E-3 ),
10073            BETA_1          =SIMP(statut='f',typ='R',defaut= 0.5 ),
10074            PHI0_2          =SIMP(statut='f',typ='R',defaut= 4.E-5 ),
10075            BETA_2          =SIMP(statut='f',typ='R',defaut= 3.5 ),
10076          ),
10077          SPEC_LONG_COR_4 =FACT(statut='f',
10078            regles=(ENSEMBLE('BETA','GAMMA'),),
10079            LONG_COR        =SIMP(statut='o',typ='R' ),
10080            PROF_VITE_FLUI  =SIMP(statut='o',typ=(fonction,formule) ),
10081            TAUX_VIDE       =SIMP(statut='o',typ='R' ),
10082            BETA            =SIMP(statut='f',typ='R',defaut= 2. ),
10083            GAMMA           =SIMP(statut='f',typ='R',defaut= 4. ),
10084          ),
10085          SPEC_CORR_CONV_1=FACT(statut='f',
10086            LONG_COR_1      =SIMP(statut='o',typ='R' ),
10087            LONG_COR_2      =SIMP(statut='f',typ='R' ),
10088            VITE_FLUI       =SIMP(statut='o',typ='R' ),
10089            RHO_FLUI        =SIMP(statut='o',typ='R' ),
10090            FREQ_COUP       =SIMP(statut='f',typ='R' ),
10091            K               =SIMP(statut='f',typ='R',defaut= 5.8E-3 ),
10092            D_FLUI          =SIMP(statut='o',typ='R' ),
10093            COEF_VITE_FLUI_A=SIMP(statut='f',typ='R' ),
10094            COEF_VITE_FLUI_O=SIMP(statut='f',typ='R' ),
10095            METHODE         =SIMP(statut='f',typ='TXM',defaut="GENERALE",
10096                                  into=("AU_YANG","GENERALE","CORCOS") ),
10097          ),
10098          SPEC_CORR_CONV_2=FACT(statut='f',
10099            FONCTION        =SIMP(statut='o',typ=(fonction,formule) ),
10100            VITE_FLUI       =SIMP(statut='o',typ='R' ),
10101            FREQ_COUP       =SIMP(statut='f',typ='R' ),
10102            METHODE         =SIMP(statut='f',typ='TXM',defaut="GENERALE",
10103                                  into=("AU_YANG","GENERALE","CORCOS",) ),
10104            COEF_VITE_FLUI_A=SIMP(statut='f',typ='R' ),
10105            COEF_VITE_FLUI_O=SIMP(statut='f',typ='R' ),
10106          ),
10107          SPEC_FONC_FORME =FACT(statut='f',
10108            regles=(UN_PARMI('INTE_SPEC','GRAPPE_1'),
10109                    ENSEMBLE('INTE_SPEC','FONCTION'),),
10110            INTE_SPEC       =SIMP(statut='f',typ=tabl_intsp ),
10111            FONCTION        =SIMP(statut='f',typ=(fonction,formule),max='**'),
10112            GRAPPE_1        =SIMP(statut='f',typ='TXM',into=("DEBIT_180","DEBIT_300",) ),
10113            NOEUD           =SIMP(statut='o',typ=no),
10114            CARA_ELEM       =SIMP(statut='o',typ=cara_elem ),
10115            MODELE          =SIMP(statut='o',typ=modele ),
10116          ),
10117          SPEC_EXCI_POINT =FACT(statut='f',
10118            regles=(UN_PARMI('INTE_SPEC','GRAPPE_2'),),
10119            INTE_SPEC       =SIMP(statut='f',typ=tabl_intsp ),
10120            GRAPPE_2        =SIMP(statut='f',typ='TXM',
10121                                  into=("ASC_CEN","ASC_EXC","DES_CEN","DES_EXC",) ),
10122 #  Quels sont les statuts des mots cles à l interieur des deux blocs qui suivent
10123            b_inte_spec =BLOC(condition = "INTE_SPEC != None",
10124              NATURE          =SIMP(statut='o',typ='TXM',max='**',into=("FORCE","MOMENT",) ),
10125              ANGL            =SIMP(statut='o',typ='R',max='**'),
10126              NOEUD           =SIMP(statut='o',typ=no,max='**'),
10127            ),
10128            b_grappe_2      =BLOC(condition = "GRAPPE_2 != None",
10129              RHO_FLUI        =SIMP(statut='o',typ='R' ),
10130              NOEUD           =SIMP(statut='o',typ=no),
10131            ),
10132            CARA_ELEM       =SIMP(statut='o',typ=cara_elem ),
10133            MODELE          =SIMP(statut='o',typ=modele ),
10134          ),
10135          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
10136 )  ;
10137
10138 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
10139 #            CONFIGURATION MANAGEMENT OF EDF VERSION
10140 # ======================================================================
10141 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
10142 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
10143 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
10144 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
10145 # (AT YOUR OPTION) ANY LATER VERSION.                                 
10146 #
10147 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
10148 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
10149 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
10150 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
10151 #
10152 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
10153 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
10154 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
10155 # ======================================================================
10156 DEFI_SQUELETTE=OPER(nom="DEFI_SQUELETTE",op= 110,sd_prod=squelette,
10157                     fr="Définition d un maillage de visualisation",
10158                     docu="U4.24.01-f",reentrant='n',
10159             UIinfo={"groupes":("Maillage",)},
10160          regles=(UN_PARMI('MODE_CYCL','MODELE_GENE','MAILLAGE'),
10161                  PRESENT_PRESENT('MODE_CYCL','SECTEUR'),
10162                  EXCLUS('SOUS_STRUC','SECTEUR'),
10163                  PRESENT_PRESENT('NOM_GROUP_MA','MODELE_GENE'),
10164                  PRESENT_PRESENT('NOM_GROUP_MA','SOUS_STRUC'),),
10165          MODE_CYCL       =SIMP(statut='f',typ=mode_cycl ),
10166          MODELE_GENE     =SIMP(statut='f',typ=modele_gene ),
10167          SQUELETTE       =SIMP(statut='f',typ=squelette ),
10168          RECO_GLOBAL     =FACT(statut='f',max='**',
10169            regles=(EXCLUS('TOUT','GROUP_NO_1'),
10170                    PRESENT_PRESENT('GROUP_NO_1','GROUP_NO_2'),
10171                    PRESENT_PRESENT('GROUP_NO_1','SOUS_STRUC_1'),
10172                    PRESENT_PRESENT('GROUP_NO_2','SOUS_STRUC_2'),
10173                    PRESENT_PRESENT('SOUS_STRUC_1','SOUS_STRUC_2'),),
10174            TOUT            =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI",) ),
10175            GROUP_NO_1      =SIMP(statut='f',typ=grno),
10176            SOUS_STRUC_1    =SIMP(statut='f',typ='TXM' ),
10177            GROUP_NO_2      =SIMP(statut='f',typ=grno),
10178            SOUS_STRUC_2    =SIMP(statut='f',typ='TXM' ),
10179            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
10180            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
10181            DIST_REFE       =SIMP(statut='f',typ='R' ),
10182          ),
10183          NOM_GROUP_MA    =FACT(statut='f',max='**',
10184            NOM             =SIMP(statut='o',typ='TXM' ),
10185            SOUS_STRUC      =SIMP(statut='o',typ='TXM' ),
10186            GROUP_MA        =SIMP(statut='o',typ=grma),
10187          ),
10188          EXCLUSIF        =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
10189          MAILLAGE        =SIMP(statut='f',typ=maillage ),
10190          MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
10191          GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
10192          TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
10193          TRANS           =SIMP(statut='f',typ='R',min=3,max=3),
10194          ANGL_NAUT       =SIMP(statut='f',typ='R',min=3,max=3),
10195          SOUS_STRUC      =FACT(statut='f',max='**',
10196            NOM             =SIMP(statut='f',typ='TXM' ),
10197            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
10198            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
10199            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
10200          ),
10201          SECTEUR         =FACT(statut='f',max='**',
10202            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
10203            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
10204            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
10205          ),
10206          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
10207 )  ;
10208
10209 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
10210 #            CONFIGURATION MANAGEMENT OF EDF VERSION
10211 # ======================================================================
10212 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
10213 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
10214 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
10215 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
10216 # (AT YOUR OPTION) ANY LATER VERSION.                                 
10217 #
10218 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
10219 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
10220 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
10221 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
10222 #
10223 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
10224 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
10225 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
10226 # ======================================================================
10227 DEFI_TEXTURE=OPER(nom="DEFI_TEXTURE",op= 181,sd_prod=tabl_texture,
10228                   fr=" ",docu="U4.43.05-b",reentrant='n',
10229             UIinfo={"groupes":("Modélisation",)},
10230          SYST_GLISSEMENT =FACT(statut='o',min=3,max=3,
10231            N               =SIMP(statut='o',typ='R',min=12,max=12 ),  
10232            L               =SIMP(statut='o',typ='R',max='**' ),  
10233          ),
10234          PLAN            =FACT(statut='o',min=40,max=40,
10235            ANGL_NAUT       =SIMP(statut='o',typ='R',max='**' ),  
10236            PROPORTION      =SIMP(statut='o',typ='R' ),  
10237          ),
10238          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),  
10239 )  ;
10240
10241 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
10242 #            CONFIGURATION MANAGEMENT OF EDF VERSION
10243 # ======================================================================
10244 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
10245 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
10246 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
10247 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
10248 # (AT YOUR OPTION) ANY LATER VERSION.                                 
10249 #
10250 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
10251 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
10252 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
10253 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
10254 #
10255 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
10256 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
10257 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
10258 # ======================================================================
10259 DEFI_THER_JOULE=OPER(nom="DEFI_THER_JOULE",op= 121,sd_prod=fonction,docu="U4.mk.20-d",reentrant='n',
10260             UIinfo={"groupes":("Outils métier",)},
10261                     fr="Calculer la fonction d évolution temporelle de température due à l effet JOULE dans un cable",
10262          LIST_INST       =SIMP(statut='o',typ=listr8),
10263          INST_CC_INIT    =SIMP(statut='f',typ='R',defaut= 0.0E+0 ),
10264          INST_CC_FIN     =SIMP(statut='f',typ='R',defaut= 1.0E+10),
10265          INST_RENC_INIT  =SIMP(statut='f',typ='R',defaut= 1.0E+10),
10266          INST_RENC_FIN   =SIMP(statut='f',typ='R',defaut= 1.0E+10),
10267          TEMP_EXT_POSE   =SIMP(statut='f',typ='R',defaut= 15.0E+0),
10268          TEMP_EXT        =SIMP(statut='f',typ='R',defaut= 15.0E+0),
10269          TEMP_RESI_REF   =SIMP(statut='f',typ='R',defaut= 20.0E+0),
10270          PARA_COND_1D    =FACT(statut='f',max='**',
10271            INTE_CC         =SIMP(statut='f',typ='R',defaut= 0.0E+0),
10272            INTE_RENC       =SIMP(statut='f',typ='R',defaut= 0.0E+0),
10273            A               =SIMP(statut='f',typ='R',defaut= 1.0E+0),
10274            SECTION         =SIMP(statut='f',typ='TXM',defaut="CERCLE",into=("CERCLE",) ),
10275            RESI_R0         =SIMP(statut='f',typ='R',defaut= 0.0E+0),
10276            RESI_R1         =SIMP(statut='f',typ='R',defaut= 0.E+0),
10277            RHO_CP          =SIMP(statut='f',typ='R',defaut= 1.0E+0),
10278            COEF_H          =SIMP(statut='f',typ='R',defaut= 40.0E+0),
10279            TEMP_INIT       =SIMP(statut='f',typ='R',defaut= 15.0E+0),
10280          ),
10281 )  ;
10282
10283
10284 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
10285 #            CONFIGURATION MANAGEMENT OF EDF VERSION
10286 # ======================================================================
10287 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
10288 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
10289 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
10290 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
10291 # (AT YOUR OPTION) ANY LATER VERSION.                                 
10292 #
10293 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
10294 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
10295 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
10296 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
10297 #
10298 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
10299 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
10300 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
10301 # ======================================================================
10302 DEFI_TRC=OPER(nom="DEFI_TRC",op=94,sd_prod=tabl_trc,docu="U4.43.04-f",reentrant='n',
10303             UIinfo={"groupes":("Modélisation",)},
10304               fr="Définition d un diagramme de transformations en refroidissement continu d un acier",
10305          HIST_EXP        =FACT(statut='o',max='**',
10306            VALE            =SIMP(statut='o',typ='R',max='**'),
10307          ),
10308          TEMP_MS         =FACT(statut='o',max='**',
10309            SEUIL           =SIMP(statut='o',typ='R'),
10310            AKM             =SIMP(statut='o',typ='R'),
10311            BKM             =SIMP(statut='o',typ='R'),
10312            TPLM            =SIMP(statut='o',typ='R'),
10313          ),
10314          GRAIN_AUST      =FACT(statut='f',max='**',
10315            DREF           =SIMP(statut='f',typ='R'),
10316            A              =SIMP(statut='f',typ='R'),
10317          ),
10318 )  ;
10319
10320 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
10321 #            CONFIGURATION MANAGEMENT OF EDF VERSION
10322 # ======================================================================
10323 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
10324 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
10325 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
10326 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
10327 # (AT YOUR OPTION) ANY LATER VERSION.                                 
10328 #
10329 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
10330 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
10331 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
10332 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
10333 #
10334 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
10335 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
10336 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
10337 # ======================================================================
10338 def defi_valeur_prod(self,IS=None,R8=None,TX=None,C8=None,LS=None):
10339   if IS != None  : return entier
10340   if R8 != None  : return reel
10341   if TX != None  : return chaine
10342   if C8 != None  : return complexe
10343   if LS != None  : return liste
10344   raise AsException("type de concept resultat non prevu")
10345
10346 DEFI_VALEUR=MACRO(nom="DEFI_VALEUR",op=-4,sd_prod=defi_valeur_prod,
10347                  fr="Affectation d une valeur à une variable Superviseur",
10348                  docu="U4.31.04-f",reentrant='f',
10349             UIinfo={"groupes":("Fonction",)},
10350          regles=(UN_PARMI('IS','R8','TX','C8','LS'),),
10351          IS              =SIMP(statut='f',typ='I'  ,max='**'),
10352          R8              =SIMP(statut='f',typ='R'  ,max='**'),
10353          TX              =SIMP(statut='f',typ='TXM',max='**'),
10354          C8              =SIMP(statut='f',typ='C'  ,max='**'),
10355          LS              =SIMP(statut='f',typ='L'  ,max='**'),
10356 )  ;
10357
10358 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
10359 # RESPONSABLE D6BHHJP J.P.LEFEBVRE
10360 #            CONFIGURATION MANAGEMENT OF EDF VERSION
10361 # ======================================================================
10362 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
10363 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
10364 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
10365 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
10366 # (AT YOUR OPTION) ANY LATER VERSION.                                 
10367 #
10368 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
10369 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
10370 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
10371 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
10372 #
10373 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
10374 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
10375 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
10376 # ======================================================================
10377 DEFUFI=PROC(nom="DEFUFI",op=21,docu="U4.12.01-e",
10378             UIinfo={"groupes":("Gestion du travail",)},
10379             fr="Modification / ajout d une unité logique en sortie en complément de celles définies dans DEBUT",
10380
10381             IMPRESSION = FACT(statut='o',max='**',
10382               NOM           =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**'),
10383               UNITE         =SIMP(statut='o',typ='I'  ,val_min=1),
10384             ),                
10385            )
10386
10387 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
10388 #            CONFIGURATION MANAGEMENT OF EDF VERSION
10389 # ======================================================================
10390 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
10391 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
10392 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
10393 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
10394 # (AT YOUR OPTION) ANY LATER VERSION.                                 
10395 #
10396 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
10397 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
10398 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
10399 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
10400 #
10401 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
10402 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
10403 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
10404 # ======================================================================
10405 DEPL_INTERNE=OPER(nom="DEPL_INTERNE",op=89,sd_prod=cham_no_depl_r,docu="U4.62.02-f",reentrant='n',
10406             UIinfo={"groupes":("Matrices/vecteurs",)},
10407                   fr="Récupération du champ de déplacement interne à une sous-structure",
10408          DEPL_GLOBAL     =SIMP(statut='o',typ=cham_no_depl_r),
10409          MAILLE          =SIMP(statut='o',typ=ma,),
10410          NOM_CAS         =SIMP(statut='f',typ='TXM',defaut=" "),
10411 )  ;
10412
10413 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
10414 #            CONFIGURATION MANAGEMENT OF EDF VERSION
10415 # ======================================================================
10416 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
10417 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
10418 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
10419 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
10420 # (AT YOUR OPTION) ANY LATER VERSION.                                 
10421 #
10422 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
10423 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
10424 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
10425 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
10426 #
10427 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
10428 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
10429 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
10430 # ======================================================================
10431 DETRUIRE=PROC(nom="DETRUIRE",op=-7,docu="U4.14.01-e",
10432             UIinfo={"groupes":("Gestion du travail",)},
10433               fr="Destruction d un concept utilisateur dans la base GLOBALE",
10434              op_init=ops.detruire,
10435              regles=(UN_PARMI('CONCEPT','OBJET',),), 
10436             CONCEPT     =FACT(statut='f',
10437                 NOM         =SIMP(statut='o',typ=assd,validators=NoRepeat(),max='**'),
10438             ),
10439             OBJET  =FACT(statut='f',
10440                CHAINE      =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**'),
10441                POSITION    =SIMP(statut='o',typ='I'  ,validators=NoRepeat(),max='**'),
10442             ),
10443             INFO          =SIMP(statut='f',typ='I',into=(1,2),defaut=2, ),           
10444 );
10445
10446 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
10447 #            CONFIGURATION MANAGEMENT OF EDF VERSION
10448 # ======================================================================
10449 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
10450 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
10451 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
10452 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
10453 # (AT YOUR OPTION) ANY LATER VERSION.                                 
10454 #
10455 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
10456 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
10457 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
10458 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
10459 #
10460 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
10461 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
10462 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
10463 # ======================================================================
10464 DIST_LIGN_3D=OPER(nom="DIST_LIGN_3D",op= 133,sd_prod=fonction,docu="U4.mk.30-d",reentrant='n', 
10465             UIinfo={"groupes":("Outils métier",)},
10466                   fr="Calcul sous forme d une fonction du temps de la distance minimale entre deux structures filaires",
10467       regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),
10468               UN_PARMI('GROUP_MA_2','POIN_FIXE'),),
10469          MODELE          =SIMP(statut='o',typ=modele),
10470          RESULTAT        =SIMP(statut='o',typ=(evol_elas,dyna_trans,evol_noli) ),
10471          TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",)),
10472          NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
10473          INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
10474          LIST_INST       =SIMP(statut='f',typ=listr8),
10475          LIST_ORDRE      =SIMP(statut='f',typ=listis),
10476          PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),
10477          CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
10478          GROUP_MA_1      =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'),
10479          GROUP_MA_2      =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
10480          POIN_FIXE       =SIMP(statut='f',typ='R',min=3,max=3),
10481          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
10482 )  ;
10483
10484 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
10485 #            CONFIGURATION MANAGEMENT OF EDF VERSION
10486 # ======================================================================
10487 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
10488 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
10489 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
10490 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
10491 # (AT YOUR OPTION) ANY LATER VERSION.                                 
10492 #
10493 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
10494 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
10495 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
10496 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
10497 #
10498 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
10499 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
10500 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
10501 # ======================================================================
10502 DYNA_ALEA_MODAL=OPER(nom="DYNA_ALEA_MODAL",op= 131,sd_prod=tabl_intsp
10503                     ,fr="Calcule la réponse spectrale d une structure linéaire sous une excitation connue par sa DSP",
10504                      docu="U4.53.22-e",reentrant='n',
10505             UIinfo={"groupes":("Résolution",)},
10506          BASE_MODALE     =FACT(statut='o',
10507            regles=(UN_PARMI('NUME_ORDRE','BANDE'),),
10508            MODE_MECA       =SIMP(statut='o',typ=mode_meca ),
10509            BANDE           =SIMP(statut='f',typ='R',validators=NoRepeat(),max=2),
10510            NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
10511            b_bande =BLOC(condition = "BANDE != None",
10512              AMOR_UNIF       =SIMP(statut='o',typ='R' ),
10513            ),
10514            b_nume_ordre =BLOC(condition = "NUME_ORDRE != None",
10515              AMOR_REDUIT     =SIMP(statut='o',typ='R',max='**'),
10516            ),
10517          ),
10518          MODE_STAT       =SIMP(statut='f',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc,)),
10519 # MODE_STAT devrait etre dans EXCIT car est utile et obligatoire que si NOM_CMP=depl_r, on pourrait
10520 # ainsi rajouter un bloc du genre  b_mod_stat= BLOC(condition = "(GRANDEUR == None) or (GRANDEUR == 'DEPL_R')",        
10521          EXCIT           =FACT(statut='o',
10522            INTE_SPEC       =SIMP(statut='o',typ=tabl_intsp ),
10523            NUME_VITE_FLUI  =SIMP(statut='f',typ='I' ),
10524            OPTION          =SIMP(statut='f',typ='TXM',defaut="TOUT",into=("TOUT","DIAG",) ),
10525            MODAL           =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
10526            b_modal_non = BLOC(condition = "(MODAL == None) or (MODAL == 'NON')",           
10527              regles=(UN_PARMI('NOEUD_I','NUME_ORDRE_I'),),
10528              NUME_ORDRE_I    =SIMP(statut='f',typ='I',max='**'),
10529              NOEUD_I         =SIMP(statut='f',typ=no,max='**'),
10530              b_nume_ordre_i  =BLOC(condition = "NUME_ORDRE_I != None",
10531                regles=(EXCLUS('CHAM_NO','NOEUD'),),
10532 # on devrait rajouter EXCLUS('GRANDEUR','CHAM_NO') pour eviter ambiguite car CHAM_NO => GRANDEUR='EFFO'
10533 # cela impliquerait d'enlever la valeur par defaut a GRANDEUR            
10534                NUME_ORDRE_J    =SIMP(statut='o',typ='I',max='**'),
10535                CHAM_NO         =SIMP(statut='f',typ=cham_no),
10536                NOEUD           =SIMP(statut='f',typ=no,max='**'),
10537                b_noeud         =BLOC(condition = "NOEUD != None",
10538                   NOM_CMP         =SIMP(statut='o',typ='TXM',max='**'),
10539                 ),  
10540                GRANDEUR        =SIMP(statut='f',typ='TXM',defaut="DEPL_R",
10541                            into=("DEPL_R","EFFO","SOUR_DEBI_VOLU","SOUR_DEBI_MASS","SOUR_PRESS","SOUR_FORCE")),
10542 # que se passe-t-il en cas d'incompatibilite entre GRANDEUR et NOM_CMP  
10543                DERIVATION      =SIMP(statut='f',typ='I',defaut= 0,into=( 0 , 1 , 2 ) ),
10544              ),           
10545              b_noeud_i       =BLOC(condition = "NOEUD_I != None",
10546                NOEUD_J         =SIMP(statut='o',typ=no,max='**'),
10547                NOM_CMP_I       =SIMP(statut='o',typ='TXM',max='**'),
10548                NOM_CMP_J       =SIMP(statut='o',typ='TXM',max='**'),
10549                NOEUD           =SIMP(statut='o',typ=no,max='**'),
10550                NOM_CMP         =SIMP(statut='o',typ='TXM',max='**'),
10551 # ne serait-il pas bien que NOEUD et NOM_CMP soient facultatifs, car l'information peut etre contenue dans
10552 # NOEUD_I, NOM_CMP_I ...  => modif. du Fortran
10553                GRANDEUR        =SIMP(statut='f',typ='TXM',defaut="DEPL_R",
10554                            into=("DEPL_R","EFFO","SOUR_DEBI_VOLU","SOUR_DEBI_MASS","SOUR_PRESS","SOUR_FORCE")),
10555 # que se passe-t-il en cas d'incompatibilite entre GRANDEUR et NOM_CMP_I  
10556                DERIVATION      =SIMP(statut='f',typ='I',defaut= 0,into=( 0 , 1 , 2 ) ),
10557              ),
10558            ),  
10559            b_modal_oui = BLOC(condition = "(MODAL == 'OUI')",
10560 # dans ce cas, y-a-t-il vraiment la possibilite d'une matrice interspectrale avec plusieurs termes
10561              NUME_ORDRE_I    =SIMP(statut='o',typ='I',max='**'),
10562              NUME_ORDRE_J    =SIMP(statut='o',typ='I',max='**'),
10563              GRANDEUR        =SIMP(statut='f',typ='TXM',defaut="DEPL_R",
10564                            into=("DEPL_R","EFFO","SOUR_DEBI_VOLU","SOUR_DEBI_MASS","SOUR_PRESS","SOUR_FORCE")),
10565              DERIVATION      =SIMP(statut='f',typ='I',defaut= 0,into=( 0 , 1 , 2 ) ),
10566 # dans le cas MODAL=OUI, GRANDEUR peut-il etre different de EFFO et doit il etre impose a EFFO   On devrait
10567 # pouvoir supprimer GRANDEUR et DERIVATION ici   
10568            ),  
10569                     
10570          ),
10571          REPONSE         =FACT(statut='f',
10572            regles=( ENSEMBLE('FREQ_MIN','FREQ_MAX'),),
10573            DERIVATION      =SIMP(statut='f',typ='I',defaut= 0,into=( 0 , 1 , 2 ,) ),
10574            OPTION          =SIMP(statut='f',typ='TXM',defaut="TOUT",into=("TOUT","DIAG") ),
10575            FREQ_MIN        =SIMP(statut='f',typ='R' ),
10576            FREQ_MAX        =SIMP(statut='f',typ='R' ),
10577            PAS             =SIMP(statut='f',typ='R' ),
10578            b_defaut_freq   =BLOC(condition = "FREQ_MIN == NONE",
10579               FREQ_EXCIT      =SIMP(statut='f',typ='TXM',defaut="AVEC",into=("AVEC","SANS") ),
10580               NB_POIN_MODE    =SIMP(statut='f',typ='I',defaut= 50 ),
10581            ),
10582          ),
10583          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
10584          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
10585 )  ;
10586
10587 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
10588 #            CONFIGURATION MANAGEMENT OF EDF VERSION
10589 # ======================================================================
10590 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
10591 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
10592 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
10593 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
10594 # (AT YOUR OPTION) ANY LATER VERSION.                                 
10595 #
10596 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
10597 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
10598 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
10599 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
10600 #
10601 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
10602 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
10603 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
10604 # ======================================================================
10605 def dyna_line_harm_prod(MATR_MASS,**args):
10606   if AsType(MATR_MASS) == matr_asse_depl_r : return dyna_harmo
10607   if AsType(MATR_MASS) == matr_asse_depl_c : return dyna_harmo
10608   if AsType(MATR_MASS) == matr_asse_pres_c : return acou_harmo
10609   if AsType(MATR_MASS) == matr_asse_gene_r : return harm_gene
10610   raise AsException("type de concept resultat non prevu")
10611
10612 DYNA_LINE_HARM=OPER(nom="DYNA_LINE_HARM",op=  60,sd_prod=dyna_line_harm_prod,
10613                     fr="Réponse dynamique complexe d un système à une excitation harmonique",
10614                     docu="U4.53.11-f",reentrant='n',
10615             UIinfo={"groupes":("Résolution",)},
10616          regles=(PRESENT_ABSENT('AMOR_REDUIT','MATR_AMOR'),
10617                  PRESENT_ABSENT('AMOR_REDUIT','LIST_AMOR'),
10618                  PRESENT_ABSENT('MATR_AMOR','LIST_AMOR'),
10619                  UN_PARMI('FREQ','LIST_FREQ'),),
10620          MODELE          =SIMP(statut='f',typ=modele ),
10621          CHAM_MATER      =SIMP(statut='f',typ=cham_mater ),
10622          CARA_ELEM       =SIMP(statut='f',typ=cara_elem ),
10623          MATR_MASS       =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_pres_c,matr_asse_gene_r ) ),
10624          MATR_RIGI       =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_pres_c
10625                                               ,matr_asse_gene_r,matr_asse_gene_c ) ),
10626          MATR_AMOR       =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_pres_c,matr_asse_gene_r ) ),
10627          AMOR_REDUIT     =SIMP(statut='f',typ='R',max='**'),
10628          LIST_AMOR       =SIMP(statut='f',typ=listr8 ),
10629          MATR_IMPE_PHI   =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_gene_r) ),
10630          FREQ            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
10631          LIST_FREQ       =SIMP(statut='f',typ=listr8 ),
10632          TOUT_CHAM       =SIMP(statut='f',typ='TXM',into=("OUI",)),
10633          NOM_CHAM        =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=3,into=("DEPL","VITE","ACCE") ),
10634          EXCIT           =FACT(statut='o',max='**',
10635            regles=(UN_PARMI('VECT_ASSE','CHARGE'),
10636                    UN_PARMI('FONC_MULT','FONC_MULT_C','COEF_MULT','COEF_MULT_C'),),
10637            VECT_ASSE       =SIMP(statut='f',typ=(cham_no_depl_r,cham_no_pres_c,vect_asse_gene ) ),
10638            CHARGE          =SIMP(statut='f',typ=char_meca ),
10639            TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",) ),
10640            FONC_MULT_C     =SIMP(statut='f',typ=fonction_c ),
10641            COEF_MULT_C     =SIMP(statut='f',typ='C' ),
10642            FONC_MULT       =SIMP(statut='f',typ=(fonction,formule) ),
10643            COEF_MULT       =SIMP(statut='f',typ='R' ),
10644            PHAS_DEG        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
10645            PUIS_PULS       =SIMP(statut='f',typ='I',defaut= 0 ),
10646          ),
10647          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
10648          SENSIBILITE     =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**',
10649                                fr="Liste des paramètres de sensibilité.",
10650                                ang="List of sensitivity parameters"),
10651 )  ;
10652 # Rajouter test icompatibilite vect_asse et sensibilite
10653 # Peut-on aussi rajouter ici le test d incompatibilite charge complexe - derivation 
10654 #  presents dans le Fortran          
10655
10656 #& MODIF COMMANDE  DATE 14/10/2003   AUTEUR ACBHHCD G.DEVESA 
10657 #            CONFIGURATION MANAGEMENT OF EDF VERSION
10658 # ======================================================================
10659 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
10660 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
10661 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
10662 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
10663 # (AT YOUR OPTION) ANY LATER VERSION.                                 
10664 #
10665 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
10666 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
10667 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
10668 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
10669 #
10670 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
10671 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
10672 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
10673 # ======================================================================
10674 DYNA_LINE_TRAN=OPER(nom="DYNA_LINE_TRAN",op=  48,sd_prod=dyna_trans,
10675                     fr="Réponse temporelle d un système à une excitation transitoire",
10676                     docu="U4.53.02-g",reentrant='f',
10677             UIinfo={"groupes":("Résolution",)},
10678 #         regles=(UN_PARMI('WILSON','DIFF_CENTRE','ADAPT'),),
10679          regles=(UN_PARMI('NEWMARK','WILSON','DIFF_CENTRE','ADAPT'),),
10680          MODELE          =SIMP(statut='f',typ=modele ),
10681          CHAM_MATER      =SIMP(statut='f',typ=cham_mater ),
10682          CARA_ELEM       =SIMP(statut='f',typ=cara_elem ),
10683          MATR_MASS       =SIMP(statut='o',typ=matr_asse_depl_r ),
10684          MATR_RIGI       =SIMP(statut='o',typ=matr_asse_depl_r ),
10685          MATR_AMOR       =SIMP(statut='f',typ=matr_asse_depl_r ),
10686          MODE_STAT       =SIMP(statut='f',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc,) ),
10687          NEWMARK         =FACT(statut='f',
10688            ALPHA           =SIMP(statut='f',typ='R',defaut= 0.25 ),
10689            DELTA           =SIMP(statut='f',typ='R',defaut= 0.5 ),
10690          ),
10691          WILSON          =FACT(statut='f',
10692            THETA           =SIMP(statut='f',typ='R',defaut= 1.4 ),
10693          ),
10694          DIFF_CENTRE     =FACT(statut='f',
10695          ),
10696          ADAPT           =FACT(statut='f',
10697          ),
10698          ETAT_INIT       =FACT(statut='f',
10699            regles=(AU_MOINS_UN('DYNA_TRANS', 'DEPL_INIT', 'VITE_INIT',),
10700                    PRESENT_ABSENT('DYNA_TRANS', 'DEPL_INIT', 'VITE_INIT'),),
10701            DYNA_TRANS      =SIMP(statut='f',typ=dyna_trans ),
10702            b_dyna_trans    =BLOC(condition = "DYNA_TRANS != None",
10703              regles=(EXCLUS('NUME_INIT','INST_INIT' ),),
10704              NUME_INIT       =SIMP(statut='f',typ='I' ),
10705              INST_INIT       =SIMP(statut='f',typ='R' ),
10706              b_inst_init     =BLOC(condition = "INST_INIT != None",
10707                PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
10708                CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
10709              ),
10710            ),
10711            DEPL_INIT       =SIMP(statut='f',typ=(cham_no_depl_r) ),
10712            VITE_INIT       =SIMP(statut='f',typ=(cham_no_depl_r) ),
10713          ),
10714          EXCIT           =FACT(statut='f',max='**',
10715            regles=(UN_PARMI('CHARGE','VECT_ASSE'),
10716                    EXCLUS('CHARGE','COEF_MULT'),
10717                    EXCLUS('FONC_MULT','COEF_MULT'),
10718                    EXCLUS('ACCE','COEF_MULT'),
10719                    PRESENT_ABSENT('ACCE','FONC_MULT'),
10720                    PRESENT_PRESENT('ACCE','VITE','DEPL'),
10721                    # PRESENT_ABSENT('MULT_APPUI','FONC_MULT'),
10722                    ),
10723            VECT_ASSE       =SIMP(statut='f',typ=cham_no_depl_r ),
10724            CHARGE          =SIMP(statut='f',typ=char_meca ),
10725            FONC_MULT       =SIMP(statut='f',typ=(fonction,formule) ),
10726            COEF_MULT       =SIMP(statut='f',typ='R' ),
10727            TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",) ),
10728            ACCE            =SIMP(statut='f',typ=(fonction,formule) ),
10729            VITE            =SIMP(statut='f',typ=(fonction,formule) ),
10730            DEPL            =SIMP(statut='f',typ=(fonction,formule) ),
10731            MULT_APPUI      =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
10732            DIRECTION       =SIMP(statut='f',typ='R',max='**'),
10733            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
10734            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
10735          ),
10736          AMOR_MODAL      =FACT(statut='f',
10737            MODE_MECA       =SIMP(statut='f',typ=mode_meca ),
10738            AMOR_REDUIT     =SIMP(statut='f',typ='R',max='**'),
10739            NB_MODE         =SIMP(statut='f',typ='I',defaut= 9999 ),
10740            REAC_VITE       =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
10741          ),
10742 #  ce n est pas le mot clesolveur standard
10743          SOLVEUR         =FACT(statut='d',
10744            NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
10745            STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
10746            RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
10747            NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
10748          ),
10749          INCREMENT       =FACT(statut='o',max='**',
10750            regles=(UN_PARMI('LIST_INST','FONC_INST','PAS'),),
10751            LIST_INST       =SIMP(statut='f',typ=listr8 ), 
10752            FONC_INST       =SIMP(statut='f',typ=(fonction,formule) ),       
10753            PAS             =SIMP(statut='f',typ='R' ),
10754            b_pas           =BLOC(condition = "PAS != None",
10755                INST_INIT       =SIMP(statut='f',typ='R' ),
10756                INST_FIN        =SIMP(statut='f',typ='R' ),    
10757            ),
10758            b_list_fonc     =BLOC(condition = "LIST_INST != None or FONC_INST != None",
10759                regles=(EXCLUS('INST_FIN','NUME_FIN'),),
10760                NUME_FIN        =SIMP(statut='f',typ='I' ), 
10761                INST_FIN        =SIMP(statut='f',typ='R' ),   
10762            ),
10763            VITE_MIN        =SIMP(statut='f',typ='TXM',defaut="NORM",into=("MAXI","NORM") ),
10764            COEF_MULT_PAS   =SIMP(statut='f',typ='R',defaut= 1.1 ),
10765            COEF_DIVI_PAS   =SIMP(statut='f',typ='R',defaut= 1.33334 ),
10766            PAS_LIMI_RELA   =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
10767            NB_POIN_PERIODE =SIMP(statut='f',typ='I',defaut= 50 ),
10768            NMAX_ITER_PAS   =SIMP(statut='f',typ='I',defaut= 16 ),
10769            PAS_CALCUL      =SIMP(statut='f',typ='I',defaut= 1 ),
10770          ),
10771          ARCHIVAGE       =FACT(statut='f',
10772            regles=(UN_PARMI('LIST_ARCH','PAS_ARCH', ),),
10773            LIST_ARCH       =SIMP(statut='f',typ=listis ),
10774            PAS_ARCH        =SIMP(statut='f',typ='I' ),
10775            CHAM_EXCLU      =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',into=("DEPL","VITE","ACCE") ),
10776          ),
10777          SENSIBILITE     =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**',
10778                                fr="Liste des param\350tres de sensibilit\351.",
10779                                ang="List of sensitivity parameters",
10780          ),
10781          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
10782          INFO            =SIMP(statut='f',typ='I',into=(1,2) ),
10783 )  ;
10784
10785 #& MODIF COMMANDE  DATE 14/10/2003   AUTEUR ACBHHCD G.DEVESA 
10786 #            CONFIGURATION MANAGEMENT OF EDF VERSION
10787 # ======================================================================
10788 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
10789 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
10790 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
10791 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR
10792 # (AT YOUR OPTION) ANY LATER VERSION.
10793 #
10794 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT
10795 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF
10796 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU
10797 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.
10798 #
10799 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE
10800 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,
10801 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.
10802 # ======================================================================
10803 DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f',
10804                    fr="Analyse mécanique dynamique non linéaire",docu="U4.53.01-f",
10805             UIinfo={"groupes":("Résolution",)},
10806          regles=(AU_MOINS_UN('COMP_INCR','COMP_ELAS',),
10807                  UN_PARMI('NEWMARK','HHT', ),),
10808          MODELE          =SIMP(statut='o',typ=modele),
10809          CHAM_MATER      =SIMP(statut='o',typ=cham_mater),
10810          MODE_STAT       =SIMP(statut='f',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc,)),
10811          CARA_ELEM       =SIMP(statut='f',typ=cara_elem),
10812          EXCIT           =FACT(statut='o',max='**',
10813            regles=(PRESENT_ABSENT('FONC_MULT','ACCE'),
10814                    PRESENT_PRESENT('ACCE','VITE','DEPL'),
10815                    # PRESENT_ABSENT('MULT_APPUI','FONC_MULT'),
10816                    ),
10817            TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FIXE_CSTE",
10818                                  into=("FIXE_CSTE","FIXE_PILO","SUIV","DIDI")),
10819            CHARGE          =SIMP(statut='o',typ=char_meca),
10820            FONC_MULT       =SIMP(statut='f',typ=(fonction,formule)),
10821            DEPL            =SIMP(statut='f',typ=(fonction,formule)),
10822            ACCE            =SIMP(statut='f',typ=(fonction,formule)),
10823            VITE            =SIMP(statut='f',typ=(fonction,formule)),
10824            MULT_APPUI      =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
10825            DIRECTION       =SIMP(statut='f',typ='R',max='**'),
10826            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
10827            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
10828          ),
10829          AMOR_MODAL      =FACT(statut='f',
10830            MODE_MECA       =SIMP(statut='f',typ=mode_meca),
10831            AMOR_REDUIT     =SIMP(statut='f',typ='R',max='**' ),
10832            NB_MODE         =SIMP(statut='f',typ='I',defaut= 9999 ),
10833            REAC_VITE       =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
10834          ),
10835          VARI_COMM           =FACT(statut='f',
10836            regles=(AU_MOINS_UN('IRRA',),),
10837            IRRA     =SIMP(statut='f',typ=evol_varc),
10838          ),
10839          COMP_INCR       =C_COMP_INCR(),
10840          COMP_ELAS       =FACT(statut='f',max='**',
10841            RELATION        =SIMP(statut='o',typ='TXM',defaut="ELAS",
10842                                  into=("ELAS","ELAS_VMIS_LINE","ELAS_VMIS_TRAC",
10843                                        "ELAS_POUTRE_GR","CABLE")),
10844            ELAS            =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
10845            ELAS_VMIS_TRAC  =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
10846            ELAS_VMIS_LINE  =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
10847            ELAS_POUTRE_GR  =SIMP(statut='c',typ='I',defaut=3,into=(3,)),
10848            CABLE           =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
10849            DEFORMATION     =SIMP(statut='f',typ='TXM',defaut="PETIT" ,into=("PETIT","GREEN","GREEN_GR",) ),
10850       regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),),
10851            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
10852            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
10853            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
10854          ),
10855 #-------------------------------------------------------------------
10856          ETAT_INIT       =FACT(statut='f',
10857            regles=(AU_MOINS_UN('EVOL_NOLI','DEPL','VITE','SIGM','VARI','VARI_NON_LOCAL',),
10858                    EXCLUS('EVOL_NOLI','DEPL',),
10859                    EXCLUS('EVOL_NOLI','VITE'),
10860                    EXCLUS('EVOL_NOLI','SIGM',),
10861                    EXCLUS('EVOL_NOLI','VARI',),
10862                    EXCLUS('EVOL_NOLI','VARI_NON_LOCAL',),
10863                    EXCLUS('NUME_ORDRE','INST'), ),
10864            DEPL            =SIMP(statut='f',typ=cham_no_depl_r),
10865            VITE            =SIMP(statut='f',typ=cham_no_depl_r),
10866            SIGM            =SIMP(statut='f',typ=(cham_elem_sief_r,carte_sief_r)),
10867            VARI            =SIMP(statut='f',typ=cham_elem_vari_r),
10868            VARI_NON_LOCAL  =SIMP(statut='f',typ=cham_no_vanl_r),
10869            EVOL_NOLI       =SIMP(statut='f',typ=evol_noli),
10870            NUME_ORDRE      =SIMP(statut='f',typ='I'),
10871            INST            =SIMP(statut='f',typ='R'),
10872            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),
10873            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
10874            NUME_DIDI       =SIMP(statut='f',typ='I'),
10875            INST_ETAT_INIT  =SIMP(statut='f',typ='R'),
10876          ),
10877 #-------------------------------------------------------------------
10878          INCREMENT       =FACT(statut='o',
10879            regles=(EXCLUS('NUME_INST_INIT','INST_INIT'),
10880                    EXCLUS('NUME_INST_FIN','INST_FIN'),),
10881            LIST_INST       =SIMP(statut='o',typ=listr8),
10882            EVOLUTION       =SIMP(statut='f',typ='TXM',defaut="CHRONOLOGIQUE",
10883                                  into=("CHRONOLOGIQUE","RETROGRADE","SANS",) ),
10884            NUME_INST_INIT  =SIMP(statut='f',typ='I'),
10885            INST_INIT       =SIMP(statut='f',typ='R'),
10886            NUME_INST_FIN   =SIMP(statut='f',typ='I'),
10887            INST_FIN        =SIMP(statut='f',typ='R'),
10888            PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3 ),
10889            SUBD_PAS        =SIMP(statut='f',typ='I',defaut=1),
10890            SUBD_PAS_MINI   =SIMP(statut='f',typ='R'),
10891            COEF_SUBD_PAS_1 =SIMP(statut='f',typ='R',defaut= 1.0E+0),
10892            OPTI_LIST_INST  =SIMP(statut='f',typ='TXM',into=("INCR_MAXI",),),
10893            NOM_CHAM        =SIMP(statut='f',typ='TXM',),
10894            NOM_CMP         =SIMP(statut='f',typ='TXM',),
10895            VALE            =SIMP(statut='f',typ='R'),
10896          ),
10897 #-------------------------------------------------------------------
10898          NEWMARK         =FACT(statut='f',
10899            ALPHA           =SIMP(statut='f',typ='R',defaut= 0.25),
10900            DELTA           =SIMP(statut='f',typ='R',defaut= 0.5),
10901          ),
10902          HHT             =FACT(statut='f',
10903            ALPHA           =SIMP(statut='f',typ='R'
10904                                 ,defaut= -0.29999999999999999 ),
10905          ),
10906          NEWTON          =FACT(statut='d',
10907            REAC_INCR       =SIMP(statut='f',typ='I',defaut= 1 ),
10908            PREDICTION      =SIMP(statut='f',typ='TXM',into=("TANGENTE","ELASTIQUE") ),
10909            MATRICE         =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE") ),
10910            REAC_ITER       =SIMP(statut='f',typ='I',defaut= 0),
10911            PAS_MINI_ELAS   =SIMP(statut='f',typ='R',defaut=0.0E+0),
10912          ),
10913          SOLVEUR         =FACT(statut='d',
10914            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
10915            b_mult_front    =BLOC(condition= "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
10916              RENUM           =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ),
10917            ),
10918            b_ldlt          =BLOC(condition= "METHODE == 'LDLT'",fr="Paramètres de la méthode LDLT",
10919              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
10920            ),
10921            b_ldlt_mult     =BLOC(condition="METHODE == 'LDLT' or METHODE == 'MULT_FRONT'",
10922                                    fr="Paramètres relatifs à la non inversibilité de la matrice à factorise",
10923              NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
10924              STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON","DECOUPE") ),
10925            ),
10926            b_gcpc          =BLOC(condition="METHODE == 'GCPC'",fr="Paramètres de la méthode du gradient conjugué",
10927              PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ),
10928              NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut=0),
10929              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ),
10930              RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
10931              NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
10932            ),
10933            SYME            =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
10934          ),
10935 #-------------------------------------------------------------------
10936          RECH_LINEAIRE   =FACT(statut='f',
10937            RESI_LINE_RELA  =SIMP(statut='f',typ='R',defaut= 1.0E-1 ),
10938            ITER_LINE_MAXI  =SIMP(statut='f',typ='I',defaut= 3),
10939            ITER_LINE_CRIT  =SIMP(statut='f',typ='I',defaut= 20),
10940            PAS_MINI_CRIT   =SIMP(statut='f',typ='R',defaut=0.0E+0),
10941            RHO_MIN         =SIMP(statut='f',typ='R',defaut=1.0E-2),
10942            RHO_MAX         =SIMP(statut='f',typ='R',defaut=1.0E+1),
10943            RHO_EXCL        =SIMP(statut='f',typ='R',defaut=0.9E-2),
10944          ),
10945          PILOTAGE        =FACT(statut='f',
10946            regles=(EXCLUS('NOEUD','GROUP_NO'),PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),),
10947            TYPE    =SIMP(statut='o',typ='TXM',into=("DDL_IMPO","LONG_ARC","PRED_ELAS","PRED_ELAS_INCR","DEFORMATION","ANA_LIM") ),
10948            COEF_MULT       =SIMP(statut='f',typ='R',defaut= 1.0E+0),
10949            ETA_PILO_MAX    =SIMP(statut='f',typ='R'),
10950            ETA_PILO_MIN    =SIMP(statut='f',typ='R'),
10951            ETA_PILO_R_MAX  =SIMP(statut='f',typ='R'),
10952            ETA_PILO_R_MIN  =SIMP(statut='f',typ='R'),
10953            PROJ_BORNES     =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")),
10954            SELECTION       =SIMP(statut='f',typ='TXM',defaut="NORM_INCR_DEPL", into=("RESIDU","ANGL_INCR_DEPL","NORM_INCR_DEPL") ),
10955            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
10956            GROUP_MA        =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'),
10957            MAILLE          =SIMP(statut='f',typ=ma   ,validators=NoRepeat(),max='**'),
10958            NOEUD           =SIMP(statut='f',typ=no   ,validators=NoRepeat(),max='**'),
10959            GROUP_NO        =SIMP(statut='f',typ=grno ,validators=NoRepeat(),max='**'),
10960            NOM_CMP         =SIMP(statut='f',typ='TXM',max='**' ),
10961                          ),
10962          CONVERGENCE     =FACT(statut='d',
10963            regles=(PRESENT_ABSENT('RESI_REFE_RELA','RESI_GLOB_MAXI','RESI_GLOB_RELA'),),
10964            SIGM_REFE       =SIMP(statut='f',typ='R'),
10965            EPSI_REFE       =SIMP(statut='f',typ='R'),
10966            FLUX_THER_REFE  =SIMP(statut='f',typ='R'),
10967            FLUX_HYD1_REFE  =SIMP(statut='f',typ='R'),
10968            FLUX_HYD2_REFE  =SIMP(statut='f',typ='R'),           
10969            RESI_REFE_RELA  =SIMP(statut='f',typ='R'),
10970            RESI_GLOB_MAXI  =SIMP(statut='f',typ='R'),
10971            RESI_GLOB_RELA  =SIMP(statut='f',typ='R'),
10972            ITER_GLOB_MAXI  =SIMP(statut='f',typ='I',defaut=10),
10973            ITER_GLOB_ELAS  =SIMP(statut='f',typ='I',defaut=25),
10974            ARRET           =SIMP(statut='f',typ='TXM',defaut="OUI"),
10975            RESI_INTE_RELA  =SIMP(statut='f',typ='R'
10976                                 ,defaut= 1.0E-6),
10977            ITER_INTE_MAXI  =SIMP(statut='f',typ='I',defaut= 10 ),
10978            ITER_INTE_PAS   =SIMP(statut='f',typ='I',defaut= 0 ),
10979            TYPE_MATR_COMP  =SIMP(statut='f',typ='TXM',defaut="TANG_VIT",into=("TANG_VIT",)),
10980            RESO_INTE       =SIMP(statut='f',typ='TXM',defaut="IMPLICITE",
10981                                  into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")),
10982          ),
10983 #-------------------------------------------------------------------
10984          OPTION          =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',defaut="ELNO",
10985                                into=("SIEF_ELNO_ELGA","VARI_ELNO_ELGA","EFGE_ELNO_CART","ELNO","SANS") ),
10986          ARCHIVAGE       =FACT(statut='f',
10987            regles=(EXCLUS('PAS_ARCH','LIST_INST','INST'),
10988                    EXCLUS('ARCH_ETAT_INIT','NUME_INIT'), ),
10989            LIST_INST       =SIMP(statut='f',typ=(listr8) ),
10990            INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ),
10991            PAS_ARCH        =SIMP(statut='f',typ='I' ),
10992            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3),
10993            ARCH_ETAT_INIT  =SIMP(statut='f',typ='TXM',into=("OUI",)),
10994            NUME_INIT       =SIMP(statut='f',typ='I'),
10995            DETR_NUME_SUIV  =SIMP(statut='f',typ='TXM',into=("OUI",)),
10996            CHAM_EXCLU      =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',
10997            into=("DEPL","SIEF_ELGA","VARI_ELGA","ACCE","VITE","VARI_NON_LOCAL","LANL_ELGA")),
10998          ),
10999          OBSERVATION     =FACT(statut='f',max='**',
11000            regles=(UN_PARMI('NOEUD','GROUP_NO','MAILLE'),
11001                    PRESENT_PRESENT('MAILLE','POINT'),),
11002            NOM_CHAM        =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',
11003
11004 into=("DEPL","VITE","ACCE","SIEF_ELGA","VARI_ELGA","DEPL_ABSOLU","VITE_ABSOLU","ACCE_ABSOLU") ),
11005            NOM_CMP         =SIMP(statut='o',typ='TXM',max='**' ),
11006            LIST_ARCH       =SIMP(statut='f',typ=listis),
11007            LIST_INST       =SIMP(statut='f',typ=listr8),
11008            INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ),
11009            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),
11010            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
11011            PAS_OBSE        =SIMP(statut='f',typ='I'),
11012            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
11013            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
11014            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
11015            POINT           =SIMP(statut='f',typ='I' ,max='**'),
11016          ),
11017 #-------------------------------------------------------------------
11018            SENSIBILITE     =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**',
11019                                fr="Liste des paramètres de sensibilité",
11020                                ang="List of sensitivity parameters"),
11021 #-------------------------------------------------------------------
11022            SOLV_NON_LOCAL  =FACT(statut='f',
11023              METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
11024              b_mult_front    =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
11025                RENUM           =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ),
11026              ),
11027              b_ldlt         =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT",
11028                RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
11029              ),
11030              b_ldlt_mult    =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
11031                                     fr="Paramètres relatifs à la non inversibilité de la matrice à factorise",
11032                NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
11033                STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
11034              ),
11035              b_gcpc         =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué",
11036                PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ),
11037                NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ),
11038                RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
11039                NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
11040              ),
11041              EPS             =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
11042            ),
11043            LAGR_NON_LOCAL  =FACT(statut='f',
11044              ITER_DUAL_MAXI  =SIMP(statut='f',typ='I',defaut= 50),
11045              RESI_DUAL_ABSO  =SIMP(statut='o',typ='R'),
11046              RESI_PRIM_ABSO  =SIMP(statut='o',typ='R'),
11047              R               =SIMP(statut='f',typ='R',defaut= 1000.),
11048              ITER_PRIM_MAXI  =SIMP(statut='f',typ='I',defaut= 10),
11049            ),
11050 #-------------------------------------------------------------------
11051          PARM_THETA      =SIMP(statut='f',typ='R'
11052                               ,defaut= 1. ),
11053 #-------------------------------------------------------------------
11054          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
11055          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
11056 )  ;
11057
11058 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
11059 #            CONFIGURATION MANAGEMENT OF EDF VERSION
11060 # ======================================================================
11061 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
11062 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
11063 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
11064 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
11065 # (AT YOUR OPTION) ANY LATER VERSION.                                 
11066 #
11067 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
11068 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
11069 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
11070 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
11071 #
11072 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
11073 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
11074 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
11075 # ======================================================================
11076 DYNA_SPEC_MODAL=OPER(nom="DYNA_SPEC_MODAL",op= 147,sd_prod=tabl_intsp,
11077                      fr="Calcul de la réponse par recombinaison modale d'une structure linéaire pour une excitation aléatoire",
11078                      docu="U4.53.23-d",reentrant='n',
11079             UIinfo={"groupes":("Résolution",)},
11080          BASE_ELAS_FLUI  =SIMP(statut='o',typ=melasflu ),
11081          EXCIT           =FACT(statut='o',
11082            INTE_SPEC_GENE  =SIMP(statut='o',typ=tabl_intsp ),
11083          ),
11084          OPTION          =SIMP(statut='f',typ='TXM',defaut="TOUT",into=("TOUT","DIAG") ),
11085          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
11086 )  ;
11087
11088 #& MODIF COMMANDE  DATE 14/10/2003   AUTEUR ACBHHCD G.DEVESA 
11089 #            CONFIGURATION MANAGEMENT OF EDF VERSION
11090 # ======================================================================
11091 # COPYRIGHT (C) 1991 - 2003  EDF R&D                  WWW.CODE-ASTER.ORG
11092 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY  
11093 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY  
11094 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR     
11095 # (AT YOUR OPTION) ANY LATER VERSION.                                                  
11096 #                                                                       
11097 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT   
11098 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF            
11099 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU      
11100 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                              
11101 #                                                                       
11102 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE     
11103 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,         
11104 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.        
11105 # ======================================================================
11106 #& RESPONSABLE
11107 DYNA_TRAN_EXPLI=OPER(nom="DYNA_TRAN_EXPLI",op= 69,sd_prod=evol_noli,reentrant='f',
11108                    fr="Analyse mecanique dynamique explicite",docu="U4.53.03",
11109          regles=(AU_MOINS_UN('COMP_INCR','COMP_ELAS',),),
11110          MODELE          =SIMP(statut='o',typ=modele),
11111          CHAM_MATER      =SIMP(statut='o',typ=cham_mater),
11112          MODE_STAT       =SIMP(statut='f',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc,)),
11113          CARA_ELEM       =SIMP(statut='f',typ=cara_elem),
11114          EXCIT           =FACT(statut='o',max='**',
11115            regles=(PRESENT_ABSENT('FONC_MULT','ACCE'),
11116                    PRESENT_PRESENT('ACCE','VITE','DEPL'),
11117                    # PRESENT_ABSENT('MULT_APPUI','FONC_MULT'),
11118                    ),
11119            TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FIXE_CSTE",
11120                                  into=("FIXE_CSTE","FIXE_PILO","SUIV","DIDI")),
11121            CHARGE          =SIMP(statut='o',typ=char_meca),
11122            FONC_MULT       =SIMP(statut='f',typ=(fonction,formule)),
11123            DEPL            =SIMP(statut='f',typ=(fonction,formule)),
11124            ACCE            =SIMP(statut='f',typ=(fonction,formule)),
11125            VITE            =SIMP(statut='f',typ=(fonction,formule)),
11126            MULT_APPUI      =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
11127            DIRECTION       =SIMP(statut='f',typ='R',max=3),
11128            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
11129            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
11130          ),
11131          AMOR_MODAL      =FACT(statut='f',
11132            MODE_MECA       =SIMP(statut='f',typ=mode_meca),
11133            AMOR_REDUIT     =SIMP(statut='f',typ='R',max='**' ),
11134            NB_MODE         =SIMP(statut='f',typ='I',defaut= 9999 ),
11135            REAC_VITE       =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
11136          ),
11137          PROJ_MODAL      =FACT(statut='f',
11138            MODE_MECA       =SIMP(statut='f',typ=mode_meca),
11139            NB_MODE         =SIMP(statut='f',typ='I',defaut= 9999 ),
11140          ),
11141          COMP_INCR       =C_COMP_INCR(),
11142          COMP_ELAS       =FACT(statut='f',max='**',
11143            RELATION        =SIMP(statut='o',typ='TXM',defaut="ELAS",
11144                                  into=("ELAS","ELAS_VMIS_LINE","ELAS_VMIS_TRAC",
11145                                        "ELAS_POUTRE_GR","CABLE")),
11146            ELAS            =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
11147            ELAS_VMIS_TRAC  =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
11148            ELAS_VMIS_LINE  =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
11149            ELAS_POUTRE_GR  =SIMP(statut='c',typ='I',defaut=3,into=(3,)),
11150            CABLE           =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
11151            DEFORMATION     =SIMP(statut='f',typ='TXM',defaut="PETIT" ,into=("PETIT","GREEN","GREEN_GR",) ),
11152       regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),),
11153            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
11154            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
11155            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
11156          ),
11157 #-------------------------------------------------------------------
11158          ETAT_INIT       =FACT(statut='f',
11159            regles=(AU_MOINS_UN('EVOL_NOLI','DEPL','VITE','SIGM','VARI','VARI_NON_LOCAL',),
11160                    EXCLUS('EVOL_NOLI','DEPL',),
11161                    EXCLUS('EVOL_NOLI','VITE'),
11162                    EXCLUS('EVOL_NOLI','SIGM',),
11163                    EXCLUS('EVOL_NOLI','VARI',),
11164                    EXCLUS('EVOL_NOLI','VARI_NON_LOCAL',),
11165                    EXCLUS('NUME_ORDRE','INST'), ),
11166            DEPL            =SIMP(statut='f',typ=cham_no_depl_r),
11167            VITE            =SIMP(statut='f',typ=cham_no_depl_r),
11168            SIGM            =SIMP(statut='f',typ=(cham_elem_sief_r,carte_sief_r)),
11169            VARI            =SIMP(statut='f',typ=cham_elem_vari_r),
11170            VARI_NON_LOCAL  =SIMP(statut='f',typ=cham_no_vanl_r),
11171            EVOL_NOLI       =SIMP(statut='f',typ=evol_noli),
11172            NUME_ORDRE      =SIMP(statut='f',typ='I'),
11173            INST            =SIMP(statut='f',typ='R'),
11174            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),
11175            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
11176            NUME_DIDI       =SIMP(statut='f',typ='I'),
11177            INST_ETAT_INIT  =SIMP(statut='f',typ='R'),
11178          ),
11179 #-------------------------------------------------------------------
11180          INCREMENT       =FACT(statut='o',
11181            regles=(EXCLUS('NUME_INST_INIT','INST_INIT'),
11182                    EXCLUS('NUME_INST_FIN','INST_FIN'),),
11183            LIST_INST       =SIMP(statut='o',typ=listr8),
11184            EVOLUTION       =SIMP(statut='f',typ='TXM',defaut="CHRONOLOGIQUE",
11185                                  into=("CHRONOLOGIQUE","RETROGRADE","SANS",) ),
11186            NUME_INST_INIT  =SIMP(statut='f',typ='I'),
11187            INST_INIT       =SIMP(statut='f',typ='R'),
11188            NUME_INST_FIN   =SIMP(statut='f',typ='I'),
11189            INST_FIN        =SIMP(statut='f',typ='R'),
11190            PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3 ),
11191            SUBD_PAS        =SIMP(statut='f',typ='I',defaut=1),
11192            SUBD_PAS_MINI   =SIMP(statut='f',typ='R'),
11193            COEF_SUBD_PAS_1 =SIMP(statut='f',typ='R',defaut= 1.0E+0),
11194            OPTI_LIST_INST  =SIMP(statut='f',typ='TXM',into=("INCR_MAXI",),),
11195            NOM_CHAM        =SIMP(statut='f',typ='TXM',),
11196            NOM_CMP         =SIMP(statut='f',typ='TXM',),
11197            VALE            =SIMP(statut='f',typ='R'),
11198          ),
11199 #-------------------------------------------------------------------
11200          NEWMARK         =FACT(statut='d',
11201            ALPHA           =SIMP(statut='f',typ='R',defaut= 0.25),
11202            DELTA           =SIMP(statut='f',typ='R',defaut= 0.5),
11203          ),
11204          NEWTON          =FACT(statut='c',
11205            REAC_INCR       =SIMP(statut='f',typ='I',defaut= 1 ),
11206            PREDICTION      =SIMP(statut='f',typ='TXM',into=("TANGENTE","ELASTIQUE") ),
11207            MATRICE         =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE") ),
11208            REAC_ITER       =SIMP(statut='f',typ='I',defaut= 0),
11209            PAS_MINI_ELAS   =SIMP(statut='f',typ='R',defaut=0.0E+0),
11210          ),
11211          SOLVEUR         =FACT(statut='d',
11212            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
11213            b_mult_front    =BLOC(condition= "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
11214              RENUM           =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ),
11215            ),
11216            b_ldlt          =BLOC(condition= "METHODE == 'LDLT'",fr="Paramètres de la méthode LDLT",
11217              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
11218            ),
11219            b_ldlt_mult     =BLOC(condition="METHODE == 'LDLT' or METHODE == 'MULT_FRONT'",
11220                                    fr="Paramètres relatifs à la non inversibilité de la matrice à factorise",
11221              NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
11222              STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON","DECOUPE") ),
11223            ),
11224            b_gcpc          =BLOC(condition="METHODE == 'GCPC'",fr="Paramètres de la méthode du gradient conjugué",
11225              PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ),
11226              NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut=0),
11227              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ),
11228              RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
11229              NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
11230            ),
11231            SYME            =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
11232          ),
11233 #-------------------------------------------------------------------
11234          RECH_LINEAIRE   =FACT(statut='c',
11235            RESI_LINE_RELA  =SIMP(statut='f',typ='R',defaut= 1.0E-1 ),
11236            ITER_LINE_MAXI  =SIMP(statut='f',typ='I',defaut= 3),
11237            ITER_LINE_CRIT  =SIMP(statut='f',typ='I',defaut= 20),
11238            PAS_MINI_CRIT   =SIMP(statut='f',typ='R',defaut=0.0E+0),
11239            RHO_MIN         =SIMP(statut='f',typ='R',defaut=1.0E-2),
11240            RHO_MAX         =SIMP(statut='f',typ='R',defaut=1.0E+1),
11241            RHO_EXCL        =SIMP(statut='f',typ='R',defaut=0.9E-2),
11242          ),
11243          PILOTAGE        =FACT(statut='c',
11244            regles=(EXCLUS('NOEUD','GROUP_NO'),PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),),
11245            TYPE    =SIMP(statut='o',typ='TXM',into=("DDL_IMPO","LONG_ARC","PRED_ELAS","PRED_ELAS_INCR","DEFORMATION","ANA_LIM") ),
11246            COEF_MULT       =SIMP(statut='f',typ='R',defaut= 1.0E+0),
11247            ETA_PILO_MAX    =SIMP(statut='f',typ='R'),
11248            ETA_PILO_MIN    =SIMP(statut='f',typ='R'),
11249            ETA_PILO_R_MAX  =SIMP(statut='f',typ='R'),
11250            ETA_PILO_R_MIN  =SIMP(statut='f',typ='R'),
11251            PROJ_BORNES     =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")),
11252            SELECTION       =SIMP(statut='f',typ='TXM',defaut="NORM_INCR_DEPL", into=("RESIDU","ANGL_INCR_DEPL","NORM_INCR_DEPL") ),
11253            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
11254            GROUP_MA        =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'),
11255            MAILLE          =SIMP(statut='f',typ=ma   ,validators=NoRepeat(),max='**'),
11256            NOEUD           =SIMP(statut='f',typ=no   ,validators=NoRepeat(),max='**'),
11257            GROUP_NO        =SIMP(statut='f',typ=grno ,validators=NoRepeat(),max='**'),
11258            NOM_CMP         =SIMP(statut='f',typ='TXM',max='**' ),
11259                          ),
11260          CONVERGENCE     =FACT(statut='d',
11261            regles=(PRESENT_ABSENT('RESI_REFE_RELA','RESI_GLOB_MAXI','RESI_GLOB_RELA'),),
11262            SIGM_REFE       =SIMP(statut='f',typ='R'),
11263            EPSI_REFE       =SIMP(statut='f',typ='R'),
11264            FLUX_THER_REFE  =SIMP(statut='f',typ='R'),
11265            FLUX_HYD1_REFE  =SIMP(statut='f',typ='R'),
11266            FLUX_HYD2_REFE  =SIMP(statut='f',typ='R'),           
11267            RESI_REFE_RELA  =SIMP(statut='f',typ='R'),
11268            RESI_GLOB_MAXI  =SIMP(statut='f',typ='R'),
11269            RESI_GLOB_RELA  =SIMP(statut='f',typ='R'),
11270            ITER_GLOB_MAXI  =SIMP(statut='f',typ='I',defaut=10),
11271            ITER_GLOB_ELAS  =SIMP(statut='f',typ='I',defaut=25),
11272            ARRET           =SIMP(statut='f',typ='TXM',defaut="OUI"),
11273            RESI_INTE_RELA  =SIMP(statut='f',typ='R'
11274                                 ,defaut= 1.0E-6),
11275            ITER_INTE_MAXI  =SIMP(statut='f',typ='I',defaut= 10 ),
11276            ITER_INTE_PAS   =SIMP(statut='f',typ='I',defaut= 0 ),
11277            TYPE_MATR_COMP  =SIMP(statut='f',typ='TXM',defaut="TANG_VIT",into=("TANG_VIT",)),
11278            RESO_INTE       =SIMP(statut='f',typ='TXM',defaut="IMPLICITE",
11279                                  into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")),
11280          ),
11281 #-------------------------------------------------------------------
11282          OPTION          =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',defaut="ELNO",
11283                                into=("SIEF_ELNO_ELGA","VARI_ELNO_ELGA","EFGE_ELNO_CART","ELNO","SANS") ),
11284          ARCHIVAGE       =FACT(statut='f',
11285            regles=(EXCLUS('PAS_ARCH','LIST_INST','INST'),
11286                    EXCLUS('ARCH_ETAT_INIT','NUME_INIT'), ),
11287            LIST_INST       =SIMP(statut='f',typ=(listr8) ),
11288            INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ),
11289            PAS_ARCH        =SIMP(statut='f',typ='I' ),
11290            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3),
11291            ARCH_ETAT_INIT  =SIMP(statut='f',typ='TXM',into=("OUI",)),
11292            NUME_INIT       =SIMP(statut='f',typ='I'),
11293            DETR_NUME_SUIV  =SIMP(statut='f',typ='TXM',into=("OUI",)),
11294            CHAM_EXCLU      =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',
11295            into=("DEPL","SIEF_ELGA","VARI_ELGA","ACCE","VITE","VARI_NON_LOCAL","LANL_ELGA")),
11296          ),
11297          OBSERVATION     =FACT(statut='f',max='**',
11298            regles=(UN_PARMI('NOEUD','GROUP_NO','MAILLE'),
11299                    PRESENT_PRESENT('MAILLE','POINT'),),
11300            NOM_CHAM        =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',
11301
11302 into=("DEPL","VITE","ACCE","SIEF_ELGA","VARI_ELGA","DEPL_ABSOLU","VITE_ABSOLU","ACCE_ABSOLU") ),
11303            NOM_CMP         =SIMP(statut='o',typ='TXM',max='**' ),
11304            LIST_ARCH       =SIMP(statut='f',typ=listis),
11305            LIST_INST       =SIMP(statut='f',typ=listr8),
11306            INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ),
11307            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),
11308            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
11309            PAS_OBSE        =SIMP(statut='f',typ='I'),
11310            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
11311            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
11312            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
11313            POINT           =SIMP(statut='f',typ='I' ,max='**'),
11314          ),
11315 #-------------------------------------------------------------------
11316            SOLV_NON_LOCAL  =FACT(statut='f',
11317              METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
11318              b_mult_front    =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
11319                RENUM           =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ),
11320              ),
11321              b_ldlt         =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT",
11322                RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
11323              ),
11324              b_ldlt_mult    =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
11325                                     fr="Paramètres relatifs à la non inversibilité de la matrice à factorise",
11326                NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
11327                STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
11328              ),
11329              b_gcpc         =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué",
11330                PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ),
11331                NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ),
11332                RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
11333                NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
11334              ),
11335              EPS             =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
11336            ),
11337            LAGR_NON_LOCAL  =FACT(statut='f',
11338              ITER_DUAL_MAXI  =SIMP(statut='f',typ='I',defaut= 50),
11339              RESI_DUAL_ABSO  =SIMP(statut='o',typ='R'),
11340              RESI_PRIM_ABSO  =SIMP(statut='o',typ='R'),
11341              R               =SIMP(statut='f',typ='R',defaut= 1000.),
11342              ITER_PRIM_MAXI  =SIMP(statut='f',typ='I',defaut= 10),
11343            ),
11344 #-------------------------------------------------------------------
11345          PARM_THETA      =SIMP(statut='f',typ='R'
11346                               ,defaut= 1. ),
11347 #-------------------------------------------------------------------
11348          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
11349          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
11350 )  ;
11351
11352 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
11353 #            CONFIGURATION MANAGEMENT OF EDF VERSION
11354 # ======================================================================
11355 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
11356 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
11357 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
11358 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
11359 # (AT YOUR OPTION) ANY LATER VERSION.                                 
11360 #
11361 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
11362 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
11363 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
11364 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
11365 #
11366 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
11367 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
11368 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
11369 # ======================================================================
11370 DYNA_TRAN_MODAL=OPER(nom="DYNA_TRAN_MODAL",op=  74,sd_prod=tran_gene,
11371                      fr="Réponse dynamique transitoire en coordonnées généralisées par recombinaison modale",
11372                      docu="U4.53.21-f",reentrant='f',
11373             UIinfo={"groupes":("Résolution",)},
11374       regles=(EXCLUS('AMOR_REDUIT','AMOR_GENE','LIST_AMOR'), 
11375               PRESENT_ABSENT('MODE_STAT','MODE_CORR'),),
11376          METHODE         =SIMP(statut='f',typ='TXM',defaut="EULER",
11377                                into=("EULER","NEWMARK","DEVOGE","ADAPT","ITMI") ),
11378          MASS_GENE       =SIMP(statut='o',typ=matr_asse_gene_r ),
11379          RIGI_GENE       =SIMP(statut='o',typ=matr_asse_gene_r ),
11380          AMOR_GENE       =SIMP(statut='f',typ=matr_asse_gene_r ),
11381          AMOR_REDUIT     =SIMP(statut='f',typ='R',max='**'),
11382          LIST_AMOR       =SIMP(statut='f',typ=listr8 ),
11383          MODE_STAT       =SIMP(statut='f',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc) ),
11384          MODE_CORR       =SIMP(statut='f',typ=(mult_elas,mode_stat_acce) ,),
11385          
11386          ETAT_INIT       =FACT(statut='f',
11387            regles=(EXCLUS('RESU_GENE','DEPL_INIT_GENE'),
11388                    EXCLUS('RESU_GENE','VITE_INIT_GENE'),),
11389            RESU_GENE       =SIMP(statut='f',typ=tran_gene ),
11390            b_resu_gene     =BLOC(condition = "RESU_GENE != None",
11391              INST_INIT       =SIMP(statut='f',typ='R' ),
11392              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
11393              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
11394            ),
11395            DEPL_INIT_GENE  =SIMP(statut='f',typ=vect_asse_gene ),
11396            VITE_INIT_GENE  =SIMP(statut='f',typ=vect_asse_gene ),
11397          ),
11398          INCREMENT       =FACT(statut='o',max='**',
11399            INST_INIT       =SIMP(statut='f',typ='R' ),
11400            INST_FIN        =SIMP(statut='o',typ='R' ),
11401            PAS             =SIMP(statut='f',typ='R' ),
11402            VERI_PAS        =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
11403            VITE_MIN        =SIMP(statut='f',typ='TXM',defaut="NORM",into=("MAXI","NORM") ),
11404            COEF_MULT_PAS   =SIMP(statut='f',typ='R',defaut= 1.1 ),
11405            COEF_DIVI_PAS   =SIMP(statut='f',typ='R',defaut= 1.3333334 ),
11406            PAS_LIMI_RELA   =SIMP(statut='f',typ='R',defaut= 1.0E-6 ),
11407            NB_POIN_PERIODE =SIMP(statut='f',typ='I',defaut= 50 ),
11408            NMAX_ITER_PAS   =SIMP(statut='f',typ='I',defaut= 16 ),
11409          ),
11410          ARCHIVAGE       =FACT(statut='f',
11411            regles=(UN_PARMI('LIST_ARCH','PAS_ARCH'),),
11412            LIST_ARCH       =SIMP(statut='f',typ=listis ),
11413            PAS_ARCH        =SIMP(statut='f',typ='I' ),
11414          ),
11415          
11416          NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 20 ),
11417          RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),
11418          LAMBDA          =SIMP(statut='f',typ='R',defaut= 10. ),
11419          
11420          EXCIT           =FACT(statut='f',max='**',
11421            regles=(UN_PARMI('FONC_MULT','COEF_MULT','ACCE'),
11422                    PRESENT_PRESENT('ACCE','VITE','DEPL'),
11423                    PRESENT_PRESENT('D_FONC_DT','D_FONC_DT2'),
11424                    PRESENT_ABSENT('NUME_MODE','VECT_GENE','COEF_MULT'),
11425                    EXCLUS('MULT_APPUI','CORR_STAT'),
11426                    PRESENT_ABSENT('MULT_APPUI','COEF_MULT'),
11427                    PRESENT_ABSENT('MULT_APPUI','FONC_MULT'),),
11428            VECT_GENE       =SIMP(statut='f',typ=vect_asse_gene ),
11429            NUME_MODE       =SIMP(statut='f',typ='I' ),
11430            FONC_MULT       =SIMP(statut='f',typ=(fonction,formule) ),
11431            COEF_MULT       =SIMP(statut='f',typ='R' ),
11432            ACCE            =SIMP(statut='f',typ=(fonction,formule) ),
11433            VITE            =SIMP(statut='f',typ=(fonction,formule) ),
11434            DEPL            =SIMP(statut='f',typ=(fonction,formule) ),
11435            MULT_APPUI      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
11436            DIRECTION       =SIMP(statut='f',typ='R',max='**'),
11437            b_loca          =BLOC(condition= "DIRECTION != None",
11438              regles=(EXCLUS('NOEUD','GROUP_NO'),),
11439              NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
11440              GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
11441            ),
11442            CORR_STAT       =SIMP(statut='f',typ='TXM',into=("OUI",) ),
11443            D_FONC_DT       =SIMP(statut='f',typ=(fonction,formule) ),
11444            D_FONC_DT2      =SIMP(statut='f',typ=(fonction,formule) ),
11445          ),
11446          CHOC            =FACT(statut='f',max='**',
11447            regles=(UN_PARMI('NOEUD_1','GROUP_NO_1' ),
11448                    PRESENT_ABSENT('NOEUD_1','GROUP_NO_1'),
11449                    PRESENT_ABSENT('NOEUD_2','GROUP_NO_2'),),
11450            INTITULE        =SIMP(statut='f',typ='TXM' ),
11451            NOEUD_1         =SIMP(statut='f',typ=no),
11452            NOEUD_2         =SIMP(statut='f',typ=no),
11453            GROUP_NO_1      =SIMP(statut='f',typ=grno),
11454            GROUP_NO_2      =SIMP(statut='f',typ=grno),
11455            OBSTACLE        =SIMP(statut='o',typ=obstacle ),
11456            ORIG_OBST       =SIMP(statut='f',typ='R',min=3,max=3),
11457            NORM_OBST       =SIMP(statut='o',typ='R',min=3,max=3),
11458            ANGL_VRIL       =SIMP(statut='f',typ='R' ),
11459            JEU             =SIMP(statut='f',typ='R',defaut= 1. ),
11460            DIST_1          =SIMP(statut='f',typ='R',val_min=0.E+0 ),
11461            DIST_2          =SIMP(statut='f',typ='R',val_min=0.E+0 ),
11462            SOUS_STRUC_1    =SIMP(statut='f',typ='TXM' ),
11463            SOUS_STRUC_2    =SIMP(statut='f',typ='TXM' ),
11464            REPERE          =SIMP(statut='f',typ='TXM',defaut="GLOBAL"),
11465            RIGI_NOR        =SIMP(statut='f',typ='R' ),
11466            AMOR_NOR        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
11467            RIGI_TAN        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
11468            AMOR_TAN        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
11469            COULOMB         =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
11470
11471            LAME_FLUIDE     =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
11472            b_lame          =BLOC(condition="LAME_FLUIDE=='OUI'",
11473                ALPHA           =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
11474                BETA            =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
11475                CHI             =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
11476                DELTA           =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
11477            ),
11478          ),
11479          VERI_CHOC       =FACT(statut='f',max='**',
11480            STOP_CRITERE    =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
11481            SEUIL           =SIMP(statut='f',typ='R',defaut= 0.5 ),
11482          ),
11483          FLAMBAGE        =FACT(statut='f',max='**',
11484            regles=(UN_PARMI('NOEUD_1','GROUP_NO_1'),
11485                    PRESENT_ABSENT('NOEUD_1','GROUP_NO_1'),
11486                    PRESENT_ABSENT('NOEUD_2','GROUP_NO_2'),),
11487            NOEUD_1         =SIMP(statut='f',typ=no),
11488            NOEUD_2         =SIMP(statut='f',typ=no),
11489            GROUP_NO_1      =SIMP(statut='f',typ=grno),
11490            GROUP_NO_2      =SIMP(statut='f',typ=grno),
11491            OBSTACLE        =SIMP(statut='o',typ=obstacle ),
11492            ORIG_OBST       =SIMP(statut='f',typ='R',max='**'),
11493            NORM_OBST       =SIMP(statut='o',typ='R',max='**'),
11494            ANGL_VRIL       =SIMP(statut='f',typ='R' ),
11495            JEU             =SIMP(statut='f',typ='R',defaut= 1. ),
11496            DIST_1          =SIMP(statut='f',typ='R' ),
11497            DIST_2          =SIMP(statut='f',typ='R' ),
11498            REPERE          =SIMP(statut='f',typ='TXM',defaut="GLOBAL"),
11499            RIGI_NOR        =SIMP(statut='f',typ='R' ),
11500            FNOR_CRIT       =SIMP(statut='f',typ='R' ),
11501            FNOR_POST_FL    =SIMP(statut='f',typ='R' ),
11502            RIGI_NOR_POST_FL=SIMP(statut='f',typ='R' ),
11503          ),
11504          ANTI_SISM       =FACT(statut='f',max='**',
11505            regles=(UN_PARMI('NOEUD_1','GROUP_NO_1'),
11506                    UN_PARMI('NOEUD_2','GROUP_NO_2'),
11507                    PRESENT_ABSENT('NOEUD_1','GROUP_NO_1'),
11508                    PRESENT_ABSENT('NOEUD_2','GROUP_NO_2'),),
11509            NOEUD_1         =SIMP(statut='f',typ=no),
11510            NOEUD_2         =SIMP(statut='f',typ=no),
11511            GROUP_NO_1      =SIMP(statut='f',typ=grno),
11512            GROUP_NO_2      =SIMP(statut='f',typ=grno),
11513            RIGI_K1         =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
11514            RIGI_K2         =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
11515            SEUIL_FX        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
11516            C               =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
11517            PUIS_ALPHA      =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
11518            DX_MAX          =SIMP(statut='f',typ='R',defaut= 1. ),
11519          ),
11520          RELA_EFFO_DEPL  =FACT(statut='f',max='**',
11521            NOEUD           =SIMP(statut='o',typ=no),
11522            SOUS_STRUC      =SIMP(statut='f',typ='TXM' ),
11523            NOM_CMP         =SIMP(statut='f',typ='TXM' ),
11524            RELATION        =SIMP(statut='o',typ=(fonction,formule) ),
11525          ),
11526          RELA_TRANSIS    =FACT(statut='f',max='**',
11527            NOEUD           =SIMP(statut='o',typ=no),
11528            SOUS_STRUC      =SIMP(statut='f',typ='TXM' ),
11529            NOM_CMP         =SIMP(statut='f',typ='TXM' ),
11530            RELATION        =SIMP(statut='o',typ=(fonction,formule) ),
11531          ),
11532          RELA_EFFO_VITE  =FACT(statut='f',max='**',
11533            NOEUD           =SIMP(statut='o',typ=no),
11534            SOUS_STRUC      =SIMP(statut='f',typ='TXM' ),
11535            NOM_CMP         =SIMP(statut='f',typ='TXM' ),
11536            RELATION        =SIMP(statut='o',typ=(fonction,formule) ),
11537          ),
11538          b_itmi          =BLOC(condition = "METHODE=='ITMI'",
11539                 regles=(ENSEMBLE('BASE_ELAS_FLUI','NUME_VITE_FLUI'),),
11540                 BASE_ELAS_FLUI  =SIMP(statut='f',typ=melasflu ),
11541                 NUME_VITE_FLUI  =SIMP(statut='f',typ='I' ),
11542                 ETAT_STAT       =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
11543                 PREC_DUREE      =SIMP(statut='f',typ='R',defaut= 1.E-2 ),
11544                 CHOC_FLUI       =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
11545                 NB_MODE         =SIMP(statut='f',typ='I' ),
11546                 NB_MODE_FLUI    =SIMP(statut='f',typ='I' ),
11547                 NB_MODE_DIAG    =SIMP(statut='f',typ='I' ),
11548                 TS_REG_ETAB     =SIMP(statut='f',typ='R' ),
11549          ),
11550          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
11551          IMPRESSION      =FACT(statut='f',max='**',
11552            regles=(EXCLUS('TOUT','NIVEAU'),),
11553            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
11554            NIVEAU          =SIMP(statut='f',typ='TXM',into=("DEPL_LOC","VITE_LOC","FORC_LOC","TAUX_CHOC") ),
11555            INST_INIT       =SIMP(statut='f',typ='R' ),
11556            INST_FIN        =SIMP(statut='f',typ='R' ),
11557          ),
11558          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
11559  )  ;
11560
11561 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
11562 #            CONFIGURATION MANAGEMENT OF EDF VERSION
11563 # ======================================================================
11564 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
11565 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
11566 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
11567 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
11568 # (AT YOUR OPTION) ANY LATER VERSION.                                 
11569 #
11570 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
11571 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
11572 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
11573 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
11574 #
11575 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
11576 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
11577 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
11578 # ======================================================================
11579 # RESPONSABLE VABHHTS J.PELLET
11580 ENGENDRE_TEST=PROC(nom="ENGENDRE_TEST",op=178,docu="U4.92.11-c",
11581             UIinfo={"groupes":("Impression",)},
11582       regles=(UN_PARMI('TOUT','CO'),),
11583          FICHIER         =SIMP(statut='f',typ='TXM',defaut="RESULTAT"),
11584          TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
11585          CO              =SIMP(statut='f',typ=assd,validators=NoRepeat(),max='**'),
11586          TYPE_TEST       =SIMP(statut='f',typ='TXM',defaut="SOMME",into=("SOMME","RESUME") ),
11587          FORMAT_R        =SIMP(statut='f',typ='TXM',defaut="1PE12.5"),
11588          PREC_R          =SIMP(statut='f',typ='TXM',defaut="1.E-5"),
11589 )  ;
11590
11591 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
11592 #            CONFIGURATION MANAGEMENT OF EDF VERSION
11593 # ======================================================================
11594 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
11595 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
11596 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
11597 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
11598 # (AT YOUR OPTION) ANY LATER VERSION.                                 
11599 #
11600 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
11601 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
11602 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
11603 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
11604 #
11605 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
11606 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
11607 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
11608 # ======================================================================
11609 EXEC_LOGICIEL=PROC(nom="EXEC_LOGICIEL",op= 183,fr="",docu="U7.00.01-b",
11610             UIinfo={"groupes":("Impression",)},
11611          LOGICIEL        =SIMP(statut='f',typ='TXM' ),  
11612          ARGUMENT        =FACT(statut='f',max='**',
11613            NOM_PARA        =SIMP(statut='f',typ='TXM' ),  
11614          ),
11615 )  ;
11616
11617 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
11618 #            CONFIGURATION MANAGEMENT OF EDF VERSION
11619 # ======================================================================
11620 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
11621 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
11622 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
11623 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
11624 # (AT YOUR OPTION) ANY LATER VERSION.                                 
11625 #
11626 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
11627 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
11628 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
11629 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
11630 #
11631 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
11632 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
11633 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
11634 # ======================================================================
11635 def extr_mode_prod(FILTRE_MODE,**args):
11636   vale=FILTRE_MODE[0]['MODE']
11637   if AsType(vale) == mode_meca   : return mode_meca
11638   if AsType(vale) == mode_meca_c : return mode_meca_c
11639   if AsType(vale) == mode_gene   : return mode_gene
11640   raise AsException("type de concept resultat non prevu")
11641
11642 EXTR_MODE=OPER(nom="EXTR_MODE",op= 168,sd_prod=extr_mode_prod,
11643                docu="U4.52.12-d",reentrant='n',
11644             UIinfo={"groupes":("Résolution",)},
11645          FILTRE_MODE     =FACT(statut='o',max='**',
11646            regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE','NUME_MODE','NUME_MODE_EXCLU','FREQ_MIN','CRIT_EXTR',),),
11647            MODE            =SIMP(statut='o',typ=(mode_meca,mode_meca_c,mode_gene ) ),
11648            TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI","NON") ),
11649            NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
11650            NUME_MODE       =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
11651            NUME_MODE_EXCLU =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
11652            FREQ_MIN        =SIMP(statut='f',typ='R' ),
11653            CRIT_EXTR       =SIMP(statut='f',typ='TXM',into=("MASS_EFFE_UN","MASS_GENE") ),
11654            b_freq_min      =BLOC(condition = "FREQ_MIN != None",  
11655              FREQ_MAX        =SIMP(statut='o',typ='R' ),
11656              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
11657            ),
11658            b_crit_extr     =BLOC(condition = "CRIT_EXTR != None",
11659              SEUIL           =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
11660            ),    
11661          ),
11662          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
11663          IMPRESSION      =FACT(statut='f',
11664            CUMUL           =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
11665            CRIT_EXTR       =SIMP(statut='f',typ='TXM',defaut="MASS_EFFE_UN",into=("MASS_EFFE_UN","MASS_GENE") ),
11666          ),
11667 )  ;
11668
11669 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
11670 #            CONFIGURATION MANAGEMENT OF EDF VERSION
11671 # ======================================================================
11672 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
11673 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
11674 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
11675 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR
11676 # (AT YOUR OPTION) ANY LATER VERSION.
11677 #
11678 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT
11679 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF
11680 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU
11681 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.
11682 #
11683 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE
11684 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,
11685 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.
11686 # ======================================================================
11687 def extr_resu_prod(RESULTAT,**args):
11688   if AsType(RESULTAT) == evol_elas    : return evol_elas
11689   if AsType(RESULTAT) == evol_noli    : return evol_noli
11690   if AsType(RESULTAT) == evol_ther    : return evol_ther
11691   if AsType(RESULTAT) == dyna_trans   : return dyna_trans
11692   if AsType(RESULTAT) == dyna_harmo   : return dyna_harmo
11693   if AsType(RESULTAT) == acou_harmo   : return acou_harmo
11694   if AsType(RESULTAT) == mode_meca    : return mode_meca
11695   if AsType(RESULTAT) == mode_acou    : return mode_acou
11696   if AsType(RESULTAT) == mode_stat :    return mode_stat
11697   if AsType(mode_stat) == mode_stat_depl :    return mode_stat_depl
11698   if AsType(mode_stat) == mode_stat_acce :    return mode_stat_acce
11699   if AsType(mode_stat) == mode_stat_forc :    return mode_stat_forc
11700   if AsType(RESULTAT) == mult_elas    : return mult_elas
11701   if AsType(RESULTAT) == fourier_elas : return fourier_elas
11702   raise AsException("type de concept resultat non prevu")
11703
11704 EXTR_RESU=OPER(nom="EXTR_RESU",op=176,sd_prod=extr_resu_prod,docu="U4.71.04-c",reentrant='f',
11705             UIinfo={"groupes":("Résultats et champs",)},
11706          RESULTAT        =SIMP(statut='o',typ=(evol_elas,dyna_trans,dyna_harmo,acou_harmo,mode_meca,
11707                                                mode_acou,mode_stat_depl,mode_stat_acce,mode_stat_forc,evol_ther,evol_noli,
11708                                                mult_elas,fourier_elas ) ),
11709
11710          SENSIBILITE     =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**',
11711                                    fr="Liste des paramètres de sensibilité.",
11712                                    ang="List of sensitivity parameters"),
11713
11714          ARCHIVAGE       =FACT(statut='f',
11715            regles=(  UN_PARMI('NUME_ORDRE', 'INST', 'FREQ', 'NUME_MODE',
11716                         'NOEUD_CMP', 'LIST_INST', 'LIST_FREQ', 'LIST_ORDRE',
11717                         'NOM_CAS', 'LIST_ARCH', 'PAS_ARCH' ),
11718                      EXCLUS( 'CHAM_EXCLU','NOM_CHAM' ),   ),
11719            CHAM_EXCLU      =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'),
11720            NOM_CHAM        =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',into=C_NOM_CHAM_INTO()),
11721            PRECISION       =SIMP(statut='f',typ='R',defaut=1.E-3 ),
11722            CRITERE         =SIMP(statut='f',typ='TXM',into=("RELATIF","ABSOLU"),defaut="RELATIF"),
11723            LIST_ARCH       =SIMP(statut='f',typ=listis),
11724            PAS_ARCH        =SIMP(statut='f',typ='I'),
11725            NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
11726            LIST_ORDRE      =SIMP(statut='f',typ=listis),
11727            INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
11728            LIST_INST       =SIMP(statut='f',typ=listr8),
11729            FREQ            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
11730            LIST_FREQ       =SIMP(statut='f',typ=listr8),
11731            NUME_MODE       =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
11732            NOEUD_CMP       =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'),
11733            NOM_CAS         =SIMP(statut='f',typ='TXM'),
11734                                ),
11735
11736          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),
11737 )  ;
11738
11739 #& MODIF COMMANDE  DATE 16/09/2003   AUTEUR CIBHHLV L.VIVAN 
11740 #            CONFIGURATION MANAGEMENT OF EDF VERSION
11741 # ======================================================================
11742 # COPYRIGHT (C) 1991 - 2003  EDF R&D                  WWW.CODE-ASTER.ORG
11743 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY  
11744 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY  
11745 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR     
11746 # (AT YOUR OPTION) ANY LATER VERSION.                                                  
11747 #                                                                       
11748 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT   
11749 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF            
11750 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU      
11751 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                              
11752 #                                                                       
11753 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE     
11754 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,         
11755 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.        
11756 # ======================================================================
11757 def extr_table_prod(TYPE_RESU,**args):
11758   if TYPE_RESU == "MATR_ASSE_GENE_R" : return matr_asse_gene_r
11759   raise AsException("type de concept resultat non prevu")
11760
11761 EXTR_TABLE=OPER(nom="EXTR_TABLE",op=173,sd_prod=extr_table_prod,docu="U4.71.05",reentrant='n',
11762             UIinfo={"groupes":("Résultats et champs",)},
11763
11764          TYPE_RESU       =SIMP(statut='o',typ='TXM',into=("MATR_ASSE_GENE_R",) ),
11765
11766          TABLE           =SIMP(statut='o',typ=table),
11767
11768          NOM_PARA        =SIMP(statut='o',typ='TXM'),
11769
11770          FILTRE          =FACT(statut='f',min=1,max='**',
11771            NOM_PARA        =SIMP(statut='o',typ='TXM'),
11772            CRIT_COMP       =SIMP(statut='f',typ='TXM',defaut="EQ",
11773                                  into=("EQ","LT","GT","NE","LE","GE","VIDE",
11774                                        "NON_VIDE","MAXI","ABS_MAXI","MINI","ABS_MINI") ),
11775            b_vale          =BLOC(condition = "(CRIT_COMP in ('EQ','NE','GT','LT','GE','LE'))",
11776               regles=(UN_PARMI('VALE','VALE_I','VALE_K','VALE_C',),),
11777               VALE            =SIMP(statut='f',typ='R'),
11778               VALE_I          =SIMP(statut='f',typ='I'),
11779               VALE_C          =SIMP(statut='f',typ='C'),
11780               VALE_K          =SIMP(statut='f',typ='TXM'),),
11781
11782            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
11783            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),
11784          ),
11785
11786          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),  
11787 )  ;
11788
11789 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
11790 #            CONFIGURATION MANAGEMENT OF EDF VERSION
11791 # ======================================================================
11792 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
11793 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
11794 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
11795 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
11796 # (AT YOUR OPTION) ANY LATER VERSION.                                 
11797 #
11798 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
11799 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
11800 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
11801 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
11802 #
11803 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
11804 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
11805 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
11806 # ======================================================================
11807 def fact_grad_prod(MATR_ASSE,**args):
11808   if AsType(MATR_ASSE) == matr_asse_depl_r : return matr_asse_depl_r
11809   if AsType(MATR_ASSE) == matr_asse_temp_r : return matr_asse_temp_r
11810   if AsType(MATR_ASSE) == matr_asse_pres_r : return matr_asse_pres_r
11811   raise AsException("type de concept resultat non prevu")
11812
11813 FACT_GRAD=OPER(nom="FACT_GRAD",op=85,sd_prod=fact_grad_prod,docu="U4.55.03-f",
11814             UIinfo={"groupes":("Résolution",)},
11815                fr="Préconditionnement pour résolution par gradient conjugué",
11816                reentrant='n',
11817          MATR_ASSE       =SIMP(statut='o',
11818                                typ=(matr_asse_depl_r,matr_asse_temp_r,
11819                                     matr_asse_pres_r) ),
11820          PRE_COND        =SIMP(statut='f',typ='TXM',defaut="LDLT_INC",into=("LDLT_INC",) ),
11821          NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ),  
11822          INFO            =SIMP(statut='f',typ='I',into=(1,2) ),
11823 )  ;
11824
11825 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
11826 #            CONFIGURATION MANAGEMENT OF EDF VERSION
11827 # ======================================================================
11828 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
11829 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
11830 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
11831 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
11832 # (AT YOUR OPTION) ANY LATER VERSION.                                 
11833 #
11834 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
11835 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
11836 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
11837 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
11838 #
11839 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
11840 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
11841 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
11842 # ======================================================================
11843 FACT_INTE_SPEC=OPER(nom="FACT_INTE_SPEC",op= 117,sd_prod=interspfact,
11844                     fr="Factorisation d une matrice interspectrale hermitienne",
11845                     docu="U4.36.04-f",reentrant='n',
11846             UIinfo={"groupes":("Fonction",)},
11847          regles=(ENSEMBLE('FREQ_FIN','NB_POIN'),),
11848 #  regle non indiquée dans la doc U         
11849          INTE_SPEC       =SIMP(statut='o',typ=tabl_intsp ),
11850          NUME_VITE_FLUI  =SIMP(statut='f',typ='I' ),
11851          FREQ_INIT       =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
11852          FREQ_FIN        =SIMP(statut='f',typ='R' ),
11853          NB_POIN         =SIMP(statut='f',typ='I',defaut= 0 ),
11854          SUR_ECHAN       =SIMP(statut='f',typ='R',defaut= 1. ),
11855          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
11856 )  ;
11857
11858 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
11859 #            CONFIGURATION MANAGEMENT OF EDF VERSION
11860 # ======================================================================
11861 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
11862 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
11863 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
11864 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
11865 # (AT YOUR OPTION) ANY LATER VERSION.                                 
11866 #
11867 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
11868 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
11869 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
11870 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
11871 #
11872 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
11873 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
11874 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
11875 # ======================================================================
11876 # RESPONSABLE VABHHTS J.PELLET
11877 def fact_ldlt_prod(MATR_ASSE,**args):
11878   if AsType(MATR_ASSE) == matr_asse_depl_r : return matr_asse_depl_r
11879   if AsType(MATR_ASSE) == matr_asse_depl_c : return matr_asse_depl_c
11880   if AsType(MATR_ASSE) == matr_asse_temp_r : return matr_asse_temp_r
11881   if AsType(MATR_ASSE) == matr_asse_temp_c : return matr_asse_temp_c
11882   if AsType(MATR_ASSE) == matr_asse_pres_r : return matr_asse_pres_r
11883   if AsType(MATR_ASSE) == matr_asse_pres_c : return matr_asse_pres_c
11884   raise AsException("type de concept resultat non prevu")
11885
11886 FACT_LDLT=OPER(nom="FACT_LDLT",op=14,sd_prod=fact_ldlt_prod,fr="Factorisation en place ou hors place",
11887                docu="U4.55.01-g",reentrant='f',
11888             UIinfo={"groupes":("Résolution",)},
11889          regles=(EXCLUS('BLOC_DEBUT','DDL_DEBUT'),
11890                  EXCLUS('BLOC_FIN','DDL_FIN'),),
11891          MATR_ASSE       =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_temp_r,
11892                                                matr_asse_temp_c,matr_asse_pres_r,matr_asse_pres_c) ),
11893          STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
11894          NPREC           =SIMP(statut='f',typ='I',defaut=8,val_min=0,),
11895          PRE_COND        =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SANS","DIAG") ),
11896          BLOC_DEBUT      =SIMP(statut='f',typ='I',val_min=1,),
11897          DDL_DEBUT       =SIMP(statut='f',typ='I',val_min=1,),
11898          BLOC_FIN        =SIMP(statut='f',typ='I',val_min=1,),
11899          DDL_FIN         =SIMP(statut='f',typ='I',val_min=1,),
11900 #
11901          EPS             =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
11902 #
11903          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
11904          INFO            =SIMP(statut='f',typ='I',into=(1,2) ),
11905 )  ;
11906
11907 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
11908 #            CONFIGURATION MANAGEMENT OF EDF VERSION
11909 # ======================================================================
11910 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
11911 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
11912 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
11913 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
11914 # (AT YOUR OPTION) ANY LATER VERSION.                                 
11915 #
11916 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
11917 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
11918 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
11919 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
11920 #
11921 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
11922 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
11923 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
11924 # ======================================================================
11925 # NEW 5.3.23
11926 FERMER=PROC(nom="FERMER",op=  10,fr=" ",
11927             docu="U4.12.02-b",
11928             UIinfo={"groupes":("Gestion du travail",)},
11929          UNITE           =SIMP(statut='o',typ='I',validators=NoRepeat(),max='**' ),  
11930 )  ;
11931
11932 #& MODIF COMMANDE  DATE 06/09/2003   AUTEUR D6BHHJP J.P.LEFEBVRE 
11933 #            CONFIGURATION MANAGEMENT OF EDF VERSION
11934 # ======================================================================
11935 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
11936 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
11937 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
11938 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
11939 # (AT YOUR OPTION) ANY LATER VERSION.                                 
11940 #
11941 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
11942 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
11943 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
11944 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
11945 #
11946 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
11947 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
11948 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
11949 # ======================================================================
11950 FIN=PROC(nom="FIN",op=9999,repetable='n',fr="Fin d'une étude",
11951          docu="U4.11.02-g",
11952             UIinfo={"groupes":("Gestion du travail",)},
11953          HDF             =FACT(statut='f',min=1,max=1,
11954            FICHIER         =SIMP(fr="nom du fichier hdf associe",statut='o',typ='TXM'),
11955          ),
11956          RETASSAGE       =SIMP(fr="provoque le retassage de la base GLOBALE",
11957                                statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ),
11958          PERFORMANCE     =SIMP(fr="provoque l'impression d'un résumé des mesures de temps ",
11959                                statut='f',typ='TXM',defaut="OUI",into=("OUI","NON",) ),
11960          INFO_RESU       =SIMP(fr="provoque l'impression des informations sur les structures de données",
11961                                statut='f',typ='TXM',defaut="OUI",into=("OUI","NON",) ),
11962          FICHIER         =SIMP(statut='f',typ='TXM',defaut="MESSAGE"),
11963 )  ;
11964
11965 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
11966 #            CONFIGURATION MANAGEMENT OF EDF VERSION
11967 # ======================================================================
11968 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
11969 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
11970 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
11971 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
11972 # (AT YOUR OPTION) ANY LATER VERSION.                                 
11973 #
11974 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
11975 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
11976 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
11977 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
11978 #
11979 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
11980 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
11981 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
11982 # ======================================================================
11983 FONC_FLUI_STRU=OPER(nom="FONC_FLUI_STRU",op= 169,sd_prod=fonction,
11984                     docu="U4.35.02-d",reentrant='n',
11985             UIinfo={"groupes":("Fonction",)},
11986          TYPE_FLUI_STRU  =SIMP(statut='o',typ=(type_flui_stru) ),
11987 )  ;
11988
11989 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
11990 #            CONFIGURATION MANAGEMENT OF EDF VERSION
11991 # ======================================================================
11992 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
11993 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
11994 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
11995 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
11996 # (AT YOUR OPTION) ANY LATER VERSION.                                 
11997 #
11998 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
11999 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
12000 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
12001 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
12002 #
12003 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
12004 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
12005 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
12006 # ======================================================================
12007 FORMULE = FORM( nom='FORMULE',op=ops.build_formule,sd_prod=formule,
12008                 docu="U4.31.05-e",
12009                 fr="Définition d une fonction",reentrant = 'n',
12010                 regles=(UN_PARMI('REEL','COMPLEXE'),),
12011
12012 ##### fonctions entieres interdites suite au probleme AL2003-072
12013 #####           regles=(UN_PARMI('REEL','ENTIER','COMPLEXE'),),
12014 #####           ENTIER   = SIMP(typ = 'shell',),
12015
12016                 REEL     = SIMP(typ = 'shell',),
12017                 COMPLEXE = SIMP(typ = 'shell',),
12018 ) ;
12019
12020 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
12021 #            CONFIGURATION MANAGEMENT OF EDF VERSION
12022 # ======================================================================
12023 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
12024 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
12025 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
12026 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
12027 # (AT YOUR OPTION) ANY LATER VERSION.                                 
12028 #
12029 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
12030 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
12031 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
12032 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
12033 #
12034 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
12035 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
12036 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
12037 # ======================================================================
12038 GENE_FONC_ALEA=OPER(nom="GENE_FONC_ALEA",op= 118,sd_prod=table,
12039                     fr="Génération de la fonction temporelle à partir d une matrice interspectrale factorisée",
12040                     docu="U4.36.05-f",reentrant='n',
12041             UIinfo={"groupes":("Fonction",)},
12042          INTE_SPEC_FACT  =SIMP(statut='o',typ=interspfact ),
12043          INIT_ALEA       =SIMP(statut='f',typ='I',defaut= 12312745 ),
12044          NB_TIRAGE       =SIMP(statut='f',typ='I',defaut= 1 ),
12045          NB_POIN         =SIMP(statut='f',typ='I' ),
12046          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
12047 )  ;
12048
12049 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
12050 #            CONFIGURATION MANAGEMENT OF EDF VERSION
12051 # ======================================================================
12052 # COPYRIGHT (C) 1991 - 2002  EDF R&D                  WWW.CODE-ASTER.ORG
12053 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY  
12054 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY  
12055 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR     
12056 # (AT YOUR OPTION) ANY LATER VERSION.                                                  
12057 #                                                                       
12058 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT   
12059 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF            
12060 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU      
12061 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                              
12062 #                                                                       
12063 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE     
12064 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,         
12065 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.        
12066 # ======================================================================
12067 GENE_MATR_ALEA=OPER(nom="GENE_MATR_ALEA",op=  27,sd_prod=matr_asse_gene_r,
12068                fr="Generateur de matrice aleatoire",
12069                docu="U4.36.06-a",reentrant='n',
12070             UIinfo={"groupes":("Fonction",)},
12071    MATR_MOYEN   = SIMP(statut='o', typ=matr_asse_gene_r),
12072    DELTA        = SIMP(statut='f', typ='R', defaut=0.1),
12073    INIT         = SIMP(statut='f', typ='TXM', into=("OUI","NON"),defaut="NON"),
12074 ) ;
12075    
12076
12077 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
12078 #            CONFIGURATION MANAGEMENT OF EDF VERSION
12079 # ======================================================================
12080 # COPYRIGHT (C) 1991 - 2002  EDF R&D                  WWW.CODE-ASTER.ORG
12081 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY  
12082 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY  
12083 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR     
12084 # (AT YOUR OPTION) ANY LATER VERSION.                                                  
12085 #                                                                       
12086 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT   
12087 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF            
12088 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU      
12089 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                              
12090 #                                                                       
12091 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE     
12092 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,         
12093 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.        
12094 # ======================================================================
12095 GENE_VARI_ALEA=OPER(nom="GENE_VARI_ALEA",op=  28,sd_prod=table,
12096                fr="Generateur de variable aleatoire",
12097                docu="U4.36.07-a",reentrant='n',
12098             UIinfo={"groupes":("Fonction",)},
12099    TYPE       = SIMP(statut='f', typ='TXM', into=("EXP_TRONQUEE", "EXPONENTIELLE", "GAMMA"), defaut="EXP_TRONQUEE"),
12100    VALE_MOY   = SIMP(statut='f', typ='R', defaut=0.),
12101    DELTA      = SIMP(statut='f', typ='R', defaut=0.1),
12102    A          = SIMP(statut='f', typ='R', defaut=-1.),
12103    B          = SIMP(statut='f', typ='R', defaut=1.),
12104    INIT       = SIMP(statut='f', typ='TXM', into=("OUI","NON"),defaut="NON"),
12105 ) ;
12106    
12107
12108 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
12109 #            CONFIGURATION MANAGEMENT OF EDF VERSION
12110 # ======================================================================
12111 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
12112 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
12113 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
12114 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
12115 # (AT YOUR OPTION) ANY LATER VERSION.                                 
12116 #
12117 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
12118 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
12119 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
12120 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
12121 #
12122 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
12123 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
12124 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
12125 # ======================================================================
12126 IMPR_CHARGE=PROC(nom="IMPR_CHARGE",op= 158,
12127                  fr="Impression des charges mécaniques de type ddl imposés et relations linéaires entre les ddl",
12128                  docu="U7.04.31-c",
12129             UIinfo={"groupes":("Fonction",)},
12130          FICHIER         =SIMP(statut='f',typ='TXM' ),
12131          FORMAT          =SIMP(statut='f',typ='TXM',defaut="IDEAS",into=("IDEAS",) ),
12132          VERSION         =SIMP(statut='f',typ='I',defaut= 5,into=( 5 ,) ),
12133          CHARGE          =SIMP(statut='o',typ=char_meca,validators=NoRepeat(),max='**', ),
12134 )  ;
12135
12136 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
12137 #            CONFIGURATION MANAGEMENT OF EDF VERSION
12138 # ======================================================================
12139 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
12140 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
12141 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
12142 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
12143 # (AT YOUR OPTION) ANY LATER VERSION.                                 
12144 #
12145 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
12146 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
12147 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
12148 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
12149 #
12150 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
12151 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
12152 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
12153 # ======================================================================
12154 IMPR_CLASSI=PROC(nom="IMPR_CLASSI",op= 114,docu="U7.04.21-b",
12155             UIinfo={"groupes":("Fonction",)},
12156          regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','FREQ','NUME_MODE','LIST_FREQ',
12157                         'LIST_ORDRE' ),),
12158          UNITE_CLASSI    =SIMP(statut='o',typ='I' ),
12159          MODE_MECA       =SIMP(statut='o',typ=mode_meca ),
12160          TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
12161          NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
12162          LIST_ORDRE      =SIMP(statut='f',typ=listis ),
12163          NUME_MODE       =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
12164          FREQ            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
12165          LIST_FREQ       =SIMP(statut='f',typ=listr8 ),
12166          b_prec_crit     =BLOC(condition = "LIST_FREQ != None or FREQ != None",
12167              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
12168              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",
12169                                    into=("RELATIF","ABSOLU") ),
12170          ),
12171          IMPRESSION      =FACT(statut='f',max='**',
12172            regles=(UN_PARMI('NOEUD','GROUP_NO', ),),
12173            NOEUD           =SIMP(statut='f',typ=no   ,validators=NoRepeat(),max='**'),
12174            GROUP_NO        =SIMP(statut='f',typ=grno ,validators=NoRepeat(),max='**'),
12175            NOM_CMP         =SIMP(statut='f',typ='TXM',max='**'),
12176          ),
12177          AMOR            =SIMP(statut='o',typ='R',max='**'),
12178 )  ;
12179
12180 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
12181 #            CONFIGURATION MANAGEMENT OF EDF VERSION
12182 # ======================================================================
12183 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
12184 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
12185 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
12186 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
12187 # (AT YOUR OPTION) ANY LATER VERSION.                                 
12188 #
12189 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
12190 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
12191 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
12192 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
12193 #
12194 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
12195 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
12196 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
12197 # ======================================================================
12198 # RESPONSABLE VABHHTS J.PELLET
12199 IMPR_CO=PROC(nom="IMPR_CO",op=17,docu="U4.91.11-g",
12200             UIinfo={"groupes":("Impression",)},
12201              fr="Impression du contenu d un concept utilisateur (pour développeur)",
12202          regles=(UN_PARMI('CO','CHAINE', ),),
12203          FICHIER         =SIMP(statut='f',typ='TXM',defaut="RESULTAT"),
12204          NIVEAU          =SIMP(statut='f',typ='I',defaut=2,into=(0,1,2) ),
12205          ATTRIBUT        =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","OUI") ),
12206          CONTENU         =SIMP(statut='f',typ='TXM',defaut="OUI",into=("NON","OUI") ),
12207          BASE            =SIMP(statut='f',typ='TXM',defaut="G",into=("","G","V","L") ),
12208          CO              =SIMP(statut='f',typ=assd,validators=NoRepeat(),max='**'),
12209          CHAINE          =SIMP(statut='f',typ='TXM'),
12210          POSITION        =SIMP(statut='f',typ='I',defaut=1),
12211 )  ;
12212
12213 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
12214 #            CONFIGURATION MANAGEMENT OF EDF VERSION
12215 # ======================================================================
12216 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
12217 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
12218 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
12219 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
12220 # (AT YOUR OPTION) ANY LATER VERSION.                                 
12221 #
12222 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
12223 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
12224 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
12225 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
12226 #
12227 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
12228 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
12229 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
12230 # ======================================================================
12231 # RESPONSABLE MCOURTOI M.COURTOIS
12232 IMPR_COURBE=PROC(nom="IMPR_COURBE",op= 141,fr="Impression, sur fichiers",
12233                  docu="U4.33.01-e",
12234             UIinfo={"groupes":("Fonction",)},
12235          FICHIER         =SIMP(statut='f',typ='TXM',defaut="RESULTAT"),
12236          FORMAT          =SIMP(statut='f',typ='TXM',position='global'
12237                               ,into=("AGRAF","EXCEL","POSTSCRIPT","RESULTAT","COMMANDE","SEISME") ),
12238          b_agraf_post =BLOC(condition = "(FORMAT=='AGRAF') or (FORMAT=='POSTSCRIPT')",fr="Mots-clés communs AGRAF et POSTCRIPT",
12239            BORNE_X         =SIMP(statut='f',typ='R',min=2,max=2,fr="Intervalles de variation des abcisses"),
12240            ECHELLE_X       =SIMP(statut='f',typ='TXM',defaut="LIN",into=("LIN","LOG"),fr="Type d'échelle pour les abcisses" ),
12241            BORNE_Y         =SIMP(statut='f',typ='R',min=2,max=2,fr="Intervalles de variation des ordonnées"),
12242            ECHELLE_Y       =SIMP(statut='f',typ='TXM',defaut="LIN",into=("LIN","LOG"),fr="Type d'échelle pour les ordonnées" ),
12243          ),
12244          b_agraf =BLOC(condition = "(FORMAT=='AGRAF')",fr="Mots-clés propres à AGRAF",
12245            TITRE_GRAPHIQUE =SIMP(statut='f',typ='TXM',fr="Titre associé au graphique" ),
12246            COMMENTAIRE     =SIMP(statut='f',typ='TXM',max='**',fr="Commentaires associés au graphique"),
12247            LEGENDE_X       =SIMP(statut='f',typ='TXM',fr="Légende associée à l axe des abcisses" ),
12248            LEGENDE_Y       =SIMP(statut='f',typ='TXM',fr="Légende associée à l axe des ordonnées" ),
12249            FREQ_GRILLE_X   =SIMP(statut='f',typ='I',defaut= 0,fr="Fréquence de tracage du quadrillage vertical" ),
12250            FREQ_GRILLE_Y   =SIMP(statut='f',typ='I',defaut= 0,fr="Fréquence de tracage du quadrillage horizontal" ),
12251          ), 
12252          b_excel = BLOC(condition = "(FORMAT=='EXCEL')",fr="Mots-clés propres au format Excel",
12253            BORNE_X         =SIMP(statut='f',typ='R',min=2,max=2,fr="Intervalles de variation des abcisses"),
12254            BORNE_Y         =SIMP(statut='f',typ='R',min=2,max=2,fr="Intervalles de variation des ordonnées"),
12255          ),
12256          b_post = BLOC (  condition = "(FORMAT=='POSTSCRIPT')",fr="Mots-clés propres à POSTCRIPT",
12257            TITRE           =SIMP(statut='f',typ='TXM',fr="Titre associé au graphique" ),
12258            LABEL_X         =SIMP(statut='f',typ='TXM',fr="Légende associée à l axe des abcisses" ),
12259            LABEL_Y         =SIMP(statut='f',typ='TXM',fr="Légende associée à l axe des ordonnées" ),
12260            SORTIE          =SIMP(statut='f',typ='TXM',defaut="COULEUR",into=("MONOCHROME","COULEUR"),fr="Type d impression" ),
12261            DATE            =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"),fr="Impression de la date" ),
12262            GRILLE          =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"),fr="Impression du quadrillage" ),
12263            AXE_ZERO_X      =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"),fr="Impression de l axe x égal zéro" ),
12264            AXE_ZERO_Y      =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"),fr="Impression de l axe y égal zéro" ),
12265            PRESENTATION    =SIMP(statut='f',typ='TXM',defaut="PAYSAGE",into=("PAYSAGE","PORTRAIT"),
12266                                  fr="Disposition du graphique sur la feuille" ),
12267            FENETRE         =SIMP(statut='f',typ='TXM',defaut="RECTANGLE",into=("CARREE","RECTANGLE"),
12268                                  fr="Forme de la fenetre contenant le graphique" ),
12269          ),  
12270          COURBE          =FACT(statut='o',max='**',fr="Définition de la courbe à tracer",
12271            regles=(UN_PARMI('FONCTION','LIST_RESU','TABLE','FONC_X','RESU_GENE'),),
12272            FONCTION        =SIMP(statut='f',typ=(fonction, formule, fonction_c),
12273                                  fr="Fonction réelle ou complexe", ),
12274            LIST_RESU       =SIMP(statut='f',typ=listr8,
12275                                  fr="Liste des ordonnees d une fonction réelle définie par deux listes", ),
12276 #  creer le type table            
12277            TABLE           =SIMP(statut='f',typ=table,
12278                                  fr="Nom de la table dont 2 colonnes définissent la fonction",),
12279            FONC_X          =SIMP(statut='f',typ=(fonction,formule),
12280                                  fr="Fonction abscisses d une fonction paramétrique",),
12281            RESU_GENE       =SIMP(statut='f',typ=tran_gene, ), 
12282            b_fonction      =BLOC(condition = "FONCTION != None",                          
12283              LIST_PARA       =SIMP(statut='f',typ=listr8 ),
12284            ),   
12285            b_fonction_c  =BLOC(condition = "AsType(FONCTION) == fonction_c",
12286                                  fr="Fonction complexe définie par le mot-clé fonction",
12287              PARTIE          =SIMP(statut='f',typ='TXM',into=("REEL","IMAG") ),           
12288            ),
12289            b_list_resu     =BLOC(condition = "LIST_RESU != None",                                
12290              LIST_PARA       =SIMP(statut='o',typ=listr8 ),
12291            ),  
12292            b_table         =BLOC(condition = "TABLE != None",                                         
12293              PARA_X          =SIMP(statut='o',typ='TXM',
12294                                    fr="Paramètre de la table associé aux abcisses de la fonction à tracer" ),
12295              PARA_Y          =SIMP(statut='o',typ='TXM',
12296                                    fr="Paramètre de la table associé aux ordonnées de la fonction à tracer" ),        
12297            ), 
12298            b_fonc_x        =BLOC(condition = "FONC_X != None",                                          
12299              FONC_Y          =SIMP(statut='o',typ=(fonction,formule),fr="Fonction ordonnées d une fonction paramétrique" ),
12300              PARA            =SIMP(statut='f',typ='TXM',defaut="FONC_X",into=("FONC_X","FONC_Y"),
12301                                    fr="Permutation des roles des deux fonctions" ),
12302              LIST_PARA       =SIMP(statut='f',typ=listr8 ),                
12303            ),
12304            b_resu_gene     =BLOC(condition = "RESU_GENE != None",                                
12305              regles=(UN_PARMI('NOEUD_CHOC','GROUP_NO_CHOC'),),                      
12306              NOEUD_CHOC      =SIMP(statut='f',typ=no),
12307              GROUP_NO_CHOC   =SIMP(statut='f',typ=grno),
12308              PARA_X          =SIMP(statut='o',typ='TXM'),
12309              PARA_Y          =SIMP(statut='o',typ='TXM'),
12310              LIST_PARA       =SIMP(statut='f',typ=listr8 ),   
12311              SOUS_STRUC      =SIMP(statut='f',typ='TXM' ),
12312              INTITULE        =SIMP(statut='f',typ='TXM' ),               
12313            ), 
12314                  
12315                
12316            LEGENDE         =SIMP(statut='f',typ='TXM',fr="Légende associée à la courbe" ),
12317            STYLE           =SIMP(statut='f',typ='TXM',defaut="LIGNE",fr="Style de la ligne représentant la courbe",
12318                                  into=("LIGNE","POINTILLE","POINT","POINT_RELIE") ),
12319            COULEUR         =SIMP(statut='f',typ='TXM',fr="Couleur associée à la courbe",
12320                                  into=("NOIR","ROUGE","VERT_FONCE","BLEU",
12321                                        "MAGENTA","CYAN","VERT","SIENNE","ORANGE",
12322                                        "POURPRE","JAUNE","DAIM","TURQUOISE","VIOLET",
12323                                        "BRUN","CORAIL","MARRON","MAUVE","MARRON_CLAIR") ),
12324            MARQUEUR        =SIMP(statut='f',typ='TXM',fr="Type du marqueur associé à la courbe",
12325                                  into=("POINT_F","CARRE_F","TRIANGLE_F",
12326                                        "LOSANGE_F","ETOILE_F","FUSEE_F","POINT",
12327                                        "CARRE","TRIANGLE","LOSANGE","ETOILE","FUSEE",
12328                                        "PLUS","X","CERCLE","CERCLE_P","CARRE_P",
12329                                        "LOSANGE_P","CERCLE_P_X","LOSANGE_P_X",
12330                                        "CERCLE_X","CARRE_X","LOSANGE_X") ),
12331             b_agraf =BLOC(condition = "(FORMAT=='AGRAF')",fr="Mots-clés propres à AGRAF",
12332               TRI             =SIMP(statut='f',typ='TXM',defaut="N",
12333                                     fr="Choix du tri effectué sur les abcisses ou sur les ordonnées",
12334                                     into=("N","X","Y","XY","YX") ),
12335               FREQ_MARQUEUR   =SIMP(statut='f',typ='I',defaut= 0,
12336                                     fr="Fréquence d impression du marqueur associé à la courbe", ),          
12337             ), 
12338          ),
12339 )  ;
12340
12341 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
12342 #            CONFIGURATION MANAGEMENT OF EDF VERSION
12343 # ======================================================================
12344 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
12345 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
12346 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
12347 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
12348 # (AT YOUR OPTION) ANY LATER VERSION.                                 
12349 #
12350 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
12351 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
12352 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
12353 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
12354 #
12355 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
12356 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
12357 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
12358 # ======================================================================
12359 # RESPONSABLE GNICOLAS G.NICOLAS
12360 IMPR_FICO_HOMA=PROC(nom="IMPR_FICO_HOMA",op= 189, docu="U7.04.01-b",
12361             UIinfo={"groupes":("Fonction",)},
12362                     fr="Imprime le fichier de configuration de HOMARD.",
12363                     ang="Writes the configuration file for HOMARD.",
12364 #
12365 # 1. Le niveau d'information
12366 #
12367          INFO           =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
12368 #
12369 # 2. Langue des messages issus de HOMARD
12370 #
12371          LANGUE =SIMP(statut='f',typ='TXM',defaut="FRANCAIS",    
12372                                into=("FRANCAIS","FRENCH","ANGLAIS","ENGLISH",),
12373                            fr="Langue des messages issus de HOMARD.",
12374                            ang="Language for HOMARD messages." ),
12375 #
12376 # 3. Le nom local du fichier de configuration HOMARD
12377 #
12378          FICHIER_CONF    =SIMP(statut='o',typ='TXM'),
12379 #
12380 # 4. Le nom local du fichier de données HOMARD
12381 #
12382          FICHIER_DONN    =SIMP(statut='f',typ='TXM'),
12383 #
12384 # 5. Gestion des éléments autres que des simplexes
12385 #       0 : autres elements refuses (defaut)
12386 #       1 : raffinement sur les simplexes, mais autres acceptes
12387 #       2 : tous
12388 #
12389          NON_SIMPLEXE   = SIMP(statut='f',typ='I',defaut=0,into=(0,1,2),
12390                           fr="Acceptation d'éléments quad, hexa et penta",
12391                           ang="quad, hexa and penta elements allowed" ),
12392 #
12393 # 6. Le type de traitement :
12394 #
12395          TRAITEMENT      =FACT(statut='o',
12396 #
12397 # 6.1. TROIS CHOIX EXCLUSIFS :
12398 #
12399 #      A. ADAPTATION PAR UN INDICATEUR D'ERREUR, AVEC TROIS VARIANTES :
12400 #         . RAFFINEMENT ET DERAFFINEMENT
12401 #         . RAFFINEMENT SEUL
12402 #         . DERAFFINEMENT SEUL
12403 #      B. ADAPTATION UNIFORME, AVEC DEUX VARIANTES :
12404 #         . RAFFINEMENT SEUL
12405 #         . DERAFFINEMENT SEUL
12406 #         . RIEN : LE MAILLAGE EST LE MEME A LA SORTIE ET A L'ENTREE
12407 #      C. INFORMATION SUR UN MAILLAGE
12408 #
12409            regles=( UN_PARMI('ADAPTATION','UNIFORME','INFORMATION'),),
12410            ADAPTATION      =SIMP(statut='f',typ='TXM',     
12411                                  fr="Adaptation libre",
12412                                  ang="Free adaptation",
12413                                  into=("RAFFINEMENT","DERAFFINEMENT","RAFF_DERA") ),
12414            UNIFORME        =SIMP(statut='f',typ='TXM',     
12415                                  fr="Adaptation uniforme",
12416                                  ang="Uniforme adaptation",
12417                                  into=("RAFFINEMENT","DERAFFINEMENT","RIEN") ),
12418            INFORMATION     =SIMP(statut='f',typ='TXM',
12419                                  fr="Information sur un maillage",
12420                                  ang="Information on a mesh",
12421                                  into=("OUI",) ),
12422 #
12423 # 6.2. LES CONTRAINTES :
12424 #
12425 # 6.2.1. POUR DE L'ADAPTATION LIBRE, IL FAUT :
12426 #      A. LE NUMERO D'ITERATION DU MAILLAGE DE DEPART
12427 #      B. LE NOM MED DU MAILLAGE D'ENTREE
12428 #      C. LE NOM MED DE L'INDICATEUR D'ERREUR
12429 #      D. LE NUMERO D'ITERATION DU MAILLAGE DE DEPART
12430 #      E. LA MISE A JOUR DE SOLUTION
12431 #      F. LE NOM MED DU MAILLAGE DE SORTIE
12432 #      REMARQUE : IL FAUT DES CRITERES, MAIS ON NE SAIT PAS LESQUELS
12433 #
12434 # 6.2.2. POUR DE L'ADAPTATION UNIFORME
12435 #          IL FAUT :
12436 #      A. LE NUMERO D'ITERATION DU MAILLAGE DE DEPART
12437 #      B. LE NOM MED DU MAILLAGE DE SORTIE
12438 #          IL NE FAUT PAS :
12439 #      A. LE NOM MED DE L'INDICATEUR D'ERREUR
12440 #      B. LE NOM DE LA COMPOSANTE DE L'INDICATEUR D'ERREUR
12441 #      C. LES CRITERES
12442 #      REMARQUE : A L'ITERATION 0, OU AUX ITERATIONS SUIVANTES SI MAJ DE SOLUTION,
12443 #                 IL FAUT LE NOM MED DU MAILLAGE D'ENTREE
12444 #
12445 # 6.2.3. POUR DE L'INFORMATION :
12446 #          IL FAUT :
12447 #      A. LE NOM MED DU MAILLAGE D'ENTREE
12448 #          IL NE FAUT PAS :
12449 #      A. LE NOM MED DE L'INDICATEUR D'ERREUR
12450 #      B. LE NOM DE LA COMPOSANTE DE L'INDICATEUR D'ERREUR
12451 #      C. LES CRITERES
12452 #      D. LE NUMERO D'ITERATION DU MAILLAGE DE DEPART
12453 #      E. LA MISE A JOUR DE SOLUTION
12454 #
12455            b_maillage_initial =BLOC(condition = "( INFORMATION != None ) or ( ADAPTATION != None ) ",
12456                            fr="Nom MED du maillage en entrée",
12457                            ang="MED name of the in-mesh",
12458                            NOM_MED_MAILLAGE_N   =SIMP(statut='o',typ='TXM',),
12459                            ) ,
12460 #
12461            b_maillage_initial_uniforme =BLOC(condition = "( UNIFORME != None ) ",
12462                            fr="Nom MED du maillage en entrée",
12463                            ang="MED name of the in-mesh",
12464                            NOM_MED_MAILLAGE_N   =SIMP(statut='f',typ='TXM',),
12465                            ) ,
12466 #
12467            b_iteration_maj_champ =BLOC(condition = "( UNIFORME != None ) or ( ADAPTATION != None ) ",
12468                            fr="Nom MED du maillage en sortie, numero d'iteration et mise à jour de champs",
12469                            ang="MED name of the out-mesh, iteration rank and field updating",
12470                            NITER                =SIMP(statut='o',typ='I',
12471                            fr="Numéro d'itération.",
12472                            ang="Iteration number." ),
12473                            NOM_MED_MAILLAGE_NP1 =SIMP(statut='o',typ='TXM',
12474                            fr="Nom MED du maillage en sortie",
12475                            ang="MED name of the out-mesh" ),
12476                            MAJ_CHAM             =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"),
12477                            fr="Mise à jour de champs",
12478                            ang="Field updating" ),
12479                            ) ,
12480 #
12481            b_indicateur_d_erreur  =BLOC(condition = "ADAPTATION != None",
12482                            fr="Indicateur d'erreur",
12483                            ang="Error indicator",
12484                            regles=(AU_MOINS_UN('NUME_ORDRE','INST','RESULTAT'),
12485                                    EXCLUS('NUME_ORDRE','INST'),
12486                                    EXCLUS('NUME_ORDRE','RESULTAT'),
12487                                    PRESENT_PRESENT('RESULTAT','NOM_CHAM'),),
12488                            NOM_MED  =SIMP(statut='o',typ='TXM',
12489                            fr="Nom MED de l'indicateur d'erreur.",
12490                            ang="MED name of error indicator.",),
12491                            COMPOSANTE  =SIMP(statut='o',typ='TXM',
12492                            fr="Nom de la composante de l'indicateur d'erreur retenue.",
12493                            ang="Name of the selected component of the error indicator.",),
12494                            NUME_ORDRE  =SIMP(statut='f',typ='I',
12495                            fr="Numero d'ordre de l'indicateur.",
12496                            ang="Rank number of the error indicator.",),
12497                            INST        =SIMP(statut='f',typ='R',
12498                            fr="Instant de l'indicateur.",
12499                            ang="Instant of the error indicator.",),
12500                            b_precision     =BLOC(condition="(INST != None)",
12501                              PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3,
12502                              fr="Précision sur le choix de l'instant associé",
12503                              ang="Accuracy over instant choice" ),
12504                              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU"),
12505                              fr="Critère de précision sur le choix de l'instant associé",
12506                              ang="Accuracy criterium over instant choice" ),),
12507                            RESULTAT  =SIMP(statut='f',typ=(evol_elas,evol_noli,evol_ther),
12508                            fr="Concept contenant l'indicateur.",
12509                            ang="Conceipt wich contains the error indicator.",),
12510                            NOM_CHAM  =SIMP(statut='f',typ='TXM',
12511                            fr="Nom du champ dans le résultat de l'indicateur.",
12512                            ang="Name of the field of the error indicator.",),
12513                            ) ,
12514 #
12515            b_critere_de_raffinement =BLOC( condition = "( ADAPTATION == 'RAFF_DERA' ) or ( ADAPTATION == 'RAFFINEMENT' )" ,
12516                            fr="Critère de raffinement.",
12517                            ang="Refinement threshold.",
12518                            regles=(UN_PARMI ( 'CRIT_RAFF_ABS', 'CRIT_RAFF_REL', 'CRIT_RAFF_PE' ),),
12519                            CRIT_RAFF_ABS   =SIMP(statut='f',typ='R',
12520                                                  fr="Critère absolu",
12521                                                  ang="Absolute threshold"  ),
12522                            CRIT_RAFF_REL   =SIMP(statut='f',typ='R',
12523                                                  fr="Critère relatif",
12524                                                  ang="Relative threshold" ),
12525                            CRIT_RAFF_PE    =SIMP(statut='f',typ='R',
12526                                                  fr="Pourcentage d'éléments",
12527                                                  ang="Percentage of elements" ),
12528                            ) ,
12529 #
12530            b_critere_de_deraffinement =BLOC ( condition = "( ADAPTATION == 'RAFF_DERA' ) or ( ADAPTATION == 'DERAFFINEMENT' )" ,
12531                            fr="Critère de déraffinement.",
12532                            ang="Unrefinement threshold.",
12533                            regles=(UN_PARMI ( 'CRIT_DERA_ABS', 'CRIT_DERA_REL', 'CRIT_DERA_PE' ),),
12534                            CRIT_DERA_ABS   =SIMP(statut='f',typ='R' ,
12535                                                  fr="Critère absolu",
12536                                                  ang="Absolute threshold" ),
12537                            CRIT_DERA_REL   =SIMP(statut='f',typ='R',
12538                                                  fr="Critère relatif",
12539                                                  ang="Relative threshold" ),
12540                            CRIT_DERA_PE    =SIMP(statut='f',typ='R',
12541                                                  fr="Pourcentage d'éléments",
12542                                                  ang="Percentage of elements" ),
12543                            ) ,
12544 #
12545            b_niveau_maximum =BLOC ( condition = " ( ADAPTATION == 'RAFF_DERA' ) or ( ADAPTATION == 'RAFFINEMENT' ) or \
12546                                                   ( UNIFORME == 'RAFFINEMENT' )" ,
12547                            NIVE_MAX        =SIMP(statut='f',typ='I',
12548                                                  fr="Niveau maximum de profondeur de raffinement",
12549                                                  ang="Maximum level for refinement"),
12550                            ) ,
12551 #
12552            b_niveau_minimum =BLOC ( condition = " ( ADAPTATION == 'RAFF_DERA' ) or ( ADAPTATION == 'DERAFFINEMENT' ) or \
12553                                                   ( UNIFORME == 'DERAFFINEMENT' )" ,
12554                            NIVE_MIN        =SIMP(statut='f',typ='I',
12555                                                  fr="Niveau minimum de déraffinement",
12556                                                  ang="Minimum level for unrefinement" ),
12557                            ) ,
12558 #
12559 # 6.3. Le suivi de frontiere eventuel :
12560 #
12561          NOM_MED_MAILLAGE_FRONTIERE =SIMP(statut='f',typ='TXM',
12562                            fr="Nom MED du maillage de la frontiere à suivre",
12563                            ang="MED name of the boundary mesh" ),
12564 #
12565          b_frontiere_1 =BLOC ( condition = "NOM_MED_MAILLAGE_FRONTIERE != None" ,
12566                            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**',
12567                                                  fr="Groupes définissant la frontière",
12568                                                  ang="Groups which define the boundary" ),
12569                                ) ,
12570 #
12571          ),
12572 #
12573 # 7. L'ANALYSE DU MAILLAGE
12574 #
12575          ANALYSE         =FACT(statut='f',
12576                                fr="Analyse du maillage.",
12577                                ang="Mesh analysis.",
12578 #
12579 #    5 CHOIX NON EXCLUSIFS, AVEC DEUX VARIANTES (OUI/NON) :
12580 #    A. NOMBRE DES ELEMENTS
12581 #    B. QUALITE DES ELEMENTS
12582 #    C. INTERPENETRATION DES ELEMENTS
12583 #    D. CONNEXITE DU MAILLAGE
12584 #    E. TAILLE DES DIFFERENTS SOUS-DOMAINES
12585 #
12586            regles=(AU_MOINS_UN('NOMBRE','QUALITE','INTERPENETRATION','CONNEXITE','TAILLE'),),
12587 #
12588          NOMBRE          =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"),
12589                           fr="Nombre de noeuds et éléments du maillage",
12590                           ang="Number of nodes and elements in the mesh" ),
12591 #
12592          QUALITE         =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"),
12593                           fr="Qualité du maillage",
12594                           ang="Mesh quality" ),
12595 #
12596          INTERPENETRATION=SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"),
12597                           fr="Controle de la non interpénétration des éléments.",
12598                           ang="Overlapping checking." ),
12599 #
12600          CONNEXITE       =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"),
12601                           fr="Connexité du maillage.",
12602                           ang="Mesh connexity." ),
12603 #
12604          TAILLE          =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"),
12605                           fr="Tailles des sous-domaines du maillage.",
12606                           ang="Sizes of mesh sub-domains." ),
12607 #
12608          ),
12609 #
12610 )  ;
12611
12612 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
12613 #            CONFIGURATION MANAGEMENT OF EDF VERSION
12614 # ======================================================================
12615 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
12616 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
12617 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
12618 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
12619 # (AT YOUR OPTION) ANY LATER VERSION.                                 
12620 #
12621 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
12622 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
12623 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
12624 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
12625 #
12626 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
12627 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
12628 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
12629 # ======================================================================
12630 IMPR_GENE=PROC(nom="IMPR_GENE",op= 157,
12631                fr="Calcul du dommage subi par une structure soumise à une sollicitation de type aléatoire",
12632                docu="U4.91.02-d",
12633             UIinfo={"groupes":("Impression",)},
12634          GENE            =FACT(statut='o',max='**',
12635            regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE',
12636                           'LIST_INST','LIST_FREQ','TOUT_MODE','TOUT_INST','LIST_ORDRE'),
12637                    EXCLUS('TOUT_MODE','NUME_ORDRE','INST','FREQ','NUME_MODE',
12638                           'LIST_INST','LIST_FREQ','TOUT_ORDRE','TOUT_INST','LIST_ORDRE'),
12639                    EXCLUS('TOUT_INST','NUME_ORDRE','INST','FREQ','NUME_MODE',
12640                           'LIST_INST','LIST_FREQ','TOUT_ORDRE','LIST_ORDRE'),
12641                    EXCLUS('TOUT_CMP_GENE','NUME_CMP_GENE'),
12642                    EXCLUS('TOUT_CHAM','NOM_CHAM'),
12643                    EXCLUS('TOUT_PARA','NOM_PARA'),),
12644 #  faut-il faire des blocs selon le type de RESU_GENE                   
12645            RESU_GENE       =SIMP(statut='o',typ=(vect_asse_gene, tran_gene, mode_gene, harm_gene)),
12646            FORMAT          =SIMP(statut='f',typ='TXM',defaut="RESULTAT",into=("RESULTAT",) ),
12647            FICHIER         =SIMP(statut='f',typ='TXM' ),
12648            TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
12649            NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
12650            LIST_ORDRE      =SIMP(statut='f',typ=listis ),
12651            TOUT_MODE       =SIMP(statut='f',typ='TXM',into=("OUI",) ),
12652            NUME_MODE       =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
12653            INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
12654            LIST_INST       =SIMP(statut='f',typ=listr8 ),
12655            TOUT_INST       =SIMP(statut='f',typ='TXM',into=("OUI",) ),
12656            FREQ            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
12657            LIST_FREQ       =SIMP(statut='f',typ=listr8 ),
12658            b_prec_crit     =BLOC(condition = "LIST_FREQ != None or FREQ != None",
12659              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
12660              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",
12661                                    into=("RELATIF","ABSOLU") ),
12662            ),
12663            TOUT_CMP_GENE   =SIMP(statut='f',typ='TXM',into=("OUI","NON") ),
12664            NUME_CMP_GENE   =SIMP(statut='f',typ='I',max='**'),
12665            TOUT_CHAM       =SIMP(statut='f',typ='TXM',into=("OUI","NON") ),
12666            NOM_CHAM        =SIMP(statut='f',typ='TXM',max='**'),
12667            TOUT_PARA       =SIMP(statut='f',typ='TXM',into=("OUI","NON") ),
12668            NOM_PARA        =SIMP(statut='f',typ='TXM',max='**'),
12669            SOUS_TITRE      =SIMP(statut='f',typ='TXM',max='**'),
12670            INFO_CMP_GENE   =SIMP(statut='f',typ='TXM',into=("OUI","NON") ),
12671            INFO_GENE       =SIMP(statut='f',typ='TXM',into=("OUI","NON") ),
12672          ),
12673 )  ;
12674
12675 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
12676 #            CONFIGURATION MANAGEMENT OF EDF VERSION
12677 # ======================================================================
12678 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
12679 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
12680 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
12681 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
12682 # (AT YOUR OPTION) ANY LATER VERSION.                                 
12683 #
12684 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
12685 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
12686 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
12687 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
12688 #
12689 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
12690 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
12691 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
12692 # ======================================================================
12693 IMPR_JEVEUX=PROC(nom="IMPR_JEVEUX",op=16,docu="U4.91.21-g",
12694             UIinfo={"groupes":("Impression",)},
12695                  fr="Impression de caractéristiques d'objets JEVEUX (pour développeur)",
12696          ENTITE          =SIMP(fr="choix de l'observation",statut='o',typ='TXM',
12697                                into=("DISQUE","MEMOIRE","REPERTOIRE",    
12698                                      "OBJET","ATTRIBUT","SYSTEME") ),
12699          b_objet      =BLOC(condition = "(ENTITE=='OBJET')",
12700             NOMOBJ          =SIMP(fr="nom d'objet",statut='f',typ='TXM' ),  
12701             NUMOC           =SIMP(fr="numéro d objet de collection",statut='f',typ='I' ),  
12702             NOMOC           =SIMP(fr="nom d'objet de collection",statut='f',typ='TXM' ),  
12703          ),
12704          b_attribut   =BLOC(condition = "(ENTITE=='ATTRIBUT')",
12705             NOMOBJ          =SIMP(fr="nom de collection",statut='f',typ='TXM' ),  
12706             NOMATR          =SIMP(fr="nom d attribut de collection",statut='f',typ='TXM',
12707                                   into=('$$DESO','$$IADD','$$IADM','$$NOM','$$LONG',
12708                                       '$$LONO','$$LUTI','$$NUM') ),
12709          ),
12710          b_systeme    =BLOC(condition = "(ENTITE=='SYSTEME')",
12711             CLASSE          =SIMP(statut='o',typ='TXM',into=('G','V','L') ),  
12712             NOMATR          =SIMP(fr="nom d attribut systeme",statut='f',typ='TXM',   
12713                                   into=('$$CARA','$$IADD','$$GENR','$$TYPE','$$MARQ',
12714                                       '$$DOCU','$$ORIG','$$RNOM','$$LTYP','$$LONG',
12715                                       '$$LONO','$$DATE','$$LUTI','$$HCOD','$$INDX',
12716                                       '$$TLEC','$$TECR','$$IADM','$$ACCE','$$USADI') ),
12717          ),
12718          b_repertoire =BLOC(condition = "(ENTITE=='REPERTOIRE')",
12719             CLASSE          =SIMP(statut='f',typ='TXM',into=('G','V','L',' '),defaut=' '),  
12720          ),
12721          b_disque     =BLOC(condition = "(ENTITE=='DISQUE')",
12722             CLASSE          =SIMP(statut='f',typ='TXM' ,into=('G','V','L',' '),defaut=' '),  
12723          ),
12724          IMPRESSION      =FACT(statut='f',
12725            NOM             =SIMP(statut='f',typ='TXM' ),  
12726            UNITE           =SIMP(statut='f',typ='I'),  
12727          ),
12728          COMMENTAIRE     =SIMP(statut='f',typ='TXM' ),  
12729 )  ;
12730
12731 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
12732 #            CONFIGURATION MANAGEMENT OF EDF VERSION
12733 # ======================================================================
12734 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
12735 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
12736 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
12737 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
12738 # (AT YOUR OPTION) ANY LATER VERSION.                                 
12739 #
12740 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
12741 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
12742 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
12743 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
12744 #
12745 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
12746 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
12747 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
12748 # ======================================================================
12749 IMPR_MACR_ELEM=PROC(nom="IMPR_MACR_ELEM",op= 160,
12750                     docu="U7.04.33-d",
12751             UIinfo={"groupes":("Impression",)},
12752          MACR_ELEM_DYNA  =SIMP(statut='o',typ=macr_elem_dyna ),
12753          FICHIER         =SIMP(statut='f',typ='TXM' ),
12754          FORMAT          =SIMP(statut='f',typ='TXM',defaut="IDEAS",
12755                                into=("MISS_3D","IDEAS","CADYRO","PLEXUS") ),
12756          b_ideas         =BLOC(condition = "FORMAT == 'PLEXUS'",
12757            VERSION         =SIMP(statut='f',typ='I',defaut= 5,into=( 5 ,) ),
12758          ),                      
12759          b_plexus         =BLOC(condition = "FORMAT == 'IDEAS'",
12760            VERSION          =SIMP(statut='f',typ='I',defaut= 5,into=( 5 ,) ),
12761          ),             
12762          b_miss_3d       =BLOC(condition = "FORMAT == 'MISS_3D'",
12763            UNITE           =SIMP(statut='f',typ='I',defaut= 26 ),
12764            SOUS_TITRE      =SIMP(statut='f',typ='TXM',max='**'),
12765            AMOR_REDUIT     =SIMP(statut='f',typ='R'  ,max='**'),
12766            GROUP_MA_INTERF =SIMP(statut='o',typ=grma ,max='**'),
12767 #  Ces trois mots cles sont-ils dans le bon bloc et avec le bon statut        
12768            GROUP_MA_FLU_STR=SIMP(statut='f',typ=grma,max='**'),
12769            GROUP_MA_FLU_SOL=SIMP(statut='f',typ=grma,max='**'),
12770            GROUP_MA_SOL_SOL=SIMP(statut='f',typ=grma,max='**'),
12771            IMPR_MODE_MECA  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
12772            IMPR_MODE_STAT  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
12773          ),
12774          b_cadyro        =BLOC(condition = "FORMAT == 'CADYRO'",
12775            SQUELETTE       =SIMP(statut='f',typ=squelette ),
12776            UNITE_MODE_MECA =SIMP(statut='f',typ='I',defaut= 26 ),
12777            UNITE_MODE_STAT =SIMP(statut='f',typ='I',defaut= 27 ),
12778            UNITE_MAILLAGE  =SIMP(statut='f',typ='I',defaut= 28 ),
12779            IMPR_MODE_MECA  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
12780            IMPR_MODE_STAT  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
12781          ),
12782
12783 )  ;
12784
12785 #& MODIF COMMANDE  DATE 11/09/2003   AUTEUR VABHHTS J.PELLET 
12786 #            CONFIGURATION MANAGEMENT OF EDF VERSION
12787 # ======================================================================
12788 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
12789 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
12790 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
12791 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR
12792 # (AT YOUR OPTION) ANY LATER VERSION.
12793 #
12794 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT
12795 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF
12796 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU
12797 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.
12798 #
12799 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE
12800 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,
12801 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.
12802 # ======================================================================
12803 IMPR_MATRICE=PROC(nom="IMPR_MATRICE",op= 159,
12804                   fr="Impression des matrices élémentaires et des matrices assemblées",
12805                   docu="U7.04.32-d",
12806             UIinfo={"groupes":("Impression",)},
12807          regles=(AU_MOINS_UN('MATR_ELEM','MATR_ASSE'),),
12808
12809          MATR_ELEM       =FACT(statut='f',max='**',
12810            FICHIER         =SIMP(statut='f',typ='TXM' ),
12811            FORMAT          =SIMP(statut='f',typ='TXM',defaut="IDEAS",
12812                                  into=("IDEAS","RESULTAT") ),
12813            b_format      =BLOC(condition = "FORMAT == 'IDEAS'",
12814              VERSION         =SIMP(statut='f',typ='I',defaut= 5,into=( 5 ,) ),
12815            ),
12816 #  créer les types matr_elem  et vect_elem
12817            MATRICE         =SIMP(statut='o',typ=(matr_elem, vect_elem)),
12818 #  Quelle regle pour TOUT, NOEUD, GROUP_NO, MAILLE, GROUP_MA
12819            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
12820            NOEUD           =SIMP(statut='f',typ=no   ,validators=NoRepeat(),max='**'),
12821            GROUP_NO        =SIMP(statut='f',typ=grno ,validators=NoRepeat(),max='**'),
12822            MAILLE          =SIMP(statut='f',typ=ma   ,validators=NoRepeat(),max='**'),
12823            GROUP_MA        =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'),
12824            NOM_CMP         =SIMP(statut='f',typ='TXM',max='**'),
12825            GRAIN           =SIMP(statut='f',typ='TXM',defaut="VALEUR",
12826                                  into=("VALEUR","NOEUD","MAILLE") ),
12827            NB_CHIFFRE      =SIMP(statut='f',typ='I',defaut= 4 ),
12828          ),
12829          MATR_ASSE       =FACT(statut='f',max='**',
12830            FICHIER         =SIMP(statut='f',typ='TXM' ),
12831            FORMAT          =SIMP(statut='f',typ='TXM',defaut="IDEAS",
12832                                  into=("IDEAS","RESULTAT") ),
12833            VERSION         =SIMP(statut='f',typ='I',defaut= 5,into=( 5 ,) ),
12834 #  créer le type matr_elem
12835            MATRICE         =SIMP(statut='o',typ=matr_asse_gd),
12836 #  Quelle regle pour TOUT, NOEUD, GROUP_NO, MAILLE, GROUP_MA
12837            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
12838            NOEUD           =SIMP(statut='f',typ=no   ,validators=NoRepeat(),max='**'),
12839            GROUP_NO        =SIMP(statut='f',typ=grno ,validators=NoRepeat(),max='**'),
12840            MAILLE          =SIMP(statut='f',typ=ma   ,validators=NoRepeat(),max='**'),
12841            GROUP_MA        =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'),
12842            OPTION          =SIMP(statut='f',typ='TXM',defaut="SOUS_MATRICE",
12843                                  into=("SOUS_MATRICE","LIGNE","COLONNE") ),
12844            NOM_CMP         =SIMP(statut='f',typ='TXM',max='**'),
12845            GRAIN           =SIMP(statut='f',typ='TXM',defaut="VALEUR",
12846                                  into=("VALEUR","NOEUD") ),
12847            NB_CHIFFRE      =SIMP(statut='f',typ='I',defaut= 4 ),
12848            VALE_ZERO       =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
12849          ),
12850 )  ;
12851
12852 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
12853 #            CONFIGURATION MANAGEMENT OF EDF VERSION
12854 # ======================================================================
12855 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
12856 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
12857 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
12858 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
12859 # (AT YOUR OPTION) ANY LATER VERSION.                                 
12860 #
12861 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
12862 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
12863 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
12864 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
12865 #
12866 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
12867 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
12868 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
12869 # ======================================================================
12870 IMPR_MISS_3D=PROC(nom="IMPR_MISS_3D",op= 162,
12871                   docu="U7.04.11-d",
12872             UIinfo={"groupes":("Impression",)},
12873          regles=(UN_PARMI('INST_INIT','FREQ_INIT'),
12874                  PRESENT_PRESENT('INST_INIT','INST_FIN'),
12875                  PRESENT_PRESENT('FREQ_INIT','FREQ_FIN'),),
12876          MACR_ELEM_DYNA  =SIMP(statut='o',typ=macr_elem_dyna ),
12877          EXCIT           =FACT(statut='f',max='**',
12878            regles=(UN_PARMI('FONC_MULT','COEF_MULT' ),),
12879            VECT_ASSE       =SIMP(statut='f',typ=cham_no_depl_r ),
12880            FONC_MULT       =SIMP(statut='f',typ=(fonction,formule) ),
12881            COEF_MULT       =SIMP(statut='f',typ='R' ),
12882          ),
12883          EXCIT_SOL       =FACT(statut='f',max='**',
12884            DIRECTION       =SIMP(statut='o',typ='R',min=3,max=3),
12885            FONC_SIGNAL     =SIMP(statut='f',typ=(fonction,formule) ),
12886            NOM_CHAM        =SIMP(statut='f',typ='TXM',defaut="DEPL",
12887                                  into=("DEPL","VITE","ACCE","FORC",) ),
12888          ),
12889          INST_INIT       =SIMP(statut='f',typ='R' ),
12890          INST_FIN        =SIMP(statut='f',typ='R' ),
12891          FREQ_INIT       =SIMP(statut='f',typ='R' ),
12892          FREQ_FIN        =SIMP(statut='f',typ='R' ),
12893          PAS             =SIMP(statut='o',typ='R' ),
12894          UNITE           =SIMP(statut='f',typ='I',defaut= 26 ),
12895          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ),
12896          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
12897 )  ;
12898
12899 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
12900 #            CONFIGURATION MANAGEMENT OF EDF VERSION
12901 # ======================================================================
12902 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
12903 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
12904 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
12905 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR
12906 # (AT YOUR OPTION) ANY LATER VERSION.
12907 #
12908 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT
12909 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF
12910 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU
12911 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.
12912 #
12913 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE
12914 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,
12915 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.
12916 # ======================================================================
12917 IMPR_RESU=PROC(nom="IMPR_RESU",op=39,docu="U4.91.01-g",
12918             UIinfo={"groupes":("Impression",)},
12919                fr="Impression du résultat d un calcul (différents formats)",
12920          MODELE          =SIMP(statut='f',typ=modele),
12921          RESU            =FACT(statut='o',max='**',
12922            FORMAT          =SIMP(statut='f',typ='TXM',defaut="RESULTAT",
12923                                  into=("RESULTAT","IDEAS","ASTER","CASTEM","ENSIGHT","MED","GMSH") ),
12924
12925            b_format_ideas  =BLOC(condition="FORMAT=='IDEAS'",fr="version Ideas",
12926              VERSION         =SIMP(statut='f',typ='I',defaut=5,into=(4,5)),
12927            ),
12928
12929            b_format_castem =BLOC(condition="FORMAT=='CASTEM'",fr="version Castem",
12930              NIVE_GIBI       =SIMP(statut='f',typ='I',defaut=10,into=(3,10)),
12931            ),
12932
12933            b_format_gmsh  =BLOC(condition="FORMAT=='GMSH'",fr="version post traitement de GMSH",
12934              VERSION         =SIMP(statut='f',typ='R',defaut=1.0,into=(1.0,1.2)),
12935            ),
12936
12937            regles=(AU_MOINS_UN('CHAM_GD','RESULTAT','MAILLAGE'),
12938                    EXCLUS('CHAM_GD','RESULTAT'),),
12939            MAILLAGE        =SIMP(statut='f',typ=(maillage,squelette)),
12940            INFO_MAILLAGE   =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
12941            CHAM_GD         =SIMP(statut='f',typ=cham_gd),
12942            RESULTAT        =SIMP(statut='f',typ=resultat),# CO() sd a creer !!!
12943
12944            b_sensibilite   =BLOC(condition="RESULTAT != None",
12945                                  fr="Définition des paramètres de sensibilité",
12946                                  ang="Definition of sensitivity parameters",
12947              SENSIBILITE     =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**',
12948                                    fr="Liste des paramètres de sensibilité.",
12949                                    ang="List of sensitivity parameters"),),
12950
12951            b_extrac        =BLOC(condition="RESULTAT != None",
12952                                  fr="extraction d un champ de grandeur",
12953              regles=(EXCLUS('TOUT_CHAM','NOM_CHAM'),
12954                      EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE','NOEUD_CMP',
12955                             'LIST_INST','LIST_FREQ','LIST_ORDRE','NOM_CAS','ANGL'),),
12956              TOUT_CHAM       =SIMP(statut='f',typ='TXM',into=("OUI","NON") ),
12957              NOM_CHAM        =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',into=C_NOM_CHAM_INTO()),
12958
12959              TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
12960              NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
12961              NUME_MODE       =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
12962              LIST_ORDRE      =SIMP(statut='f',typ=listis),
12963              NOEUD_CMP       =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'),
12964              NOM_CAS         =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'),
12965              ANGL            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
12966              FREQ            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
12967              LIST_FREQ       =SIMP(statut='f',typ=listr8),
12968              INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
12969              LIST_INST       =SIMP(statut='f',typ=listr8),
12970
12971              b_acce_reel     =BLOC(condition="(FREQ != None)or(LIST_FREQ != None)or(INST != None)or(LIST_INST != None)",
12972                PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3),
12973                CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
12974              ),
12975            ),
12976
12977            b_parametres    =BLOC(condition="""(RESULTAT != None)and(FORMAT == 'RESULTAT')""",
12978              regles=(EXCLUS('TOUT_PARA','NOM_PARA'),),
12979              INFO_RESU       =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
12980              TOUT_PARA       =SIMP(statut='f',typ='TXM',into=("OUI","NON",) ),
12981              NOM_PARA        =SIMP(statut='f',typ='TXM',max='**'),
12982              FORM_TABL       =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON","EXCEL") ),
12983            ),
12984
12985            b_cmp=BLOC(condition="""((CHAM_GD != None)or(RESULTAT != None))and\
12986                                    ((FORMAT == 'RESULTAT')or(FORMAT == 'IDEAS')or(FORMAT == 'ENSIGHT')or(FORMAT == 'MED'))""",
12987                                  fr="sélection des composantes",
12988              regles=(EXCLUS('TOUT_CMP','NOM_CMP'),),
12989              TOUT_CMP        =SIMP(statut='f',typ='TXM',into=("OUI",) ),
12990              NOM_CMP         =SIMP(statut='f',typ='TXM',max='**'),
12991            ),
12992
12993            b_gmsh=BLOC(condition="""((CHAM_GD != None)or(RESULTAT != None))and((FORMAT == 'GMSH'))""",
12994                                  fr="sélection des composantes et des entités toplogiques",
12995              NOM_CMP         =SIMP(statut='f',typ='TXM',max='**'),
12996              MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
12997              GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
12998            ),
12999
13000            b_topologie=BLOC(condition="""((CHAM_GD != None)or(RESULTAT != None))and\
13001                                    ((FORMAT == 'RESULTAT')or(FORMAT == 'IDEAS')or(FORMAT == 'MED'))""",
13002                                    fr="sélection des entités toplogiques",
13003              TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
13004              NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
13005              GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
13006              MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
13007              GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
13008            ),
13009
13010            b_valeurs         =BLOC(condition="(FORMAT == 'RESULTAT')",
13011                                    fr="sélection sur les valeurs",
13012              VALE_MAX        =SIMP(statut='f',typ='TXM',into=("OUI",) ),
13013              VALE_MIN        =SIMP(statut='f',typ='TXM',into=("OUI",) ),
13014              BORNE_SUP       =SIMP(statut='f',typ='R'),
13015              BORNE_INF       =SIMP(statut='f',typ='R'),
13016              IMPR_COOR       =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
13017              FORMAT_R        =SIMP(statut='f',typ='TXM',defaut="1PE12.5"),
13018            ),
13019
13020            SOUS_TITRE      =SIMP(statut='f',typ='TXM',max='**'),
13021            FICHIER         =SIMP(statut='f',typ='TXM'),
13022          ),
13023          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
13024 ) ;
13025
13026 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
13027 #            CONFIGURATION MANAGEMENT OF EDF VERSION
13028 # ======================================================================
13029 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
13030 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
13031 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
13032 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
13033 # (AT YOUR OPTION) ANY LATER VERSION.                                 
13034 #
13035 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
13036 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
13037 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
13038 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
13039 #
13040 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
13041 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
13042 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
13043 # ======================================================================
13044 IMPR_STURM=PROC(nom="IMPR_STURM",op=32,fr="Calculer et imprimer le nombre de valeurs propres dans un intervalle donné",
13045                 docu="U4.52.01-g",
13046             UIinfo={"groupes":("Résolution",)},
13047          MATR_A          =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r ) ),
13048          MATR_B          =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r ) ),
13049          TYPE_RESU       =SIMP(statut='f',typ='TXM',defaut="DYNAMIQUE",into=("MODE_FLAMB","DYNAMIQUE"),
13050                                fr="Type d analyse" ),
13051          b_dynamique  =BLOC(condition = "TYPE_RESU == 'DYNAMIQUE'",
13052                             fr="Recheche du nombre de fréquences propres",
13053              FREQ_MIN        =SIMP(statut='f',typ='R',defaut= 0.E+0 ,fr="Borne inférieure de l intervalle" ),
13054              FREQ_MAX        =SIMP(statut='o',typ='R',fr="Borne supérieure de l intervalle" ),
13055          ),
13056          b_mode_flamb =BLOC(condition = "TYPE_RESU == 'MODE_FLAMB'",
13057                             fr="Recherche du nombre de charges critiques",
13058              CHAR_CRIT_MIN   =SIMP(statut='o',typ='R',fr="Borne inférieure de l intervalle" ),
13059              CHAR_CRIT_MAX   =SIMP(statut='o',typ='R',fr="Borne supérieure de l intervalle" ),
13060          ),
13061          NPREC_SOLVEUR   =SIMP(statut='f',typ='I',defaut= 8 ),
13062          NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 5 ),
13063          FICHIER         =SIMP(statut='f',typ='TXM',defaut="RESULTAT"),
13064          PREC_SHIFT      =SIMP(statut='f',typ='R',defaut= 1.E-2 ),
13065          SEUIL_FREQ      =SIMP(statut='f',typ='R',defaut= 1.E-2 ),
13066 )  ;
13067
13068 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
13069 #            CONFIGURATION MANAGEMENT OF EDF VERSION
13070 # ======================================================================
13071 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
13072 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
13073 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
13074 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
13075 # (AT YOUR OPTION) ANY LATER VERSION.                                 
13076 #
13077 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
13078 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
13079 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
13080 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
13081 #
13082 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
13083 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
13084 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
13085 # ======================================================================
13086 # RESPONSABLE VABHHTS J.PELLET
13087 IMPR_TABLE=PROC(nom="IMPR_TABLE",op=155,docu="U4.91.03-d",
13088             UIinfo={"groupes":("Impression",)},
13089                 fr="Impression d un concept de type table",
13090          TABLE           =SIMP(statut='o',typ=table),
13091          SENSIBILITE     =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**',
13092                                fr="Liste des paramètres de sensibilité.",
13093                                ang="List of sensitivity parameters"),
13094          FICHIER         =SIMP(statut='f',typ='TXM',defaut="RESULTAT", ),
13095          FORMAT          =SIMP(statut='f',typ='TXM',defaut="EXCEL",
13096                                into=("EXCEL","AGRAF","MOT_CLE","TABLEAU","ASTER") ),
13097          FILTRE          =FACT(statut='f',max='**',
13098            NOM_PARA        =SIMP(statut='o',typ='TXM'),
13099            CRIT_COMP       =SIMP(statut='f',typ='TXM',defaut="EQ",
13100                                  into=("EQ","LT","GT","NE","LE","GE","VIDE",
13101                                        "NON_VIDE","MAXI","ABS_MAXI","MINI","ABS_MINI") ),
13102            b_vale          =BLOC(condition = "(CRIT_COMP in ('EQ','NE','GT','LT','GE','LE'))",
13103               regles=(UN_PARMI('VALE','VALE_I','VALE_K','VALE_C',),),
13104               VALE            =SIMP(statut='f',typ='R'),
13105               VALE_I          =SIMP(statut='f',typ='I'),
13106               VALE_C          =SIMP(statut='f',typ='C'),
13107               VALE_K          =SIMP(statut='f',typ='TXM'),),
13108
13109            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
13110            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),
13111          ),
13112          TRI             =FACT(statut='f',
13113            NOM_PARA        =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**'),
13114            ORDRE           =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',defaut="CROISSANT",
13115                                  into=("CROISSANT","DECROISSANT") ),
13116            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
13117            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),
13118          ),
13119          PAGINATION      =SIMP(statut='f',typ='TXM',max='**'),
13120          FORMAT_R        =SIMP(statut='f',typ='TXM',defaut="1PE12.5"),
13121          FORMAT_C        =SIMP(statut='f',typ='TXM',defaut="MODULE_PHASE",
13122                                     into=("MODULE_PHASE","REEL_IMAG") ),
13123          NOM_PARA        =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'),
13124          TOUT_PARA       =SIMP(statut='f',typ='TXM',into=("OUI",)),
13125          IMPR_FONCTION   =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
13126          TITRE_TABLE     =SIMP(statut='f',typ='TXM',max='**'),
13127          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
13128 )  ;
13129
13130 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
13131 #            CONFIGURATION MANAGEMENT OF EDF VERSION
13132 # ======================================================================
13133 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
13134 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
13135 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
13136 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
13137 # (AT YOUR OPTION) ANY LATER VERSION.                                 
13138 #
13139 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
13140 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
13141 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
13142 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
13143 #
13144 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
13145 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
13146 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
13147 # ======================================================================
13148 INCLUDE=MACRO(nom="INCLUDE",op=ops.build_include,docu="U4.13.01-f",
13149             UIinfo={"groupes":("Gestion du travail",)},
13150              fr="Débranchement vers un fichier de commandes secondaires",
13151              sd_prod=ops.INCLUDE,op_init=ops.INCLUDE_context,fichier_ini=1,
13152          UNITE = SIMP(statut='o',typ='I'),
13153          INFO  = SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
13154 );
13155
13156 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
13157 #            CONFIGURATION MANAGEMENT OF EDF VERSION
13158 # ======================================================================
13159 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
13160 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
13161 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
13162 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
13163 # (AT YOUR OPTION) ANY LATER VERSION.                                 
13164 #
13165 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
13166 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
13167 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
13168 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
13169 #
13170 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
13171 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
13172 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
13173 # ======================================================================
13174 INCLUDE_MATERIAU=MACRO(nom="INCLUDE_MATERIAU",op=-14,docu="U4.43.02-b",
13175             UIinfo={"groupes":("Modélisation",)},
13176                        fr=" ",
13177          sd_prod=ops.INCLUDE_MATERIAU,op_init=ops.INCLUDE_context,fichier_ini=0,
13178          NOM_AFNOR       =SIMP(statut='o',typ='TXM' ),  
13179          TYPE_MODELE     =SIMP(statut='o',typ='TXM',into=("REF","PAR") ),
13180          VARIANTE        =SIMP(statut='o',typ='TXM',     
13181                                into=("A","B","C","D","E","F","G","H","I","J",    
13182                                      "K","L","M","N","O","P","Q","R","S","T","U","V",   
13183                                      "W","X","Y","Z",) ),
13184          TYPE_VALE       =SIMP(statut='o',typ='TXM',into=("NOMI","MINI","MAXI") ),
13185          NOM_MATER       =SIMP(statut='o',typ='TXM' ),  
13186          UNITE           =SIMP(statut='f',typ='I',defaut= 32 ),  
13187          EXTRACTION      =FACT(statut='f',max=99,
13188            COMPOR          =SIMP(statut='o',typ='TXM' ),  
13189            TEMP_EVAL       =SIMP(statut='o',typ='R' ),  
13190          ),
13191          UNITE_LONGUEUR  =SIMP(statut='f',typ='TXM',into=("M","MM"),defaut="M" ),  
13192          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
13193 )  ;
13194
13195 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
13196 #            CONFIGURATION MANAGEMENT OF EDF VERSION
13197 # ======================================================================
13198 # COPYRIGHT (C) 1991 - 2002  EDF R&D                  WWW.CODE-ASTER.ORG
13199 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY  
13200 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY  
13201 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR     
13202 # (AT YOUR OPTION) ANY LATER VERSION.                                                  
13203 #                                                                       
13204 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT   
13205 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF            
13206 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU      
13207 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                              
13208 #                                                                       
13209 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE     
13210 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,         
13211 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.        
13212 # ======================================================================
13213 # RESPONSABLE D6BHHJP J.P.LEFEBVRE
13214 INFO_EXEC_ASTER=OPER(nom="INFO_EXEC_ASTER",op=35,sd_prod=table,
13215                     fr="Récupère différentes informations propres à l'exécution en cours",
13216                     docu="U4.00.00-f",reentrant='n',
13217                     UIinfo={"groupes":("Gestion du travail",)},
13218
13219          regles=(),
13220          LISTE_INFO      =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=2,into=("CPU_RESTANT","CPU",),),
13221          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
13222          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
13223 )  ;
13224
13225 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
13226 #            CONFIGURATION MANAGEMENT OF EDF VERSION
13227 # ======================================================================
13228 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
13229 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
13230 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
13231 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
13232 # (AT YOUR OPTION) ANY LATER VERSION.                                 
13233 #
13234 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
13235 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
13236 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
13237 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
13238 #
13239 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
13240 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
13241 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
13242 # ======================================================================
13243 # RESPONSABLE G8BHHXD X.DESROCHES
13244 INTE_MAIL_2D=OPER(nom="INTE_MAIL_2D",op=50,sd_prod=courbe,docu="U4.81.11-f",
13245             UIinfo={"groupes":("Post traitements",)},
13246                   fr="Définition d une courbe sur un maillage 2D",reentrant='n',
13247
13248          MAILLAGE        =SIMP(statut='o',typ=(maillage) ),
13249
13250          regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),
13251                  AU_MOINS_UN('DEFI_SEGMENT','DEFI_ARC','DEFI_CHEMIN'),
13252                  PRESENT_ABSENT('DEFI_CHEMIN','DEFI_SEGMENT','DEFI_ARC'),
13253                  PRESENT_ABSENT('DEFI_SEGMENT','NOEUD_ORIG','GROUP_NO_ORIG'),
13254                  PRESENT_ABSENT('DEFI_ARC','NOEUD_ORIG','GROUP_NO_ORIG'),
13255                  EXCLUS('NOEUD_ORIG','GROUP_NO_ORIG'),
13256                  EXCLUS('DEFI_CHEMIN','DEFI_SEGMENT'),
13257                  EXCLUS('DEFI_CHEMIN','DEFI_ARC'),),
13258
13259          TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
13260          GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
13261          MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
13262
13263          DEFI_SEGMENT    =FACT(statut='f',max='**',
13264            regles=(UN_PARMI('ORIGINE','NOEUD_ORIG','GROUP_NO_ORIG'),
13265                    UN_PARMI('EXTREMITE','NOEUD_EXTR','GROUP_NO_EXTR'),),
13266            ORIGINE         =SIMP(statut='f',typ='R',min=2,max=2),  
13267            NOEUD_ORIG      =SIMP(statut='f',typ=no,),
13268            GROUP_NO_ORIG   =SIMP(statut='f',typ=grno,),
13269            EXTREMITE       =SIMP(statut='f',typ='R',min=2,max=2),  
13270            NOEUD_EXTR      =SIMP(statut='f',typ=no,),
13271            GROUP_NO_EXTR   =SIMP(statut='f',typ=grno,),
13272          ),
13273
13274          DEFI_ARC        =FACT(statut='f',max='**',
13275            regles=(UN_PARMI('CENTRE','NOEUD_CENTRE','GROUP_NO_CENTRE'),
13276                    UN_PARMI('RAYON','ORIGINE','NOEUD_ORIG','GROUP_NO_ORIG'),
13277                    UN_PARMI('RAYON','EXTREMITE','NOEUD_EXTR','GROUP_NO_EXTR'),               
13278                    PRESENT_PRESENT('RAYON','SECTEUR'),),
13279            CENTRE          =SIMP(statut='f',typ='R',min=2,max=2),  
13280            NOEUD_CENTRE    =SIMP(statut='f',typ=no,),
13281            GROUP_NO_CENTRE =SIMP(statut='f',typ=grno,),
13282            RAYON           =SIMP(statut='f',typ='R',val_min=0.E+0),  
13283            SECTEUR         =SIMP(statut='f',typ='R',min=2,max=2,
13284                                  val_min=-180.E+0,val_max=180E+0),  
13285            ORIGINE         =SIMP(statut='f',typ='R',min=2,max=2),  
13286            NOEUD_ORIG      =SIMP(statut='f',typ=no,),
13287            GROUP_NO_ORIG   =SIMP(statut='f',typ=grno,),
13288            EXTREMITE       =SIMP(statut='f',typ='R',min=2,max=2),  
13289            NOEUD_EXTR      =SIMP(statut='f',typ=no,),
13290            GROUP_NO_EXTR   =SIMP(statut='f',typ=grno,),
13291            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),  
13292            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",    
13293                                  into=("RELATIF","ABSOLU",) ),
13294          ),
13295
13296          DEFI_CHEMIN     =FACT(statut='f',max='**',
13297            regles=(UN_PARMI('MAILLE','GROUP_MA'),),
13298            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
13299            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
13300          ),
13301
13302          NOEUD_ORIG      =SIMP(statut='f',typ=no,),
13303          GROUP_NO_ORIG   =SIMP(statut='f',typ=grno,),
13304          PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3),  
13305          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
13306 )  ;
13307
13308 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
13309 #            CONFIGURATION MANAGEMENT OF EDF VERSION
13310 # ======================================================================
13311 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
13312 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
13313 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
13314 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
13315 # (AT YOUR OPTION) ANY LATER VERSION.                                 
13316 #
13317 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
13318 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
13319 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
13320 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
13321 #
13322 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
13323 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
13324 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
13325 # ======================================================================
13326 # RESPONSABLE G8BHHXD X.DESROCHES
13327 INTE_MAIL_3D=OPER(nom="INTE_MAIL_3D",op=96,sd_prod=surface,docu="U4.81.12-f",
13328             UIinfo={"groupes":("Post traitements",)},
13329                   fr="Définition d un chemin sur un maillage 3D",reentrant='n',
13330          MAILLAGE        =SIMP(statut='o',typ=maillage),
13331          TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
13332          GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
13333          MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
13334          DEFI_SEGMENT    =FACT(statut='o',max='**',
13335            regles=(UN_PARMI('ORIGINE','NOEUD_ORIG','GROUP_NO_ORIG'),
13336                    UN_PARMI('EXTREMITE','NOEUD_EXTR','GROUP_NO_EXTR'),),
13337            ORIGINE         =SIMP(statut='f',typ='R',min=3,max=3),  
13338            NOEUD_ORIG      =SIMP(statut='f',typ=no,),
13339            GROUP_NO_ORIG   =SIMP(statut='f',typ=grno,),
13340            EXTREMITE       =SIMP(statut='f',typ='R',min=3,max=3),  
13341            NOEUD_EXTR      =SIMP(statut='f',typ=no,),
13342            GROUP_NO_EXTR   =SIMP(statut='f',typ=grno,),
13343          ),
13344          PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-6),  
13345          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
13346 )  ;
13347
13348 #& MODIF COMMANDE  DATE 30/09/2003   AUTEUR VABHHTS J.PELLET 
13349 #            CONFIGURATION MANAGEMENT OF EDF VERSION
13350 # ======================================================================
13351 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
13352 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
13353 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
13354 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
13355 # (AT YOUR OPTION) ANY LATER VERSION.                                 
13356 #
13357 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
13358 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
13359 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
13360 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
13361 #
13362 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
13363 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
13364 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
13365 # ======================================================================
13366 def lire_champ_prod(TYPE_CHAM=None,**args):
13367 # Remarque : si cette liste évolue, il faut penser à mettre à jour son
13368 #            homologue dans macr_adap_mail
13369   if TYPE_CHAM == "NOEU_DBEL_R" : return cham_no_dbel_r
13370   if TYPE_CHAM == "NOEU_DEPL_C" : return cham_no_depl_c
13371   if TYPE_CHAM == "NOEU_DEPL_F" : return cham_no_depl_f
13372   if TYPE_CHAM == "NOEU_DEPL_R" : return cham_no_depl_r
13373   if TYPE_CHAM == "NOEU_DURT_R" : return cham_no_durt_r
13374   if TYPE_CHAM == "NOEU_ENER_R" : return cham_no_ener_r
13375   if TYPE_CHAM == "NOEU_EPSI_R" : return cham_no_epsi_r
13376   if TYPE_CHAM == "NOEU_ERREUR" : return cham_no_erreur
13377   if TYPE_CHAM == "NOEU_FLUX_R" : return cham_no_flux_r
13378   if TYPE_CHAM == "NOEU_GEOM_R" : return cham_no_geom_r
13379   if TYPE_CHAM == "NOEU_G_DEPL_R" : return cham_no_g_depl_r
13380   if TYPE_CHAM == "NOEU_HYDR_R" : return cham_no_hydr_r
13381   if TYPE_CHAM == "NOEU_INST_R" : return cham_no_inst_r
13382   if TYPE_CHAM == "NOEU_INTE_R" : return cham_no_inte_r
13383   if TYPE_CHAM == "NOEU_META_R" : return cham_no_meta_r
13384   if TYPE_CHAM == "NOEU_NEUT_F" : return cham_no_neut_f
13385   if TYPE_CHAM == "NOEU_NEUT_R" : return cham_no_neut_r
13386   if TYPE_CHAM == "NOEU_PRES_R" : return cham_no_pres_r
13387   if TYPE_CHAM == "NOEU_SIEF_R" : return cham_no_sief_r
13388   if TYPE_CHAM == "NOEU_SOUR_R" : return cham_no_sour_r
13389   if TYPE_CHAM == "NOEU_TEMP_F" : return cham_no_temp_f
13390   if TYPE_CHAM == "NOEU_TEMP_R" : return cham_no_temp_r
13391   if TYPE_CHAM == "NOEU_VAR2_R" : return cham_no_var2_r
13392   if TYPE_CHAM == "NOEU_VNOR_C" : return cham_no_vnor_c
13393   if TYPE_CHAM == "ELEM_DBEL_R" : return cham_elem_dbel_r
13394   if TYPE_CHAM == "ELEM_DEPL_C" : return cham_elem_depl_c
13395   if TYPE_CHAM == "ELEM_DEPL_F" : return cham_elem_depl_f
13396   if TYPE_CHAM == "ELEM_DEPL_R" : return cham_elem_depl_r
13397   if TYPE_CHAM == "ELEM_DURT_R" : return cham_elem_durt_r
13398   if TYPE_CHAM == "ELEM_ENER_R" : return cham_elem_ener_r
13399   if TYPE_CHAM == "ELEM_EPSI_R" : return cham_elem_epsi_r
13400   if TYPE_CHAM == "ELEM_ERREUR" : return cham_elem_erreur
13401   if TYPE_CHAM == "ELEM_FLUX_R" : return cham_elem_flux_r
13402   if TYPE_CHAM == "ELEM_GEOM_R" : return cham_elem_geom_r
13403   if TYPE_CHAM == "ELEM_G_DEPL_R" : return cham_elem_g_depl
13404   if TYPE_CHAM == "ELEM_HYDR_R" : return cham_elem_hydr_r
13405   if TYPE_CHAM == "ELEM_INST_R" : return cham_elem_inst_r
13406   if TYPE_CHAM == "ELEM_INTE_R" : return cham_elem_inte_r
13407   if TYPE_CHAM == "ELEM_META_R" : return cham_elem_meta_r
13408   if TYPE_CHAM == "ELEM_NEUT_F" : return cham_elem_neut_f
13409   if TYPE_CHAM == "ELEM_NEUT_R" : return cham_elem_neut_r
13410   if TYPE_CHAM == "ELEM_PRES_R" : return cham_elem_pres_r
13411   if TYPE_CHAM == "ELEM_SIEF_R" : return cham_elem_sief_r
13412   if TYPE_CHAM == "ELEM_SOUR_R" : return cham_elem_sour_r
13413   if TYPE_CHAM == "ELEM_TEMP_F" : return cham_elem_temp_f
13414   if TYPE_CHAM == "ELEM_TEMP_R" : return cham_elem_temp_r
13415   if TYPE_CHAM == "ELEM_VARI_R" : return cham_elem_vari_r
13416   if TYPE_CHAM == "ELEM_VNOR_C" : return cham_elem_vnor_c
13417   if TYPE_CHAM == "ELNO_DBEL_R" : return cham_elem_dbel_r
13418   if TYPE_CHAM == "ELNO_DEPL_C" : return cham_elem_depl_c
13419   if TYPE_CHAM == "ELNO_DEPL_F" : return cham_elem_depl_f
13420   if TYPE_CHAM == "ELNO_DEPL_R" : return cham_elem_depl_r
13421   if TYPE_CHAM == "ELNO_DURT_R" : return cham_elem_durt_r
13422   if TYPE_CHAM == "ELNO_ENER_R" : return cham_elem_ener_r
13423   if TYPE_CHAM == "ELNO_EPSI_R" : return cham_elem_epsi_r
13424   if TYPE_CHAM == "ELNO_ERREUR" : return cham_elem_erreur
13425   if TYPE_CHAM == "ELNO_FLUX_R" : return cham_elem_flux_r
13426   if TYPE_CHAM == "ELNO_GEOM_R" : return cham_elem_geom_r
13427   if TYPE_CHAM == "ELNO_G_DEPL_R" : return cham_elem_g_depl
13428   if TYPE_CHAM == "ELNO_HYDR_R" : return cham_elem_hydr_r
13429   if TYPE_CHAM == "ELNO_INST_R" : return cham_elem_inst_r
13430   if TYPE_CHAM == "ELNO_INTE_R" : return cham_elem_inte_r
13431   if TYPE_CHAM == "ELNO_META_R" : return cham_elem_meta_r
13432   if TYPE_CHAM == "ELNO_NEUT_F" : return cham_elem_neut_f
13433   if TYPE_CHAM == "ELNO_NEUT_R" : return cham_elem_neut_r
13434   if TYPE_CHAM == "ELNO_PRES_R" : return cham_elem_pres_r
13435   if TYPE_CHAM == "ELNO_SIEF_R" : return cham_elem_sief_r
13436   if TYPE_CHAM == "ELNO_SOUR_R" : return cham_elem_sour_r
13437   if TYPE_CHAM == "ELNO_TEMP_F" : return cham_elem_temp_f
13438   if TYPE_CHAM == "ELNO_TEMP_R" : return cham_elem_temp_r
13439   if TYPE_CHAM == "ELNO_VARI_R" : return cham_elem_vari_r
13440   if TYPE_CHAM == "ELNO_VNOR_C" : return cham_elem_vnor_c
13441   if TYPE_CHAM == "ELGA_DBEL_R" : return cham_elem_dbel_r
13442   if TYPE_CHAM == "ELGA_DEPL_C" : return cham_elem_depl_c
13443   if TYPE_CHAM == "ELGA_DEPL_F" : return cham_elem_depl_f
13444   if TYPE_CHAM == "ELGA_DEPL_R" : return cham_elem_depl_r
13445   if TYPE_CHAM == "ELGA_DURT_R" : return cham_elem_durt_r
13446   if TYPE_CHAM == "ELGA_ENER_R" : return cham_elem_ener_r
13447   if TYPE_CHAM == "ELGA_EPSI_R" : return cham_elem_epsi_r
13448   if TYPE_CHAM == "ELGA_ERREUR" : return cham_elem_erreur
13449   if TYPE_CHAM == "ELGA_FLUX_R" : return cham_elem_flux_r
13450   if TYPE_CHAM == "ELGA_GEOM_R" : return cham_elem_geom_r
13451   if TYPE_CHAM == "ELGA_G_DEPL_R" : return cham_elem_g_depl
13452   if TYPE_CHAM == "ELGA_HYDR_R" : return cham_elem_hydr_r
13453   if TYPE_CHAM == "ELGA_INST_R" : return cham_elem_inst_r
13454   if TYPE_CHAM == "ELGA_INTE_R" : return cham_elem_inte_r
13455   if TYPE_CHAM == "ELGA_META_R" : return cham_elem_meta_r
13456   if TYPE_CHAM == "ELGA_NEUT_F" : return cham_elem_neut_f
13457   if TYPE_CHAM == "ELGA_NEUT_R" : return cham_elem_neut_r
13458   if TYPE_CHAM == "ELGA_PRES_R" : return cham_elem_pres_r
13459   if TYPE_CHAM == "ELGA_SIEF_R" : return cham_elem_sief_r
13460   if TYPE_CHAM == "ELGA_SOUR_R" : return cham_elem_sour_r
13461   if TYPE_CHAM == "ELGA_TEMP_F" : return cham_elem_temp_f
13462   if TYPE_CHAM == "ELGA_TEMP_R" : return cham_elem_temp_r
13463   if TYPE_CHAM == "ELGA_VARI_R" : return cham_elem_vari_r
13464   if TYPE_CHAM == "ELGA_VNOR_C" : return cham_elem_vnor_c
13465   if TYPE_CHAM == "NOEU_IRRA_R" : return cham_no_irra_r
13466   if TYPE_CHAM == "ELEM_IRRA_R" : return cham_elem_irra_r
13467   if TYPE_CHAM == "ELNO_IRRA_R" : return cham_elem_irra_r
13468   if TYPE_CHAM == "ELGA_IRRA_R" : return cham_elem_irra_r
13469   raise AsException("type de concept resultat non prevu")
13470
13471 LIRE_CHAMP=OPER(nom="LIRE_CHAMP",op= 192,sd_prod=lire_champ_prod,
13472                 fr="Lire un champ dans un fichier et le stocker dans un concept.",
13473                 docu="U7.02.02-b",reentrant='n',
13474          MAILLAGE        =SIMP(statut='o',typ=maillage,),
13475          FORMAT          =SIMP(statut='f',typ='TXM',defaut="MED",into=("MED",),),
13476          UNITE           =SIMP(statut='f',typ='I',defaut= 81,),  
13477          b_format =BLOC(condition = "FORMAT == 'MED'",
13478          regles=( UN_PARMI('NOM_CMP_IDEM','NOM_CMP'),
13479                   PRESENT_PRESENT('NOM_CMP','NOM_CMP_MED' ),
13480                   EXCLUS('NUME_ORDRE','INST'),
13481                   EXCLUS('NUME_PT','INST'),),
13482             NOM_MED      =SIMP(statut='o',typ='TXM', ),
13483             NOM_CMP_IDEM =SIMP(statut='f',typ='TXM',into=("OUI",), ),
13484             NOM_CMP      =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',),
13485             NOM_CMP_MED  =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',),
13486             NUME_PT      =SIMP(statut='f',typ='I'  ,validators=NoRepeat(),max='**',),
13487             NUME_ORDRE   =SIMP(statut='f',typ='I'  ,validators=NoRepeat(),max='**',
13488                            fr="Numero d ordre du champ à lire",ang="Rank of the field to be read" ),
13489             INST         =SIMP(statut='f',typ='R',fr="Instant associé",ang="Instant" ),
13490 #
13491             b_precision     =BLOC(condition="(INST != None)",
13492               PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3,
13493               fr="Précision sur le choix de l'instant associé",ang="Accuracy over instant choice" ),
13494               CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU"),
13495               fr="Critère de précision sur le choix de l'instant associé",
13496               ang="Accuracy criterium over instant choice" ),),
13497 #
13498             NOM_MAIL_MED =SIMP(statut='f',typ='TXM',),
13499                   ),
13500 #        Remarque : si cette liste évolue, il faut penser à mettre à jour son
13501 #                   homologue dans macr_adap_mail
13502          TYPE_CHAM       =SIMP(statut='o',typ='TXM',
13503                        into=("NOEU_DBEL_R",  "ELEM_DBEL_R",  "ELNO_DBEL_R",  "ELGA_DBEL_R",
13504                              "NOEU_DEPL_C",  "ELEM_DEPL_C",  "ELNO_DEPL_C",  "ELGA_DEPL_C",
13505                              "NOEU_DEPL_F",  "ELEM_DEPL_F",  "ELNO_DEPL_F",  "ELGA_DEPL_F",
13506                              "NOEU_DEPL_R",  "ELEM_DEPL_R",  "ELNO_DEPL_R",  "ELGA_DEPL_R",
13507                              "NOEU_DURT_R",  "ELEM_DURT_R",  "ELNO_DURT_R",  "ELGA_DURT_R",
13508                              "NOEU_ENER_R",  "ELEM_ENER_R",  "ELNO_ENER_R",  "ELGA_ENER_R",
13509                              "NOEU_EPSI_R",  "ELEM_EPSI_R",  "ELNO_EPSI_R",  "ELGA_EPSI_R",
13510                              "NOEU_ERREUR",  "ELEM_ERREUR",  "ELNO_ERREUR",  "ELGA_ERREUR",
13511                              "NOEU_FLUX_R",  "ELEM_FLUX_R",  "ELNO_FLUX_R",  "ELGA_FLUX_R",
13512                              "NOEU_GEOM_R",  "ELEM_GEOM_R",  "ELNO_GEOM_R",  "ELGA_GEOM_R",
13513                              "NOEU_G_DEPL_R","ELEM_G_DEPL_R","ELNO_G_DEPL_R","ELGA_G_DEPL_R",
13514                              "NOEU_HYDR_R",  "ELEM_HYDR_R",  "ELNO_HYDR_R",  "ELGA_HYDR_R",
13515                              "NOEU_INST_R",  "ELEM_INST_R",  "ELNO_INST_R",  "ELGA_INST_R",
13516                              "NOEU_INTE_R",  "ELEM_INTE_R",  "ELNO_INTE_R",  "ELGA_INTE_R",
13517                              "NOEU_META_R",  "ELEM_META_R",  "ELNO_META_R",  "ELGA_META_R",
13518                              "NOEU_NEUT_F",  "ELEM_NEUT_F",  "ELNO_NEUT_F",  "ELGA_NEUT_F",
13519                              "NOEU_NEUT_R",  "ELEM_NEUT_R",  "ELNO_NEUT_R",  "ELGA_NEUT_R",
13520                              "NOEU_PRES_R",  "ELEM_PRES_R",  "ELNO_PRES_R",  "ELGA_PRES_R",
13521                              "NOEU_SIEF_R",  "ELEM_SIEF_R",  "ELNO_SIEF_R",  "ELGA_SIEF_R",
13522                              "NOEU_SOUR_R",  "ELEM_SOUR_R",  "ELNO_SOUR_R",  "ELGA_SOUR_R",
13523                              "NOEU_TEMP_F",  "ELEM_TEMP_F",  "ELNO_TEMP_F",  "ELGA_TEMP_F",
13524                              "NOEU_TEMP_R",  "ELEM_TEMP_R",  "ELNO_TEMP_R",  "ELGA_TEMP_R",
13525                              "NOEU_VAR2_R",  "ELEM_VARI_R",  "ELNO_VARI_R",  "ELGA_VARI_R",
13526                              "NOEU_VNOR_C",  "ELEM_VNOR_C",  "ELNO_VNOR_C",  "ELGA_VNOR_C",
13527                              "NOEU_IRRA_R",  "ELEM_IRRA_R",  "ELNO_IRRA_R",  "ELGA_IRRA_R",) ),
13528          b_modele =BLOC(condition = "TYPE_CHAM!=None and TYPE_CHAM[0:2] == 'EL'",
13529             MODELE      =SIMP(statut='o',typ=modele, ),
13530                   ),
13531          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
13532 )  ;
13533
13534 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
13535 #            CONFIGURATION MANAGEMENT OF EDF VERSION
13536 # ======================================================================
13537 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
13538 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
13539 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
13540 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
13541 # (AT YOUR OPTION) ANY LATER VERSION.                                 
13542 #
13543 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
13544 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
13545 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
13546 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
13547 #
13548 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
13549 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
13550 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
13551 # ======================================================================
13552 LIRE_FONCTION=OPER(nom="LIRE_FONCTION",op=  83,sd_prod=fonction,
13553                    fr="Lecture d une fonction dans un fichier ",
13554                    docu="U4.32.02-f",reentrant='n',
13555             UIinfo={"groupes":("Fonction",)},
13556          UNITE           =SIMP(statut='o',typ='I' ),
13557          NOM_PARA        =SIMP(statut='f',typ='TXM',
13558                                into=("DX","DY","DZ","DRX","DRY","DRZ","TEMP",
13559                                      "INST","X","Y","Z","EPSI","FREQ","PULS","AMOR","ABSC",) ),
13560          NOM_RESU        =SIMP(statut='f',typ='TXM' ),
13561          INTERPOL        =SIMP(statut='f',typ='TXM',max=2,into=("NON","LIN","LOG") ),
13562          PROL_DROITE     =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ),
13563          PROL_GAUCHE     =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ),
13564          NOM_PARA_FONC   =SIMP(statut='f',typ='TXM',
13565                                into=("DX","DY","DZ","DRX","DRY","DRZ","TEMP",
13566                                      "INST","X","Y","Z","EPSI","FREQ","PULS","AMOR","ABSC",) ),
13567          INTERPOL_FONC   =SIMP(statut='f',typ='TXM',max=2,into=("NON","LIN","LOG") ),
13568          PROL_DROITE_FONC=SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ),
13569          PROL_GAUCHE_FONC=SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ),
13570          INFO            =SIMP(statut='f',typ='I',defaut= 2,into=( 1 , 2) ),
13571          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
13572 )  ;
13573
13574 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
13575 #            CONFIGURATION MANAGEMENT OF EDF VERSION
13576 # ======================================================================
13577 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
13578 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
13579 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
13580 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
13581 # (AT YOUR OPTION) ANY LATER VERSION.                                 
13582 #
13583 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
13584 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
13585 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
13586 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
13587 #
13588 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
13589 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
13590 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
13591 # ======================================================================
13592 LIRE_INTE_SPEC=OPER(nom="LIRE_INTE_SPEC",op= 116,sd_prod=tabl_intsp,
13593                     fr="Lecture sur un fichier externe de  fonctions complexes pour créer une matrice interspectrale",
13594                     docu="U4.36.01-f",reentrant='n',
13595             UIinfo={"groupes":("Fonction",)},
13596          UNITE           =SIMP(statut='o',typ='I' ),
13597          FORMAT          =SIMP(statut='f',typ='TXM',defaut="MODULE_PHASE",into=("REEL_IMAG","MODULE_PHASE") ),
13598          NOM_PARA        =SIMP(statut='f',typ='TXM',
13599                                into=("DX","DY","DZ","DRX","DRY","DRZ","TEMP",
13600                                      "INST","X","Y","Z","EPSI","FREQ","PULS","AMOR","ABSC",) ),
13601          NOM_RESU        =SIMP(statut='f',typ='TXM' ),
13602          INTERPOL        =SIMP(statut='f',typ='TXM',max=2,into=("NON","LIN","LOG") ),
13603          PROL_DROITE     =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ),
13604          PROL_GAUCHE     =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ),
13605          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
13606          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
13607 )  ;
13608
13609 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
13610 #            CONFIGURATION MANAGEMENT OF EDF VERSION
13611 # ======================================================================
13612 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
13613 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
13614 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
13615 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
13616 # (AT YOUR OPTION) ANY LATER VERSION.                                 
13617 #
13618 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
13619 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
13620 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
13621 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
13622 #
13623 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
13624 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
13625 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
13626 # ======================================================================
13627 # RESPONSABLE VABHHTS J.PELLET
13628 LIRE_MAILLAGE=OPER(nom="LIRE_MAILLAGE",op=   1,sd_prod=maillage,
13629                    fr="Lecture d'un fichier de maillage",
13630                    ang="Readings of a mesh file",
13631                    docu="U4.21.01-g",reentrant='n',
13632             UIinfo={"groupes":("Maillage",)},
13633 #
13634          UNITE           =SIMP(statut='f',typ='I',defaut= 20 ),
13635 #
13636          FORMAT          =SIMP(statut='f',typ='TXM',defaut="ASTER",into=("ASTER","MED"),
13637                             fr="Format du fichier : ASTER ou MED.",
13638                             ang="Format of the file : ASTER or MED.",),
13639 #
13640          ABSC_CURV       =FACT(statut='f',min=0,
13641                TOUT          =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
13642          ),
13643 #
13644          VERI_MAIL       =FACT(statut='d',
13645                VERIF         =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),  
13646                APLAT         =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),  
13647          ),
13648 #
13649          b_format_med =BLOC( condition = " ( FORMAT == 'MED' ) " ,
13650                            fr="Informations complémentaires pour la lecture MED.",
13651                            ang="Further information for MED readings.",
13652 #
13653 # Pour une lecture dans un fichier MED, on peut préciser le nom sous lequel
13654 # le maillage y a été enregistré. Par défaut, on va le chercher sous le nom du concept à créer.
13655 #
13656               NOM_MED    = SIMP(statut='f',typ='TXM',
13657                             fr="Nom du maillage dans le fichier MED.",
13658                             ang="Name of the mesh into the MED file.",),
13659 #
13660               INFO_MED   = SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
13661 #
13662                            ) ,
13663 #
13664          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
13665 #
13666 )  ;
13667
13668 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
13669 #            CONFIGURATION MANAGEMENT OF EDF VERSION
13670 # ======================================================================
13671 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
13672 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
13673 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
13674 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
13675 # (AT YOUR OPTION) ANY LATER VERSION.                                 
13676 #
13677 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
13678 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
13679 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
13680 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
13681 #
13682 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
13683 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
13684 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
13685 # ======================================================================
13686 def lire_miss_3d_prod(TYPE_RESU,**args):
13687   if TYPE_RESU == "TRANS" : return dyna_trans
13688   if TYPE_RESU == "HARMO" : return dyna_harmo
13689   raise AsException("type de concept resultat non prevu")
13690
13691 LIRE_MISS_3D=OPER(nom="LIRE_MISS_3D",op= 163,sd_prod=lire_miss_3d_prod,
13692                   fr="Restitution au format MISS3D d une évolution harmonique ou transitoire",
13693                   docu="U7.02.31-d",reentrant='n',
13694             UIinfo={"groupes":("Maillage",)},
13695          MACR_ELEM_DYNA  =SIMP(statut='o',typ=macr_elem_dyna ),
13696          UNITE           =SIMP(statut='f',typ='I',defaut= 27 ),
13697          NOM             =SIMP(statut='f',typ='TXM' ),
13698          TYPE_RESU       =SIMP(statut='f',typ='TXM',defaut="TRANS",into=("TRANS","HARMO") ),
13699          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
13700 )  ;
13701
13702 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
13703 #            CONFIGURATION MANAGEMENT OF EDF VERSION
13704 # ======================================================================
13705 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
13706 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
13707 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
13708 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
13709 # (AT YOUR OPTION) ANY LATER VERSION.                                 
13710 #
13711 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
13712 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
13713 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
13714 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
13715 #
13716 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
13717 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
13718 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
13719 # ======================================================================
13720 LIRE_PLEXUS=OPER(nom="LIRE_PLEXUS",op= 184,sd_prod=evol_char,
13721                  fr=" ",
13722                  docu="U7.02.11-b",reentrant='n',
13723             UIinfo={"groupes":("Maillage",)},
13724          regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST','LIST_ORDRE'),),
13725          UNITE           =SIMP(statut='f',typ='I',defaut= 19 ),
13726          FORMAT          =SIMP(statut='f',typ='TXM',defaut="IDEAS",into=("IDEAS",)),
13727          MAIL_PLEXUS     =SIMP(statut='o',typ=maillage ),
13728          MAILLAGE        =SIMP(statut='o',typ=maillage ),
13729          MODELE          =SIMP(statut='o',typ=modele ),
13730          TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
13731          NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
13732          LIST_ORDRE      =SIMP(statut='f',typ=listis ),
13733          INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
13734          LIST_INST       =SIMP(statut='f',typ=listr8 ),
13735          b_prec_crit     =BLOC(condition = "LIST_INST != None or INST != None",
13736              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
13737              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",
13738                                    into=("RELATIF","ABSOLU") ),
13739          ),
13740          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
13741 )  ;
13742
13743 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
13744 #            CONFIGURATION MANAGEMENT OF EDF VERSION
13745 # ======================================================================
13746 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
13747 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
13748 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
13749 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR
13750 # (AT YOUR OPTION) ANY LATER VERSION.
13751 #
13752 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT
13753 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF
13754 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU
13755 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.
13756 #
13757 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE
13758 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,
13759 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.
13760 # ======================================================================
13761 # RESPONSABLE VABHHTS J.PELLET
13762
13763 def lire_resu_prod(TYPE_RESU,**args):
13764   if TYPE_RESU == "EVOL_CHAR" :  return evol_char
13765   if TYPE_RESU == "EVOL_THER" :  return evol_ther
13766   if TYPE_RESU == "EVOL_ELAS" :  return evol_elas
13767   if TYPE_RESU == "EVOL_NOLI" :  return evol_noli
13768   if TYPE_RESU == "DYNA_TRANS" : return dyna_trans
13769   if TYPE_RESU == "DYNA_HARMO" : return dyna_harmo
13770   if TYPE_RESU == "HARM_GENE" :  return harm_gene
13771   if TYPE_RESU == "MODE_MECA" :  return mode_meca
13772   raise AsException("type de concept resultat non prevu")
13773
13774 # pour éviter d'écrire 3 fois cette liste :
13775 def l_nom_cham_pas_elga(): return (
13776      "ACCE", "ACCE_ABSOLU", "CRIT_ELNO_RUPT", "DCHA_ELNO_SIGM",
13777      "DCHA_NOEU_SIGM", "DEDE_ELNO_DLDE", "DEDE_NOEU_DLDE", "DEGE_ELNO_DEPL", "DEGE_NOEU_DEPL",
13778      "DEPL", "DEPL_ABSOLU", "DESI_ELNO_DLSI", "DESI_NOEU_DLSI", "DETE_ELNO_DLTE", "DETE_NOEU_DLTE",
13779      "DURT_ELNO_META", "DURT_NOEU_META", "ECIN_ELEM_DEPL", "EFGE_ELNO_CART", "EFGE_ELNO_DEPL",
13780      "EFGE_NOEU_CART", "EFGE_NOEU_DEPL", "ENDO_ELNO_SIGA", "ENDO_ELNO_SINO", "ENDO_NOEU_SINO",
13781      "ENEL_ELNO_ELGA", "ENEL_NOEU_ELGA", "EPEQ_ELNO_TUYO", "EPGR_ELNO", "EPME_ELNO_DEPL",
13782      "EPMG_ELNO_DEPL", "EPMG_NOEU_DEPL", "EPOT_ELEM_DEPL", "EPSA_ELNO", "EPSA_NOEU",
13783      "EPSG_ELNO_DEPL", "EPSG_NOEU_DEPL", "EPSI_ELNO_DEPL", "EPSI_ELNO_TUYO", "EPSI_NOEU_DEPL",
13784      "EPSP_ELNO", "EPSP_ELNO_ZAC", "EPSP_NOEU", "EPSP_NOEU_ZAC", "EQUI_ELNO_EPME", "EQUI_ELNO_EPSI",
13785      "EQUI_ELNO_SIGM", "EQUI_NOEU_EPME", "EQUI_NOEU_EPSI", "EQUI_NOEU_SIGM", "ERRE_ELEM_NOZ1",
13786      "ERRE_ELEM_NOZ2", "ERRE_ELNO_ELGA", "ERRE_NOEU_ELGA", "ERTH_ELEM_TEMP", "ERTH_ELNO_ELEM",
13787      "ETOT_ELEM", "ETOT_ELNO_ELGA", "FLUX_ELNO_TEMP", "FLUX_NOEU_TEMP", "FORC_NODA", "FSUR_2D",
13788      "FSUR_3D", "FVOL_2D", "FVOL_3D", "GRAD_NOEU_THETA", "HYDR_ELNO_ELGA", "HYDR_NOEU_ELGA",
13789      "INTE_ELNO_ACTI", "INTE_ELNO_REAC", "INTE_NOEU_ACTI", "INTE_NOEU_REAC", "IRRA",
13790      "META_ELNO_TEMP", "META_NOEU_TEMP", "PMPB_ELNO_SIEF", "PMPB_NOEU_SIEF",
13791      "PRES", "PRES_DBEL_DEPL", "PRES_ELNO_DBEL", "PRES_ELNO_IMAG", "PRES_ELNO_REEL",
13792      "PRES_NOEU_DBEL", "PRES_NOEU_IMAG", "PRES_NOEU_REEL",
13793      "RADI_ELNO_SIGM", "RADI_NOEU_SIGM", "REAC_NODA",
13794      "SIEF_ELNO", "SIEF_ELNO_ELGA", "SIEF_NOEU", "SIEF_NOEU_ELGA", "SIEQ_ELNO_TUYO",
13795      "SIGM_ELNO_CART", "SIGM_ELNO_COQU", "SIGM_ELNO_DEPL", "SIGM_ELNO_SIEF",
13796      "SIGM_ELNO_TUYO", "SIGM_ELNO_ZAC", "SIGM_NOEU_CART", "SIGM_NOEU_COQU",
13797      "SIGM_NOEU_DEPL", "SIGM_NOEU_SIEF", "SIGM_NOEU_ZAC", "SIGM_NOZ1_ELGA",
13798      "SIGM_NOZ2_ELGA", "SIPO_ELNO_DEPL", "SIPO_ELNO_SIEF", "SIPO_NOEU_DEPL",
13799      "SIPO_NOEU_SIEF", "SIRE_ELNO_DEPL", "SIRE_NOEU_DEPL", "TEMP", "THETA",
13800      "VALE_CONT", "VALE_NCOU_MAXI", "VARI_ELNO", "VARI_ELNO_COQU",
13801      "VARI_ELNO_ELGA", "VARI_ELNO_TUYO", "VARI_NOEU", "VARI_NOEU_ELGA", "VARI_NON_LOCAL",
13802      "VITE", "VITE_ABSOLU", "VITE_VENT",
13803                            )
13804
13805 LIRE_RESU=OPER(nom="LIRE_RESU",op=150,sd_prod=lire_resu_prod,docu="U7.02.01-d",reentrant='n',
13806             UIinfo={"groupes":("Maillage",)},
13807                fr="Lecture de champs aux noeuds ou par éléments aux noeuds sur un fichier IDEAS ou EnSight",
13808
13809
13810 # 0) mots clés généraux :
13811 #----------------------
13812          TYPE_RESU       =SIMP(statut='o',typ='TXM',into=("EVOL_THER","EVOL_ELAS","EVOL_NOLI","MODE_MECA",
13813                                                           "DYNA_TRANS","DYNA_HARMO","HARM_GENE","EVOL_CHAR") ),
13814
13815          FORMAT          =SIMP(statut='o',typ='TXM',into=("IDEAS","IDEAS_DS58","ENSIGHT","MED") ),
13816
13817          INFO            =SIMP(statut='f',typ='I',into=(1,2) ),
13818          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
13819
13820          regles=(UN_PARMI('MAILLAGE','MODELE'),),
13821          MAILLAGE        =SIMP(statut='f',typ=maillage),
13822          MODELE          =SIMP(statut='f',typ=modele),
13823
13824          NB_VARI         =SIMP(statut='f',typ='I' ),
13825
13826
13827 # 1) blocs selon le format choisi :
13828 #---------------------------------
13829
13830 # 1-1 ideas dataset-58 :
13831 # ----------------------
13832          b_dataset_58 = BLOC(condition="FORMAT=='IDEAS_DS58'",
13833            UNITE           =SIMP(statut='f',typ='I',defaut= 19 ),
13834          ),
13835          b_dataset_58_b = BLOC(condition="(FORMAT=='IDEAS_DS58') and ((TYPE_RESU=='DYNA_TRANS') or\
13836                                         (TYPE_RESU=='DYNA_HARMO') or (TYPE_RESU=='HARM_GENE'))",
13837            UNITE           =SIMP(statut='f',typ='I',defaut= 19 ),
13838            NOM_CHAM=SIMP(statut='o',typ='TXM',into=("DEPL","VITE","ACCE","EPSI_NOEU_DEPL","SIEF_NOEU",) ),
13839            REDEFI_ORIENT=FACT(statut='f',max='**',
13840                               regles=(PRESENT_PRESENT('CODE_DIR','DIRECTION','NOEUD',),),
13841                               CODE_DIR =SIMP(statut='f',typ='I',into=(1,2,3,) ),
13842                               DIRECTION=SIMP(statut='f',typ='R',min=3,max=3,),
13843                               NOEUD    =SIMP(statut='f',typ=no,validators=NoRepeat(),max='**'),),
13844          ),
13845
13846 # 1-2 ideas  :
13847 # ---------
13848          b_ideas         =BLOC(condition="FORMAT=='IDEAS'",
13849            UNITE           =SIMP(statut='f',typ='I',defaut= 19 ),
13850            NOM_CHAM        =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=l_nom_cham_pas_elga()),
13851            FORMAT_IDEAS    =FACT(statut='f',max='**',
13852              regles=(UN_PARMI('POSI_INST','POSI_FREQ'),),
13853              NOM_CHAM        =SIMP(statut='o',typ='TXM',into=l_nom_cham_pas_elga()),
13854              NUME_DATASET    =SIMP(statut='f',typ='I',into=(55,57,2414) ),
13855              RECORD_3        =SIMP(statut='f',typ='I',max=10),
13856              RECORD_6        =SIMP(statut='f',typ='I',max=10),
13857              RECORD_9        =SIMP(statut='f',typ='I',max=10),
13858              POSI_ORDRE      =SIMP(statut='o',typ='I',min=2,max=2),
13859              POSI_NUME_MODE  =SIMP(statut='f',typ='I',min=2,max=2),
13860              POSI_MASS_GENE  =SIMP(statut='f',typ='I',min=2,max=2),
13861              POSI_INST       =SIMP(statut='f',typ='I',min=2,max=2),
13862              POSI_FREQ       =SIMP(statut='f',typ='I',min=2,max=2),
13863              NOM_CMP         =SIMP(statut='o',typ='TXM',max='**'),),
13864          ),
13865 # 1-3 ensight :
13866 # -------------
13867          b_ensight       =BLOC(condition="FORMAT=='ENSIGHT'",
13868            NOM_FICHIER     =SIMP(statut='f',typ='TXM'),
13869            NOM_CHAM        =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=l_nom_cham_pas_elga()),
13870          ),
13871
13872 # 1-4 med :
13873 # ---------
13874          b_med           =BLOC(condition = "FORMAT == 'MED'",fr="Nom du champ dans le fichier MED",
13875            UNITE           =SIMP(statut='f',typ='I',defaut= 81, fr="Le fichier est : fort.n.",),
13876            NOM_CHAM        =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=l_nom_cham_pas_elga()),
13877            FORMAT_MED      =FACT(statut='f',max='**',
13878              NOM_CHAM        =SIMP(statut='o',typ='TXM',into=l_nom_cham_pas_elga()),
13879              NOM_CHAM_MED    =SIMP(statut='o',typ='TXM',               fr="Nom du champ dans le fichier MED.",  ),
13880              NOM_CMP_IDEM    =SIMP(statut='f',typ='TXM',into=("OUI",), fr="Les composantes ont le meme nom dans MED et ASTER.", ),
13881              NOM_CMP         =SIMP(statut='f',typ='TXM',max='**',      fr="Nom des composantes dans ASTER.", ),
13882              NOM_CMP_MED     =SIMP(statut='f',typ='TXM',max='**',      fr="Nom des composantes dans MED.", ),
13883            ),
13884                   ),
13885
13886 # 2) blocs selon le type du résultat :
13887 #---------------------------------
13888          b_mode_meca     =BLOC(condition="TYPE_RESU=='MODE_MECA'",
13889            MATR_A         =SIMP(statut='f',typ=matr_asse_depl_r,),
13890            MATR_B         =SIMP(statut='f',typ=matr_asse_depl_r,),
13891          ),
13892
13893
13894 # 3) autres blocs :
13895 #---------------------------------
13896          b_extrac        =BLOC(condition="1",fr="accès à un champ dans la structure de données résultat",
13897            regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST','FREQ','LIST_FREQ'),),
13898            TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
13899            NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
13900            INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
13901            LIST_INST       =SIMP(statut='f',typ=listr8),
13902            LIST_ORDRE      =SIMP(statut='f',typ=listis),
13903            FREQ            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
13904            LIST_FREQ       =SIMP(statut='f',typ=listr8),
13905
13906            b_acce_reel     =BLOC(condition="(INST != None)or(LIST_INST != None)or(FREQ != None)or(LIST_FREQ != None)",
13907              PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3),
13908              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
13909            ),
13910          ),
13911 )  ;
13912
13913 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
13914 #            CONFIGURATION MANAGEMENT OF EDF VERSION
13915 # ======================================================================
13916 # COPYRIGHT (C) 1991 - 2002  EDF R&D                  WWW.CODE-ASTER.ORG
13917 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY  
13918 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY  
13919 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR     
13920 # (AT YOUR OPTION) ANY LATER VERSION.                                                  
13921 #                                                                       
13922 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT   
13923 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF            
13924 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU      
13925 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                              
13926 #                                                                       
13927 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE     
13928 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,         
13929 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.        
13930 # ======================================================================
13931 def lire_table_prod(TYPE_TABLE,**args):
13932   if TYPE_TABLE == "TABLE"          : return table
13933   if TYPE_TABLE == "TABL_CARA_GEOM" : return tabl_cara_geom
13934   if TYPE_TABLE == "TABL_POST_RELE" : return tabl_post_rele
13935   if TYPE_TABLE == "TABL_POST_USUR" : return tabl_post_usur
13936   if TYPE_TABLE == "TABL_POST_ALEA" : return tabl_post_alea
13937   raise AsException("type de concept resultat non prevu")
13938 LIRE_TABLE=OPER(nom="LIRE_TABLE",op=29,sd_prod=lire_table_prod,
13939                 docu="U7.02.03-a",fr="Lecture d un concept de type table",
13940             UIinfo={"groupes":("Maillage",)},
13941          UNITE           =SIMP(statut='o',typ='I' ),
13942          FORMAT          =SIMP(statut='f',typ='TXM',into=("ASTER",),defaut="ASTER"),
13943          NUME_TABLE      =SIMP(statut='f',typ='I',defaut=1),
13944          TYPE_TABLE      =SIMP(statut='f',typ='TXM',defaut="TABLE",
13945                               into=("TABLE",
13946                                     "TABL_CARA_GEOM",
13947                                     "TABL_POST_RELE",
13948                                     "TABL_POST_USUR",
13949                                     "TABL_POST_ALEA" ) ),
13950          SEPARATEUR      =SIMP(statut='o',typ='TXM'),
13951          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
13952          )  ;
13953
13954 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
13955 #            CONFIGURATION MANAGEMENT OF EDF VERSION
13956 # ======================================================================
13957 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
13958 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
13959 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
13960 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
13961 # (AT YOUR OPTION) ANY LATER VERSION.                                 
13962 #
13963 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
13964 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
13965 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
13966 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
13967 #
13968 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
13969 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
13970 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
13971 # ======================================================================
13972 # RESPONSABLE GNICOLAS G.NICOLAS
13973
13974 from Macro.macr_adap_mail_ops import macr_adap_mail_ops
13975
13976 def macr_adap_mail_prod(self,MAJ_CHAM,ADAPTATION,**args):
13977   maillage_np1=ADAPTATION['MAILLAGE_NP1']
13978   self.type_sdprod(maillage_np1,maillage)
13979   if MAJ_CHAM == None:return None
13980 # Remarque : la liste qui suit doit etre conforme à son homologue de LIRE_CHAMP
13981   for ch in MAJ_CHAM:
13982     t=ch['TYPE_CHAM']
13983     if t == "NOEU_DBEL_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_dbel_r)
13984     if t == "NOEU_DEPL_C":self.type_sdprod(ch['CHAM_MAJ'],cham_no_depl_c)
13985     if t == "NOEU_DEPL_F":self.type_sdprod(ch['CHAM_MAJ'],cham_no_depl_f)
13986     if t == "NOEU_DEPL_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_depl_r)
13987     if t == "NOEU_DURT_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_durt_r)
13988     if t == "NOEU_ENER_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_ener_r)
13989     if t == "NOEU_EPSI_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_epsi_r)
13990     if t == "NOEU_ERREUR":self.type_sdprod(ch['CHAM_MAJ'],cham_no_erreur)
13991     if t == "NOEU_FLUX_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_flux_r)
13992     if t == "NOEU_GEOM_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_geom_r)
13993     if t == "NOEU_G_DEPL_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_g_depl_r)
13994     if t == "NOEU_HYDR_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_hydr_r)
13995     if t == "NOEU_INST_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_inst_r)
13996     if t == "NOEU_INTE_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_inte_r)
13997     if t == "NOEU_META_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_meta_r)
13998     if t == "NOEU_NEUT_F":self.type_sdprod(ch['CHAM_MAJ'],cham_no_neut_f)
13999     if t == "NOEU_NEUT_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_neut_r)
14000     if t == "NOEU_PRES_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_pres_r)
14001     if t == "NOEU_SIEF_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_sief_r)
14002     if t == "NOEU_SOUR_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_sour_r)
14003     if t == "NOEU_TEMP_F":self.type_sdprod(ch['CHAM_MAJ'],cham_no_temp_f)
14004     if t == "NOEU_TEMP_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_temp_r)
14005     if t == "NOEU_VAR2_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_var2_r)
14006     if t == "NOEU_VNOR_C":self.type_sdprod(ch['CHAM_MAJ'],cham_no_vnor_c)
14007     if t == "ELEM_DBEL_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_dbel_r)
14008     if t == "ELEM_DEPL_C":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_depl_c)
14009     if t == "ELEM_DEPL_F":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_depl_f)
14010     if t == "ELEM_DEPL_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_depl_r)
14011     if t == "ELEM_DURT_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_durt_r)
14012     if t == "ELEM_ENER_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_ener_r)
14013     if t == "ELEM_EPSI_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_epsi_r)
14014     if t == "ELEM_ERREUR":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_erreur)
14015     if t == "ELEM_FLUX_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_flux_r)
14016     if t == "ELEM_GEOM_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_geom_r)
14017     if t == "ELEM_G_DEPL_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_g_depl)
14018     if t == "ELEM_HYDR_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_hydr_r)
14019     if t == "ELEM_INST_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_inst_r)
14020     if t == "ELEM_INTE_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_inte_r)
14021     if t == "ELEM_META_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_meta_r)
14022     if t == "ELEM_NEUT_F":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_neut_f)
14023     if t == "ELEM_NEUT_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_neut_r)
14024     if t == "ELEM_PRES_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_pres_r)
14025     if t == "ELEM_SIEF_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_sief_r)
14026     if t == "ELEM_SOUR_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_sour_r)
14027     if t == "ELEM_TEMP_F":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_temp_f)
14028     if t == "ELEM_TEMP_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_temp_r)
14029     if t == "ELEM_VARI_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_vari_r)
14030     if t == "ELEM_VNOR_C":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_vnor_c)
14031     if t == "ELNO_DBEL_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_dbel_r)
14032     if t == "ELNO_DEPL_C":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_depl_c)
14033     if t == "ELNO_DEPL_F":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_depl_f)
14034     if t == "ELNO_DEPL_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_depl_r)
14035     if t == "ELNO_DURT_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_durt_r)
14036     if t == "ELNO_ENER_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_ener_r)
14037     if t == "ELNO_EPSI_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_epsi_r)
14038     if t == "ELNO_ERREUR":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_erreur)
14039     if t == "ELNO_FLUX_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_flux_r)
14040     if t == "ELNO_GEOM_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_geom_r)
14041     if t == "ELNO_G_DEPL_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_g_depl)
14042     if t == "ELNO_HYDR_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_hydr_r)
14043     if t == "ELNO_INST_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_inst_r)
14044     if t == "ELNO_INTE_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_inte_r)
14045     if t == "ELNO_META_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_meta_r)
14046     if t == "ELNO_NEUT_F":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_neut_f)
14047     if t == "ELNO_NEUT_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_neut_r)
14048     if t == "ELNO_PRES_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_pres_r)
14049     if t == "ELNO_SIEF_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_sief_r)
14050     if t == "ELNO_SOUR_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_sour_r)
14051     if t == "ELNO_TEMP_F":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_temp_f)
14052     if t == "ELNO_TEMP_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_temp_r)
14053     if t == "ELNO_VARI_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_vari_r)
14054     if t == "ELNO_VNOR_C":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_vnor_c)
14055     if t == "ELGA_DBEL_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_dbel_r)
14056     if t == "ELGA_DEPL_C":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_depl_c)
14057     if t == "ELGA_DEPL_F":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_depl_f)
14058     if t == "ELGA_DEPL_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_depl_r)
14059     if t == "ELGA_DURT_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_durt_r)
14060     if t == "ELGA_ENER_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_ener_r)
14061     if t == "ELGA_EPSI_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_epsi_r)
14062     if t == "ELGA_ERREUR":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_erreur)
14063     if t == "ELGA_FLUX_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_flux_r)
14064     if t == "ELGA_GEOM_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_geom_r)
14065     if t == "ELGA_G_DEPL_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_g_depl)
14066     if t == "ELGA_HYDR_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_hydr_r)
14067     if t == "ELGA_INST_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_inst_r)
14068     if t == "ELGA_INTE_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_inte_r)
14069     if t == "ELGA_META_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_meta_r)
14070     if t == "ELGA_NEUT_F":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_neut_f)
14071     if t == "ELGA_NEUT_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_neut_r)
14072     if t == "ELGA_PRES_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_pres_r)
14073     if t == "ELGA_SIEF_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_sief_r)
14074     if t == "ELGA_SOUR_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_sour_r)
14075     if t == "ELGA_TEMP_F":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_temp_f)
14076     if t == "ELGA_TEMP_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_temp_r)
14077     if t == "ELGA_VARI_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_vari_r)
14078     if t == "ELGA_VNOR_C":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_vnor_c)
14079     if t == "NOEU_IRRA_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_irra_r)
14080     if t == "ELEM_IRRA_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_irra_r)
14081     if t == "ELNO_IRRA_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_irra_r)
14082     if t == "ELGA_IRRA_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_irra_r)
14083   return None
14084
14085 MACR_ADAP_MAIL=MACRO(nom="MACR_ADAP_MAIL",op=macr_adap_mail_ops,sd_prod=macr_adap_mail_prod,
14086                      fr="Adapter un maillage avec le logiciel HOMARD.",
14087                      ang="Mesh adaptation with HOMARD software.",
14088                      docu="U7.03.01-b",
14089 #
14090 # 1. Le niveau d'information
14091 #
14092          INFO           = SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
14093 #
14094 # 2. Version de HOMARD
14095 #
14096          VERSION_HOMARD = SIMP(statut='f',typ='TXM',defaut="V6_2",
14097                                into=("V6_2", "V6_N", "V6_N_PERSO"),
14098                            fr="Version de HOMARD",
14099                            ang="HOMARD release"),
14100 #
14101 # 3. Langue des messages issus de HOMARD
14102 #
14103          LANGUE = SIMP(statut='f',typ='TXM',defaut="FRANCAIS",    
14104                                into=("FRANCAIS","FRENCH","ANGLAIS","ENGLISH",),
14105                            fr="Langue des messages issus de HOMARD.",
14106                            ang="Language for HOMARD messages." ),
14107 #
14108 # 4. Gestion des éléments autres que des simplexes
14109 #    Remarque : pour le moment on bride le choix 2
14110 #       0 : autres elements refuses (defaut)
14111 #       1 : raffinement sur les simplexes, mais autres acceptes
14112 #       2 : tous
14113 #
14114          NON_SIMPLEXE   = SIMP(statut='f',typ='I',defaut=0,into=(0,1),
14115                           fr="Acceptation d'éléments quad, hexa et penta",
14116                           ang="quad, hexa and penta elements allowed" ),
14117 #
14118 # 5. Le type de traitement :
14119 #
14120          ADAPTATION      =FACT(statut='o',
14121                            fr="Type d'adaptation",
14122                            ang="Type of adaptation",
14123 #
14124 # 5.1. Deux choix d'adaptation exclusifs :
14125 #
14126 # 5.1.
14127 #      A. Selon un indicateur d'erreur, avec trois variantes :
14128 #         . Raffinement et deraffinement
14129 #         . Raffinement seul
14130 #         . Deraffinement seul
14131 #      B. Uniforme, avec trois variantes :
14132 #         . Raffinement seul
14133 #         . Deraffinement seul
14134 #         . Rien : le maillage est le meme a la sortie et a l'entree
14135 #
14136            regles=(
14137                    UN_PARMI('LIBRE','UNIFORME'),
14138                   ),
14139            LIBRE          = SIMP(statut='f',typ='TXM',
14140                                  into=("RAFF_DERA","RAFFINEMENT","DERAFFINEMENT"),    
14141                            fr="Adaptation selon un indicateur d'erreur.",
14142                            ang="Adaptation among an error indicator" ),
14143            UNIFORME       = SIMP(statut='f',typ='TXM',
14144                                  into=("RAFFINEMENT","DERAFFINEMENT","RIEN"),    
14145                            fr="Adaptation uniforme.",
14146                            ang="Uniform adaptation" ),
14147 #
14148 # 5.2. Quel que soit le type de traitement, il faut donner  :
14149 #      A. Le concept du maillage initial
14150 #      B. Le concept du maillage final
14151 #
14152            MAILLAGE_N     = SIMP(statut='o',typ=maillage,
14153                            fr="Maillage avant adaptation",
14154                            ang="Mesh before adaptation" ),
14155            MAILLAGE_NP1   = SIMP(statut='o',typ=(CO,maillage),
14156                            fr="Maillage apres adaptation",
14157                            ang="Mesh after adaptation" ),
14158 #
14159 # 5.3. Pour de l'adaptation libre, il faut l'indicateur d'erreur
14160 #
14161 #
14162            b_indicateur_d_erreur   =BLOC( condition = " LIBRE != None " ,
14163                            fr="Indicateur d'erreur",
14164                            ang="Error indicator",
14165 #
14166 # 5.3.1. Le nom du concept resultat
14167 #
14168                            RESULTAT_N     = SIMP(statut='o',typ=(evol_elas,evol_noli,evol_ther) ,
14169                            fr="Resultat contenant l'indicateur d'erreur",
14170                            ang="Result with error indicator" ),
14171 #
14172 # 5.3.2. Le champ d'indicateur d'erreur
14173 #
14174                            INDICATEUR     = SIMP(statut='o',typ='TXM',     
14175                            fr="Champ de l'indicateur d'erreur",
14176                            ang="Error indicator field" ),
14177 #
14178 # 5.3.3. La composante retenue
14179 #
14180                            NOM_CMP_INDICA = SIMP(statut='o',typ='TXM',
14181                            fr="Composante retenue",
14182                            ang="Selected component" ),
14183 #
14184 # 5.3.4. Le paramètre temporel pour l'indicateur
14185 #
14186                            regles=(EXCLUS('NUME_ORDRE','INST'),),
14187 #
14188 # 5.3.4.1. Soit le numero d'ordre
14189 #
14190                            NUME_ORDRE     = SIMP(statut='f',typ='I',
14191                            fr="Numero d ordre",
14192                            ang="Rank" ),  
14193 #
14194 # 5.3.4.2. Soit l'instant
14195 # 5.3.4.2.1. Sa valeur
14196 #
14197                            INST           = SIMP(statut='f',typ='R',
14198                            fr="Instant associé",
14199                            ang="Instant" ),
14200 #
14201 # 5.3.4.2.2. La précision du choix de l'instant
14202 #
14203                            b_precision     =BLOC(condition="(INST != None)",
14204                              PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3,
14205                              fr="Précision sur le choix de l'instant associé",
14206                              ang="Accuracy over instant choice" ),
14207                              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU"),
14208                              fr="Critère de précision sur le choix de l'instant associé",
14209                              ang="Accuracy criterium over instant choice" ),),
14210 #
14211                            ) ,
14212 #
14213 # 5.4. Les criteres pour de l'adaptation libre :
14214 #        absolu, relatif, en proportion d'entite
14215 # 5.4.1. Pour le raffinement :
14216 #
14217            b_critere_de_raffinement =BLOC( condition = " ( LIBRE == 'RAFF_DERA' ) or ( LIBRE == 'RAFFINEMENT' ) " ,
14218                            fr="Critère de raffinement.",
14219                            ang="Refinement threshold.",
14220                            regles=(UN_PARMI ( 'CRIT_RAFF_ABS', 'CRIT_RAFF_REL', 'CRIT_RAFF_PE' ),),
14221                            CRIT_RAFF_ABS  = SIMP(statut='f',typ='R',
14222                                                    fr="Critère absolu",
14223                                                    ang="Absolute threshold" ),  
14224                            CRIT_RAFF_REL  = SIMP(statut='f',typ='R',
14225                                                    fr="Critère relatif",
14226                                                    ang="Relative threshold" ),  
14227                            CRIT_RAFF_PE   = SIMP(statut='f',typ='R',
14228                                                    fr="Pourcentage d'éléments",
14229                                                    ang="Percentage of elements" ),  
14230                            ) ,
14231 #
14232 # 5.4.2. Pour le deraffinement :
14233 #
14234            b_critere_de_deraffinement =BLOC ( condition = " ( LIBRE == 'RAFF_DERA' ) or ( LIBRE == 'DERAFFINEMENT' ) " ,
14235                            fr="Critère de déraffinement.",
14236                            ang="Unrefinement threshold.",
14237                            regles=(UN_PARMI ( 'CRIT_DERA_ABS', 'CRIT_DERA_REL', 'CRIT_DERA_PE' ),),
14238                            CRIT_DERA_ABS  = SIMP(statut='f',typ='R' ,
14239                                                  fr="Critère absolu",
14240                                                  ang="Absolute threshold" ),  
14241                            CRIT_DERA_REL  = SIMP(statut='f',typ='R',
14242                                                  fr="Critère relatif",
14243                                                  ang="Relative threshold" ),  
14244                            CRIT_DERA_PE   = SIMP(statut='f',typ='R',
14245                                                  fr="Pourcentage d'éléments",
14246                                                  ang="Percentage of elements" ),  
14247                            ) ,
14248 #
14249 # 5.5. Les niveaux extremes pour le maillage adapte
14250 # 5.5.1. Pour le raffinement :
14251 #
14252            b_niveau_maximum =BLOC ( condition = " ( LIBRE == 'RAFF_DERA' ) or ( LIBRE == 'RAFFINEMENT' ) or \
14253                                                   ( UNIFORME == 'RAFFINEMENT' ) " ,
14254                            fr="Niveau maximum de profondeur de raffinement",
14255                            ang="Maximum level for refinement",
14256                            NIVE_MAX       = SIMP(statut='f',typ='I' ),
14257                            ) ,
14258 #
14259 # 5.5.2. Pour le deraffinement :
14260 #
14261            b_niveau_minimum =BLOC ( condition = " ( LIBRE == 'RAFF_DERA' ) or ( LIBRE == 'DERAFFINEMENT' ) or \
14262                                                   ( UNIFORME == 'DERAFFINEMENT' ) " ,
14263                            fr="Niveau minimum de profondeur de déraffinement",
14264                            ang="Minimum level for unrefinement",
14265                            NIVE_MIN       = SIMP(statut='f',typ='I' ),
14266                            ) ,
14267 #
14268          ),
14269 #
14270 # 6. Suivi d'une frontiere
14271 #
14272          MAILLAGE_FRONTIERE = SIMP(statut='f',typ=maillage,
14273                            fr="Maillage de la frontiere à suivre",
14274                            ang="Boundary mesh" ),
14275 #
14276          b_frontiere   =BLOC( condition = " MAILLAGE_FRONTIERE != None " ,
14277                            fr="Groupes définissant la frontière",
14278                            ang="Groups which define the boundary",
14279                            GROUP_MA       = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**' ),
14280                            ) ,
14281 #
14282 # 7. Mise à jour de champs sur le nouveau maillage
14283 #
14284          MAJ_CHAM        =FACT(statut='f',max='**',
14285                            fr="Mise à jour de champs sur le nouveau maillage.",
14286                            ang="Updating of fields over the new mesh.",
14287 #
14288 # 7.1. Le nom du champ qui contiendra le resultat de la mise a jour
14289 #
14290            CHAM_MAJ       = SIMP(statut='o',typ=(CO,cham_gd),
14291                            fr="Nom du champ qui contiendra le champ mis à jour",
14292                            ang="Name of the field for the updated field"),
14293 #
14294 # 7.2. Le type du champ qui contiendra le resultat de la mise a jour
14295 #      Remarque : la liste qui suit doit etre conforme à son homologue de LIRE_CHAMP
14296 #
14297            TYPE_CHAM      = SIMP(statut='o',typ='TXM',
14298                                  into=("NOEU_DBEL_R",  "ELEM_DBEL_R",  "ELNO_DBEL_R",  "ELGA_DBEL_R",
14299                                        "NOEU_DEPL_C",  "ELEM_DEPL_C",  "ELNO_DEPL_C",  "ELGA_DEPL_C",
14300                                        "NOEU_DEPL_F",  "ELEM_DEPL_F",  "ELNO_DEPL_F",  "ELGA_DEPL_F",
14301                                        "NOEU_DEPL_R",  "ELEM_DEPL_R",  "ELNO_DEPL_R",  "ELGA_DEPL_R",
14302                                        "NOEU_DURT_R",  "ELEM_DURT_R",  "ELNO_DURT_R",  "ELGA_DURT_R",
14303                                        "NOEU_ENER_R",  "ELEM_ENER_R",  "ELNO_ENER_R",  "ELGA_ENER_R",
14304                                        "NOEU_EPSI_R",  "ELEM_EPSI_R",  "ELNO_EPSI_R",  "ELGA_EPSI_R",
14305                                        "NOEU_ERREUR",  "ELEM_ERREUR",  "ELNO_ERREUR",  "ELGA_ERREUR",
14306                                        "NOEU_FLUX_R",  "ELEM_FLUX_R",  "ELNO_FLUX_R",  "ELGA_FLUX_R",
14307                                        "NOEU_GEOM_R",  "ELEM_GEOM_R",  "ELNO_GEOM_R",  "ELGA_GEOM_R",
14308                                        "NOEU_G_DEPL_R","ELEM_G_DEPL_R","ELNO_G_DEPL_R","ELGA_G_DEPL_R",
14309                                        "NOEU_HYDR_R",  "ELEM_HYDR_R",  "ELNO_HYDR_R",  "ELGA_HYDR_R",
14310                                        "NOEU_INST_R",  "ELEM_INST_R",  "ELNO_INST_R",  "ELGA_INST_R",
14311                                        "NOEU_INTE_R",  "ELEM_INTE_R",  "ELNO_INTE_R",  "ELGA_INTE_R",
14312                                        "NOEU_META_R",  "ELEM_META_R",  "ELNO_META_R",  "ELGA_META_R",
14313                                        "NOEU_NEUT_F",  "ELEM_NEUT_F",  "ELNO_NEUT_F",  "ELGA_NEUT_F",
14314                                        "NOEU_NEUT_R",  "ELEM_NEUT_R",  "ELNO_NEUT_R",  "ELGA_NEUT_R",
14315                                        "NOEU_PRES_R",  "ELEM_PRES_R",  "ELNO_PRES_R",  "ELGA_PRES_R",
14316                                        "NOEU_SIEF_R",  "ELEM_SIEF_R",  "ELNO_SIEF_R",  "ELGA_SIEF_R",
14317                                        "NOEU_SOUR_R",  "ELEM_SOUR_R",  "ELNO_SOUR_R",  "ELGA_SOUR_R",
14318                                        "NOEU_TEMP_F",  "ELEM_TEMP_F",  "ELNO_TEMP_F",  "ELGA_TEMP_F",
14319                                        "NOEU_TEMP_R",  "ELEM_TEMP_R",  "ELNO_TEMP_R",  "ELGA_TEMP_R",
14320                                        "NOEU_VAR2_R",  "ELEM_VARI_R",  "ELNO_VARI_R",  "ELGA_VARI_R",
14321                                        "NOEU_VNOR_C",  "ELEM_VNOR_C",  "ELNO_VNOR_C",  "ELGA_VNOR_C",
14322                                        "NOEU_IRRA_R",  "ELEM_IRRA_R",  "ELNO_IRRA_R",  "ELGA_IRRA_R",),
14323                            fr="Type du champ qui contiendra le champ mis à jour",
14324                            ang="Type of the field for the updated field" ),
14325 #
14326 # 7.3. Le nom du resultat du champ a interpoler
14327 #
14328            RESULTAT       = SIMP(statut='o',
14329                                  typ=(evol_elas,evol_noli,evol_ther),
14330                            fr="Resultat contenant le champ à mettre à jour",
14331                            ang="Result with field to be updated" ),
14332 #
14333 # 7.4. Le nom du champ a interpoler
14334 #
14335            NOM_CHAM       = SIMP(statut='o',typ='TXM',
14336                            fr="Nom du champ à mettre à jour",
14337                            ang="Name of the field to be updated" ),
14338 #
14339 # 7.5. Le paramètre temporel pour le champ a interpoler
14340 #
14341                            regles=(EXCLUS('NUME_ORDRE','INST'),),
14342 #
14343 # 7.5.1. Soit le numero d'ordre
14344 #
14345            NUME_ORDRE     = SIMP(statut='f',typ='I',
14346                            fr="Numero d ordre du champ à mettre à jour",
14347                            ang="Rank of the field to be updated" ),
14348 #
14349 # 7.5.2. Soit l'instant
14350 # 7.5.2.1. Sa valeur
14351 #
14352            INST           = SIMP(statut='f',typ='R',
14353                            fr="Instant associé",
14354                            ang="Instant" ),
14355 #
14356 # 7.5.2.2. La précision du choix de l'instant
14357 #
14358                            b_precision     =BLOC(condition="(INST != None)",
14359                              PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3,
14360                              fr="Précision sur le choix de l'instant associé",
14361                              ang="Accuracy over instant choice" ),
14362                              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU"),
14363                              fr="Critère de précision sur le choix de l'instant associé",
14364                              ang="Accuracy criterium over instant choice" ),),
14365          ),
14366 #
14367 # 8. Les options d'analyse de maillage ; par defaut, on ne fait que les nombres
14368 # 8.1. Nombre de noeuds et éléments
14369 #
14370          NOMBRE         = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"),
14371                           fr="Nombre de noeuds et éléments du maillage",
14372                           ang="Number of nodes and éléments in the mesh" ),
14373 #
14374 # 8.2. Determination de la qualité des éléments du maillage
14375 #
14376          QUALITE        = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"),
14377                           fr="Qualité du maillage",
14378                           ang="Mesh quality" ),
14379 #
14380 # 8.3. Connexite du maillage
14381 #
14382          CONNEXITE      = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"),
14383                           fr="Connexité du maillage.",
14384                           ang="Mesh connexity." ),
14385 #
14386 # 8.4. Taille des sous-domaines du maillage
14387 #
14388          TAILLE         = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"),
14389                           fr="Tailles des sous-domaines du maillage.",
14390                           ang="Sizes of mesh sub-domains." ),
14391 #
14392 # 8.5. Controle de la non-interpenetration des éléments
14393 #
14394          INTERPENETRATION=SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"),
14395                           fr="Controle de la non interpénétration des éléments.",
14396                           ang="Overlapping checking." ),
14397 #
14398 )  ;
14399
14400 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
14401 #            CONFIGURATION MANAGEMENT OF EDF VERSION
14402 # ======================================================================
14403 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
14404 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
14405 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
14406 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
14407 # (AT YOUR OPTION) ANY LATER VERSION.                                 
14408 #
14409 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
14410 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
14411 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
14412 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
14413 #
14414 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
14415 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
14416 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
14417 # ======================================================================
14418 # RESPONSABLE F1BHHAJ J.ANGLES
14419 def macr_ascouf_calc_prod(self,MODELE,CHAM_MATER,CARA_ELEM,FOND_FISS,CHARGE,RESU_THER,**args):
14420   self.type_sdprod(MODELE,modele)
14421   if CHAM_MATER != None:self.type_sdprod(CHAM_MATER,cham_mater)
14422   if CARA_ELEM  != None:self.type_sdprod(CARA_ELEM,cara_elem)
14423   if FOND_FISS  != None:self.type_sdprod(FOND_FISS,fond_fiss)
14424   if CHARGE     != None:self.type_sdprod(CHARGE,char_meca)
14425   if RESU_THER  != None:self.type_sdprod(RESU_THER,evol_ther)
14426   return evol_noli
14427
14428 MACR_ASCOUF_CALC=MACRO(nom="MACR_ASCOUF_CALC",op= -20,sd_prod=macr_ascouf_calc_prod,
14429                       fr=" ",
14430                       docu="U4.cf.20-b",reentrant='n',
14431             UIinfo={"groupes":("Outils métier",)},
14432          regles=(UN_PARMI('COMP_INCR','COMP_ELAS'),),
14433
14434          TYPE_MAILLAGE   =SIMP(statut='o',typ='TXM',
14435                                into=("SAIN",
14436                                      "FISS_COUDE",
14437                                      "FISS_AXIS_DEB",
14438                                      "SOUS_EPAIS_COUDE"
14439                                      ) ),
14440
14441          CL_BOL_P2_GV    =FACT(statut='f',
14442            ANGLE           =SIMP(statut='o',typ='R' ),
14443            AZIMUT          =SIMP(statut='f',typ='R',defaut= 90. ),
14444          ),
14445
14446          MAILLAGE        =SIMP(statut='o',typ=maillage ),
14447          MODELE          =SIMP(statut='o',typ=(CO,modele)),
14448          CHAM_MATER      =SIMP(statut='f',typ=(CO,cham_mater)),
14449          CARA_ELEM       =SIMP(statut='f',typ=(CO,cara_elem)),
14450          FOND_FISS       =SIMP(statut='f',typ=(CO,fond_fiss)),
14451          CHARGE          =SIMP(statut='f',typ=(CO,char_meca)),
14452          RESU_THER       =SIMP(statut='f',typ=(CO,evol_ther)),
14453
14454          AFFE_MATERIAU   =FACT(statut='o',max=3,
14455            regles=(UN_PARMI('TOUT','GROUP_MA'),),
14456            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
14457            GROUP_MA        =SIMP(statut='f',typ='TXM',into=("COUDE","BOL") ),
14458            MATER           =SIMP(statut='o',typ=mater ),
14459            TEMP_REF        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
14460          ),
14461
14462          PRES_REP        =FACT(statut='f',
14463            PRES            =SIMP(statut='o',typ='R' ),
14464            EFFE_FOND_P1    =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
14465            PRES_LEVRE      =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
14466            FONC_MULT       =SIMP(statut='f',typ=(fonction,formule) ),
14467          ),
14468
14469          ECHANGE         =FACT(statut='f',
14470            COEF_H          =SIMP(statut='f',typ=(fonction,formule) ),
14471            TEMP_EXT        =SIMP(statut='f',typ=(fonction,formule) ),
14472          ),
14473
14474          TORS_P1         =FACT(statut='f',max=6,
14475            regles=(AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),),
14476            FX              =SIMP(statut='f',typ='R' ),
14477            FY              =SIMP(statut='f',typ='R' ),
14478            FZ              =SIMP(statut='f',typ='R' ),
14479            MX              =SIMP(statut='f',typ='R' ),
14480            MY              =SIMP(statut='f',typ='R' ),
14481            MZ              =SIMP(statut='f',typ='R' ),
14482            FONC_MULT       =SIMP(statut='f',typ=(fonction,formule) ),
14483          ),
14484
14485          COMP_INCR       =FACT(statut='f',
14486            RELATION        =SIMP(statut='o',typ='TXM',into=("VMIS_ISOT_TRAC",) ),
14487            VMIS_ISOT_TRAC  =SIMP(statut='c',typ='I',defaut= 2,into=( 2 ,) ),
14488          ),
14489
14490          COMP_ELAS       =FACT(statut='f',
14491            RELATION        =SIMP(statut='o',typ='TXM',into=("ELAS","ELAS_VMIS_TRAC") ),
14492            ELAS            =SIMP(statut='c',typ='I',defaut= 1,into=( 1 ,) ),
14493            ELAS_VMIS_TRAC  =SIMP(statut='c',typ='I',defaut= 1,into=( 1 ,) ),
14494          ),
14495
14496          SOLVEUR         =FACT(statut='d',
14497            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
14498            b_mult_front    =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
14499              RENUM           =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ),
14500            ),
14501            b_ldlt         =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT",
14502              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
14503            ),
14504            b_ldlt_mult    =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
14505                                    fr="Paramètres relatifs à la non inversibilité de la matrice à factorise",
14506              NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
14507              STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
14508            ),
14509            b_gcpc         =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué",
14510              PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ),
14511              NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ),
14512              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ),
14513              RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
14514              NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
14515            ),
14516            SYME            =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
14517          ),
14518
14519          CONVERGENCE     =FACT(statut='d',
14520            RESI_GLOB_MAXI  =SIMP(statut='f',typ='R'),
14521            RESI_GLOB_RELA  =SIMP(statut='f',typ='R'),
14522            ITER_GLOB_MAXI  =SIMP(statut='f',typ='I',defaut=10),
14523            ARRET           =SIMP(statut='f',typ='TXM',defaut="OUI"),
14524            RESI_INTE_RELA  =SIMP(statut='f',typ='R'
14525                                 ,defaut= 1.0E-6),
14526            ITER_INTE_MAXI  =SIMP(statut='f',typ='I',defaut= 10 ),
14527            ITER_INTE_PAS   =SIMP(statut='f',typ='I',defaut= 0 ),
14528            TYPE_MATR_COMP  =SIMP(statut='f',typ='TXM',defaut="TANG_VIT",into=("TANG_VIT",)),
14529            RESO_INTE       =SIMP(statut='f',typ='TXM',defaut="IMPLICITE",into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")),
14530          ),
14531
14532          NEWTON          =FACT(statut='d',
14533            REAC_INCR       =SIMP(statut='f',typ='I',defaut= 1 ),
14534            PREDICTION      =SIMP(statut='f',typ='TXM',into=("DEPL_CALCULE","TANGENTE","ELASTIQUE","EXTRAPOL") ),
14535            MATRICE         =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE") ),
14536            REAC_ITER       =SIMP(statut='f',typ='I',defaut=0),
14537            EVOL_NOLI       =SIMP(statut='f',typ=evol_noli),
14538          ),
14539
14540          RECH_LINEAIRE   =FACT(statut='f',
14541            RESI_LINE_RELA  =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),
14542            ITER_LINE_MAXI  =SIMP(statut='f',typ='I',defaut= 3),
14543          ),
14544
14545          INCREMENT       =FACT(statut='o',
14546            regles=(EXCLUS('NUME_INST_INIT','INST_INIT'),
14547                    EXCLUS('NUME_INST_FIN','INST_FIN'),),
14548            LIST_INST       =SIMP(statut='o',typ=listr8),
14549            EVOLUTION       =SIMP(statut='f',typ='TXM',defaut="CHRONOLOGIQUE",
14550                                  into=("CHRONOLOGIQUE","RETROGRADE","SANS",) ),
14551            NUME_INST_INIT  =SIMP(statut='f',typ='I'),
14552            INST_INIT       =SIMP(statut='f',typ='R'),
14553            NUME_INST_FIN   =SIMP(statut='f',typ='I'),
14554            INST_FIN        =SIMP(statut='f',typ='R'),
14555            PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3 ),
14556            SUBD_PAS        =SIMP(statut='f',typ='I',defaut=1),
14557            SUBD_PAS_MINI   =SIMP(statut='f',typ='R'),
14558            COEF_SUBD_PAS_1 =SIMP(statut='f',typ='R',defaut= 1.0E+0),
14559          ),
14560
14561          THETA_3D        =FACT(statut='f',max='**',
14562            R_INF           =SIMP(statut='o',typ='R' ),
14563            R_SUP           =SIMP(statut='o',typ='R' ),
14564          ),
14565
14566          IMPR_TABLE      =FACT(statut='f',
14567            regles=(UN_PARMI('TOUT_PARA','NOM_PARA', ),
14568             PRESENT_PRESENT('TOUT_PARA','ANGLE',    ),
14569             PRESENT_PRESENT('TOUT_PARA','R_CINTR',  ),
14570                    UN_PARMI('POSI_CURV_LONGI','POSI_ANGUL',),),
14571            NOM_PARA        =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=4,
14572                                  into=("TRESCA_MEMBRANE",
14573                                        "TRESCA_MFLE",
14574                                        "TRESCA",
14575                                        "SI_LONG"
14576                                        "SI_RADI"
14577                                        "SI_CIRC"
14578                                        ) ),
14579            TOUT_PARA       =SIMP(statut='f',typ='TXM',into=("OUI",) ),
14580            ANGLE           =SIMP(statut='f',typ='R',max='**' ),
14581            R_CINTR         =SIMP(statut='f',typ='R',max='**' ),
14582            POSI_CURV_LONGI =SIMP(statut='f',typ='R',max='**' ),
14583            POSI_ANGUL      =SIMP(statut='f',typ='R',max='**' ),
14584            TRANSFORMEE     =SIMP(statut='f',typ='TXM',defaut="COUDE",into=("COUDE","TUBE") ),
14585          ),
14586
14587          IMPRESSION      =FACT(statut='f',
14588            FORMAT          =SIMP(statut='f',typ='TXM',defaut="RESULTAT",
14589                                  into=("RESULTAT","ASTER","IDEAS","CASTEM") ),
14590                                  
14591            b_format_ideas  =BLOC(condition="FORMAT=='IDEAS'",fr="version Ideas",
14592              VERSION         =SIMP(statut='f',typ='I',defaut=5,into=(4,5)),
14593            ),  
14594
14595            b_format_castem =BLOC(condition="FORMAT=='CASTEM'",fr="version Castem",
14596              NIVE_GIBI       =SIMP(statut='f',typ='I',defaut=10,into=(3,10)),
14597            ),
14598
14599          ),
14600
14601          TITRE           =SIMP(statut='f',typ='TXM' ),
14602
14603          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
14604 )  ;
14605
14606 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
14607 #            CONFIGURATION MANAGEMENT OF EDF VERSION
14608 # ======================================================================
14609 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
14610 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
14611 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
14612 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
14613 # (AT YOUR OPTION) ANY LATER VERSION.                                 
14614 #
14615 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
14616 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
14617 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
14618 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
14619 #
14620 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
14621 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
14622 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
14623 # ======================================================================
14624 # RESPONSABLE F1BHHAJ J.ANGLES
14625 MACR_ASCOUF_MAIL=MACRO(nom="MACR_ASCOUF_MAIL",op= -19,sd_prod=maillage,
14626                       fr=" ",docu="U4.cf.10-b",reentrant='n',
14627             UIinfo={"groupes":("Outils métier",)},
14628
14629          regles=(EXCLUS('SOUS_EPAIS_COUDE','FISS_COUDE','SOUS_EPAIS_MULTI'),),
14630
14631          EXEC_MAILLAGE   =FACT(statut='o',
14632            LOGICIEL        =SIMP(statut='o',typ='TXM',defaut="GIBI2000",into=("GIBI98","GIBI2000") ),
14633            UNITE_DATG      =SIMP(statut='f',typ='I',defaut=70),  
14634            UNITE_MGIB      =SIMP(statut='f',typ='I',defaut=19),  
14635            NIVE_GIBI       =SIMP(statut='f',typ='I',defaut=10,into=(3,4,5,6,7,8,9,10,11)),
14636          ),
14637
14638          TYPE_ELEM       =SIMP(statut='f',typ='TXM',defaut="CU20",into=("CU20","CUB8") ),
14639
14640          COUDE           =FACT(statut='o',
14641            ANGLE           =SIMP(statut='o',typ='R' ),  
14642            R_CINTR         =SIMP(statut='o',typ='R' ),  
14643            L_TUBE_P1       =SIMP(statut='o',typ='R' ),  
14644            L_TUBE_P2       =SIMP(statut='f',typ='R',defaut= 0.E+0 ),  
14645            NB_ELEM_EPAIS   =SIMP(statut='f',typ='I',defaut= 3 ),  
14646            SYME            =SIMP(statut='f',typ='TXM',defaut="ENTIER",into=("ENTIER","QUART","DEMI") ),
14647            TRANSFORMEE     =SIMP(statut='o',typ='TXM',defaut="COUDE",into=("COUDE","TUBE") ),
14648            b_transf_coude  =BLOC(condition = "TRANSFORMEE == 'COUDE' ",
14649               DEXT            =SIMP(statut='o',typ='R' ),  
14650               EPAIS           =SIMP(statut='o',typ='R' ),  
14651               SUR_EPAIS       =SIMP(statut='f',typ='R',defaut= 0.E+0 ),  
14652               BOL_P2          =SIMP(statut='f',typ='TXM',into=("ASP_MPP","CUVE","GV") ),
14653            ),
14654            b_transf_tube   =BLOC(condition = "TRANSFORMEE == 'TUBE' ",
14655               TRAN_EPAIS      =SIMP(statut='o',typ='TXM',defaut="NON",into=("OUI","NON") ),
14656               b_trans_epais_oui    =BLOC(condition = "TRAN_EPAIS == 'OUI' ",
14657                       regles=(ENSEMBLE('ANGL_TETA2','EPAIS_TI'),
14658                               UN_PARMI('ABSC_CURV_TRAN','POSI_ANGU_TRAN'),),
14659                       DEXT_T1         =SIMP(statut='o',typ='R' ),  
14660                       EPAIS_T1        =SIMP(statut='o',typ='R' ),  
14661                       EPAIS_T2        =SIMP(statut='o',typ='R' ),  
14662                       EPAIS_TI        =SIMP(statut='f',typ='R' ),  
14663                       ANGL_TETA1      =SIMP(statut='o',typ='R' ),  
14664                       ANGL_TETA2      =SIMP(statut='f',typ='R' ),  
14665                       ABSC_CURV_TRAN  =SIMP(statut='f',typ='R' ),  
14666                       POSI_ANGU_TRAN  =SIMP(statut='f',typ='R' ),  
14667               ),
14668               b_trans_epais_non    =BLOC(condition = "TRAN_EPAIS == 'NON' ",
14669                       DEXT            =SIMP(statut='o',typ='R' ),  
14670                       EPAIS           =SIMP(statut='o',typ='R' ),  
14671                       SUR_EPAIS       =SIMP(statut='f',typ='R',defaut= 0.E+0 ),  
14672                       BOL_P2          =SIMP(statut='f',typ='TXM',into=("ASP_MPP","CUVE","GV") ),
14673               ),
14674            ),
14675          ),
14676
14677          SOUS_EPAIS_COUDE=FACT(statut='f',
14678            regles=(UN_PARMI('POSI_CURV_LONGI','POSI_ANGUL'),
14679                    UN_PARMI('POSI_CURV_CIRC','AZIMUT'),),
14680            TYPE            =SIMP(statut='o',typ='TXM',into=("AXIS","ELLI") ),
14681            AXE_CIRC        =SIMP(statut='f',typ='R' ),  
14682            AXE_LONGI       =SIMP(statut='o',typ='R' ),  
14683            PROFONDEUR      =SIMP(statut='o',typ='R' ),  
14684            POSI_CURV_LONGI =SIMP(statut='f',typ='R' ),  
14685            POSI_ANGUL      =SIMP(statut='f',typ='R' ),  
14686            POSI_CURV_CIRC  =SIMP(statut='f',typ='R' ),  
14687            AZIMUT          =SIMP(statut='f',typ='R' ),  
14688            SOUS_EPAIS      =SIMP(statut='o',typ='TXM',into=("INTERNE","EXTERNE") ),
14689            NB_ELEM_LONGI   =SIMP(statut='o',typ='I' ),  
14690            NB_ELEM_CIRC    =SIMP(statut='o',typ='I' ),  
14691            NB_ELEM_RADI    =SIMP(statut='f',typ='I',defaut= 3 ),  
14692            EMPREINTE       =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
14693          ),
14694
14695          SOUS_EPAIS_MULTI=FACT(statut='f',max='**',
14696            regles=(UN_PARMI('POSI_CURV_LONGI','POSI_ANGUL'),
14697                    UN_PARMI('POSI_CURV_CIRC','AZIMUT'),),
14698            TYPE            =SIMP(statut='o',typ='TXM',into=("AXIS","ELLI") ),
14699            AXE_CIRC        =SIMP(statut='f',typ='R' ),  
14700            AXE_LONGI       =SIMP(statut='o',typ='R' ),  
14701            PROFONDEUR      =SIMP(statut='o',typ='R' ),  
14702            POSI_CURV_LONGI =SIMP(statut='f',typ='R' ),  
14703            POSI_ANGUL      =SIMP(statut='f',typ='R' ),  
14704            POSI_CURV_CIRC  =SIMP(statut='f',typ='R' ),  
14705            AZIMUT          =SIMP(statut='f',typ='R' ),  
14706            SOUS_EPAIS      =SIMP(statut='o',typ='TXM',into=("INTERNE","EXTERNE") ),
14707            NB_ELEM_LONGI   =SIMP(statut='o',typ='I' ),  
14708            NB_ELEM_CIRC    =SIMP(statut='o',typ='I' ),  
14709            EMPREINTE       =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
14710          ),
14711
14712          FISS_COUDE      =FACT(statut='f',
14713            regles=(UN_PARMI('ABSC_CURV','POSI_ANGUL'),),
14714            AXIS            =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON" ),  
14715            b_axis_non    =BLOC(condition = "AXIS == 'NON' ",
14716                    LONGUEUR        =SIMP(statut='o',typ='R' ),  
14717            ),
14718            b_axis_oui    =BLOC(condition = "AXIS == 'OUI' ",
14719                    LONGUEUR        =SIMP(statut='f',typ='R' ),  
14720            ),
14721            PROFONDEUR      =SIMP(statut='o',typ='R' ),  
14722            ABSC_CURV       =SIMP(statut='f',typ='R' ),  
14723            POSI_ANGUL      =SIMP(statut='f',typ='R' ),  
14724            FISSURE         =SIMP(statut='o',typ='TXM',into=("DEB_INT","DEB_EXT") ),
14725            AZIMUT          =SIMP(statut='f',typ='R',defaut= 90. ),  
14726            ORIEN           =SIMP(statut='o',typ='R',
14727                                  into=(45.,-45.,90.,0.E+0) ),
14728            NB_TRANCHE      =SIMP(statut='o',typ='I' ),  
14729            NB_SECTEUR      =SIMP(statut='o',typ='I' ),  
14730            NB_COURONNE     =SIMP(statut='o',typ='I' ),  
14731            RAYON_TORE      =SIMP(statut='f',typ='R' ),  
14732            COEF_MULT_RC2   =SIMP(statut='f',typ='R',defaut= 1. ),  
14733            COEF_MULT_RC3   =SIMP(statut='f',typ='R' ),  
14734            ANGL_OUVERTURE  =SIMP(statut='f',typ='R',defaut= 0.5 ),  
14735          ),
14736
14737          IMPRESSION      =FACT(statut='f',max='**',
14738            regles=(PRESENT_PRESENT('FICHIER','UNITE'),),
14739            FORMAT          =SIMP(statut='f',typ='TXM',defaut="ASTER",   
14740                                  into=("ASTER","IDEAS","CASTEM") ),
14741            b_format_ideas  =BLOC(condition="FORMAT=='IDEAS'",fr="version Ideas",
14742              VERSION         =SIMP(statut='f',typ='I',defaut=5,into=(4,5)),
14743            ),  
14744            b_format_castem =BLOC(condition="FORMAT=='CASTEM'",fr="version Castem",
14745              NIVE_GIBI       =SIMP(statut='f',typ='I',defaut=10,into=(3,10)),
14746            ),
14747            FICHIER         =SIMP(statut='f',typ='TXM' ),  
14748            UNITE           =SIMP(statut='f',typ='I' ),  
14749          ),
14750
14751          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
14752 )  ;
14753
14754 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
14755 #            CONFIGURATION MANAGEMENT OF EDF VERSION
14756 # ======================================================================
14757 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
14758 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
14759 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
14760 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
14761 # (AT YOUR OPTION) ANY LATER VERSION.                                 
14762 #
14763 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
14764 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
14765 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
14766 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
14767 #
14768 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
14769 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
14770 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
14771 # ======================================================================
14772 # RESPONSABLE F1BHHAJ J.ANGLES
14773 def macr_aspic_calc_prod(self,MODELE,CHAM_MATER,CARA_ELEM,FOND_FISS_1,FOND_FISS_2,CHARGE,RESU_THER,**args):
14774   if MODELE      != None:self.type_sdprod(MODELE,modele)
14775   if CHAM_MATER  != None:self.type_sdprod(CHAM_MATER,cham_mater)
14776   if CARA_ELEM   != None:self.type_sdprod(CARA_ELEM,cara_elem)
14777   if FOND_FISS_1 != None:self.type_sdprod(FOND_FISS_1,fond_fiss)
14778   if FOND_FISS_2 != None:self.type_sdprod(FOND_FISS_2,fond_fiss)
14779   if CHARGE      != None:self.type_sdprod(CHARGE,char_meca)
14780   if RESU_THER   != None:self.type_sdprod(RESU_THER,evol_ther)
14781   return evol_noli
14782
14783 MACR_ASPIC_CALC=MACRO(nom="MACR_ASPIC_CALC",op=-17,sd_prod=macr_aspic_calc_prod,
14784                     fr=" ",docu="U4.pc.20-b",reentrant='n',
14785             UIinfo={"groupes":("Outils métier",)},
14786          regles=(UN_PARMI('COMP_INCR','COMP_ELAS'),),
14787
14788          TYPE_MAILLAGE   =SIMP(statut='o',typ='TXM',
14789                                into=("SAIN_FIN","SAIN_GROS","FISS_COUR_DEB","FISS_COUR_NONDEB","FISS_LONG_DEB",
14790                                      "FISS_LONG_NONDEB","FISS_AXIS_DEB","FISS_AXIS_NONDEB") ),
14791
14792          TUBULURE        =FACT(statut='o',
14793            TYPE            =SIMP(statut='o',typ='TXM',into=("TYPE_1","TYPE_2") ),
14794          ),
14795          MAILLAGE        =SIMP(statut='o',typ=maillage),
14796          MODELE          =SIMP(statut='f',typ=(CO,modele)),
14797          CHAM_MATER      =SIMP(statut='f',typ=(CO,cham_mater)),
14798          CARA_ELEM       =SIMP(statut='f',typ=(CO,cara_elem)),
14799          FOND_FISS_1     =SIMP(statut='f',typ=(CO,fond_fiss)),
14800          FOND_FISS_2     =SIMP(statut='f',typ=(CO,fond_fiss)),
14801          CHARGE          =SIMP(statut='f',typ=(CO,char_meca)),
14802          RESU_THER       =SIMP(statut='f',typ=(CO,evol_ther)),
14803
14804          AFFE_MATERIAU   =FACT(statut='o',max=3,
14805            regles=(UN_PARMI('TOUT','GROUP_MA'),),
14806            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",)),
14807            GROUP_MA        =SIMP(statut='f',typ='TXM',into=("TUBU","CORP","SOUD","SOUDCORP","SOUDTUBU") ),
14808            MATER           =SIMP(statut='o',typ=mater),
14809            TEMP_REF        =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
14810            RCCM            =SIMP(statut='o',typ='TXM',into=("OUI","NON")),
14811          ),
14812
14813          EQUILIBRE       =FACT(statut='o',
14814            NOEUD           =SIMP(statut='o',typ=no),
14815          ),
14816
14817          PRES_REP        =FACT(statut='o',
14818            PRES            =SIMP(statut='o',typ='R'),
14819            NOEUD           =SIMP(statut='f',typ=no),
14820            EFFE_FOND       =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")),
14821            PRES_LEVRE      =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
14822            FONC_MULT       =SIMP(statut='f',typ=(fonction,formule)),
14823          ),
14824
14825          ECHANGE         =FACT(statut='f',
14826            COEF_H_TUBU     =SIMP(statut='o',typ=(fonction,formule)),
14827            COEF_H_CORP     =SIMP(statut='o',typ=(fonction,formule)),
14828            TEMP_EXT        =SIMP(statut='o',typ=(fonction,formule)),
14829          ),
14830
14831          TORS_CORP       =FACT(statut='f',max=6,
14832            regles=(AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),),
14833            NOEUD           =SIMP(statut='o',typ=no),
14834            FX              =SIMP(statut='f',typ='R'),
14835            FY              =SIMP(statut='f',typ='R'),
14836            FZ              =SIMP(statut='f',typ='R'),
14837            MX              =SIMP(statut='f',typ='R'),
14838            MY              =SIMP(statut='f',typ='R'),
14839            MZ              =SIMP(statut='f',typ='R'),
14840            FONC_MULT       =SIMP(statut='f',typ=(fonction,formule)),
14841          ),
14842
14843          TORS_TUBU       =FACT(statut='f',max=6,
14844            regles=(AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),),
14845            FX              =SIMP(statut='f',typ='R'),
14846            FY              =SIMP(statut='f',typ='R'),
14847            FZ              =SIMP(statut='f',typ='R'),
14848            MX              =SIMP(statut='f',typ='R'),
14849            MY              =SIMP(statut='f',typ='R'),
14850            MZ              =SIMP(statut='f',typ='R'),
14851            FONC_MULT       =SIMP(statut='f',typ=(fonction,formule)),
14852          ),
14853
14854          COMP_INCR       =FACT(statut='f',
14855            RELATION        =SIMP(statut='o',typ='TXM',into=("VMIS_ISOT_TRAC",) ),
14856            VMIS_ISOT_TRAC  =SIMP(statut='c',typ='I',defaut= 2,into=( 2 ,) ),
14857          ),
14858
14859          COMP_ELAS       =FACT(statut='f',
14860            RELATION        =SIMP(statut='o',typ='TXM',into=("ELAS","ELAS_VMIS_TRAC") ),
14861            ELAS            =SIMP(statut='c',typ='I',defaut= 1,into=( 1 ,) ),
14862            ELAS_VMIS_TRAC  =SIMP(statut='c',typ='I',defaut= 1,into=( 1 ,) ),
14863          ),
14864
14865          THETA_3D        =FACT(statut='f',max='**',
14866            R_INF           =SIMP(statut='o',typ='R'),
14867            R_SUP           =SIMP(statut='o',typ='R'),
14868          ),
14869
14870          OPTION          =SIMP(statut='f',typ='TXM',into=("CALC_G_MAX","CALC_G_MAX_LOCAL") ),
14871          BORNES          =FACT(statut='f',max='**',
14872            NUME_ORDRE      =SIMP(statut='o',typ='I'),
14873            VALE_MIN        =SIMP(statut='o',typ='R'),
14874            VALE_MAX        =SIMP(statut='o',typ='R'),
14875          ),
14876
14877          SOLVEUR         =FACT(statut='d',
14878            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
14879            b_mult_front    =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
14880              RENUM           =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ),
14881            ),
14882            b_ldlt          =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT",
14883              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
14884            ),
14885            b_ldlt_mult     =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
14886                                    fr="Paramètres relatifs à la non iversibilité de la matrice à factorise",
14887              NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
14888              STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
14889            ),
14890            b_gcpc          =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué",
14891              PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ),
14892              NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ),
14893              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ),
14894              RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
14895              NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
14896            ),
14897            SYME            =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
14898          ),
14899
14900          CONVERGENCE     =FACT(statut='d',
14901            RESI_GLOB_MAXI  =SIMP(statut='f',typ='R'),
14902            RESI_GLOB_RELA  =SIMP(statut='f',typ='R'),
14903            ITER_GLOB_MAXI  =SIMP(statut='f',typ='I',defaut=10),
14904            ARRET           =SIMP(statut='f',typ='TXM',defaut="OUI"),
14905            RESI_INTE_RELA  =SIMP(statut='f',typ='R',defaut=1.0E-6),
14906            ITER_INTE_MAXI  =SIMP(statut='f',typ='I',defaut=10),
14907            ITER_INTE_PAS   =SIMP(statut='f',typ='I',defaut=0),
14908            TYPE_MATR_COMP  =SIMP(statut='f',typ='TXM',defaut="TANG_VIT",into=("TANG_VIT",)),
14909            RESO_INTE       =SIMP(statut='f',typ='TXM',defaut="IMPLICITE",into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")),
14910          ),
14911
14912          NEWTON          =FACT(statut='d',
14913            REAC_INCR       =SIMP(statut='f',typ='I',defaut=1),
14914            PREDICTION      =SIMP(statut='f',typ='TXM',into=("TANGENTE","ELASTIQUE","EXTRAPOL","DEPL_CALCULE")),
14915            MATRICE         =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE")),
14916            REAC_ITER       =SIMP(statut='f',typ='I',defaut= 0),
14917          ),
14918
14919          RECH_LINEAIRE   =FACT(statut='d',
14920            RESI_LINE_RELA  =SIMP(statut='f',typ='R',defaut=1.0E-3),
14921            ITER_LINE_MAXI  =SIMP(statut='f',typ='I',defaut=3),
14922          ),
14923
14924          INCREMENT       =FACT(statut='o',
14925            regles=(EXCLUS('NUME_INST_INIT','INST_INIT'),
14926                    EXCLUS('NUME_INST_FIN','INST_FIN'),),
14927            LIST_INST       =SIMP(statut='o',typ=listr8),
14928            EVOLUTION       =SIMP(statut='f',typ='TXM',defaut="CHRONOLOGIQUE",
14929                                  into=("CHRONOLOGIQUE","RETROGRADE","SANS",) ),
14930            NUME_INST_INIT  =SIMP(statut='f',typ='I'),
14931            INST_INIT       =SIMP(statut='f',typ='R'),
14932            NUME_INST_FIN   =SIMP(statut='f',typ='I'),
14933            INST_FIN        =SIMP(statut='f',typ='R'),
14934            PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3 ),
14935            SUBD_PAS        =SIMP(statut='f',typ='I',defaut=1),
14936            SUBD_PAS_MINI   =SIMP(statut='f',typ='R'),
14937            COEF_SUBD_PAS_1 =SIMP(statut='f',typ='R',defaut= 1.0E+0),
14938          ),
14939
14940          PAS_AZIMUT      =SIMP(statut='f',typ='I',defaut=1),
14941
14942          IMPRESSION      =FACT(statut='f',
14943            FORMAT          =SIMP(statut='f',typ='TXM',defaut="RESULTAT",
14944                                  into=("RESULTAT","ASTER","CASTEM","IDEAS")),
14945                                  
14946            b_format_ideas  =BLOC(condition="FORMAT=='IDEAS'",fr="version Ideas",
14947              VERSION         =SIMP(statut='f',typ='I',defaut=5,into=(4,5)),
14948            ),  
14949
14950            b_format_castem =BLOC(condition="FORMAT=='CASTEM'",fr="version Castem",
14951              NIVE_GIBI       =SIMP(statut='f',typ='I',defaut=10,into=(3,10)),
14952            ),
14953
14954            b_extrac        =BLOC(condition="((FORMAT=='IDEAS')or(FORMAT=='CASTEM'))",
14955                                  fr="extraction d un champ de grandeur",
14956              regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST'),),
14957              NOM_CHAM        =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=3,
14958                                    into=("DEPL","EQUI_ELNO_SIGM","TEMP")),
14959              
14960              TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
14961              NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
14962              INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
14963            ),      
14964          ),
14965
14966          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
14967
14968          TITRE           =SIMP(statut='f',typ='TXM'),
14969 )  ;
14970 # debut entete
14971
14972 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
14973 #            CONFIGURATION MANAGEMENT OF EDF VERSION
14974 # ======================================================================
14975 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
14976 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
14977 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
14978 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
14979 # (AT YOUR OPTION) ANY LATER VERSION.                                 
14980 #
14981 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
14982 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
14983 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
14984 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
14985 #
14986 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
14987 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
14988 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
14989 # ======================================================================
14990 # RESPONSABLE F1BHHAJ J.ANGLES
14991 MACR_ASPIC_MAIL=MACRO(nom="MACR_ASPIC_MAIL",op= -16,sd_prod=maillage,reentrant='n',
14992                     fr=" ",docu="U4.pc.10-b",
14993             UIinfo={"groupes":("Outils métier",)},
14994
14995          EXEC_MAILLAGE   =FACT(statut='o',
14996            LOGICIEL        =SIMP(statut='o',typ='TXM',defaut="GIBI2000",into=("GIBI98","GIBI2000")),
14997            UNITE_DATG      =SIMP(statut='f',typ='I',defaut=70),  
14998            UNITE_MGIB      =SIMP(statut='f',typ='I',defaut=19),  
14999            NIVE_GIBI       =SIMP(statut='f',typ='I',defaut=10,into=(3,4,5,6,7,8,9,10,11)),
15000          ),
15001
15002          TYPE_ELEM       =SIMP(statut='f',typ='TXM',defaut="CU20",into=("CU20","CUB8")),
15003
15004          RAFF_MAIL       =SIMP(statut='f',typ='TXM',defaut="GROS",into=("GROS","FIN")),
15005
15006          TUBULURE        =FACT(statut='o',
15007            E_BASE          =SIMP(statut='o',typ='R'),  
15008            DEXT_BASE       =SIMP(statut='o',typ='R'),  
15009            L_BASE          =SIMP(statut='o',typ='R'),  
15010            L_CHANF         =SIMP(statut='o',typ='R'),  
15011            E_TUBU          =SIMP(statut='o',typ='R'),  
15012            DEXT_TUBU       =SIMP(statut='o',typ='R'),  
15013            Z_MAX           =SIMP(statut='o',typ='R'),  
15014            TYPE            =SIMP(statut='o',typ='TXM',into=("TYPE_1","TYPE_2")),
15015            L_PENETR        =SIMP(statut='f',typ='R',defaut= 0.0E+0),  
15016          ),
15017
15018          SOUDURE         =FACT(statut='o',
15019            H_SOUD          =SIMP(statut='o',typ='R'),  
15020            ANGL_SOUD       =SIMP(statut='o',typ='R'),  
15021            JEU_SOUD        =SIMP(statut='o',typ='R'),  
15022          ),
15023
15024          CORPS           =FACT(statut='o',
15025            E_CORP          =SIMP(statut='o',typ='R'),  
15026            DEXT_CORP       =SIMP(statut='o',typ='R'),  
15027            X_MAX           =SIMP(statut='o',typ='R'),  
15028          ),
15029
15030          FISS_SOUDURE    =FACT(statut='f',
15031            TYPE            =SIMP(statut='o',typ='TXM',into=("LONGUE","COURTE")),
15032            AXIS            =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")),
15033            PROFONDEUR      =SIMP(statut='o',typ='R'),  
15034            LONGUEUR        =SIMP(statut='f',typ='R'),  
15035            AZIMUT          =SIMP(statut='o',typ='R'),  
15036            RAYON_TORE      =SIMP(statut='f',typ='R'),  
15037            POSITION        =SIMP(statut='o',typ='TXM',into=("DROIT","INCLINE")),
15038            FISSURE         =SIMP(statut='o',typ='TXM',into=("DEB_INT","DEB_EXT","NON_DEB","TRAVERS")),
15039            LIGA_INT        =SIMP(statut='f',typ='R'),  
15040            ANGL_OUVERTURE  =SIMP(statut='f',typ='R',defaut= 0.0E+0),  
15041            COEF_MULT_RC1   =SIMP(statut='f',typ='R'),  
15042            COEF_MULT_RC2   =SIMP(statut='f',typ='R'),  
15043            COEF_MULT_RC3   =SIMP(statut='f',typ='R'),  
15044            NB_TRANCHE      =SIMP(statut='f',typ='I'),  
15045            NB_SECTEUR      =SIMP(statut='f',typ='I'),  
15046            NB_COURONNE     =SIMP(statut='f',typ='I'),  
15047          ),
15048
15049          IMPRESSION      =FACT(statut='f',max='**',
15050            regles=(PRESENT_PRESENT('FICHIER','UNITE'),),
15051            FORMAT          =SIMP(statut='f',typ='TXM',defaut="ASTER",into=("ASTER","IDEAS","CASTEM")),
15052
15053            b_format_ideas  =BLOC(condition="FORMAT=='IDEAS'",fr="version Ideas",
15054              VERSION         =SIMP(statut='f',typ='I',defaut=5,into=(4,5)),
15055            ),  
15056
15057            b_format_castem =BLOC(condition="FORMAT=='CASTEM'",fr="version Castem",
15058              NIVE_GIBI       =SIMP(statut='f',typ='I',defaut=10,into=(3,10)),
15059            ),
15060            FICHIER         =SIMP(statut='f',typ='TXM'),  
15061            UNITE           =SIMP(statut='f',typ='I'),  
15062          ),
15063
15064          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
15065 )  ;
15066
15067 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
15068 #            CONFIGURATION MANAGEMENT OF EDF VERSION
15069 # ======================================================================
15070 # COPYRIGHT (C) 1991 - 2003  EDF R&D                  WWW.CODE-ASTER.ORG
15071 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY  
15072 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY  
15073 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR     
15074 # (AT YOUR OPTION) ANY LATER VERSION.                                                  
15075 #                                                                       
15076 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT   
15077 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF            
15078 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU      
15079 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                              
15080 #                                                                       
15081 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE     
15082 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,         
15083 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.        
15084 # ======================================================================
15085
15086 from Macro.macr_cabri_calc_ops import macr_cabri_calc_ops
15087    
15088 def macr_cabri_calc_prod(self,MODELE_THER,MODELE_MECA,CHAM_MATER,
15089                          CHAR_THER,CHAR_MECA,RESU_THER,**args):
15090   if MODELE_THER != None:
15091    self.type_sdprod(MODELE_THER,modele)   
15092   if MODELE_MECA != None:
15093    self.type_sdprod(MODELE_MECA,modele)  
15094   if RESU_THER != None:
15095    self.type_sdprod(RESU_THER,evol_ther)     
15096   if CHAM_MATER != None:
15097    self.type_sdprod(CHAM_MATER,cham_mater)     
15098   if CHAR_THER != None: 
15099     for m in CHAR_THER:
15100       self.type_sdprod(m['CHARGE'],char_ther)
15101   if CHAR_MECA != None: 
15102     for m in CHAR_MECA:
15103       self.type_sdprod(m['CHARGE'],char_meca)
15104   return evol_noli
15105
15106
15107 MACR_CABRI_CALC=MACRO(nom="MACR_CABRI_CALC",
15108                       op=macr_cabri_calc_ops,
15109                       sd_prod=macr_cabri_calc_prod,
15110                       fr="Calcul d'une jonction boulonnée de tuyauterie",
15111                       reentrant='n',
15112                       UIinfo={"groupes":("Outils métier",)},
15113                       MAILLAGE   = SIMP(statut='o',typ=maillage,),
15114                       AFFE_MATERIAU = FACT(statut='o',max='**',
15115                         regles=(UN_PARMI('TOUT','GROUP_MA',),),
15116                         TOUT     = SIMP(statut='f',typ='TXM',into=("OUI",) ),
15117                         GROUP_MA = SIMP(statut='f',typ='TXM',into=(
15118                                                                   "BRIDE",
15119                                                                   "GOUJON",
15120                                                                   "ROND",
15121                                                                   "ECROU",
15122                                                                   "JOINT",) ),
15123                         MATER    = SIMP(statut='o',typ=mater),
15124                         TEMP_REF = SIMP(statut='d',typ='R',defaut= 25. ),
15125                       ),                      
15126                       CHAM_MATER = SIMP(statut = 'f',typ=(cham_mater,CO),),
15127                       MODELE_THER= SIMP(statut = 'f',typ=(modele,CO),),
15128                       
15129                       DEFI_CHAR_THER = FACT(statut ='d',
15130                         TEMP_INIT     = SIMP(statut='d',typ='R',defaut= 25.,),
15131                         COEF_H_FLUI   = SIMP(statut='f',typ=fonction,),
15132                         TEMP_EXT_FLUI = SIMP(statut='f',typ=fonction,),
15133                         COEF_H_AIR    = SIMP(statut='f',typ=fonction,),
15134                         TEMP_EXT_AIR  = SIMP(statut='f',typ=fonction,),
15135                         LIST_INST     = SIMP(statut='f',typ=listr8),
15136                       ),                      
15137                       
15138                       CHAR_THER  = FACT(statut = 'f',max=4,
15139                         CHARGE    = SIMP(statut='o',typ=(char_ther,CO)),
15140                         TYPE      = SIMP(statut='o',typ='TXM',
15141                                  into=("BRIDE_FLUIDE","BRIDE_AIR","ECROU_GOUJON",
15142                                        "BRIDE_JOINT"),)
15143                                        ),
15144
15145                       RESU_THER  = SIMP(statut = 'f',typ=(evol_ther,CO),),                                       
15146
15147                                        
15148                       MODELE_MECA= SIMP(statut = 'f',typ=(modele,CO),),
15149
15150                       DEFI_CHAR_MECA   = FACT(statut='o',
15151                         PRETENS    = SIMP(statut='f',typ=fonction,),
15152                         PRES_REP   = SIMP(statut='f',typ=fonction,),
15153                         EFFE_FOND  = SIMP(statut='f',typ=fonction,),
15154                       ),                                                             
15155
15156                       CHAR_MECA  = FACT(statut = 'f',max=11,
15157                         CHARGE    = SIMP(statut='o',typ=(char_meca,CO)),
15158                         TYPE      = SIMP(statut='o',typ='TXM',
15159                                  into=("BLOC_BAS_GOUJ","BLOC_BAS_JOINT",
15160                                        "BLOC_LAT_ALES","BLOC_LAT_NALES",
15161                                        "PLAN_TUBE",
15162                                        "PRES_FLU","EFFET_FOND",
15163                                        "CONT_JOINT",
15164                                        "DEFO_THER",
15165                                        "SERR_ECROU_1","SERR_ECROU_2",),)
15166                                        ),
15167                      
15168                       RELATION = SIMP(statut='f',typ='TXM',
15169                                        into=('VMIS_ISOT_TRAC','ELAS','ELAS_VMIS_TRAC',),),
15170                         
15171                       SOLVEUR   = FACT(statut='d',
15172                         METHODE  = SIMP(statut='d',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT",) ),
15173                         b_mult_front = BLOC(condition = "METHODE == 'MULT_FRONT' ",
15174                            fr="Paramètres de la méthode multi frontale",
15175                            RENUM           = SIMP(statut='d',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ),
15176                            NPREC           = SIMP(statut='d',typ='I',defaut=8),
15177                            STOP_SINGULIER  = SIMP(statut='d',typ='TXM',defaut="OUI",into=("OUI","NON") ),
15178                            ),                 
15179                       ),                                             
15180                       INCREMENT = FACT(statut='f',
15181                         regles=(EXCLUS('NUME_INST_INIT','INST_INIT'),
15182                                 EXCLUS('NUME_INST_FIN','INST_FIN'),),
15183                         LIST_INST       =SIMP(statut='f',typ=listr8),
15184                         EVOLUTION       =SIMP(statut='f',typ='TXM',defaut="CHRONOLOGIQUE",
15185                                  into=("CHRONOLOGIQUE",) ),                                 
15186                         NUME_INST_INIT  =SIMP(statut='f',typ='I'),
15187                         INST_INIT       =SIMP(statut='f',typ='R'),
15188                         NUME_INST_FIN   =SIMP(statut='f',typ='I'),
15189                         INST_FIN        =SIMP(statut='f',typ='R'),
15190                         PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3 ),
15191                         SUBD_PAS        =SIMP(statut='f',typ='I',defaut=1),
15192                         SUBD_PAS_MINI   =SIMP(statut='f',typ='R'),
15193                         COEF_SUBD_PAS_1 =SIMP(statut='f',typ='R',defaut= 1.0E+0),
15194                         OPTI_LIST_INST  =SIMP(statut='f',typ='TXM',into=("INCR_MAXI",),),
15195                         NOM_CHAM        =SIMP(statut='f',typ='TXM',),
15196                         NOM_CMP         =SIMP(statut='f',typ='TXM',),
15197                         VALE            =SIMP(statut='f',typ='R'),
15198                       ),
15199                       NEWTON          =FACT(statut='d',
15200                         REAC_INCR       =SIMP(statut='f',typ='I',defaut= 1 ),
15201                         PREDICTION      =SIMP(statut='f',typ='TXM',into=("TANGENTE","ELASTIQUE","EXTRAPOL") ),
15202                         MATRICE         =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE") ),
15203                         PAS_MINI_ELAS   =SIMP(statut='f',typ='R',defaut=0.0E+0),
15204                         REAC_ITER       =SIMP(statut='f',typ='I',defaut=0),
15205                         EVOL_NOLI       =SIMP(statut='f',typ=evol_noli),
15206                       ),
15207                       CONVERGENCE     =FACT(statut='d',
15208                         regles=(PRESENT_ABSENT('RESI_REFE_RELA','RESI_GLOB_MAXI','RESI_GLOB_RELA'),),
15209                         SIGM_REFE       =SIMP(statut='f',typ='R'),
15210                         EPSI_REFE       =SIMP(statut='f',typ='R'),
15211                         FLUX_THER_REFE  =SIMP(statut='f',typ='R'),        
15212                         RESI_REFE_RELA  =SIMP(statut='f',typ='R'),
15213                         RESI_GLOB_MAXI  =SIMP(statut='f',typ='R'),
15214                         RESI_GLOB_RELA  =SIMP(statut='f',typ='R'),
15215                         ITER_GLOB_MAXI  =SIMP(statut='f',typ='I',defaut=10),
15216                         ITER_GLOB_ELAS  =SIMP(statut='f',typ='I',defaut=25),
15217                         TYPE_MATR_COMP  =SIMP(statut='f',typ='TXM',defaut="TANG_VIT",into=("TANG_VIT",)),
15218                         RESO_INTE       =SIMP(statut='f',typ='TXM',defaut="IMPLICITE",
15219                                  into=("IMPLICITE",)),
15220                       ),
15221                      );
15222
15223
15224 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
15225 #            CONFIGURATION MANAGEMENT OF EDF VERSION
15226 # ======================================================================
15227 # COPYRIGHT (C) 1991 - 2003  EDF R&D                  WWW.CODE-ASTER.ORG
15228 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY  
15229 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY  
15230 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR     
15231 # (AT YOUR OPTION) ANY LATER VERSION.                                                  
15232 #                                                                       
15233 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT   
15234 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF            
15235 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU      
15236 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                              
15237 #                                                                       
15238 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE     
15239 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,         
15240 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.        
15241 # ======================================================================
15242
15243 from Macro.macr_cabri_mail_ops import macr_cabri_mail_ops
15244
15245 MACR_CABRI_MAIL=MACRO(nom="MACR_CABRI_MAIL",
15246                       op=macr_cabri_mail_ops,
15247                       sd_prod=maillage,
15248                       fr="maillage d'une jonction boulonnée de tuyauterie",
15249                       reentrant='n',
15250                       UIinfo={"groupes":("Outils métier",)},
15251                       EXEC_MAILLAGE = FACT(statut='o',
15252                         LOGICIEL      = SIMP(statut = 'o',typ='TXM',into=("GIBI2000",),),
15253                         UNITE_DATG    = SIMP(statut = 'f',typ='I',defaut=70,),
15254                         UNITE_MGIB    = SIMP(statut = 'f',typ='I',defaut=19,),
15255                         NIVE_GIBI     = SIMP(statut = 'f',typ='I',defaut=10,
15256                                           into = (3,4,5,6,7,8,9,10,11),
15257                                             ),
15258                                           ),
15259                       RAFF_MAILLAGE   = FACT(statut = 'd',
15260                         NB_RADIAL    = SIMP(statut = 'f',typ='I',defaut=2,),
15261                         NB_CIRCONF   = SIMP(statut = 'f',typ='I',defaut=3,),
15262                         NB_VERTICAL  = SIMP(statut = 'f',typ='I',defaut=6,),
15263                         NB_ALESAGE   = SIMP(statut = 'f',typ='I',defaut=5,),
15264                                           ),
15265                       VERI_MAIL     = FACT(statut='d',
15266                         VERIF         = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),  
15267                         APLAT         = SIMP(statut='f',typ='R',defaut= 1.0E-3 ),  
15268                                           ),                                          
15269                       GEOM_BRID     = FACT(statut = 'o',
15270                         NORME         = SIMP(statut = 'o',typ='TXM',into=("OUI","NON"),),
15271                         b_bride_iso   = BLOC(condition = "NORME == 'OUI'",
15272                           TYPE           = SIMP(statut='o',typ='TXM',
15273                                                 into=('A','AA','B','B1','C','D','D1','E','F',
15274                                                       'FF','G','GG','H','H1','I','J','J1',
15275                                                       'K','L','L1','M','N','O','P','S','T','W'), 
15276                                                ),
15277                                             ),
15278                         b_bride_niso  = BLOC(condition = "NORME == 'NON'",
15279                           TUBU_D_EXT     = SIMP(statut='o',typ='R',),
15280                           TUBU_H         = SIMP(statut='o',typ='R',),
15281                           BRID_D_EXT     = SIMP(statut='o',typ='R',),
15282                           BRID_D_INT     = SIMP(statut='o',typ='R',),
15283                           BRID_H         = SIMP(statut='o',typ='R',),
15284                           BRID_D_CONGE   = SIMP(statut='o',typ='R',),
15285                           BRID_R_CONGE   = SIMP(statut='o',typ='R',),
15286                           BRID_D_EPAUL   = SIMP(statut='o',typ='R',),
15287                           BRID_H_EPAUL   = SIMP(statut='o',typ='R',),
15288                           BRID_D_ALESAG  = SIMP(statut='o',typ='R',),
15289                           BRID_P_ALESAG  = SIMP(statut='o',typ='R',),
15290                           BRID_H_ALESAG  = SIMP(statut='o',typ='R',),
15291                           GOUJ_N_GOUJON  = SIMP(statut='o',typ='I',),
15292                           GOUJ_D_GOUJON  = SIMP(statut='o',typ='R',),
15293                           GOUJ_E_FILET   = SIMP(statut='o',typ='R',),
15294                           GOUJ_D_RONDEL  = SIMP(statut='o',typ='R',),
15295                           GOUJ_E_RONDEL  = SIMP(statut='o',typ='R',),
15296                           GOUJ_D_ECROU   = SIMP(statut='o',typ='R',),
15297                           GOUJ_E_ECROU   = SIMP(statut='o',typ='R',),
15298                           ETAN_E_JOINT   = SIMP(statut='o',typ='R',),
15299                                             ),
15300                                          ),
15301                       IMPRESSION    = FACT(statut='d',
15302                         FICHIER        = SIMP(statut='f',typ='TX'),
15303                         UNITE          = SIMP(statut='f',typ='I'),
15304                         FORMAT         = SIMP(statut='f',typ='TXM',defaut="ASTER",    
15305                                               into=("ASTER","CASTEM","IDEAS"),
15306                                              ),
15307                         b_impr_castem = BLOC(condition = "FORMAT == 'CASTEM'",
15308                           NIVE_GIBI      = SIMP(statut='f',typ='I',defaut=10,into=(3,10),),
15309                                             ),
15310                         b_impr_ideas  = BLOC(condition = "FORMAT == 'IDEAS'",
15311                           VERSION        = SIMP(statut='f',typ='I',defaut=5,into=(4,5),),
15312                                             ),
15313                                           ),
15314                      );
15315
15316
15317 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
15318 #            CONFIGURATION MANAGEMENT OF EDF VERSION
15319 # ======================================================================
15320 # COPYRIGHT (C) 1991 - 2003  EDF R&D                  WWW.CODE-ASTER.ORG
15321 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY  
15322 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY  
15323 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR     
15324 # (AT YOUR OPTION) ANY LATER VERSION.                                                  
15325 #                                                                       
15326 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT   
15327 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF            
15328 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU      
15329 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                              
15330 #                                                                       
15331 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE     
15332 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,         
15333 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.        
15334 # ======================================================================
15335 # RESPONSABLE JMBHH01 J.M.PROIX
15336
15337 from Macro.macr_cara_poutre_ops import macr_cara_poutre_ops
15338
15339 MACR_CARA_POUTRE=MACRO(nom="MACR_CARA_POUTRE",op=macr_cara_poutre_ops,sd_prod=tabl_cara_geom,
15340                        docu="U4.42.02-d",reentrant='n',
15341           UIinfo={"groupes":("Modélisation",)},
15342           fr="caractéristiques d'une section transversale de poutre à partir d'un maillage 2D",
15343           regles=(EXCLUS('SYME_X','GROUP_MA_BORD'),
15344                   EXCLUS('SYME_Y','GROUP_MA_BORD'),),
15345                  
15346           UNITE_MAILLAGE  =SIMP(statut='f',typ='I',defaut= 20 ),  
15347           ORIG_INER       =SIMP(statut='f',typ='R',max=3,defaut=(0.E+0,0.E+0),
15348                                 fr="Point par rapport auquel sont calculées les inerties"),  
15349           INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
15350          
15351           SYME_X          =SIMP(statut='f',typ='TXM',into=("OUI",),fr="demi maillage par rapport a x=0"),
15352           SYME_Y          =SIMP(statut='f',typ='TXM',into=("OUI",),fr="demi maillage par rapport a y=0"),
15353          
15354           GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**',
15355           fr="Calcul des caractéristiques équivalentes a plusieurs sections disjointes"),
15356           
15357           GROUP_MA_BORD   =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**',
15358                                fr="Groupe(s) de mailles linéiques, bord(s) de(s) section(s)"),
15359          
15360                b_gma_bord = BLOC( condition = "GROUP_MA_BORD != None",
15361                             fr=" calcul des carac. mecaniques",
15362
15363                     NOEUD           =SIMP(statut='f',typ=no,max='**',
15364                     fr="Simplement pour empecher des pivots nuls le cas echeant. Fournir un noeud quelconque"),
15365                     GROUP_MA_INTE   =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**',
15366                     fr="groupes de mailles linéiques bordant des trous dans la section"),
15367                     ),
15368                     
15369                b_reseau = BLOC( condition ="""(GROUP_MA_BORD != None) and (GROUP_MA != None)""",
15370                            fr=" calcul des coef de cisaillement équivalents a un reseau de poutres",
15371                             regles=(ENSEMBLE('LONGUEUR','LIAISON','MATERIAU') ,),
15372                             LONGUEUR        =SIMP(statut='f',typ='R',fr="Longueur du réseau de poutres"),  
15373                             MATERIAU        =SIMP(statut='f',typ=mater,fr="Materiau elastique lineaire du reseau"),
15374                             LIAISON         =SIMP(statut='f',typ='TXM',into=("ROTULE","ENCASTREMENT"),
15375                             fr="type de conditions aux limites sur le plancher supérieur" ),
15376                               ), 
15377                     )
15378
15379 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
15380 #            CONFIGURATION MANAGEMENT OF EDF VERSION
15381 # ======================================================================
15382 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
15383 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
15384 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
15385 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
15386 # (AT YOUR OPTION) ANY LATER VERSION.                                 
15387 #
15388 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
15389 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
15390 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
15391 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
15392 #
15393 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
15394 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
15395 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
15396 # ======================================================================
15397 MACR_ELEM_DYNA=OPER(nom="MACR_ELEM_DYNA",op=  81,sd_prod=macr_elem_dyna,
15398                     fr="Définition d un macro élément pour analyse modale ou harmonique par sous structuration dynamique",
15399                     docu="U4.65.01-e",reentrant='n',
15400             UIinfo={"groupes":("Matrices/vecteurs",)},
15401          regles=(EXCLUS('MATR_AMOR','AMOR_REDUIT' ),),
15402          BASE_MODALE     =SIMP(statut='o',typ=base_modale ),
15403          MATR_RIGI       =SIMP(statut='f',typ=matr_asse_depl_r ),
15404          MATR_MASS       =SIMP(statut='f',typ=matr_asse_depl_r ),
15405          MATR_AMOR       =SIMP(statut='f',typ=matr_asse_depl_r ),
15406          AMOR_REDUIT     =SIMP(statut='f',typ='R',max='**'),         
15407          OPTION          =SIMP(statut='f',typ='TXM',defaut="CLASSIQUE",into=("CLASSIQUE","RITZ",
15408                           "DIAG_MASS") ),
15409 )  ;
15410
15411 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
15412 #            CONFIGURATION MANAGEMENT OF EDF VERSION
15413 # ======================================================================
15414 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
15415 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
15416 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
15417 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
15418 # (AT YOUR OPTION) ANY LATER VERSION.                                 
15419 #
15420 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
15421 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
15422 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
15423 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
15424 #
15425 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
15426 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
15427 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
15428 # ======================================================================
15429 MACR_ELEM_STAT=OPER(nom="MACR_ELEM_STAT",op=86,sd_prod=macr_elem_stat,docu="U4.62.01-f",reentrant='f',
15430             UIinfo={"groupes":("Matrices/vecteurs",)},
15431                     fr="Définition d un macro-élément pour l analyse statique par sous structuration",
15432         regles=(AU_MOINS_UN('DEFINITION','RIGI_MECA','MASS_MECA','CAS_CHARGE'),
15433                 ENSEMBLE('DEFINITION','EXTERIEUR'),),
15434          DEFINITION      =FACT(statut='f',
15435            MODELE          =SIMP(statut='o',typ=modele),
15436            CHAM_MATER      =SIMP(statut='f',typ=cham_mater),
15437            CARA_ELEM       =SIMP(statut='f',typ=cara_elem),
15438            CHAR_MACR_ELEM  =SIMP(statut='f',typ=char_meca),
15439            INST            =SIMP(statut='f',typ='R',defaut=0.0E+0 ),
15440            NMAX_CAS        =SIMP(statut='f',typ='I',defaut=10),
15441            NMAX_CHAR       =SIMP(statut='f',typ='I',defaut=10),
15442          ),
15443          EXTERIEUR       =FACT(statut='f',
15444            regles=(AU_MOINS_UN('NOEUD','GROUP_NO'),),
15445            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
15446            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
15447          ),
15448          RIGI_MECA       =FACT(statut='f',
15449          ),
15450          MASS_MECA       =FACT(statut='f',
15451            BIDO1           =SIMP(statut='f',typ='I',defaut=0),
15452          ),
15453          CAS_CHARGE      =FACT(statut='f',max='**',
15454            NOM_CAS         =SIMP(statut='o',typ='TXM'),
15455            SUIV            =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")),
15456            CHARGE          =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'),
15457            INST            =SIMP(statut='f',typ='R',defaut=0.E+0),
15458          ),
15459 )  ;
15460
15461 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
15462 #            CONFIGURATION MANAGEMENT OF EDF VERSION
15463 # ======================================================================
15464 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
15465 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
15466 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
15467 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
15468 # (AT YOUR OPTION) ANY LATER VERSION.                                 
15469 #
15470 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
15471 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
15472 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
15473 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
15474 #
15475 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
15476 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
15477 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
15478 # ======================================================================
15479 MACR_GOUJ2E_CALC=MACRO(nom="MACR_GOUJ2E_CALC",op=-23,sd_prod=evol_noli,
15480                       fr=" ",docu="U4.gj.20-b",reentrant='n',
15481             UIinfo={"groupes":("Outils métier",)},
15482          MAILLAGE        =SIMP(statut='o',typ=maillage),
15483          DEFI_GOUJ       =FACT(statut='o',
15484            TYPE            =SIMP(statut='o',typ='TXM',into=("M33","M64","M90","M115","M155","M180","M186")),
15485            VARIANTE        =SIMP(statut='o',typ='TXM',into=("A","B","C","D","E","F","G","H","I","J","K","L","M",  
15486                                                             "N","O","P","Q","R","S","T","U","V","W","X","Y","Z")),
15487            FILET_TRONQUE   =SIMP(statut='f',typ='I',max='**'),  
15488            FILET_TRONQA    =SIMP(statut='f',typ='I',max='**'),  
15489            FILET_TRONQB    =SIMP(statut='f',typ='I',max='**'),  
15490            FILET_JEU_HT    =SIMP(statut='f',typ='I',max='**'),  
15491            FILET_JEU_HTA   =SIMP(statut='f',typ='I',max='**'),  
15492            FILET_JEU_HTB   =SIMP(statut='f',typ='I',max='**'),  
15493          ),
15494          EXCIT           =FACT(statut='o',
15495            TYPE_BLOCAGE    =SIMP(statut='o',typ='I',defaut=2,into=(1,2,3)),
15496            FORCE_GOUJ      =SIMP(statut='o',typ='R'),  
15497          ),
15498          CALCUL          =FACT(statut='o',
15499            TYPE_CALCUL     =SIMP(statut='o',typ='TXM',into=("ELASTIQUE","ELASTOPLASTIQUE")),
15500            NB_INCR         =SIMP(statut='o',typ='I'),  
15501          ),
15502          IMPRESSION      =FACT(statut='f',
15503            FORMAT          =SIMP(statut='f',typ='TXM',defaut="TABLE",    
15504                                  into=("RESULTAT","IDEAS","ASTER","CASTEM","ENSIGHT","MED","TABLE")),
15505            VERSION         =SIMP(statut='f',typ='I',defaut=5,into=(4,5)),
15506          ),
15507          TITRE           =SIMP(statut='f',typ='TXM'),  
15508          INFO            =SIMP(statut='f',typ='I',defaut=1 ,into=(1,2)),
15509 )  ;
15510
15511 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
15512 #            CONFIGURATION MANAGEMENT OF EDF VERSION
15513 # ======================================================================
15514 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
15515 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
15516 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
15517 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
15518 # (AT YOUR OPTION) ANY LATER VERSION.                                 
15519 #
15520 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
15521 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
15522 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
15523 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
15524 #
15525 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
15526 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
15527 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
15528 # ======================================================================
15529 MACR_GOUJ2E_MAIL=MACRO(nom="MACR_GOUJ2E_MAIL",op= -22,sd_prod=maillage,
15530                       fr=" ",docu="U4.gj.10-b",reentrant='n',
15531             UIinfo={"groupes":("Outils métier",)},
15532          EXEC_MAILLAGE   =FACT(statut='o',
15533            LOGICIEL        =SIMP(statut='o',typ='TXM',defaut="GIBI2000",into=("GIBI98","GIBI2000") ),
15534            UNITE_DATG      =SIMP(statut='f',typ='I',defaut=70),  
15535            UNITE_MGIB      =SIMP(statut='f',typ='I',defaut=19),  
15536            NIVE_GIBI       =SIMP(statut='f',typ='I',defaut=10,into=(3,4,5,6,7,8,9,10)),
15537          ),
15538          DEFI_GOUJ       =FACT(statut='o',
15539            TYPE            =SIMP(statut='o',typ='TXM',into=("M33","M64","M90","M115","M155","M180","M186")),
15540            VARIANTE        =SIMP(statut='o',typ='TXM',into=("A","B","C","D","E","F","G","H","I","J","K","L","M",  
15541                                                             "N","O","P","Q","R","S","T","U","V","W","X","Y","Z")), 
15542          ),
15543          GEOM_GOUJ_BRID  =FACT(statut='o',
15544            NB_FILET        =SIMP(statut='o',typ='I'),  
15545            H_CORP_BRID     =SIMP(statut='o',typ='R'),  
15546            R_EXT_BRID      =SIMP(statut='o',typ='R'),  
15547            H_HAUT_BRID     =SIMP(statut='f',typ='R',defaut=0.0E+0),  
15548            H_BAS_BRID      =SIMP(statut='f',typ='R',defaut= 0.0E+0),  
15549            FILET_ABST      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),  
15550          ),
15551          IMPRESSION      =FACT(statut='f',
15552            regles=(PRESENT_PRESENT('FICHIER','UNITE'),),
15553            FORMAT          =SIMP(statut='f',typ='TXM',defaut="RESULTAT",    
15554                                  into=("RESULTAT","IDEAS","ASTER","CASTEM","ENSIGHT","MED")),
15555            FICHIER         =SIMP(statut='f',typ='TXM'),  
15556            UNITE           =SIMP(statut='f',typ='I'),  
15557            VERSION         =SIMP(statut='f',typ='I',defaut=5,into=(4,5)),
15558            NIVE_GIBI       =SIMP(statut='f',typ='I',defaut=10,into=(3,10)),
15559          ),
15560          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
15561 )  ;
15562
15563 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
15564 #            CONFIGURATION MANAGEMENT OF EDF VERSION
15565 # ======================================================================
15566 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
15567 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
15568 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
15569 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
15570 # (AT YOUR OPTION) ANY LATER VERSION.                                 
15571 #
15572 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
15573 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
15574 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
15575 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
15576 #
15577 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
15578 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
15579 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
15580 # ======================================================================
15581 # RESPONSABLE GNICOLAS G.NICOLAS
15582
15583 from Macro.macr_adap_mail_ops import macr_adap_mail_ops
15584
15585 MACR_INFO_MAIL=MACRO(nom="MACR_INFO_MAIL",op=macr_adap_mail_ops,
15586                      docu="U7.03.02-b",
15587                      fr="Donner des informations sur un maillage.",
15588                      ang="To give information about a mesh.",
15589 #
15590 # 1. Le niveau d'information
15591 #
15592          INFO           = SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
15593 #
15594 # 2. Version de HOMARD
15595 #
15596          VERSION_HOMARD = SIMP(statut='f',typ='TXM',defaut="V6_2",
15597                                into=("V6_2", "V6_N", "V6_N_PERSO"),
15598                            fr="Version de HOMARD",
15599                            ang="HOMARD release"),
15600 #
15601 # 3. Langue des messages issus de HOMARD
15602 #
15603          LANGUE = SIMP(statut='f',typ='TXM',defaut="FRANCAIS",    
15604                                into=("FRANCAIS","FRENCH","ANGLAIS","ENGLISH",),
15605                            fr="Langue des messages issus de HOMARD.",
15606                            ang="Language for HOMARD messages." ),
15607 #
15608 # 4. Gestion des éléments autres que des simplexes
15609 #    Remarque : pour le moment, on bride le choix 2
15610 #       0 : autres elements refusés (defaut)
15611 #       1 : analyse exclusivement sur les simplexes, mais autres éléments acceptés
15612 #       2 : tous
15613 #
15614          NON_SIMPLEXE   = SIMP(statut='f',typ='I',defaut=0,into=(0,1),
15615                           fr="Acceptation d'éléments quad, hexa et penta",
15616                           ang="quad, hexa and penta elements allowed" ),
15617 #
15618 # 5. Le nom du maillage a analyser
15619 #
15620          MAILLAGE       = SIMP(statut='o',typ=maillage,
15621                            fr="Maillage à analyser.",
15622                            ang="Mesh to be checked." ),
15623 #
15624 # 6. Suivi d'une frontiere
15625 #
15626          MAILLAGE_FRONTIERE = SIMP(statut='f',typ=maillage,
15627                            fr="Maillage de la frontiere à suivre",
15628                            ang="Boundary mesh" ),
15629 #
15630          b_frontiere   =BLOC( condition = " MAILLAGE_FRONTIERE != None " ,
15631                            fr="Groupes définissant la frontière",
15632                            ang="Groups which define the boundary",
15633                            GROUP_MA       = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**' ),
15634                            ) ,
15635 #
15636 # 7. Les options ; par defaut, on ne fait que les nombres
15637 # 7.1. Nombre de noeuds et elements
15638 #
15639          NOMBRE         = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"),
15640                           fr="Nombre de noeuds et éléments du maillage",
15641                           ang="Number of nodes and elements in the mesh" ),
15642 #
15643 # 7.2. Determination de la qualite des elements du maillage
15644 #
15645          QUALITE        = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"),
15646                           fr="Qualité du maillage",
15647                           ang="Mesh quality" ),
15648 #
15649 # 7.3. Connexite du maillage
15650 #
15651          CONNEXITE      = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"),
15652                           fr="Connexité du maillage.",
15653                           ang="Mesh connexity." ),
15654 #
15655 # 7.4. Taille des sous-domaines du maillage
15656 #
15657          TAILLE         = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"),
15658                           fr="Tailles des sous-domaines du maillage.",
15659                           ang="Sizes of mesh sub-domains." ),
15660 #
15661 # 7.5. Controle de la non-interpenetration des elements
15662 #
15663          INTERPENETRATION=SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"),
15664                           fr="Controle de la non interpénétration des éléments.",
15665                           ang="Overlapping checking." ),
15666 #
15667 )  ;
15668
15669 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
15670 #            CONFIGURATION MANAGEMENT OF EDF VERSION
15671 # ======================================================================
15672 # COPYRIGHT (C) 1991 - 2002  EDF R&D                  WWW.CODE-ASTER.ORG
15673 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY  
15674 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY  
15675 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR     
15676 # (AT YOUR OPTION) ANY LATER VERSION.                                                  
15677 #                                                                       
15678 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT   
15679 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF            
15680 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU      
15681 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                              
15682 #                                                                       
15683 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE     
15684 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,         
15685 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.        
15686 # ======================================================================
15687
15688 from Macro.macr_lign_coupe_ops import macr_lign_coupe_ops
15689
15690 def macr_lign_coupe_prod(self,LIGN_COUPE,**args):
15691   if not LIGN_COUPE:  raise AsException("Impossible de typer les concepts resultats")
15692   for m in LIGN_COUPE:
15693     self.type_sdprod(m['TABLE'],table)
15694   return None
15695
15696
15697 MACR_LIGN_COUPE=MACRO(nom="MACR_LIGN_COUPE",op=macr_lign_coupe_ops,sd_prod=macr_lign_coupe_prod,
15698                        docu="",reentrant='n',
15699             UIinfo={"groupes":("Outils métier",)},
15700                        fr="extraction d un résultat sur des lignes de coupes définies par 2 points et un intervalle",
15701          RESULTAT        =SIMP(statut='o',typ=(evol_elas,evol_noli,evol_ther) ),
15702          b_meca        =BLOC(condition = "AsType(RESULTAT) in (evol_elas,evol_noli)",fr="résultat mécanique",
15703            NOM_CHAM        =SIMP(statut='f',typ='TXM',defaut='SIGM_NOEU_DEPL' ),  
15704          ),
15705          b_ther        =BLOC(condition = "AsType(RESULTAT) in (evol_ther,)",fr="résultat thermique",
15706            NOM_CHAM        =SIMP(statut='f',typ='TXM',defaut='TEMP' ),  
15707          ),
15708          MODELE          =SIMP(statut='o',typ=modele ),
15709          UNITE_MAILLAGE  =SIMP(statut='f',typ='I',defaut=25),  
15710          LIGN_COUPE     =FACT(statut='o',max='**',
15711            NB_POINTS       =SIMP(statut='o',typ='I'),
15712            COOR_ORIG       =SIMP(statut='o',typ='R',min=2,max=3),  
15713            COOR_EXTR       =SIMP(statut='o',typ='R',min=2,max=3),  
15714            TABLE           =SIMP(statut='o',typ=(table,CO)), 
15715          ),
15716 )  ;
15717
15718 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
15719 #            CONFIGURATION MANAGEMENT OF EDF VERSION
15720 # ======================================================================
15721 # COPYRIGHT (C) 1991 - 2002  EDF R&D                  WWW.CODE-ASTER.ORG
15722 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY  
15723 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY  
15724 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR     
15725 # (AT YOUR OPTION) ANY LATER VERSION.                                                  
15726 #                                                                       
15727 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT   
15728 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF            
15729 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU      
15730 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                              
15731 #                                                                       
15732 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE     
15733 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,         
15734 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.        
15735 # ======================================================================
15736    
15737 from Macro.macr_recal_ops import macr_recal_ops
15738
15739 def macr_recal_prod(self,**args ):
15740   return listr8
15741
15742 MACR_RECAL = MACRO(nom="MACR_RECAL",op=macr_recal_ops,docu="U4.73.02-a",
15743             UIinfo={"groupes":("Résultats et champs",)},
15744                       sd_prod=macr_recal_prod,
15745                       fr="Réalise le recalage de modèles Aster",
15746          UNITE_ESCL      =SIMP(statut='o',typ='I'),
15747          RESU_EXP        =SIMP(statut='o',typ=assd,max='**'),
15748          RESU_CALC       =SIMP(statut='o',typ=assd,max='**'),
15749          LIST_PARA       =SIMP(statut='o',typ=assd,max='**'),
15750          ITER_MAXI       =SIMP(statut='f',typ='I',defaut=10),
15751          RESI_GLOB_RELA  =SIMP(statut='f',typ='R',defaut=1.E-3),
15752          UNITE_RESU      =SIMP(statut='f',typ='I',defaut=91),
15753          PARA_DIFF_FINI  =SIMP(statut='f',typ='R',defaut=0.001),
15754          GRAPHIQUE       =FACT(statut='d',
15755            UNITE           =SIMP(statut='f',typ='I',defaut=90),
15756            INTERACTIF      =SIMP(statut='f',typ='TXM',defaut='NON',into=("OUI","NON")),)
15757 )  ;
15758
15759 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
15760 #            CONFIGURATION MANAGEMENT OF EDF VERSION
15761 # ======================================================================
15762 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
15763 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
15764 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
15765 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
15766 # (AT YOUR OPTION) ANY LATER VERSION.                                 
15767 #
15768 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
15769 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
15770 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
15771 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
15772 #
15773 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
15774 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
15775 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
15776 # ======================================================================
15777 # RESPONSABLE G8BHHXD X.DESROCHES
15778
15779 from Macro.macro_elas_mult_ops import macro_elas_mult_ops
15780
15781 def macro_elas_mult_prod(self,NUME_DDL,CAS_CHARGE,**args ):
15782   self.type_sdprod(NUME_DDL,nume_ddl)
15783   if CAS_CHARGE[0]['NOM_CAS']      != None : return mult_elas
15784   if CAS_CHARGE[0]['MODE_FOURIER'] != None : return fourier_elas
15785   raise AsException("type de concept resultat non prevu")
15786
15787 MACRO_ELAS_MULT=MACRO(nom="MACRO_ELAS_MULT",op=macro_elas_mult_ops,sd_prod=macro_elas_mult_prod,docu="U4.51.02-d",reentrant='f',
15788             UIinfo={"groupes":("Résolution",)},
15789          regles=(UN_PARMI('CHAR_MECA_GLOBAL','CHAR_CINE_GLOBAL','LIAISON_DISCRET', ),),
15790          MODELE          =SIMP(statut='o',typ=modele),
15791          CHAM_MATER      =SIMP(statut='f',typ=cham_mater),
15792          CARA_ELEM       =SIMP(statut='f',typ=cara_elem),
15793          NUME_DDL        =SIMP(statut='f',typ=(nume_ddl,CO)),
15794          CHAR_MECA_GLOBAL=SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'),
15795          CHAR_CINE_GLOBAL=SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'),
15796          LIAISON_DISCRET =SIMP(statut='f',typ='TXM',into=("OUI",)),
15797          CAS_CHARGE      =FACT(statut='o',max='**',
15798            regles=(UN_PARMI('NOM_CAS','MODE_FOURIER'),
15799                    UN_PARMI('CHAR_MECA','CHAR_CINE','VECT_ASSE'),),
15800            NOM_CAS         =SIMP(statut='f',typ='TXM' ),
15801            MODE_FOURIER    =SIMP(statut='f',typ='I' ),
15802            TYPE_MODE       =SIMP(statut='f',typ='TXM',defaut="SYME",into=("SYME","ANTI","TOUS") ),
15803            CHAR_MECA       =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'),
15804            CHAR_CINE       =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'),
15805            OPTION          =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',
15806                                  into=("EFGE_ELNO_DEPL","EPOT_ELEM_DEPL","SIGM_ELNO_DEPL","SIEF_ELGA_DEPL",
15807                                        "SIGM_ELNO_CART","EFGE_ELNO_CART","DEGE_ELNO_DEPL","EPSI_ELNO_DEPL",
15808                                        "EPSI_ELGA_DEPL","EPSG_ELNO_DEPL","EPSG_ELGA_DEPL","EPSP_ELNO","EPSP_ELGA",
15809                                        "ECIN_ELEM_DEPL","FLUX_ELGA_TEMP","FLUX_ELNO_TEMP","SOUR_ELGA_ELEC",
15810                                        "PRES_ELNO_DBEL","PRES_ELNO_REEL","PRES_ELNO_IMAG","INTE_ELNO_ACTI",
15811                                        "INTE_ELNO_REAC","SIGM_NOZ1_ELGA","ERRE_ELEM_NOZ1","SIGM_NOZ2_ELGA",
15812                                        "ERRE_ELEM_NOZ2","VNOR_ELEM_DEPL","ERRE_ELNO_ELGA","SIRE_ELNO_DEPL",
15813                                        "ERRE_ELGA_NORE","EQUI_ELNO_SIGM","EQUI_ELGA_SIGM","EQUI_ELNO_EPSI",
15814                                        "EQUI_ELGA_EPSI","FORC_NODA","REAC_NODA","EPSI_NOEU_DEPL","SIGM_NOEU_DEPL",
15815                                        "EFGE_NOEU_DEPL","EQUI_NOEU_SIGM","EQUI_NOEU_EPSI","FLUX_NOEU_TEMP") ),
15816            NUME_COUCHE     =SIMP(statut='f',typ='I',defaut=1),
15817            NIVE_COUCHE     =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY")),
15818            SOUS_TITRE      =SIMP(statut='f',typ='TXM',max='**'),
15819            VECT_ASSE       =SIMP(statut='f',typ=cham_no_depl_r),
15820          ),
15821          SOLVEUR         =FACT(statut='d',
15822            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT") ),
15823            b_mult_front    = BLOC ( condition = "METHODE == 'MULT_FRONT' ",
15824                                     fr="Paramètres de la méthode multi frontale",
15825              RENUM           =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ),
15826            ),
15827            b_ldlt          =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT",
15828              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
15829             ),
15830            b_ldlt_mult     =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
15831                                    fr="Paramètres relatifs à la non inversibilité de la matrice à factorise",
15832              NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
15833              STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
15834            ),
15835          ),
15836          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2)),
15837          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
15838 )  ;
15839
15840 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
15841 #            CONFIGURATION MANAGEMENT OF EDF VERSION
15842 # ======================================================================
15843 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
15844 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
15845 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
15846 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
15847 # (AT YOUR OPTION) ANY LATER VERSION.                                 
15848 #
15849 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
15850 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
15851 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
15852 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
15853 #
15854 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
15855 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
15856 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
15857 # ======================================================================
15858 def macro_matr_ajou_prod(self,MATR_AMOR_AJOU,MATR_MASS_AJOU,MATR_RIGI_AJOU,FORC_AJOU,**args):
15859   self.type_sdprod(MATR_AMOR_AJOU,matr_asse_depl_r)
15860   self.type_sdprod(MATR_MASS_AJOU,matr_asse_depl_r)
15861   self.type_sdprod(MATR_RIGI_AJOU,matr_asse_depl_r)
15862   if FORC_AJOU != None:
15863     for m in FORC_AJOU:
15864       self.type_sdprod(m['VECTEUR'],vect_asse_gene)
15865
15866   return None
15867
15868 MACRO_MATR_AJOU=MACRO(nom="MACRO_MATR_AJOU",op=-13,docu="U4.66.11-c",sd_prod=macro_matr_ajou_prod,
15869             UIinfo={"groupes":("Matrices/vecteurs",)},
15870       regles=(AU_MOINS_UN('MODE_MECA','DEPL_IMPO','MODELE_GENE'),
15871               AU_MOINS_UN('MATR_MASS_AJOU','MATR_AMOR_AJOU','MATR_RIGI_AJOU'),
15872               EXCLUS('MODE_MECA','DEPL_IMPO','MODELE_GENE'),
15873               EXCLUS('MONO_APPUI','MODE_STAT',),
15874              ),
15875          MAILLAGE        =SIMP(statut='o',typ=maillage),
15876          GROUP_MA_FLUIDE =SIMP(statut='o',typ=grma),
15877          GROUP_MA_INTERF =SIMP(statut='o',typ=grma),
15878          MODELISATION    =SIMP(statut='o',typ='TXM',into=("PLAN","AXIS","3D")),
15879          FLUIDE          =FACT(statut='o',max='**',
15880            RHO             =SIMP(statut='o',typ='R'),
15881            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",)),
15882            GROUP_MA        =SIMP(statut='f',typ=grma),
15883            MAILLE          =SIMP(statut='f',typ=ma),
15884          ),
15885          DDL_IMPO        =FACT(statut='o',max='**',
15886            regles=(UN_PARMI('NOEUD','GROUP_NO'),
15887                    UN_PARMI('PRES_FLUIDE','PRES_SORTIE'),),
15888            NOEUD           =SIMP(statut='f',typ=no),
15889            GROUP_NO        =SIMP(statut='f',typ=grno),
15890            PRES_FLUIDE     =SIMP(statut='f',typ='R'),
15891            PRES_SORTIE     =SIMP(statut='f',typ='R'),
15892          ),
15893          ECOULEMENT      =FACT(statut='f',max='**',
15894            GROUP_MA_1      =SIMP(statut='o',typ=grma),
15895            GROUP_MA_2      =SIMP(statut='o',typ=grma),
15896            VNOR_1          =SIMP(statut='o',typ='R'),
15897            VNOR_2          =SIMP(statut='f',typ='R'),
15898            POTENTIEL       =SIMP(statut='f',typ=evol_ther),
15899          ),
15900          MODE_MECA       =SIMP(statut='f',typ=mode_meca),
15901          DEPL_IMPO       =SIMP(statut='f',typ=cham_no_depl_r),
15902          MODELE_GENE     =SIMP(statut='f',typ=modele_gene),
15903          NUME_DDL_GENE   =SIMP(statut='f',typ=nume_ddl_gene),
15904          DIST_REFE       =SIMP(statut='f',typ='R',defaut= 1.0E-2),
15905          MATR_MASS_AJOU  =SIMP(statut='f',typ=(CO,matr_asse)),
15906          MATR_RIGI_AJOU  =SIMP(statut='f',typ=(CO,matr_asse)),
15907          MATR_AMOR_AJOU  =SIMP(statut='f',typ=(CO,matr_asse)),
15908          MONO_APPUI      =SIMP(statut='f',typ='TXM',into=("OUI",),),
15909          MODE_STAT       =SIMP(statut='f',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc,),),
15910          FORC_AJOU       =FACT(statut='f',max='**',
15911            DIRECTION     =SIMP(statut='o',typ='R',max=3),
15912            NOEUD         =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
15913            GROUP_NO      =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
15914            VECTEUR       =SIMP(statut='o',typ=(CO,vect_asse_gene)),
15915          ),
15916          SOLVEUR         =FACT(statut='d',
15917            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
15918            b_mult_front    =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
15919              RENUM           =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ),
15920            ),
15921            b_ldlt         =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT",
15922              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
15923            ),
15924            b_ldlt_mult    =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
15925                                    fr="Paramètres relatifs à la non iversibilité de la matrice à factorise",
15926              NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
15927              STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
15928            ),
15929            b_gcpc          =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué",
15930              PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ),
15931              NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ),
15932              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ),
15933              RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
15934              NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
15935            ),
15936          ),
15937          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
15938          NOEUD_DOUBLE    =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")),
15939          AVEC_MODE_STAT  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")),
15940 ) ;
15941
15942 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
15943 #            CONFIGURATION MANAGEMENT OF EDF VERSION
15944 # ======================================================================
15945 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
15946 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
15947 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
15948 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
15949 # (AT YOUR OPTION) ANY LATER VERSION.                                 
15950 #
15951 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
15952 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
15953 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
15954 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
15955 #
15956 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
15957 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
15958 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
15959 # ======================================================================
15960
15961 from Macro.macro_matr_asse_ops import macro_matr_asse_ops
15962
15963 def macro_matr_asse_prod(self,NUME_DDL,MATR_ASSE,**args):
15964   if not MATR_ASSE:  raise AsException("Impossible de typer les concepts resultats")
15965   if not NUME_DDL:  raise AsException("Impossible de typer les concepts resultats")
15966   self.type_sdprod(NUME_DDL,nume_ddl)
15967   for m in MATR_ASSE:
15968     opti=m['OPTION']
15969
15970     if opti in ( "RIGI_MECA","RIGI_FLUI_STRU","RIGI_MECA_LAGR" ,
15971        "MASS_MECA" , "MASS_FLUI_STRU" ,"RIGI_GEOM" ,"RIGI_ROTA",
15972        "AMOR_MECA","IMPE_MECA","MASS_ID_MDEP_R","MASS_ID_MDNS_R",
15973        "ONDE_FLUI","MASS_MECA_DIAG" ) : t=matr_asse_depl_r
15974
15975     if opti in ( "RIGI_ACOU","MASS_ACOU","AMOR_ACOU",) : t=matr_asse_pres_c
15976
15977     if opti in ( "RIGI_THER","MASS_THER","RIGI_THER_CONV" ,
15978        "RIGI_THER_CONV_D","MASS_ID_MTEM_R","MASS_ID_MTNS_R",) : t=matr_asse_temp_r
15979
15980     if opti == "RIGI_MECA_HYST"   : t= matr_asse_depl_c
15981
15982     self.type_sdprod(m['MATRICE'],t)
15983   return None
15984
15985 MACRO_MATR_ASSE=MACRO(nom="MACRO_MATR_ASSE",op=macro_matr_asse_ops,docu="U4.61.21-d",
15986             UIinfo={"groupes":("Matrices/vecteurs",)},
15987                       sd_prod=macro_matr_asse_prod,
15988                       fr="Calcul des matrices assemblées (matr_asse_gd) par exemple de rigidité, de masse ",
15989          MODELE          =SIMP(statut='o',typ=modele),
15990          CHAM_MATER      =SIMP(statut='f',typ=cham_mater),
15991          CARA_ELEM       =SIMP(statut='f',typ=cara_elem),
15992          CHARGE          =SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**'),
15993          INST            =SIMP(statut='f',typ='R'),
15994          NUME_DDL        =SIMP(statut='o',typ=(nume_ddl,CO)),
15995          SOLVEUR         =FACT(statut='d',
15996            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",
15997                                  into=("LDLT","MULT_FRONT","GCPC")),
15998            RENUM           =SIMP(statut='f',typ='TXM',into=("SANS","RCMK","MD","MDA","METIS")),
15999          ),
16000          MATR_ASSE       =FACT(statut='o',max='**',
16001            MATRICE         =SIMP(statut='o',typ=(matr_asse,CO)),
16002            OPTION          =SIMP(statut='o',typ='TXM',
16003                                  into=("RIGI_MECA","MASS_MECA","MASS_MECA_DIAG",
16004                                        "AMOR_MECA","RIGI_MECA_HYST","IMPE_MECA",
16005                                        "ONDE_FLUI","RIGI_FLUI_STRU","MASS_FLUI_STRU",
16006                                        "RIGI_ROTA","RIGI_GEOM","RIGI_MECA_LAGR",
16007                                        "RIGI_THER","MASS_THER",
16008                                        "RIGI_ACOU","MASS_ACOU","AMOR_ACOU",
16009                                        "MASS_ID_MTEM_R","MASS_ID_MTNS_R","MASS_ID_MDEP_R","MASS_ID_MDNS_R",)
16010                                  ),
16011            SIEF_ELGA       =SIMP(statut='f',typ=cham_elem_sief_r),
16012            MODE_FOURIER    =SIMP(statut='f',typ='I'),
16013            THETA           =SIMP(statut='f',typ=theta_geom),
16014            PROPAGATION     =SIMP(statut='f',typ='R'),
16015          ),
16016          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
16017          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
16018 )  ;
16019
16020 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
16021 #            CONFIGURATION MANAGEMENT OF EDF VERSION
16022 # ======================================================================
16023 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
16024 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
16025 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
16026 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
16027 # (AT YOUR OPTION) ANY LATER VERSION.                                 
16028 #
16029 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
16030 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
16031 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
16032 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
16033 #
16034 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
16035 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
16036 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
16037 # ======================================================================
16038
16039 from Macro.macro_miss_3d_ops import macro_miss_3d_ops
16040
16041 MACRO_MISS_3D=MACRO(nom="MACRO_MISS_3D",op=macro_miss_3d_ops,fr=" ",docu="U7.03.11-b",
16042             UIinfo={"groupes":("Matrices/vecteurs",)},
16043          OPTION          =FACT(statut='o',
16044            regles=(UN_PARMI('TOUT','MODULE'),),
16045            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",)),
16046            MODULE          =SIMP(statut='f',typ='TXM',into=("PRE_MISS","MISS_EVOL","MISS_IMPE")),
16047          ),
16048          PROJET          =SIMP(statut='o',typ='TXM'),  
16049          REPERTOIRE      =SIMP(statut='f',typ='TXM'),  
16050          UNITE_IMPR_ASTER=SIMP(statut='f',typ='I',defaut=25),  
16051          UNITE_OPTI_MISS =SIMP(statut='f',typ='I',defaut=26),  
16052          UNITE_MODELE_SOL=SIMP(statut='f',typ='I',defaut=27),  
16053          UNITE_RESU_IMPE =SIMP(statut='f',typ='I',defaut=30),  
16054 )  ;
16055
16056 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
16057 #            CONFIGURATION MANAGEMENT OF EDF VERSION
16058 # ======================================================================
16059 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
16060 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
16061 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
16062 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
16063 # (AT YOUR OPTION) ANY LATER VERSION.                                 
16064 #
16065 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
16066 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
16067 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
16068 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
16069 #
16070 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
16071 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
16072 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
16073 # ======================================================================
16074
16075 from Macro.macro_mode_meca_ops import macro_mode_meca_ops
16076
16077 def macro_mode_meca_prod(self,MATR_A,MATR_B,**args ):
16078   self.type_sdprod(MATR_A,matr_asse_depl_r)
16079   self.type_sdprod(MATR_B,matr_asse_depl_r)
16080   return mode_meca
16081
16082 MACRO_MODE_MECA=MACRO(nom="MACRO_MODE_MECA",op=macro_mode_meca_ops,sd_prod=macro_mode_meca_prod,
16083                      docu="U4.52.02-d",reentrant='n',
16084             UIinfo={"groupes":("Résolution",)},
16085          MATR_A          =SIMP(statut='o',typ=(CO,matr_asse_depl_r) ),
16086          MATR_B          =SIMP(statut='o',typ=(CO,matr_asse_depl_r) ),
16087          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
16088 #  ce mot cle ne devrait il pas etre dans calc_freq  
16089          METHODE         =SIMP(statut='f',typ='TXM',defaut="SORENSEN",    
16090                                into=("TRI_DIAG","JACOBI","SORENSEN",) ),
16091          b_tri_diag =BLOC(condition = "METHODE == 'TRI_DIAG'",
16092            PREC_ORTHO      =SIMP(statut='f',typ='R',defaut= 1.E-12,val_min=0.E+0 ),
16093            NMAX_ITER_ORTHO =SIMP(statut='f',typ='I',defaut= 5,val_min=0 ),
16094            PREC_LANCZOS    =SIMP(statut='f',typ='R',defaut= 1.E-8,val_min=0.E+0 ),
16095            NMAX_ITER_QR    =SIMP(statut='f',typ='I',defaut= 30,val_min=0 ), 
16096          ),
16097          b_jacobi =BLOC(condition = "METHODE == 'JACOBI'",
16098            PREC_BATHE      =SIMP(statut='f',typ='R',defaut= 1.E-10,val_min=0.E+0 ),
16099            NMAX_ITER_BATHE =SIMP(statut='f',typ='I',defaut= 40,val_min=0 ),
16100            PREC_JACOBI     =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0 ),
16101            NMAX_ITER_JACOBI=SIMP(statut='f',typ='I',defaut= 12,val_min=0 ),
16102          ),
16103          b_sorensen =BLOC(condition = "METHODE == 'SORENSEN'",
16104            PREC_SOREN      =SIMP(statut='f',typ='R',defaut= 0.E+0,val_min=0.E+0 ),  
16105            NMAX_ITER_SOREN =SIMP(statut='f',typ='I',defaut= 20,val_min=0 ),  
16106            PARA_ORTHO_SOREN=SIMP(statut='f',typ='R',defaut= 0.717,val_min=0.E+0 ),
16107          ),
16108          OPTION          =SIMP(statut='f',typ='TXM',defaut="SANS",    
16109                                into=("MODE_RIGIDE","SANS") ),
16110          CALC_FREQ       =FACT(statut='d',min=0,
16111            regles=(UN_PARMI('FREQ','FREQ_MAX'),
16112                    PRESENT_PRESENT('FREQ_MIN','FREQ_MAX'),
16113                    PRESENT_PRESENT('FREQ_MAX','NB_BLOC_FREQ'),
16114                    EXCLUS('DIM_SOUS_ESPACE','COEF_DIM_ESPACE'),),
16115            FREQ            =SIMP(statut='f',typ='R',min=2,validators=NoRepeat(),max='**',val_min=0.E+0 ),  
16116            FREQ_MIN        =SIMP(statut='f',typ='R' ),  
16117            FREQ_MAX        =SIMP(statut='f',typ='R' ),  
16118            NB_BLOC_FREQ    =SIMP(statut='f',typ='I' ),  
16119            DIM_SOUS_ESPACE =SIMP(statut='f',typ='I' ),  
16120            COEF_DIM_ESPACE =SIMP(statut='f',typ='I' ),
16121            NPREC_SOLVEUR   =SIMP(statut='f',typ='I',defaut= 8 ),  
16122            NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 5 ),  
16123            PREC_SHIFT      =SIMP(statut='f',typ='R',defaut= 5.E-2 ),  
16124            SEUIL_FREQ      =SIMP(statut='f',typ='R' ,defaut= 1.E-2 ),  
16125            STOP_FREQ_VIDE  =SIMP(statut='f',typ='TXM',defaut="NON" ,into=("OUI","NON") ),
16126          ),
16127          VERI_MODE       =FACT(statut='d',min=0,
16128            STOP_ERREUR     =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
16129            SEUIL           =SIMP(statut='f',typ='R',defaut= 1.E-6 ),  
16130            PREC_SHIFT      =SIMP(statut='f',typ='R',defaut= 5.E-3 ),  
16131            STURM           =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
16132          ),
16133          NORM_MODE       =FACT(statut='o',max='**',
16134            MASS_INER       =SIMP(statut='o',typ=tabl_mass_iner ),
16135            NORME           =SIMP(statut='f',typ='TXM',defaut="TRAN_ROTA",    
16136                                  into=("MASS_GENE","RIGI_GENE","EUCL",           
16137                                        "EUCL_TRAN","TRAN","TRAN_ROTA") ),
16138            INFO            =SIMP(statut='f',typ='I',defaut= 1 ,into=(1,2) ),
16139          ),
16140          FILTRE_MODE     =FACT(statut='f',
16141            CRIT_EXTR       =SIMP(statut='f',typ='TXM',defaut="MASS_EFFE_UN",    
16142                                  into=("MASS_EFFE_UN","MASS_GENE") ),
16143            SEUIL           =SIMP(statut='f',typ='R',defaut= 1.E-3 ),  
16144          ),
16145          IMPRESSION      =FACT(statut='d',
16146            TOUT_PARA       =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
16147            CUMUL           =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
16148            CRIT_EXTR       =SIMP(statut='f',typ='TXM',defaut="MASS_EFFE_UN",    
16149                                  into=("MASS_EFFE_UN","MASS_GENE",) ),
16150          ),
16151 )  ;
16152
16153 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
16154 #            CONFIGURATION MANAGEMENT OF EDF VERSION
16155 # ======================================================================
16156 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
16157 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
16158 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
16159 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
16160 # (AT YOUR OPTION) ANY LATER VERSION.                                 
16161 #
16162 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
16163 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
16164 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
16165 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
16166 #
16167 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
16168 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
16169 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
16170 # ======================================================================
16171
16172 from Macro.macro_proj_base_ops import macro_proj_base_ops
16173
16174 def macro_proj_base_prod(self,MATR_ASSE_GENE,VECT_ASSE_GENE,PROFIL,**args ):
16175   if MATR_ASSE_GENE != None:
16176     for m in MATR_ASSE_GENE:
16177       self.type_sdprod(m['MATRICE'],matr_asse_gene_r)
16178       self.type_sdprod(m['MATR_ASSE'],matr_asse_depl_r)
16179   if VECT_ASSE_GENE != None:
16180     for v in VECT_ASSE_GENE:
16181       self.type_sdprod(v['VECTEUR'],vect_asse_gene)
16182   return None
16183
16184 MACRO_PROJ_BASE=MACRO(nom="MACRO_PROJ_BASE",op=macro_proj_base_ops,docu="U4.63.11-d",
16185             UIinfo={"groupes":("Matrices/vecteurs",)},
16186                       sd_prod=macro_proj_base_prod,
16187                       fr="Projection des matrices et/ou vecteurs assemblés sur une base de vecteurs",
16188          BASE            =SIMP(statut='o',typ=(mode_meca,mode_stat,base_modale,mode_gene) ),
16189          NB_VECT         =SIMP(statut='f',typ='I',defaut= 9999),
16190          PROFIL          =SIMP(statut='f',typ='TXM',defaut="DIAG",into=("PLEIN","DIAG") ),
16191          MATR_ASSE_GENE  =FACT(statut='f',max='**',
16192            MATRICE         =SIMP(statut='o',typ=(CO,matr_asse)),
16193            MATR_ASSE       =SIMP(statut='f',typ=matr_asse_depl_r),
16194            MATR_ASSE_GENE  =SIMP(statut='f',typ=matr_asse_gene_r),
16195          ),
16196          VECT_ASSE_GENE  =FACT(statut='f',max='**',
16197            VECTEUR         =SIMP(statut='o',typ=(CO,vect_asse)),
16198            TYPE_VECT       =SIMP(statut='f',typ='TXM',defaut="FORC"),
16199            VECT_ASSE       =SIMP(statut='f',typ=cham_no_depl_r),
16200            VECT_ASSE_GENE  =SIMP(statut='f',typ=vect_asse_gene),
16201          ),
16202          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
16203 )  ;
16204
16205 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
16206 #            CONFIGURATION MANAGEMENT OF EDF VERSION
16207 # ======================================================================
16208 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
16209 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
16210 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
16211 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
16212 # (AT YOUR OPTION) ANY LATER VERSION.                                 
16213 #
16214 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
16215 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
16216 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
16217 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
16218 #
16219 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
16220 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
16221 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
16222 # ======================================================================
16223 MAJ_CATA=PROC(nom="MAJ_CATA",op=20,docu="U4.15.01-e",
16224             UIinfo={"groupes":("Gestion du travail",)},
16225               fr="Compilation des catalogues de commandes et d éléments",
16226
16227          ELEMENT         =FACT(statut='f',),
16228
16229 )  ;
16230
16231 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
16232 #            CONFIGURATION MANAGEMENT OF EDF VERSION
16233 # ======================================================================
16234 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
16235 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
16236 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
16237 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR
16238 # (AT YOUR OPTION) ANY LATER VERSION.
16239 #
16240 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT
16241 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF
16242 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU
16243 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.
16244 #
16245 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE
16246 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,
16247 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.
16248 # ======================================================================
16249 # RESPONSABLE VABHHTS J.PELLET
16250 MECA_STATIQUE=OPER(nom="MECA_STATIQUE",op=46,sd_prod=evol_elas,
16251                    fr="Analyse mécanique statique linéaire",docu="U4.51.01-g",reentrant='f',
16252             UIinfo={"groupes":("Résolution",)},
16253                    regles=(EXCLUS("INST","LIST_INST"),
16254                            AU_MOINS_UN('CHAM_MATER','CARA_ELEM',), ),
16255          MODELE          =SIMP(statut='o',typ=modele),
16256          CHAM_MATER      =SIMP(statut='f',typ=cham_mater,
16257          fr="le CHAM_MATER est nécessaire, sauf si le modèle ne contient que des éléments discrets (modélisations DIS_XXX)",
16258          ang="CHAM_MATER is compulsory, except if the model contains only discret elements (modelizations DIS_XXX)"),
16259          CARA_ELEM       =SIMP(statut='f',typ=cara_elem,
16260          fr="le CARA_ELEM est nécessaire dès que le modèle contient des éléments de structure : coques, poutres, ...",
16261          ang="CARA_ELEM is compulsory as soon as the model contains structural elements : plates, beams, ..."),
16262          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
16263          EXCIT           =FACT(statut='o',max='**',
16264            CHARGE          =SIMP(statut='o',typ=(char_meca,char_cine_meca)),
16265            FONC_MULT       =SIMP(statut='f',typ=(fonction,formule)),
16266            TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",) ),
16267          ),
16268          INST            =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
16269          LIST_INST       =SIMP(statut='f',typ=listr8),
16270          INST_FIN        =SIMP(statut='f',typ='R'),
16271          OPTION          =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',
16272                                into=("SANS","SIGM_ELNO_DEPL","SIPO_ELNO_DEPL","EFGE_ELNO_DEPL",
16273                                      "EPSI_ELNO_DEPL","EPSI_ELGA_DEPL","EPME_ELNO_DEPL","EPME_ELGA_DEPL",
16274                                      "EQUI_ELNO_SIGM","EQUI_ELGA_SIGM","EQUI_ELNO_EPSI","EQUI_ELGA_EPSI",
16275                                      "EQUI_ELNO_EPME","EQUI_ELGA_EPME","DEGE_ELNO_DEPL","EPOT_ELEM_DEPL",
16276                                      "ENEL_ELGA","ENEL_ELNO_ELGA"),
16277                                fr="Attention: le mot clé OPTION sera supprimé en version 7.3",
16278                           ),
16279          NUME_COUCHE     =SIMP(statut='f',typ='I',defaut=1),
16280          NIVE_COUCHE     =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY") ),
16281          ANGLE           =SIMP(statut='f',typ='I',defaut=0),
16282          PLAN            =SIMP(statut='f',typ='TXM',defaut="MAIL",into=("SUP","INF","MOY","MAIL") ),
16283          SENSIBILITE     =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**',
16284                                fr="Liste des paramètres de sensibilité.",
16285                                ang="List of sensitivity parameters"),
16286          SOLVEUR         =FACT(statut='d',
16287            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
16288            b_mult_front    =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
16289              RENUM           =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ),
16290            ),
16291            b_ldlt          =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT",
16292              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
16293            ),
16294            b_ldlt_mult     =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
16295                                    fr="Paramètres relatifs à la non inversibilité de la matrice à factorise",
16296              NPREC           =SIMP(statut='f',typ='I',defaut=8),
16297              STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
16298            ),
16299            b_gcpc         =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué",
16300              PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ),
16301              NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ),
16302              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ),
16303              RESI_RELA       =SIMP(statut='f',typ='R',defaut=1.E-6),
16304              NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
16305            ),
16306          ),
16307          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
16308 )  ;
16309
16310 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
16311 #            CONFIGURATION MANAGEMENT OF EDF VERSION
16312 # ======================================================================
16313 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
16314 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
16315 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
16316 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
16317 # (AT YOUR OPTION) ANY LATER VERSION.                                 
16318 #
16319 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
16320 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
16321 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
16322 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
16323 #
16324 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
16325 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
16326 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
16327 # ======================================================================
16328 # RESPONSABLE GNICOLAS G.NICOLAS
16329 MEMO_NOM_SENSI=PROC(nom="MEMO_NOM_SENSI",op=129,docu="U4.31.07-a",
16330             UIinfo={"groupes":("Fonction",)},
16331                     fr="Mémorisation des noms des concepts dérivés.",
16332                     ang="Memorisation of the names of the sensitive concepts.",
16333
16334          regles=(AU_MOINS_UN('NOM','NOM_ZERO','NOM_UN'),),
16335
16336          NOM=FACT(statut='f',max='**',
16337              regles=(PRESENT_PRESENT('MOT_CLE','VALEUR','MOT_FACT' ),),
16338
16339              NOM_SD=SIMP(statut='o',typ='TXM',
16340                          fr="Nom de la structure de base",
16341                          ang="Name of the basic structure"),
16342
16343              PARA_SENSI=SIMP(statut='o',typ=(para_sensi,theta_geom),
16344                          fr="Nom du paramètre sensible",
16345                          ang="Name of the sensitive parameter"),
16346
16347              NOM_COMPOSE=SIMP(statut='f',typ='TXM',defaut=" ",
16348                          fr="Nom de la structure composée",
16349                          ang="Name of the built structure"),
16350
16351              MOT_FACT=SIMP(statut='f',typ='TXM',max='**',
16352                          fr="Liste des mots clés facteurs concernés par la dérivation",
16353                          ang="Factor keyword list involved in derivation"),
16354
16355              MOT_CLE=SIMP(statut='f',typ='TXM',max='**',
16356                          fr="Liste des mots clés concernés par la dérivation",
16357                          ang="Keyword list involved in derivation"),
16358
16359              VALEUR=SIMP(statut='f',typ='TXM',max='**',
16360                          fr="Liste des objets concernés par la dérivation",
16361                          ang="Object list involved in derivation"),
16362
16363                  ),
16364
16365          NOM_ZERO=SIMP(statut='f',typ=fonction,
16366                        fr="Nom de la fonction nulle",
16367                        ang="Name of the zero fonction"),
16368
16369          NOM_UN  =SIMP(statut='f',typ=fonction,
16370                        fr="Nom de la fonction unité",
16371                        ang="Name of the one fonction"),
16372
16373 )  ;
16374
16375 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
16376 #            CONFIGURATION MANAGEMENT OF EDF VERSION
16377 # ======================================================================
16378 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
16379 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
16380 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
16381 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
16382 # (AT YOUR OPTION) ANY LATER VERSION.                                 
16383 #
16384 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
16385 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
16386 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
16387 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
16388 #
16389 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
16390 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
16391 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
16392 # ======================================================================
16393 MODE_ITER_CYCL=OPER(nom="MODE_ITER_CYCL",op=  80,sd_prod=mode_cycl,
16394                     fr="Modes propres d une structure à répétitivité cyclique à partir d une base de modes propres réels",
16395                     docu="U4.52.05-f",reentrant='n',
16396             UIinfo={"groupes":("Résolution",)},
16397          BASE_MODALE     =SIMP(statut='o',typ=base_modale ),
16398          NB_MODE         =SIMP(statut='f',typ='I',defaut= 999 ),
16399          NB_SECTEUR      =SIMP(statut='o',typ='I' ),
16400          LIAISON         =FACT(statut='o',
16401            DROITE          =SIMP(statut='o',typ='TXM' ),
16402            GAUCHE          =SIMP(statut='o',typ='TXM' ),
16403            AXE             =SIMP(statut='f',typ='TXM' ),
16404          ),
16405          VERI_CYCL       =FACT(statut='f',
16406            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
16407            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF",) ),
16408            DIST_REFE       =SIMP(statut='f',typ='R' ),
16409          ),
16410          CALCUL          =FACT(statut='o',
16411            TOUT_DIAM       =SIMP(statut='f',typ='TXM',into=("OUI",) ),
16412            NB_DIAM         =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
16413            OPTION          =SIMP(statut='f',typ='TXM',defaut="PLUS_PETITE"
16414                                 ,into=("PLUS_PETITE","CENTRE","BANDE") ),
16415            b_centre      =BLOC(condition = "OPTION == 'CENTRE'",
16416              FREQ            =SIMP(statut='o',typ='R',),
16417            ),
16418            b_bande       =BLOC(condition = "OPTION == 'BANDE'",
16419              FREQ            =SIMP(statut='o',typ='R',min=2,validators=NoRepeat(),max=2),
16420            ),
16421 #  NMAX_FREQ n a-t-il pas un sens qu avec OPTION CENTRE                                
16422            NMAX_FREQ       =SIMP(statut='f',typ='I',defaut= 10 ),
16423            PREC_SEPARE     =SIMP(statut='f',typ='R',defaut= 100. ),
16424            PREC_AJUSTE     =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
16425            NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 50 ),
16426          ),
16427          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
16428 )  ;
16429
16430 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
16431 #            CONFIGURATION MANAGEMENT OF EDF VERSION
16432 # ======================================================================
16433 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
16434 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
16435 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
16436 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
16437 # (AT YOUR OPTION) ANY LATER VERSION.                                 
16438 #
16439 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
16440 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
16441 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
16442 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
16443 #
16444 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
16445 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
16446 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
16447 # ======================================================================
16448 def mode_iter_inv_prod(MATR_A,MATR_C,TYPE_RESU,**args ):
16449   if TYPE_RESU == "MODE_FLAMB" : return mode_flamb
16450   if AsType(MATR_C) == matr_asse_depl_r : return mode_meca_c
16451   if AsType(MATR_A) == matr_asse_depl_r : return mode_meca
16452   if AsType(MATR_A) == matr_asse_pres_r : return mode_acou
16453   if AsType(MATR_A) == matr_asse_gene_r : return mode_gene
16454   raise AsException("type de concept resultat non prevu")
16455
16456 MODE_ITER_INV=OPER(nom="MODE_ITER_INV",op=  44,sd_prod=mode_iter_inv_prod
16457                     ,fr="Modes propres par itérations inverses ; valeurs propres et modes réels ou complexes",
16458                      docu="U4.52.04-g",reentrant='n',
16459             UIinfo={"groupes":("Résolution",)},
16460          MATR_A          =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ) ),
16461          MATR_B          =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ) ),
16462          MATR_C          =SIMP(statut='f',typ=matr_asse_depl_r ),
16463          TYPE_RESU       =SIMP(statut='f',position='global',typ='TXM',defaut="DYNAMIQUE",   
16464                                into=("MODE_FLAMB","DYNAMIQUE"),fr="Type d analyse" ),
16465          b_dynam         =BLOC(condition = "TYPE_RESU == 'DYNAMIQUE'",
16466            CALC_FREQ       =FACT(statut='o',fr="Choix des paramètres pour le calcul des valeurs propres",
16467            
16468              OPTION          =SIMP(statut='f',typ='TXM',defaut="AJUSTE",into=("SEPARE","AJUSTE","PROCHE"),
16469                                    fr="Choix de l option pour estimer les valeurs propres"  ),
16470              FREQ            =SIMP(statut='o',typ='R',max='**'),
16471              AMOR_REDUIT     =SIMP(statut='f',typ='R',max='**'),     
16472              NMAX_FREQ       =SIMP(statut='f',typ='I',defaut= 0,val_min=0 ),           
16473              NMAX_ITER_SEPARE=SIMP(statut='f',typ='I' ,defaut= 30,val_min=0 ),
16474              PREC_SEPARE     =SIMP(statut='f',typ='R',defaut= 1.E-4,val_min=0.E+0 ),
16475              NMAX_ITER_AJUSTE=SIMP(statut='f',typ='I',defaut= 15,val_min=0 ),
16476              PREC_AJUSTE     =SIMP(statut='f',typ='R',defaut= 1.E-4,val_min=0.E+0 ),
16477
16478              NPREC_SOLVEUR   =SIMP(statut='f',typ='I',defaut= 8,val_min=0 ),
16479              NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 5,val_min=0 ),
16480              PREC_SHIFT      =SIMP(statut='f',typ='R',defaut= 5.E-2,val_min=0.E+0, ),
16481              SEUIL_FREQ      =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0, ),
16482            ),
16483          ),
16484          b_flamb        =BLOC(condition = "TYPE_RESU == 'MODE_FLAMB'",
16485            CALC_FREQ       =FACT(statut='o',fr="Choix des paramètres pour le calcul des valeurs propres",
16486            
16487              OPTION          =SIMP(statut='f',typ='TXM',defaut="AJUSTE",into=("SEPARE","AJUSTE","PROCHE"),
16488                                  fr="Choix de l option pour estimer les valeurs propres"  ),
16489              CHAR_CRIT       =SIMP(statut='o',typ='R',validators=NoRepeat(),max='**' ),
16490              NMAX_FREQ       =SIMP(statut='f',typ='I',defaut= 0,val_min=0 ),           
16491              NMAX_ITER_SEPARE=SIMP(statut='f',typ='I' ,defaut= 30,val_min=0 ),
16492              PREC_SEPARE     =SIMP(statut='f',typ='R',defaut= 1.E-4,val_min=0.E+0, ),
16493              NMAX_ITER_AJUSTE=SIMP(statut='f',typ='I',defaut= 15 ),
16494              PREC_AJUSTE     =SIMP(statut='f',typ='R',defaut= 1.E-4,val_min=0.E+0, ),
16495            
16496              NPREC_SOLVEUR   =SIMP(statut='f',typ='I',defaut= 8,val_min=0 ),
16497              NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 5,val_min=0 ),
16498              PREC_SHIFT      =SIMP(statut='f',typ='R',defaut= 5.E-2,val_min=0.E+0, ),
16499              SEUIL_FREQ      =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0, ),
16500            ),
16501          ),
16502          CALC_MODE       =FACT(statut='d',min=0,fr="Choix des paramètres pour le calcul des vecteurs propres",
16503            OPTION          =SIMP(statut='f',typ='TXM',defaut="DIRECT",into=("DIRECT","RAYLEIGH") ),
16504            PREC            =SIMP(statut='f',typ='R',defaut= 1.E-5,val_min=0.E+0,fr="Précision de convergence" ),
16505            NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 30,val_min=0 ),
16506          ),
16507          VERI_MODE       =FACT(statut='d',min=0,
16508            STOP_ERREUR     =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
16509            SEUIL           =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0,
16510                                  fr="Valeur limite admise pour l ereur a posteriori des modes"  ),
16511          ),
16512          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
16513          TITRE           =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'),
16514 )  ;
16515
16516 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
16517 #            CONFIGURATION MANAGEMENT OF EDF VERSION
16518 # ======================================================================
16519 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
16520 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
16521 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
16522 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
16523 # (AT YOUR OPTION) ANY LATER VERSION.                                 
16524 #
16525 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
16526 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
16527 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
16528 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
16529 #
16530 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
16531 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
16532 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
16533 # ======================================================================
16534 def mode_iter_simult_prod(MATR_A,MATR_C,TYPE_RESU,**args ):
16535   if TYPE_RESU == "MODE_FLAMB" : return mode_flamb
16536   if AsType(MATR_C) == matr_asse_depl_r : return mode_meca_c
16537   if AsType(MATR_A) == matr_asse_depl_r : return mode_meca
16538   if AsType(MATR_A) == matr_asse_depl_c : return mode_meca_c
16539   if AsType(MATR_A) == matr_asse_pres_r : return mode_acou
16540   if AsType(MATR_A) == matr_asse_gene_r : return mode_gene
16541   raise AsException("type de concept resultat non prevu")
16542
16543 MODE_ITER_SIMULT=OPER(nom="MODE_ITER_SIMULT",op=  45,sd_prod=mode_iter_simult_prod,
16544                       fr="Modes propres par itérations simultanées ; valeurs propres et modes propres réels ou complexes",
16545                       docu="U4.52.03-f",reentrant='n',
16546             UIinfo={"groupes":("Résolution",)},
16547          MATR_A          =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_gene_r,matr_asse_pres_r ) ),
16548          MATR_B          =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ) ),
16549          MATR_C          =SIMP(statut='f',position='global',typ=matr_asse_depl_r ),
16550          METHODE         =SIMP(statut='f',position='global',typ='TXM',defaut="SORENSEN",
16551                                into=("TRI_DIAG","JACOBI","SORENSEN") ),
16552          b_tri_diag =BLOC(condition = "METHODE == 'TRI_DIAG'",
16553            PREC_ORTHO      =SIMP(statut='f',typ='R',defaut= 1.E-12,val_min=0.E+0 ),
16554            NMAX_ITER_ORTHO =SIMP(statut='f',typ='I',defaut= 5,val_min=0 ),
16555            PREC_LANCZOS    =SIMP(statut='f',typ='R',defaut= 1.E-8,val_min=0.E+0 ),
16556            NMAX_ITER_QR    =SIMP(statut='f',typ='I',defaut= 30,val_min=0 ), 
16557          ),
16558          b_jacobi =BLOC(condition = "METHODE == 'JACOBI'",
16559            PREC_BATHE      =SIMP(statut='f',typ='R',defaut= 1.E-10,val_min=0.E+0 ),
16560            NMAX_ITER_BATHE =SIMP(statut='f',typ='I',defaut= 40,val_min=0 ),
16561            PREC_JACOBI     =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0 ),
16562            NMAX_ITER_JACOBI=SIMP(statut='f',typ='I',defaut= 12,val_min=0 ),
16563          ),
16564          b_sorensen =BLOC(condition = "METHODE == 'SORENSEN'",
16565            PREC_SOREN      =SIMP(statut='f',typ='R',defaut= 0.E+0,val_min=0.E+0 ),  
16566            NMAX_ITER_SOREN =SIMP(statut='f',typ='I',defaut= 20,val_min=0 ),  
16567            PARA_ORTHO_SOREN=SIMP(statut='f',typ='R',defaut= 0.717,val_min=0.E+0 ),
16568          ),
16569          TYPE_RESU       =SIMP(statut='f',position='global',typ='TXM',defaut="DYNAMIQUE",
16570                                into=("MODE_FLAMB","DYNAMIQUE"),
16571                                fr="Type d analyse" ),
16572          OPTION          =SIMP(statut='f',typ='TXM',defaut="SANS",into=("MODE_RIGIDE","SANS"),
16573                                fr="Calcul des modes de corps rigide, uniquement pour la méthode TRI_DIAG" ),
16574
16575          b_flamb         =BLOC(condition = "TYPE_RESU == 'MODE_FLAMB'",
16576            CALC_FREQ       =FACT(statut='d',min=0,
16577              OPTION          =SIMP(statut='f',typ='TXM',defaut="PLUS_PETITE",into=("PLUS_PETITE","BANDE","CENTRE"),
16578                                    fr="Choix de l option et par conséquent du shift du problème modal" ),
16579              b_plus_petite =BLOC(condition = "OPTION == 'PLUS_PETITE'",fr="Recherche des plus petites valeurs propres",
16580                NMAX_FREQ       =SIMP(statut='f',typ='I',defaut= 10,val_min=0 ),
16581              ),
16582              b_centre      =BLOC(condition = "OPTION == 'CENTRE'",
16583                                  fr="Recherche des valeurs propres les plus proches d une valeur donnée",
16584                CHAR_CRIT       =SIMP(statut='o',typ='R',
16585                                      fr="Charge critique autour de laquelle on cherche les charges critiques propres"),
16586              ),
16587              b_bande       =BLOC(condition = "(OPTION == 'BANDE')",
16588                                  fr="Recherche des valeurs propres dans une bande donnée",
16589                CHAR_CRIT       =SIMP(statut='o',typ='R',min=2,validators=NoRepeat(),max=2,
16590                                      fr="Valeur des deux charges critiques délimitant la bande de recherche"),
16591              ),           
16592              APPROCHE        =SIMP(statut='f',typ='TXM',defaut="REEL",into=("REEL","IMAG"),
16593                                    fr="Choix du pseudo-produit scalaire pour la résolution du problème quadratique" ),           
16594              regles=(EXCLUS('DIM_SOUS_ESPACE','COEF_DIM_ESPACE'),),
16595              DIM_SOUS_ESPACE =SIMP(statut='f',typ='I' ),
16596              COEF_DIM_ESPACE =SIMP(statut='f',typ='I' ),
16597              NPREC_SOLVEUR   =SIMP(statut='f',typ='I',defaut= 8,val_min=0 ),
16598              NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 5,val_min=0 ),
16599              PREC_SHIFT      =SIMP(statut='f',typ='R',defaut= 5.E-2,val_min=0.E+0 ),
16600              SEUIL_FREQ      =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0 ),
16601            ),
16602          ),
16603
16604          b_dynam        =BLOC(condition = "TYPE_RESU == 'DYNAMIQUE'",
16605            CALC_FREQ       =FACT(statut='d',min=0,
16606              OPTION          =SIMP(statut='f',typ='TXM',defaut="PLUS_PETITE",into=("PLUS_PETITE","BANDE","CENTRE"),
16607                                    fr="Choix de l option et par conséquent du shift du problème modal" ),
16608              b_plus_petite =BLOC(condition = "OPTION == 'PLUS_PETITE'",fr="Recherche des plus petites valeurs propres",
16609                NMAX_FREQ       =SIMP(statut='f',typ='I',defaut= 10,val_min=0 ),
16610              ),
16611              b_centre       =BLOC(condition = "OPTION == 'CENTRE'",
16612                                   fr="Recherche des valeurs propres les plus proches d une valeur donnée",
16613                FREQ            =SIMP(statut='o',typ='R',
16614                                      fr="Fréquence autour de laquelle on cherche les fréquences propres"),
16615                AMOR_REDUIT     =SIMP(statut='f',typ='R',),
16616                NMAX_FREQ       =SIMP(statut='f',typ='I',defaut= 10,val_min=0 ),
16617              ),
16618              b_bande         =BLOC(condition = "(OPTION == 'BANDE')",
16619                                    fr="Recherche des valeurs propres dans une bande donnée",
16620                FREQ            =SIMP(statut='o',typ='R',min=2,validators=NoRepeat(),max=2,
16621                                      fr="Valeur des deux fréquences délimitant la bande de recherche"),
16622              ),           
16623              APPROCHE        =SIMP(statut='f',typ='TXM',defaut="REEL",into=("REEL","IMAG","COMPLEXE"),
16624                                    fr="Choix du pseudo-produit scalaire pour la résolution du problème quadratique" ),           
16625              regles=(EXCLUS('DIM_SOUS_ESPACE','COEF_DIM_ESPACE'),),
16626              DIM_SOUS_ESPACE =SIMP(statut='f',typ='I' ),
16627              COEF_DIM_ESPACE =SIMP(statut='f',typ='I' ),
16628              NPREC_SOLVEUR   =SIMP(statut='f',typ='I',defaut= 8,val_min=0 ),
16629              NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 5,val_min=0 ),
16630              PREC_SHIFT      =SIMP(statut='f',typ='R',defaut= 5.E-2,val_min=0.E+0 ),
16631              SEUIL_FREQ      =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0 ),
16632            ),
16633          ),
16634
16635          VERI_MODE       =FACT(statut='d',min=0,
16636            STOP_ERREUR     =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
16637            PREC_SHIFT      =SIMP(statut='f',typ='R',defaut= 5.E-3,val_min=0.E+0 ),
16638            SEUIL           =SIMP(statut='f',typ='R',defaut= 1.E-6,val_min=0.E+0,
16639                                  fr="Valeur limite admise pour l ereur a posteriori des modes" ),
16640            STURM           =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
16641          ),
16642          STOP_FREQ_VIDE  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
16643          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
16644          TITRE           =SIMP(statut='f',typ='TXM',max='**'),        
16645 )  ;
16646
16647 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
16648 #            CONFIGURATION MANAGEMENT OF EDF VERSION
16649 # ======================================================================
16650 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
16651 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
16652 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
16653 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
16654 # (AT YOUR OPTION) ANY LATER VERSION.                                 
16655 #
16656 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
16657 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
16658 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
16659 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
16660 #
16661 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
16662 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
16663 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
16664 # ======================================================================
16665 def mode_stat_prod(MODE_STAT,FORCE_NODALE,PSEUDO_MODE,**args):
16666  if (MODE_STAT != None)          : return mode_stat_depl
16667  if (PSEUDO_MODE !=None)         : return mode_stat_acce
16668  if (FORCE_NODALE != None)       : return mode_stat_forc
16669  raise AsException("type de concept resultat non prevu")
16670 MODE_STATIQUE=OPER(nom="MODE_STATIQUE",op= 93,sd_prod=mode_stat_prod,
16671                    fr="Calcul de modes statiques",
16672                    docu="U4.52.14-f",reentrant='n',
16673             UIinfo={"groupes":("Résolution",)},
16674          MATR_RIGI       =SIMP(statut='o',typ=matr_asse_depl_r ),
16675          MATR_MASS       =SIMP(statut='f',typ=matr_asse_depl_r ),
16676                regles=(UN_PARMI('MODE_STAT','FORCE_NODALE','PSEUDO_MODE'),),
16677          MODE_STAT       =FACT(statut='f',max='**',
16678            regles=(UN_PARMI('TOUT','NOEUD','GROUP_NO'),
16679                    UN_PARMI('TOUT_CMP','AVEC_CMP','SANS_CMP'),),
16680            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ,),
16681            NOEUD           =SIMP(statut='f',typ=no   ,max='**'),
16682            GROUP_NO        =SIMP(statut='f',typ=grno ,max='**'),
16683            TOUT_CMP        =SIMP(statut='f',typ='TXM',into=("OUI",) ,),
16684            AVEC_CMP        =SIMP(statut='f',typ='TXM',max='**'),
16685            SANS_CMP        =SIMP(statut='f',typ='TXM',max='**'),
16686          ),
16687          FORCE_NODALE    =FACT(statut='f',max='**',
16688            regles=(UN_PARMI('TOUT','NOEUD','GROUP_NO'),
16689                    UN_PARMI('TOUT_CMP','AVEC_CMP','SANS_CMP'),),
16690            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",), ),
16691            NOEUD           =SIMP(statut='f',typ=no   ,max='**'),
16692            GROUP_NO        =SIMP(statut='f',typ=grno ,max='**'),
16693            TOUT_CMP        =SIMP(statut='f',typ='TXM',into=("OUI",), ),
16694            AVEC_CMP        =SIMP(statut='f',typ='TXM',max='**'),
16695            SANS_CMP        =SIMP(statut='f',typ='TXM',max='**'),
16696          ),
16697          PSEUDO_MODE       =FACT(statut='f',max='**',
16698            regles=(UN_PARMI('AXE','DIRECTION','TOUT','NOEUD','GROUP_NO' ),),
16699            AXE             =SIMP(statut='f',typ='TXM',into=("X","Y","Z"),max=3),
16700            DIRECTION       =SIMP(statut='f',typ='R',min=3,max=3),
16701            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",)),
16702            NOEUD           =SIMP(statut='f',typ=no   ,max='**'),
16703            GROUP_NO        =SIMP(statut='f',typ=grno ,max='**'),
16704            b_dir           =BLOC(condition = "DIRECTION != None",
16705              NOM_DIR         =SIMP(statut='f',typ='TXM' ),),
16706            b_cmp          =BLOC(condition="TOUT!= None or NOEUD!=None or GROUP_NO!=None",
16707              regles=(UN_PARMI('TOUT_CMP','AVEC_CMP','SANS_CMP'),),
16708              TOUT_CMP        =SIMP(statut='f',typ='TXM',into=("OUI",) ),
16709              AVEC_CMP        =SIMP(statut='f',typ='TXM',max='**'),
16710              SANS_CMP        =SIMP(statut='f',typ='TXM',max='**'), 
16711         ),
16712          ),
16713          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
16714          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ,) ),
16715 )  ;
16716
16717 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
16718 #            CONFIGURATION MANAGEMENT OF EDF VERSION
16719 # ======================================================================
16720 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
16721 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
16722 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
16723 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
16724 # (AT YOUR OPTION) ANY LATER VERSION.                                 
16725 #
16726 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
16727 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
16728 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
16729 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
16730 #
16731 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
16732 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
16733 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
16734 # ======================================================================
16735 MODI_BASE_MODALE=OPER(nom="MODI_BASE_MODALE",op= 149,sd_prod=mode_meca,
16736                       docu="U4.66.21-d",reentrant='f',
16737             UIinfo={"groupes":("Matrices/vecteurs",)},
16738 #  la commande modi_base _modale : reentrant = f ou o                      
16739          regles=(EXCLUS('AMOR_UNIF','AMOR_REDUIT', ),),
16740          BASE            =SIMP(statut='o',typ=mode_meca ),
16741          BASE_ELAS_FLUI  =SIMP(statut='o',typ=melasflu ),
16742          NUME_VITE_FLUI  =SIMP(statut='o',typ='I' ),
16743          NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
16744          AMOR_REDUIT     =SIMP(statut='f',typ='R',max='**'),
16745          AMOR_UNIF       =SIMP(statut='f',typ='R' ),
16746          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
16747          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
16748 )  ;
16749
16750 #& MODIF COMMANDE  DATE 29/09/2003   AUTEUR JMBHH01 J.M.PROIX 
16751 #            CONFIGURATION MANAGEMENT OF EDF VERSION
16752 # ======================================================================
16753 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
16754 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
16755 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
16756 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
16757 # (AT YOUR OPTION) ANY LATER VERSION.                                 
16758 #
16759 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
16760 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
16761 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
16762 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
16763 #
16764 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
16765 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
16766 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
16767 # ======================================================================
16768 # RESPONSABLE G8BHHXD X.DESROCHES
16769 MODI_MAILLAGE=OPER(nom="MODI_MAILLAGE",op= 154,sd_prod=maillage,
16770                    fr="Modification de la connectivité de groupes de mailles 2D ou 3D affectées à la modélisation de contact",
16771                    docu="U4.23.04-d",reentrant='o',
16772             UIinfo={"groupes":("Maillage",)},
16773       regles=(AU_MOINS_UN('ORIE_CONTACT','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D',
16774                        'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE','MODI_MAILLE',
16775                        'TRANSLATION','ROTATION','MODI_BASE','ECHELLE','ORIE_SHB8'),
16776               PRESENT_ABSENT('ORIE_CONTACT','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D',
16777                        'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE','MODI_MAILLE',),
16778               PRESENT_ABSENT('DEFORME','ORIE_CONTACT','EQUE_PIQUA','ORIE_PEAU_2D',
16779                        'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE','MODI_MAILLE',),
16780               PRESENT_ABSENT('EQUE_PIQUA','ORIE_CONTACT','DEFORME','ORIE_PEAU_2D',
16781                        'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE','MODI_MAILLE',),
16782               PRESENT_ABSENT('ORIE_PEAU_2D','ORIE_CONTACT','DEFORME','EQUE_PIQUA',
16783                        'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE','MODI_MAILLE',),
16784               PRESENT_ABSENT('ORIE_PEAU_3D','ORIE_CONTACT','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D',
16785                        'PLAQ_TUBE','MODI_MAILLE',),
16786               PRESENT_ABSENT('ORIE_NORM_COQUE','ORIE_CONTACT','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D',
16787                        'PLAQ_TUBE','MODI_MAILLE',),
16788               PRESENT_ABSENT('PLAQ_TUBE','ORIE_CONTACT','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D',
16789                        'ORIE_PEAU_3D','ORIE_NORM_COQUE','MODI_MAILLE',),
16790               PRESENT_ABSENT('MODI_MAILLE','ORIE_CONTACT','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D',
16791                        'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE',),
16792               EXCLUS('EQUE_PIQUA','PLAQ_TUBE'),
16793               EXCLUS('EQUE_PIQUA','TUBE_COUDE'),
16794               EXCLUS('ROTATION','MODI_BASE'),),
16795          MAILLAGE        =SIMP(statut='o',typ=maillage ),
16796
16797          ORIE_CONTACT    =FACT(statut='f',
16798            GROUP_MA        =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'),
16799          ),
16800
16801          DEFORME         =FACT(statut='f',
16802            OPTION          =SIMP(statut='o',typ='TXM',into=("TRAN","TRAN_APPUI") ),
16803            DEPL            =SIMP(statut='o',typ=cham_no_depl_r ),
16804         b_deform        =BLOC(condition = "OPTION=='TRAN_APPUI'", 
16805            GROUP_NO_APPUI = SIMP(statut='o',typ=grno,validators=NoRepeat(),max='**' ),
16806            GROUP_NO_STRU  = SIMP(statut='o',typ=grno,validators=NoRepeat(),max='**' ),),
16807          ),
16808
16809          EQUE_PIQUA      =FACT(statut='f',
16810            GROUP_NO        =SIMP(statut='o',typ=grno),
16811            E_BASE          =SIMP(statut='o',typ='R' ),
16812            DEXT_BASE       =SIMP(statut='o',typ='R' ),
16813            L_BASE          =SIMP(statut='o',typ='R' ),
16814            L_CHANF         =SIMP(statut='o',typ='R' ),
16815            TYPE            =SIMP(statut='o',typ='TXM',into=("TYPE_1","TYPE_2")),
16816            H_SOUD          =SIMP(statut='o',typ='R' ),
16817            ANGL_SOUD       =SIMP(statut='o',typ='R' ),
16818            JEU_SOUD        =SIMP(statut='o',typ='R' ),
16819            E_CORP          =SIMP(statut='o',typ='R' ),
16820            DEXT_CORP       =SIMP(statut='o',typ='R' ),
16821            AZIMUT          =SIMP(statut='o',typ='R' ),
16822            RAFF_MAIL       =SIMP(statut='o',typ='TXM' ),
16823            X_MAX           =SIMP(statut='o',typ='R' ),
16824          ),
16825          ORIE_PEAU_2D    =FACT(statut='f',max='**',
16826            GROUP_MA        =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'),
16827          ),
16828          ORIE_PEAU_3D    =FACT(statut='f',max='**',
16829            GROUP_MA        =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'),
16830          ),
16831          ORIE_SHB8       =FACT(statut='f',max='**',
16832            GROUP_MA        =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'),
16833          ),
16834          ORIE_NORM_COQUE =FACT(statut='f',max='**',
16835            regles=(EXCLUS('NOEUD','GROUP_NO'),
16836                    PRESENT_PRESENT('NOEUD','VECT_NORM'),
16837                    PRESENT_PRESENT('GROUP_NO','VECT_NORM'),),
16838            GROUP_MA        =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'),
16839            VECT_NORM       =SIMP(statut='f',typ='R',max=3),
16840            NOEUD           =SIMP(statut='f',typ=no),
16841            GROUP_NO        =SIMP(statut='f',typ=grno),
16842          ),
16843          b_modele        =BLOC(condition = "(ORIE_PEAU_2D != None) or (ORIE_PEAU_3D != None) or(ORIE_NORM_COQUE != None)",
16844            MODELE          =SIMP(statut='o',typ=modele ),
16845          ),
16846          PLAQ_TUBE       =FACT(statut='f',
16847            DEXT            =SIMP(statut='o',typ='R' ),
16848            EPAIS           =SIMP(statut='o',typ='R' ),
16849            L_TUBE_P1       =SIMP(statut='o',typ='R' ),
16850            AZIMUT          =SIMP(statut='f',typ='R',defaut= 90. ),
16851            COUTURE         =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON",)  ),
16852          ),
16853          TUBE_COUDE      =FACT(statut='f',
16854            ANGLE           =SIMP(statut='o',typ='R' ),
16855            R_CINTR         =SIMP(statut='o',typ='R' ),
16856            L_TUBE_P1       =SIMP(statut='o',typ='R' ),
16857          ),
16858          MODI_MAILLE     =FACT(statut='f',
16859            regles=(AU_MOINS_UN('GROUP_MA_FOND','MAILLE_FOND','GROUP_NO_FOND','NOEUD_FOND'),),
16860            OPTION          =SIMP(statut='o',typ='TXM',into=("NOEUD_QUART",) ),
16861            GROUP_MA_FOND   =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
16862            MAILLE_FOND     =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
16863            GROUP_NO_FOND   =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
16864            NOEUD_FOND      =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
16865          ),
16866          MODI_BASE       =FACT(statut='f',
16867            VECT_X          =SIMP(statut='o',typ='R',min=2,max=3),
16868            VECT_Y          =SIMP(statut='f',typ='R',min=2,max=3),
16869          ),
16870          ECHELLE         =SIMP(statut='f',typ='R',),        
16871          TRANSLATION     =SIMP(statut='f',typ='R',min=2,max=3),
16872          ROTATION        =FACT(statut='f',max='**',
16873            POIN_1           =SIMP(statut='o',typ='R',min=2,max=3),
16874            ANGL             =SIMP(statut='o',typ='R',defaut= 0.E+0 ),
16875            regles=(EXCLUS('DIR','POIN_2'),),
16876            POIN_2           =SIMP(statut='f',typ='R',min=2,max=3),
16877            DIR              =SIMP(statut='f',typ='R',min=2,max=3),
16878          ),
16879
16880          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
16881 )  ;
16882
16883 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
16884 #            CONFIGURATION MANAGEMENT OF EDF VERSION
16885 # ======================================================================
16886 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
16887 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
16888 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
16889 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
16890 # (AT YOUR OPTION) ANY LATER VERSION.                                 
16891 #
16892 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
16893 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
16894 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
16895 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
16896 #
16897 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
16898 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
16899 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
16900 # ======================================================================
16901 MODI_OBSTACLE=OPER(nom="MODI_OBSTACLE",op=182,sd_prod=obstacle,
16902                    fr=" ",docu="U4.44.22-b",reentrant='f',
16903             UIinfo={"groupes":("Modélisation",)},
16904       regles=(PRESENT_ABSENT('R_MOBILE','CRAYON'),
16905               PRESENT_PRESENT('V_USUR_TUBE','V_USUR_OBST'),),
16906          V_USUR_TUBE     =SIMP(statut='f',typ='R',max='**'),
16907          V_USUR_OBST     =SIMP(statut='f',typ='R',max='**'),
16908          TABL_USURE      =SIMP(statut='f',typ=tabl_post_usur),
16909          INST            =SIMP(statut='f',typ='R'),  
16910          OBSTACLE        =SIMP(statut='f',typ=obstacle),
16911          GUIDE           =SIMP(statut='o',typ=obstacle),
16912          CRAYON          =SIMP(statut='f',typ=obstacle),
16913          R_MOBILE        =SIMP(statut='f',typ='R'),  
16914          PERCEMENT       =SIMP(statut='f',typ='R',defaut=1),  
16915          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
16916 )  ;
16917
16918 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
16919 #            CONFIGURATION MANAGEMENT OF EDF VERSION
16920 # ======================================================================
16921 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
16922 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
16923 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
16924 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR
16925 # (AT YOUR OPTION) ANY LATER VERSION.
16926 #
16927 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT
16928 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF
16929 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU
16930 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.
16931 #
16932 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE
16933 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,
16934 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.
16935 # ======================================================================
16936 # RESPONSABLE JMBHH01 J.M.PROIX
16937 def modi_repere_prod(RESULTAT,**args):
16938   if AsType(RESULTAT) == evol_elas :    return evol_elas
16939   if AsType(RESULTAT) == evol_noli :    return evol_noli
16940   if AsType(RESULTAT) == evol_ther :    return evol_ther
16941   if AsType(RESULTAT) == dyna_trans :   return dyna_trans
16942   if AsType(RESULTAT) == dyna_harmo :   return dyna_harmo
16943   if AsType(RESULTAT) == mode_meca :    return mode_meca
16944   if AsType(RESULTAT) == mode_flamb :   return mode_flamb
16945   if AsType(RESULTAT) == mult_elas :    return mult_elas
16946   if AsType(RESULTAT) == base_modale  : return base_modale
16947   raise AsException("type de concept resultat non prevu")
16948
16949 MODI_REPERE=OPER(nom="MODI_REPERE",op=191,sd_prod=modi_repere_prod,docu="U4.74.01-a",reentrant='n',
16950             UIinfo={"groupes":("Résultats et champs",)},
16951                     fr="Impression des resultats dans un repere cylindrique",
16952          RESULTAT        =SIMP(statut='o',typ=(evol_elas,dyna_trans,dyna_harmo,mode_meca,
16953                                                evol_noli,mult_elas,
16954                                                evol_ther,base_modale,mode_flamb) ),
16955          regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE',
16956                         'NOEUD_CMP','LIST_INST','LIST_FREQ','NOM_CAS'),),
16957          TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
16958          NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
16959          NUME_MODE       =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
16960          NOEUD_CMP       =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'),
16961          NOM_CAS         =SIMP(statut='f',typ='TXM' ),
16962
16963          INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
16964          FREQ            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
16965          LIST_INST       =SIMP(statut='f',typ=listr8),
16966          LIST_FREQ       =SIMP(statut='f',typ=listr8),
16967
16968          PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3 ),
16969          CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),),
16970
16971          MODI_CHAM       =FACT(statut='o',max='**',
16972            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
16973            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
16974            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
16975            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
16976            TYPE_CHAM       =SIMP(statut='o',typ='TXM',
16977                                  into=("VECT_2D","VECT_3D","TORS_3D","TENS_2D","TENS_3D"),),
16978            NOM_CHAM        =SIMP(statut='o',typ='TXM',into=C_NOM_CHAM_INTO()),
16979            b_vect_2d       =BLOC(condition = "TYPE_CHAM=='VECT_2D'",
16980               NOM_CMP         =SIMP(statut='o',typ='TXM',min=2,max=2 ),),
16981            b_vect_3d       =BLOC(condition = "TYPE_CHAM=='VECT_3D'",
16982               NOM_CMP         =SIMP(statut='o',typ='TXM',min=3,max=3 ),),
16983            b_tors_3d       =BLOC(condition = "TYPE_CHAM=='TORS_3D'",
16984               NOM_CMP         =SIMP(statut='o',typ='TXM',min=6,max=6 ),),
16985            b_tens_2d       =BLOC(condition = "TYPE_CHAM=='TENS_2D'",
16986               NOM_CMP         =SIMP(statut='o',typ='TXM',min=4,max=4 ),),
16987            b_tens_3d       =BLOC(condition = "TYPE_CHAM=='TENS_3D'",
16988               NOM_CMP         =SIMP(statut='o',typ='TXM',min=6,max=6 ),),
16989          ),
16990          DEFI_REPERE     =FACT(statut='o',
16991          regles=(UN_PARMI('ANGL_NAUT','ORIGINE'),),
16992            REPERE          =SIMP(statut='f',typ='TXM',defaut="UTILISATEUR",
16993                                  into=("UTILISATEUR","CYLINDRIQUE"),),
16994            ANGL_NAUT       =SIMP(statut='f',typ='R',max=3),
16995            ORIGINE         =SIMP(statut='f',typ='R',min=2,max=3),
16996            AXE_Z           =SIMP(statut='f',typ='R',min=3,max=3),
16997          ),
16998          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
16999 )  ;
17000
17001 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
17002 #            CONFIGURATION MANAGEMENT OF EDF VERSION
17003 # ======================================================================
17004 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
17005 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
17006 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
17007 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
17008 # (AT YOUR OPTION) ANY LATER VERSION.                                 
17009 #
17010 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
17011 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
17012 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
17013 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
17014 #
17015 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
17016 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
17017 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
17018 # ======================================================================
17019 def norm_mode_prod(MODE,**args ):
17020   if AsType(MODE) == mode_meca   : return mode_meca
17021   if AsType(MODE) == mode_meca_c : return mode_meca_c
17022   if AsType(MODE) == mode_flamb  : return mode_flamb
17023   raise AsException("type de concept resultat non prevu")
17024
17025 NORM_MODE=OPER(nom="NORM_MODE",op=  37,sd_prod=norm_mode_prod,
17026                fr="Normalisation de modes propres",
17027                docu="U4.52.11-f",reentrant='f',
17028             UIinfo={"groupes":("Résolution",)},
17029          regles=(UN_PARMI('NORME','NOEUD','AVEC_CMP','SANS_CMP'),),
17030          MODE       =SIMP(statut='o',typ=(mode_meca,mode_flamb) ),
17031          NORME      =SIMP(statut='f',typ='TXM',fr="Norme prédéfinie : masse généralisée, euclidienne,...",
17032                           into=("MASS_GENE","RIGI_GENE","EUCL","EUCL_TRAN","TRAN","TRAN_ROTA") ),
17033          NOEUD      =SIMP(statut='f',typ=no, fr="Composante donnée d un noeud spécifié égale à 1"),
17034          b_noeud    =BLOC(condition = "NOEUD != None",
17035            NOM_CMP    =SIMP(statut='o',typ='TXM' ),
17036          ),
17037          AVEC_CMP   =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'),
17038          SANS_CMP   =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'),
17039          MASS_INER  =SIMP(statut='f',typ=tabl_mass_iner ),
17040          MODE_SIGNE =FACT(statut='f',fr="Imposer un signe sur une des composantes des modes",
17041            NOEUD      =SIMP(statut='o',typ=no,fr="Noeud ou sera imposé le signe"),
17042            NOM_CMP    =SIMP(statut='o',typ='TXM',fr="Composante du noeud ou sera imposé le signe" ),
17043            SIGNE      =SIMP(statut='f',typ='TXM',defaut="POSITIF",into=("NEGATIF","POSITIF"),
17044                             fr="Choix du signe" ),
17045          ),
17046          TITRE      =SIMP(statut='f',typ='TXM',max='**'),
17047          INFO       =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
17048 )  ;
17049
17050 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
17051 #            CONFIGURATION MANAGEMENT OF EDF VERSION
17052 # ======================================================================
17053 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
17054 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
17055 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
17056 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
17057 # (AT YOUR OPTION) ANY LATER VERSION.                                 
17058 #
17059 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
17060 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
17061 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
17062 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
17063 #
17064 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
17065 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
17066 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
17067 # ======================================================================
17068 # RESPONSABLE VABHHTS J.PELLET
17069 NUME_DDL=OPER(nom="NUME_DDL",op=11,sd_prod=nume_ddl,docu="U4.61.11-g",reentrant='n',
17070             UIinfo={"groupes":("Matrices/vecteurs",)},
17071               fr="Etablissement de la numérotation des ddl avec ou sans renumérotation et du stockage de la matrice",
17072                   regles=(UN_PARMI('MATR_RIGI','MODELE'),), 
17073          MATR_RIGI       =SIMP(statut='f',validators=NoRepeat(),max=100,
17074                                typ=(matr_elem_depl_r ,matr_elem_depl_c,matr_elem_temp_r ,matr_elem_pres_c) ),
17075          MODELE          =SIMP(statut='f',typ=modele ),
17076          b_modele        =BLOC(condition = "MODELE != None",
17077            CHARGE     =SIMP(statut='f',validators=NoRepeat(),max='**',typ=(char_meca,char_ther,char_acou, ),),
17078          ),
17079          METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
17080          b_mult_front    =BLOC(condition="METHODE=='MULT_FRONT'",fr="paramètres associés à la méthode multifrontale",
17081            RENUM           =SIMP(statut='f',typ='TXM',into=("MD","MDA","METIS"),defaut="METIS" ),
17082          ),
17083          b_ldlt          =BLOC(condition="METHODE=='LDLT'",fr="paramètres associés à la méthode LDLT",
17084            RENUM           =SIMP(statut='f',typ='TXM',into=("RCMK","SANS"),defaut="RCMK"  ),
17085          ),
17086          b_gcpc          =BLOC(condition="METHODE=='GCPC'",fr="paramètres associés à la méthode gradient conjugué",
17087            RENUM           =SIMP(statut='f',typ='TXM',into=("RCMK","SANS"),defaut="RCMK"  ),
17088          ),
17089          INFO            =SIMP(statut='f',typ='I',into=(1,2)),
17090 )  ;
17091
17092 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
17093 #            CONFIGURATION MANAGEMENT OF EDF VERSION
17094 # ======================================================================
17095 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
17096 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
17097 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
17098 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
17099 # (AT YOUR OPTION) ANY LATER VERSION.                                 
17100 #
17101 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
17102 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
17103 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
17104 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
17105 #
17106 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
17107 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
17108 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
17109 # ======================================================================
17110 NUME_DDL_GENE=OPER(nom="NUME_DDL_GENE",op= 127,sd_prod=nume_ddl_gene,
17111                    fr="Etablissement de la numérotation des ddl d un modèle établi en coordonnées généralisées",
17112                     docu="U4.65.03-e",reentrant='n',
17113             UIinfo={"groupes":("Matrices/vecteurs",)},
17114          regles=UN_PARMI('MODELE_GENE','BASE'),
17115          MODELE_GENE     =SIMP(statut='f',typ=modele_gene ),
17116              b_modele_gene     =BLOC(condition = "MODELE_GENE != None",
17117                STOCKAGE     =SIMP(statut='f',typ='TXM',defaut="LIGN_CIEL",into=("LIGN_CIEL","PLEIN") ),
17118                                     ),
17119          BASE     =SIMP(statut='f',typ=(mode_meca,mode_stat,base_modale,mode_gene ) ),
17120              b_base     =BLOC(condition = "BASE != None",
17121                STOCKAGE     =SIMP(statut='f',typ='TXM',defaut="DIAG",into=("DIAG","PLEIN") ),
17122                NB_VECT     =SIMP(statut='f',typ='I',defaut= 9999 ),
17123                              ),
17124 )  ;
17125
17126 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
17127 #            CONFIGURATION MANAGEMENT OF EDF VERSION
17128 # ======================================================================
17129 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
17130 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
17131 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
17132 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
17133 # (AT YOUR OPTION) ANY LATER VERSION.                                 
17134 #
17135 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
17136 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
17137 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
17138 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
17139 #
17140 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
17141 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
17142 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
17143 # ======================================================================
17144 POST_DYNA_ALEA=OPER(nom="POST_DYNA_ALEA",op= 132,sd_prod=tabl_post_alea,
17145                     fr="Traitements statistiques de résultats de type interspectre et impression sur fichiers",
17146                     docu="U4.84.04-e",reentrant='n',
17147             UIinfo={"groupes":("Post traitements",)},
17148          regles=(UN_PARMI('NOEUD_I','NUME_ORDRE_I','OPTION'),),
17149          INTE_SPEC       =SIMP(statut='o',typ=tabl_intsp ),
17150          NUME_VITE_FLUI  =SIMP(statut='f',typ='I' ),  
17151          TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
17152          NUME_ORDRE_I    =SIMP(statut='f',typ='I',max='**' ),
17153          NOEUD_I         =SIMP(statut='f',typ=no,max='**'),         
17154          OPTION          =SIMP(statut='f',typ='TXM',into=("DIAG",) ),
17155          b_nume_ordre_i =BLOC(condition = "NUME_ORDRE_I != None",
17156            NUME_ORDRE_J    =SIMP(statut='o',typ='I',max='**' ),   
17157          ),  
17158          b_noeud_i      =BLOC(condition = "NOEUD_I != None",
17159            NOEUD_J         =SIMP(statut='o',typ=no,max='**'),
17160            NOM_CMP_I       =SIMP(statut='o',typ='TXM',max='**' ),  
17161            NOM_CMP_J       =SIMP(statut='o',typ='TXM',max='**' ),     
17162          ),  
17163          DEPASSEMENT     =FACT(statut='f',max='**',
17164            fr="Loi de dépassement d un seuil pendant une durée donnée",
17165            regles=(ENSEMBLE('VALE_MIN','VALE_MAX'),),
17166            VALE_MIN        =SIMP(statut='f',typ='R' ),  
17167            VALE_MAX        =SIMP(statut='f',typ='R' ),  
17168            PAS             =SIMP(statut='f',typ='R' ),  
17169            DUREE           =SIMP(statut='f',typ='R',defaut= 1. ),  
17170          ),
17171          RAYLEIGH        =FACT(statut='f',max='**',
17172            fr="Densité de probabilité de pic positif, loi adaptée à des signaux à bande étroite",
17173            regles=(ENSEMBLE('VALE_MIN','VALE_MAX'),),
17174            VALE_MIN        =SIMP(statut='f',typ='R' ),  
17175            VALE_MAX        =SIMP(statut='f',typ='R' ),  
17176            PAS             =SIMP(statut='f',typ='R' ),  
17177          ),
17178          GAUSS           =FACT(statut='f',max='**',
17179            fr="Densité de probabilité de pic positif, loi normale adaptée à des signaux large bande",
17180            regles=(ENSEMBLE('VALE_MIN','VALE_MAX'),),
17181            VALE_MIN        =SIMP(statut='f',typ='R' ),  
17182            VALE_MAX        =SIMP(statut='f',typ='R' ),  
17183            PAS             =SIMP(statut='f',typ='R' ),  
17184          ),
17185          VANMARCKE       =FACT(statut='f',max='**',
17186            fr="Probabilité de non dépassement de seuil pendant une durée donnée (analyse sismique)",
17187            regles=(ENSEMBLE('VALE_MIN','VALE_MAX'),),
17188            VALE_MIN        =SIMP(statut='f',typ='R' ),  
17189            VALE_MAX        =SIMP(statut='f',typ='R' ),  
17190            PAS             =SIMP(statut='f',typ='R' ),  
17191            DUREE           =SIMP(statut='f',typ='R',defaut= 10. ),  
17192          ),
17193          MOMENT          =SIMP(statut='f',typ='I',max='**',fr="Moments spectraux en complément des cinq premiers" ),  
17194          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),  
17195          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
17196 )  ;
17197
17198 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
17199 #            CONFIGURATION MANAGEMENT OF EDF VERSION
17200 # ======================================================================
17201 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
17202 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
17203 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
17204 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
17205 # (AT YOUR OPTION) ANY LATER VERSION.                                 
17206 #
17207 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
17208 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
17209 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
17210 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
17211 #
17212 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
17213 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
17214 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
17215 # ======================================================================
17216 POST_DYNA_MODA_T=OPER(nom="POST_DYNA_MODA_T",op= 130,sd_prod=tabl_post_dyna,
17217                       fr="Post-traitements en coordonnées généralisées issus de DYNA_TRAN_MODAL",
17218                       docu="U4.84.02-e",reentrant='n',
17219             UIinfo={"groupes":("Post traitements",)},
17220         regles=(UN_PARMI('CHOC','RELA_EFFO_DEPL', ),),
17221          RESU_GENE       =SIMP(statut='o',typ=tran_gene ),
17222          CHOC            =FACT(statut='f',max='**',
17223                                fr="Analyse des non linéarités de choc",
17224            INST_INIT       =SIMP(statut='f',typ='R',defaut= -1. ),  
17225            INST_FIN        =SIMP(statut='f',typ='R',defaut= 999. ),  
17226            NB_BLOC         =SIMP(statut='f',typ='I',defaut= 1 ),  
17227            SEUIL_FORCE     =SIMP(statut='f',typ='R',defaut= 0.E+0 ),  
17228            DUREE_REPOS     =SIMP(statut='f',typ='R',defaut= 0.E+0 ),  
17229            OPTION          =SIMP(statut='f',typ='TXM',defaut="USURE",into=("IMPACT","USURE") ),
17230            NB_CLASSE       =SIMP(statut='f',typ='I',defaut= 10 ),  
17231          ),
17232          RELA_EFFO_DEPL  =FACT(statut='f',
17233                                fr="Analyse des relationsnon linéaires effort-déplacement",
17234            NOEUD           =SIMP(statut='o',typ=no),
17235            NOM_CMP         =SIMP(statut='o',typ='TXM' ),  
17236          ),
17237          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
17238          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),  
17239 )  ;
17240
17241 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
17242 #            CONFIGURATION MANAGEMENT OF EDF VERSION
17243 # ======================================================================
17244 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
17245 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
17246 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
17247 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
17248 # (AT YOUR OPTION) ANY LATER VERSION.                                 
17249 #
17250 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
17251 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
17252 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
17253 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
17254 #
17255 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
17256 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
17257 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
17258 # ======================================================================
17259 # RESPONSABLE G8BHHXD X.DESROCHES
17260 def post_elem_prod( MASS_INER,ENER_POT,ENER_CIN,TRAV_EXT,WEIBULL,
17261                     CARA_GEOM,CARA_POUTRE,RICE_TRACEY,CHAR_LIMITE,
17262                     INDIC_ENER,INDIC_SEUIL,ENER_ELAS,ENER_TOTALE,
17263                     AIRE_INTERNE,**args ):
17264   if MASS_INER    != None  : return tabl_mass_iner
17265   if ENER_POT     != None  : return tabl_ener_pot
17266   if ENER_CIN     != None  : return tabl_ener_cin
17267   if TRAV_EXT     != None  : return tabl_trav_ext
17268   if WEIBULL      != None  : return tabl_weibull
17269   if CARA_GEOM    != None  : return tabl_cara_geom
17270   if CARA_POUTRE  != None  : return tabl_cara_geom
17271   if RICE_TRACEY  != None  : return tabl_rice_tracey
17272   if CHAR_LIMITE  != None  : return tabl_char_limite
17273   if INDIC_ENER   != None  : return tabl_indic_ener
17274   if INDIC_SEUIL  != None  : return tabl_indic_seuil
17275   if ENER_ELAS    != None  : return tabl_ener_elas
17276   if ENER_TOTALE  != None  : return tabl_ener_totale
17277   if AIRE_INTERNE != None  : return tabl_aire_int
17278   raise AsException("type de concept resultat non prevu")
17279
17280 POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=post_elem_prod,docu="U4.81.22-e",reentrant='f',
17281             UIinfo={"groupes":("Post traitements",)},
17282                fr="Calcul de quantités globales (masse, inerties, énergie, ...) sur tout ou partie du modèle",
17283
17284          regles=(UN_PARMI('MASS_INER', 'ENER_POT', 'ENER_CIN','TRAV_EXT',
17285                           'WEIBULL', 'RICE_TRACEY', 'CARA_GEOM','CHAR_LIMITE',
17286                           'CARA_POUTRE', 'INDIC_ENER', 'INDIC_SEUIL',
17287                           'AIRE_INTERNE','ENER_ELAS','ENER_TOTALE'),
17288                 ),
17289
17290          MASS_INER      = FACT(statut='f',max='**',
17291                                regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),),
17292                                TOUT         = SIMP(statut='f',typ='TXM',into=("OUI",) ),
17293                                MAILLE       = SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
17294                                GROUP_MA     = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
17295                                ORIG_INER    = SIMP(statut='f',typ='R',min=3,max=3 ),
17296                               ),
17297          b_mass_iner = BLOC(condition = "( MASS_INER != None )",
17298                        fr="calcul de la masse, les inerties et le centre de gravité",
17299                        regles=(EXCLUS('CHAM_GD','RESULTAT'),
17300                                EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE',
17301                                       'NOEUD_CMP','LIST_ORDRE','LIST_INST','LIST_FREQ','NOM_CAS'),),
17302                        MODELE         = SIMP(statut='o',typ=modele),
17303                        CHAM_MATER     = SIMP(statut='f',typ=cham_mater),
17304                        CARA_ELEM      = SIMP(statut='f',typ=cara_elem),
17305                        CHARGE         = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ),
17306                        NUME_COUCHE    = SIMP(statut='f',typ='I',defaut=1),
17307                        NIVE_COUCHE    = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),),
17308                        MODE_FOURIER   = SIMP(statut='f',typ='I',defaut=0),
17309                        GEOMETRIE      = SIMP(statut='f',typ='TXM',defaut="INITIALE",into=("INITIALE","DEFORMEE")),
17310                        CHAM_GD        = SIMP(statut='f',typ=(cham_no_depl_r,cham_no_temp_r,cham_elem_ener_r) ),
17311                        RESULTAT       = SIMP(statut='f',typ=(mode_meca,evol_elas,evol_noli,mult_elas,
17312                                                              fourier_elas,dyna_trans) ),
17313                        PRECISION      = SIMP(statut='f',typ='R',defaut= 1.0E-3),
17314                        CRITERE        = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")),
17315                        TOUT_ORDRE     = SIMP(statut='f',typ='TXM',into=("OUI",) ),
17316                        NUME_ORDRE     = SIMP(statut='f',typ='I',),
17317                        LIST_ORDRE     = SIMP(statut='f',typ=listis),
17318                        INST           = SIMP(statut='f',typ='R',),
17319                        LIST_INST      = SIMP(statut='f',typ=listr8),
17320                        FREQ           = SIMP(statut='f',typ='R',),
17321                        LIST_FREQ      = SIMP(statut='f',typ=listr8),
17322                        NUME_MODE      = SIMP(statut='f',typ='I',),
17323                        NOEUD_CMP      = SIMP(statut='f',typ='TXM',min=2,validators=NoRepeat(),max=2),
17324                        NOM_CAS        = SIMP(statut='f',typ='TXM',),
17325          ),
17326
17327          ENER_POT       = FACT(statut='f',max='**',
17328                                regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),),
17329                                TOUT         = SIMP(statut='f',typ='TXM',into=("OUI",) ),
17330                                MAILLE       = SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
17331                                GROUP_MA     = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
17332                               ),
17333          b_ener_pot = BLOC(condition = "( ENER_POT  != None )",
17334                        fr="calcul de l'énergie potentielle de déformation",
17335                        regles=(UN_PARMI('CHAM_GD','RESULTAT'),
17336                                EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE',
17337                                       'NOEUD_CMP','LIST_ORDRE','LIST_INST','LIST_FREQ','NOM_CAS'),),
17338                        MODELE         = SIMP(statut='o',typ=modele),
17339                        CHAM_MATER     = SIMP(statut='o',typ=cham_mater),
17340                        CARA_ELEM      = SIMP(statut='f',typ=cara_elem),
17341                        CHARGE         = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ),
17342                        NUME_COUCHE    = SIMP(statut='f',typ='I',defaut=1),
17343                        NIVE_COUCHE    = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),),
17344                        ANGLE          = SIMP(statut='f',typ='I',defaut=0),
17345                        MODE_FOURIER   = SIMP(statut='f',typ='I',defaut=0),
17346                        CHAM_GD        = SIMP(statut='f',typ=(cham_no_depl_r,cham_no_temp_r,cham_elem_ener_r) ),
17347                        RESULTAT       = SIMP(statut='f',typ=(mode_meca,evol_elas,evol_ther,evol_noli,dyna_trans) ),
17348                        PRECISION      = SIMP(statut='f',typ='R',defaut= 1.0E-3),
17349                        CRITERE        = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")),
17350                        TOUT_ORDRE     = SIMP(statut='f',typ='TXM',into=("OUI",) ),
17351                        NUME_ORDRE     = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
17352                        LIST_ORDRE     = SIMP(statut='f',typ=listis),
17353                        INST           = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
17354                        LIST_INST      = SIMP(statut='f',typ=listr8),
17355                        FREQ           = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
17356                        LIST_FREQ      = SIMP(statut='f',typ=listr8),
17357                        NUME_MODE      = SIMP(statut='f',typ='I'  ,validators=NoRepeat(),max='**'),
17358                        NOEUD_CMP      = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'),
17359                        NOM_CAS        = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'),
17360          ),
17361
17362          ENER_CIN       = FACT(statut='f',max='**',
17363                                regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),),
17364                                OPTION       = SIMP(statut='f',typ='TXM',
17365                                                    into=("MASS_MECA","MASS_MECA_DIAG"),
17366                                                    defaut="MASS_MECA" ),
17367                                TOUT         = SIMP(statut='f',typ='TXM',into=("OUI",) ),
17368                                MAILLE       = SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
17369                                GROUP_MA     = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
17370                               ),
17371          b_ener_cin = BLOC(condition = "( ENER_CIN != None )",
17372                        fr="calcul de l'énergie cinétique",
17373                        regles=(UN_PARMI('CHAM_GD','RESULTAT'),
17374                                EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE',
17375                                       'NOEUD_CMP','LIST_ORDRE','LIST_INST','LIST_FREQ','NOM_CAS'),),
17376                        MODELE         = SIMP(statut='o',typ=modele),
17377                        CHAM_MATER     = SIMP(statut='o',typ=cham_mater),
17378                        CARA_ELEM      = SIMP(statut='f',typ=cara_elem),
17379                        CHARGE         = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ),
17380                        NUME_COUCHE    = SIMP(statut='f',typ='I',defaut=1),
17381                        NIVE_COUCHE    = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),),
17382                        ANGLE          = SIMP(statut='f',typ='I',defaut=0),
17383                        MODE_FOURIER   = SIMP(statut='f',typ='I',defaut=0),
17384                        CHAM_GD        = SIMP(statut='f',typ=(cham_no_depl_r,cham_no_temp_r,cham_elem_ener_r) ),
17385                        RESULTAT       = SIMP(statut='f',typ=(mode_meca,evol_elas,evol_ther,evol_noli,dyna_trans) ),
17386                        PRECISION      = SIMP(statut='f',typ='R',defaut= 1.0E-3),
17387                        CRITERE        = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")),
17388                        TOUT_ORDRE     = SIMP(statut='f',typ='TXM',into=("OUI",) ),
17389                        NUME_ORDRE     = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
17390                        LIST_ORDRE     = SIMP(statut='f',typ=listis),
17391                        INST           = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
17392                        LIST_INST      = SIMP(statut='f',typ=listr8),
17393                        FREQ           = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
17394                        LIST_FREQ      = SIMP(statut='f',typ=listr8),
17395                        NUME_MODE      = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
17396                        NOEUD_CMP      = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'),
17397                        NOM_CAS        = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'),
17398          ),
17399
17400          ENER_ELAS      = FACT(statut='f',max='**',
17401                                regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),),
17402                                TOUT         = SIMP(statut='f',typ='TXM',into=("OUI",) ),
17403                                MAILLE       = SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
17404                                GROUP_MA     = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
17405                               ),
17406          b_ener_elas = BLOC(condition = "( ENER_ELAS != None )",
17407                        fr="calcul de l'énergie de déformation élastique",
17408                        MODELE         = SIMP(statut='o',typ=modele),
17409                        CHAM_MATER     = SIMP(statut='o',typ=cham_mater),
17410                        CARA_ELEM      = SIMP(statut='f',typ=cara_elem),
17411                        CHARGE         = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ),
17412                        NUME_COUCHE    = SIMP(statut='f',typ='I',defaut=1),
17413                        NIVE_COUCHE    = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),),
17414                        MODE_FOURIER   = SIMP(statut='f',typ='I',defaut=0),
17415                        RESULTAT       = SIMP(statut='o',typ=(evol_noli) ),
17416                        regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),),
17417                        PRECISION      = SIMP(statut='f',typ='R',defaut= 1.0E-3),
17418                        CRITERE        = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")),
17419                        TOUT_ORDRE     = SIMP(statut='f',typ='TXM',into=("OUI",) ),
17420                        NUME_ORDRE     = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
17421                        LIST_ORDRE     = SIMP(statut='f',typ=listis),
17422                        INST           = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
17423                        LIST_INST      = SIMP(statut='f',typ=listr8),
17424          ),
17425
17426          ENER_TOTALE    = FACT(statut='f',max='**',
17427                                regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),),
17428                                TOUT         = SIMP(statut='f',typ='TXM',into=("OUI",) ),
17429                                MAILLE       = SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
17430                                GROUP_MA     = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
17431                               ),
17432          b_ener_totale = BLOC(condition = "( ENER_TOTALE != None )",
17433                        fr="calcul de l'énergie de déformation totale",
17434                        MODELE         = SIMP(statut='o',typ=modele),
17435                        CHAM_MATER     = SIMP(statut='o',typ=cham_mater),
17436                        CARA_ELEM      = SIMP(statut='f',typ=cara_elem),
17437                        CHARGE         = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ),
17438                        NUME_COUCHE    = SIMP(statut='f',typ='I',defaut=1),
17439                        NIVE_COUCHE    = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),),
17440                        MODE_FOURIER   = SIMP(statut='f',typ='I',defaut=0),
17441                        RESULTAT       = SIMP(statut='o',typ=(evol_noli) ),
17442                        regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),),
17443                        PRECISION      = SIMP(statut='f',typ='R',defaut= 1.0E-3),
17444                        CRITERE        = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")),
17445                        TOUT_ORDRE     = SIMP(statut='f',typ='TXM',into=("OUI",) ),
17446                        NUME_ORDRE     = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
17447                        LIST_ORDRE     = SIMP(statut='f',typ=listis),
17448                        INST           = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
17449                        LIST_INST      = SIMP(statut='f',typ=listr8),
17450          ),
17451
17452          WEIBULL        = FACT(statut='f',max='**',
17453                                regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),),
17454                                TOUT         = SIMP(statut='f',typ='TXM',into=("OUI",) ),
17455                                MAILLE       = SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
17456                                GROUP_MA     = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
17457                                OPTION       = SIMP(statut='f',typ='TXM',
17458                                                    into=("SIGM_ELGA","SIGM_ELMOY"),
17459                                                    defaut="SIGM_ELGA"),
17460                                CORR_PLAST   = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")),
17461                                COEF_MULT    = SIMP(statut='f',typ='R',defaut=1.),
17462                               ),
17463          b_weibull = BLOC(condition = "( WEIBULL != None )",
17464                        fr="calcul du champ élémentaire de la puissance m-ième de la contrainte de Weibull",
17465                        regles=(UN_PARMI('CHAM_GD','RESULTAT'),
17466                                EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),),
17467                        MODELE         = SIMP(statut='o',typ=modele),
17468                        CHAM_MATER     = SIMP(statut='o',typ=cham_mater),
17469                        CARA_ELEM      = SIMP(statut='f',typ=cara_elem),
17470                        CHARGE         = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ),
17471                        NUME_COUCHE    = SIMP(statut='f',typ='I',defaut=1),
17472                        NIVE_COUCHE    = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),),
17473                        MODE_FOURIER   = SIMP(statut='f',typ='I',defaut=0),
17474                        CHAM_GD        = SIMP(statut='f',typ=(cham_no_depl_r,cham_no_temp_r,cham_elem_ener_r) ),
17475                        RESULTAT       = SIMP(statut='f',typ=(evol_noli) ),
17476                        PRECISION      = SIMP(statut='f',typ='R',defaut= 1.0E-3),
17477                        CRITERE        = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")),
17478                        TOUT_ORDRE     = SIMP(statut='f',typ='TXM',into=("OUI",) ),
17479                        NUME_ORDRE     = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
17480                        LIST_ORDRE     = SIMP(statut='f',typ=listis),
17481                        INST           = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
17482                        LIST_INST      = SIMP(statut='f',typ=listr8),
17483          ),
17484
17485          RICE_TRACEY    = FACT(statut='f',max='**',
17486                                regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),),
17487                                TOUT         = SIMP(statut='f',typ='TXM',into=("OUI",) ),
17488                                MAILLE       = SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
17489                                GROUP_MA     = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
17490                                OPTION       = SIMP(statut='f',typ='TXM',
17491                                                    into=("SIGM_ELGA","SIGM_ELMOY"),
17492                                                    defaut="SIGM_ELGA"),
17493                                LOCAL        = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")),
17494                               ),
17495          b_rice_tracey = BLOC(condition = "( RICE_TRACEY != None )",
17496                        fr="calcul du taux de croissance d'une cavité sphérique par rapport à un domaine",
17497                        regles=(UN_PARMI('CHAM_GD','RESULTAT'),
17498                                EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),),
17499                        MODELE         = SIMP(statut='o',typ=modele),
17500                        CHAM_MATER     = SIMP(statut='o',typ=cham_mater),
17501                        CARA_ELEM      = SIMP(statut='f',typ=cara_elem),
17502                        CHARGE         = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ),
17503                        NUME_COUCHE    = SIMP(statut='f',typ='I',defaut=1),
17504                        NIVE_COUCHE    = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),),
17505                        MODE_FOURIER   = SIMP(statut='f',typ='I',defaut=0),
17506                        CHAM_GD        = SIMP(statut='f',typ=(cham_no_depl_r,cham_no_temp_r,cham_elem_ener_r) ),
17507                        RESULTAT       = SIMP(statut='f',typ=(evol_noli) ),
17508                        PRECISION      = SIMP(statut='f',typ='R',defaut= 1.0E-3),
17509                        CRITERE        = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")),
17510                        TOUT_ORDRE     = SIMP(statut='f',typ='TXM',into=("OUI",) ),
17511                        NUME_ORDRE     = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
17512                        LIST_ORDRE     = SIMP(statut='f',typ=listis),
17513                        INST           = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
17514                        LIST_INST      = SIMP(statut='f',typ=listr8),
17515          ),
17516
17517          INDIC_ENER     = FACT(statut='f',max='**',
17518                                regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),),
17519                                TOUT         = SIMP(statut='f',typ='TXM',into=("OUI",) ),
17520                                MAILLE       = SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
17521                                GROUP_MA     = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
17522                               ),
17523          b_indic_ener = BLOC(condition = "( INDIC_ENER != None )",
17524                        fr="calcul un indicateur global de perte de proportionnalité du chargement",
17525                        MODELE         = SIMP(statut='o',typ=modele),
17526                        CHAM_MATER     = SIMP(statut='o',typ=cham_mater),
17527                        CHARGE         = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ),
17528                        MODE_FOURIER   = SIMP(statut='f',typ='I',defaut=0),
17529                        RESULTAT       = SIMP(statut='o',typ=(evol_noli) ),
17530                        regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),),
17531                        PRECISION      = SIMP(statut='f',typ='R',defaut= 1.0E-3),
17532                        CRITERE        = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")),
17533                        TOUT_ORDRE     = SIMP(statut='f',typ='TXM',into=("OUI",) ),
17534                        NUME_ORDRE     = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
17535                        LIST_ORDRE     = SIMP(statut='f',typ=listis),
17536                        INST           = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
17537                        LIST_INST      = SIMP(statut='f',typ=listr8),
17538          ),
17539
17540          INDIC_SEUIL    = FACT(statut='f',max='**',
17541                                regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),),
17542                                TOUT         = SIMP(statut='f',typ='TXM',into=("OUI",) ),
17543                                MAILLE       = SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
17544                                GROUP_MA     = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
17545                               ),
17546          b_indic_seuil = BLOC(condition = "( INDIC_SEUIL != None )",
17547                        fr="calcul un indicateur global de perte de proportionnalité du chargement",
17548                        MODELE         = SIMP(statut='o',typ=modele),
17549                        CHAM_MATER     = SIMP(statut='o',typ=cham_mater),
17550                        CHARGE         = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ),
17551                        MODE_FOURIER   = SIMP(statut='f',typ='I',defaut=0),
17552                        RESULTAT       = SIMP(statut='o',typ=(evol_noli) ),
17553                        regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),),
17554                        PRECISION      = SIMP(statut='f',typ='R',defaut= 1.0E-3),
17555                        CRITERE        = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")),
17556                        TOUT_ORDRE     = SIMP(statut='f',typ='TXM',into=("OUI",) ),
17557                        NUME_ORDRE     = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
17558                        LIST_ORDRE     = SIMP(statut='f',typ=listis),
17559                        INST           = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
17560                        LIST_INST      = SIMP(statut='f',typ=listr8),
17561          ),
17562
17563          CHAR_LIMITE    = FACT(statut='f',min=0,
17564                                CHAR_CSTE = SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON")
17565                               ),
17566          b_char_limite = BLOC(condition = "( CHAR_LIMITE != None )",
17567                        fr="post-traitement du calcul de la charge limite",
17568                        MODELE         = SIMP(statut='o',typ=modele),
17569                        CHAM_MATER     = SIMP(statut='o',typ=cham_mater),
17570                        CARA_ELEM      = SIMP(statut='f',typ=cara_elem),
17571                        CHARGE         = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ),
17572                        MODE_FOURIER   = SIMP(statut='f',typ='I',defaut=0),
17573                        RESULTAT       = SIMP(statut='o',typ=(evol_noli) ),
17574                        regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),),
17575                        PRECISION      = SIMP(statut='f',typ='R',defaut= 1.0E-3),
17576                        CRITERE        = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")),
17577                        TOUT_ORDRE     = SIMP(statut='f',typ='TXM',into=("OUI",) ),
17578                        NUME_ORDRE     = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
17579                        LIST_ORDRE     = SIMP(statut='f',typ=listis),
17580                        INST           = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
17581                        LIST_INST      = SIMP(statut='f',typ=listr8),
17582          ),
17583
17584          CARA_GEOM      = FACT(statut='f',max='**',
17585                                regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),),
17586                                TOUT         = SIMP(statut='f',typ='TXM',into=("OUI",) ),
17587                                MAILLE       = SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
17588                                GROUP_MA     = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
17589                                SYME_X       = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
17590                                SYME_Y       = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
17591                                ORIG_INER    = SIMP(statut='f',typ='R',min=2,max=2),
17592                               ),
17593          b_cara_geom = BLOC(condition = "( CARA_GEOM != None )",
17594                        fr="calcul des caractéristiques géométriques d'un section de poutre",
17595                        MODELE         = SIMP(statut='o',typ=modele),
17596                        CHAM_MATER     = SIMP(statut='f',typ=cham_mater),
17597                        CHARGE         = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ),
17598                        MODE_FOURIER   = SIMP(statut='f',typ='I',defaut=0),
17599          ),
17600
17601          CARA_POUTRE    = FACT(statut='f',max='**',
17602                                regles=(AU_MOINS_UN('TOUT','GROUP_MA'),
17603                                        ENSEMBLE('LONGUEUR','LIAISON','MATERIAU'),),
17604                                TOUT          = SIMP(statut='f',typ='TXM',into=("OUI",) ),
17605                                GROUP_MA      = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
17606                                GROUP_MA_INTE = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
17607                                CARA_GEOM     = SIMP(statut='f',typ=tabl_cara_geom),
17608                                LAPL_PHI      = SIMP(statut='f',typ=evol_ther),
17609                                LAPL_PHI_Y    = SIMP(statut='f',typ=evol_ther),
17610                                LAPL_PHI_Z    = SIMP(statut='f',typ=evol_ther),
17611                                LIAISON       = SIMP(statut='f',typ='TXM',into=("ROTULE","ENCASTREMENT")),
17612                                LONGUEUR      = SIMP(statut='f',typ='R'),
17613                                MATERIAU      = SIMP(statut='f',typ=mater),
17614                                OPTION        = SIMP(statut='f',typ='TXM',
17615                                                     into=("CARA_TORSION","CARA_CISAILLEMENT","CARA_GAUCHI") ),
17616                              ),
17617          b_cara_poutre = BLOC(condition = "( CARA_POUTRE != None )",
17618                        fr="calcul des caractéristiques mécaniques d'un section de poutre",
17619                        MODELE         = SIMP(statut='o',typ=modele),
17620                        CHAM_MATER     = SIMP(statut='f',typ=cham_mater),
17621                        CHARGE         = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ),
17622                        MODE_FOURIER   = SIMP(statut='f',typ='I',defaut=0),
17623          ),
17624
17625           AIRE_INTERNE   = FACT(statut='f',max='**',
17626                                 GROUP_MA_BORD  = SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'),
17627                                ),
17628          b_aire_interne = BLOC(condition = "( AIRE_INTERNE != None )",
17629                        fr="calcul de l'aire d'un trou dans un maillage 2D",
17630                        MODELE         = SIMP(statut='o',typ=modele),
17631          ),
17632
17633          TRAV_EXT       = FACT(statut='f',),
17634          b_trav_ext = BLOC(condition = "( TRAV_EXT != None )",
17635                        fr="calcul du travail des efforts extérieurs",
17636                        RESULTAT       = SIMP(statut='o',typ=(evol_elas,evol_noli,dyna_trans) ),
17637                        PRECISION      = SIMP(statut='f',typ='R',defaut= 1.0E-3),
17638                        CRITERE        = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")),
17639                        TOUT_ORDRE     = SIMP(statut='f',typ='TXM',into=("OUI",) ),
17640          ),
17641
17642          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),
17643          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
17644
17645  )  ;
17646
17647 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
17648 #            CONFIGURATION MANAGEMENT OF EDF VERSION
17649 # ======================================================================
17650 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
17651 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
17652 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
17653 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
17654 # (AT YOUR OPTION) ANY LATER VERSION.                                 
17655 #
17656 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
17657 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
17658 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
17659 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
17660 #
17661 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
17662 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
17663 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
17664 # ======================================================================
17665 POST_FATI_ALEA=OPER(nom="POST_FATI_ALEA",op=170,sd_prod=tabl_post_f_alea,docu="U4.84.03-d",reentrant='n',
17666             UIinfo={"groupes":("Post traitements",)},
17667                     fr="Calcul du dommage subi par une structure soumise à unesollicitation de type aléatoire",
17668          regles=(ENSEMBLE('MOMENT_SPEC_0','MOMENT_SPEC_2'),
17669                  PRESENT_PRESENT( 'MOMENT_SPEC_4','MOMENT_SPEC_0'),
17670                  UN_PARMI('TABL_POST_ALEA','MOMENT_SPEC_0'), ),
17671          MOMENT_SPEC_0   =SIMP(statut='f',typ='R'),  
17672          MOMENT_SPEC_2   =SIMP(statut='f',typ='R'),  
17673          MOMENT_SPEC_4   =SIMP(statut='f',typ='R'),  
17674          TABL_POST_ALEA  =SIMP(statut='f',typ=tabl_post_alea),
17675          COMPTAGE        =SIMP(statut='o',typ='TXM',into=("PIC","NIVEAU")),
17676          DUREE           =SIMP(statut='f',typ='R',defaut= 1.),  
17677          CORR_KE         =SIMP(statut='f',typ='TXM',into=("RCCM",)),
17678          DOMMAGE         =SIMP(statut='o',typ='TXM',into=("WOHLER",)),
17679          MATER           =SIMP(statut='o',typ=mater),
17680          TITRE           =SIMP(statut='f',typ='TXM',max='**'),  
17681 )  ;
17682
17683 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
17684 #            CONFIGURATION MANAGEMENT OF EDF VERSION
17685 # ======================================================================
17686 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
17687 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
17688 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
17689 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
17690 # (AT YOUR OPTION) ANY LATER VERSION.                                 
17691 #
17692 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
17693 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
17694 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
17695 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
17696 #
17697 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
17698 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
17699 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
17700 # ======================================================================
17701 POST_FATIGUE=OPER(nom="POST_FATIGUE",op=136,sd_prod=tabl_post_fatig,docu="U4.83.01-d",reentrant='n',
17702             UIinfo={"groupes":("Post traitements",)},
17703                   fr="Calcul du dommage subi par une structure soumise à une histoire de chargement",
17704
17705          CHARGEMENT = SIMP(statut='o',typ='TXM',into=("UNIAXIAL","PERIODIQUE","QUELCONQUE")),
17706
17707          b_uniaxial = BLOC( condition = "CHARGEMENT=='UNIAXIAL'",
17708                       regles=(PRESENT_PRESENT('CORR_KE','MATER'),
17709                               PRESENT_PRESENT('CORR_SIGM_MOYE','MATER'),
17710                               PRESENT_PRESENT('DOMMAGE','MATER'),),
17711              HISTOIRE       = FACT(statut='o',
17712                                  regles=(UN_PARMI('SIGM','EPSI'),),
17713                                  SIGM  = SIMP(statut='f',typ=(fonction,formule)),
17714                                  EPSI  = SIMP(statut='f',typ=(fonction,formule)),),
17715              COMPTAGE       = SIMP(statut='o',typ='TXM',into=("RAINFLOW","RCCM","NATUREL")),
17716              DELTA_OSCI     = SIMP(statut='f',typ='R',defaut= 0.0E+0),  
17717              COEF_MULT      = FACT(statut='f',
17718                                  KT    = SIMP(statut='o',typ='R'),),
17719              CORR_KE        = SIMP(statut='f',typ='TXM',into=("RCCM",)),
17720              DOMMAGE        = SIMP(statut='f',typ='TXM',into=("WOHLER","MANSON_COFFIN",
17721                                                               "TAHERI_MANSON","TAHERI_MIXTE")),
17722              MATER          = SIMP(statut='f',typ=mater),
17723              CORR_SIGM_MOYE = SIMP(statut='f',typ='TXM',into=("GOODMAN","GERBER")),
17724              TAHERI_NAPPE   = SIMP(statut='f',typ=(nappe,formule)),
17725              TAHERI_FONC    = SIMP(statut='f',typ=(fonction,formule)),
17726              CUMUL          = SIMP(statut='f',typ='TXM',into=("LINEAIRE",)),
17727          ),
17728
17729          b_periodique = BLOC( condition = "CHARGEMENT=='PERIODIQUE'",
17730              HISTOIRE       = FACT(statut='o',
17731                                  SIGM_XX  = SIMP(statut='o',typ=(fonction,formule)),
17732                                  SIGM_YY  = SIMP(statut='o',typ=(fonction,formule)),
17733                                  SIGM_ZZ  = SIMP(statut='o',typ=(fonction,formule)),
17734                                  SIGM_XY  = SIMP(statut='o',typ=(fonction,formule)),
17735                                  SIGM_XZ  = SIMP(statut='f',typ=(fonction,formule)),
17736                                  SIGM_YZ  = SIMP(statut='f',typ=(fonction,formule)),),
17737              CRITERE        = SIMP(statut='o',typ='TXM',into=("CROSSLAND","PAPADOPOULOS")),
17738              DOMMAGE        = SIMP(statut='f',typ='TXM',into=("WOHLER",)),
17739              MATER          = SIMP(statut='o',typ=mater),
17740              COEF_CORR      = SIMP(statut='f',typ='R'),
17741          ),
17742
17743          b_quelconque = BLOC( condition = "CHARGEMENT=='QUELCONQUE'",
17744              HISTOIRE       = FACT(statut='o',
17745                                  SIGM_XX  = SIMP(statut='o',typ=(fonction,formule)),
17746                                  SIGM_YY  = SIMP(statut='o',typ=(fonction,formule)),
17747                                  SIGM_ZZ  = SIMP(statut='o',typ=(fonction,formule)),
17748                                  SIGM_XY  = SIMP(statut='o',typ=(fonction,formule)),
17749                                  SIGM_XZ  = SIMP(statut='f',typ=(fonction,formule)),
17750                                  SIGM_YZ  = SIMP(statut='f',typ=(fonction,formule)),
17751                                  EPSP     = SIMP(statut='o',typ=(fonction,formule)),
17752                                  TEMP     = SIMP(statut='o',typ=(fonction,formule)),),
17753              DOMMAGE        = SIMP(statut='f',typ='TXM',into=("LEMAITRE",),defaut="LEMAITRE"),
17754              MATER          = SIMP(statut='o',typ=mater),
17755              CUMUL          = SIMP(statut='f',typ='TXM',into=("LINEAIRE",)),
17756          ),
17757
17758          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
17759          TITRE           =SIMP(statut='f',typ='TXM',max='**'),  
17760 )  ;
17761
17762 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
17763 #            CONFIGURATION MANAGEMENT OF EDF VERSION
17764 # ======================================================================
17765 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
17766 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
17767 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
17768 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
17769 # (AT YOUR OPTION) ANY LATER VERSION.                                 
17770 #
17771 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
17772 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
17773 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
17774 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
17775 #
17776 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
17777 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
17778 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
17779 # ======================================================================
17780 POST_GOUJ2E=OPER(nom="POST_GOUJ2E",op=187,sd_prod=tabl_post_gouj2e,reentrant='n', 
17781                  fr=" ",docu="U4.gj.30-b",
17782             UIinfo={"groupes":("Outils métier",)},
17783          TABLE           =SIMP(statut='o',typ=tabl_post_rele),
17784 )  ;
17785
17786 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
17787 #            CONFIGURATION MANAGEMENT OF EDF VERSION
17788 # ======================================================================
17789 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
17790 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
17791 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
17792 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
17793 # (AT YOUR OPTION) ANY LATER VERSION.                                 
17794 #
17795 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
17796 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
17797 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
17798 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
17799 #
17800 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
17801 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
17802 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
17803 # ======================================================================
17804 # RESPONSABLE JMBHH01 J.M.PROIX
17805 POST_K1_K2_K3=OPER(nom="POST_K1_K2_K3",op=188,sd_prod=tabl_post_k,
17806                    fr="Calcul des FIC par extrapolation du champ de déplacements sur les lèvres de la fissure",
17807                    docu="U4.82.05-b",reentrant='n',
17808             UIinfo={"groupes":("Post traitements",)},
17809
17810            regles=(UN_PARMI('RESULTAT','TABL_DEPL_SUP'),
17811                    PRESENT_PRESENT('TABL_DEPL_SUP','TABL_DEPL_INF'),
17812                    PRESENT_PRESENT('RESULTAT','FOND_FISS'),),
17813
17814          MODELISATION  =SIMP(statut='o',typ='TXM',
17815                              into=("3D","AXIS","D_PLAN","C_PLAN"),
17816                              fr="Modélisation cohérente avec celle utilisée pour le calcul des déplacements"),
17817          FOND_FISS     =SIMP(statut='f',typ=fond_fiss),
17818          b_fond_fiss   =BLOC (condition="(FOND_FISS!= None)",
17819                          MAILLAGE      = SIMP(statut='o',typ=maillage),
17820                          PRECISION     = SIMP(statut='f',typ='R',defaut=0.001),
17821                          NOEUD         = SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
17822                          GROUP_NO      = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
17823                          SANS_NOEUD    = SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
17824                          SANS_GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**')
17825                          ),
17826          MATER         =SIMP(statut='o',typ=mater,
17827                              fr="Matériau homogène et isotrope cohérent avec celui utilisé pour le calcul des déplacements"),
17828          RESULTAT      =SIMP(statut='f',typ=(evol_elas,evol_noli),
17829                              fr="Table déplacement des noeuds de la lèvre supérieure et inférieure"),
17830          TABL_DEPL_SUP =SIMP(statut='f',typ=tabl_post_rele,
17831                              fr="Table issue de post_releve_t sur les noeuds de la lèvre supérieure"),
17832          TABL_DEPL_INF =SIMP(statut='f',typ=tabl_post_rele,
17833                              fr="Table issue de post_releve_t sur les noeuds de la lèvre inférieure"),
17834          ABSC_CURV_MAXI=SIMP(statut='f',typ='R',
17835                              fr="distance maximum à partir du fond de fissure à utiliser pour le calcul"),  
17836          PREC_VIS_A_VIS= SIMP(statut='f',typ='R',defaut=0.1),
17837          TOUT_ORDRE    =SIMP(statut='f',typ='TXM',into=("OUI",) ),
17838          NUME_ORDRE    =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
17839          LIST_ORDRE    =SIMP(statut='f',typ=listis),
17840          INST          =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
17841          LIST_INST     =SIMP(statut='f',typ=listr8),
17842              b_acce_reel     =BLOC(condition="(INST != None)or(LIST_INST != None)",
17843                PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-6),
17844                CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
17845              ),
17846          INFO          =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
17847          VECT_K1       =SIMP(statut='o',typ='R',max=3,
17848                              fr="Vecteur normal au plan de fissure, orienté de la lèvre inférieure vers la lèvre supérieure"),  
17849          TITRE         =SIMP(statut='f',typ='TXM',max='**'),  
17850 )  ;
17851
17852 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
17853 #            CONFIGURATION MANAGEMENT OF EDF VERSION
17854 # ======================================================================
17855 # COPYRIGHT (C) 1991 - 2002  EDF R&D                  WWW.CODE-ASTER.ORG
17856 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
17857 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
17858 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
17859 # (AT YOUR OPTION) ANY LATER VERSION.                                 
17860 #
17861 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
17862 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
17863 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
17864 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
17865 #
17866 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
17867 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
17868 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
17869 #                                                                       
17870 #                                                                       
17871 # ======================================================================
17872 #
17873 POST_K_BETA=OPER(nom="POST_K_BETA",op=198,sd_prod=tabl_post_beta,
17874                    fr="Calcul des FIC par la méthode K_BETA",
17875                    docu="U4.82.07-a",reentrant='n',
17876             UIinfo={"groupes":("Post traitements",)},
17877          MAILLAGE      = SIMP(statut='o',typ=maillage),
17878          MATER_REV     = SIMP(statut='o',typ=mater),
17879          EPAIS_REV     = SIMP(statut='o',typ='R'),
17880          FISSURE       = FACT(statut='o',
17881             DECALAGE       = SIMP(statut='f',typ='R',defaut=-2.e-04),
17882             PROFONDEUR     = SIMP(statut='o',typ='R'),
17883             LONGUEUR       = SIMP(statut='o',typ='R'),
17884             ORIENTATION    = SIMP(statut='o',typ='TXM',
17885                                  into=("CIRC","LONGI"),),
17886          ),
17887          K1D           = FACT(statut='o',max='**',
17888             TABL_MECA_REV  = SIMP(statut='o',typ=(tabl_post_rele)),
17889             TABL_MECA_MDB  = SIMP(statut='o',typ=(tabl_post_rele)),
17890             TABL_THER      = SIMP(statut='o',typ=(tabl_post_rele)),
17891             INTITULE       = SIMP(statut='o',typ='TXM' ), 
17892          ),
17893          TITRE         = SIMP(statut='f',typ='TXM',max='**'),  
17894 );
17895
17896 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
17897 #            CONFIGURATION MANAGEMENT OF EDF VERSION
17898 # ======================================================================
17899 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
17900 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
17901 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
17902 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
17903 # (AT YOUR OPTION) ANY LATER VERSION.                                 
17904 #
17905 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
17906 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
17907 # MERCHANTABILITY OR FITNESS FOR A PARTIC               
17908 #
17909 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
17910 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
17911 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
17912 # ======================================================================
17913 # RESPONSABLE JMBHH01 J.M.PROIX
17914 POST_RCCM=OPER(nom="POST_RCCM",op= 165,sd_prod=tabl_post_rccm,
17915                fr="Vérification des critères de niveau 0 et certains critères de niveau A du RCC-M-B3200 (Edition 1991)",
17916                docu="U4.83.11-d",reentrant='n',
17917             UIinfo={"groupes":("Post traitements",)},
17918          TYPE_RESU       =SIMP(statut='f',typ='TXM',defaut="VALE_MAX",into=("VALE_MAX","VALE_INST") ),
17919          INFO            =SIMP(statut='f',typ='I',into=(1,2) ),
17920          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
17921          OPTION          =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',
17922                                into=("PM_PB",
17923                                      "SN",
17924                                      "FATIGUE_SPMAX",
17925                                      "FATIGUE_ZH210",
17926                                      "FATIGUE_B3200",
17927                                      "FATIGUE_B3600",
17928                                      ) ),
17929      b_pm_sn  =BLOC(condition="(OPTION == 'PM_PB')or(OPTION == 'SN')or(OPTION == 'FATIGUE_SPMAX')or(OPTION == 'FATIGUE_ZH210')",
17930          MATER           =SIMP(statut='o',typ=mater ),
17931          MAILLAGE        =SIMP(statut='f',typ=maillage),
17932          SEGMENT         =FACT(statut='o',max='**',fr="Segment sur lequel s effectue le depouillement",
17933            regles=(AU_MOINS_UN('CHEMIN','GROUP_NO','NOEUD'),
17934                    EXCLUS('CHEMIN','GROUP_NO'),
17935                    EXCLUS('CHEMIN','NOEUD'),),
17936            INTITULE        =SIMP(statut='f',typ='TXM' ),
17937            CHEMIN          =SIMP(statut='f',typ=(courbe,surface),),
17938            NOEUD           =SIMP(statut='f',typ=no,validators=NoRepeat(),max='**'),
17939            GROUP_NO        =SIMP(statut='f',typ=grno),
17940              b_acce_noeud     =BLOC(condition="(NOEUD != None)or(GROUP_NO != None)",
17941                PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3),
17942                CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
17943                                    ),
17944                                ),
17945          TRANSITOIRE     =FACT(statut='o',max='**',fr="transitoire à dépouiller",
17946            regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST','LIST_ORDRE'),),
17947            RESULTAT        =SIMP(statut='o',typ=(evol_elas,evol_noli) ),
17948            RESU_SIGM_THER  =SIMP(statut='f',typ=(evol_elas,evol_noli),fr="résultat sous chargement thermique seul" ),
17949            NB_OCCUR        =SIMP(statut='f',typ='I',defaut= 1,fr="nombre d occurences réelles de ce transitoire" ),
17950            NOM_CHAM        =SIMP(statut='o',typ='TXM',into=("SIEF_ELNO_ELGA","SIGM_ELNO_DEPL") ),
17951            TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
17952            NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
17953            LIST_ORDRE      =SIMP(statut='f',typ=listis ),
17954            INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
17955            LIST_INST       =SIMP(statut='f',typ=listr8 ),
17956            b_inst          =BLOC(condition = "(INST != None) or (LIST_INST != None)" ,
17957              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
17958              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("ABSOLU","RELATIF") ),
17959                                  ), 
17960                              ),
17961          ),
17962
17963      b_3200  =BLOC(condition="(OPTION == 'FATIGUE_B3200')",
17964          MATER           =SIMP(statut='o',typ=mater ),
17965          TYPE_KE         =SIMP(statut='f',typ='TXM',defaut="KE_MECA",into=("KE_MECA","KE_MIXTE"),
17966                                fr="Ke meca seul ou partition mecanique + thermique" ),
17967          CHAR_MECA   =FACT(statut='o',max='**',fr="Chargements mécaniques",
17968            NUME_CHAR     =SIMP(statut='o',typ='I',fr="numéro du chargement" ),
17969            NOM_CHAR      =SIMP(statut='f',typ='TXM',fr="nom du chargement" ),
17970            TYPE_CHAR     =SIMP(statut='f',typ='TXM',fr="nature du chargement",into=( "SEISME","AUTRE"),defaut="AUTRE",),
17971            FX            =SIMP(statut='f',typ='R',fr="effort suivant x", ),
17972            FY            =SIMP(statut='f',typ='R',fr="effort suivant y", ),
17973            FZ            =SIMP(statut='f',typ='R',fr="effort suivant z", ),
17974            MX            =SIMP(statut='o',typ='R',fr="moment suivant x", ),
17975            MY            =SIMP(statut='o',typ='R',fr="moment suivant y", ),
17976            MZ            =SIMP(statut='o',typ='R',fr="moment suivant z", ),
17977                          ),
17978          RESU_MECA_UNIT =FACT(statut='o',fr="resultats mécaniques unitaires",
17979            TABL_FX       =SIMP(statut='f',typ=table,
17980                               fr="table relevé des contraintes pour chargement unitaire FX"),
17981            TABL_FY       =SIMP(statut='f',typ=table,
17982                               fr="table relevé des contraintes pour chargement unitaire FY"),
17983            TABL_FZ       =SIMP(statut='f',typ=table,
17984                               fr="table relevé des contraintes pour chargement unitaire FZ"),
17985            TABL_MX       =SIMP(statut='o',typ=table,
17986                               fr="table relevé des contraintes pour chargement unitaire MX"),
17987            TABL_MY       =SIMP(statut='o',typ=table,
17988                               fr="table relevé des contraintes pour chargement unitaire MY"),
17989            TABL_MZ       =SIMP(statut='o',typ=table,
17990                               fr="table relevé des contraintes pour chargement unitaire MZ"),
17991            TABL_PRES     =SIMP(statut='o',typ=table,
17992                               fr="table relevé des contraintes pour chargement unitaire de pression"),
17993                          ),
17994           RESU_THER   =FACT(statut='f',max='**',fr="resultats thermiques",
17995            NUME_RESU_THER =SIMP(statut='o',typ='I',fr="numéro de la table de résultat thermique" ),
17996            TABL_RESU_THER =SIMP(statut='o',typ=table,
17997                               fr="table relevé des contraintes pour chargement thermique"),
17998                            ),
17999          SITUATION         =FACT(statut='o',max='**',fr="Situation",ang="situation_ang",
18000               NB_OCCUR         =SIMP(statut='o',typ='I',fr="nombre d'occurences de la situation" ),
18001               NB_CYCL_SEISME   =SIMP(statut='f',typ='I',fr="nombre de cycles associé au séisme" ),
18002               NUME_SITU        =SIMP(statut='o',typ='I',fr="numéro de la situation" ),
18003               NOM_SITU         =SIMP(statut='f',typ='TXM',fr="nom de la situation" ),
18004               COMBINABLE       =SIMP(statut='f',typ='TXM',defaut= "OUI",into=("OUI","NON"),fr="non = sous-cycle" ),
18005               NUME_GROUPE      =SIMP(statut='o',typ='I',fr="numéro du groupe de la situation" ),
18006               NUME_PASSAGE     =SIMP(statut='f',typ='I',max=2,fr="numéro des deux groupes en relation" ),
18007               NUME_RESU_THER   =SIMP(statut='f',typ='I',max='**',fr="numeros de transitoires thermiques" ),
18008               CHAR_ETAT_A      =SIMP(statut='o',typ='I',max='**',fr="numeros de chargements etat A" ),
18009               CHAR_ETAT_B      =SIMP(statut='o',typ='I',max='**',fr="numeros de chargements etat B" ),
18010               PRES_A           =SIMP(statut='o',typ='R',fr="pression etat A"),
18011               PRES_B           =SIMP(statut='o',typ='R',fr="pression etat B"),
18012               TEMP_REF_A       =SIMP(statut='f',typ='R',fr="temperature référence etat A"),
18013               TEMP_REF_B       =SIMP(statut='f',typ='R',fr="temperature référence etat B"),
18014                                ),
18015                       ),
18016      b_3600  =BLOC(condition="(OPTION == 'FATIGUE_B3600')",
18017          CHAM_MATER      =SIMP(statut='o',typ=cham_mater ),
18018          TYPE_KE         =SIMP(statut='f',typ='TXM',defaut="KE_MECA",into=("KE_MECA","KE_MIXTE"),
18019                                fr="Ke meca seul ou partition mecanique + thermique" ),
18020          MODELE          =SIMP(statut='o',typ=modele),
18021          CARA_ELEM       =SIMP(statut='o',typ=cara_elem),
18022          ZONE_ANALYSE =FACT(statut='o',fr="liste des mailles ou des noeuds analysés",
18023             regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),),
18024             TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
18025             GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
18026             MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
18027             ),
18028          RESU_MECA   =FACT(statut='o',max='**',fr="Chargements mécaniques",
18029            regles=(UN_PARMI('CHAM_GD','RESULTAT'),),
18030            NUME_CHAR     =SIMP(statut='o',typ='I',fr="numéro du chargement" ),
18031            NOM_CHAR      =SIMP(statut='f',typ='TXM',fr="nom du chargement" ),
18032            TYPE_CHAR     =SIMP(statut='f',typ='TXM',fr="nature du chargement",into=( "SEISME","AUTRE"),defaut="AUTRE",),
18033            CHAM_GD         =SIMP(statut='f',typ=cham_gd),
18034            RESULTAT        =SIMP(statut='f',typ=resultat),
18035            b_extrac        =BLOC(condition="RESULTAT != None",
18036                                  fr="extraction d un champ de grandeur",
18037              regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE','INST','NOEUD_CMP'),),
18038              NOM_CHAM        =SIMP(statut='o',typ='TXM',into=("EFGE_ELNO_DEPL","SIEF_ELNO_ELGA"),),
18039              TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
18040              NUME_ORDRE      =SIMP(statut='f',typ='I',),
18041              INST            =SIMP(statut='f',typ='R',),
18042              NOEUD_CMP       =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'),
18043              b_acce_reel     =BLOC(condition="(INST != None)",
18044                PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3),
18045                CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU"), ),
18046              ),
18047            ),
18048                           ),
18049          INDI_SIGM =FACT(statut='o',max='**',fr="indices de contraintes",
18050             regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),),
18051             C1              =SIMP(statut='f',typ='R',defaut=1.0,fr="indice de contraintes C1 du RCCM"),
18052             K1              =SIMP(statut='f',typ='R',defaut=1.0,fr="indice de contraintes K1 du RCCM"),
18053             C2              =SIMP(statut='f',typ='R',defaut=1.0,fr="indice de contraintes C2 du RCCM"),
18054             K2              =SIMP(statut='f',typ='R',defaut=1.0,fr="indice de contraintes K2 du RCCM"),
18055             C3              =SIMP(statut='f',typ='R',defaut=0.5,fr="indice de contraintes C3 du RCCM"),
18056             K3              =SIMP(statut='f',typ='R',defaut=1.0,fr="indice de contraintes K3 du RCCM"),
18057             TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",),),
18058             GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**',
18059                              fr="groupe(s) de mailles ou sont affectés les indices de contraintes"),
18060             MAILLE          =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**',
18061                              fr="liste des mailles ou sont affectés les indices de contraintes"),
18062             b_grma     =BLOC(condition="(GROUP_MA != None)or(MAILLE != None)",
18063                GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
18064                NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
18065             ),
18066             TYPE_ELEM_STANDARD =SIMP(statut='f',typ='TXM',into=("DRO","COU","TRN","TEE"),
18067                               fr="type d'élément de tuyauterie ou sont affectés les indices de contraintes"),
18068                          ),
18069           RESU_THER   =FACT(statut='f',max='**',fr="resultats thermiques",
18070             regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),),
18071             NUME_RESU_THER =SIMP(statut='o',typ='I',fr="numéro de la table de résultat thermique" ),
18072             TABL_RESU_THER =SIMP(statut='o',typ=table,
18073                               fr="table relevé des températures sur la section"),
18074             TABL_MOYE_THER =SIMP(statut='o',typ=table,
18075                               fr="table relevé des moyennes sur la section"),
18076             TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
18077             GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
18078             MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
18079             b_grma     =BLOC(condition="(GROUP_MA != None)or(MAILLE != None)",
18080                GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
18081                NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
18082             ),
18083                            ),
18084          SITUATION         =FACT(statut='o',max='**',fr="Situation",ang="situation_ang",
18085               NB_OCCUR         =SIMP(statut='o',typ='I',fr="nombre d'occurences de la situation" ),
18086               NB_CYCL_SEISME   =SIMP(statut='f',typ='I',fr="nombre de cycles associé au séisme" ),
18087               NUME_SITU        =SIMP(statut='o',typ='I',fr="numéro de la situation" ),
18088               NOM_SITU         =SIMP(statut='f',typ='TXM',fr="nom de la situation" ),
18089               COMBINABLE       =SIMP(statut='f',typ='TXM',defaut= "OUI",into=("OUI","NON"),fr="non = sous-cycle" ),
18090               NUME_GROUPE      =SIMP(statut='o',typ='I',fr="numéro du groupe de la situation" ),
18091               NUME_PASSAGE     =SIMP(statut='f',typ='I',max=2,fr="numéro des deux groupes en relation" ),
18092               NUME_RESU_THER   =SIMP(statut='f',typ='I',max='**',fr="numeros de transitoires thermiques" ),
18093               CHAR_ETAT_A      =SIMP(statut='o',typ='I',max='**',fr="numeros de chargements etat A" ),
18094               CHAR_ETAT_B      =SIMP(statut='o',typ='I',max='**',fr="numeros de chargements etat B" ),
18095               PRES_A           =SIMP(statut='o',typ='R',fr="pression etat A"),
18096               PRES_B           =SIMP(statut='o',typ='R',fr="pression etat B"),
18097               TEMP_REF_A       =SIMP(statut='f',typ='R',fr="temperature référence etat A"),
18098               TEMP_REF_B       =SIMP(statut='f',typ='R',fr="temperature référence etat B"),
18099                                ),
18100                      ),
18101 )  ;
18102
18103 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
18104 # ======================================================================
18105 #            CONFIGURATION MANAGEMENT OF EDF VERSION
18106 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
18107 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
18108 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
18109 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
18110 # (AT YOUR OPTION) ANY LATER VERSION.                                 
18111 #
18112 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
18113 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
18114 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
18115 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
18116 #
18117 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
18118 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
18119 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
18120 # ======================================================================
18121 # RESPONSABLE G8BHHXD X.DESROCHES
18122 POST_RELEVE_T=OPER(nom="POST_RELEVE_T",op=51,sd_prod=tabl_post_rele,docu="U4.81.21-e",reentrant='n',
18123             UIinfo={"groupes":("Post traitements",)},
18124          ACTION          =FACT(statut='o',max='**',
18125            regles=(AU_MOINS_UN('CHEMIN','GROUP_NO','NOEUD'),
18126                    EXCLUS('CHEMIN','GROUP_NO'),
18127                    EXCLUS('CHEMIN','NOEUD'),
18128                    PRESENT_ABSENT('CHEMIN','GROUP_MA','MAILLE'),
18129                    UN_PARMI('RESULTAT','CHAM_GD'),            
18130                    UN_PARMI('TOUT_CMP','NOM_CMP','INVARIANT','ELEM_PRINCIPAUX','RESULTANTE'),
18131                    PRESENT_PRESENT('TRAC_DIR','DIRECTION'),          
18132                    ENSEMBLE('MOMENT','POINT'),
18133                    PRESENT_PRESENT('MOMENT','RESULTANTE'),
18134                    PRESENT_ABSENT('TOUT_CMP','TRAC_DIR','TRAC_NOR'),
18135                    EXCLUS('TRAC_DIR','TRAC_NOR'),
18136                    PRESENT_PRESENT('ORIGINE','AXE_Z'),),
18137            INTITULE        =SIMP(statut='o',typ='TXM'),  
18138            CHEMIN          =SIMP(statut='f',typ=(courbe,surface) ),
18139            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
18140            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
18141            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
18142            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
18143            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
18144            FORMAT_C        =SIMP(statut='f',typ='TXM',defaut="MODULE",into=("MODULE","REEL","IMAG")),
18145            CHAM_GD         =SIMP(statut='f',typ=(cham_no_depl_r,cham_no_temp_r,cham_no_pres_r,cham_no_var2_r,
18146                                                  cham_elem_sief_r,cham_elem_epsi_r,cham_elem_flux_r,cham_elem_crit_r,
18147                                                  cham_elem_ener_r,cham_elem_dbel_r,cham_elem_pres_r,cham_elem_erreur,
18148                                                  cham_elem_vari_r,cham_no_depl_c,cham_no_temp_c,cham_no_pres_c,
18149                                                  cham_elem_sief_c,cham_elem_epsi_c)),
18150            RESULTAT        =SIMP(statut='f',typ=(evol_elas,evol_ther,evol_noli,dyna_trans,
18151                                                  mode_meca,mode_flamb,mode_acou,base_modale,mode_stat,
18152                                                  mult_elas,fourier_elas,dyna_harmo,acou_harmo)),
18153            b_sensibilite   =BLOC(condition="RESULTAT != None",
18154                                  fr="Définition des paramètres de sensibilité",
18155                                  ang="Definition of sensitivity parameters",
18156              SENSIBILITE     =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**',
18157                                    fr="Liste des paramètres de sensibilité.",
18158                                    ang="List of sensitivity parameters"),),
18159
18160            b_extrac        =BLOC(condition = "RESULTAT != None",fr="extraction des résultats",
18161              regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','NUME_MODE','LIST_MODE',         
18162                             'INST','LIST_INST','FREQ','LIST_FREQ','NOEUD_CMP','NOM_CAS'), ),           
18163              NOM_CHAM        =SIMP(statut='o',typ='TXM' ),  
18164              TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
18165              NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),  
18166              LIST_ORDRE      =SIMP(statut='f',typ=listis),
18167              NUME_MODE       =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),  
18168              LIST_MODE       =SIMP(statut='f',typ=listis),
18169              NOEUD_CMP       =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'),
18170              NOM_CAS         =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'),  
18171              FREQ            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),  
18172              LIST_FREQ       =SIMP(statut='f',typ=listr8),
18173              INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),  
18174              LIST_INST       =SIMP(statut='f',typ=listr8),
18175              PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-6),  
18176              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")),
18177            ),
18178            TOUT_CMP        =SIMP(statut='f',typ='TXM',into=("OUI",)),
18179            NOM_CMP         =SIMP(statut='f',typ='TXM',max='**'),  
18180            INVARIANT       =SIMP(statut='f',typ='TXM',into=("OUI",)),
18181            ELEM_PRINCIPAUX =SIMP(statut='f',typ='TXM',into=("OUI",) ),
18182            RESULTANTE      =SIMP(statut='f',typ='TXM',max='**'),  
18183            MOMENT          =SIMP(statut='f',typ='TXM',max='**'),  
18184            POINT           =SIMP(statut='f',typ='R',max='**'),  
18185
18186            REPERE          =SIMP(statut='f',typ='TXM',defaut="GLOBAL",
18187                                  into=("GLOBAL","LOCAL","POLAIRE","UTILISATEUR","CYLINDRIQUE"),),
18188            ANGL_NAUT       =SIMP(statut='f',typ='R',min=3,max=3),  
18189            ORIGINE         =SIMP(statut='f',typ='R',min=3,max=3),  
18190            AXE_Z           =SIMP(statut='f',typ='R',min=3,max=3),  
18191
18192            TRAC_NOR        =SIMP(statut='f',typ='TXM',into=("OUI",)),
18193            TRAC_DIR        =SIMP(statut='f',typ='TXM',into=("OUI",)),
18194            DIRECTION       =SIMP(statut='f',typ='R',max='**'),  
18195  
18196            VECT_Y          =SIMP(statut='f',typ='R',max='**'),  
18197            MOYE_NOEUD      =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")),
18198            OPERATION       =SIMP(statut='o',typ='TXM',into=("EXTRACTION","MOYENNE"),validators=NoRepeat(),max=2),
18199          ),
18200          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
18201          TITRE           =SIMP(statut='f',typ='TXM',max='**'),  
18202 )  ;
18203
18204 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
18205 #            CONFIGURATION MANAGEMENT OF EDF VERSION
18206 # ======================================================================
18207 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
18208 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
18209 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
18210 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
18211 # (AT YOUR OPTION) ANY LATER VERSION.                                 
18212 #
18213 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
18214 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
18215 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
18216 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
18217 #
18218 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
18219 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
18220 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
18221 # ======================================================================
18222 POST_SIMPLIFIE=OPER(nom="POST_SIMPLIFIE",op=185,sd_prod=tabl_post_simpli,
18223                     fr=" ",docu="U4.PS.10-a",reentrant='n',
18224             UIinfo={"groupes":("Outils métier",)},
18225          MATER           =SIMP(statut='o',typ=(mater) ),
18226          DEF_EQUI        =FACT(statut='f',
18227            METHODE         =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',defaut="UTO_2_3",
18228                                  into=("UTO_2_3",) ),
18229            EPAIS           =SIMP(statut='o',typ='R'),  
18230            LONG_FISS       =SIMP(statut='o',typ='R'),  
18231            LONG_LIGA_INT   =SIMP(statut='o',typ='R'),  
18232            DEXT            =SIMP(statut='o',typ='R'),  
18233            TEMP_ANALYSE    =SIMP(statut='f',typ='R'),  
18234          ),
18235 )  ;
18236
18237 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
18238 #            CONFIGURATION MANAGEMENT OF EDF VERSION
18239 # ======================================================================
18240 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
18241 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
18242 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
18243 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
18244 # (AT YOUR OPTION) ANY LATER VERSION.                                 
18245 #
18246 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
18247 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
18248 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
18249 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
18250 #
18251 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
18252 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
18253 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
18254 # ======================================================================
18255 POST_USURE=OPER(nom="POST_USURE",op=153,sd_prod=tabl_post_usur,docu="U4.84.05-d",reentrant='f',
18256             UIinfo={"groupes":("Post traitements",)},
18257                 fr="Calcul des volumes d'usure et des profondeurs d'usure",
18258          regles=(UN_PARMI('TUBE_NEUF','RESU_GENE','PUIS_USURE'),
18259                  PRESENT_PRESENT('RESU_GENE','NOEUD','LOI_USURE'),
18260                  PRESENT_PRESENT('PUIS_USURE','LOI_USURE'),),
18261          TUBE_NEUF       =SIMP(statut='f',typ='TXM',into=("OUI",) ),
18262          ETAT_INIT       =FACT(statut='f',
18263            TABL_USURE      =SIMP(statut='f',typ=tabl_post_usur),
18264            INST_INIT       =SIMP(statut='f',typ='R'),  
18265                          ),
18266          RESU_GENE       =SIMP(statut='f',typ=tran_gene),
18267          NOEUD           =SIMP(statut='f',typ=no,),
18268          INST_INIT       =SIMP(statut='f',typ='R',defaut=-1.0E+0),  
18269          INST_FIN        =SIMP(statut='f',typ='R'),  
18270          NB_BLOC         =SIMP(statut='f',typ='I',defaut= 1 ),  
18271          PUIS_USURE      =SIMP(statut='f',typ='R'),  
18272          LOI_USURE       =SIMP(statut='f',typ='TXM',into=("ARCHARD","KWU_EPRI","EDF_MZ")),
18273          b_archard       =BLOC(condition = "LOI_USURE == 'ARCHARD'",
18274            regles=(UN_PARMI('MOBILE','MATER_USURE','SECTEUR'), 
18275                    EXCLUS('MATER_USURE','OBSTACLE'),
18276                    EXCLUS('MOBILE','USURE_OBST'),),
18277            MOBILE          =FACT(statut='f',
18278              COEF_USURE      =SIMP(statut='o',typ='R'), 
18279            ),   
18280            OBSTACLE        =FACT(statut='f',
18281              COEF_USURE      =SIMP(statut='o',typ='R'), 
18282            ),
18283            SECTEUR         =FACT(statut='f',max='**',
18284              CONTACT         =SIMP(statut='f',typ='TXM',into=("TUBE_BAV","TUBE_ALESAGE","TUBE_4_ENCO",  
18285                                                               "GRAPPE_ALESAGE","TUBE_3_ENCO","TUBE_TUBE", 
18286                                                               "GRAPPE_1_ENCO","GRAPPE_2_ENCO")),
18287              COEF_USUR_MOBILE=SIMP(statut='f',typ='R'),  
18288              COEF_USUR_OBST  =SIMP(statut='f',typ='R'),  
18289              ANGL_INIT       =SIMP(statut='f',typ='R'),  
18290              ANGL_FIN        =SIMP(statut='f',typ='R'),  
18291            ),
18292            MATER_USURE     =SIMP(statut='f',typ='TXM'),  
18293            USURE_OBST      =SIMP(statut='f',typ='TXM',into=("OUI",)),
18294          ),
18295          b_kwu_epri        =BLOC(condition = "LOI_USURE == 'KWU_EPRI'",
18296            regles=(UN_PARMI('MOBILE','MATER_USURE'), 
18297                    EXCLUS('MATER_USURE','OBSTACLE'),
18298                    EXCLUS('MOBILE','USURE_OBST'),),
18299            MOBILE          =FACT(statut='f',
18300              COEF_FNOR       =SIMP(statut='f',typ='R'),  
18301              COEF_VTAN       =SIMP(statut='f',typ='R'),  
18302              COEF_USURE      =SIMP(statut='f',typ='R'),  
18303              COEF_K          =SIMP(statut='f',typ='R',defaut=5.0E+0),  
18304              COEF_C          =SIMP(statut='f',typ='R',defaut=10.0E+0),  
18305            ),   
18306            OBSTACLE        =FACT(statut='f',
18307              COEF_FNOR       =SIMP(statut='f',typ='R' ),  
18308              COEF_VTAN       =SIMP(statut='f',typ='R' ),  
18309              COEF_USURE      =SIMP(statut='o',typ='R'), 
18310              COEF_K          =SIMP(statut='f',typ='R',defaut=5.0E+0),  
18311              COEF_C          =SIMP(statut='f',typ='R',defaut=10.0E+0),  
18312            ),   
18313            MATER_USURE     =SIMP(statut='f',typ='TXM'),  
18314            USURE_OBST      =SIMP(statut='f',typ='TXM',into=("OUI",)),
18315            FNOR_MAXI       =SIMP(statut='f',typ='R' ),  
18316            VTAN_MAXI       =SIMP(statut='f',typ='R' ),  
18317          ),
18318          b_edf_mz          =BLOC(condition = "LOI_USURE == 'EDF_MZ'",
18319            regles=(UN_PARMI('MOBILE','MATER_USURE'), 
18320                    EXCLUS('MATER_USURE','OBSTACLE'),
18321                    EXCLUS('MOBILE','USURE_OBST'),),
18322            MOBILE          =FACT(statut='f',
18323              COEF_USURE      =SIMP(statut='f',typ='R',defaut=1.0E-13),  
18324              COEF_B          =SIMP(statut='f',typ='R',defaut=1.2E+0),  
18325              COEF_N          =SIMP(statut='f',typ='R',defaut=2.44E-8),  
18326              COEF_S          =SIMP(statut='f',typ='R',defaut=1.14E-16),  
18327            ),   
18328            OBSTACLE        =FACT(statut='f',
18329              COEF_USURE      =SIMP(statut='o',typ='R',defaut=1.0E-13), 
18330              COEF_B          =SIMP(statut='f',typ='R',defaut=1.2E+0),  
18331              COEF_N          =SIMP(statut='f',typ='R',defaut=2.44E-8),  
18332              COEF_S          =SIMP(statut='f',typ='R',defaut=1.14E-16),  
18333            ),   
18334            MATER_USURE     =SIMP(statut='f',typ='TXM'),  
18335            USURE_OBST      =SIMP(statut='f',typ='TXM',into=("OUI",)),
18336          ),
18337          b_tube_neuf       =BLOC(condition = "TUBE_NEUF == 'OUI'",
18338             TABL_USURE      =SIMP(statut='o',typ=tabl_post_usur),
18339             INST            =SIMP(statut='f',typ='R'),
18340          ),
18341          CONTACT         =SIMP(statut='f',typ='TXM',into=("TUBE_BAV","TUBE_ALESAGE","TUBE_4_ENCO",    
18342                                                           "GRAPPE_ALESAGE","TUBE_3_ENCO","TUBE_TUBE",        
18343                                                           "GRAPPE_1_ENCO","GRAPPE_2_ENCO")),
18344          RAYON_MOBILE    =SIMP(statut='f',typ='R'),  
18345          RAYON_OBST      =SIMP(statut='f',typ='R'),  
18346          LARGEUR_OBST    =SIMP(statut='f',typ='R'),  
18347          ANGL_INCLI      =SIMP(statut='f',typ='R'),  
18348          ANGL_ISTHME     =SIMP(statut='f',typ='R'),  
18349          ANGL_IMPACT     =SIMP(statut='f',typ='R'),  
18350          INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),  
18351          LIST_INST       =SIMP(statut='f',typ=listr8),
18352          COEF_INST       =SIMP(statut='f',typ='R',defaut=1.0E+0),  
18353          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
18354          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),  
18355 )  ;
18356
18357 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
18358 #            CONFIGURATION MANAGEMENT OF EDF VERSION
18359 # ======================================================================
18360 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
18361 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
18362 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
18363 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
18364 # (AT YOUR OPTION) ANY LATER VERSION.                                 
18365 #
18366 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
18367 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
18368 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
18369 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
18370 #
18371 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
18372 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
18373 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
18374 # ======================================================================
18375 POST_ZAC=OPER(nom="POST_ZAC",op= 175,sd_prod=mult_elas,docu="U4.83.21-b",reentrant='n',
18376             UIinfo={"groupes":("Post traitements",)},
18377               fr="Donne l'état adapté ou accommodé d'une structure sous chargement cyclique élastique affine ou non",
18378          MODELE          =SIMP(statut='o',typ=modele),
18379          CHAM_MATER      =SIMP(statut='o',typ=cham_mater),
18380          EXCIT           =FACT(statut='o',max='**',
18381            CHARGE          =SIMP(statut='o',typ=char_meca),
18382            FONC_MULT       =SIMP(statut='f',typ=(fonction,formule)),
18383            TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FIXE_CSTE",into=("FIXE_CSTE",)),
18384          ),
18385          EVOL_ELAS       =SIMP(statut='o',typ=evol_elas),
18386          b_evol_elas     =BLOC(condition="EVOL_ELAS != None",
18387            regles=(UN_PARMI('NUME_ORDRE','LIST_INST','INST'),),
18388            NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),  
18389            LIST_INST       =SIMP(statut='f',typ=listr8),
18390            INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),  
18391          ),
18392          TEMP_ZAC        =SIMP(statut='f',typ='R',defaut=0.0E+0),  
18393          EVOL_NOLI       =SIMP(statut='f',typ=evol_noli),
18394          b_evol_noli     =BLOC(condition="EVOL_NOLI != None",
18395            INST_MAX        =SIMP(statut='o',typ='R'),  
18396          ),
18397          PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3),  
18398          CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")),
18399
18400 )  ;
18401
18402 #& MODIF COMMANDE  DATE 06/09/2003   AUTEUR D6BHHJP J.P.LEFEBVRE 
18403 #            CONFIGURATION MANAGEMENT OF EDF VERSION
18404 # ======================================================================
18405 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
18406 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
18407 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
18408 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
18409 # (AT YOUR OPTION) ANY LATER VERSION.                                 
18410 #
18411 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
18412 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
18413 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
18414 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
18415 #
18416 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
18417 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
18418 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
18419 # ======================================================================
18420 POURSUITE=MACRO(nom="POURSUITE",op=ops.build_poursuite,repetable='n',fr="Poursuite d une étude",
18421                 docu="U4.11.03-g",sd_prod = ops.POURSUITE,
18422             UIinfo={"groupes":("Gestion du travail",)},
18423                 op_init = ops.POURSUITE_context,fichier_ini = 1,
18424          HDF             =FACT(statut='f',min=1,max=1,
18425            FICHIER         =SIMP(fr="nom du fichier hdf associe",statut='o',typ='TXM'),
18426          ),
18427          PAR_LOT         =SIMP(fr="mode de traitement des commandes",statut='f',typ='TXM',
18428                            into=("OUI","NON"),defaut="OUI"),
18429          BASE            =FACT(fr="définition des parmètres associés aux bases JEVEUX",
18430                                statut='f',min=1,max=3,
18431            FICHIER         =SIMP(fr="nom de la base",statut='o',typ='TXM'),
18432            TITRE           =SIMP(statut='f',typ='TXM'),
18433            CAS             =SIMP(statut='f',typ='TXM'),
18434            NMAX_ENRE       =SIMP(fr="nombre maximum d enregistrements",statut='f',typ='I'),
18435            LONG_ENRE       =SIMP(fr="longueur des enregistrements",statut='f',typ='I'),
18436            LONG_REPE       =SIMP(fr="longueur du répertoire",statut='f',typ='I'),
18437          ),
18438          IMPRESSION      =FACT(statut='f',min=1,max=3,
18439            FICHIER         =SIMP(statut='o',typ='TXM'),
18440            UNITE           =SIMP(statut='o',typ='I'),
18441          ),
18442          CATALOGUE       =FACT(statut='f',min=1,max=10,
18443            FICHIER         =SIMP(statut='o',typ='TXM'),
18444            TITRE           =SIMP(statut='f',typ='TXM'),
18445            UNITE           =SIMP(statut='f',typ='I'),
18446          ),
18447          DEBUG           =FACT(fr="option de déboggage reservée aux développeurs",
18448                                statut='f',min=1,max=1,
18449            JXVERI          =SIMP(fr="vérifie l intégrité de la segmentation mémoire",
18450                                  statut='f',typ='TXM',into=('OUI','NON'),defaut='NON'),
18451            JEVEUX          =SIMP(fr="force les déchargement sur disque",
18452                                  statut='f',typ='TXM',into=('OUI','NON'),defaut='NON'),
18453            ENVIMA          =SIMP(fr="imprime les valeurs définies dans ENVIMA",
18454                                  statut='f',typ='TXM',into=('TES',)),
18455          ),
18456          MEMOIRE         =FACT(fr="mode de gestion mémoire utilisé",statut='f',min=1,max=1,
18457            GESTION         =SIMP(statut='f',typ='TXM',into=('COMPACTE','RAPIDE'),defaut='RAPIDE'),
18458            TYPE_ALLOCATION =SIMP(statut='f',typ='I',into=(1,2,3,4),defaut=1),
18459            TAILLE          =SIMP(statut='f',typ='I'),
18460            TAILLE_BLOC     =SIMP(statut='f',typ='R',defaut=800.),
18461            PARTITION       =SIMP(statut='f',typ='R' ),
18462          ),
18463          CODE            =FACT("définition d un nom pour l'esemble d'une étude",
18464                                statut='f',min=1,max=1,
18465            NOM             =SIMP(statut='o',typ='TXM'),
18466            UNITE           =SIMP(statut='f',typ='I',defaut=15),
18467          ),
18468 )  ;
18469
18470 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
18471 #            CONFIGURATION MANAGEMENT OF EDF VERSION
18472 # ======================================================================
18473 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
18474 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
18475 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
18476 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
18477 # (AT YOUR OPTION) ANY LATER VERSION.                                 
18478 #
18479 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
18480 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
18481 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
18482 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
18483 #
18484 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
18485 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
18486 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
18487 # ======================================================================
18488 PRE_CHAR_IDEAS=PROC(nom="PRE_CHAR_IDEAS",op=100,docu="U7.01.02-e",
18489                     fr="Conversion de conditions aux limites et chargements IDEAS en commandes Aster",
18490          UNITE_IDEAS     =SIMP(statut='f',typ='I',defaut=19),  
18491          UNITE_ASTER     =SIMP(statut='f',typ='I',defaut=21),  
18492          MODELE          =SIMP(statut='o',typ=modele),
18493 )  ;
18494
18495 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
18496 #            CONFIGURATION MANAGEMENT OF EDF VERSION
18497 # ======================================================================
18498 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
18499 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
18500 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
18501 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
18502 # (AT YOUR OPTION) ANY LATER VERSION.                                 
18503 #
18504 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
18505 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
18506 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
18507 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
18508 #
18509 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
18510 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
18511 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
18512 # ======================================================================
18513 PRE_GIBI=PROC(nom="PRE_GIBI",op=49,docu="U7.01.11-g",
18514             UIinfo={"groupes":("Gestion du travail",)},
18515               fr="Conversion d un fichier de maillage GIBI",
18516          UNITE_GIBI      =SIMP(statut='f',typ='I',defaut=19),  
18517          UNITE_MAILLAGE  =SIMP(statut='f',typ='I',defaut=20),  
18518 )  ;
18519
18520 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
18521 #            CONFIGURATION MANAGEMENT OF EDF VERSION
18522 # ======================================================================
18523 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
18524 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
18525 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
18526 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
18527 # (AT YOUR OPTION) ANY LATER VERSION.                                 
18528 #
18529 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
18530 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
18531 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
18532 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
18533 #
18534 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
18535 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
18536 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
18537 # ======================================================================
18538
18539 PRE_GMSH=PROC(nom="PRE_GMSH",op=47,docu="U7.01.01-g",
18540             UIinfo={"groupes":("Gestion du travail",)},
18541                fr="Conversion d un fichier universel GMSH au format Aster",
18542          UNITE_GMSH      =SIMP(statut='f',typ='I',defaut=19),  
18543          UNITE_MAILLAGE  =SIMP(statut='f',typ='I',defaut=20),  
18544 )  ;
18545
18546 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
18547 #            CONFIGURATION MANAGEMENT OF EDF VERSION
18548 # ======================================================================
18549 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
18550 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
18551 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
18552 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
18553 # (AT YOUR OPTION) ANY LATER VERSION.                                 
18554 #
18555 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
18556 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
18557 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
18558 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
18559 #
18560 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
18561 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
18562 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
18563 # ======================================================================
18564 PRE_IDEAS=PROC(nom="PRE_IDEAS",op=47,docu="U7.01.01-g",
18565             UIinfo={"groupes":("Gestion du travail",)},
18566                fr="Conversion d un fichier universel IDEAS-SUPERTAB au format Aster",
18567          UNITE_IDEAS     =SIMP(statut='f',typ='I',defaut=19),  
18568          UNITE_MAILLAGE  =SIMP(statut='f',typ='I',defaut=20),  
18569          CREA_GROUP_COUL =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
18570 )  ;
18571
18572 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
18573 #            CONFIGURATION MANAGEMENT OF EDF VERSION
18574 # ======================================================================
18575 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
18576 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
18577 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
18578 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
18579 # (AT YOUR OPTION) ANY LATER VERSION.                                 
18580 #
18581 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
18582 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
18583 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
18584 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
18585 #
18586 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
18587 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
18588 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
18589 # ======================================================================
18590 PROCEDURE=MACRO(nom="PROCEDURE",op=ops.build_procedure, docu="U4.13.03-f",
18591             UIinfo={"groupes":("Gestion du travail",)},
18592           fr="Nommer le fichier de commandes secondaires",
18593           NOM  =SIMP(statut='f',typ='TXM',defaut=" "),
18594 ) ;
18595
18596 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
18597 #            CONFIGURATION MANAGEMENT OF EDF VERSION
18598 # ======================================================================
18599 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
18600 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
18601 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
18602 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
18603 # (AT YOUR OPTION) ANY LATER VERSION.                                 
18604 #
18605 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
18606 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
18607 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
18608 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
18609 #
18610 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
18611 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
18612 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
18613 # ======================================================================
18614 def prod_matr_cham_prod(MATR_ASSE,**args):
18615   if AsType(MATR_ASSE) == matr_asse_depl_r : return cham_no_depl_r
18616   if AsType(MATR_ASSE) == matr_asse_depl_c : return cham_no_depl_c
18617   if AsType(MATR_ASSE) == matr_asse_temp_r : return cham_no_temp_r
18618   if AsType(MATR_ASSE) == matr_asse_pres_c : return cham_no_pres_c
18619   raise AsException("type de concept resultat non prevu")
18620
18621 PROD_MATR_CHAM=OPER(nom="PROD_MATR_CHAM",op= 156,sd_prod=prod_matr_cham_prod,
18622                     fr="Effectuer le produit d une matrice par un vecteur",
18623                     docu="U4.72.06-c",reentrant='n',
18624             UIinfo={"groupes":("Résultats et champs",)},
18625          MATR_ASSE       =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_temp_r,matr_asse_pres_c ) ),
18626          CHAM_NO         =SIMP(statut='o',typ=(cham_no_depl_r,cham_no_depl_c,cham_no_temp_r,cham_no_pres_c ) ),
18627          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
18628 )  ;
18629
18630 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
18631 #            CONFIGURATION MANAGEMENT OF EDF VERSION
18632 # ======================================================================
18633 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
18634 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
18635 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
18636 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
18637 # (AT YOUR OPTION) ANY LATER VERSION.                                 
18638 #
18639 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
18640 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
18641 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
18642 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
18643 #
18644 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
18645 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
18646 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
18647 # ======================================================================
18648 # RESPONSABLE VABHHTS J.PELLET
18649 def proj_champ_prod(RESULTAT=None,CHAM_NO_REFE=None,**args ):
18650     if AsType(RESULTAT)     == evol_ther      : return evol_ther
18651     if AsType(RESULTAT)     == evol_elas      : return evol_elas
18652     if AsType(RESULTAT)     == evol_noli      : return evol_noli
18653     if AsType(RESULTAT)     == evol_char      : return evol_char
18654     if AsType(CHAM_NO_REFE) == cham_no_depl_r : return cham_no_depl_r
18655     if AsType(CHAM_NO_REFE) == cham_no_depl_c : return cham_no_depl_c
18656     if AsType(CHAM_NO_REFE) == cham_no_pres_c : return cham_no_pres_c
18657     if AsType(CHAM_NO_REFE) == cham_no_temp_r : return cham_no_temp_r
18658     if AsType(CHAM_NO_REFE) == cham_no_epsi_r : return cham_no_epsi_r
18659     if AsType(CHAM_NO_REFE) == cham_no_sief_r : return cham_no_sief_r
18660     if AsType(CHAM_NO_REFE) == cham_no_flux_r : return cham_no_flux_r
18661     raise AsException("type de concept resultat non prevu")
18662
18663 PROJ_CHAMP=OPER(nom="PROJ_CHAMP",op= 166,sd_prod=proj_champ_prod,docu="U4.72.05-d",reentrant='f',
18664             UIinfo={"groupes":("Résultats et champs",)},
18665                 fr="Projection d'un champ aux noeuds sur les noeuds d'un autre maillage",
18666 #
18667          METHODE         =SIMP(statut='f',typ='TXM',defaut="NUAGE_DEG_1",
18668                                into=("NUAGE_DEG_0","NUAGE_DEG_1","ELEM",) ),
18669          b_nuage         =BLOC(condition="(METHODE=='NUAGE_DEG_1') or (METHODE=='NUAGE_DEG_0')",
18670                                fr="Lissage d'un nuage de points",
18671            CHAM_NO         =SIMP(statut='o',typ=(cham_no_depl_r,cham_no_depl_c,cham_no_pres_c,cham_no_temp_r,
18672                                                  cham_no_epsi_r,cham_no_sief_r,cham_no_flux_r)),
18673            CHAM_NO_REFE    =SIMP(statut='o',typ=(cham_no_depl_r,cham_no_depl_c,cham_no_pres_c,cham_no_temp_r,
18674                                                  cham_no_epsi_r,cham_no_sief_r,cham_no_flux_r)),
18675          ),
18676          b_elem          =BLOC(condition="METHODE=='ELEM'",
18677                               fr="Utilisation des fonctions de forme du maillage initial",
18678            regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','LIST_INST','LIST_FREQ','LIST_ORDRE'),
18679                    EXCLUS('TOUT_CHAM','NOM_CHAM',), ),
18680            RESULTAT        =SIMP(statut='o',typ=(evol_ther,evol_elas,evol_noli,evol_char) ),
18681            SENSIBILITE     =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**',
18682                                fr="Liste des paramètres de sensibilité.",
18683                                ang="List of sensitivity parameters",),
18684            MODELE_1        =SIMP(statut='o',typ=modele),
18685            MODELE_2        =SIMP(statut='o',typ=modele),
18686
18687            TOUT_CHAM       =SIMP(statut='f',typ='TXM',into=("OUI",) ),
18688            NOM_CHAM        =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'),
18689
18690            TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
18691            NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ),
18692            LIST_ORDRE      =SIMP(statut='f',typ=listis),
18693            INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ),
18694            LIST_INST       =SIMP(statut='f',typ=listr8),
18695            FREQ            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ),
18696            LIST_FREQ       =SIMP(statut='f',typ=listr8),
18697          ),
18698
18699          VIS_A_VIS       =FACT(statut='f',max='**',
18700            regles=(AU_MOINS_UN('TOUT_1','GROUP_MA_1','MAILLE_1','GROUP_NO_1','NOEUD_1'),
18701                    AU_MOINS_UN('TOUT_2','GROUP_MA_2','MAILLE_2','GROUP_NO_2','NOEUD_2'),),
18702            TOUT_1          =SIMP(statut='f',typ='TXM',into=("OUI",) ),
18703            GROUP_MA_1      =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
18704            MAILLE_1        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
18705            GROUP_NO_1      =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
18706            NOEUD_1         =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
18707            TOUT_2          =SIMP(statut='f',typ='TXM',into=("OUI",) ),
18708            GROUP_MA_2      =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
18709            MAILLE_2        =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
18710            GROUP_NO_2      =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
18711            NOEUD_2         =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
18712          ),
18713
18714          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),
18715 )  ;
18716
18717 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
18718 #            CONFIGURATION MANAGEMENT OF EDF VERSION
18719 # ======================================================================
18720 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
18721 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
18722 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
18723 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
18724 # (AT YOUR OPTION) ANY LATER VERSION.                                 
18725 #
18726 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
18727 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
18728 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
18729 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
18730 #
18731 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
18732 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
18733 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
18734 # ======================================================================
18735 def matr_asse_gene_prod(MATR_ASSE,MATR_ASSE_GENE,**args):
18736   if AsType(MATR_ASSE) == matr_asse_depl_r  : return matr_asse_gene_r
18737   if AsType(MATR_ASSE_GENE) == matr_asse_gene_r  : return matr_asse_gene_r
18738   if AsType(MATR_ASSE) == matr_asse_depl_c  : return matr_asse_gene_c
18739   if AsType(MATR_ASSE_GENE) == matr_asse_gene_c  : return matr_asse_gene_c
18740   raise AsException("type de concept resultat non prevu")
18741
18742 PROJ_MATR_BASE=OPER(nom="PROJ_MATR_BASE",op=  71,sd_prod=matr_asse_gene_prod,
18743                     fr="Projection d une matrice assemblée sur une base (modale ou de RITZ)",
18744                     docu="U4.63.12-f",reentrant='n',
18745             UIinfo={"groupes":("Matrices/vecteurs",)},
18746          regles=(UN_PARMI('MATR_ASSE','MATR_ASSE_GENE'),),            
18747          BASE            =SIMP(statut='o',typ=(mode_meca,base_modale,mode_gene,mode_stat ) ),
18748          NUME_DDL_GENE   =SIMP(statut='o',typ=nume_ddl_gene ),
18749          MATR_ASSE       =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_depl_c) ),
18750          MATR_ASSE_GENE  =SIMP(statut='f',typ=(matr_asse_gene_r,matr_asse_gene_c) ),
18751 )  ;
18752
18753
18754 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
18755 #            CONFIGURATION MANAGEMENT OF EDF VERSION
18756 # ======================================================================
18757 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
18758 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
18759 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
18760 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
18761 # (AT YOUR OPTION) ANY LATER VERSION.                                 
18762 #
18763 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
18764 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
18765 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
18766 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
18767 #
18768 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
18769 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
18770 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
18771 # ======================================================================
18772 def proj_mesu_modal_prod(MODELE_MESURE,**args):
18773      vale=MODELE_MESURE['NOM_PARA']
18774      if  vale == 'INST'   : return tran_gene
18775      if  vale == 'FREQ'   : return harm_gene
18776      if  vale == 'DEFORMEE'   : return mode_gene
18777      raise AsException("type de concept resultat non prevu")
18778
18779 PROJ_MESU_MODAL=OPER(nom="PROJ_MESU_MODAL",op= 193,
18780                      sd_prod=proj_mesu_modal_prod,
18781                      docu="U4.73.01-b",reentrant='n',
18782             UIinfo={"groupes":("Résultats et champs",)},
18783                      fr="Calcul de coordonnees generalisees de mesure experimentale relatives a une base de projection",
18784
18785          MODELE_CALCUL   =FACT(statut='o',
18786            MODELE          =SIMP(statut='o',typ=(modele) ),
18787            BASE            =SIMP(statut='o',typ=(mode_meca,base_modale,) ),
18788                          ),
18789          MODELE_MESURE   =FACT(statut='o',
18790            MODELE          =SIMP(statut='o',typ=(modele) ),
18791            MESURE          =SIMP(statut='o',typ=(dyna_trans,dyna_harmo,base_modale,) ),
18792            NOM_PARA        =SIMP(statut='f',typ='TXM',defaut="INST",into=("INST","FREQ","DEFORMEE",),),
18793            NOM_CHAM        =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL","VITE","ACCE","SIEF_NOEU","EPSI_NOEU_DEPL",) ),
18794                          ),
18795          CORR_MANU       =FACT(statut='f',max='**',
18796            regles=(PRESENT_PRESENT('NOEU_CALCUL','NOEU_MESURE'),),
18797            NOEU_CALCUL     =SIMP(statut='f',typ=no),
18798            NOEU_MESURE     =SIMP(statut='f',typ=no),
18799                          ),
18800          RESOLUTION      =FACT(statut='f',
18801            METHODE         =SIMP(statut='f',typ='TXM',defaut="LU",into=("LU","SVD",) ),
18802            b_svd =BLOC(condition="METHODE=='SVD'",
18803                        EPS=SIMP(statut='f',typ='R',defaut=0. ),
18804                       ),
18805            REGUL           =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","NORM_MIN","TIK_RELA",) ),
18806            b_regul =BLOC(condition="REGUL!='NON'",
18807                          regles=(PRESENT_ABSENT('COEF_PONDER','COEF_PONDER_F', ),),
18808                          COEF_PONDER   =SIMP(statut='f',typ='R',defaut=0.     ,max='**' ),  
18809                          COEF_PONDER_F =SIMP(statut='f',typ=(fonction,formule),max='**' ),
18810                         ),
18811              ),
18812
18813           ); 
18814
18815 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
18816 #            CONFIGURATION MANAGEMENT OF EDF VERSION
18817 # ======================================================================
18818 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
18819 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
18820 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
18821 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
18822 # (AT YOUR OPTION) ANY LATER VERSION.                                 
18823 #
18824 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
18825 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
18826 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
18827 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
18828 #
18829 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
18830 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
18831 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
18832 # ======================================================================
18833 PROJ_SPEC_BASE=OPER(nom="PROJ_SPEC_BASE",op= 146,sd_prod=tabl_intsp,docu="U4.63.14-d",reentrant='n',
18834             UIinfo={"groupes":("Matrices/vecteurs",)},
18835                     fr="Projection d un ou plusieurs spectres de turbulenc sur un ensemble de bases modales ",
18836       regles=(UN_PARMI('BASE_ELAS_FLUI','MODE_MECA','CHAM_NO'),
18837               ENSEMBLE('FREQ_INIT','FREQ_FIN','NB_POIN'),),
18838          SPEC_TURB       =SIMP(statut='o',typ=spectre,validators=NoRepeat(),max='**' ),
18839          BASE_ELAS_FLUI  =SIMP(statut='f',typ=melasflu ),
18840          MODE_MECA       =SIMP(statut='f',typ=mode_meca ),
18841          CHAM_NO         =SIMP(statut='f',typ=cham_no_depl_r ),
18842          FREQ_INIT       =SIMP(statut='f',typ='R',val_min=0.E+0 ),  
18843          FREQ_FIN        =SIMP(statut='f',typ='R',val_min=0.E+0 ),  
18844          NB_POIN         =SIMP(statut='f',typ='I' ),  
18845          OPTION          =SIMP(statut='f',typ='TXM',defaut="TOUT",into=("TOUT","DIAG")),
18846          GROUP_MA        =SIMP(statut='f',typ=grma),
18847 #  Quel est le type attendu derriere  MODELE_INTERFACE         
18848          MODELE_INTERFACE=SIMP(statut='f',typ=modele),
18849          VECT_X          =SIMP(statut='f',typ='R',min=3,max=3 ),  
18850          VECT_Y          =SIMP(statut='f',typ='R',min=3,max=3 ),  
18851          ORIG_AXE        =SIMP(statut='f',typ='R',min=3,max=3 ),  
18852          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),  
18853 )  ;
18854
18855 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
18856 #            CONFIGURATION MANAGEMENT OF EDF VERSION
18857 # ======================================================================
18858 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
18859 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
18860 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
18861 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
18862 # (AT YOUR OPTION) ANY LATER VERSION.                                 
18863 #
18864 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
18865 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
18866 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
18867 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
18868 #
18869 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
18870 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
18871 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
18872 # ======================================================================
18873 PROJ_VECT_BASE=OPER(nom="PROJ_VECT_BASE",op=  72,sd_prod=vect_asse_gene,
18874                     fr="Projection d un vecteur assemblé sur une base (modale ou de RITZ)",
18875                     docu="U4.63.13-f",reentrant='n',
18876             UIinfo={"groupes":("Matrices/vecteurs",)},
18877          regles=(UN_PARMI('VECT_ASSE','VECT_ASSE_GENE'),),              
18878          BASE            =SIMP(statut='o',typ=(mode_meca,base_modale,mode_gene,mode_stat ) ),
18879          NUME_DDL_GENE   =SIMP(statut='o',typ=nume_ddl_gene ),
18880          TYPE_VECT       =SIMP(statut='f',typ='TXM',defaut="FORC"),
18881          VECT_ASSE       =SIMP(statut='f',typ=cham_no_depl_r ),
18882          VECT_ASSE_GENE  =SIMP(statut='f',typ=vect_asse_gene ),
18883 )  ;
18884
18885 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
18886 #            CONFIGURATION MANAGEMENT OF EDF VERSION
18887 # ======================================================================
18888 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
18889 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
18890 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
18891 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
18892 # (AT YOUR OPTION) ANY LATER VERSION.                                 
18893 #
18894 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
18895 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
18896 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
18897 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
18898 #
18899 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
18900 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
18901 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
18902 # ======================================================================
18903 RECA_WEIBULL=OPER(nom="RECA_WEIBULL",op= 197,sd_prod=tabl_reca_weib,
18904                      fr=" ",docu="U4.82.06-b",reentrant='n',
18905             UIinfo={"groupes":("Post traitements",)},
18906          LIST_PARA       =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=2,into=("SIGM_REFE","M",) ),
18907          RESU            =FACT(statut='o',max='**',
18908            regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST',),
18909                    AU_MOINS_UN('TOUT','GROUP_MA','MAILLE', ),),
18910            EVOL_NOLI       =SIMP(statut='o',typ=(evol_noli) ),
18911            MODELE          =SIMP(statut='o',typ=(modele) ),
18912            CHAM_MATER      =SIMP(statut='o',typ=(cham_mater) ),
18913            TEMPE           =SIMP(statut='f',typ='R' ),
18914            LIST_INST_RUPT  =SIMP(statut='o',typ='R',validators=NoRepeat(),max='**' ),
18915            TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
18916            NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ),
18917            INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ),
18918            LIST_INST       =SIMP(statut='f',typ=(listr8) ),
18919            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
18920            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
18921            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
18922            COEF_MULT       =SIMP(statut='f',typ='R',defaut= 1.E0 ),
18923                          ),
18924          OPTION          =SIMP(statut='f',typ='TXM',defaut="SIGM_ELGA",into=("SIGM_ELGA","SIGM_ELMOY",) ),
18925          CORR_PLAST      =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ),
18926          METHODE         =SIMP(statut='f',typ='TXM',defaut="MAXI_VRAI",into=("MAXI_VRAI","REGR_LINE",) ),
18927          INCO_GLOB_RELA  =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),
18928          ITER_GLOB_MAXI  =SIMP(statut='f',typ='I',defaut= 10 ),
18929          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ,) ),
18930                        )  ;
18931
18932 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
18933 #            CONFIGURATION MANAGEMENT OF EDF VERSION
18934 # ======================================================================
18935 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
18936 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
18937 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
18938 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR
18939 # (AT YOUR OPTION) ANY LATER VERSION.
18940 #
18941 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT
18942 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF
18943 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU
18944 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.
18945 #
18946 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE
18947 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,
18948 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.
18949 # ======================================================================
18950 # RESPONSABLE MCOURTOI M.COURTOIS
18951 def recu_fonction_prod(RESULTAT=None,TABLE=None,OBSTACLE=None,
18952                        RESU_GENE=None,BASE_ELAS_FLUI=None,CHAM_GD=None,
18953                        TYPE_RESU=None,**args):
18954   if AsType(RESULTAT) == dyna_harmo : return fonction_c
18955 #  On ne sait pas interpreter les deux conditions suivantes
18956   if TABLE != None :
18957      if TYPE_RESU != None :
18958         if TYPE_RESU == "FONCTION_C" : return fonction_c
18959         if TYPE_RESU == "FONCTION"   : return fonction
18960      else:
18961         return fonction
18962   if RESU_GENE      != None         : return fonction
18963   if BASE_ELAS_FLUI != None         : return fonction
18964   if RESULTAT       != None         : return fonction
18965   if CHAM_GD        != None         : return fonction
18966   if OBSTACLE       != None         : return fonction
18967   raise AsException("type de concept resultat non prevu")
18968
18969 RECU_FONCTION=OPER(nom="RECU_FONCTION",op=  90,sd_prod=recu_fonction_prod,
18970                    fr="Extraire sous forme d une fonction, l évolution temporelle d une composante d un champ ou d une table",
18971                    docu="U4.32.03-f",reentrant='n',
18972             UIinfo={"groupes":("Fonction",)},
18973          regles=(UN_PARMI('CHAM_GD','RESULTAT','RESU_GENE','TABLE','BASE_ELAS_FLUI','OBSTACLE'),),
18974
18975          CHAM_GD         =SIMP(statut='f',typ=(cham_no_depl_r,cham_no_temp_r,cham_no_pres_r,cham_elem_sief_r,
18976                                                cham_elem_vari_r,cham_elem_epsi_r,cham_elem_flux_r,
18977                                                cham_elem_pres_r,) ),
18978          RESULTAT        =SIMP(statut='f',typ=(evol_elas,dyna_trans,evol_noli,evol_ther,dyna_harmo ) ),
18979          RESU_GENE       =SIMP(statut='f',typ=tran_gene),
18980 #  concept table à créer
18981          TABLE           =SIMP(statut='f',typ=table),
18982          BASE_ELAS_FLUI  =SIMP(statut='f',typ=melasflu),
18983          REPERE          =SIMP(statut='f',typ='TXM',into=("POLAIRE","GLOBAL") ),
18984          OBSTACLE        =SIMP(statut='f',typ=obstacle),
18985
18986          b_tran_gene = BLOC ( condition = "RESU_GENE != None",
18987                               fr="Récupération de la fonction concernant les chocs à partir d un concept TRAN_GENE",
18988             regles=(PRESENT_PRESENT('SOUS_STRUC','INTITULE'),
18989                     EXCLUS('MULT_APPUI','CORR_STAT'),),
18990              MULT_APPUI      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
18991              CORR_STAT       =SIMP(statut='f',typ='TXM',into=("OUI",) ),
18992              ACCE_MONO_APPUI =SIMP(statut='f',typ=(fonction,formule)),
18993              PARA_X          =SIMP(statut='f',typ='TXM' ),
18994              PARA_Y          =SIMP(statut='f',typ='TXM' ),
18995              SOUS_STRUC      =SIMP(statut='f',typ='TXM' ),
18996              LIST_PARA       =SIMP(statut='f',typ=listr8 ),
18997              INTITULE        =SIMP(statut='f',typ='TXM' ),
18998          ),
18999          b_base_elas_flui = BLOC ( condition = "BASE_ELAS_FLUI != None",
19000                                    fr="Récupération de la fonction à partir d un concept melasflu",
19001            regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE'),),
19002            TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
19003            NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
19004            NUME_MODE       =SIMP(statut='o',typ='I' ),
19005            PARA_X          =SIMP(statut='o',typ='TXM',into=("VITE_FLU",) ),
19006            PARA_Y          =SIMP(statut='o',typ='TXM',into=("FREQ","AMOR") ),
19007          ),
19008          b_table = BLOC ( condition = "TABLE != None",fr="Récupération de la fonction à partir d un concept table",
19009            regles=(UN_PARMI('PARA_X','NOM_PARA_TABL'),
19010                    PRESENT_PRESENT('PARA_X','PARA_Y'),),
19011            PARA_X          =SIMP(statut='f',typ='TXM',
19012                                  fr="1ère colonne de la table qui définit la fonction à récupérer", ),
19013            PARA_Y          =SIMP(statut='f',typ='TXM',
19014                                  fr="2ème colonne de la table qui définit la fonction à récupérer", ),
19015            NOM_PARA_TABL   =SIMP(statut='f',typ='TXM',into=("FONCTION",),
19016                                  fr="Nom du paramètre de la table à qui est associé la fonction" ),
19017            b_nom_para_tabl = BLOC (condition = "NOM_PARA_TABL != None",
19018              TYPE_RESU       =SIMP(statut='f',typ='TXM',defaut="FONCTION",into=("FONCTION","FONCTION_C") ),
19019            ),
19020
19021            FILTRE          =FACT(statut='f',max='**',
19022               NOM_PARA        =SIMP(statut='o',typ='TXM' ),
19023               CRIT_COMP       =SIMP(statut='f',typ='TXM',defaut="EQ",
19024                                     into=("EQ","LT","GT","NE","LE","GE","VIDE",
19025                                           "NON_VIDE","MAXI","ABS_MAXI","MINI","ABS_MINI") ),
19026               b_vale          =BLOC(condition = "(CRIT_COMP in ('EQ','NE','GT','LT','GE','LE'))",
19027                  regles=(UN_PARMI('VALE','VALE_I','VALE_K','VALE_C',),),
19028                  VALE            =SIMP(statut='f',typ='R' ),
19029                  VALE_I          =SIMP(statut='f',typ='I' ),
19030                  VALE_C          =SIMP(statut='f',typ='C' ),
19031                  VALE_K          =SIMP(statut='f',typ='TXM' ),),
19032
19033               CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
19034               PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
19035            ),
19036          ),
19037 # RESULTAT
19038          b_resu = BLOC ( condition = "RESULTAT != None", fr="Opérandes en cas de RESULTAT",
19039            regles=(
19040 #    A voir par Mathieu Courtois : il existe de tests (SDNX300B) qui ne satisfont pas ce UN_PARMI
19041 #           UN_PARMI('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','TOUT_INST','LIST_INST','FREQ','LIST_FREQ'),
19042                    AU_MOINS_UN('MAILLE','GROUP_MA','GROUP_NO','NOEUD','NOEUD_CHOC','GROUP_NO_CHOC','NOM_PARA_RESU'),
19043                    PRESENT_PRESENT('MAILLE','NOM_CMP'),
19044                    PRESENT_PRESENT('GROUP_MA','NOM_CMP'),
19045                    PRESENT_PRESENT('NOEUD','NOM_CMP'),
19046                    PRESENT_PRESENT('GROUP_NO','NOM_CMP'),
19047                    PRESENT_PRESENT('POINT','NOM_CMP'),
19048                    EXCLUS('POINT','NOEUD'),
19049                    EXCLUS('GROUP_MA','MAILLE'),
19050                    EXCLUS('GROUP_NO','NOEUD'),
19051                    EXCLUS('NOEUD_CHOC','GROUP_NO_CHOC'),
19052                    UN_PARMI('NOM_CHAM','NOM_PARA_RESU'),),
19053            NOM_CHAM        =SIMP(statut='f',typ='TXM',into=C_NOM_CHAM_INTO()),
19054            NOM_PARA_RESU   =SIMP(statut='f',typ='TXM' ),
19055            TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
19056            NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
19057            LIST_ORDRE      =SIMP(statut='f',typ=listis ),
19058            TOUT_INST       =SIMP(statut='f',typ='TXM',into=("OUI",) ),
19059            INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
19060            LIST_INST       =SIMP(statut='f',typ=listr8 ),
19061            FREQ            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
19062            LIST_FREQ       =SIMP(statut='f',typ=listr8 ),
19063            b_prec = BLOC ( condition = "(INST != None) or (LIST_INST != None) or (FREQ != None) or (LIST_FREQ != None)",
19064              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
19065              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
19066              INTERP_NUME     =SIMP(statut='f',typ='TXM',into=("NON","LIN") ),
19067            ),
19068            NOM_CMP         =SIMP(statut='f',typ='TXM' ),
19069
19070            MAILLE          =SIMP(statut='f',typ=ma),
19071            GROUP_MA        =SIMP(statut='f',typ=grma),
19072            NOEUD           =SIMP(statut='f',typ=no),
19073            GROUP_NO        =SIMP(statut='f',typ=grno),
19074            POINT           =SIMP(statut='f',typ='I' ),
19075            SOUS_POINT      =SIMP(statut='f',typ='I' ),
19076            NOEUD_CHOC      =SIMP(statut='f',typ=no),
19077            GROUP_NO_CHOC   =SIMP(statut='f',typ=grno),
19078          ),
19079 # RESU_GENE
19080          b_resu_gene = BLOC ( condition = "RESU_GENE != None", fr="Opérandes en cas de RESU_GENE",
19081 #    A voir par Mathieu Courtois : il existe de tests (SDNX300B) qui ne satisfont pas ce UN_PARMI
19082 #           regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','TOUT_INST','LIST_INST','FREQ','LIST_FREQ'),),
19083            NOM_CHAM        =SIMP(statut='f',typ='TXM',into=("DEPL","VITE","ACCE","PTEM") ),
19084            TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
19085            NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),
19086            LIST_ORDRE      =SIMP(statut='f',typ=listis ),
19087            TOUT_INST       =SIMP(statut='f',typ='TXM',into=("OUI",) ),
19088            INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
19089            LIST_INST       =SIMP(statut='f',typ=listr8 ),
19090            FREQ            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
19091            LIST_FREQ       =SIMP(statut='f',typ=listr8 ),
19092            b_prec = BLOC ( condition = "(INST != None) or (LIST_INST != None) or (FREQ != None) or (LIST_FREQ != None)",
19093              PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
19094              CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
19095              INTERP_NUME     =SIMP(statut='f',typ='TXM',into=("NON","LIN") ),
19096            ),
19097            b_local_cham = BLOC ( condition = "NOM_CHAM!='PTEM'", fr="Opérandes de localisation du champ",
19098              regles=(AU_MOINS_UN('MAILLE','GROUP_MA','GROUP_NO','NOEUD','NOEUD_CHOC','GROUP_NO_CHOC'),
19099                      PRESENT_PRESENT('MAILLE','NOM_CMP'),
19100                      PRESENT_PRESENT('GROUP_MA','NOM_CMP'),
19101                      PRESENT_PRESENT('NOEUD','NOM_CMP'),
19102                      PRESENT_PRESENT('GROUP_NO','NOM_CMP'),
19103                      PRESENT_PRESENT('POINT','NOM_CMP'),
19104                      EXCLUS('POINT','NOEUD'),
19105                      EXCLUS('GROUP_MA','MAILLE'),
19106                      EXCLUS('GROUP_NO','NOEUD'),
19107                      EXCLUS('NOEUD_CHOC','GROUP_NO_CHOC'),),
19108              NOM_CMP         =SIMP(statut='f',typ='TXM' ),
19109
19110              MAILLE          =SIMP(statut='f',typ=ma),
19111              GROUP_MA        =SIMP(statut='f',typ=grma),
19112              NOEUD           =SIMP(statut='f',typ=no),
19113              GROUP_NO        =SIMP(statut='f',typ=grno),
19114              POINT           =SIMP(statut='f',typ='I' ),
19115              SOUS_POINT      =SIMP(statut='f',typ='I' ),
19116              NOEUD_CHOC      =SIMP(statut='f',typ=no),
19117              GROUP_NO_CHOC   =SIMP(statut='f',typ=grno),
19118            ),
19119          ),
19120 # CHAM_GD
19121          b_cham_gd = BLOC ( condition = "(CHAM_GD != None)", fr="Opérandes en cas de CHAM_GD",
19122
19123            regles=(AU_MOINS_UN('MAILLE','GROUP_MA','GROUP_NO','NOEUD','NOEUD_CHOC','GROUP_NO_CHOC'),
19124                    PRESENT_PRESENT('MAILLE','NOM_CMP'),
19125                    PRESENT_PRESENT('GROUP_MA','NOM_CMP'),
19126                    PRESENT_PRESENT('NOEUD','NOM_CMP'),
19127                    PRESENT_PRESENT('GROUP_NO','NOM_CMP'),
19128                    PRESENT_PRESENT('POINT','NOM_CMP'),
19129                    EXCLUS('POINT','NOEUD'),
19130                    EXCLUS('GROUP_MA','MAILLE'),
19131                    EXCLUS('GROUP_NO','NOEUD'),
19132                    EXCLUS('NOEUD_CHOC','GROUP_NO_CHOC'),),
19133            NOM_CMP         =SIMP(statut='f',typ='TXM' ),
19134
19135            MAILLE          =SIMP(statut='f',typ=ma),
19136            GROUP_MA        =SIMP(statut='f',typ=grma),
19137            NOEUD           =SIMP(statut='f',typ=no),
19138            GROUP_NO        =SIMP(statut='f',typ=grno),
19139            POINT           =SIMP(statut='f',typ='I' ),
19140            SOUS_POINT      =SIMP(statut='f',typ='I' ),
19141            NOEUD_CHOC      =SIMP(statut='f',typ=no),
19142            GROUP_NO_CHOC   =SIMP(statut='f',typ=grno),
19143          ),
19144 ###
19145          NOM_PARA        =SIMP(statut='f',typ='TXM',
19146                                into=("DX","DY","DZ","DRX","DRY","DRZ","TEMP",
19147                                      "INST","X","Y","Z","EPSI","FREQ","PULS","AMOR","ABSC") ),
19148          NOM_RESU        =SIMP(statut='f',typ='TXM' ),
19149          INTERPOL        =SIMP(statut='f',typ='TXM',max=2,into=("NON","LIN","LOG") ),
19150          PROL_DROITE     =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ),
19151          PROL_GAUCHE     =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ),
19152
19153          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
19154          INFO            =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ),
19155 )  ;
19156
19157 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
19158 #            CONFIGURATION MANAGEMENT OF EDF VERSION
19159 # ======================================================================
19160 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
19161 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
19162 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
19163 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
19164 # (AT YOUR OPTION) ANY LATER VERSION.                                 
19165 #
19166 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
19167 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
19168 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
19169 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
19170 #
19171 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
19172 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
19173 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
19174 # ======================================================================
19175 RECU_GENE=OPER(nom="RECU_GENE",op=  76,sd_prod=vect_asse_gene,docu="U4.71.03-f",reentrant='n',
19176             UIinfo={"groupes":("Résultats et champs",)},
19177                fr="Récupération d un champ de grandeur à partir d un résultat en coordonnées généralisées",
19178          RESU_GENE       =SIMP(statut='o',typ=tran_gene ),
19179          INST            =SIMP(statut='o',typ='R' ),
19180          NOM_CHAM        =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL","VITE","ACCE") ),
19181          INTERPOL        =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","LIN") ),
19182          CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF" ,into=("ABSOLU","RELATIF") ),
19183          PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
19184 )  ;
19185
19186 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
19187 #            CONFIGURATION MANAGEMENT OF EDF VERSION
19188 # ======================================================================
19189 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
19190 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
19191 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
19192 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
19193 # (AT YOUR OPTION) ANY LATER VERSION.                                 
19194 #
19195 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
19196 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
19197 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
19198 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
19199 #
19200 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
19201 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
19202 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
19203 # ======================================================================
19204 # RESPONSABLE VABHHTS J.PELLET
19205 RECU_TABLE=OPER(nom="RECU_TABLE",op= 174,sd_prod=table,
19206                 fr=" ",docu="U4.71.02-b",reentrant='n',
19207             UIinfo={"groupes":("Résultats et champs",)},
19208          CO              =SIMP(statut='o',typ=assd),
19209          regles=(UN_PARMI('NOM_TABLE','NOM_PARA')),
19210          NOM_TABLE       =SIMP(statut='f',typ='TXM' ),
19211          NOM_PARA        =SIMP(statut='f',typ='TXM',max='**'),  
19212          TITRE           =SIMP(statut='f',typ='TXM',max='**'),  
19213 )  ;
19214
19215 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
19216 #            CONFIGURATION MANAGEMENT OF EDF VERSION
19217 # ======================================================================
19218 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
19219 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
19220 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
19221 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
19222 # (AT YOUR OPTION) ANY LATER VERSION.                                 
19223 #
19224 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
19225 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
19226 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
19227 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
19228 #
19229 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
19230 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
19231 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
19232 # ======================================================================
19233 def reso_grad_prod(MATR_ASSE,**args ):
19234   if AsType(MATR_ASSE) == matr_asse_depl_r : return cham_no_depl_r
19235   if AsType(MATR_ASSE) == matr_asse_temp_r : return cham_no_temp_r
19236   if AsType(MATR_ASSE) == matr_asse_pres_r : return cham_no_pres_r
19237   raise AsException("type de concept resultat non prevu")
19238
19239 RESO_GRAD=OPER(nom="RESO_GRAD",op=  84,sd_prod=reso_grad_prod,
19240                fr="Résolution par la méthode du gradient conjugué préconditionné",
19241                docu="U4.55.04-f",reentrant='f',
19242             UIinfo={"groupes":("Résolution",)},
19243          MATR_ASSE       =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r ) ),
19244          CHAM_NO         =SIMP(statut='o',typ=(cham_no_depl_r,cham_no_temp_r,cham_no_pres_r ) ),
19245          CHAM_CINE       =SIMP(statut='f',typ=(cham_no_temp_r,cham_no_depl_r,cham_no_pres_r ) ),
19246          MATR_FACT       =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r ) ),
19247          NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),  
19248          REPRISE         =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
19249          RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1E-6 ),  
19250          INFO            =SIMP(statut='f',typ='I',into=(1,2) ),
19251 )  ;
19252
19253 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
19254 #            CONFIGURATION MANAGEMENT OF EDF VERSION
19255 # ======================================================================
19256 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
19257 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
19258 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
19259 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
19260 # (AT YOUR OPTION) ANY LATER VERSION.                                 
19261 #
19262 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
19263 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
19264 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
19265 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
19266 #
19267 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
19268 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
19269 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
19270 # ======================================================================
19271 # RESPONSABLE VABHHTS J.PELLET
19272 def reso_ldlt_prod(CHAM_NO,**args ):
19273   if AsType(CHAM_NO) == cham_no_temp_r : return cham_no_temp_r
19274   if AsType(CHAM_NO) == cham_no_depl_r : return cham_no_depl_r
19275   if AsType(CHAM_NO) == cham_no_pres_r : return cham_no_pres_r
19276   if AsType(CHAM_NO) == cham_no_temp_c : return cham_no_temp_c
19277   if AsType(CHAM_NO) == cham_no_depl_c : return cham_no_depl_c
19278   if AsType(CHAM_NO) == cham_no_pres_c : return cham_no_pres_c
19279   raise AsException("type de concept resultat non prevu")
19280
19281 RESO_LDLT=OPER(nom="RESO_LDLT",op=15,sd_prod=reso_ldlt_prod,reentrant='f',
19282                fr="Résolution en place ou hors place d un système factorisé",docu="U4.55.02-g",
19283             UIinfo={"groupes":("Résolution",)},
19284          MATR_FACT       =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_temp_r,
19285                                                matr_asse_temp_c,matr_asse_pres_r,matr_asse_pres_c) ),
19286          CHAM_NO         =SIMP(statut='o',typ=(cham_no_temp_r,cham_no_depl_r,cham_no_pres_r,
19287                                                cham_no_temp_c,cham_no_depl_c,cham_no_pres_c) ),
19288          CHAM_CINE       =SIMP(statut='f',typ=(cham_no_temp_r,cham_no_depl_r,cham_no_pres_c) ),
19289          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
19290          INFO            =SIMP(statut='f',typ='I',into=(1,2) ),
19291 )  ;
19292
19293 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
19294 #            CONFIGURATION MANAGEMENT OF EDF VERSION
19295 # ======================================================================
19296 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
19297 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
19298 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
19299 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
19300 # (AT YOUR OPTION) ANY LATER VERSION.                                 
19301 #
19302 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
19303 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
19304 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
19305 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
19306 #
19307 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
19308 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
19309 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
19310 # ======================================================================
19311 # RESPONSABLE BOYERE E.BOYERE
19312 def rest_base_phys_prod(RESU_GENE,RESULTAT,**args ):
19313   if AsType(RESU_GENE) == tran_gene : return dyna_trans
19314   if AsType(RESU_GENE) == mode_gene : return mode_meca
19315   if AsType(RESU_GENE) == mode_cycl : return mode_meca
19316   if AsType(RESU_GENE) == harm_gene : return dyna_harmo
19317   if AsType(RESULTAT)  == mode_meca : return mode_meca
19318   raise AsException("type de concept resultat non prevu")
19319
19320 REST_BASE_PHYS=OPER(nom="REST_BASE_PHYS",op=  75,sd_prod=rest_base_phys_prod,
19321                     fr="Restituer dans la base physique des résultats en coordonnées généralisées",
19322                     docu="U4.63.21-f",reentrant='n',
19323             UIinfo={"groupes":("Matrices/vecteurs",)},
19324         regles=(UN_PARMI('RESU_GENE','RESULTAT'),
19325                 EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST','TOUT_INST'),
19326                 EXCLUS('TOUT_INST','NUME_ORDRE','INST','LIST_INST','TOUT_ORDRE'),
19327 #  Doc U à revoir
19328                 EXCLUS('MULT_APPUI','CORR_STAT'),
19329                 EXCLUS('MULT_APPUI','NOEUD','GROUP_NO'),
19330                 EXCLUS('CORR_STAT','NOEUD','GROUP_NO'),             
19331                 EXCLUS('NOEUD','GROUP_NO'), 
19332                 PRESENT_PRESENT('RESULTAT','SQUELETTE'),
19333                 PRESENT_PRESENT('ACCE_MONO_APPUI','DIRECTION'),),
19334          RESU_GENE       =SIMP(statut='f',typ=(tran_gene,mode_gene,mode_cycl,harm_gene ) ),
19335          RESULTAT        =SIMP(statut='f',typ=mode_meca ),
19336          
19337          MODE_MECA       =SIMP(statut='f',typ=mode_meca ),
19338          TOUT_ORDRE      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
19339          NUME_ORDRE      =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ),  
19340          TOUT_INST       =SIMP(statut='f',typ='TXM',into=("OUI",) ),
19341          INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ),  
19342          LIST_INST       =SIMP(statut='f',typ=listr8 ),
19343          FREQ            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ),  
19344          LIST_FREQ       =SIMP(statut='f',typ=listr8 ),
19345          CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("ABSOLU","RELATIF") ),
19346          PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),  
19347          INTERPOL        =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","LIN") ),
19348          MULT_APPUI      =SIMP(statut='f',typ='TXM',into=("OUI",) ),
19349          CORR_STAT       =SIMP(statut='f',typ='TXM',into=("OUI",) ),
19350          NOM_CHAM        =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=8,defaut="ACCE",   
19351                                into=("DEPL","VITE","ACCE","ACCE_ABSOLU","EFGE_ELNO_DEPL","SIPO_ELNO_DEPL",                 
19352                                      "SIGM_ELNO_DEPL","FORC_NODA",) ),
19353          TOUT_CHAM       =SIMP(statut='f',typ='TXM',into=("OUI",) ),
19354          GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
19355          NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
19356  
19357          ACCE_MONO_APPUI =SIMP(statut='f',typ=(fonction,formule)),
19358          DIRECTION       =SIMP(statut='f',typ='R',min=3,max=3 ),
19359
19360          SQUELETTE       =SIMP(statut='f',typ=squelette ),
19361          SOUS_STRUC      =SIMP(statut='f',typ='TXM' ),  
19362          SECTEUR         =SIMP(statut='f',typ='I',defaut= 1 ),  
19363          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),  
19364 )  ;
19365
19366 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
19367 #            CONFIGURATION MANAGEMENT OF EDF VERSION
19368 # ======================================================================
19369 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
19370 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
19371 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
19372 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
19373 # (AT YOUR OPTION) ANY LATER VERSION.                                 
19374 #
19375 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
19376 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
19377 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
19378 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
19379 #
19380 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
19381 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
19382 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
19383 # ======================================================================
19384 REST_SPEC_PHYS=OPER(nom="REST_SPEC_PHYS",op= 148,sd_prod=tabl_intsp,
19385                     docu="U4.63.22-d",reentrant='n',
19386             UIinfo={"groupes":("Matrices/vecteurs",)},
19387          regles=(AU_MOINS_UN('BASE_ELAS_FLUI','MODE_MECA'),),
19388          BASE_ELAS_FLUI  =SIMP(statut='f',typ=melasflu ),
19389          MODE_MECA       =SIMP(statut='f',typ=mode_meca ),
19390          BANDE           =SIMP(statut='f',typ='R',min=2,validators=NoRepeat(),max=2    ),  
19391          NUME_ORDRE      =SIMP(statut='f',typ='I'      ,validators=NoRepeat(),max='**' ),  
19392          INTE_SPEC_GENE  =SIMP(statut='o',typ=tabl_intsp ),
19393          NOEUD           =SIMP(statut='o',typ=no   ,max='**'),
19394          MAILLE          =SIMP(statut='f',typ=ma   ,max='**'),
19395          NOM_CMP         =SIMP(statut='o',typ='TXM',max='**'),  
19396          NOM_CHAM        =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=7,    
19397                                into=("DEPL","VITE","ACCE","EFGE_ELNO_DEPL",
19398                                      "SIPO_ELNO_DEPL","SIGM_ELNO_DEPL","FORC_NODA") ),
19399          MODE_STAT       =SIMP(statut='f',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc), ),
19400          EXCIT           =FACT(statut='f',
19401            NOEUD           =SIMP(statut='o',typ=no   ,max='**'),
19402            NOM_CMP         =SIMP(statut='o',typ='TXM',max='**'),  
19403          ),
19404          MOUVEMENT       =SIMP(statut='f',typ='TXM',defaut="ABSOLU",into=("RELATIF","ABSOLU","DIFFERENTIEL") ),
19405          OPTION          =SIMP(statut='f',typ='TXM',defaut="DIAG_DIAG",    
19406                                into=("DIAG_TOUT","DIAG_DIAG","TOUT_TOUT","TOUT_DIAG") ),
19407          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),  
19408 )  ;
19409
19410 #& MODIF COMMANDE  DATE 26/09/2003   AUTEUR DURAND C.DURAND 
19411 #            CONFIGURATION MANAGEMENT OF EDF VERSION
19412 # ======================================================================
19413 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
19414 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
19415 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
19416 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
19417 # (AT YOUR OPTION) ANY LATER VERSION.                                 
19418 #
19419 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
19420 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
19421 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
19422 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
19423 #
19424 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
19425 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
19426 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
19427 # ======================================================================
19428 RETOUR=MACRO(nom="RETOUR",op=ops.build_retour,docu="U4.13.02-f",
19429             UIinfo={"groupes":("Gestion du travail",)},
19430             fr="Retour au fichier de commandes appelant", 
19431 ) ;
19432
19433 #& MODIF COMMANDE  DATE 16/09/2003   AUTEUR JMBHH01 J.M.PROIX 
19434 #            CONFIGURATION MANAGEMENT OF EDF VERSION
19435 # ======================================================================
19436 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
19437 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
19438 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
19439 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR
19440 # (AT YOUR OPTION) ANY LATER VERSION.
19441 #
19442 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT
19443 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF
19444 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU
19445 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.
19446 #
19447 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE
19448 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,
19449 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.
19450 # ======================================================================
19451 # RESPONSABLE PBADEL P.BADEL
19452 STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli,
19453                    fr="Analyse mécanique statique non linéaire",
19454                    docu="U4.51.03-f",reentrant='f',
19455             UIinfo={"groupes":("Résolution",)},
19456          regles=(AU_MOINS_UN('COMP_INCR','COMP_ELAS'),),
19457          MODELE          =SIMP(statut='o',typ=modele),
19458          CHAM_MATER      =SIMP(statut='o',typ=cham_mater),
19459          CARA_ELEM       =SIMP(statut='f',typ=cara_elem),
19460          EXCIT           =FACT(statut='o',max='**',
19461            CHARGE          =SIMP(statut='o',typ=char_meca),
19462            FONC_MULT       =SIMP(statut='f',typ=(fonction,formule)),
19463            TYPE_CHARGE     =SIMP(statut='f',typ='TXM',defaut="FIXE_CSTE",
19464                                  into=("FIXE_CSTE","FIXE_PILO","SUIV","DIDI")),
19465          ),
19466          VARI_COMM           =FACT(statut='f',
19467            regles=(AU_MOINS_UN('IRRA',),),
19468            IRRA     =SIMP(statut='f',typ=evol_varc),
19469          ),
19470          COMP_INCR       =C_COMP_INCR(),
19471          COMP_ELAS       =FACT(statut='f',max='**',
19472            RELATION        =SIMP(statut='o',typ='TXM',defaut="ELAS",
19473                                  into=("ELAS","ELAS_VMIS_LINE","ELAS_VMIS_TRAC",
19474                                        "ELAS_POUTRE_GR","CABLE")),
19475            ELAS            =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
19476            ELAS_VMIS_TRAC  =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
19477            ELAS_VMIS_LINE  =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
19478            ELAS_POUTRE_GR  =SIMP(statut='c',typ='I',defaut=3,into=(3,)),
19479            CABLE           =SIMP(statut='c',typ='I',defaut=1,into=(1,)),
19480            DEFORMATION     =SIMP(statut='f',typ='TXM',defaut="PETIT" ,into=("PETIT","GREEN","GREEN_GR",) ),
19481       regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),),
19482            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
19483            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
19484            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
19485          ),
19486          ETAT_INIT       =FACT(statut='f',
19487            regles=(AU_MOINS_UN('EVOL_NOLI','DEPL','SIGM','VARI','VARI_NON_LOCAL',),
19488                    EXCLUS('EVOL_NOLI','DEPL',),
19489                    EXCLUS('EVOL_NOLI','SIGM',),
19490                    EXCLUS('EVOL_NOLI','VARI',),
19491                    EXCLUS('EVOL_NOLI','VARI_NON_LOCAL',),
19492                    EXCLUS('NUME_ORDRE','INST'), ),
19493            DEPL            =SIMP(statut='f',typ=cham_no_depl_r),
19494            SIGM            =SIMP(statut='f',typ=(cham_elem_sief_r,carte_sief_r)),
19495            VARI            =SIMP(statut='f',typ=cham_elem_vari_r),
19496            VARI_NON_LOCAL  =SIMP(statut='f',typ=cham_no_vanl_r),
19497            EVOL_NOLI       =SIMP(statut='f',typ=evol_noli),
19498            NUME_ORDRE      =SIMP(statut='f',typ='I'),
19499            INST            =SIMP(statut='f',typ='R'),
19500            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),
19501            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
19502            NUME_DIDI       =SIMP(statut='f',typ='I'),
19503            INST_ETAT_INIT  =SIMP(statut='f',typ='R'),
19504          ),
19505          INCREMENT       =FACT(statut='o',
19506            regles=(EXCLUS('NUME_INST_INIT','INST_INIT'),
19507                    EXCLUS('NUME_INST_FIN','INST_FIN'),),
19508            LIST_INST       =SIMP(statut='o',typ=listr8),
19509            EVOLUTION       =SIMP(statut='f',typ='TXM',defaut="CHRONOLOGIQUE",
19510                                  into=("CHRONOLOGIQUE","RETROGRADE","SANS",) ),
19511            NUME_INST_INIT  =SIMP(statut='f',typ='I'),
19512            INST_INIT       =SIMP(statut='f',typ='R'),
19513            NUME_INST_FIN   =SIMP(statut='f',typ='I'),
19514            INST_FIN        =SIMP(statut='f',typ='R'),
19515            PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3 ),
19516            SUBD_PAS        =SIMP(statut='f',typ='I',defaut=1),
19517            SUBD_PAS_MINI   =SIMP(statut='f',typ='R'),
19518            COEF_SUBD_PAS_1 =SIMP(statut='f',typ='R',defaut= 1.0E+0),
19519            OPTI_LIST_INST  =SIMP(statut='f',typ='TXM',into=("INCR_MAXI",),),
19520            NOM_CHAM        =SIMP(statut='f',typ='TXM',),
19521            NOM_CMP         =SIMP(statut='f',typ='TXM',),
19522            VALE            =SIMP(statut='f',typ='R'),
19523          ),
19524          NEWTON          =FACT(statut='d',
19525            REAC_INCR       =SIMP(statut='f',typ='I',defaut= 1 ),
19526            PREDICTION      =SIMP(statut='f',typ='TXM',into=("DEPL_CALCULE","TANGENTE","ELASTIQUE","EXTRAPOL") ),
19527            MATRICE         =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE") ),
19528            PAS_MINI_ELAS   =SIMP(statut='f',typ='R',defaut=0.0E+0),
19529            REAC_ITER       =SIMP(statut='f',typ='I',defaut=0),
19530            EVOL_NOLI       =SIMP(statut='f',typ=evol_noli),
19531          ),
19532          RECH_LINEAIRE   =FACT(statut='f',
19533            RESI_LINE_RELA  =SIMP(statut='f',typ='R',defaut= 1.0E-1 ),
19534            ITER_LINE_MAXI  =SIMP(statut='f',typ='I',defaut= 3),
19535            ITER_LINE_CRIT  =SIMP(statut='f',typ='I',defaut= 20),
19536            PAS_MINI_CRIT   =SIMP(statut='f',typ='R',defaut=0.0E+0),
19537            RHO_MIN         =SIMP(statut='f',typ='R',defaut=1.0E-2),
19538            RHO_MAX         =SIMP(statut='f',typ='R',defaut=1.0E+1),
19539            RHO_EXCL        =SIMP(statut='f',typ='R',defaut=0.9E-2),
19540          ),
19541          PILOTAGE        =FACT(statut='f',
19542            regles=(EXCLUS('NOEUD','GROUP_NO'),PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),),
19543            TYPE    =SIMP(statut='o',typ='TXM',into=("DDL_IMPO","LONG_ARC","PRED_ELAS","PRED_ELAS_INCR","DEFORMATION","ANA_LIM") ),
19544            COEF_MULT       =SIMP(statut='f',typ='R',defaut= 1.0E+0),
19545            ETA_PILO_MAX    =SIMP(statut='f',typ='R'),
19546            ETA_PILO_MIN    =SIMP(statut='f',typ='R'),
19547            ETA_PILO_R_MAX  =SIMP(statut='f',typ='R'),
19548            ETA_PILO_R_MIN  =SIMP(statut='f',typ='R'),
19549            PROJ_BORNES     =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")),
19550            SELECTION       =SIMP(statut='f',typ='TXM',defaut="NORM_INCR_DEPL", into=("RESIDU","ANGL_INCR_DEPL","NORM_INCR_DEPL") ),
19551            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
19552            GROUP_MA        =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'),
19553            MAILLE          =SIMP(statut='f',typ=ma   ,validators=NoRepeat(),max='**'),
19554            NOEUD           =SIMP(statut='f',typ=no   ,validators=NoRepeat(),max='**'),
19555            GROUP_NO        =SIMP(statut='f',typ=grno ,validators=NoRepeat(),max='**'),
19556            NOM_CMP         =SIMP(statut='f',typ='TXM',max='**'),
19557                          ),
19558          CONVERGENCE     =FACT(statut='d',
19559            regles=(PRESENT_ABSENT('RESI_REFE_RELA','RESI_GLOB_MAXI','RESI_GLOB_RELA'),),
19560            SIGM_REFE       =SIMP(statut='f',typ='R'),
19561            EPSI_REFE       =SIMP(statut='f',typ='R'),
19562            FLUX_THER_REFE  =SIMP(statut='f',typ='R'),
19563            FLUX_HYD1_REFE  =SIMP(statut='f',typ='R'),
19564            FLUX_HYD2_REFE  =SIMP(statut='f',typ='R'),           
19565            RESI_REFE_RELA  =SIMP(statut='f',typ='R'),
19566            RESI_GLOB_MAXI  =SIMP(statut='f',typ='R'),
19567            RESI_GLOB_RELA  =SIMP(statut='f',typ='R'),
19568            ITER_GLOB_MAXI  =SIMP(statut='f',typ='I',defaut=10),
19569            ITER_GLOB_ELAS  =SIMP(statut='f',typ='I',defaut=25),
19570            ARRET           =SIMP(statut='f',typ='TXM',defaut="OUI"),
19571            RESI_INTE_RELA  =SIMP(statut='f',typ='R'
19572                                 ,defaut= 1.0E-6),
19573            ITER_INTE_MAXI  =SIMP(statut='f',typ='I',defaut= 10 ),
19574            ITER_INTE_PAS   =SIMP(statut='f',typ='I',defaut= 0 ),
19575            TYPE_MATR_COMP  =SIMP(statut='f',typ='TXM',defaut="TANG_VIT",into=("TANG_VIT",)),
19576            RESO_INTE       =SIMP(statut='f',typ='TXM',defaut="IMPLICITE",
19577                                  into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")),
19578          ),
19579          PARM_THETA      =SIMP(statut='f',typ='R'
19580                               ,defaut= 1. ),
19581          SOLVEUR         =FACT(statut='d',
19582            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
19583            b_mult_front    =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
19584              RENUM           =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ),
19585            ),
19586            b_ldlt         =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT",
19587              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
19588            ),
19589            b_ldlt_mult    =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
19590                                    fr="Paramètres relatifs à la non inversibilité de la matrice à factorise",
19591              NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
19592              STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON","DECOUPE") ),
19593            ),
19594            b_gcpc         =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué",
19595              PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ),
19596              NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ),
19597              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ),
19598              RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
19599              NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
19600            ),
19601            SYME            =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
19602          ),
19603          ARCHIVAGE       =FACT(statut='f',
19604            regles=(EXCLUS('PAS_ARCH','LIST_INST','INST'),
19605                    EXCLUS('ARCH_ETAT_INIT','NUME_INIT'), ),
19606            LIST_INST       =SIMP(statut='f',typ=(listr8) ),
19607            INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ),
19608            PAS_ARCH        =SIMP(statut='f',typ='I' ),
19609            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3),
19610            ARCH_ETAT_INIT  =SIMP(statut='f',typ='TXM',into=("OUI",)),
19611            NUME_INIT       =SIMP(statut='f',typ='I'),
19612            DETR_NUME_SUIV  =SIMP(statut='f',typ='TXM',into=("OUI",)),
19613            CHAM_EXCLU      =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',into=("DEPL","SIEF_ELGA","VARI_ELGA",
19614                                                                      "VARI_NON_LOCAL","LANL_ELGA")),
19615          ),
19616          OBSERVATION     =FACT(statut='f',max='**',
19617            regles=(UN_PARMI('NOEUD','GROUP_NO','MAILLE'),
19618                    PRESENT_PRESENT('MAILLE','POINT'),),
19619            NOM_CHAM        =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=("DEPL","VITE","ACCE","SIEF_ELGA",
19620                                               "VARI_ELGA","DEPL_ABSOLU","VITE_ABSOLU","ACCE_ABSOLU")),
19621            NOM_CMP         =SIMP(statut='o',typ='TXM',max='**' ),
19622            LIST_ARCH       =SIMP(statut='f',typ=listis),
19623            LIST_INST       =SIMP(statut='f',typ=listr8),
19624            INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ),
19625            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),
19626            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
19627            PAS_OBSE        =SIMP(statut='f',typ='I'),
19628            NOEUD           =SIMP(statut='f',typ=no  ,validators=NoRepeat(),max='**'),
19629            GROUP_NO        =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),
19630            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
19631            POINT           =SIMP(statut='f',typ='I' ,validators=NoRepeat(),max='**'),
19632          ),
19633          CRIT_FLAMB     =FACT(statut='f',min=1,max=1,
19634            NB_FREQ         =SIMP(statut='f',typ='I',max=1,defaut=3),
19635            CHAR_CRIT       =SIMP(statut='f',typ='R',min=2,max=2,defaut=(-10.0,10),
19636                             fr="Valeur des deux charges critiques délimitant la bande de recherche en HPP"),
19637          ),
19638            SENSIBILITE     =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**',
19639                                fr="Liste des paramètres de sensibilité",
19640                                ang="List of sensitivity parameters"),
19641            SOLV_NON_LOCAL  =FACT(statut='f',
19642              METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
19643              b_mult_front    =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
19644                RENUM           =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ),
19645              ),
19646              b_ldlt         =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT",
19647                RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
19648              ),
19649              b_ldlt_mult    =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
19650                                     fr="Paramètres relatifs à la non inversibilité de la matrice à factorise",
19651                NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
19652                STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
19653              ),
19654              b_gcpc         =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué",
19655                PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ),
19656                NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ),
19657                RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
19658                NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
19659              ),
19660              EPS             =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
19661            ),
19662            LAGR_NON_LOCAL  =FACT(statut='f',
19663              ITER_DUAL_MAXI  =SIMP(statut='f',typ='I',defaut= 50),
19664              RESI_DUAL_ABSO  =SIMP(statut='o',typ='R'),
19665              RESI_PRIM_ABSO  =SIMP(statut='o',typ='R'),
19666              R               =SIMP(statut='f',typ='R',defaut= 1000.),
19667              ITER_PRIM_MAXI  =SIMP(statut='f',typ='I',defaut= 10),
19668            ),
19669          INFO            =SIMP(statut='f',typ='I',into=(1,2) ),
19670          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),
19671  )  ;
19672
19673 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
19674 #            CONFIGURATION MANAGEMENT OF EDF VERSION
19675 # ======================================================================
19676 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
19677 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
19678 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
19679 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
19680 # (AT YOUR OPTION) ANY LATER VERSION.                                 
19681 #
19682 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
19683 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
19684 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
19685 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
19686 #
19687 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
19688 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
19689 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
19690 # ======================================================================
19691 # RESPONSABLE MCOURTOI M.COURTOIS
19692 TEST_FONCTION=PROC(nom="TEST_FONCTION",op= 135,fr="Extraction d une valeur numérique ou d un attribut de fonction",
19693                    docu="U4.92.02-f",
19694             UIinfo={"groupes":("Impression",)},
19695          FICHIER         =SIMP(statut='f',typ='TXM',defaut="RESULTAT"),
19696          TEST_NOOK       =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
19697          VALEUR          =FACT(statut='f',max='**',
19698                                fr="Tester la valeur d une fonction ou d une nappe",
19699            regles=(UN_PARMI('VALE_REFE','VALE_REFE_C', ),),
19700            FONCTION        =SIMP(statut='o',typ=(fonction,formule) ),
19701            NOM_PARA        =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=2),
19702            VALE_PARA       =SIMP(statut='o',typ='R'  ,validators=NoRepeat(),max=2),
19703            VALE_REFE       =SIMP(statut='f',typ='R' ),
19704            VALE_REFE_C     =SIMP(statut='f',typ='C' ),
19705            CRITERE         =SIMP(statut='f',typ='TXM',fr="Critère de comparaison avec la solution de référence",
19706                                  defaut="RELATIF",into=("RELATIF","ABSOLU") ),
19707            PRECISION       =SIMP(statut='f',typ='R',fr="Ecart maximal autorisé avec la solution de référence",
19708                                  defaut= 1.E-3 ),
19709            REFERENCE       =SIMP(statut='f',typ='TXM',
19710                                  into=("ANALYTIQUE","SOURCE_EXTERNE","NON_REGRESSION","AUTRE_ASTER") ),
19711            b_version = BLOC (condition = "REFERENCE == 'NON_REGRESSION'", 
19712              VERSION         =SIMP(statut='f',typ='TXM' ),
19713            ),
19714          ),
19715          ATTRIBUT        =FACT(statut='f',max='**',
19716                                fr="Tester la valeur d un attribut d une fonction ou d''une nappe",
19717            FONCTION        =SIMP(statut='o',typ=(fonction,formule) ),
19718            PARA            =SIMP(statut='f',typ='R' ),
19719            CRIT_PARA       =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
19720            PREC_PARA       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
19721            ATTR            =SIMP(statut='o',typ='TXM',
19722                                  into=("NOM_PARA","NOM_RESU","PROL_DROITE","PROL_GAUCHE","INTERPOL",
19723                                        "PROL_GAUCHE_FONC","PROL_DROITE_FONC","INTERPOL_FONC","NOM_PARA_FONC") ),
19724            ATTR_REFE       =SIMP(statut='o',typ='TXM' ),
19725            REFERENCE       =SIMP(statut='f',typ='TXM',
19726                                  into=("ANALYTIQUE","SOURCE_EXTERNE","NON_REGRESSION","AUTRE_ASTER") ),
19727            b_version       =BLOC(condition = "REFERENCE == 'NON_REGRESSION'", 
19728              VERSION         =SIMP(statut='f',typ='TXM' ),
19729            ),
19730          ),
19731          TABL_INTSP      =FACT(statut='f',max='**',
19732                                fr="Tester la valeur d une fonction contenue dans une table interspectrale",
19733            regles=(UN_PARMI('NUME_ORDRE_I','NOEUD_I'),),
19734            INTE_SPEC       =SIMP(statut='o',typ=tabl_intsp ),
19735            NOEUD_I         =SIMP(statut='f',typ=no),
19736            NUME_ORDRE_I    =SIMP(statut='f',typ='I' ),
19737            b_nume_ordre_i = BLOC (condition = "NUME_ORDRE_I != None", 
19738              NUME_ORDRE_J    =SIMP(statut='o',typ='I' ),
19739            ),
19740            b_noeud_i = BLOC (condition = "NOEUD_I != None",             
19741              NOEUD_J         =SIMP(statut='o',typ=no),
19742              NOM_CMP_I       =SIMP(statut='o',typ='TXM' ),
19743              NOM_CMP_J       =SIMP(statut='o',typ='TXM' ),
19744            ),
19745            NUME_VITE_FLUI  =SIMP(statut='f',typ='I' ),
19746            VALE_PARA       =SIMP(statut='o',typ='R' ),
19747            VALE_REFE_C     =SIMP(statut='o',typ='C' ),
19748            CRITERE         =SIMP(statut='f',typ='TXM',fr="Critère de comparaison avec la solution de référence",
19749                                  defaut="RELATIF",into=("RELATIF","ABSOLU") ),
19750            PRECISION       =SIMP(statut='f',typ='R',fr="Ecart maximal autorisé avec la solution de référence",
19751                                  defaut= 1.E-3 ),
19752            REFERENCE       =SIMP(statut='f',typ='TXM',
19753                                  into=("ANALYTIQUE","SOURCE_EXTERNE","NON_REGRESSION","AUTRE_ASTER") ),
19754            b_version       =BLOC(condition = "REFERENCE == 'NON_REGRESSION'", 
19755              VERSION         =SIMP(statut='f',typ='TXM' ),
19756            ),
19757          ),
19758 )  ;
19759
19760 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
19761 # RESPONSABLE VABHHTS J.PELLET
19762 #            CONFIGURATION MANAGEMENT OF EDF VERSION
19763 # ======================================================================
19764 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
19765 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
19766 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
19767 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR
19768 # (AT YOUR OPTION) ANY LATER VERSION.
19769 #
19770 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT
19771 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF
19772 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU
19773 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.
19774 #
19775 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE
19776 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,
19777 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.
19778 #
19779 #
19780 # ======================================================================
19781 TEST_RESU=PROC(nom="TEST_RESU",op=23,docu="U4.92.01-g",
19782             UIinfo={"groupes":("Impression",)},
19783          fr="Extraction d une valeur et comparaison à une valeur de référence",
19784          regles=(AU_MOINS_UN('CHAM_NO','CHAM_ELEM','RESU','OBJET')),
19785          FICHIER         =SIMP(statut='f',typ='TXM',defaut="RESULTAT"),
19786
19787          CHAM_NO         =FACT(statut='f',max='**',
19788            regles=(UN_PARMI('NOEUD','GROUP_NO','TYPE_TEST'),
19789                    EXCLUS('NOEUD','GROUP_NO'),
19790                    PRESENT_PRESENT('NOEUD','NOM_CMP'),
19791                    PRESENT_PRESENT( 'GROUP_NO','NOM_CMP'),
19792                    UN_PARMI('VALE','VALE_I','VALE_C'),),
19793            CHAM_GD         =SIMP(statut='o',typ=cham_no),
19794            NOEUD           =SIMP(statut='f',typ=no   ),
19795            GROUP_NO        =SIMP(statut='f',typ=grno ),
19796            NOM_CMP         =SIMP(statut='f',typ='TXM'),
19797            TYPE_TEST       =SIMP(statut='f',typ='TXM',into=("SOMM_ABS","SOMM","MAX","MIN")),
19798            VALE            =SIMP(statut='f',typ='R'),
19799            VALE_I          =SIMP(statut='f',typ='I'),
19800            VALE_C          =SIMP(statut='f',typ='C'),
19801            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")),
19802            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3),
19803            REFERENCE       =SIMP(statut='f',typ='TXM',into=("ANALYTIQUE","SOURCE_EXTERNE",
19804                                                             "NON_REGRESSION","AUTRE_ASTER")),
19805            VERSION         =SIMP(statut='f',typ='TXM'),
19806          ),
19807
19808          CHAM_ELEM       =FACT(statut='f',max='**',
19809            regles=(UN_PARMI('MAILLE','TYPE_TEST',),
19810                    EXCLUS('NOEUD','GROUP_NO','POINT'),
19811                    PRESENT_PRESENT('NOEUD','NOM_CMP'),
19812                    PRESENT_PRESENT('GROUP_NO','NOM_CMP'),
19813                    PRESENT_PRESENT('POINT','NOM_CMP'),
19814                    UN_PARMI('VALE','VALE_I','VALE_C'), ),
19815            CHAM_GD         =SIMP(statut='o',typ=cham_elem),
19816            MAILLE          =SIMP(statut='f',typ=ma),
19817            POINT           =SIMP(statut='f',typ='I' ),
19818            SOUS_POINT      =SIMP(statut='f',typ='I'),
19819            NOEUD           =SIMP(statut='f',typ=no),
19820            GROUP_NO        =SIMP(statut='f',typ=grno),
19821            NOM_CMP         =SIMP(statut='f',typ='TXM',max='**'),
19822            TYPE_TEST       =SIMP(statut='f',typ='TXM',into=("SOMM_ABS","SOMM","MAX","MIN") ),
19823            VALE            =SIMP(statut='f',typ='R' ),
19824            VALE_I          =SIMP(statut='f',typ='I' ),
19825            VALE_C          =SIMP(statut='f',typ='C' ),
19826            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")),
19827            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),
19828            REFERENCE       =SIMP(statut='f',typ='TXM',into=("ANALYTIQUE","SOURCE_EXTERNE",
19829                                                             "NON_REGRESSION","AUTRE_ASTER") ),
19830            VERSION         =SIMP(statut='f',typ='TXM' ),
19831          ),
19832
19833          RESU            =FACT(statut='f',max='**',
19834            regles=(UN_PARMI('NUME_ORDRE','INST','FREQ','NUME_MODE','NOEUD_CMP','NOM_CAS','ANGL'),
19835                    UN_PARMI('NOM_CHAM','PARA'),
19836                    PRESENT_ABSENT('PARA','NOEUD','GROUP_NO','POINT','NOM_CMP','TYPE_TEST'),
19837                    PRESENT_PRESENT('NOM_CMP','NOM_CHAM'),
19838                    EXCLUS('NOEUD','GROUP_NO','POINT','TYPE_TEST'),
19839                    PRESENT_PRESENT('NOEUD','NOM_CMP'),
19840                    PRESENT_PRESENT('GROUP_NO','NOM_CMP'),
19841                    PRESENT_PRESENT('POINT','NOM_CMP'),
19842                    UN_PARMI('VALE','VALE_I','VALE_C') ,),
19843            RESULTAT        =SIMP(statut='o',typ=resultat),
19844            SENSIBILITE     =SIMP(statut='f',typ=(para_sensi,theta_geom),
19845                                  fr="Paramètre de sensibilité.",
19846                                  ang="Sensitivity parameter"),
19847            NUME_ORDRE      =SIMP(statut='f',typ='I'),
19848            INST            =SIMP(statut='f',typ='R'),
19849            FREQ            =SIMP(statut='f',typ='R'),
19850            NUME_MODE       =SIMP(statut='f',typ='I'),
19851            NOEUD_CMP       =SIMP(statut='f',typ='TXM',max='**'),
19852            NOM_CAS         =SIMP(statut='f',typ='TXM'),
19853            ANGL            =SIMP(statut='f',typ='R'),
19854            PARA            =SIMP(statut='f',typ='TXM'),
19855            NOM_CHAM        =SIMP(statut='f',typ='TXM',into=C_NOM_CHAM_INTO()),
19856            NOM_CMP         =SIMP(statut='f',typ='TXM',max='**'),
19857            MAILLE          =SIMP(statut='f',typ=ma   ,max='**'),
19858            NOEUD           =SIMP(statut='f',typ=no   ,max='**'),
19859            GROUP_NO        =SIMP(statut='f',typ=grno ,max='**'),
19860            POINT           =SIMP(statut='f',typ='I'),
19861            SOUS_POINT      =SIMP(statut='f',typ='I'),
19862            TYPE_TEST       =SIMP(statut='f',typ='TXM',into=("SOMM_ABS","SOMM","MAX","MIN")),
19863            VALE            =SIMP(statut='f',typ='R'),
19864            VALE_I          =SIMP(statut='f',typ='I'),
19865            VALE_C          =SIMP(statut='f',typ='C'),
19866            CRITERE         =SIMP(statut='f',typ='TXM',into=("RELATIF","ABSOLU"),max=2),
19867            PRECISION       =SIMP(statut='f',typ='R',max=2),
19868            REFERENCE       =SIMP(statut='f',typ='TXM',into=("ANALYTIQUE","SOURCE_EXTERNE",
19869                                                             "NON_REGRESSION","AUTRE_ASTER",) ),
19870            VERSION         =SIMP(statut='f',typ='TXM' ),
19871          ),
19872
19873          OBJET           =FACT(statut='f',max='**',
19874            regles=(UN_PARMI('INDICE','S_I','S_R','RESUME',),
19875                  UN_PARMI('VALE','VALE_I','VALE_C','RESUME','S_R','S_I'),),
19876            NOM             =SIMP(statut='o',typ='TXM'),
19877            INDICE          =SIMP(statut='f',typ='I'),
19878            NUM_OBJ         =SIMP(statut='f',typ='I'),
19879            S_R             =SIMP(statut='f',typ='R'),
19880            S_I             =SIMP(statut='f',typ='I'),
19881            RESUME          =SIMP(statut='f',typ='I'),
19882            VALE            =SIMP(statut='f',typ='R'),
19883            VALE_I          =SIMP(statut='f',typ='I'),
19884            VALE_C          =SIMP(statut='f',typ='C'),
19885            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")),
19886            PRECISION       =SIMP(statut='f',typ='R',defaut=1.0E-3 ),
19887            REFERENCE       =SIMP(statut='f',typ='TXM',into=("ANALYTIQUE","SOURCE_EXTERNE",
19888                                                             "NON_REGRESSION","AUTRE_ASTER",) ),
19889            VERSION         =SIMP(statut='f',typ='TXM' ),
19890          ),
19891 )  ;
19892
19893 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
19894 #            CONFIGURATION MANAGEMENT OF EDF VERSION
19895 # ======================================================================
19896 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
19897 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
19898 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
19899 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
19900 # (AT YOUR OPTION) ANY LATER VERSION.                                 
19901 #
19902 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
19903 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
19904 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
19905 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
19906 #
19907 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
19908 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
19909 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
19910 # ======================================================================
19911 # RESPONSABLE VABHHTS J.PELLET
19912 TEST_TABLE=PROC(nom="TEST_TABLE",op= 177,
19913                 docu="U4.92.03-c",
19914             UIinfo={"groupes":("Impression",)},
19915          regles=(UN_PARMI('VALE','VALE_I','VALE_C', ),),
19916          FICHIER         =SIMP(statut='f',typ='TXM',defaut="RESULTAT"),
19917 #  concept table à tester
19918          TABLE           =SIMP(statut='o',typ=table),
19919
19920          SENSIBILITE     =SIMP(statut='f',typ=(para_sensi,theta_geom),
19921                                  fr="Paramètre de sensibilité.",
19922                                  ang="Sensitivity parameter"),
19923          FILTRE          =FACT(statut='f',max='**',
19924            NOM_PARA        =SIMP(statut='o',typ='TXM' ),
19925            CRIT_COMP       =SIMP(statut='f',typ='TXM',defaut="EQ",
19926                                  into=("EQ","LT","GT","NE","LE","GE","VIDE",
19927                                        "NON_VIDE","MAXI","ABS_MAXI","MINI","ABS_MINI") ),
19928            b_vale          =BLOC(condition = "(CRIT_COMP in ('EQ','NE','GT','LT','GE','LE'))",
19929               regles=(UN_PARMI('VALE','VALE_I','VALE_K','VALE_C',),),
19930               VALE            =SIMP(statut='f',typ='R' ),
19931               VALE_I          =SIMP(statut='f',typ='I' ),
19932               VALE_C          =SIMP(statut='f',typ='C' ),
19933               VALE_K          =SIMP(statut='f',typ='TXM' ),),
19934
19935            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
19936            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
19937          ),
19938          TYPE_TEST       =SIMP(statut='f',typ='TXM',into=("SOMM_ABS","SOMM","MAX","MIN") ),
19939          NOM_PARA        =SIMP(statut='o',typ='TXM' ),
19940          VALE            =SIMP(statut='f',typ='R' ),
19941          VALE_I          =SIMP(statut='f',typ='I' ),
19942          VALE_C          =SIMP(statut='f',typ='C' ),
19943          CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),
19944          PRECISION       =SIMP(statut='f',typ='R',defaut= 1.2E-3 ),
19945          REFERENCE       =SIMP(statut='f',typ='TXM',
19946                                into=("ANALYTIQUE","SOURCE_EXTERNE","NON_REGRESSION","AUTRE_ASTER") ),
19947          b_version       =BLOC(condition = "REFERENCE == 'NON_REGRESSION'",
19948              VERSION         =SIMP(statut='f',typ='TXM' ),
19949          INFO            =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
19950          ),
19951 )  ;
19952
19953 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
19954 #            CONFIGURATION MANAGEMENT OF EDF VERSION
19955 # ======================================================================
19956 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
19957 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
19958 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
19959 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
19960 # (AT YOUR OPTION) ANY LATER VERSION.                                 
19961 #
19962 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
19963 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
19964 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
19965 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
19966 #
19967 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
19968 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
19969 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
19970 # ======================================================================
19971 THER_LINEAIRE=OPER(nom="THER_LINEAIRE",op=25,sd_prod=evol_ther,docu="U4.54.01-g",reentrant='f',
19972             UIinfo={"groupes":("Résolution",)},
19973                    fr="Analyse thermique linéaire stationnaire ou transitoire",
19974          MODELE          =SIMP(statut='o',typ=modele),
19975          CHAM_MATER      =SIMP(statut='o',typ=cham_mater),
19976          CARA_ELEM       =SIMP(statut='f',typ=cara_elem),
19977          EXCIT           =FACT(statut='o',max='**',
19978            CHARGE          =SIMP(statut='o',typ=(char_ther,char_cine_ther)),
19979            FONC_MULT       =SIMP(statut='f',typ=(fonction,formule)),
19980          ),
19981          INCREMENT       =FACT(statut='f',
19982            LIST_INST       =SIMP(statut='o',typ=listr8 ),
19983            NUME_INIT       =SIMP(statut='f',typ='I'),
19984            NUME_FIN        =SIMP(statut='f',typ='I'),
19985          ),
19986          TEMP_INIT       =FACT(statut='f',
19987            regles=(EXCLUS('STATIONNAIRE','EVOL_THER','CHAM_NO','VALE'),),
19988            STATIONNAIRE    =SIMP(statut='f',typ='TXM',into=("OUI",) ),
19989            EVOL_THER       =SIMP(statut='f',typ=evol_ther),
19990            CHAM_NO         =SIMP(statut='f',typ=cham_no_temp_r),
19991            VALE            =SIMP(statut='f',typ='R'),
19992            NUME_INIT       =SIMP(statut='f',typ='I'),
19993          ),
19994          SENSIBILITE     =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**',
19995                                fr="Liste des paramètres de sensibilité.",
19996                                ang="List of sensitivity parameters",
19997          ),
19998            SENS_INIT       =FACT(statut='f',
19999              regles=(EXCLUS('STATIONNAIRE','EVOL_THER', ),),
20000              STATIONNAIRE    =SIMP(statut='f',typ='TXM',into=("OUI",) ),
20001              EVOL_THER       =SIMP(statut='f',typ=evol_ther),
20002              NUME_INIT       =SIMP(statut='f',typ='I'),
20003            ),
20004          SOLVEUR         =FACT(statut='d',
20005            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
20006            b_mult_front    =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
20007              RENUM           =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ),
20008            ),
20009            b_ldlt          =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT",
20010              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
20011            ),
20012            b_ldlt_mult      =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
20013                                    fr="Paramètres relatifs à la non inversibilité de la matrice à factorise",
20014              NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
20015              STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
20016            ),
20017            b_gcpc          =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué",
20018              PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ),
20019              NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ),
20020              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ),
20021              RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
20022              NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
20023            ),
20024          ),
20025          PARM_THETA      =SIMP(statut='f',typ='R',defaut= 0.57),
20026          ARCHIVAGE       =FACT(statut='f',
20027            regles=(UN_PARMI('LIST_ARCH','PAS_ARCH','LIST_INST','INST'),),
20028            LIST_ARCH       =SIMP(statut='f',typ=listis),
20029            LIST_INST       =SIMP(statut='f',typ=listr8),
20030            INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
20031            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),
20032            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",
20033                                  into=("RELATIF","ABSOLU")),
20034            PAS_ARCH        =SIMP(statut='f',typ='I'),
20035            CHAM_EXCLU      =SIMP(statut='f',typ='TXM',into=("VARI",)),
20036          ),
20037          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
20038          INFO            =SIMP(statut='f',typ='I',into=(1,2)),
20039 )  ;
20040
20041 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
20042 #            CONFIGURATION MANAGEMENT OF EDF VERSION
20043 # ======================================================================
20044 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
20045 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
20046 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
20047 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
20048 # (AT YOUR OPTION) ANY LATER VERSION.                                 
20049 #
20050 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
20051 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
20052 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
20053 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
20054 #
20055 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
20056 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
20057 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
20058 # ======================================================================
20059 THER_NON_LINE=OPER(nom="THER_NON_LINE",op= 186,sd_prod=evol_ther,docu="U4.54.02-e",reentrant='f',
20060             UIinfo={"groupes":("Résolution",)},
20061                    fr="Analyse thermique non linéaire stationnaire ou transitoire" ,
20062          MODELE          =SIMP(statut='o',typ=(modele) ),
20063          CHAM_MATER      =SIMP(statut='o',typ=(cham_mater) ),
20064          CARA_ELEM       =SIMP(statut='c',typ=(cara_elem) ),
20065          COMP_THER_NL    =FACT(statut='d',max='**',
20066            RELATION        =SIMP(statut='f',typ='TXM',defaut="THER_NL",
20067                                  into=("THER_NL",
20068                                        "THER_HYDR",
20069                                        "SECH_GRANGER",
20070                                        "SECH_MENSI",
20071                                        "SECH_BAZANT",
20072                                        "SECH_NAPPE"
20073                                        ) ),
20074       regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),),
20075            TOUT            =SIMP(statut='f',typ='TXM',into=("OUI",) ),
20076            GROUP_MA        =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),
20077            MAILLE          =SIMP(statut='f',typ=ma  ,validators=NoRepeat(),max='**'),
20078          ),
20079          EVOL_THER_SECH  =SIMP(statut='f',typ=evol_ther),
20080          EXCIT           =FACT(statut='o',max='**',
20081            CHARGE          =SIMP(statut='o',typ=char_ther),
20082            FONC_MULT       =SIMP(statut='f',typ=(fonction,formule)),
20083          ),
20084          INCREMENT       =FACT(statut='f',
20085            LIST_INST       =SIMP(statut='o',typ=listr8),
20086            NUME_INIT       =SIMP(statut='f',typ='I'),
20087            NUME_FIN        =SIMP(statut='f',typ='I'),
20088          ),
20089          TEMP_INIT       =FACT(statut='f',
20090            regles=(EXCLUS('STATIONNAIRE','EVOL_THER','CHAM_NO','VALE'),),
20091            STATIONNAIRE    =SIMP(statut='f',typ='TXM',into=("OUI",)),
20092            EVOL_THER       =SIMP(statut='f',typ=evol_ther),
20093            CHAM_NO         =SIMP(statut='f',typ=cham_no_temp_r),
20094            VALE            =SIMP(statut='f',typ='R'),
20095            NUME_INIT       =SIMP(statut='f',typ='I'),
20096          ),
20097          NEWTON          =FACT(statut='d',
20098            REAC_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
20099            RESI_LINE_RELA  =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),
20100            ITER_LINE_MAXI  =SIMP(statut='f',typ='I',defaut= 0 ),
20101          ),
20102          CONVERGENCE     =FACT(statut='d',
20103            RESI_GLOB_MAXI  =SIMP(statut='f',typ='R'),
20104            RESI_GLOB_RELA  =SIMP(statut='f',typ='R'),
20105            ITER_GLOB_MAXI  =SIMP(statut='f',typ='I',defaut= 10 ),
20106          ),
20107          SENSIBILITE     =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**',
20108                                fr="Liste des paramètres de sensibilité.",
20109                                ang="List of sensitivity parameters",
20110          ),
20111          SOLVEUR         =FACT(statut='d',
20112            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
20113            b_mult_front    =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Parametres de la méthode multi frontale",
20114              RENUM           =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ),
20115            ),
20116            b_ldlt          =BLOC(condition = "METHODE == 'LDLT' ",fr="Parametres de la méthode LDLT",
20117              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
20118            ),
20119            b_ldlt_mult     =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
20120                                    fr="Parametres relatifs a la non inversibilité de la matrice a factorise",
20121              NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
20122              STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
20123            ),
20124            b_gcpc          =BLOC(condition = "METHODE == 'GCPC' ", fr="Parametres de la méthode du gradient conjugué",
20125              PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ),
20126              NIVE_REMPLISSAGE=SIMP(statut='f',typ='I'  ,defaut= 0 ),
20127              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ),
20128              RESI_RELA       =SIMP(statut='f',typ='R'  ,defaut= 1.E-6 ),
20129              NMAX_ITER       =SIMP(statut='f',typ='I'  ,defaut= 0 ),
20130            ),
20131            SYME            =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ),
20132          ),
20133          PARM_THETA      =SIMP(statut='f',typ='R',defaut= 0.57 ),
20134          ARCHIVAGE       =FACT(statut='f',
20135            regles=(UN_PARMI('LIST_ARCH','PAS_ARCH','LIST_INST','INST', ),),
20136            LIST_ARCH       =SIMP(statut='f',typ=(listis) ),
20137            LIST_INST       =SIMP(statut='f',typ=(listr8) ),
20138            INST            =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'),
20139            PRECISION       =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),
20140            CRITERE         =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ),
20141            PAS_ARCH        =SIMP(statut='f',typ='I'),
20142            CHAM_EXCLU      =SIMP(statut='f',typ='TXM',into=("VARI",)),
20143          ),
20144          TITRE           =SIMP(statut='f',typ='TXM',max='**'),
20145          OPTION          =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=2,
20146                                into=("FLUX_ELGA_TEMP","FLUX_ELNO_TEMP") ),
20147          INFO            =SIMP(statut='f',typ='I',into=(1,2) ),
20148   
20149 )  ;
20150
20151 #& MODIF COMMANDE  DATE 09/09/2003   AUTEUR DURAND C.DURAND 
20152 #            CONFIGURATION MANAGEMENT OF EDF VERSION
20153 # ======================================================================
20154 # COPYRIGHT (C) 1991 - 2001  EDF R&D                  WWW.CODE-ASTER.ORG
20155 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
20156 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
20157 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR   
20158 # (AT YOUR OPTION) ANY LATER VERSION.                                 
20159 #
20160 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT 
20161 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF          
20162 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU    
20163 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                            
20164 #
20165 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE   
20166 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,       
20167 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.      
20168 # ======================================================================
20169 THER_NON_LINE_MO=OPER(nom="THER_NON_LINE_MO",op= 171,sd_prod=evol_ther,
20170                      fr="Thermique non lineaire en repere mobile",
20171                      docu="U4.54.03-c",reentrant='f',
20172             UIinfo={"groupes":("Résolution",)},
20173          MODELE          =SIMP(statut='o',typ=modele ),
20174          CHAM_MATER      =SIMP(statut='o',typ=cham_mater ),
20175          CARA_ELEM       =SIMP(statut='c',typ=cara_elem ),
20176          EXCIT           =FACT(statut='o',max='**',
20177            CHARGE          =SIMP(statut='o',typ=char_ther ),
20178            FONC_MULT       =SIMP(statut='c',typ=(fonction,formule) ),
20179          ),
20180          TEMP_INIT       =FACT(statut='f',
20181            EVOL_THER       =SIMP(statut='f',typ=evol_ther ),
20182            NUME_INIT       =SIMP(statut='f',typ='I',defaut= 0 ),
20183          ),
20184          CONVERGENCE     =FACT(statut='d',
20185            CRIT_TEMP_RELA  =SIMP(statut='f',typ='R',defaut= 1.E-3 ),
20186            CRIT_ENTH_RELA  =SIMP(statut='f',typ='R',defaut= 1.E-2 ),
20187            ITER_GLOB_MAXI  =SIMP(statut='f',typ='I',defaut= 10 ),
20188            ARRET           =SIMP(statut='c',typ='TXM',defaut="OUI",into=("OUI","NON") ),
20189          ),
20190          SOLVEUR         =FACT(statut='d',
20191            METHODE         =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
20192            b_mult_front    =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale",
20193              RENUM           =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ),
20194            ),
20195            b_ldlt          =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT",
20196              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ),
20197            ),
20198            b_ldlt_mult     =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ",
20199                                    fr="Paramètres relatifs à la non inversibilité de la matrice à factorise",
20200              NPREC           =SIMP(statut='f',typ='I',defaut= 8 ),
20201              STOP_SINGULIER  =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ),
20202            ),
20203            b_gcpc          =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué",
20204              PRE_COND        =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ),
20205              NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ),
20206              RENUM           =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ),
20207              RESI_RELA       =SIMP(statut='f',typ='R',defaut= 1.E-6 ),
20208              NMAX_ITER       =SIMP(statut='f',typ='I',defaut= 0 ),
20209            ),
20210            SYME            =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
20211          ),
20212          TITRE           =SIMP(statut='f',typ='TXM',max='**' ),
20213          INFO            =SIMP(statut='f',typ='I',into=(1,2) ),
20214 )  ;
20215
20216
20217
20218