1 # -*- coding: utf-8 -*-
12 JdC = JDC_CATA(code='SATURNE',
17 # remarques diverses sur le catalogue Saturne
18 # - dans les blocs, il faut au moins un mot clé de statut obligatoire
19 # probleme de rafraichissement des blocs dépendants quand la valeur d'un mot cle global (ITURB) passe de 1 à 0
21 # Type le plus general
22 class entier (ASSD):pass
23 class reel (ASSD):pass
24 class complexe(ASSD):pass
25 class liste (ASSD):pass
26 class chaine (ASSD):pass
35 class sonde(ASSD):pass
36 class varsca(ASSD):pass
37 class flusca(ASSD):pass
38 class varpre(ASSD):pass
39 class varvitx(ASSD):pass
40 class varvity(ASSD):pass
41 class varvitz(ASSD):pass
42 class eturb(ASSD):pass
43 class dturb(ASSD):pass
44 class tsr11(ASSD):pass
45 class tsr22(ASSD):pass
46 class tsr33(ASSD):pass
47 class tsr12(ASSD):pass
48 class tsr13(ASSD):pass
49 class tsr23(ASSD):pass
50 class resti(ASSD):pass
52 class maillage(ASSD):pass
53 class modele(ASSD):pass
54 class matr_asse(ASSD):pass
55 class cham_elem_sief_r(ASSD):pass
56 class theta_geom(ASSD):pass
57 class cham_mater(ASSD):pass
58 class cara_elem(ASSD):pass
59 class char_ther(ASSD):pass
60 class char_meca(ASSD):pass
61 class nume_ddl(ASSD):pass
62 class char_acou(ASSD):pass
63 class listr8 (ASSD):pass
64 class matr_elem(ASSD):pass
65 class matr_elem_depl_c(matr_elem):pass
66 class matr_elem_depl_r(matr_elem):pass
67 class matr_elem_pres_c(matr_elem):pass
68 class matr_elem_temp_r(matr_elem):pass
69 class mater (ASSD):pass
73 #--------------------------------
74 class para_sensi(fonction):pass
75 class fonction_c(fonction):pass
78 #--------------------------------
79 class matr_asse(ASSD):pass
80 class matr_asse_depl_c(matr_asse):pass
81 class matr_asse_depl_r(matr_asse):pass
82 class matr_asse_gene_r(matr_asse):pass
83 class matr_asse_gene_c(matr_asse):pass
84 class matr_asse_pres_c(matr_asse):pass
85 class matr_asse_pres_r(matr_asse):pass
86 class matr_asse_temp_c(matr_asse):pass
87 class matr_asse_temp_r(matr_asse):pass
92 INCLUDE=MACRO(nom="INCLUDE",op=-1,docu="U4.13.01-e",
93 fr="Débranchement vers un fichier de commandes secondaires",
94 sd_prod=ops.INCLUDE,op_init=ops.INCLUDE_context,fichier_ini=1,
95 UNITE = SIMP(statut='o',typ='I'),
96 INFO = SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
99 POURSUITE=MACRO(nom="POURSUITE",op=0,repetable='n',fr="Poursuite d une étude",
100 docu="U4.11.03-f1",sd_prod = ops.POURSUITE,
101 op_init = ops.POURSUITE_context,fichier_ini = 1,
102 HDF =FACT(statut='f',min=1,max=1,
103 FICHIER =SIMP(fr="nom du fichier hdf associe",statut='o',typ='TXM'),
105 PAR_LOT =SIMP(fr="mode de traitement des commandes",statut='f',typ='TXM',
106 into=("OUI","NON"),defaut="OUI"),
107 BASE =FACT(fr="définition des parmètres associés aux bases JEVEUX",
108 statut='f',min=1,max=3,
109 FICHIER =SIMP(fr="nom de la base",statut='o',typ='TXM'),
110 TITRE =SIMP(statut='f',typ='TXM'),
111 CAS =SIMP(statut='f',typ='TXM'),
112 NMAX_ENRE =SIMP(fr="nombre maximum d enregistrements",statut='f',typ='I'),
113 LONG_ENRE =SIMP(fr="longueur des enregistrements",statut='f',typ='I'),
114 LONG_REPE =SIMP(fr="longueur du répertoire",statut='f',typ='I'),
116 IMPRESSION =FACT(statut='f',min=1,max=3,
117 FICHIER =SIMP(statut='o',typ='TXM'),
118 UNITE =SIMP(statut='o',typ='I'),
120 CATALOGUE =FACT(statut='f',min=1,max=10,
121 FICHIER =SIMP(statut='o',typ='TXM'),
122 TITRE =SIMP(statut='f',typ='TXM'),
123 UNITE =SIMP(statut='f',typ='I'),
125 DEBUG =FACT(fr="option de déboggage reservée aux développeurs",
126 statut='f',min=1,max=1,
127 JXVERI =SIMP(fr="vérifie l intégrité de la segmentation mémoire",
128 statut='f',typ='TXM',into=('OUI','NON'),defaut='NON'),
129 JEVEUX =SIMP(fr="force les déchargement sur disque",
130 statut='f',typ='TXM',into=('OUI','NON'),defaut='NON'),
131 ENVIMA =SIMP(fr="imprime les valeurs définies dans ENVIMA",
132 statut='f',typ='TXM',into=('TES',)),
134 MEMOIRE =FACT(fr="mode de gestion mémoire utilisé",statut='f',min=1,max=1,
135 GESTION =SIMP(statut='f',typ='TXM',into=('COMPACTE','RAPIDE'),defaut='RAPIDE'),
136 TYPE_ALLOCATION =SIMP(statut='f',typ='I',into=(1,2,3,4),defaut=1),
137 TAILLE =SIMP(statut='f',typ='I'),
138 TAILLE_BLOC =SIMP(statut='f',typ='R',defaut=800.),
139 PARTITION =SIMP(statut='f',typ='R' ),
141 CODE =FACT("définition d un nom pour l'esemble d'une étude",
142 statut='f',min=1,max=1,
143 NOM =SIMP(statut='o',typ='TXM'),
144 UNITE =SIMP(statut='f',typ='I',defaut=15),
148 FORMULE = FORM( nom='FORMULE',op=-5,sd_prod=fonction,
149 fr="Définition d une fonction",reentrant = 'n',
150 regles=(UN_PARMI('REEL','ENTIER','COMPLEXE'),),
151 REEL = SIMP(typ = 'shell',max=1),
152 ENTIER = SIMP(typ = 'shell',max=1),
153 COMPLEXE = SIMP(typ = 'shell',max=1),
156 AFFE_MODELE=OPER(nom="AFFE_MODELE",op=18,sd_prod=modele,docu="U4.41.01-f1",
157 fr="Affectation des éléments finis sur le maillage",reentrant='n',
158 MAILLAGE =SIMP(statut='o',typ=(maillage) ),
159 INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ),
160 VERIF =SIMP(statut='f',typ='TXM',max=2,into=("MAILLE","NOEUD") ),
162 NUME_DDL=OPER(nom="NUME_DDL",op=11,sd_prod=nume_ddl,docu="U4.61.11-f",reentrant='n',
163 fr="Etablissement de la numérotation des ddl avec ou sans renumérotation et du stockage de la matrice",
164 MATR_RIGI =SIMP(statut='f',typ=(matr_elem_depl_r ,matr_elem_depl_c,
165 matr_elem_temp_r,matr_elem_pres_c),max=100 ),
166 MODELE =SIMP(statut='f',typ=modele ),
167 b_modele =BLOC(condition = "MODELE != None",
168 CHARGE =SIMP(statut='f',max='**',typ=(char_meca,char_ther,char_acou, ),),
170 METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ),
171 b_mult_front =BLOC(condition="METHODE=='MULT_FRONT'",fr="paramètres associés à la méthode multifrontale",
172 RENUM =SIMP(statut='f',typ='TXM',into=("MD","MDA","METIS"),defaut="METIS" ),
174 b_ldlt =BLOC(condition="METHODE=='LDLT'",fr="paramètres associés à la méthode LDLT",
175 RENUM =SIMP(statut='f',typ='TXM',into=("RCMK","SANS"),defaut="RCMK" ),
177 b_gcpc =BLOC(condition="METHODE=='GCPC'",fr="paramètres associés à la méthode gradient conjugué",
178 RENUM =SIMP(statut='f',typ='TXM',into=("RCMK","SANS"),defaut="RCMK" ),
180 INFO =SIMP(statut='f',typ='I',into=(1,2)),
183 DEFI_SONDE = OPER(nom="DEFI_SONDE",op= 1,sd_prod=sonde,
185 fr="définition d'une sonde historique avec ses coordonnées",
186 X = SIMP(statut ='o',typ='R',
187 fr="coordonnée X de la sonde"),
188 Y = SIMP(statut ='o',typ='R',
189 fr="coordonnée Y de la sonde"),
190 Z = SIMP(statut ='o',typ='R',
191 fr="coordonnée Z de la sonde")
194 def defi_scala_prod(**args):
197 DEFI_SCALA = OPER(nom="DEFI_SCALA",op=2,sd_prod=defi_scala_prod,
198 fr="définition d'une inconnue scalaire avec ses paramètres physico numériques",
199 NUMERIC = FACT(statut='o',max=01,
200 fr="propriétés numériques liées à l'inconnue",
201 ICONV = SIMP(statut='o',typ='I',defaut=1,into=(0,1),
202 fr="indicateur de convection"),
203 ISTAT = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
204 fr="présence terme instationnaire dans les matrices"),
205 IDIFF = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
207 IDIRCL = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
208 fr="décalage du spectre des valeurs propres en l'absence de Dirichlet"),
209 SCHEMA_CONVECTIF = BLOC(condition="ICONV == 1", fr ="ordre du schéma convectif",
210 BLENCV = SIMP(statut='o',typ='R',defaut=0,val_min=0,val_max=1,
211 fr="pourcentage schéma convectif au second ordre"),
212 ISCHCV = SIMP(statut='f',typ='I',defaut=0,into=(0,1),
213 fr ="type schéma convectif au second ordre 1 : centré")
215 NITMAX = SIMP(statut='f',typ='I',defaut=10000,val_min=0,
216 fr="nombre max d'itération pour la résolution des systèmes linéaires"),
217 EPSILO = SIMP(statut='f',typ='R',defaut=1.e-4,val_min=0,
218 fr="précision relative pour la résolution des systèmes linéaires"),
219 IMLIGR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,-1,0,1),
220 fr="type de limitation des gradients"),
221 NSWRGR = SIMP(statut='f',typ='I',defaut=100,val_min=0,
222 fr="reconstruction des gradients"),
223 NSWRSM = SIMP(statut='f',typ='I',defaut=2,val_min=0,
224 fr="nombre d'itérations pour la reconstruction des seconds membres"),
225 CLIMGR = SIMP(statut='f',typ='R',defaut=1.5,val_min=0,
226 fr="facteur de limitation des gradients"),
227 EPSRGR = SIMP(statut='f',typ='R',defaut=1.e-5,val_min=0,
228 fr="précision relative pour la reconstruction itérative des gradients")
230 RESTITUE = FACT(statut='o',max=01,
231 fr = "Description de la grandeur restituée",
232 NOMVAR = SIMP(statut='o',typ='TXM',fr = "nom de la grandeur restituée"),
233 ICHRVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
234 fr = "post-traitement (-999 : le code décide ; 0 : non ; 1 : oui)"),
235 ILISVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
236 fr = "impression dans CR exécution (-999 : le code décide ; 0 : non ; 1 : oui)"),
237 IHISVR = SIMP(statut='f',typ=sonde,min=0,max='**',
238 fr = "inventaire des sondes utilisées pour la grandeur scalaire")
240 MODELE = FACT(statut='o',max=01,
242 VALREF = SIMP(statut='o',typ='R',fr="valeur de référence (température, masse volumique...)"),
243 SCAMIN = SIMP(statut='f',typ='R',defaut=1.e12,fr="valeur minimale pour le scalaire"),
244 SCAMAX = SIMP(statut='f',typ='R',defaut=-1.e12,fr="valeur maximale pour le scalaire"),
245 SIGMAS = SIMP(statut='f',typ='R',val_min=0,defaut=1,fr="nombre de Prandtl pour le scalaire"),
246 VISLS0 = SIMP(statut='o',typ='R',fr="valeur de référence de la viscosité associée au scalaire"),
247 IVISLS = SIMP(statut='f',typ='I',defaut=0,into=(0,1),fr="viscosité variable")
251 DEFI_FLUSCA = OPER(nom="DEFI_FLUSCA",op=2,sd_prod=flusca,fr="définition des fluctuations d'une inconnue scalaire avec ses paramètres physico numériques",
252 VARFL = SIMP(statut='o',typ=varsca,fr="scalaire associé au calcul de la variance des fluctuations"),
253 NUMERIC = FACT(statut='o',max=01,
254 fr="propriétés numériques liées à l'inconnue",
255 ICONV = SIMP(statut='o',typ='I',defaut=1,into=(0,1),
256 fr="indicateur de convection"),
257 ISTAT = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
258 fr="présence terme instationnaire dans les matrices"),
259 IDIFF = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
261 IDIRCL = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
262 fr="décalage du spectre des valeurs propres en l'absence de Dirichlet"),
263 SCHEMA_CONVECTIF = BLOC(condition="ICONV == 1", fr ="ordre du schéma convectif",
264 BLENCV = SIMP(statut='o',typ='R',defaut=0,val_min=0,val_max=1,
265 fr="pourcentage schéma convectif au second ordre"),
266 ISCHCV = SIMP(statut='f',typ='I',defaut=0,into=(0,1),
267 fr ="type schéma convectif au second ordre 1 : centré")
269 NITMAX = SIMP(statut='f',typ='I',defaut=10000,val_min=0,
270 fr="nombre max d'itération pour la résolution des systèmes linéaires"),
271 EPSILO = SIMP(statut='f',typ='R',defaut=1.e-4,val_min=0,
272 fr="précision relative pour la résolution des systèmes linéaires"),
273 IMLIGR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,-1,0,1),
274 fr="type de limitation des gradients"),
275 NSWRGR = SIMP(statut='f',typ='I',defaut=100,val_min=0,
276 fr="reconstruction des gradients"),
277 NSWRSM = SIMP(statut='f',typ='I',defaut=2,val_min=0,
278 fr="nombre d'itérations pour la reconstruction des seconds membres"),
279 CLIMGR = SIMP(statut='f',typ='R',defaut=1.5,val_min=0,
280 fr="facteur de limitation des gradients"),
281 EPSRGR = SIMP(statut='f',typ='R',defaut=1.e-5,val_min=0,
282 fr="précision relative pour la reconstruction itérative des gradients")
284 RESTITUE = FACT(statut='o',max=01,
285 fr = "Description de la grandeur restituée",
286 NOMVAR = SIMP(statut='o',typ='TXM',fr = "nom de la grandeur restituée"),
287 ICHRVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
288 fr = "post-traitement (-999 : le code décide ; 0 : non ; 1 : oui)"),
289 ILISVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
290 fr = "impression dans CR exécution (-999 : le code décide ; 0 : non ; 1 : oui)"),
291 IHISVR = SIMP(statut='f',typ=sonde,min=0,max='**',
292 fr = "inventaire des sondes utilisées pour la grandeur scalaire")
294 MODELE = FACT(statut='o',max=01,
296 VALREF = SIMP(statut='o',typ='R',fr="valeur de référence (température, masse volumique...)"),
297 SCAMIN = SIMP(statut='f',typ='R',defaut=1.e12,fr="valeur minimale pour le scalaire"),
298 SCAMAX = SIMP(statut='f',typ='R',defaut=-1.e12,fr="valeur maximale pour le scalaire"),
299 SIGMAS = SIMP(statut='f',typ='R',val_min=0,defaut=1,fr="nombre de Prandtl pour le scalaire"),
300 VISLS0 = SIMP(statut='o',typ='R',fr="valeur de référence de la viscosité associée au scalaire"),
301 IVISLS = SIMP(statut='f',typ='I',defaut=0,into=(0,1),fr="viscosité variable"),
302 RVARFL = SIMP(statut='o',typ='R',val_min=0,defaut=0.8,
303 fr="nombre de Prandtl pour la variance des fluctuations du scalaire")
307 DEFI_PRESSION = OPER(nom="DEFI_PRESSION",op=2,sd_prod=varpre,fr="définition del'inconnue pression avec ses paramètres physico numériques",
308 NUMERIC = FACT(statut='o',max=01,
309 fr="propriétés de l'équation de pression",
310 ICONV = SIMP(statut='o',typ='I',defaut=0,into=(0,1),
311 fr="indicateur de convection"),
312 ISTAT = SIMP(statut='f',typ='I',defaut=0,into=(0,1),
313 fr="présence terme instationnaire dans les matrices"),
314 IDIFF = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
316 IDIRCL = SIMP(statut='f',typ='I',defaut=0,into=(0,1),
317 fr="décalage du spectre des valeurs propres en l'absence de Dirichlet"),
318 SCHEMA_CONVECTIF = BLOC(condition="ICONV == 1", fr ="ordre du schéma convectif",
319 BLENCV = SIMP(statut='o',typ='R',defaut=0,val_min=0,val_max=1,
320 fr="pourcentage schéma convectif au second ordre"),
321 ISCHCV = SIMP(statut='f',typ='I',defaut=0,into=(0,1),
322 fr ="type schéma convectif au second ordre 1 : centré")
324 NITMAX = SIMP(statut='f',typ='I',defaut=10000,val_min=0,
325 fr="nombre max d'itération pour la résolution des systèmes linéaires"),
326 EPSILO = SIMP(statut='f',typ='R',defaut=1.e-4,val_min=0,
327 fr="précision relative pour la résolution des systèmes linéaires"),
328 IMLIGR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,-1,0,1),
329 fr="type de limitation des gradients"),
330 NSWRGR = SIMP(statut='f',typ='I',defaut=100,val_min=0,
331 fr="reconstruction des gradients"),
332 NSWRSM = SIMP(statut='f',typ='I',defaut=2,val_min=0,
333 fr="nombre d'itérations pour la reconstruction des seconds membres"),
334 CLIMGR = SIMP(statut='f',typ='R',defaut=1.5,val_min=0,
335 fr="facteur de limitation des gradients"),
336 EPSRGR = SIMP(statut='f',typ='R',defaut=1.e-5,val_min=0,
337 fr="précision relative pour la reconstruction itérative des gradients")
339 RESTITUE = FACT(statut='o',max=01,
340 fr = "Description de la grandeur restituée",
341 NOMVAR = SIMP(statut='o',typ='TXM',fr = "nom de la grandeur restituée",
343 ICHRVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
344 fr = "post-traitement (-999 : le code décide ; 0 : non ; 1 : oui)"),
345 ILISVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
346 fr = "impression dans CR exécution (-999 : le code décide ; 0 : non ; 1 : oui)"),
347 IHISVR = SIMP(statut='f',typ=sonde,min=0,max='**',
348 fr = "inventaire des sondes utilisées pour la grandeur")
350 MODELE = FACT(statut='o',max=01,
352 VALREF = SIMP(statut='o',typ='R',fr="valeur de référence (température, masse volumique...)"),
353 SCAMIN = SIMP(statut='f',typ='R',defaut=1.e12,fr="valeur minimale pour la grandeur"),
354 SCAMAX = SIMP(statut='f',typ='R',defaut=-1.e12,fr="valeur maximale pour la grandeur"),
355 SIGMAS = SIMP(statut='f',typ='R',val_min=0,defaut=1,fr="nombre de Prandtl pour la grandeur"),
356 VISLS0 = SIMP(statut='o',typ='R',fr="valeur de référence de la viscosité associée à la grandeur"),
357 IVISLS = SIMP(statut='f',typ='I',defaut=0,into=(0,1),fr="viscosité variable")
361 DEFI_VITX = OPER(nom="DEFI_VITX",op=2,sd_prod=varvitx,fr="définition de l'inconnue vitesse X avec ses paramètres physico numériques",
362 NUMERIC = FACT(statut='o',max=01,
363 fr="propriétés de l'équation de vitesse X",
364 ICONV = SIMP(statut='o',typ='I',defaut=1,into=(0,1),
365 fr="indicateur de convection"),
366 ISTAT = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
367 fr="présence terme instationnaire dans les matrices"),
368 IDIFF = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
370 IDIRCL = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
371 fr="décalage du spectre des valeurs propres en l'absence de Dirichlet"),
372 SCHEMA_CONVECTIF = BLOC(condition="ICONV == 1", fr ="ordre du schéma convectif",
373 BLENCV = SIMP(statut='o',typ='R',defaut=0,val_min=0,val_max=1,
374 fr="pourcentage schéma convectif au second ordre"),
375 ISCHCV = SIMP(statut='f',typ='I',defaut=0,into=(0,1),
376 fr ="type schéma convectif au second ordre 1 : centré")
378 NITMAX = SIMP(statut='f',typ='I',defaut=10000,val_min=0,
379 fr="nombre max d'itération pour la résolution des systèmes linéaires"),
380 EPSILO = SIMP(statut='f',typ='R',defaut=1.e-4,val_min=0,
381 fr="précision relative pour la résolution des systèmes linéaires"),
382 IMLIGR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,-1,0,1),
383 fr="type de limitation des gradients"),
384 NSWRGR = SIMP(statut='f',typ='I',defaut=100,val_min=0,
385 fr="reconstruction des gradients"),
386 NSWRSM = SIMP(statut='f',typ='I',defaut=2,val_min=0,
387 fr="nombre d'itérations pour la reconstruction des seconds membres"),
388 CLIMGR = SIMP(statut='f',typ='R',defaut=1.5,val_min=0,
389 fr="facteur de limitation des gradients"),
390 EPSRGR = SIMP(statut='f',typ='R',defaut=1.e-5,val_min=0,
391 fr="précision relative pour la reconstruction itérative des gradients")
393 RESTITUE = FACT(statut='o',max=01,
394 fr = "Description de la grandeur restituée",
395 NOMVAR = SIMP(statut='o',typ='TXM',fr = "nom de la grandeur restituée",
396 defaut="vitesse_u1"),
397 ICHRVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
398 fr = "post-traitement (-999 : le code décide ; 0 : non ; 1 : oui)"),
399 ILISVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
400 fr = "impression dans CR exécution (-999 : le code décide ; 0 : non ; 1 : oui)"),
401 IHISVR = SIMP(statut='f',typ=sonde,min=0,max='**',
402 fr = "inventaire des sondes utilisées pour la grandeur")
404 MODELE = FACT(statut='o',max=01,
406 VALREF = SIMP(statut='o',typ='R',fr="valeur de référence (température, masse volumique...)"),
407 SCAMIN = SIMP(statut='f',typ='R',defaut=1.e12,fr="valeur minimale pour la grandeur"),
408 SCAMAX = SIMP(statut='f',typ='R',defaut=-1.e12,fr="valeur maximale pour la grandeur"),
409 SIGMAS = SIMP(statut='f',typ='R',val_min=0,defaut=1,fr="nombre de Prandtl pour la grandeur"),
410 VISLS0 = SIMP(statut='o',typ='R',fr="valeur de référence de la viscosité associée à la grandeur"),
411 IVISLS = SIMP(statut='f',typ='I',defaut=0,into=(0,1),fr="viscosité variable")
415 DEFI_VITY = OPER(nom="DEFI_VITY",op=2,sd_prod=varvity,fr="définition de l'inconnue vitesse Y avec ses paramètres physico numériques",
416 NUMERIC = FACT(statut='o',max=01,
417 fr="propriétés de l'équation de vitesse Y",
418 ICONV = SIMP(statut='o',typ='I',defaut=1,into=(0,1),
419 fr="indicateur de convection"),
420 ISTAT = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
421 fr="présence terme instationnaire dans les matrices"),
422 IDIFF = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
424 IDIRCL = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
425 fr="décalage du spectre des valeurs propres en l'absence de Dirichlet"),
426 SCHEMA_CONVECTIF = BLOC(condition="ICONV == 1", fr ="ordre du schéma convectif",
427 BLENCV = SIMP(statut='o',typ='R',defaut=0,val_min=0,val_max=1,
428 fr="pourcentage schéma convectif au second ordre"),
429 ISCHCV = SIMP(statut='f',typ='I',defaut=0,into=(0,1),
430 fr ="type schéma convectif au second ordre 1 : centré")
432 NITMAX = SIMP(statut='f',typ='I',defaut=10000,val_min=0,
433 fr="nombre max d'itération pour la résolution des systèmes linéaires"),
434 EPSILO = SIMP(statut='f',typ='R',defaut=1.e-4,val_min=0,
435 fr="précision relative pour la résolution des systèmes linéaires"),
436 IMLIGR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,-1,0,1),
437 fr="type de limitation des gradients"),
438 NSWRGR = SIMP(statut='f',typ='I',defaut=100,val_min=0,
439 fr="reconstruction des gradients"),
440 NSWRSM = SIMP(statut='f',typ='I',defaut=2,val_min=0,
441 fr="nombre d'itérations pour la reconstruction des seconds membres"),
442 CLIMGR = SIMP(statut='f',typ='R',defaut=1.5,val_min=0,
443 fr="facteur de limitation des gradients"),
444 EPSRGR = SIMP(statut='f',typ='R',defaut=1.e-5,val_min=0,
445 fr="précision relative pour la reconstruction itérative des gradients")
447 RESTITUE = FACT(statut='o',max=01,
448 fr = "Description de la grandeur restituée",
449 NOMVAR = SIMP(statut='o',typ='TXM',fr = "nom de la grandeur restituée",
450 defaut="vitesse_v1"),
451 ICHRVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
452 fr = "post-traitement (-999 : le code décide ; 0 : non ; 1 : oui)"),
453 ILISVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
454 fr = "impression dans CR exécution (-999 : le code décide ; 0 : non ; 1 : oui)"),
455 IHISVR = SIMP(statut='f',typ=sonde,min=0,max='**',
456 fr = "inventaire des sondes utilisées pour la grandeur")
458 MODELE = FACT(statut='o',max=01,
460 VALREF = SIMP(statut='o',typ='R',fr="valeur de référence (température, masse volumique...)"),
461 SCAMIN = SIMP(statut='f',typ='R',defaut=1.e12,fr="valeur minimale pour la grandeur"),
462 SCAMAX = SIMP(statut='f',typ='R',defaut=-1.e12,fr="valeur maximale pour la grandeur"),
463 SIGMAS = SIMP(statut='f',typ='R',val_min=0,defaut=1,fr="nombre de Prandtl pour la grandeur"),
464 VISLS0 = SIMP(statut='o',typ='R',fr="valeur de référence de la viscosité associée à la grandeur"),
465 IVISLS = SIMP(statut='f',typ='I',defaut=0,into=(0,1),fr="viscosité variable")
469 DEFI_VITZ = OPER(nom="DEFI_VITZ",op=2,sd_prod=varvitz,fr="définition de l'inconnue vitesse Z avec ses paramètres physico numériques",
470 NUMERIC = FACT(statut='o',max=01,
471 fr="propriétés de l'équation de vitesse Z",
472 ICONV = SIMP(statut='o',typ='I',defaut=1,into=(0,1),
473 fr="indicateur de convection"),
474 ISTAT = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
475 fr="présence terme instationnaire dans les matrices"),
476 IDIFF = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
478 IDIRCL = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
479 fr="décalage du spectre des valeurs propres en l'absence de Dirichlet"),
480 SCHEMA_CONVECTIF = BLOC(condition="ICONV == 1", fr ="ordre du schéma convectif",
481 BLENCV = SIMP(statut='o',typ='R',defaut=0,val_min=0,val_max=1,
482 fr="pourcentage schéma convectif au second ordre"),
483 ISCHCV = SIMP(statut='f',typ='I',defaut=0,into=(0,1),
484 fr ="type schéma convectif au second ordre 1 : centré")
486 NITMAX = SIMP(statut='f',typ='I',defaut=10000,val_min=0,
487 fr="nombre max d'itération pour la résolution des systèmes linéaires"),
488 EPSILO = SIMP(statut='f',typ='R',defaut=1.e-4,val_min=0,
489 fr="précision relative pour la résolution des systèmes linéaires"),
490 IMLIGR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,-1,0,1),
491 fr="type de limitation des gradients"),
492 NSWRGR = SIMP(statut='f',typ='I',defaut=100,val_min=0,
493 fr="reconstruction des gradients"),
494 NSWRSM = SIMP(statut='f',typ='I',defaut=2,val_min=0,
495 fr="nombre d'itérations pour la reconstruction des seconds membres"),
496 CLIMGR = SIMP(statut='f',typ='R',defaut=1.5,val_min=0,
497 fr="facteur de limitation des gradients"),
498 EPSRGR = SIMP(statut='f',typ='R',defaut=1.e-5,val_min=0,
499 fr="précision relative pour la reconstruction itérative des gradients")
501 RESTITUE = FACT(statut='o',max=01,
502 fr = "Description de la grandeur restituée",
503 NOMVAR = SIMP(statut='o',typ='TXM',fr = "nom de la grandeur restituée",
504 defaut="vitesse_w1"),
505 ICHRVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
506 fr = "post-traitement (-999 : le code décide ; 0 : non ; 1 : oui)"),
507 ILISVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
508 fr = "impression dans CR exécution (-999 : le code décide ; 0 : non ; 1 : oui)"),
509 IHISVR = SIMP(statut='f',typ=sonde,min=0,max='**',
510 fr = "inventaire des sondes utilisées pour la grandeur")
512 MODELE = FACT(statut='o',max=01,
514 VALREF = SIMP(statut='o',typ='R',fr="valeur de référence (température, masse volumique...)"),
515 SCAMIN = SIMP(statut='f',typ='R',defaut=1.e12,fr="valeur minimale pour la grandeur"),
516 SCAMAX = SIMP(statut='f',typ='R',defaut=-1.e12,fr="valeur maximale pour la grandeur"),
517 SIGMAS = SIMP(statut='f',typ='R',val_min=0,defaut=1,fr="nombre de Prandtl pour la grandeur"),
518 VISLS0 = SIMP(statut='o',typ='R',fr="valeur de référence de la viscosité associée à la grandeur"),
519 IVISLS = SIMP(statut='f',typ='I',defaut=0,into=(0,1),fr="viscosité variable"),
524 DEFI_ETURB = OPER(nom="DEFI_ETURB",op=2,sd_prod=eturb,fr="définition de l'inconnue energie turbulente k-eps avec ses paramètres physico numériques",
525 NUMERIC = FACT(statut='o',max=01,
526 fr="propriétés numériques liées à l'inconnue",
527 ICONV = SIMP(statut='o',typ='I',defaut=1,into=(0,1),
528 fr="indicateur de convection"),
529 ISTAT = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
530 fr="présence terme instationnaire dans les matrices"),
531 IDIFF = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
533 IDIRCL = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
534 fr="décalage du spectre des valeurs propres en l'absence de Dirichlet"),
535 SCHEMA_CONVECTIF = BLOC(condition="ICONV == 1", fr ="ordre du schéma convectif",
536 BLENCV = SIMP(statut='o',typ='R',defaut=0,val_min=0,val_max=1,
537 fr="pourcentage schéma convectif au second ordre"),
538 ISCHCV = SIMP(statut='f',typ='I',defaut=0,into=(0,1),
539 fr ="type schéma convectif au second ordre 1 : centré")
541 NITMAX = SIMP(statut='f',typ='I',defaut=10000,val_min=0,
542 fr="nombre max d'itération pour la résolution des systèmes linéaires"),
543 EPSILO = SIMP(statut='f',typ='R',defaut=1.e-4,val_min=0,
544 fr="précision relative pour la résolution des systèmes linéaires"),
545 IMLIGR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,-1,0,1),
546 fr="type de limitation des gradients"),
547 NSWRGR = SIMP(statut='f',typ='I',defaut=100,val_min=0,
548 fr="reconstruction des gradients"),
549 NSWRSM = SIMP(statut='f',typ='I',defaut=2,val_min=0,
550 fr="nombre d'itérations pour la reconstruction des seconds membres"),
551 CLIMGR = SIMP(statut='f',typ='R',defaut=1.5,val_min=0,
552 fr="facteur de limitation des gradients"),
553 EPSRGR = SIMP(statut='f',typ='R',defaut=1.e-5,val_min=0,
554 fr="précision relative pour la reconstruction itérative des gradients")
556 RESTITUE = FACT(statut='o',max=01,
557 fr = "Description de la grandeur restituée",
558 NOMVAR = SIMP(statut='o',typ='TXM',fr = "nom de la grandeur restituée"),
559 ICHRVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
560 fr = "post-traitement (-999 : le code décide ; 0 : non ; 1 : oui)"),
561 ILISVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
562 fr = "impression dans CR exécution (-999 : le code décide ; 0 : non ; 1 : oui)"),
563 IHISVR = SIMP(statut='f',typ=sonde,min=0,max='**',
564 fr = "inventaire des sondes utilisées pour la grandeur scalaire")
566 MODELE = FACT(statut='o',max=01,
568 VALREF = SIMP(statut='o',typ='R',fr="valeur de référence (température, masse volumique...)"),
569 SCAMIN = SIMP(statut='f',typ='R',defaut=1.e12,fr="valeur minimale pour le scalaire"),
570 SCAMAX = SIMP(statut='f',typ='R',defaut=-1.e12,fr="valeur maximale pour le scalaire"),
571 SIGMAS = SIMP(statut='f',typ='R',val_min=0,defaut=1,fr="nombre de Prandtl pour le scalaire"),
572 VISLS0 = SIMP(statut='o',typ='R',fr="valeur de référence de la viscosité associée au scalaire"),
573 IVISLS = SIMP(statut='f',typ='I',defaut=0,into=(0,1),fr="viscosité variable")
577 DEFI_DTURB = OPER(nom="DEFI_DTURB",op=2,sd_prod=dturb,fr="définition de l'inconnue dissipation turbulente k-eps avec ses paramètres physico numériques",
578 NUMERIC = FACT(statut='o',max=01,
579 fr="propriétés numériques liées à l'inconnue",
580 ICONV = SIMP(statut='o',typ='I',defaut=1,into=(0,1),
581 fr="indicateur de convection"),
582 ISTAT = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
583 fr="présence terme instationnaire dans les matrices"),
584 IDIFF = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
586 IDIRCL = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
587 fr="décalage du spectre des valeurs propres en l'absence de Dirichlet"),
588 SCHEMA_CONVECTIF = BLOC(condition="ICONV == 1", fr ="ordre du schéma convectif",
589 BLENCV = SIMP(statut='o',typ='R',defaut=0,val_min=0,val_max=1,
590 fr="pourcentage schéma convectif au second ordre"),
591 ISCHCV = SIMP(statut='f',typ='I',defaut=0,into=(0,1),
592 fr ="type schéma convectif au second ordre 1 : centré")
594 NITMAX = SIMP(statut='f',typ='I',defaut=10000,val_min=0,
595 fr="nombre max d'itération pour la résolution des systèmes linéaires"),
596 EPSILO = SIMP(statut='f',typ='R',defaut=1.e-4,val_min=0,
597 fr="précision relative pour la résolution des systèmes linéaires"),
598 IMLIGR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,-1,0,1),
599 fr="type de limitation des gradients"),
600 NSWRGR = SIMP(statut='f',typ='I',defaut=100,val_min=0,
601 fr="reconstruction des gradients"),
602 NSWRSM = SIMP(statut='f',typ='I',defaut=2,val_min=0,
603 fr="nombre d'itérations pour la reconstruction des seconds membres"),
604 CLIMGR = SIMP(statut='f',typ='R',defaut=1.5,val_min=0,
605 fr="facteur de limitation des gradients"),
606 EPSRGR = SIMP(statut='f',typ='R',defaut=1.e-5,val_min=0,
607 fr="précision relative pour la reconstruction itérative des gradients")
609 RESTITUE = FACT(statut='o',max=01,
610 fr = "Description de la grandeur restituée",
611 NOMVAR = SIMP(statut='o',typ='TXM',fr = "nom de la grandeur restituée"),
612 ICHRVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
613 fr = "post-traitement (-999 : le code décide ; 0 : non ; 1 : oui)"),
614 ILISVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
615 fr = "impression dans CR exécution (-999 : le code décide ; 0 : non ; 1 : oui)"),
616 IHISVR = SIMP(statut='f',typ=sonde,min=0,max='**',
617 fr = "inventaire des sondes utilisées pour la grandeur scalaire")
619 MODELE = FACT(statut='o',max=01,
621 VALREF = SIMP(statut='o',typ='R',fr="valeur de référence (température, masse volumique...)"),
622 SCAMIN = SIMP(statut='f',typ='R',defaut=1.e12,fr="valeur minimale pour le scalaire"),
623 SCAMAX = SIMP(statut='f',typ='R',defaut=-1.e12,fr="valeur maximale pour le scalaire"),
624 SIGMAS = SIMP(statut='f',typ='R',val_min=0,defaut=1,fr="nombre de Prandtl pour le scalaire"),
625 VISLS0 = SIMP(statut='o',typ='R',fr="valeur de référence de la viscosité associée au scalaire"),
626 IVISLS = SIMP(statut='f',typ='I',defaut=0,into=(0,1),fr="viscosité variable")
630 DEFI_TSR11 = OPER(nom="DEFI_TSR11",op=2,sd_prod=tsr11,fr="définition de l'inconnue tension Reynolds R11 Rij-eps avec ses paramètres physico numériques",
631 NUMERIC = FACT(statut='o',max=01,
632 fr="propriétés numériques liées à l'inconnue",
633 ICONV = SIMP(statut='o',typ='I',defaut=1,into=(0,1),
634 fr="indicateur de convection"),
635 ISTAT = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
636 fr="présence terme instationnaire dans les matrices"),
637 IDIFF = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
639 IDIRCL = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
640 fr="décalage du spectre des valeurs propres en l'absence de Dirichlet"),
641 SCHEMA_CONVECTIF = BLOC(condition="ICONV == 1", fr ="ordre du schéma convectif",
642 BLENCV = SIMP(statut='o',typ='R',defaut=0,val_min=0,val_max=1,
643 fr="pourcentage schéma convectif au second ordre"),
644 ISCHCV = SIMP(statut='f',typ='I',defaut=0,into=(0,1),
645 fr ="type schéma convectif au second ordre 1 : centré")
647 NITMAX = SIMP(statut='f',typ='I',defaut=10000,val_min=0,
648 fr="nombre max d'itération pour la résolution des systèmes linéaires"),
649 EPSILO = SIMP(statut='f',typ='R',defaut=1.e-4,val_min=0,
650 fr="précision relative pour la résolution des systèmes linéaires"),
651 IMLIGR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,-1,0,1),
652 fr="type de limitation des gradients"),
653 NSWRGR = SIMP(statut='f',typ='I',defaut=100,val_min=0,
654 fr="reconstruction des gradients"),
655 NSWRSM = SIMP(statut='f',typ='I',defaut=2,val_min=0,
656 fr="nombre d'itérations pour la reconstruction des seconds membres"),
657 CLIMGR = SIMP(statut='f',typ='R',defaut=1.5,val_min=0,
658 fr="facteur de limitation des gradients"),
659 EPSRGR = SIMP(statut='f',typ='R',defaut=1.e-5,val_min=0,
660 fr="précision relative pour la reconstruction itérative des gradients")
662 RESTITUE = FACT(statut='o',max=01,
663 fr = "Description de la grandeur restituée",
664 NOMVAR = SIMP(statut='o',typ='TXM',fr = "nom de la grandeur restituée"),
665 ICHRVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
666 fr = "post-traitement (-999 : le code décide ; 0 : non ; 1 : oui)"),
667 ILISVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
668 fr = "impression dans CR exécution (-999 : le code décide ; 0 : non ; 1 : oui)"),
669 IHISVR = SIMP(statut='f',typ=sonde,min=0,max='**',
670 fr = "inventaire des sondes utilisées pour la grandeur scalaire")
672 MODELE = FACT(statut='o',max=01,
674 VALREF = SIMP(statut='o',typ='R',fr="valeur de référence (température, masse volumique...)"),
675 SCAMIN = SIMP(statut='f',typ='R',defaut=1.e12,fr="valeur minimale pour le scalaire"),
676 SCAMAX = SIMP(statut='f',typ='R',defaut=-1.e12,fr="valeur maximale pour le scalaire"),
677 SIGMAS = SIMP(statut='f',typ='R',val_min=0,defaut=1,fr="nombre de Prandtl pour le scalaire"),
678 VISLS0 = SIMP(statut='o',typ='R',fr="valeur de référence de la viscosité associée au scalaire"),
679 IVISLS = SIMP(statut='f',typ='I',defaut=0,into=(0,1),fr="viscosité variable")
683 DEFI_TSR22 = OPER(nom="DEFI_TSR22",op=2,sd_prod=tsr11,fr="définition de l'inconnue tension Reynolds R22 Rij-eps avec ses paramètres physico numériques",
684 NUMERIC = FACT(statut='o',max=01,
685 fr="propriétés numériques liées à l'inconnue",
686 ICONV = SIMP(statut='o',typ='I',defaut=1,into=(0,1),
687 fr="indicateur de convection"),
688 ISTAT = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
689 fr="présence terme instationnaire dans les matrices"),
690 IDIFF = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
692 IDIRCL = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
693 fr="décalage du spectre des valeurs propres en l'absence de Dirichlet"),
694 SCHEMA_CONVECTIF = BLOC(condition="ICONV == 1", fr ="ordre du schéma convectif",
695 BLENCV = SIMP(statut='o',typ='R',defaut=0,val_min=0,val_max=1,
696 fr="pourcentage schéma convectif au second ordre"),
697 ISCHCV = SIMP(statut='f',typ='I',defaut=0,into=(0,1),
698 fr ="type schéma convectif au second ordre 1 : centré")
700 NITMAX = SIMP(statut='f',typ='I',defaut=10000,val_min=0,
701 fr="nombre max d'itération pour la résolution des systèmes linéaires"),
702 EPSILO = SIMP(statut='f',typ='R',defaut=1.e-4,val_min=0,
703 fr="précision relative pour la résolution des systèmes linéaires"),
704 IMLIGR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,-1,0,1),
705 fr="type de limitation des gradients"),
706 NSWRGR = SIMP(statut='f',typ='I',defaut=100,val_min=0,
707 fr="reconstruction des gradients"),
708 NSWRSM = SIMP(statut='f',typ='I',defaut=2,val_min=0,
709 fr="nombre d'itérations pour la reconstruction des seconds membres"),
710 CLIMGR = SIMP(statut='f',typ='R',defaut=1.5,val_min=0,
711 fr="facteur de limitation des gradients"),
712 EPSRGR = SIMP(statut='f',typ='R',defaut=1.e-5,val_min=0,
713 fr="précision relative pour la reconstruction itérative des gradients")
715 RESTITUE = FACT(statut='o',max=01,
716 fr = "Description de la grandeur restituée",
717 NOMVAR = SIMP(statut='o',typ='TXM',fr = "nom de la grandeur restituée"),
718 ICHRVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
719 fr = "post-traitement (-999 : le code décide ; 0 : non ; 1 : oui)"),
720 ILISVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
721 fr = "impression dans CR exécution (-999 : le code décide ; 0 : non ; 1 : oui)"),
722 IHISVR = SIMP(statut='f',typ=sonde,min=0,max='**',
723 fr = "inventaire des sondes utilisées pour la grandeur scalaire")
725 MODELE = FACT(statut='o',max=01,
727 VALREF = SIMP(statut='o',typ='R',fr="valeur de référence (température, masse volumique...)"),
728 SCAMIN = SIMP(statut='f',typ='R',defaut=1.e12,fr="valeur minimale pour le scalaire"),
729 SCAMAX = SIMP(statut='f',typ='R',defaut=-1.e12,fr="valeur maximale pour le scalaire"),
730 SIGMAS = SIMP(statut='f',typ='R',val_min=0,defaut=1,fr="nombre de Prandtl pour le scalaire"),
731 VISLS0 = SIMP(statut='o',typ='R',fr="valeur de référence de la viscosité associée au scalaire"),
732 IVISLS = SIMP(statut='f',typ='I',defaut=0,into=(0,1),fr="viscosité variable")
736 DEFI_TSR33 = OPER(nom="DEFI_TSR33",op=2,sd_prod=tsr11,fr="définition de l'inconnue tension Reynolds R33 Rij-eps avec ses paramètres physico numériques",
737 NUMERIC = FACT(statut='o',max=01,
738 fr="propriétés numériques liées à l'inconnue",
739 ICONV = SIMP(statut='o',typ='I',defaut=1,into=(0,1),
740 fr="indicateur de convection"),
741 ISTAT = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
742 fr="présence terme instationnaire dans les matrices"),
743 IDIFF = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
745 IDIRCL = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
746 fr="décalage du spectre des valeurs propres en l'absence de Dirichlet"),
747 SCHEMA_CONVECTIF = BLOC(condition="ICONV == 1", fr ="ordre du schéma convectif",
748 BLENCV = SIMP(statut='o',typ='R',defaut=0,val_min=0,val_max=1,
749 fr="pourcentage schéma convectif au second ordre"),
750 ISCHCV = SIMP(statut='f',typ='I',defaut=0,into=(0,1),
751 fr ="type schéma convectif au second ordre 1 : centré")
753 NITMAX = SIMP(statut='f',typ='I',defaut=10000,val_min=0,
754 fr="nombre max d'itération pour la résolution des systèmes linéaires"),
755 EPSILO = SIMP(statut='f',typ='R',defaut=1.e-4,val_min=0,
756 fr="précision relative pour la résolution des systèmes linéaires"),
757 IMLIGR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,-1,0,1),
758 fr="type de limitation des gradients"),
759 NSWRGR = SIMP(statut='f',typ='I',defaut=100,val_min=0,
760 fr="reconstruction des gradients"),
761 NSWRSM = SIMP(statut='f',typ='I',defaut=2,val_min=0,
762 fr="nombre d'itérations pour la reconstruction des seconds membres"),
763 CLIMGR = SIMP(statut='f',typ='R',defaut=1.5,val_min=0,
764 fr="facteur de limitation des gradients"),
765 EPSRGR = SIMP(statut='f',typ='R',defaut=1.e-5,val_min=0,
766 fr="précision relative pour la reconstruction itérative des gradients")
768 RESTITUE = FACT(statut='o',max=01,
769 fr = "Description de la grandeur restituée",
770 NOMVAR = SIMP(statut='o',typ='TXM',fr = "nom de la grandeur restituée"),
771 ICHRVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
772 fr = "post-traitement (-999 : le code décide ; 0 : non ; 1 : oui)"),
773 ILISVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
774 fr = "impression dans CR exécution (-999 : le code décide ; 0 : non ; 1 : oui)"),
775 IHISVR = SIMP(statut='f',typ=sonde,min=0,max='**',
776 fr = "inventaire des sondes utilisées pour la grandeur scalaire")
778 MODELE = FACT(statut='o',max=01,
780 VALREF = SIMP(statut='o',typ='R',fr="valeur de référence (température, masse volumique...)"),
781 SCAMIN = SIMP(statut='f',typ='R',defaut=1.e12,fr="valeur minimale pour le scalaire"),
782 SCAMAX = SIMP(statut='f',typ='R',defaut=-1.e12,fr="valeur maximale pour le scalaire"),
783 SIGMAS = SIMP(statut='f',typ='R',val_min=0,defaut=1,fr="nombre de Prandtl pour le scalaire"),
784 VISLS0 = SIMP(statut='o',typ='R',fr="valeur de référence de la viscosité associée au scalaire"),
785 IVISLS = SIMP(statut='f',typ='I',defaut=0,into=(0,1),fr="viscosité variable")
789 DEFI_TSR12 = OPER(nom="DEFI_TSR12",op=2,sd_prod=tsr11,fr="définition de l'inconnue tension Reynolds R12 Rij-eps avec ses paramètres physico numériques",
790 NUMERIC = FACT(statut='o',max=01,
791 fr="propriétés numériques liées à l'inconnue",
792 ICONV = SIMP(statut='o',typ='I',defaut=1,into=(0,1),
793 fr="indicateur de convection"),
794 ISTAT = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
795 fr="présence terme instationnaire dans les matrices"),
796 IDIFF = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
798 IDIRCL = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
799 fr="décalage du spectre des valeurs propres en l'absence de Dirichlet"),
800 SCHEMA_CONVECTIF = BLOC(condition="ICONV == 1", fr ="ordre du schéma convectif",
801 BLENCV = SIMP(statut='o',typ='R',defaut=0,val_min=0,val_max=1,
802 fr="pourcentage schéma convectif au second ordre"),
803 ISCHCV = SIMP(statut='f',typ='I',defaut=0,into=(0,1),
804 fr ="type schéma convectif au second ordre 1 : centré")
806 NITMAX = SIMP(statut='f',typ='I',defaut=10000,val_min=0,
807 fr="nombre max d'itération pour la résolution des systèmes linéaires"),
808 EPSILO = SIMP(statut='f',typ='R',defaut=1.e-4,val_min=0,
809 fr="précision relative pour la résolution des systèmes linéaires"),
810 IMLIGR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,-1,0,1),
811 fr="type de limitation des gradients"),
812 NSWRGR = SIMP(statut='f',typ='I',defaut=100,val_min=0,
813 fr="reconstruction des gradients"),
814 NSWRSM = SIMP(statut='f',typ='I',defaut=2,val_min=0,
815 fr="nombre d'itérations pour la reconstruction des seconds membres"),
816 CLIMGR = SIMP(statut='f',typ='R',defaut=1.5,val_min=0,
817 fr="facteur de limitation des gradients"),
818 EPSRGR = SIMP(statut='f',typ='R',defaut=1.e-5,val_min=0,
819 fr="précision relative pour la reconstruction itérative des gradients")
821 RESTITUE = FACT(statut='o',max=01,
822 fr = "Description de la grandeur restituée",
823 NOMVAR = SIMP(statut='o',typ='TXM',fr = "nom de la grandeur restituée"),
824 ICHRVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
825 fr = "post-traitement (-999 : le code décide ; 0 : non ; 1 : oui)"),
826 ILISVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
827 fr = "impression dans CR exécution (-999 : le code décide ; 0 : non ; 1 : oui)"),
828 IHISVR = SIMP(statut='f',typ=sonde,min=0,max='**',
829 fr = "inventaire des sondes utilisées pour la grandeur scalaire")
831 MODELE = FACT(statut='o',max=01,
833 VALREF = SIMP(statut='o',typ='R',fr="valeur de référence (température, masse volumique...)"),
834 SCAMIN = SIMP(statut='f',typ='R',defaut=1.e12,fr="valeur minimale pour le scalaire"),
835 SCAMAX = SIMP(statut='f',typ='R',defaut=-1.e12,fr="valeur maximale pour le scalaire"),
836 SIGMAS = SIMP(statut='f',typ='R',val_min=0,defaut=1,fr="nombre de Prandtl pour le scalaire"),
837 VISLS0 = SIMP(statut='o',typ='R',fr="valeur de référence de la viscosité associée au scalaire"),
838 IVISLS = SIMP(statut='f',typ='I',defaut=0,into=(0,1),fr="viscosité variable")
842 DEFI_TSR13 = OPER(nom="DEFI_TSR13",op=2,sd_prod=tsr11,fr="définition de l'inconnue tension Reynolds R13 Rij-eps avec ses paramètres physico numériques",
843 NUMERIC = FACT(statut='o',max=01,
844 fr="propriétés numériques liées à l'inconnue",
845 ICONV = SIMP(statut='o',typ='I',defaut=1,into=(0,1),
846 fr="indicateur de convection"),
847 ISTAT = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
848 fr="présence terme instationnaire dans les matrices"),
849 IDIFF = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
851 IDIRCL = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
852 fr="décalage du spectre des valeurs propres en l'absence de Dirichlet"),
853 SCHEMA_CONVECTIF = BLOC(condition="ICONV == 1", fr ="ordre du schéma convectif",
854 BLENCV = SIMP(statut='o',typ='R',defaut=0,val_min=0,val_max=1,
855 fr="pourcentage schéma convectif au second ordre"),
856 ISCHCV = SIMP(statut='f',typ='I',defaut=0,into=(0,1),
857 fr ="type schéma convectif au second ordre 1 : centré")
859 NITMAX = SIMP(statut='f',typ='I',defaut=10000,val_min=0,
860 fr="nombre max d'itération pour la résolution des systèmes linéaires"),
861 EPSILO = SIMP(statut='f',typ='R',defaut=1.e-4,val_min=0,
862 fr="précision relative pour la résolution des systèmes linéaires"),
863 IMLIGR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,-1,0,1),
864 fr="type de limitation des gradients"),
865 NSWRGR = SIMP(statut='f',typ='I',defaut=100,val_min=0,
866 fr="reconstruction des gradients"),
867 NSWRSM = SIMP(statut='f',typ='I',defaut=2,val_min=0,
868 fr="nombre d'itérations pour la reconstruction des seconds membres"),
869 CLIMGR = SIMP(statut='f',typ='R',defaut=1.5,val_min=0,
870 fr="facteur de limitation des gradients"),
871 EPSRGR = SIMP(statut='f',typ='R',defaut=1.e-5,val_min=0,
872 fr="précision relative pour la reconstruction itérative des gradients")
874 RESTITUE = FACT(statut='o',max=01,
875 fr = "Description de la grandeur restituée",
876 NOMVAR = SIMP(statut='o',typ='TXM',fr = "nom de la grandeur restituée"),
877 ICHRVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
878 fr = "post-traitement (-999 : le code décide ; 0 : non ; 1 : oui)"),
879 ILISVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
880 fr = "impression dans CR exécution (-999 : le code décide ; 0 : non ; 1 : oui)"),
881 IHISVR = SIMP(statut='f',typ=sonde,min=0,max='**',
882 fr = "inventaire des sondes utilisées pour la grandeur scalaire")
884 MODELE = FACT(statut='o',max=01,
886 VALREF = SIMP(statut='o',typ='R',fr="valeur de référence (température, masse volumique...)"),
887 SCAMIN = SIMP(statut='f',typ='R',defaut=1.e12,fr="valeur minimale pour le scalaire"),
888 SCAMAX = SIMP(statut='f',typ='R',defaut=-1.e12,fr="valeur maximale pour le scalaire"),
889 SIGMAS = SIMP(statut='f',typ='R',val_min=0,defaut=1,fr="nombre de Prandtl pour le scalaire"),
890 VISLS0 = SIMP(statut='o',typ='R',fr="valeur de référence de la viscosité associée au scalaire"),
891 IVISLS = SIMP(statut='f',typ='I',defaut=0,into=(0,1),fr="viscosité variable")
895 DEFI_TSR23 = OPER(nom="DEFI_TSR23",op=2,sd_prod=tsr11,fr="définition de l'inconnue tension Reynolds R23 Rij-eps avec ses paramètres physico numériques",
896 NUMERIC = FACT(statut='o',max=01,
897 fr="propriétés numériques liées à l'inconnue",
898 ICONV = SIMP(statut='o',typ='I',defaut=1,into=(0,1),
899 fr="indicateur de convection"),
900 ISTAT = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
901 fr="présence terme instationnaire dans les matrices"),
902 IDIFF = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
904 IDIRCL = SIMP(statut='f',typ='I',defaut=1,into=(0,1),
905 fr="décalage du spectre des valeurs propres en l'absence de Dirichlet"),
906 SCHEMA_CONVECTIF = BLOC(condition="ICONV == 1", fr ="ordre du schéma convectif",
907 BLENCV = SIMP(statut='o',typ='R',defaut=0,val_min=0,val_max=1,
908 fr="pourcentage schéma convectif au second ordre"),
909 ISCHCV = SIMP(statut='f',typ='I',defaut=0,into=(0,1),
910 fr ="type schéma convectif au second ordre 1 : centré")
912 NITMAX = SIMP(statut='f',typ='I',defaut=10000,val_min=0,
913 fr="nombre max d'itération pour la résolution des systèmes linéaires"),
914 EPSILO = SIMP(statut='f',typ='R',defaut=1.e-4,val_min=0,
915 fr="précision relative pour la résolution des systèmes linéaires"),
916 IMLIGR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,-1,0,1),
917 fr="type de limitation des gradients"),
918 NSWRGR = SIMP(statut='f',typ='I',defaut=100,val_min=0,
919 fr="reconstruction des gradients"),
920 NSWRSM = SIMP(statut='f',typ='I',defaut=2,val_min=0,
921 fr="nombre d'itérations pour la reconstruction des seconds membres"),
922 CLIMGR = SIMP(statut='f',typ='R',defaut=1.5,val_min=0,
923 fr="facteur de limitation des gradients"),
924 EPSRGR = SIMP(statut='f',typ='R',defaut=1.e-5,val_min=0,
925 fr="précision relative pour la reconstruction itérative des gradients")
927 RESTITUE = FACT(statut='o',max=01,
928 fr = "Description de la grandeur restituée",
929 NOMVAR = SIMP(statut='o',typ='TXM',fr = "nom de la grandeur restituée"),
930 ICHRVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
931 fr = "post-traitement (-999 : le code décide ; 0 : non ; 1 : oui)"),
932 ILISVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
933 fr = "impression dans CR exécution (-999 : le code décide ; 0 : non ; 1 : oui)"),
934 IHISVR = SIMP(statut='f',typ=sonde,min=0,max='**',
935 fr = "inventaire des sondes utilisées pour la grandeur scalaire")
937 MODELE = FACT(statut='o',max=01,
939 VALREF = SIMP(statut='o',typ='R',fr="valeur de référence (température, masse volumique...)"),
940 SCAMIN = SIMP(statut='f',typ='R',defaut=1.e12,fr="valeur minimale pour le scalaire"),
941 SCAMAX = SIMP(statut='f',typ='R',defaut=-1.e12,fr="valeur maximale pour le scalaire"),
942 SIGMAS = SIMP(statut='f',typ='R',val_min=0,defaut=1,fr="nombre de Prandtl pour le scalaire"),
943 VISLS0 = SIMP(statut='o',typ='R',fr="valeur de référence de la viscosité associée au scalaire"),
944 IVISLS = SIMP(statut='f',typ='I',defaut=0,into=(0,1),fr="viscosité variable")
949 DEFI_RESTI = OPER(nom="DEFI_RESTI",op=2,sd_prod=resti,fr = "Description de la grandeur restituée",
950 NOMVAR = SIMP(statut='o',typ='TXM',fr = "nom de la grandeur restituée"),
951 ICHRVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
952 fr = "post-traitement (-999 : le code décide ; 0 : non ; 1 : oui)"),
953 ILISVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
954 fr = "impression dans CR exécution (-999 : le code décide ; 0 : non ; 1 : oui)"),
955 IHISVR = SIMP(statut='f',typ=sonde,min=0,max='**',
956 fr = "inventaire des sondes utilisées pour la grandeur scalaire")
959 CALCUL_SATURNE = PROC(nom = "CALCUL_SATURNE",op = 1,
960 fr = "définition des paramètres généraux pour un calcul Saturne",
961 docu = "néant",reentrant = 'n',
962 NomsBibliotheque = NUPL ( max = '**',
964 elements = ( SIMP (typ='TXM',fr="Identificateur Procedure Bibliotheque"),
965 SIMP (typ='TXM',fr="Identifiant de l'isotope dans la bibliotheque")
968 ENVELOPPE = FACT(statut='o',max=01,fr = "gestion de l'enveloppe",
969 IFOENV = SIMP(statut='o',typ='I',defaut=2,into=(0,1,2),position='global',
970 fr = "mode de communication enveloppe solveur"),
971 ENVTOSOLV = BLOC(condition="IFOENV > 0",
972 fr = "liaison enveloppe vers solveur",
973 IMPEVI = SIMP(statut='o',typ='I',defaut=13,val_min=0,val_max=99,
974 fr = "numéro de fichier enveloppe vers solveur"),
975 FICEVI = SIMP(statut='o',typ='TXM',defaut="enveloppe_vers_solveur ",
976 fr = "nom de fichier enveloppe vers solveur")
978 SOLVTOENV = BLOC(condition="IFOENV > 0",
979 fr = "liaison solveur vers enveloppe",
980 IMPEVO = SIMP(statut='o',typ='I',defaut=14,val_min=0,val_max=99,
981 fr = "numéro de fichier solveur vers enveloppe"),
982 FICEVO = SIMP(statut='o',typ='TXM',defaut="solveur_vers_enveloppe ",
983 fr = "nom de fichier solveur vers enveloppe")
986 FICHIERS_CALCUL = FACT(statut='f',max=01,
987 fr ="définition des fichiers géométrie, suite, stop",
988 GEOMETRIE = BLOC(condition="IFOENV == 0",
989 fr = "fichier géométrique (pas d'enveloppe)",
990 IMPGEO = SIMP(statut='o',typ='I',defaut=10,val_min=0,val_max=99,
991 fr = "numéro de fichier géométrique"),
992 FICGEO = SIMP(statut='o',typ='TXM',defaut="geomet",
993 fr = "nom de fichier géométrique")
995 SUITE_AMONT = BLOC(condition="ISUITE == 1",
996 fr = "fichier suite amont",
997 IMPAMO = SIMP(statut='o',typ='I',defaut=11,val_min=0,val_max=99,
998 fr = "numéro de fichier suite amont"),
999 FICGEO = SIMP(statut='o',typ='TXM',defaut="suiamo",
1000 fr = "nom de fichier suite amont"),
1001 IFOAMO = SIMP(statut='o',typ='I',defaut=1,into=(0,1),
1002 fr = "format du fichier suite amont, 0 = binaire")
1004 FICHIER_STOP = FACT(fr = "fichier stop",
1005 IMPSTP = SIMP(statut='o',typ='I',defaut=12,val_min=0,val_max=99,
1006 fr = "numéro de fichier stop"),
1007 FICSTP = SIMP(statut='o',typ='TXM',defaut="ficstp",
1008 fr = "nom de fichier stop")
1010 SUITE_AVAL = FACT(fr = "fichier suite aval",
1011 IMPAVA = SIMP(statut='o',typ='I',defaut=20,val_min=0,val_max=99,
1012 fr = "numéro de fichier suite aval"),
1013 FICAVA = SIMP(statut='o',typ='TXM',defaut="suiamo",
1014 fr = "nom de fichier suite aval"),
1015 IFOAVA = SIMP(statut='o',typ='I',defaut=1,into=(0,1),
1016 fr = "format du fichier suite aval, 0 = binaire")
1019 POST_PROC_ENSIGHT = FACT(statut='f',max=01,
1020 fr = "options de post processing par Ensight",
1021 IFOENS = SIMP(statut='f',typ='I',defaut=-2,into=(-2,-1,0,1),
1022 fr = "option type de fichier et processus générateur"),
1023 NTCHR = SIMP(statut='f',typ='I',defaut=-1,
1024 fr = "périodicité de sortie des fichiers Ensight"),
1025 ITCHR = SIMP(statut='f',typ='I',defaut=0,val_min=0,
1026 fr = "compteur des sorties des fichiers Ensight"),
1027 N3S_ASCII_NOY = BLOC(condition="(IFOENS == -1) and (IFOENV == 0)",
1028 fr = "format Ensight N3S ASCII généré par le noyau",
1029 IMPPST = SIMP(statut='o',typ='I',defaut=21,val_min=0,val_max=99,
1030 fr = "numéro de fichier Ensight"),
1031 FICPST = SIMP(statut='o',typ='TXM',defaut="dessin",
1032 fr = "nom de fichier Ensight")
1034 P0_NOY = BLOC(condition="((IFOENS == 0) or (IFOENS == 1)) and (IFOENV == 0)",
1035 fr = "format Ensight P0 généré par le noyau",
1036 IMPEP0 = SIMP(statut='o',typ='I',defaut=22,val_min=0,val_max=99,
1037 fr = "numéro de fichier Ensight"),
1038 EMPCHR = SIMP(statut='o',typ='TXM',defaut="./",
1039 fr = "répertoire de fichier Ensight"),
1040 ENTCHR = SIMP(statut='o',typ='TXM',defaut="chr",
1041 fr = "préfixe nom de fichier Ensight")
1044 HISTORIQUE_PONCTUEL = FACT(statut='o',max=01,
1045 fr = "Sondes historiques",
1046 FICHIERS_HISTORIQUES = FACT(statut='f',max=01,
1047 fr = "description des fichiers historiques",
1048 EMPHIS = SIMP(statut='o',typ='TXM',defaut="./",
1049 fr="répertoire fichiers historiques"),
1050 EXTHIS = SIMP(statut='o',typ='TXM',defaut="hst",
1051 fr="extension fichiers historiques")
1053 NTHIST = SIMP(statut='f',typ='I',defaut=-999,
1054 fr="fréquence de sortie des historiques en pas de temps"),
1055 NTHSAV = SIMP(statut='f',typ='I',defaut=-999,
1056 fr="fréquence de sauvegarde des historiques en pas de temps")
1058 OPTIONS_TURBULENCE = FACT(statut='o',max=01,
1059 fr="modèle de turbulence",
1060 ITURB = SIMP(statut='f',fr="laminaire : 0, k-epsilon :1,Rij-epsilon :2",
1061 typ='I',into=(0,1,2),defaut=1,position='global'),
1062 MODTURB = BLOC(condition="ITURB == 1",
1063 fr = "option k-epsilon",
1064 IGRAKE = SIMP(statut='o',typ='I',
1065 fr="prise en compte gravité dans k-epsilon",
1066 into=(0,1),defaut=0),
1067 IDEUCH = SIMP(statut='f',typ='I',
1068 fr="prise en compte k-epsilon deux échelles",
1069 into=(0,1),defaut=1),
1070 IKEKOU = SIMP(statut='f',typ='I',
1071 fr="prise en compte couplage en incréments sur k-epsilon",
1072 into=(0,1),defaut=1)
1074 TEMPTURB = BLOC(condition="ITURB == 1",
1075 fr = "option k-epsilon",
1076 ISCALT = SIMP(statut='o',typ=varsca,
1077 fr=" identificateur inconnue scalaire température ")
1080 MARCHE_TEMPS = FACT(statut='o',max=01,
1081 fr = "définition de la marche en temps",
1082 DTREF = SIMP(statut='o',fr="pas de temps de référence",
1084 IDTVAR = SIMP(statut='f',fr="pas de temps constant : 0, variable temps espace : 1, variable temps : 2",
1085 typ='I',into=(0,1,2),defaut=0,position='global'),
1086 # probleme trace eficas quand un mot cle position global change
1087 PASVAR = BLOC(condition="IDTVAR != 0",fr="options pas de temps variable",
1088 XCFMAX = SIMP(statut='o',fr="nombre de Courant-Fourier cible",
1089 typ='R',defaut=0.5,val_min=0),
1090 FMIN = SIMP(statut='f',fr="rapport min pas calculé DTREF",
1091 typ='R',defaut=0.1,val_min=0),
1092 FMAX = SIMP(statut='f',fr="rapport max pas calculé DTREF",
1093 typ='R',defaut=1000,val_min=0),
1094 VARRDT = SIMP(statut='f',fr="variation relative max pas calculé entre deux instants",
1095 typ='R',defaut=0.1,val_min=0)
1098 OPTIONS_EQUATIONS = FACT(statut='o',max=01,
1099 fr = "propriétés des équations, inconnues principales",
1100 IMGR = SIMP(statut='f',fr="utilisation du multigrille pour la résolution des systèmes linéaires",
1101 typ='I',into=(0,1),defaut=0),
1102 IMRGRA = SIMP(statut='f',fr="type de reconstruction des gradients 1 : moindres carrés",
1103 typ='I',into=(0,1),defaut=0),
1105 VARIABLES = FACT(statut='o',max=01,
1106 fr = "Restitution des grandeurs principales",
1107 NTLIST = SIMP(statut='f',typ='I',defaut=1,val_min=1,val_max='**',
1108 fr = "fréquence de sortie (en pas de temps) dans le compte rendu d'éxécution"),
1109 IWARNI = SIMP(statut='f',typ='I',defaut=2,val_min=0,val_max='**',
1110 fr = "niveau de détail des impressions dans le compte rendu d'éxécution"),
1111 MASVOL1 = FACT(statut='o',max=01,
1112 fr = "Description de la grandeur restituée : masse volumique",
1113 NOMVAR = SIMP(statut='o',typ='TXM',fr = "nom de la grandeur : masse volumique",
1114 defaut="Masse_vol1"),
1115 ICHRVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
1116 fr = "post-traitement (-999 : le code décide ; 0 : non ; 1 : oui)"),
1117 ILISVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
1118 fr = "impression dans CR exécution (-999 : le code décide ; 0 : non ; 1 : oui)"),
1119 IHISVR = SIMP(statut='f',typ=sonde,min=0,max='**',
1120 fr = "inventaire des sondes utilisées pour la grandeur masse volumique")
1122 TURB_KE = BLOC(condition="ITURB == 1",
1123 E_TURB = FACT(statut='o',max=01,
1124 fr = "Description de la grandeur restituée : énergie turbulente",
1125 NOMVAR = SIMP(statut='o',typ='TXM',fr = "nom de la grandeur : energie turbulente",
1126 defaut="Energie_1"),
1127 ICHRVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
1128 fr = "post-traitement (-999 : le code décide ; 0 : non ; 1 : oui)"),
1129 ILISVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
1130 fr = "impression dans CR exécution (-999 : le code décide ; 0 : non ; 1 : oui)"),
1131 IHISVR = SIMP(statut='f',typ=sonde,min=0,max='**',
1132 fr = "inventaire des sondes utilisées pour la grandeur énergie turbulente")
1134 D_TURB = FACT(statut='o',max=01,
1135 fr = "Description de la grandeur restituée : dissipation turbulente",
1136 NOMVAR = SIMP(statut='o',typ='TXM',fr = "nom de la grandeur : dissipation turbulente",
1137 defaut="Dissipation"),
1138 ICHRVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
1139 fr = "post-traitement (-999 : le code décide ; 0 : non ; 1 : oui)"),
1140 ILISVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
1141 fr = "impression dans CR exécution (-999 : le code décide ; 0 : non ; 1 : oui)"),
1142 IHISVR = SIMP(statut='f',typ=sonde,min=0,max='**',
1143 fr = "inventaire des sondes utilisées pour la grandeur dissipation turbulente")
1145 V_TURB = FACT(statut='o',max=01,
1146 fr = "Description de la grandeur restituée : viscosité turbulente",
1147 NOMVAR = SIMP(statut='o',typ='TXM',fr = "nom de la grandeur : viscosité turbulente",
1148 defaut="Visc_turb1"),
1149 ICHRVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
1150 fr = "post-traitement (-999 : le code décide ; 0 : non ; 1 : oui)"),
1151 ILISVR = SIMP(statut='f',typ='I',defaut=-999,into=(-999,0,1),
1152 fr = "impression dans CR exécution (-999 : le code décide ; 0 : non ; 1 : oui)"),
1153 IHISVR = SIMP(statut='f',typ=sonde,min=0,max='**',
1154 fr = "inventaire des sondes utilisées pour la grandeur viscosité turbulente")
1158 GESTION_CALCUL = FACT(statut='o',max=01,
1159 fr = "calcul suite et numéros de pas de temps début et fin",
1160 ISUITE = SIMP(statut='o',typ='I',defaut=0,into=(0,1),position='global',
1161 fr = "indicateur calcul suite (1 = suite)"),
1162 NTPABS = SIMP(statut='f',typ='I',defaut=0,
1163 fr = "numéro dernier pas de temps calcul précédent (initialisation automatique)"),
1164 NTMABS = SIMP(statut='o',typ='I',
1165 fr = "numéro dernier pas de temps visé (absolu)"),
1166 TTPABS = SIMP(statut='f',typ='R',defaut=0,
1167 fr = "temps simulation au dernier pas de temps précédent (initialisation automatique)")
1169 CONSTANTES_PHYSIQUES=FACT(statut='o',max=01,
1170 fr = "Grandeurs physiques et modélisation",
1171 GRAVITE = FACT(statut='o',max=01,
1172 fr = "composantes de la gravité",
1173 GX = SIMP(statut ='o',typ='R',defaut=0, fr = "gravité selon X"),
1174 GY = SIMP(statut ='o',typ='R',defaut=0, fr = "gravité selon Y"),
1175 GZ = SIMP(statut ='o',typ='R',defaut=0, fr = "gravité selon Z")
1177 FLUIDE = FACT(statut='o',max=01,
1178 fr = "propriétés du fluide",
1179 RO0 = SIMP(statut ='o',typ='R',val_min=0,fr="masse volumique de référence"),
1180 VISCL0 = SIMP(statut ='o',typ='R',val_min=0,fr="viscosité dynamique de référence"),
1181 P0 = SIMP(statut ='o',typ='R',val_min=0,fr="pression de référence")
1183 TURBULENCE = BLOC(condition="ITURB >= 0",
1184 XKAPPA = SIMP(statut ='o',typ='R',defaut=0.42,val_min=0,fr="constante de Karman"),
1185 CSTLOG = SIMP(statut ='f',typ='R',defaut=5.2,val_min=0,fr="constante de la loi log"),
1186 YPLULI = SIMP(statut ='f',typ='R',defaut=2/0.42,val_min=0,fr="valeur limite de y+ pour la sous couche visqueuse"),
1187 CMU = SIMP(statut ='f',typ='R',defaut=0.009,val_min=0,fr="constante C mu"),
1188 CE1 = SIMP(statut ='f',typ='R',defaut=1.44,val_min=0,fr="constante C epsilon 1"),
1189 CE2 = SIMP(statut ='f',typ='R',defaut=1.92,val_min=0,fr="constante C epsilon 2"),
1190 CE3 = SIMP(statut ='f',typ='R',defaut=1.0,val_min=0,fr="constante C epsilon 3"),
1191 SIGMAK = SIMP(statut ='f',typ='R',defaut=1.0,val_min=0,fr="nombre de Prandtl pour k en k-epsilon"),
1192 SIGMAE = SIMP(statut ='f',typ='R',defaut=1.3,val_min=0,fr="nombre de Prandtl pour epsilon en k-epsilon"),
1193 ALMAX = SIMP(statut ='f',typ='R',val_min=0,fr="longueur macroscopique caractéristique du domaine"),
1194 UREF = SIMP(statut ='f',typ='R',val_min=0,fr="vitesse caractéristique de l'écoulement pour l'initialisation du k-epsilon")
1199 CALC_FONC_INTERP=OPER(nom="CALC_FONC_INTERP",op= 134,sd_prod=fonction,
1200 docu="U4.32.01-d1",reentrant='f',
1201 regles=(UN_PARMI('VALE_R','LIST_PARA'),),
1202 FONCTION =SIMP(statut='o',typ=fonction ),
1203 NOM_RESU =SIMP(statut='f',typ='TXM',defaut="TOUTRESU"),
1204 VALE_R =SIMP(statut='f',typ='R',max='**'),
1205 LIST_PARA =SIMP(statut='f',typ=listr8 ),
1206 INTERPOL =SIMP(statut='f',typ='TXM',max=2,defaut="LIN",into=("NON","LIN","LOG","INT") ),
1207 PROL_DROITE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("EXCLU","CONSTANT","LINEAIRE","INTERPRE") ),
1208 PROL_GAUCHE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("EXCLU","CONSTANT","LINEAIRE","INTERPRE") ),
1209 TITRE =SIMP(statut='f',typ='TXM',max='**'),
1210 INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ),
1213 LIRE_MAILLAGE=OPER(nom="LIRE_MAILLAGE",op= 1,sd_prod=maillage,
1214 fr="Lecture d'un fichier de maillage",
1215 ang="Readings of a mesh file",
1216 docu="U4.21.01-f",reentrant='n',
1218 UNITE =SIMP(statut='f',typ='I',defaut= 20 ),
1220 FORMAT =SIMP(statut='f',typ='TXM',defaut="ASTER",into=("ASTER","MED"),
1221 fr="Format du fichier : ASTER ou MED.",
1222 ang="Format of the file : ASTER or MED.",),
1224 ABSC_CURV =FACT(statut='f',min=00,max=01,
1225 TOUT =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ),
1228 VERI_MAIL =FACT(statut='d',min=01,max=01,
1229 APLAT =SIMP(statut='f',typ='R',defaut= 1.0E-3 ),
1232 b_format_med =BLOC( condition = " ( FORMAT == 'MED' ) " ,
1233 fr="Informations complémentaires pour la lecture MED.",
1234 ang="Further information for MED readings.",
1236 # Pour une lecture dans un fichier MED, on peut préciser le nom sous lequel
1237 # le maillage y a été enregistré. Par défaut, on va le chercher sous le nom du concept à créer.
1239 NOM_MED = SIMP(statut='f',typ='TXM',
1240 fr="Nom du maillage dans le fichier MED.",
1241 ang="Name of the mesh into the MED file.",),
1243 INFO_MED = SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
1247 INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
1251 DEBUT=MACRO(nom="DEBUT",op=0 ,docu="U4.11.01-f1",repetable='n',
1252 fr="Ouverture d une étude. Allocation des ressources mémoire et disque",
1255 PAR_LOT =SIMP(fr="mode de traitement des commandes",statut='f',typ='TXM',
1256 into=("OUI","NON"),defaut="OUI"),
1257 BASE =FACT(fr="définition des paramètres associés aux bases JEVEUX",
1258 statut='f',min=01,max=03,
1259 FICHIER =SIMP(fr="nom de la base",statut='o',typ='TXM',
1260 into=('GLOBALE','VOLATILE','LOCALE'),),
1261 TITRE =SIMP(statut='f',typ='TXM'),
1262 CAS =SIMP(statut='f',typ='TXM'),
1263 NMAX_ENRE =SIMP(fr="nombre maximum d enregistrements",statut='f',typ='I'),
1264 LONG_ENRE =SIMP(fr="longueur des enregistrements",statut='f',typ='I'),
1265 LONG_REPE =SIMP(fr="longueur du répertoire",statut='f',typ='I'),
1267 IMPRESSION =FACT(statut='f',min=01,max=03,
1268 FICHIER =SIMP(statut='o',typ='TXM'),
1269 UNITE =SIMP(statut='o',typ='I'),
1271 CATALOGUE =FACT(statut='f',min=01,max=10,
1272 FICHIER =SIMP(statut='o',typ='TXM'),
1273 TITRE =SIMP(statut='f',typ='TXM'),
1274 UNITE =SIMP(statut='f',typ='I'),
1276 CODE =FACT("définition d un nom pour l'esemble d'une étude",
1277 statut='f',min=01,max=01,
1278 NOM =SIMP(statut='o',typ='TXM'),
1279 UNITE =SIMP(statut='f',typ='I',defaut=15),
1281 DEBUG =FACT(fr="option de déboggage reservée aux développeurs",
1282 statut='f',min=01,max=01,
1283 JXVERI =SIMP(fr="vérifie l intégrité de la segmentation mémoire",
1284 statut='f',typ='TXM',into=('OUI','NON'),defaut='NON'),
1285 JEVEUX =SIMP(fr="force les déchargement sur disque",
1286 statut='f',typ='TXM',into=('OUI','NON'),defaut='NON'),
1287 ENVIMA =SIMP(fr="imprime les valeurs définies dans ENVIMA",
1288 statut='f',typ='TXM',into=('TEST',)),
1290 MEMOIRE =FACT(fr="mode de gestion mémoire utilisé",statut='f',min=01,max=01,
1291 GESTION =SIMP(statut='f',typ='TXM',into=('COMPACTE','RAPIDE'),defaut='RAPIDE'),
1292 TYPE_ALLOCATION =SIMP(statut='f',typ='I',into=(1,2,3,4),defaut=1),
1293 TAILLE =SIMP(statut='f',typ='I'),
1294 TAILLE_BLOC =SIMP(statut='f',typ='R',defaut=800.),
1295 PARTITION =SIMP(statut='f',typ='R'),
1299 FIN=PROC(nom="FIN",op=9999,repetable='n',fr="Fin d'une étude",
1301 RETASSAGE =SIMP(fr="provoque le retassage de la base GLOBALE",
1302 statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ),
1303 PERFORMANCE =SIMP(fr="provoque l'impression d'un résumé des mesures de temps ",
1304 statut='f',typ='TXM',defaut="OUI",into=("OUI","NON",) ),
1305 INFO_RESU =SIMP(fr="provoque l'impression des informations sur les structures de données",
1306 statut='f',typ='TXM',defaut="OUI",into=("OUI","NON",) ),
1307 FICHIER =SIMP(statut='f',typ='TXM',defaut="MESSAGE"),
1311 def macro_matr_asse_ops(self,MODELE,CHAM_MATER,CARA_ELEM,MATR_ASSE,
1312 SOLVEUR,NUME_DDL,CHARGE,INST,**args):
1314 Ecriture de la macro MACRO_MATR_ASSE
1317 # On met le mot cle NUME_DDL dans une variable locale pour le proteger
1319 # On importe les definitions des commandes a utiliser dans la macro
1320 # Le nom de la variable doit etre obligatoirement le nom de la commande
1321 CALC_MATR_ELEM=self.get_cmd('CALC_MATR_ELEM')
1322 NUME_DDL =self.get_cmd('NUME_DDL')
1323 ASSE_MATRICE =self.get_cmd('ASSE_MATRICE')
1324 # La macro compte pour 1 dans la numerotation des commandes
1328 methode=SOLVEUR['METHODE']
1330 if SOLVEUR['RENUM']:
1331 renum=SOLVEUR['RENUM']
1334 if renum not in ('SANS','RCMK'):
1336 self.cr.fatal("Avec methode LDLT, RENUM doit etre SANS ou RCMK.")
1338 elif methode=='MULT_FRONT':
1339 if SOLVEUR['RENUM']:
1340 renum=SOLVEUR['RENUM']
1343 if renum not in ('MDA','MD','METIS'):
1345 self.cr.fatal("Avec methode MULT_FRONT, RENUM doit etre MDA, MD ou RCMK.")
1347 elif methode=='GCPC':
1348 if SOLVEUR['RENUM']:
1349 renum=SOLVEUR['RENUM']
1352 if renum not in ('SANS','RCMK'):
1354 self.cr.fatal("Avec methode GCPC, RENUM doit etre SANS ou RCMK.")
1357 methode='MULT_FRONT'
1360 if numeddl in self.sdprods:
1361 # Si le concept numeddl est dans self.sdprods
1362 # il doit etre produit par la macro
1363 # il faudra donc appeler la commande NUME_DDL
1374 if iocc == 1 and lnume == 1 and option not in ('RIGI_MECA','RIGI_MECA_LAGR',
1375 'RIGI_THER','RIGI_ACOU') :
1377 self.cr.fatal("LA PREMIERE OPTION DOIT ETRE RIGI_MECA OU RIGI_THER OU RIGI_ACOU OU RIGI_MECA_LAGR")
1380 if m['SIEF_ELGA']!=None and option!='RIGI_GEOM':
1382 self.cr.fatal("SIEF_ELGA N EST ADMIS QU AVEC L OPTION RIGI_GEOM")
1385 if m['MODE_FOURIER']!=None and option not in ('RIGI_MECA','RIGI_FLUI_STRU','RIGI_THER'):
1387 self.cr.fatal("MODE_FOURIER N EST ADMIS QU AVEC UNE DES OPTIONS RIGI_MECA RIGI_FLUI_STRU RIGI_THER")
1390 if (m['THETA']!=None or m['PROPAGATION']!=None) and option!='RIGI_MECA_LAGR':
1392 self.cr.fatal("PROPAGATION ET,OU THETA NE SONT ADMIS QU AVEC L OPTION RIGI_MECA_LAGR")
1394 motscles={'OPTION':option}
1395 if option == 'AMOR_MECA':
1396 if (not lrigel or not lmasel):
1398 self.cr.fatal("""POUR CALCULER AMOR_MECA, IL FAUT AVOIR CALCULE
1399 RIGI_MECA ET MASS_MECA AUPARAVANT (DANS LE MEME APPEL)""")
1401 if CHAM_MATER != None:
1402 motscles['RIGI_MECA'] =rigel
1403 motscles['MASS_MECA'] =masel
1405 if option[0:9] not in ('MASS_THER','RIGI_GEOM','MASS_ID_M'):
1406 motscles['CHARGE'] =CHARGE
1407 if CHAM_MATER != None: motscles['CHAM_MATER'] =CHAM_MATER
1408 if CARA_ELEM != None: motscles['CARA_ELEM'] =CARA_ELEM
1409 if INST != None: motscles['INST'] =INST
1410 if m['SIEF_ELGA'] : motscles['SIEF_ELGA'] =m['SIEF_ELGA']
1411 if m['MODE_FOURIER']: motscles['MODE_FOURIER']=m['MODE_FOURIER']
1412 if m['THETA'] : motscles['THETA'] =m['THETA']
1413 if m['PROPAGATION'] : motscles['PROPAGATION'] =m['PROPAGATION']
1414 __a=CALC_MATR_ELEM(MODELE=MODELE,**motscles)
1416 if option == 'RIGI_MECA':
1419 if option == 'MASS_MECA':
1423 if lnume and option in ('RIGI_MECA','RIGI_THER','RIGI_ACOU','RIGI_MECA_LAGR'):
1424 self.DeclareOut('num',numeddl)
1425 # On peut passer des mots cles egaux a None. Ils sont ignores
1426 num=NUME_DDL(MATR_RIGI=__a,METHODE=methode,RENUM=renum)
1430 self.DeclareOut('mm',m['MATRICE'])
1431 mm=ASSE_MATRICE(MATR_ELEM=__a,NUME_DDL=num)
1434 def macro_matr_asse_prod(self,NUME_DDL,MATR_ASSE,**args):
1435 if not MATR_ASSE: raise AsException("Impossible de typer les concepts resultats")
1436 if not NUME_DDL: raise AsException("Impossible de typer les concepts resultats")
1437 self.type_sdprod(NUME_DDL,nume_ddl)
1441 if opti in ( "RIGI_MECA","RIGI_FLUI_STRU","RIGI_MECA_LAGR" ,
1442 "MASS_MECA" , "MASS_FLUI_STRU" ,"RIGI_GEOM" ,"RIGI_ROTA",
1443 "AMOR_MECA","IMPE_MECA","MASS_ID_MDEP_R","MASS_ID_MDNS_R",
1444 "ONDE_FLUI","MASS_MECA_DIAG" ) : t=matr_asse_depl_r
1446 if opti in ( "RIGI_ACOU","MASS_ACOU","AMOR_ACOU",) : t=matr_asse_pres_c
1448 if opti in ( "RIGI_THER","MASS_THER","RIGI_THER_CONV" ,
1449 "RIGI_THER_CONV_D","MASS_ID_MTEM_R","MASS_ID_MTNS_R",) : t=matr_asse_temp_r
1451 if opti == "RIGI_MECA_HYST" : t= matr_asse_depl_c
1453 self.type_sdprod(m['MATRICE'],t)
1456 MACRO_MATR_ASSE=MACRO(nom="MACRO_MATR_ASSE",op=macro_matr_asse_ops,docu="U4.61.21-c",
1457 sd_prod=macro_matr_asse_prod,
1458 fr="Calcul des matrices assemblées (matr_asse_gd) par exemple de rigidité, de masse ",
1459 MODELE =SIMP(statut='o',typ=modele),
1460 CHAM_MATER =SIMP(statut='f',typ=cham_mater),
1461 CARA_ELEM =SIMP(statut='f',typ=cara_elem),
1462 CHARGE =SIMP(statut='f',typ=(char_meca,char_ther,char_acou)),
1463 INST =SIMP(statut='f',typ='R'),
1464 NUME_DDL =SIMP(statut='o',typ=(nume_ddl,CO)),
1465 SOLVEUR =FACT(statut='d',min=01,max=01,
1466 METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",
1467 into=("LDLT","MULT_FRONT","GCPC")),
1468 RENUM =SIMP(statut='f',typ='TXM',into=("SANS","RCMK","MD","MDA","METIS")),
1470 MATR_ASSE =FACT(statut='o',min=01,max='**',
1471 MATRICE =SIMP(statut='o',typ=(matr_asse,CO)),
1472 OPTION =SIMP(statut='o',typ='TXM',
1473 into=("RIGI_MECA","MASS_MECA","MASS_MECA_DIAG",
1474 "AMOR_MECA","RIGI_MECA_HYST","IMPE_MECA",
1475 "ONDE_FLUI","RIGI_FLUI_STRU","MASS_FLUI_STRU",
1476 "RIGI_ROTA","RIGI_GEOM","RIGI_MECA_LAGR",
1477 "RIGI_THER","MASS_THER",
1478 "RIGI_ACOU","MASS_ACOU","AMOR_ACOU",
1479 "MASS_ID_MTEM_R","MASS_ID_MTNS_R","MASS_ID_MDEP_R","MASS_ID_MDNS_R",)
1481 SIEF_ELGA =SIMP(statut='f',typ=cham_elem_sief_r),
1482 MODE_FOURIER =SIMP(statut='f',typ='I'),
1483 THETA =SIMP(statut='f',typ=theta_geom),
1484 PROPAGATION =SIMP(statut='f',typ='R'),
1486 TITRE =SIMP(statut='f',typ='TXM',max='**'),
1487 INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)),
1491 def defi_valeur_prod(self,IS=None,R8=None,TX=None,C8=None,LS=None):
1492 if IS != None : return entier
1493 if R8 != None : return reel
1494 if TX != None : return chaine
1495 if C8 != None : return complexe
1496 if LS != None : return liste
1497 raise AsException("type de concept resultat non prevu")
1499 DEFI_VALEUR=MACRO(nom="DEFI_VALEUR",op=-4,sd_prod=defi_valeur_prod,
1500 fr="Affectation d une valeur à une variable Superviseur",
1501 docu="U4.31.04-e1",reentrant='f',
1502 regles=(UN_PARMI('IS','R8','TX','C8','LS'),),
1503 IS =SIMP(statut='f',typ='I',max='**'),
1504 R8 =SIMP(statut='f',typ='R',max='**'),
1505 TX =SIMP(statut='f',typ='TXM',max='**'),
1506 C8 =SIMP(statut='f',typ='C',max='**'),
1507 LS =SIMP(statut='f',typ='L',max='**'),
1510 def macro2_prod(self,MODELE,**args):
1513 MACRO2 =MACRO(nom="MACRO2",op= -5 ,docu="U4.61.21-c",
1514 sd_prod=macro2_prod,
1515 fr="Calcul des matrices assemblées (matr_asse_gd) par exemple de rigidité, de masse ",
1516 MODELE =SIMP(statut='o',typ=modele),
1519 def macro3_prod(self,MAILLAGE,MAIL2,**args):
1520 self.type_sdprod(MAIL2,maillage)
1521 if not MAILLAGE:return None
1524 MACRO3 =MACRO(nom="MACRO3",op= -5 ,docu="U4.61.21-c",
1525 sd_prod=macro3_prod,
1526 fr="Calcul des matrices assemblées (matr_asse_gd) par exemple de rigidité, de masse ",
1527 MAILLAGE =SIMP(statut='f',typ=maillage),
1528 MAIL2 =SIMP(statut='o',typ=(CO,maillage)),
1531 def errmacro_prod(self,MAILLAGE,**args):
1532 #Erreur de programmation
1536 ERRMACRO =MACRO(nom="ERRMACRO",op= -5 ,docu="U4.61.21-c",
1537 sd_prod=errmacro_prod,
1538 fr="Calcul des matrices assemblées (matr_asse_gd) par exemple de rigidité, de masse ",
1539 MAILLAGE =SIMP(statut='o',typ=maillage),
1542 def erroper_prod(self,MAILLAGE,**args):
1543 #Erreur de programmation
1547 ERROPER =OPER(nom="ERROPER",op= -5 ,docu="U4.61.21-c",
1548 sd_prod=erroper_prod,
1549 fr="Calcul des matrices assemblées (matr_asse_gd) par exemple de rigidité, de masse ",
1550 MAILLAGE =SIMP(statut='o',typ=maillage),
1553 def errproc_init(self,MAILLAGE,**args):
1554 #Erreur de programmation
1557 ERRPROC =PROC(nom="ERRPROC",op= -5 ,docu="U4.61.21-c",
1558 op_init=errproc_init,
1559 fr="Calcul des matrices assemblées (matr_asse_gd) par exemple de rigidité, de masse ",
1560 MAILLAGE =SIMP(statut='o',typ=maillage),
1563 class concept(ASSD):pass
1565 def op1_prod(x,**args):
1566 if x == 0:return concept
1567 if x == 1:return concept
1568 raise AsException("type de concept resultat non prevu")
1570 OP1 = OPER(nom='OP1',op=1,sd_prod=op1_prod,reentrant='f',
1571 a=SIMP(statut='o',typ='I',into=(0,1,2)),
1572 b=SIMP(typ=concept),
1573 ccc=FACT(statut='d',d=SIMP(typ='I'),e=SIMP(typ='I')),
1574 b_1=BLOC(condition="a==0",
1575 x=SIMP(statut='o',typ='I',into=(0,1)),
1576 c=FACT(d=SIMP(typ='I'),e=SIMP(typ='I')),
1578 b_2=BLOC(condition="a==1",
1579 x=SIMP(statut='o',typ='I',into=(0,1)),
1580 b_2=BLOC(condition="1",
1581 cc=FACT(d=SIMP(typ='I'),e=SIMP(typ='I')),
1582 c=FACT(d=SIMP(typ='I'),e=SIMP(typ='I')),
1588 def op2_prod(self,x,**args):
1589 if x == 0:return concept
1590 if x == 1:return concept
1591 raise AsException("type de concept resultat non prevu")
1593 OP2 = MACRO(nom='OP2',op=1,sd_prod=op2_prod,reentrant='f',
1594 a=SIMP(statut='o',typ='I',into=(0,1,2)),
1595 b=SIMP(typ=concept),
1596 ccc=FACT(statut='d',d=SIMP(typ='I'),e=SIMP(typ='I')),
1597 b_1=BLOC(condition="a==0",
1598 x=SIMP(statut='o',typ='I',into=(0,1)),
1599 c=FACT(d=SIMP(typ='I'),e=SIMP(typ='I')),
1601 b_2=BLOC(condition="a==1",
1602 x=SIMP(statut='o',typ='I',into=(0,1)),
1603 b_2=BLOC(condition="1",
1604 cc=FACT(d=SIMP(typ='I'),e=SIMP(typ='I')),
1605 c=FACT(d=SIMP(typ='I'),e=SIMP(typ='I')),
1610 DETRUIRE=PROC(nom="DETRUIRE",op=-7,docu="U4.14.01-d",
1611 UIinfo={"groupes":("Gestion du travail",)},
1612 fr="Destruction d un concept utilisateur dans la base GLOBALE",
1613 op_init=ops.detruire,
1614 CONCEPT =FACT(statut='o',min=01,
1615 NOM =SIMP(statut='o',typ=assd,max='**'),
1619 INCLUDE_MATERIAU=MACRO(nom="INCLUDE_MATERIAU",op=-14,docu="U4.43.02-a",
1620 UIinfo={"groupes":("Modélisation",)},
1622 sd_prod=ops.INCLUDE_MATERIAU,op_init=ops.INCLUDE_context,fichier_ini=0,
1623 NOM_AFNOR =SIMP(statut='o',typ='TXM' ),
1624 TYPE_MODELE =SIMP(statut='o',typ='TXM',into=("REF","PAR") ),
1625 VARIANTE =SIMP(statut='o',typ='TXM',
1626 into=("A","B","C","D","E","F","G","H","I","J",
1627 "K","L","M","N","O","P","Q","R","S","T","U","V",
1628 "W","X","Y","Z",) ),
1629 TYPE_VALE =SIMP(statut='o',typ='TXM',into=("NOMI","MINI","MAXI") ),
1630 NOM_MATER =SIMP(statut='o',typ='TXM' ),
1631 UNITE =SIMP(statut='f',typ='I',defaut= 32 ),
1632 EXTRACTION =FACT(statut='f',min=1,max=99,
1633 COMPOR =SIMP(statut='o',typ='TXM' ),
1634 TEMP_EVAL =SIMP(statut='o',typ='R' ),
1636 UNITE_LONGUEUR =SIMP(statut='f',typ='TXM',into=("M","MM"),defaut="M" ),
1637 INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ),
1640 def defi_fonction_prod(VALE,VALE_PARA,VALE_C,NOEUD_PARA,**args):
1641 if VALE != None : return fonction
1642 if VALE_C != None : return fonction_c
1643 if VALE_PARA != None : return fonction
1644 if NOEUD_PARA != None : return fonction
1645 raise AsException("type de concept resultat non prevu")
1647 DEFI_FONCTION=OPER(nom="DEFI_FONCTION",op=3,sd_prod=defi_fonction_prod
1648 ,fr="Définition des valeurs réelles ou complexes d une fonction réelle",
1649 docu="U4.31.02-g3",reentrant='n',
1650 UIinfo={"groupes":("Fonction",)},
1651 regles=(UN_PARMI('VALE','VALE_C','VALE_PARA','NOEUD_PARA'),),
1652 NOM_PARA =SIMP(statut='o',typ='TXM',
1653 into=("DX","DY","DZ","DRX","DRY","DRZ","TEMP",
1654 "INST","X","Y","Z","EPSI","META","FREQ","PULS",
1655 "AMOR","ABSC","SIGM","HYDR","SECH","PORO","SAT",
1656 "PGAZ","PCAP","VITE") ),
1657 NOM_RESU =SIMP(statut='f',typ='TXM',defaut="TOUTRESU"),
1658 VALE =SIMP(statut='f',typ='R',min=2,max='**',
1659 fr ="Fonction réelle définie par une liste de couples (abscisse,ordonnée)"),
1660 VALE_C =SIMP(statut='f',typ='R',min=2,max='**',
1661 fr ="Fonction complexe définie par une liste de couples"),
1662 VALE_PARA =SIMP(statut='f',typ=listr8,
1663 fr ="Fonction réelle définie par deux concepts de type listr8" ),
1664 b_vale_para =BLOC(condition = "VALE_PARA != None",
1665 VALE_FONC =SIMP(statut='o',typ=listr8 ),
1667 NOEUD_PARA =SIMP(statut='f',typ=no,max='**',
1668 fr ="Fonction réelle définie par une liste de noeuds et un maillage"),
1669 b_noeud_para =BLOC(condition = "NOEUD_PARA != None",
1670 MAILLAGE =SIMP(statut='o',typ=maillage ),
1671 VALE_Y =SIMP(statut='o',typ='R',max='**'),
1674 INTERPOL =SIMP(statut='f',typ='TXM',max=2,defaut="LIN",into=("NON","LIN","LOG") ),
1675 PROL_DROITE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ),
1676 PROL_GAUCHE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ),
1677 VERIF =SIMP(statut='f',typ='TXM',defaut="CROISSANT",into=("CROISSANT","NON") ),
1678 INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ),
1679 TITRE =SIMP(statut='f',typ='TXM',max='**'),
1682 DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater,
1683 fr="Définition des paramètres décrivant le comportement d un matériau",
1684 docu="U4.43.01-g4",reentrant='n',
1685 UIinfo={"groupes":("Modélisation",)},
1686 regles=(EXCLUS('ELAS','ELAS_FO','ELAS_FLUI','ELAS_ISTR','ELAS_ISTR_FO','ELAS_ORTH',
1687 'ELAS_ORTH_FO','ELAS_COQUE','ELAS_COQUE_FO',
1688 'SURF_ETAT_SATU','CAM_CLAY_THM','SURF_ETAT_NSAT'),
1689 EXCLUS('THER','THER_FO','THER_ORTH','THER_NL'),
1692 # comportement élastique
1694 ELAS =FACT(statut='f',min=0,max=1,
1695 E =SIMP(statut='o',typ='R',val_min=0.E+0),
1696 NU =SIMP(statut='o',typ='R',val_min=-1.E+0,val_max=0.5E+0),
1697 RHO =SIMP(statut='f',typ='R'),
1698 ALPHA =SIMP(statut='f',typ='R'),
1699 AMOR_ALPHA =SIMP(statut='f',typ='R'),
1700 AMOR_BETA =SIMP(statut='f',typ='R'),
1701 AMOR_HYST =SIMP(statut='f',typ='R'),
1703 ELAS_FO =FACT(statut='f',min=0,max=1,
1704 regles=(PRESENT_PRESENT('ALPHA','TEMP_DEF_ALPHA'),),
1705 E =SIMP(statut='o',typ=fonction),
1706 NU =SIMP(statut='o',typ=fonction),
1707 RHO =SIMP(statut='f',typ='R'),
1708 TEMP_DEF_ALPHA =SIMP(statut='f',typ='R'),
1709 PRECISION =SIMP(statut='f',typ='R',defaut= 1.),
1710 ALPHA =SIMP(statut='f',typ=fonction),
1711 AMOR_ALPHA =SIMP(statut='f',typ=fonction),
1712 AMOR_BETA =SIMP(statut='f',typ=fonction),
1713 AMOR_HYST =SIMP(statut='f',typ=fonction),
1714 K_DESSIC =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
1715 B_ENDOGE =SIMP(statut='f',typ='R',defaut= 0.E+0 ),
1716 FONC_DESORP =SIMP(statut='f',typ=fonction),
1717 VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP","INST",) ),
1718 VERI_P2 =SIMP(statut='c',typ='TXM',defaut="INST",into=("TEMP","INST",) ),
1719 VERI_P3 =SIMP(statut='c',typ='TXM',defaut="HYDR",into=("HYDR",) ),
1720 VERI_P4 =SIMP(statut='c',typ='TXM',defaut="SECH",into=("SECH",) ),
1723 # comportement thermique
1725 THER_NL =FACT(statut='f',min=0,max=1,
1726 regles=(UN_PARMI('BETA','RHO_CP', ),),
1727 LAMBDA =SIMP(statut='o',typ=fonction),
1728 BETA =SIMP(statut='f',typ=fonction),
1729 RHO_CP =SIMP(statut='f',typ=fonction),
1730 VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ),
1732 THER_HYDR =FACT(statut='f',min=0,max=1,
1733 LAMBDA =SIMP(statut='o',typ=fonction),
1734 BETA =SIMP(statut='f',typ=fonction),
1735 AFFINITE =SIMP(statut='o',typ=fonction),
1736 CHALHYDR =SIMP(statut='o',typ='R'),
1737 QSR_K =SIMP(statut='o',typ='R'),
1738 VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("HYDR",) ),
1739 VERI_P2 =SIMP(statut='c',typ='TXM',defaut="HYDR",into=("HYDR",) ),
1741 THER =FACT(statut='f',min=0,max=1,
1742 LAMBDA =SIMP(statut='o',typ='R'),
1743 RHO_CP =SIMP(statut='f',typ='R'),
1745 THER_FO =FACT(statut='f',min=0,max=1,
1746 LAMBDA =SIMP(statut='o',typ=fonction),
1747 RHO_CP =SIMP(statut='f',typ=fonction),
1748 VERI_P1 =SIMP(statut='c',typ='TXM',defaut="INST",into=("INST",) ),
1752 RETOUR=PROC(nom="RETOUR",op= -2,docu="U4.13.02-e",
1753 UIinfo={"groupes":("Gestion du travail",)},
1754 fr="Retour au fichier de commandes appelant",
1758 def __init__(self,min,max):
1761 def __convert__(self,valeur):
1762 if type(valeur) == types.StringType:
1763 if self.min <= len(valeur) <= self.max:
1767 return "Chaine de longueur comprise entre %s et %s" % (self.min,self.max)
1772 def __init__(self,ntuple):
1775 def __convert__(self,valeur):
1776 if type(valeur) == types.StringType:
1778 if len(valeur) != self.ntuple:
1783 return "Tuple de %s elements" % self.ntuple
1787 CCAR=PROC(nom="CCAR",op=15,MCS=SIMP(typ=Tuple(3),statut='o',min=1,max=5),
1788 MCS1=SIMP(typ=(Tuple(2),LongStr(3,8)),statut='o',min=3,max=8),
1789 MCS2=SIMP(typ=Tuple(2),statut='o',min=3,max=8),
1790 MCS3=SIMP(typ='R',statut='o',min=3,max=8),