From: Pascale Noyret Date: Fri, 8 Jun 2007 09:04:59 +0000 (+0000) Subject: Modification V9.0.30 X-Git-Tag: V1_12a2~26 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=b509ec52d3bda177f6a7d7b4b9b9df102809eada;p=tools%2Feficas.git Modification V9.0.30 --- diff --git a/Aster/Cata/cataSTA9/Macro/calc_fonction_ops.py b/Aster/Cata/cataSTA9/Macro/calc_fonction_ops.py index a541180f..2d768fa6 100644 --- a/Aster/Cata/cataSTA9/Macro/calc_fonction_ops.py +++ b/Aster/Cata/cataSTA9/Macro/calc_fonction_ops.py @@ -1,4 +1,4 @@ -#@ MODIF calc_fonction_ops Macro DATE 02/05/2006 AUTEUR MCOURTOI M.COURTOIS +#@ MODIF calc_fonction_ops Macro DATE 30/05/2007 AUTEUR COURTOIS M.COURTOIS # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -18,316 +18,385 @@ # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== +import copy +import traceback +from math import pi + +# ----------------------------------------------------------------------------- def tocomplex(arg): if arg[0]=='RI' : return complex(arg[1],arg[2]) if arg[0]=='MP' : return complex(arg[1]*cos(arg[2]),arg[1]*sin(arg[2])) + +# ----------------------------------------------------------------------------- def calc_fonction_ops(self,FFT,DERIVE,INTEGRE,LISS_ENVELOP, SPEC_OSCI,ABS,COMB,COMB_C,COMPOSE,EXTRACTION, ENVELOPPE,ASSE,CORR_ACCE,PUISSANCE,INVERSE, NOM_PARA,NOM_RESU,INTERPOL,PROL_DROITE, PROL_GAUCHE,NOM_PARA_FONC,INTERPOL_FONC,PROL_DROITE_FONC, PROL_GAUCHE_FONC,INFO,**args): - """ - Ecriture de la macro CALC_FONCTION - """ - ier=0 - import types - import string - import copy - from math import pi - from Utilitai.t_fonction import t_fonction,t_fonction_c,t_nappe - from Utilitai import liss_enveloppe - from Accas import _F - from Cata.cata import nappe_sdaster,fonction_sdaster,fonction_c - from Utilitai.Utmess import UTMESS - from Numeric import alltrue,less,array,reshape,cos,sin,exp,sqrt - from Numeric import choose,zeros,Float - import aster_fonctions - EnumType = (types.ListType,types.TupleType) - - ### On importe les definitions des commandes a utiliser dans la macro - DEFI_FONCTION = self.get_cmd('DEFI_FONCTION') - IMPR_FONCTION = self.get_cmd('IMPR_FONCTION') - DEFI_NAPPE = self.get_cmd('DEFI_NAPPE') - - ### Comptage commandes + déclaration concept sortant - self.set_icmd(1) - self.DeclareOut('C_out',self.sd) - - ### type de traitement - ### - if (INTEGRE != None): - __ff=INTEGRE['FONCTION'].convert() - if INTEGRE['METHODE']=='TRAPEZE' : __ex=__ff.trapeze(INTEGRE['COEF']) - if INTEGRE['METHODE']=='SIMPSON' : __ex=__ff.simpson(INTEGRE['COEF']) - ### - if (DERIVE != None): - __ff=DERIVE['FONCTION'].convert() - __ex=__ff.derive() - ### - if (INVERSE != None): - __ff=INVERSE['FONCTION'].convert() - __ex=__ff.inverse() - ### - if (ABS != None): - __ff=ABS['FONCTION'].convert() - __ex=__ff.abs() - ### - if (COMPOSE != None): - __ff=COMPOSE['FONC_RESU'].convert() - __fg=COMPOSE['FONC_PARA'].convert() - __ex=__ff[__fg] - ### - if (ASSE != None): - __f0=ASSE['FONCTION'][0].convert() - __f1=ASSE['FONCTION'][1].convert() - __ex=__f0.cat(__f1,ASSE['SURCHARGE']) - ### - if (COMB != None): - list_fonc=[] - if isinstance(self.sd,nappe_sdaster): - for mcfact in COMB : - list_fonc.append(mcfact['FONCTION'].convert()) - list_fonch=[] - for f in list_fonc : - __ex=f - for g in list_fonc : - __ex=__ex.homo_support(g) - list_fonch.append(__ex) - list_fonc=list_fonch - elif isinstance(self.sd,fonction_sdaster): - for mcfact in COMB : - __ex=mcfact['FONCTION'].convert() - list_fonc.append(__ex) - - __ex=list_fonc[0] - __ex=__ex*COMB[0]['COEF'] - i=1 - for item in list_fonc[1:] : - item=item*COMB[i]['COEF'] - __ex=__ex+item - i=i+1 - ### - if (COMB_C != None): - list_fonc=[] - if isinstance(self.sd,nappe_sdaster): - for mcfact in COMB_C : - list_fonc.append(mcfact['FONCTION'].convert()) - list_fonch=[] - for f in list_fonc : - __ex=f - for g in list_fonc : - __ex=__ex.homo_support(g) - list_fonch.appen(__ex) - list_fonc=list_fonch - elif isinstance(self.sd,fonction_sdaster) or isinstance(self.sd,fonction_c): - for mcfact in COMB_C : - __ex=mcfact['FONCTION'].convert(arg='complex') - list_fonc.append(__ex) - - __ex=list_fonc[0] - if COMB_C[0]['COEF_R']!=None: __ex=__ex*complex(COMB_C[0]['COEF_R']) - if COMB_C[0]['COEF_C']!=None: - if type(COMB_C[0]['COEF_C']) in EnumType : __ex=__ex*tocomplex(COMB_C[0]['COEF_C']) - else : __ex=__ex*COMB_C[0]['COEF_C'] - i=1 - for item in list_fonc[1:] : - if COMB_C[i]['COEF_R']!=None: coef=complex(COMB_C[i]['COEF_R']) - if COMB_C[i]['COEF_C']!=None: - if type(COMB_C[i]['COEF_C']) in EnumType : coef=tocomplex(COMB_C[i]['COEF_C']) - else : coef=COMB_C[i]['COEF_C'] - item=item*coef - __ex=__ex+item - i=i+1 - ### mot clé LIST_PARA uniquement présent si COMB ou COMB_C - if (COMB != None) or (COMB_C != None) : - if (args['LIST_PARA'] != None) : - __ex=__ex.evalfonc(args['LIST_PARA'].Valeurs()) - ### - if (PUISSANCE != None): - __ff=PUISSANCE['FONCTION'].convert() - __ex=__ff - for i in range(PUISSANCE['EXPOSANT']-1) : __ex=__ex*__ff - ### - if (EXTRACTION != None): - if EXTRACTION['PARTIE']=='REEL' : __ex=EXTRACTION['FONCTION'].convert(arg='real') - if EXTRACTION['PARTIE']=='IMAG' : __ex=EXTRACTION['FONCTION'].convert(arg='imag') - if EXTRACTION['PARTIE']=='MODULE' : __ex=EXTRACTION['FONCTION'].convert(arg='modul') - if EXTRACTION['PARTIE']=='PHASE' : __ex=EXTRACTION['FONCTION'].convert(arg='phase') - ### - if (ENVELOPPE != None): - list_fonc=[] - l_env=ENVELOPPE['FONCTION'] - if type(l_env) not in EnumType : l_env=(l_env,) - if isinstance(self.sd,nappe_sdaster): - for f in l_env : list_fonc.append(f.convert()) - list_fonch=[] - for f in list_fonc : - __ff=f - for g in list_fonc : - __ff=__ff.homo_support(g) - list_fonch.append(__ff) - list_fonc=list_fonch - vale_para=list_fonc[0].vale_para - para =list_fonc[0].para - l_fonc_f =[] - for i in range(len(vale_para)): - __ff=list_fonc[0].l_fonc[i] - if ENVELOPPE['CRITERE']=='SUP' : - for f in list_fonc[1:] : __ff=__ff.sup(f.l_fonc[i]) - if ENVELOPPE['CRITERE']=='INF' : - for f in list_fonc[1:] : __ff=__ff.inf(f.l_fonc[i]) - l_fonc_f.append(__ff) - __ex=t_nappe(vale_para,l_fonc_f,para) - elif isinstance(self.sd,fonction_sdaster): - for f in l_env : list_fonc.append(f.convert()) - __ex=list_fonc[0] - if ENVELOPPE['CRITERE']=='SUP' : - for f in list_fonc[1:] : __ex=__ex.sup(f) - if ENVELOPPE['CRITERE']=='INF' : - for f in list_fonc[1:] : __ex=__ex.inf(f) - ### - if (CORR_ACCE != None): - __ex=CORR_ACCE['FONCTION'].convert() - para=copy.copy(__ex.para) - # suppression de la tendance de l accelero - __ex=__ex.suppr_tend() - # calcul de la vitesse - __ex=__ex.trapeze(0.) - # calcul de la tendance de la vitesse : y = a1*x +a0 - __ex=__ex.suppr_tend() - if CORR_ACCE['CORR_DEPL']=='OUI': - # suppression de la tendance deplacement - # calcul du deplacement : integration - __ex=__ex.trapeze(0.) - # calcul de la tendance du déplacement : y = a1*x +a0 - __ex=__ex.suppr_tend() - # regeneration de la vitesse : derivation - __ex=__ex.derive() - # regeneration de l accelero : derivation - __ex=__ex.derive() - __ex.para=para - ### - if (FFT != None): - if isinstance(self.sd,fonction_c): - __ff=FFT['FONCTION'].convert() - __ex=__ff.fft(FFT['METHODE']) - if isinstance(self.sd,fonction_sdaster): - __ff=FFT['FONCTION'].convert(arg='complex') - __ex=__ff.fft(FFT['METHODE'],FFT['SYME']) - ### - if (SPEC_OSCI != None): - if SPEC_OSCI['AMOR_REDUIT']==None : - l_amor=[0.02,0.05,0.1] - UTMESS('I','CALC_FONCTION',' : génération par défaut de 3 amortissements :'+str(l_amor)) - else : - if type(SPEC_OSCI['AMOR_REDUIT']) not in EnumType : + """ + Ecriture de la macro CALC_FONCTION + """ + ier=0 + from Utilitai.t_fonction import t_fonction, t_fonction_c, t_nappe, homo_support_nappe, \ + FonctionError, ParametreError, InterpolationError, ProlongementError + from Utilitai import liss_enveloppe + from Accas import _F + from Cata.cata import nappe_sdaster,fonction_sdaster,fonction_c + from Utilitai.Utmess import UTMESS, U2MESS + from Numeric import alltrue,less,array,reshape,cos,sin,exp,sqrt + from Numeric import choose,zeros,Float + import aster_fonctions + EnumTypes = (list, tuple) + + ### On importe les definitions des commandes a utiliser dans la macro + DEFI_FONCTION = self.get_cmd('DEFI_FONCTION') + IMPR_FONCTION = self.get_cmd('IMPR_FONCTION') + DEFI_NAPPE = self.get_cmd('DEFI_NAPPE') + + ### Comptage commandes + déclaration concept sortant + self.set_icmd(1) + self.DeclareOut('C_out',self.sd) + + # éléments de contexte + ctxt = Context() + ### l'ensemble est dans un try/except pour recuperer les erreurs du module t_fonction + try: + ### + if (INTEGRE != None): + __ff=INTEGRE['FONCTION'].convert() + ctxt.f = __ff.nom + if INTEGRE['METHODE']=='TRAPEZE' : + __ex=__ff.trapeze(INTEGRE['COEF']) + elif INTEGRE['METHODE']=='SIMPSON' : + __ex=__ff.simpson(INTEGRE['COEF']) + ### + if (DERIVE != None): + __ff=DERIVE['FONCTION'].convert() + ctxt.f = __ff.nom + __ex=__ff.derive() + ### + if (INVERSE != None): + __ff=INVERSE['FONCTION'].convert() + ctxt.f = __ff.nom + __ex=__ff.inverse() + ### + if (ABS != None): + __ff=ABS['FONCTION'].convert() + ctxt.f = __ff.nom + __ex=__ff.abs() + ### + if (COMPOSE != None): + __ff=COMPOSE['FONC_RESU'].convert() + __fg=COMPOSE['FONC_PARA'].convert() + ctxt.f = [__ff.nom, __fg.nom] + __ex=__ff[__fg] + ### + if (ASSE != None): + __f0=ASSE['FONCTION'][0].convert() + __f1=ASSE['FONCTION'][1].convert() + ctxt.f = [__f0.nom, __f1.nom] + __ex=__f0.cat(__f1,ASSE['SURCHARGE']) + ### + if (COMB != None): + list_fonc=[] + if isinstance(self.sd,nappe_sdaster): + for mcfact in COMB : + list_fonc.append(mcfact['FONCTION'].convert()) + ctxt.f = [f.nom for f in list_fonc] + list_fonc = homo_support_nappe(list_fonc) + elif isinstance(self.sd,fonction_sdaster): + for mcfact in COMB : + __ex=mcfact['FONCTION'].convert() + list_fonc.append(__ex) + + __ex = 0. + for item, comb in zip(list_fonc, COMB): + ctxt.f = item.nom + __ex = item * comb['COEF'] + __ex + # on prend les paramètres de la 1ère fonction + __ex.para = copy.copy(list_fonc[0].para) + ### + if (COMB_C != None): + list_fonc=[] + if isinstance(self.sd,nappe_sdaster): + for mcfact in COMB_C: + list_fonc.append(mcfact['FONCTION'].convert()) + ctxt.f = [f.nom for f in list_fonc] + list_fonc = homo_support_nappe(list_fonc) + elif isinstance(self.sd,fonction_sdaster) or isinstance(self.sd,fonction_c): + for mcfact in COMB_C : + __ex=mcfact['FONCTION'].convert(arg='complex') + list_fonc.append(__ex) + + __ex = 0. + for item, comb in zip(list_fonc, COMB_C): + if comb['COEF_R'] != None: + coef = complex(comb['COEF_R']) + elif comb['COEF_C'] != None: + if type(comb['COEF_C']) in EnumTypes: + coef = tocomplex(comb['COEF_C']) + else: + coef = comb['COEF_C'] + ctxt.f = item.nom + __ex = item * coef + __ex + # on prend les paramètres de la 1ère fonction + __ex.para = copy.copy(list_fonc[0].para) + + ### mot clé LIST_PARA uniquement présent si COMB ou COMB_C + if (COMB != None) or (COMB_C != None) : + if (args['LIST_PARA'] != None) : + __ex=__ex.evalfonc(args['LIST_PARA'].Valeurs()) + ### + if (PUISSANCE != None): + __ff=PUISSANCE['FONCTION'].convert() + ctxt.f = __ff.nom + __ex=__ff + for i in range(PUISSANCE['EXPOSANT']-1): + __ex=__ex*__ff + ### + if (EXTRACTION != None): + if EXTRACTION['PARTIE']=='REEL': + __ex=EXTRACTION['FONCTION'].convert(arg='real') + if EXTRACTION['PARTIE']=='IMAG': + __ex=EXTRACTION['FONCTION'].convert(arg='imag') + if EXTRACTION['PARTIE']=='MODULE': + __ex=EXTRACTION['FONCTION'].convert(arg='modul') + if EXTRACTION['PARTIE']=='PHASE': + __ex=EXTRACTION['FONCTION'].convert(arg='phase') + ### + if (ENVELOPPE != None): + list_fonc=[] + l_env=ENVELOPPE['FONCTION'] + if type(l_env) not in EnumTypes: + l_env=(l_env,) + if isinstance(self.sd,nappe_sdaster): + for f in l_env: + list_fonc.append(f.convert()) + ctxt.f = [f.nom for f in list_fonc] + list_fonc = homo_support_nappe(list_fonc) + vale_para=list_fonc[0].vale_para + para =list_fonc[0].para + l_fonc_f =[] + for i in range(len(vale_para)): + __ff=list_fonc[0].l_fonc[i] + for nap in list_fonc[1:] : + ctxt.f = nap.l_fonc[i].nom + __ff=__ff.enveloppe(nap.l_fonc[i], ENVELOPPE['CRITERE']) + l_fonc_f.append(__ff) + __ex=t_nappe(vale_para,l_fonc_f,para) + elif isinstance(self.sd,fonction_sdaster): + for f in l_env: + list_fonc.append(f.convert()) + __ex=list_fonc[0] + for f in list_fonc[1:]: + ctxt.f = [__ex.nom, f.nom] + __ex = __ex.enveloppe(f, ENVELOPPE['CRITERE']) + ### + if (CORR_ACCE != None): + __ex=CORR_ACCE['FONCTION'].convert() + ctxt.f = __ex.nom + para=copy.copy(__ex.para) + # suppression de la tendance de l accelero + __ex=__ex.suppr_tend() + # calcul de la vitesse + __ex=__ex.trapeze(0.) + # calcul de la tendance de la vitesse : y = a1*x +a0 + __ex=__ex.suppr_tend() + if CORR_ACCE['CORR_DEPL']=='OUI': + # suppression de la tendance deplacement + # calcul du deplacement : integration + __ex=__ex.trapeze(0.) + # calcul de la tendance du déplacement : y = a1*x +a0 + __ex=__ex.suppr_tend() + # regeneration de la vitesse : derivation + __ex=__ex.derive() + # regeneration de l accelero : derivation + __ex=__ex.derive() + __ex.para=para + ### + if (FFT != None): + if isinstance(self.sd,fonction_c): + __ff=FFT['FONCTION'].convert() + ctxt.f = __ff.nom + __ex=__ff.fft(FFT['METHODE']) + if isinstance(self.sd,fonction_sdaster): + __ff=FFT['FONCTION'].convert(arg='complex') + ctxt.f = __ff.nom + __ex=__ff.fft(FFT['METHODE'],FFT['SYME']) + ### + if (SPEC_OSCI != None): + if SPEC_OSCI['AMOR_REDUIT']==None: + l_amor=[0.02, 0.05, 0.1] + UTMESS('I','CALC_FONCTION',' : génération par défaut de 3 amortissements :'+str(l_amor)) + else: + if type(SPEC_OSCI['AMOR_REDUIT']) not in EnumTypes : l_amor=[SPEC_OSCI['AMOR_REDUIT'],] - else : l_amor= SPEC_OSCI['AMOR_REDUIT'] - if SPEC_OSCI['FREQ']==None and SPEC_OSCI['LIST_FREQ']==None: - l_freq=[] - for i in range(56) : l_freq.append( 0.2+0.050*i) - for i in range( 8) : l_freq.append( 3.0+0.075*i) - for i in range(14) : l_freq.append( 3.6+0.100*i) - for i in range(24) : l_freq.append( 5.0+0.125*i) - for i in range(28) : l_freq.append( 8.0+0.250*i) - for i in range( 6) : l_freq.append(15.0+0.500*i) - for i in range( 4) : l_freq.append(18.0+1.000*i) - for i in range(10) : l_freq.append(22.0+1.500*i) - texte=[] - for i in range(len(l_freq)/5) : - texte.append(' %f %f %f %f %f' %tuple(l_freq[i*5:i*5+5])) - UTMESS('I','CALC_FONCTION',' : génération par défaut de 150 fréquences :\n'+'\n'.join(texte)) - elif SPEC_OSCI['LIST_FREQ']!=None: - l_freq=SPEC_OSCI['LIST_FREQ'].Valeurs() - elif SPEC_OSCI['FREQ']!=None: - if type(SPEC_OSCI['FREQ']) not in EnumType: + else: + l_amor= SPEC_OSCI['AMOR_REDUIT'] + if SPEC_OSCI['FREQ']==None and SPEC_OSCI['LIST_FREQ']==None: + l_freq=[] + for i in range(56): + l_freq.append( 0.2+0.050*i) + for i in range( 8): + l_freq.append( 3.0+0.075*i) + for i in range(14): + l_freq.append( 3.6+0.100*i) + for i in range(24): + l_freq.append( 5.0+0.125*i) + for i in range(28): + l_freq.append( 8.0+0.250*i) + for i in range( 6): + l_freq.append(15.0+0.500*i) + for i in range( 4): + l_freq.append(18.0+1.000*i) + for i in range(10): + l_freq.append(22.0+1.500*i) + texte=[] + for i in range(len(l_freq)/5) : + texte.append(' %f %f %f %f %f' %tuple(l_freq[i*5:i*5+5])) + UTMESS('I','CALC_FONCTION',' : génération par défaut de 150 fréquences :\n'+'\n'.join(texte)) + elif SPEC_OSCI['LIST_FREQ']!=None: + l_freq=SPEC_OSCI['LIST_FREQ'].Valeurs() + elif SPEC_OSCI['FREQ']!=None: + if type(SPEC_OSCI['FREQ']) not in EnumTypes: l_freq=[SPEC_OSCI['FREQ'],] - else : l_freq= SPEC_OSCI['FREQ'] - if abs(SPEC_OSCI['NORME'])<1.E-10 : - UTMESS('S','CALC_FONCTION',' : SPEC_OSCI, la norme ne peut etre nulle') - if SPEC_OSCI['NATURE_FONC']!='ACCE' : - UTMESS('S','CALC_FONCTION',' : SPEC_OSCI, le type de la fonction doit etre ACCE') - if SPEC_OSCI['METHODE']!='NIGAM' : - UTMESS('S','CALC_FONCTION',' : SPEC_OSCI, seule la méthode NIGAM est codée') - eps=1.e-6 - for amor in l_amor : - if amor>(1-eps) : - UTMESS('S','CALC_FONCTION',' : SPEC_OSCI, la méthode choisie '\ - 'suppose des amortissements sous-critiques, amor<1.') - - __ff=SPEC_OSCI['FONCTION'].convert() - - # appel à SPEC_OSCI - spectr = aster_fonctions.SPEC_OSCI(__ff.vale_x, __ff.vale_y, l_freq, l_amor) + else: + l_freq= SPEC_OSCI['FREQ'] + if abs(SPEC_OSCI['NORME'])<1.E-10 : + UTMESS('S','CALC_FONCTION',' : SPEC_OSCI, la norme ne peut etre nulle') + if SPEC_OSCI['NATURE_FONC']!='ACCE' : + UTMESS('S','CALC_FONCTION',' : SPEC_OSCI, le type de la fonction doit etre ACCE') + if SPEC_OSCI['METHODE']!='NIGAM' : + UTMESS('S','CALC_FONCTION',' : SPEC_OSCI, seule la méthode NIGAM est codée') + eps=1.e-6 + for amor in l_amor : + if amor>(1-eps) : + UTMESS('S','CALC_FONCTION',' : SPEC_OSCI, la méthode choisie '\ + 'suppose des amortissements sous-critiques, amor<1.') + + __ff=SPEC_OSCI['FONCTION'].convert() + ctxt.f = __ff.nom + + # appel à SPEC_OSCI + spectr = aster_fonctions.SPEC_OSCI(__ff.vale_x, __ff.vale_y, l_freq, l_amor) + + # construction de la nappe + vale_para = l_amor + para = { 'INTERPOL' : ['LIN','LOG'], + 'NOM_PARA_FONC' : 'FREQ', + 'NOM_PARA' : 'AMOR', + 'PROL_DROITE' : 'EXCLU', + 'PROL_GAUCHE' : 'EXCLU', + 'NOM_RESU' : SPEC_OSCI['NATURE'] } + para_fonc = { 'INTERPOL' : ['LOG','LOG'], + 'NOM_PARA' : 'FREQ', + 'PROL_DROITE' : 'CONSTANT', + 'PROL_GAUCHE' : 'EXCLU', + 'NOM_RESU' : SPEC_OSCI['NATURE'] } + if SPEC_OSCI['NATURE']=='DEPL': + ideb = 0 + elif SPEC_OSCI['NATURE']=='VITE': + ideb = 1 + else: + ideb = 2 + l_fonc = [] + for iamor in range(len(l_amor)) : + l_fonc.append(t_fonction(l_freq,spectr[iamor,ideb,:]/SPEC_OSCI['NORME'],para_fonc)) + __ex=t_nappe(vale_para,l_fonc,para) + ### + if (LISS_ENVELOP!= None): + __ff=LISS_ENVELOP['NAPPE'].convert() + sp_nappe=liss_enveloppe.nappe(listFreq=__ff.l_fonc[0].vale_x, listeTable=[f.vale_y for f in __ff.l_fonc], listAmor=__ff.vale_para, entete="") + sp_lisse=liss_enveloppe.lissage(nappe=sp_nappe,fmin=LISS_ENVELOP['FREQ_MIN'],fmax=LISS_ENVELOP['FREQ_MAX'],elarg=LISS_ENVELOP['ELARG'],tole_liss=LISS_ENVELOP['TOLE_LISS']) + para_fonc=__ff.l_fonc[0].para + l_fonc=[] + for val in sp_lisse.listTable: + l_fonc.append(t_fonction(sp_lisse.listFreq,val,para_fonc)) + __ex=t_nappe(vale_para=sp_lisse.listAmor,l_fonc=l_fonc,para=__ff.para) - # construction de la nappe - vale_para = l_amor - para = { 'INTERPOL' : ['LIN','LOG'], - 'NOM_PARA_FONC' : 'FREQ', - 'NOM_PARA' : 'AMOR', - 'PROL_DROITE' : 'EXCLU', - 'PROL_GAUCHE' : 'EXCLU', - 'NOM_RESU' : SPEC_OSCI['NATURE'] } - para_fonc = { 'INTERPOL' : ['LOG','LOG'], - 'NOM_PARA' : 'FREQ', - 'PROL_DROITE' : 'CONSTANT', - 'PROL_GAUCHE' : 'EXCLU', - 'NOM_RESU' : SPEC_OSCI['NATURE'] } - if SPEC_OSCI['NATURE']=='DEPL' : ideb = 0 - elif SPEC_OSCI['NATURE']=='VITE' : ideb = 1 - else : ideb = 2 - l_fonc = [] - for iamor in range(len(l_amor)) : - l_fonc.append(t_fonction(l_freq,spectr[iamor,ideb,:]/SPEC_OSCI['NORME'],para_fonc)) - __ex=t_nappe(vale_para,l_fonc,para) - ### - if (LISS_ENVELOP!= None): - __ff=LISS_ENVELOP['NAPPE'].convert() - sp_nappe=liss_enveloppe.nappe(listFreq=__ff.l_fonc[0].vale_x, listeTable=[f.vale_y for f in __ff.l_fonc], listAmor=__ff.vale_para, entete="") - sp_lisse=liss_enveloppe.lissage(nappe=sp_nappe,fmin=LISS_ENVELOP['FREQ_MIN'],fmax=LISS_ENVELOP['FREQ_MAX'],elarg=LISS_ENVELOP['ELARG'],tole_liss=LISS_ENVELOP['TOLE_LISS']) - para_fonc=__ff.l_fonc[0].para - l_fonc=[] - for val in sp_lisse.listTable : - l_fonc.append(t_fonction(sp_lisse.listFreq,val,para_fonc)) - __ex=t_nappe(vale_para=sp_lisse.listAmor,l_fonc=l_fonc,para=__ff.para) - - ### creation de la fonction produite par appel à DEFI_FONCTION - ### on récupère les paramètres issus du calcul de __ex - ### et on les surcharge par ceux imposés par l'utilisateur + except InterpolationError, msg: + U2MESS('F', 'FONCT0_27', valk=(ctxt.f, str(msg))) + except ParametreError, msg: + U2MESS('F', 'FONCT0_28', valk=(ctxt.f, str(msg))) + except ProlongementError, msg: + U2MESS('F', 'FONCT0_29', valk=(ctxt.f, str(msg))) + except FonctionError, msg: + U2MESS('F', 'FONCT0_30', valk=(ctxt.f, str(msg), traceback.format_exc())) + + ### creation de la fonction produite par appel à DEFI_FONCTION + ### on récupère les paramètres issus du calcul de __ex + ### et on les surcharge par ceux imposés par l'utilisateur + + if isinstance(__ex,t_fonction) or isinstance(__ex,t_fonction_c): + para=__ex.para + if NOM_PARA !=None : para['NOM_PARA'] =NOM_PARA + if NOM_RESU !=None : para['NOM_RESU'] =NOM_RESU + if PROL_DROITE!=None : para['PROL_DROITE']=PROL_DROITE + if PROL_GAUCHE!=None : para['PROL_GAUCHE']=PROL_GAUCHE + if INTERPOL !=None : para['INTERPOL'] =INTERPOL + if isinstance(__ex,t_fonction_c): para['VALE_C'] = __ex.tabul() + elif isinstance(__ex,t_fonction) : para['VALE'] = __ex.tabul() + C_out=DEFI_FONCTION(**para) + elif isinstance(__ex,t_nappe): + def_fonc=[] + for f in __ex.l_fonc : + para=f.para + def_fonc.append(_F(VALE =f.tabul(), + INTERPOL =f.para['INTERPOL'], + PROL_DROITE=f.para['PROL_DROITE'], + PROL_GAUCHE=f.para['PROL_GAUCHE'],)) + para=__ex.para + if NOM_PARA !=None : para['NOM_PARA'] =NOM_PARA + if NOM_RESU !=None : para['NOM_RESU'] =NOM_RESU + if PROL_DROITE !=None : para['PROL_DROITE']=PROL_DROITE + if PROL_GAUCHE !=None : para['PROL_GAUCHE']=PROL_GAUCHE + if NOM_PARA_FONC !=None : para['NOM_PARA_FONC'] =INTERPOL + if INTERPOL_FONC !=None : para['INTERPOL'] =INTERPOL + C_out=DEFI_NAPPE(PARA=__ex.vale_para.tolist(),DEFI_FONCTION=def_fonc,**para) + if INFO > 1: + IMPR_FONCTION(FORMAT='TABLEAU', + UNITE=6, + COURBE=_F(FONCTION=C_out),) + return ier - if isinstance(__ex,t_fonction) or isinstance(__ex,t_fonction_c): - para=__ex.para - if NOM_PARA !=None : para['NOM_PARA'] =NOM_PARA - if NOM_RESU !=None : para['NOM_RESU'] =NOM_RESU - if PROL_DROITE!=None : para['PROL_DROITE']=PROL_DROITE - if PROL_GAUCHE!=None : para['PROL_GAUCHE']=PROL_GAUCHE - if INTERPOL !=None : para['INTERPOL'] =INTERPOL - if isinstance(__ex,t_fonction_c): para['VALE_C'] = __ex.tabul() - elif isinstance(__ex,t_fonction) : para['VALE'] = __ex.tabul() - C_out=DEFI_FONCTION(**para) - elif isinstance(__ex,t_nappe): - def_fonc=[] - for f in __ex.l_fonc : - para=f.para - def_fonc.append(_F(VALE =f.tabul(), - INTERPOL =f.para['INTERPOL'], - PROL_DROITE=f.para['PROL_DROITE'], - PROL_GAUCHE=f.para['PROL_GAUCHE'],) - ) - para=__ex.para - if NOM_PARA !=None : para['NOM_PARA'] =NOM_PARA - if NOM_RESU !=None : para['NOM_RESU'] =NOM_RESU - if PROL_DROITE !=None : para['PROL_DROITE']=PROL_DROITE - if PROL_GAUCHE !=None : para['PROL_GAUCHE']=PROL_GAUCHE - if NOM_PARA_FONC !=None : para['NOM_PARA_FONC'] =INTERPOL - if INTERPOL_FONC !=None : para['INTERPOL'] =INTERPOL - C_out=DEFI_NAPPE(PARA=__ex.vale_para.tolist(),DEFI_FONCTION=def_fonc,**para) - if INFO > 1: - IMPR_FONCTION(FORMAT='TABLEAU', - UNITE=6, - COURBE=_F(FONCTION=C_out),) - return ier +# ----------------------------------------------------------------------------- +class Context(object): + """Permet de stocker des éléments de contexte pour aider au + diagnostic lors de l'émission de message. + usage : + context = Context() + context.f = 'nomfon' + print context.f + """ + def __init__(self): + self.__nomf = None + + def get_val(self): + """Retourne le texte formatté. + """ + nomf = self.__nomf + if type(nomf) not in (list, tuple): + nomf = [nomf,] + pluriel = '' + if len(nomf) > 1: + pluriel = 's' + try: + res = """Fonction%(s)s concernée%(s)s : %(nomf)s""" % { + 's' : pluriel, + 'nomf' : ', '.join(nomf), + } + except: + res = 'erreur de programmation !' + return res + + def set_val(self, value): + self.__nomf = value + + def del_val(self): + del self.__nomf + + f = property(get_val, set_val, del_val, "") diff --git a/Aster/Cata/cataSTA9/Macro/macro_miss_3d_ops.py b/Aster/Cata/cataSTA9/Macro/macro_miss_3d_ops.py index 97b6bd15..580a9298 100644 --- a/Aster/Cata/cataSTA9/Macro/macro_miss_3d_ops.py +++ b/Aster/Cata/cataSTA9/Macro/macro_miss_3d_ops.py @@ -1,4 +1,4 @@ -#@ MODIF macro_miss_3d_ops Macro DATE 31/10/2006 AUTEUR ACBHHCD G.DEVESA +#@ MODIF macro_miss_3d_ops Macro DATE 29/05/2007 AUTEUR VOLDOIRE F.VOLDOIRE # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -58,9 +58,9 @@ def macro_miss_3d_ops(self,UNITE_IMPR_ASTER,UNITE_OPTI_MISS, miss3d=loc_fic+'miss3d' - if VERSION=='V1_2': - if PARAMETRE != None and PARAMETRE['TYPE']=='BINAIRE': - raise AsException("MACRO_MISS_3D/PARAMETRE : type incompatible avec version") + # if VERSION=='V1_2': + # if PARAMETRE != None and PARAMETRE['TYPE']=='BINAIRE': + # raise AsException("MACRO_MISS_3D/PARAMETRE : type incompatible avec version") if OPTION['TOUT']!=None: MODUL2='COMPLET' diff --git a/Aster/Cata/cataSTA9/Macro/observation_ops.py b/Aster/Cata/cataSTA9/Macro/observation_ops.py new file mode 100644 index 00000000..62caa230 --- /dev/null +++ b/Aster/Cata/cataSTA9/Macro/observation_ops.py @@ -0,0 +1,596 @@ +#@ MODIF observation_ops Macro DATE 05/06/2007 AUTEUR BODEL C.BODEL + +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2007 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== + + + + + +def observation_ops(self, + PROJECTION = None, + MODELE_1 = None, + MODELE_2 = None, + RESULTAT = None, + NUME_DDL = None, + MODI_REPERE = None, + NOM_CHAM = None, + FILTRE = None, + **args): + + """ + Ecriture de la macro MACRO_OBSERVATION + """ + ier=0 + + + # La macro compte pour 1 dans la numerotation des commandes + self.set_icmd(1) + + # on transforme le mc MODI_REPERE pour ne pas le confondre avec l'operateur + # du meme nom + MODIF_REPERE = MODI_REPERE + + # importation de commandes + import aster + import Numeric + from Accas import _F + from Utilitai.UniteAster import UniteAster + from Utilitai.Utmess import UTMESS + from Cata.cata import mode_meca, dyna_harmo, evol_elas, base_modale + MODI_REPERE = self.get_cmd('MODI_REPERE') + PROJ_CHAMP = self.get_cmd('PROJ_CHAMP') + CREA_CHAMP = self.get_cmd('CREA_CHAMP') + CREA_RESU = self.get_cmd('CREA_RESU') + DEFI_BASE_MODALE = self.get_cmd('DEFI_BASE_MODALE') + DETRUIRE = self.get_cmd('DETRUIRE') + + # dans **args, on range les options de PROJ_CHAMP facultatives, et dont on + # ne sert pas par la suite + mcfact = args + + # La macro n'est pas encoire capable de traiter les resultats dyna_harmo + if isinstance(RESULTAT, dyna_harmo): + UTMESS('E',UTILITAI7_8) + + +#*********************************************** +# PHASE DE PROJECTION +#*********************************************** + + if PROJECTION == 'OUI' : + __proj=PROJ_CHAMP(RESULTAT = RESULTAT, + MODELE_1 = MODELE_1, + MODELE_2 = MODELE_2, + NUME_DDL = NUME_DDL, + NOM_CHAM = NOM_CHAM, + **mcfact + ); + + else : + __proj = RESULTAT + + + + +#*********************************************** +# PHASE DE CHANGEMENT DE REPERE +#*********************************************** +# Le changement de repere se fait dans les routines exterieures crea_normale et crea_repere + +# On range dans le mcfact MODI_REPERE une liste de modifications. ex : +# MODI_REPERE = ( _F( GROUP_NO = toto, +# REPERE = 'NORMALE' ), +# CONDITION = (1.0,0.0,0.0), +# NOM_PARA = 'X') +# _F( NOEUD = ('a','z','e'...), +# REPERE = 'CYLINDRIQUE', +# ORIGINE = (0.,0.,0.), +# AXE_Z = (0.,1.,0.), ), +# _F( GROUP_NO = titi, +# REPERE = 'UTILISATEUR', +# ANGL_NAUT = (alpha, beta, gamma), ) +# ) + + + # cham_mater et cara_elem pour le resultat a projeter + jdc = CONTEXT.get_current_step().jdc + nom_cara_elem = aster.getvectjev( RESULTAT.nom.ljust(19) + '.CARA ' ) + nom_cara_elem = nom_cara_elem[0].strip() + cara_elem = jdc.sds_dict[nom_cara_elem] + nom_cham_mater = aster.getvectjev( RESULTAT.nom.ljust(19) + '.MATE ' ) + nom_cham_mater = nom_cham_mater[0].strip() + cham_mater = jdc.sds_dict[nom_cham_mater] + + # recuperation du maillage associe au modele experimental + _maillag = aster.getvectjev( MODELE_2.nom.ljust(8) + '.MODELE .NOMA ' ) + maillage = _maillag[0].strip() + jdc = CONTEXT.get_current_step().jdc + mayaexp = jdc.sds_dict[maillage] + + _maillag = aster.getvectjev( MODELE_1.nom.ljust(8) + '.MODELE .NOMA ' ) + maillage = _maillag[0].strip() + jdc = CONTEXT.get_current_step().jdc + mayanum = jdc.sds_dict[maillage] + + if MODIF_REPERE != None : + for modi_rep in MODIF_REPERE : + type_cham = modi_rep['TYPE_CHAM'] + nom_cmp = modi_rep['NOM_CMP'] + mcfact1 = { 'NOM_CMP' : nom_cmp, + 'TYPE_CHAM' : type_cham, + 'NOM_CHAM' : NOM_CHAM } + + mcfact2 = { } + modi_rep = modi_rep.val + + if modi_rep['REPERE'] == 'NORMALE' : + # Cas ou l'utilisateur choisit de creer les reperes locaux + # selon la normale. On fait un changement de repere local + # par noeud + for option in ['VECT_X','VECT_Y','CONDITION_X','CONDITION_Y'] : + if modi_rep.has_key(option): + vect = { option : modi_rep[option] } + if len(vect) != 1 : + U2MESS('E',UTILITAI7_9) + chnorm = crea_normale(self, MODELE_1, MODELE_2, + cham_mater, cara_elem, NUME_DDL) + + + chnormx = chnorm.EXTR_COMP('DX',[],1) + ind_noeuds = chnormx.noeud + nom_allno = [mayaexp.NOMNOE.get()[k-1] for k in ind_noeuds] + + # on met les noeuds conernes sous forme de liste et on va + # chercher les noeuds des mailles pour 'MAILLE' et 'GROUP_MA' + for typ in ['NOEUD','GROUP_NO','MAILLE','GROUP_MA','TOUT']: + if modi_rep.has_key(typ) : + list_no_exp = find_no(mayaexp, {typ : modi_rep[typ]}) + + # boucle sur les noeuds pour modifier les reperes. + __bid = [None]*(len(list_no_exp) + 1) + __bid[0] = __proj + k = 0 + for nomnoe in list_no_exp: + ind_no = nom_allno.index(nomnoe) + angl_naut = crea_repere(chnorm, ind_no, vect) + + mcfact1.update({ 'NOEUD' : nomnoe }) + mcfact2.update({ 'REPERE' : 'UTILISATEUR', + 'ANGL_NAUT' : angl_naut}) + args = {'MODI_CHAM' : mcfact1, + 'DEFI_REPERE' : mcfact2 } + __bid[k+1] = MODI_REPERE( RESULTAT = __bid[k], + TOUT_ORDRE = 'OUI', + CRITERE = 'RELATIF', + **args) + k = k + 1 + + __proj = __bid[-1:][0] + + + else: + for typ in ['NOEUD','GROUP_NO','MAILLE','GROUP_MA','TOUT']: + if modi_rep.has_key(typ) : + mcfact1.update({typ : modi_rep[typ]}) + if modi_rep['REPERE'] == 'CYLINDRIQUE' : + origine = modi_rep['ORIGINE'] + axe_z = modi_rep['AXE_Z'] + mcfact2.update({ 'REPERE' : 'CYLINDRIQUE', + 'ORIGINE' : origine, + 'AXE_Z' : axe_z }) + + elif modi_rep['REPERE'] == 'UTILISATEUR' : + angl_naut = modi_rep['ANGL_NAUT'] + mcfact2.update({ 'REPERE' : 'UTILISATEUR', + 'ANGL_NAUT' : angl_naut }) + args = {'MODI_CHAM' : mcfact1, + 'DEFI_REPERE' : mcfact2 } + __bid = MODI_REPERE( RESULTAT = __proj, + CRITERE = 'RELATIF', + **args) + __proj = __bid + + + else: # pas de modif de repere demandee + pass + + +#************************************************* +# Phase de selection des DDL de mesure +#************************************************* + # les numeros d'ordre de la sd_resu + num_ordr = RESULTAT.LIST_VARI_ACCES()['NUME_ORDRE'] + __cham = [None]*len(num_ordr) + list_cham = [] + + if FILTRE != None: + nb_fi = len(FILTRE) + + for ind in num_ordr: + filtres = [] + liste = [] + __chamex = CREA_CHAMP(TYPE_CHAM = 'NOEU_DEPL_R', + OPERATION = 'EXTR', + RESULTAT = __proj, + NOM_CHAM = 'DEPL', + NUME_ORDRE = ind,); + + for filtre in FILTRE : + mcfact1 = {} + filtre = filtre.val + for typ in ['NOEUD','GROUP_NO','MAILLE','GROUP_MA']: + if filtre.has_key(typ) : + mcfact1.update({typ : filtre[typ]}) + mcfact1.update({'NOM_CMP' : filtre['DDL_ACTIF'], + 'CHAM_GD' : __chamex }) + filtres.append(mcfact1) + + __cham[ind-1] = CREA_CHAMP(TYPE_CHAM = 'NOEU_DEPL_R', + OPERATION = 'ASSE', + MODELE = MODELE_2, + PROL_ZERO = 'NON', + ASSE = filtres + ); + + mcfact2 = {'CHAM_GD' : __cham[ind-1], + 'MODELE' : MODELE_2, + 'CHAM_MATER' : cham_mater, + 'CARA_ELEM' : cara_elem, + 'NOM_CAS' : str(ind)} + + liste.append(mcfact2) + DETRUIRE( CONCEPT= _F( NOM = __chamex )) + + + self.DeclareOut( 'RESU', self.sd) + if isinstance( RESULTAT, evol_elas): + # Fabrication de l'evol_elas (cas le plus simple) + RESU = CREA_RESU( OPERATION = 'AFFE', + TYPE_RESU = 'EVOL_ELAS', + NOM_CHAM = 'DEPL', + AFFE = liste, + ); + + if isinstance( RESULTAT, mode_meca): + # Fabrication de la base modale resultat. On doit tricher un peu (encore!!), en + # faisant un defi_base_modale dans lequel on met zero modes du concept RESULTAT + # TODO : permettre la creation directement d'un resu de type mode_meca avec + # CREA_RESU + RESBID = CREA_RESU( OPERATION = 'AFFE', + TYPE_RESU = 'MULT_ELAS', + NOM_CHAM = 'DEPL', + AFFE = liste, + ); + + RESU = DEFI_BASE_MODALE( RITZ = ( + _F( MODE_MECA = RESULTAT, + NMAX_MODE = 0,), + _F( MULT_ELAS = RESBID), + ), + NUME_REF=NUME_DDL + ); + + + elif isinstance( RESULTAT, dyna_harmo): + # TODO : a faire + pass + + + return ier + + + + +#********************************************** +# RECUPERATION DES NORMALES +#********************************************** + +def crea_normale(self, modele_1, modele_2, cham_mater, cara_el, nume_ddl): + + """Cree un champ de vecteurs normaux sur le maillage experimental, par + projection du champ de normales cree sur le maillage numerique + """ + + import Numeric + PROJ_CHAMP = self.get_cmd('PROJ_CHAMP') + CREA_CHAMP = self.get_cmd('CREA_CHAMP') + CREA_RESU = self.get_cmd('CREA_RESU') + DEFI_GROUP = self.get_cmd('DEFI_GROUP') + import aster + from Accas import _F + # recherche du maillage associe au modele numerique + nom_modele_num = modele_1.nom + _maillag = aster.getvectjev( nom_modele_num.ljust(8) + '.MODELE .NOMA ' ) + maillage = _maillag[0].strip() + jdc = CONTEXT.get_current_step().jdc + mayanum = jdc.sds_dict[maillage] + + + DEFI_GROUP( reuse = mayanum, + MAILLAGE = mayanum, + CREA_GROUP_MA = _F( NOM = '&&TOUMAIL', + TOUT = 'OUI' ) + ); + + __norm1 = CREA_CHAMP( MODELE = modele_1, + OPERATION = 'NORMALE', + TYPE_CHAM = 'NOEU_GEOM_R', + GROUP_MA = '&&TOUMAIL', + ); + + __norm2 = CREA_CHAMP( OPERATION = 'ASSE', + TYPE_CHAM = 'NOEU_DEPL_R', + MODELE = modele_1, + ASSE = _F( TOUT='OUI', + CHAM_GD=__norm1, + NOM_CMP=('X','Y','Z'), + NOM_CMP_RESU=('DX','DY','DZ') + ) + ); + + __norm3 = CREA_RESU( OPERATION = 'AFFE', + TYPE_RESU = 'EVOL_ELAS', + NOM_CHAM = 'DEPL', + AFFE = _F( CHAM_GD = __norm2, + INST = 1, + MODELE = modele_1, + CHAM_MATER = cham_mater, + CARA_ELEM = cara_el + ) + ); + + + __norm4 = PROJ_CHAMP( RESULTAT = __norm3, + MODELE_1 = modele_1, + MODELE_2 = modele_2, + NOM_CHAM = 'DEPL', + TOUT_ORDRE = 'OUI', + NUME_DDL = nume_ddl, + ); + + # __norm5 : toutes les normales au maillage au niveau des capteurs + __norm5 = CREA_CHAMP( RESULTAT = __norm4, + OPERATION = 'EXTR', + NUME_ORDRE = 1, + NOM_CHAM = 'DEPL', + TYPE_CHAM = 'NOEU_DEPL_R', + ); + + + return __norm5 + + +#********************************************************************** +# Calcul des angles nautiques pour le repere local associe a la normale +#********************************************************************** + +def crea_repere(chnorm, ind_no, vect): + + """Creation d'un repere orthonormal a partir du vecteur normale et + d'une equation supplementaire donnee par l'utilisateur sous forme + de trois parametres et du vecteur de base concerne. + """ + + import Numeric + + nom_para = vect.keys()[0] # nom_para = 'VECT_X' ou 'VECT_Y' + condition = list(vect[nom_para]) + + # 1) pour tous les noeuds du maillage experimental, recuperer la normale + # calculee a partir du maillage numerique + chnormx = chnorm.EXTR_COMP('DX',[],1) + chnormy = chnorm.EXTR_COMP('DY',[],1) + chnormz = chnorm.EXTR_COMP('DZ',[],1) + + noeuds = chnormx.noeud + nbno = len(noeuds) + + normale = [chnormx.valeurs[ind_no], + chnormy.valeurs[ind_no], + chnormz.valeurs[ind_no]] + + # 2.1) soit l'utilisateur a donne un deuxieme vecteur explicitement + # (option VECT_X Ou VECT_Y). Dans ce cas la, le 3e est le produit + # vectoriel des deux premiers. + if nom_para == 'VECT_X' : + vect1 = Numeric.array(list(vect[nom_para])) # vect x du reploc + vect2 = cross_product(normale,vect1) + reploc = Numeric.array([vect1.tolist(), vect2.tolist(), normale]) + reploc = Numeric.transpose(reploc) + + elif nom_para == 'VECT_Y' : + vect2 = Numeric.array(list(vect[nom_para])) # vect y du reploc + vect1 = cross_product(vect2, normale) + reploc = Numeric.array([vect1.tolist(), vect2.tolist(), normale]) + reploc = Numeric.transpose(reploc) + + # 2.2) TODO : plutot que de donner explicitement un vecteur du repere + # local avec VECT_X/Y, on devrait aussi pouvoir donner une condition + # sous forme d'une equation sur un de ces vecteurs. Par exemple, + # CONDITION_X = (0.,1.,0.) signifierait que le vecteur X1 verifie + #x(X1) + y(X1) + z(X1) = 0 + elif nom_para == 'CONDITION_X': + pass + elif nom_para == 'CONDITION_Y': + pass + + # 3) Calcul de l'angle nautique associe au repere local + angl_naut = anglnaut(reploc) + + return angl_naut + +#***************************************************************************** +# Aller chercher une liste de noeuds pour un mot cle 'NOEUD', 'GROUP_NO' +# 'MAILLE' ou 'GROUP_MA' +#***************************************************************************** + +def find_no(maya,mcsimp): + """ Si on demande une liste de noeuds, c'est simple, on retourne les noeuds + Si on demande une liste de groupes de noeuds, on va chercher les noeuds + dans ces groupes, en faisant attention a ne pas etre redondant + Si on demande un liste de mailles, on va chercher dans le .CONNEX + du maillage les indices, puis les noms des noeuds concernes + etc... + """ + + import Numeric + + list_no = [] + list_ma = [] + if mcsimp.has_key('GROUP_NO') and type(mcsimp['GROUP_NO']) != tuple : + mcsimp['GROUP_NO'] = [mcsimp['GROUP_NO']] + if mcsimp.has_key('GROUP_MA') and type(mcsimp['GROUP_MA']) != tuple : + mcsimp['GROUP_MA'] = [mcsimp['GROUP_MA']] + + if mcsimp.has_key('NOEUD') : + list_no = list(mcsimp['NOEUD']) + elif mcsimp.has_key('GROUP_NO') : + for group in mcsimp['GROUP_NO'] : + list_ind_no = list(Numeric.array(maya.GROUPENO.get()[group.ljust(8)])-1) + for ind_no in list_ind_no : + nomnoe = maya.NOMNOE.get()[ind_no] + if nomnoe not in list_no : + list_no.append(nomnoe) + elif mcsimp.has_key('MAILLE') : + for mail in mcsimp['MAILLE'] : + ind_ma = maya.NOMMAI.get().index(mail.ljust(8)) + for ind_no in mayaexp.CONNEX[ind_ma] : + nomnoe = mayaexp.NOMNOE.get()[ind_no] + if nomnoe not in list_no : + list_no.append(nomnoe) + elif mcsimp.has_key('GROUP_MA') : + for group in mcsimp['GROUP_MA'] : + list_ma.append(maya.GROUPEMA.get()[group.ljust(8)]) + for mail in list_ma : + ind_ma = maya.NOMMAI.get().index(mail.ljust(8)) + for ind_no in maya.CONNEX[ind_ma] : + nomnoe = maya.NOMNOE.get()[ind_no] + if nomnoe not in list_no : + list_no.append(nomnoe) + + + return list_no + + +#************************************************************************************ +# Quelques utilitaires de calculs d'angles nautiques (viennent de zmat004a.comm +#************************************************************************************ + + +def cross_product(a, b): + """Return the cross product of two vectors. + For a dimension of 2, + the z-component of the equivalent three-dimensional cross product is + returned. + + For backward compatibility with Numeric <= 23 + """ + from Numeric import asarray, array + a = asarray(a) + b = asarray(b) + dim = a.shape[0] + assert 2<= dim <=3 and dim == b.shape[0], "incompatible dimensions for cross product" + if dim == 2: + result = a[0]*b[1] - a[1]*b[0] + elif dim == 3: + x = a[1]*b[2] - a[2]*b[1] + y = a[2]*b[0] - a[0]*b[2] + z = a[0]*b[1] - a[1]*b[0] + result = array([x,y,z]) + return result + +def norm(x): + """Calcul de la norme euclidienne d'un vecteur""" + import Numeric + tmp = Numeric.sqrt(Numeric.dot(x,x)) + return tmp + +def anglnaut(P): + + + """Calcule les angles nautiques correspondant a un repere local + NB : seuls les deux premiers vecteurs de P (les images respectives + de X et Y) sont utiles pour le calcul des angles + """ + + import copy + import Numeric + # expression des coordonnees globales des 3 vecteurs de base locale + x = Numeric.array([1.,0.,0.]) + y = Numeric.array([0.,1.,0.]) + z = Numeric.array([0.,0.,1.]) + + xg = P[:,0] + yg = P[:,1] + zg = P[:,2] + + # calcul des angles nautiques + x1=copy.copy(xg) + # x1 projection de xg sur la plan xy, non norme + x1[2]=0. + # produit scalaire X xg + COSA=x1[0]/norm(x1) + #produit vectoriel X xg + SINA=x1[1]/norm(x1) + ar=Numeric.arctan2(SINA,COSA) + alpha=ar*180/Numeric.pi + + COSB=norm(x1) + SINB=-xg[2] + beta=Numeric.arctan2(SINB,COSB)*180/Numeric.pi + + P2=Numeric.zeros((3,3),Numeric.Float) + P2[0,0]=Numeric.cos(ar) + P2[1,0]=Numeric.sin(ar) + P2[1,1]=Numeric.cos(ar) + P2[0,1]=-Numeric.sin(ar) + y1=Numeric.dot(P2,y) + y1n=y1/norm(y1) + + # calcul de gamma + COSG=Numeric.dot(y1n,yg) + SING=Numeric.dot(xg,cross_product(y1n,yg)) + gamma=Numeric.arctan2(SING,COSG)*180/Numeric.pi + + return alpha,beta,gamma + + +## NB : Equations de passage : un vecteur de coordonnees globales (X,Y,Z) a pour +## coordonnees locales (X1,Y1,Z1) avec +## _ _ _ _ _ _ _ _ _ _ +## | 1 0 0 || cos(B) 0 -sin(B) || cos(A) sin(A) 0 || X | | X1 | +## | 0 cos(G) sin(G) || 0 1 0 || -sin(A) cos(A) 0 || Y | = | Y1 | +## |_0 -sin(G) cos(G)_||_sin(B) 0 cos(B)_||_ 0 0 1_||_Z_| |_Z1_| +## +## A (alpha), B(beta), gamma (G) sont les angle nautiques que l'on donne habituellemet +## dans les MODI_REPERE. Les equations a resoudre sont les suivantes : +## cos(A)cos(B) = reploc[0][0] +## -cos(G)sin(A) + sin(G)cos(A)sin(B) = reploc[0][1] +## sin(A)sin(G) + cos(A)sin(B)cos(G) = reploc[0][2] +## +## sin(A)cos(B) = reploc[1][0] +## cos(A)cos(G) + sin(A)sin(B)sin(G) = reploc[1][1] +## -cos(A)sin(G) + sin(A)sin(B)cos(G) = reploc[1][2] +## +## -sin(B) = reploc[2][0] +## cos(B)sin(G) = reploc[2][1] +## cos(B)cos(G) = reploc[2][2] + + + diff --git a/Aster/Cata/cataSTA9/cata.py b/Aster/Cata/cataSTA9/cata.py index a355fdfe..a81b8bc7 100644 --- a/Aster/Cata/cataSTA9/cata.py +++ b/Aster/Cata/cataSTA9/cata.py @@ -222,7 +222,7 @@ from SD.co_vect_elem import vect_elem, \ vect_elem_pres_r, vect_elem_pres_c, \ vect_elem_temp_r -#& MODIF COMMUN DATE 02/04/2007 AUTEUR LAVERNE J.LAVERNE +#& MODIF COMMUN DATE 21/05/2007 AUTEUR FERNANDES R.FERNANDES # CONFIGURATION MANAGEMENT OF EDF VERSION # RESPONSABLE JMBHH01 J.M.PROIX # ====================================================================== @@ -342,6 +342,7 @@ def C_COMP_INCR() : return FACT(statut='f',min=1,max='**', #COMMUN# "BAZANT_FD", "BETON_UMLV_FP", "BETON_DOUBLE_DP", + "KIT_HH", "KIT_HM", "KIT_HHM", "KIT_THH", @@ -349,7 +350,6 @@ def C_COMP_INCR() : return FACT(statut='f',min=1,max='**', #COMMUN# "KIT_THM", "KIT_THHM", "VMIS_ASYM_LINE", - "ELAS_THER", "KIT_DDI", "GLRC_DAMAGE", "GLRC_DM", @@ -449,7 +449,7 @@ def C_COMP_INCR() : return FACT(statut='f',min=1,max='**', #COMMUN# PINTO_MENEGOTTO =SIMP(statut='c',typ='I',defaut=8,into=(8,)), CJS =SIMP(statut='c',typ='I',defaut=16,into=(16,)), HUJEUX =SIMP(statut='c',typ='I',defaut=9,into=(9,)), - CAM_CLAY =SIMP(statut='c',typ='I',defaut=2,into=(2,)), + CAM_CLAY =SIMP(statut='c',typ='I',defaut=7,into=(7,)), BARCELONE =SIMP(statut='c',typ='I',defaut=5,into=(5,)), LAIGLE =SIMP(statut='c',typ='I',defaut=4,into=(4,)), DRUCKER_PRAGER =SIMP(statut='c',typ='I',defaut=3,into=(3,)), @@ -461,6 +461,7 @@ def C_COMP_INCR() : return FACT(statut='f',min=1,max='**', #COMMUN# GRANGER_FP_V =SIMP(statut='c',typ='I',defaut=55,into=(55,)), BAZANT_FD =SIMP(statut='c',typ='I',defaut=1,into=(1,)), BETON_DOUBLE_DP =SIMP(statut='c',typ='I',defaut=4,into=(4,)), + KIT_HH =SIMP(statut='c',typ='I',defaut=0,into=(0,)), KIT_HM =SIMP(statut='c',typ='I',defaut=0,into=(0,)), KIT_HHM =SIMP(statut='c',typ='I',defaut=0,into=(0,)), KIT_THH =SIMP(statut='c',typ='I',defaut=0,into=(0,)), @@ -500,7 +501,6 @@ def C_COMP_INCR() : return FACT(statut='f',min=1,max='**', #COMMUN# "DRUCKER_PRAGER", "HOEK_BROWN_EFF", "HOEK_BROWN_TOT", - "ELAS_THER", "MAZARS", "ENDO_ISOT_BETON", # THMC @@ -533,7 +533,6 @@ def C_COMP_INCR() : return FACT(statut='f',min=1,max='**', #COMMUN# ),), - ELAS_THER =SIMP(statut='c',typ='I',defaut=1,into=(1,)), GAZ =SIMP(statut='c',typ='I',defaut=1,into=(1,)), LIQU_SATU =SIMP(statut='c',typ='I',defaut=1,into=(1,)), LIQU_GAZ_ATM =SIMP(statut='c',typ='I',defaut=2,into=(2,)), @@ -765,58 +764,6 @@ def C_NOM_CHAM_INTO() : return ("ACCE", #COMMUN# "VITE_ABSOLU", "VITE_VENT", ) -#& MODIF COMMUN DATE 27/06/2005 AUTEUR D6BHHJP J.P.LEFEBVRE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# -# ce fichier contient la liste des "into" possibles pour le mot cle TYPE_CHAM -def C_TYPE_CHAM_INTO() : #COMMUN# - l=[] - for gd in C_NOM_GRANDEUR() : - for typ in ("ELEM","ELNO","ELGA","CART","NOEU") : - l.append(typ+"_"+gd) - return tuple(l) - -#& MODIF COMMUN DATE 29/03/2007 AUTEUR GRANET S.GRANET -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# ce fichier contient la liste des PARA possibles pour les fonctions et les nappes -def C_PARA_FONCTION() : return ( #COMMUN# - "DX","DY","DZ","DRX","DRY","DRZ","TEMP","TSEC", - "INST","X","Y","Z","EPSI","META","FREQ","PULS","DSP", - "AMOR","ABSC","SIGM","HYDR","SECH","PORO","SAT", - "PGAZ","PCAP","PLIQ","PVAP","PAD","VITE","ENDO", - "NORM","EPAIS","NEUT1","NEUT2",) #& MODIF COMMUN DATE 04/04/2006 AUTEUR CIBHHLV L.VIVAN # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -963,23 +910,75 @@ def C_NOM_GRANDEUR() : return ( #COMMUN# "WEIBULL", "XCONTAC", ) -#& MODIF COMMANDE DATE 13/02/2007 AUTEUR PELLET J.PELLET +#& MODIF COMMUN DATE 29/03/2007 AUTEUR GRANET S.GRANET +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# ce fichier contient la liste des PARA possibles pour les fonctions et les nappes +def C_PARA_FONCTION() : return ( #COMMUN# + "DX","DY","DZ","DRX","DRY","DRZ","TEMP","TSEC", + "INST","X","Y","Z","EPSI","META","FREQ","PULS","DSP", + "AMOR","ABSC","SIGM","HYDR","SECH","PORO","SAT", + "PGAZ","PCAP","PLIQ","PVAP","PAD","VITE","ENDO", + "NORM","EPAIS","NEUT1","NEUT2",) +#& MODIF COMMUN DATE 27/06/2005 AUTEUR D6BHHJP J.P.LEFEBVRE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# +# ce fichier contient la liste des "into" possibles pour le mot cle TYPE_CHAM +def C_TYPE_CHAM_INTO() : #COMMUN# + l=[] + for gd in C_NOM_GRANDEUR() : + for typ in ("ELEM","ELNO","ELGA","CART","NOEU") : + l.append(typ+"_"+gd) + return tuple(l) + +#& MODIF COMMANDE DATE 23/04/2007 AUTEUR FLEJOU J-L.FLEJOU # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== # RESPONSABLE MJBHHPE J.L.FLEJOU AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, @@ -1086,7 +1085,8 @@ AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, #============================================================================ COQUE =FACT(statut='f',max='**', regles=(UN_PARMI('MAILLE','GROUP_MA' ), - PRESENT_PRESENT( 'EXCENTREMENT','INER_ROTA' ),), + PRESENT_PRESENT( 'EXCENTREMENT','INER_ROTA' ), + EXCLUS('ANGL_REP','VECTEUR'),), MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), EPAIS =SIMP(statut='o',typ='R' ), @@ -1500,7 +1500,7 @@ AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, NOEUD_CENTRE =SIMP(statut='f',typ=no), COOR_CENTRE =SIMP(statut='f',typ='R',min=2,max=3), ), - + #============================================================================ RIGI_MISS_3D =FACT(statut='f',max='**', GROUP_MA_POI1 =SIMP(statut='o',typ=ma,max=1), @@ -1508,7 +1508,7 @@ AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, FREQ_EXTR =SIMP(statut='o',typ='R',max=1), UNITE_RESU_IMPE =SIMP(statut='f',typ='I',defaut=30), ), - + #============================================================================ GEOM_FIBRE = SIMP(statut='f',max=1,typ=gfibre_sdaster, fr="Donner le nom de la SD regroupant tous les groupes de fibres (issue de DEFI_GEOM_FIBRE)"), @@ -1584,7 +1584,7 @@ AFFE_CHAR_ACOU=OPER(nom="AFFE_CHAR_ACOU",op= 68,sd_prod=char_acou, DDL =SIMP(statut='o',typ='TXM',max='**'), ), ) ; -#& MODIF COMMANDE DATE 12/12/2006 AUTEUR VIVAN L.VIVAN +#& MODIF COMMANDE DATE 21/05/2007 AUTEUR FERNANDES R.FERNANDES # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -1626,7 +1626,9 @@ AFFE_CHAR_CINE=OPER(nom="AFFE_CHAR_CINE",op= 101,sd_prod=affe_char_cine_prod 'WI5','UO4','UO5','VO4','VO5','WO4','WO5','UI6','UO6','VI6', 'VO6','WI6','WO6','WO','WI1','WO1','GONF','DCX','DCY','DCZ', 'H1X','H1Y','H1Z','E1X','E1Y','E1Z','E2X','E2Y','E2Z', - 'E3X','E3Y','E3Z','E4X','E4Y','E4Z'),), + 'E3X','E3Y','E3Z','E4X','E4Y','E4Z','V11','V12','V13','V21','V22', + 'V23','V31','V32','V33','PRES11','PRES12','PRES13','PRES21', + 'PRES22','PRES23','PRES31','PRES32','PRES33'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), @@ -1695,7 +1697,25 @@ AFFE_CHAR_CINE=OPER(nom="AFFE_CHAR_CINE",op= 101,sd_prod=affe_char_cine_prod E3Z =SIMP(statut='f',typ='R' ), E4X =SIMP(statut='f',typ='R' ), E4Y =SIMP(statut='f',typ='R' ), - E4Z =SIMP(statut='f',typ='R' ), + E4Z =SIMP(statut='f',typ='R' ), + V11 =SIMP(statut='f',typ='R' ), + V12 =SIMP(statut='f',typ='R' ), + V13 =SIMP(statut='f',typ='R' ), + V21 =SIMP(statut='f',typ='R' ), + V22 =SIMP(statut='f',typ='R' ), + V23 =SIMP(statut='f',typ='R' ), + V31 =SIMP(statut='f',typ='R' ), + V32 =SIMP(statut='f',typ='R' ), + V33 =SIMP(statut='f',typ='R' ), + PRES11 =SIMP(statut='f',typ='R' ), + PRES12 =SIMP(statut='f',typ='R' ), + PRES13 =SIMP(statut='f',typ='R' ), + PRES21 =SIMP(statut='f',typ='R' ), + PRES22 =SIMP(statut='f',typ='R' ), + PRES23 =SIMP(statut='f',typ='R' ), + PRES31 =SIMP(statut='f',typ='R' ), + PRES32 =SIMP(statut='f',typ='R' ), + PRES33 =SIMP(statut='f',typ='R' ), ), THER_IMPO =FACT(statut='f',max='**', regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'), @@ -1784,7 +1804,7 @@ AFFE_CHAR_CINE_F=OPER(nom="AFFE_CHAR_CINE_F",op= 108,sd_prod=affe_char_cine_f_pr ), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; -#& MODIF COMMANDE DATE 09/02/2007 AUTEUR TORKHANI M.TORKHANI +#& MODIF COMMANDE DATE 21/05/2007 AUTEUR FERNANDES R.FERNANDES # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -1839,7 +1859,9 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca, 'WI5','UO4','UO5','VO4','VO5','WO4','WO5','UI6','UO6','VI6', 'VO6','WI6','WO6','WO','WI1','WO1','GONF','LIAISON','DCX', 'DCY','DCZ','H1X','H1Y','H1Z','E1X','E1Y','E1Z','E2X','E2Y','E2Z', - 'E3X','E3Y','E3Z','E4X','E4Y','E4Z','LAGS_C'),), + 'E3X','E3Y','E3Z','E4X','E4Y','E4Z','LAGS_C','V11','V12','V13','V21','V22', + 'V23','V31','V32','V33','PRES11','PRES12','PRES13','PRES21','PRES22','PRES23', + 'PRES31','PRES32','PRES33',),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), @@ -1911,6 +1933,24 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca, E4Y =SIMP(statut='f',typ='R' ), E4Z =SIMP(statut='f',typ='R' ), LAGS_C =SIMP(statut='f',typ='R' ), + V11 =SIMP(statut='f',typ='R' ), + V12 =SIMP(statut='f',typ='R' ), + V13 =SIMP(statut='f',typ='R' ), + V21 =SIMP(statut='f',typ='R' ), + V22 =SIMP(statut='f',typ='R' ), + V23 =SIMP(statut='f',typ='R' ), + V31 =SIMP(statut='f',typ='R' ), + V32 =SIMP(statut='f',typ='R' ), + V33 =SIMP(statut='f',typ='R' ), + PRES11 =SIMP(statut='f',typ='R' ), + PRES12 =SIMP(statut='f',typ='R' ), + PRES13 =SIMP(statut='f',typ='R' ), + PRES21 =SIMP(statut='f',typ='R' ), + PRES22 =SIMP(statut='f',typ='R' ), + PRES23 =SIMP(statut='f',typ='R' ), + PRES31 =SIMP(statut='f',typ='R' ), + PRES32 =SIMP(statut='f',typ='R' ), + PRES33 =SIMP(statut='f',typ='R' ), ), @@ -2135,6 +2175,8 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca, ), LIAISON_XFEM =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON" ), + + CONTACT_XFEM =SIMP(statut='f',typ='TXM',defaut="NON" ), VECT_ASSE =SIMP(statut='f',typ=cham_no_sdaster ), # @@ -2169,25 +2211,54 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca, # CONTACT =FACT(statut='f',max='**', fr="Définit les zones soumises à des conditions de contact unilatéral avec ou sans frottement", - regles=(UN_PARMI('GROUP_MA_ESCL','MAILLE_ESCL'),), + + + METHODE =SIMP(statut='f',typ='TXM',defaut="CONTRAINTE", + into=("VERIF","CONTRAINTE","LAGRANGIEN","PENALISATION","CONTINUE","GCP","XFEM") ), + APPARIEMENT =SIMP(statut='f',typ='TXM',defaut="MAIT_ESCL", - into=("RIGIDE","NODAL","MAIT_ESCL","MAIT_ESCL_SYME")), + into=("RIGIDE","NODAL","MAIT_ESCL","MAIT_ESCL_SYME")), RECHERCHE =SIMP(statut='f',typ='TXM',defaut="NOEUD_BOUCLE", - into=("NOEUD_BOUCLE","NOEUD_VOISIN")), + into=("NOEUD_BOUCLE","NOEUD_VOISIN")), LISSAGE =SIMP(statut='f',typ='TXM',defaut="NON", - into=("OUI","NON")), + into=("OUI","NON")), DIST_POUTRE =SIMP(statut='f',typ='TXM',defaut="NON", into=("OUI","NON")), DIST_COQUE =SIMP(statut='f',typ='TXM',defaut="NON", into=("OUI","NON")), NORMALE =SIMP(statut='f',typ='TXM',defaut="MAIT", - into=("MAIT","MAIT_ESCL")), - METHODE =SIMP(statut='f',typ='TXM',defaut="CONTRAINTE", - into=("VERIF","CONTRAINTE","LAGRANGIEN","PENALISATION","CONTINUE","GCP") ), + into=("MAIT","MAIT_ESCL")), + PROJECTION =SIMP(statut='f',typ='TXM',defaut="LINEAIRE", into=("LINEAIRE","QUADRATIQUE") ), - GROUP_MA_MAIT =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), - MAILLE_MAIT =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA_ESCL =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), - MAILLE_ESCL =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + + + b_xfem =BLOC(condition = "METHODE == 'XFEM' ", + FISS_MAIT = SIMP(statut='o',typ=fiss_xfem,max=1), + FISS_ESCL = SIMP(statut='f',typ=fiss_xfem,max=1), + SIGN_MAIT = SIMP(statut='f',typ='TXM',into=("+","-",) ), + SIGN_ESCL = SIMP(statut='f',typ='TXM',into=("+","-",) ), + INTEGRATION = SIMP(statut='f',typ='TXM',defaut="FPG4",into=("GAUSS","FPG4","FPG6","FPG7",) ), + COEF_REGU_CONT = SIMP(statut='f',typ='R',defaut=100.E+0), + ITER_CONT_MAXI = SIMP(statut='f',typ='I',defaut=30), + CONTACT_INIT = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ), + ALGO_LAGR = SIMP(statut='f',typ='TXM',defaut="VERSION1",into=("NON","VERSION1","VERSION2" , ) ), + COEF_ECHELLE = SIMP(statut='f',typ='R',defaut=1.E+6), + FROTTEMENT = SIMP(statut='f',typ='TXM',defaut="SANS",into=("SANS","COULOMB",) ), + GLISSIERE = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), + b_frotxfem =BLOC(condition = "FROTTEMENT == 'COULOMB' ",fr="Paramètres du frottement de Coulomb", + COULOMB = SIMP(statut='o',typ='R',), + ITER_FROT_MAXI = SIMP(statut='f',typ='I',defaut=2), + COEF_REGU_FROT = SIMP(statut='f',typ='R',defaut=100.E+0), + SEUIL_INIT = SIMP(statut='f',typ='R',defaut=0.E+0), + ), + ), + + b_notxfem =BLOC(condition = "METHODE != 'XFEM' ", + regles=(UN_PARMI('GROUP_MA_ESCL','MAILLE_ESCL'),), + GROUP_MA_MAIT =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), + MAILLE_MAIT =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA_ESCL =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), + MAILLE_ESCL =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + ), b_cara =BLOC(condition = "DIST_POUTRE == 'OUI' or DIST_COQUE == 'OUI'", CARA_ELEM =SIMP(statut='o',typ=(cara_elem) ), @@ -2218,17 +2289,12 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca, NB_RESOL =SIMP(statut='f',typ='I', defaut=10 ), REAC_GEOM =SIMP(statut='f',typ='TXM',defaut="AUTOMATIQUE", into=("AUTOMATIQUE","CONTROLE","SANS")), - b_reac_sans =BLOC(condition = "REAC_GEOM == 'SANS' ", - fr="Paramètre de la réactualisation géométrique", - ), + b_reac_geom =BLOC(condition = "REAC_GEOM == 'CONTROLE' ", fr="Paramètre de la réactualisation géométrique", NB_REAC_GEOM =SIMP(statut='o',typ='I'), - ), - b_reac_auto =BLOC(condition = "REAC_GEOM == 'AUTOMATIQUE' ", - fr="Paramètre de la réactualisation géométrique auto", - ), + SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), SANS_NOEUD_QUAD =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), @@ -2250,15 +2316,11 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca, REAC_GEOM =SIMP(statut='f',typ='TXM',defaut="AUTOMATIQUE", into=("AUTOMATIQUE","CONTROLE","SANS")), - b_reac_sans =BLOC(condition = "REAC_GEOM == 'SANS' ",fr="Paramètre de la réactualisation géométrique", - ), + b_reac_geom =BLOC(condition = "REAC_GEOM == 'CONTROLE' ",fr="Paramètre de la réactualisation géométrique", NB_REAC_GEOM =SIMP(statut='o',typ='I'), ), - b_reac_auto =BLOC(condition = "REAC_GEOM == 'AUTOMATIQUE' ", - fr="Paramètre de la réactualisation géométrique auto", - ), SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), @@ -2289,14 +2351,10 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca, REAC_GEOM =SIMP(statut='f',typ='TXM',defaut="AUTOMATIQUE", into=("AUTOMATIQUE","CONTROLE","SANS")), - b_reac_sans =BLOC(condition = "REAC_GEOM == 'SANS' ",fr="Paramètre de la réactualisation géométrique", - ), + b_reac_geom =BLOC(condition = "REAC_GEOM == 'CONTROLE' ",fr="Paramètre de la réactualisation géométrique", NB_REAC_GEOM =SIMP(statut='o',typ='I'), ), - b_reac_auto =BLOC(condition = "REAC_GEOM == 'AUTOMATIQUE' ", - fr="Paramètre de la réactualisation géométrique auto", - ), SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), @@ -2340,7 +2398,6 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca, INTEGRATION =SIMP(statut='f',typ='TXM',defaut="NOEUD",into=("GAUSS","NOEUD","SIMPSON","SIMPSON1","SIMPSON2", "NCOTES","NCOTES1","NCOTES2")), - MODL_AXIS =SIMP(statut='o',typ='TXM',into=("OUI","NON")), FORMULATION =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL","VITE")), DIRE_APPA =SIMP(statut='f',typ='R',max=3,defaut=(0.,0.,0.,)), ITER_GEOM_MAXI =SIMP(statut='f',typ='I',defaut=2), @@ -2920,7 +2977,7 @@ AFFE_CHAR_MECA_C=OPER(nom="AFFE_CHAR_MECA_C",op= 7,sd_prod=char_meca, ), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; -#& MODIF COMMANDE DATE 14/11/2006 AUTEUR TARDIEU N.TARDIEU +#& MODIF COMMANDE DATE 30/04/2007 AUTEUR ABBAS M.ABBAS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -3175,18 +3232,13 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, NB_RESOL =SIMP(statut='f',typ='I', defaut=10 ), REAC_GEOM =SIMP(statut='f',typ='TXM',defaut="AUTOMATIQUE", into=("AUTOMATIQUE","CONTROLE","SANS")), - b_reac_sans =BLOC(condition = "REAC_GEOM == 'SANS' ", - fr="Parametre de la reactualisation geometrique", - - ), + b_reac_geom =BLOC(condition = "REAC_GEOM == 'CONTROLE' ", fr="Parametre de la reactualisation geometrique", NB_REAC_GEOM =SIMP(statut='o',typ='I'), ), - b_reac_auto =BLOC(condition = "REAC_GEOM == 'AUTOMATIQUE' ", - fr="Parametre de la reactualisation geometrique auto", - ), + SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), SANS_NOEUD_QUAD =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), @@ -3207,15 +3259,11 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, REAC_GEOM =SIMP(statut='f',typ='TXM',defaut="AUTOMATIQUE", into=("AUTOMATIQUE","CONTROLE","SANS")), - b_reac_sans =BLOC(condition = "REAC_GEOM == 'SANS' ",fr="Parametre de la reactualisation geometrique", - ), + b_reac_geom =BLOC(condition = "REAC_GEOM == 'CONTROLE' ",fr="Parametre de la reactualisation geometrique", NB_REAC_GEOM =SIMP(statut='o',typ='I'), ), - b_reac_auto =BLOC(condition = "REAC_GEOM == 'AUTOMATIQUE' ", - fr="Parametre de la reactualisation geometrique auto", - ), SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), @@ -3242,14 +3290,11 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, REAC_GEOM =SIMP(statut='f',typ='TXM',defaut="AUTOMATIQUE", into=("AUTOMATIQUE","CONTROLE","SANS")), - b_reac_sans =BLOC(condition = "REAC_GEOM == 'SANS' ",fr="Paramètre de la réactualisation géométrique", - ), + b_reac_geom =BLOC(condition = "REAC_GEOM == 'CONTROLE' ",fr="Paramètre de la réactualisation géométrique", NB_REAC_GEOM =SIMP(statut='o',typ='I'), ), - b_reac_auto =BLOC(condition = "REAC_GEOM == 'AUTOMATIQUE' ", - fr="Paramètre de la réactualisation géométrique auto", - ), + SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), SANS_NOEUD_QUAD =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), @@ -3278,7 +3323,6 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, "NCOTES","NCOTES1","NCOTES2")), COEF_REGU_CONT =SIMP(statut='f',typ='R',defaut=100.E+0), FORMULATION =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL","VITE")), - MODL_AXIS =SIMP(statut='o',typ='TXM',into=("OUI","NON")), DIRE_APPA =SIMP(statut='f',typ='R',max=3), ITER_GEOM_MAXI =SIMP(statut='f',typ='I',defaut=2), ITER_CONT_MAXI =SIMP(statut='f',typ='I',defaut=30), @@ -4223,40 +4267,7 @@ AFFE_MATERIAU=OPER(nom="AFFE_MATERIAU",op=6,sd_prod=cham_mater, ) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -AIDE=PROC(nom="AIDE",op=42, - UIinfo={"groupes":("Modélisation",)}, - fr="Interroger et imprimer une documentation partielle sur les noms des concepts déjà définis et sur les couples" - +" (type d'éléments, option) disponibles dans la version.", - regles=(AU_MOINS_UN('CONCEPT','TYPE_ELEM', ),), - UNITE =SIMP(statut='f',typ='I',defaut=8), - TYPE_ELEM =FACT(fr="couple type_elem option",statut='f', - INITEL =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ), - ), - CONCEPT =FACT(statut='f',max='**', - NOM =SIMP(fr="liste des noms de concept",statut='f',typ='TXM',validators=NoRepeat(),max='**',defaut="*"), - OPTION =SIMP(fr="option d'édition de concept",statut='f',typ='TXM',defaut="TOUT_TYPE", - into=("TOUT_TYPE","CREER","A_CREER",) ), - ), -) ; -#& MODIF COMMANDE DATE 19/02/2007 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 21/05/2007 AUTEUR FERNANDES R.FERNANDES # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -4274,110 +4285,19 @@ AIDE=PROC(nom="AIDE",op=42, # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -DEBUT=MACRO(nom="DEBUT",op=ops.build_debut ,repetable='n', - UIinfo={"groupes":("Gestion du travail",)}, - fr="Ouverture d'une étude. Allocation des ressources mémoire et disque et fichiers", - sd_prod=ops.DEBUT, - - PAR_LOT =SIMP(fr="mode de traitement des commandes",statut='f',typ='TXM', - into=("OUI","NON"),defaut="OUI"), - IMPR_MACRO =SIMP(fr="affichage des sous-commandes produites par les macros dans le fichier mess", - statut='f',typ='TXM',into=("OUI","NON"),defaut="NON"), -# FORMAT_HDF =SIMP(fr="sauvegarde de la base GLOBALE au format HDF",statut='f', -# typ='TXM',defaut="NON",into=("OUI","NON",) ), - BASE =FACT(fr="définition des paramètres associés aux bases JEVEUX", - statut='f',min=1,max=2, - FICHIER =SIMP(fr="nom de la base",statut='o',typ='TXM', - into=('GLOBALE','VOLATILE'),), - TITRE =SIMP(statut='f',typ='TXM'), - CAS =SIMP(statut='f',typ='TXM'), - NMAX_ENRE =SIMP(fr="nombre maximum d enregistrements",statut='f',typ='I'), - LONG_ENRE =SIMP(fr="longueur des enregistrements",statut='f',typ='I'), - LONG_REPE =SIMP(fr="longueur du répertoire",statut='f',typ='I'), - ), - - IMPRESSION =FACT(statut='f',min=1,max=3, - FICHIER =SIMP(statut='o',typ='TXM'), - UNITE =SIMP(statut='o',typ='I'), - ), - - CATALOGUE =FACT(statut='f',min=1,max=10, - FICHIER =SIMP(statut='o',typ='TXM'), - TITRE =SIMP(statut='f',typ='TXM'), - UNITE =SIMP(statut='f',typ='I'), - ), - - CODE =FACT(fr="définition d un nom pour l'ensemble d'une étude", - statut='f',min=1,max=1, - NOM =SIMP(statut='o',typ='TXM'), - NIV_PUB_WEB =SIMP(statut='o',typ='TXM',into=('INTERNET','INTRANET')), - VISU_EFICAS =SIMP(statut='f',typ='TXM',into=('OUI','NON'),defaut='OUI'), - UNITE =SIMP(statut='f',typ='I',defaut=15), - ), - - ERREUR =FACT(fr="comportement en cas d'erreur",statut='f',min=1,max=1, - ERREUR_F =SIMP(statut='f',typ='TXM',into=('ABORT','EXCEPTION'),defaut='ABORT'), - ), - - DEBUG =FACT(fr="option de déboggage reservée aux développeurs", - statut='f',min=1,max=1, - JXVERI =SIMP(fr="vérifie l intégrité de la segmentation mémoire", - statut='f',typ='TXM',into=('OUI','NON'),defaut='NON'), - SDVERI =SIMP(fr="vérifie la conformité des SD produites par les commandes", - statut='f',typ='TXM',into=('OUI','NON')), - JEVEUX =SIMP(fr="force les déchargement sur disque", - statut='f',typ='TXM',into=('OUI','NON'),defaut='NON'), - ENVIMA =SIMP(fr="imprime les valeurs définies dans ENVIMA", - statut='f',typ='TXM',into=('TEST',)), - ), - - MEMOIRE =FACT(fr="mode de gestion mémoire utilisé",statut='f',min=1,max=1, - GESTION =SIMP(statut='f',typ='TXM',into=('COMPACTE','RAPIDE'),defaut='RAPIDE'), - TYPE_ALLOCATION =SIMP(statut='f',typ='I',into=(1,2,3,4),defaut=1), - TAILLE =SIMP(statut='f',typ='I'), - TAILLE_BLOC =SIMP(statut='f',typ='R',defaut=800.), - PARTITION =SIMP(statut='f',typ='R'), - DYNAMIQUE =SIMP(statut='f',typ='I'), - ), - RESERVE_CPU =FACT(fr="reserve de temps pour terminer une execution",statut='f',max=1, - regles=(EXCLUS('VALE','POURCENTAGE'),), - VALE =SIMP(statut='f',typ='I',val_min=0), - POURCENTAGE =SIMP(statut='f',typ='R',val_min=0.,val_max=1.0), -# valeur en pourcentage du temps maximum bornée à 180 secondes - BORNE =SIMP(statut='f',typ='I',val_min=0,defaut=180) - ), - ); -#& MODIF COMMANDE DATE 12/03/2007 AUTEUR LAVERNE J.LAVERNE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE JMBHH01 J.M.PROIX -AFFE_MODELE=OPER(nom="AFFE_MODELE",op=18,sd_prod=modele_sdaster, - UIinfo={"groupes":("Modélisation",)}, - fr="Définir le phénomène physique modélisé et le type d'éléments finis sur le maillage",reentrant='n', - regles=(AU_MOINS_UN('AFFE','AFFE_SOUS_STRUC'),), - MAILLAGE =SIMP(statut='o',typ=(maillage_sdaster) ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), - VERIF =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=2,into=("MAILLE","NOEUD") ), - AFFE_SOUS_STRUC =FACT(statut='f', - regles=(UN_PARMI('TOUT','SUPER_MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - SUPER_MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), - PHENOMENE =SIMP(statut='f',typ='TXM',defaut="MECANIQUE",into=("MECANIQUE",) ), +# RESPONSABLE JMBHH01 J.M.PROIX +AFFE_MODELE=OPER(nom="AFFE_MODELE",op=18,sd_prod=modele_sdaster, + UIinfo={"groupes":("Modélisation",)}, + fr="Définir le phénomène physique modélisé et le type d'éléments finis sur le maillage",reentrant='n', + regles=(AU_MOINS_UN('AFFE','AFFE_SOUS_STRUC'),), + MAILLAGE =SIMP(statut='o',typ=(maillage_sdaster) ), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), + VERIF =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=2,into=("MAILLE","NOEUD") ), + AFFE_SOUS_STRUC =FACT(statut='f', + regles=(UN_PARMI('TOUT','SUPER_MAILLE'),), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + SUPER_MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), + PHENOMENE =SIMP(statut='f',typ='TXM',defaut="MECANIQUE",into=("MECANIQUE",) ), ), AFFE =FACT(statut='f',max='**', regles=(UN_PARMI('TOUT','GROUP_MA','GROUP_NO','MAILLE','NOEUD'),), @@ -4427,7 +4347,6 @@ AFFE_MODELE=OPER(nom="AFFE_MODELE",op=18,sd_prod=modele_sdaster, "C_PLAN_NS", "C_PLAN_SI", "C_PLAN_GRAD_EPSI", - "C_PLAN_GRAD_VARI", "CABLE", "CABLE_POULIE", "COQUE_3D", @@ -4488,6 +4407,10 @@ AFFE_MODELE=OPER(nom="AFFE_MODELE",op=18,sd_prod=modele_sdaster, "D_PLAN_THHMS", "D_PLAN_THMS", "D_PLAN_HM_P", + "D_PLAN_HHD", + "D_PLAN_HHS", + "D_PLAN_HH2D", + "D_PLAN_HH2S", "AXIS_THH", "AXIS_THHM", "AXIS_THM", @@ -4511,6 +4434,10 @@ AFFE_MODELE=OPER(nom="AFFE_MODELE",op=18,sd_prod=modele_sdaster, "AXIS_THHMS", "AXIS_THH2MS", "AXIS_THMS", + "AXIS_HHD", + "AXIS_HHS", + "AXIS_HH2D", + "AXIS_HH2S", "3D_HHM" , "3D_HM", "3D_THH", @@ -4535,6 +4462,12 @@ AFFE_MODELE=OPER(nom="AFFE_MODELE",op=18,sd_prod=modele_sdaster, "3D_HH2MS", "3D_THH2S", "3D_THH2D", + "3D_HHD", + "3D_HHS", + "3D_HH2D", + "3D_HH2S", + "D_PLAN_2DG", + "D_PLAN_DIL", ) ) ), b_thermique =BLOC( condition = "PHENOMENE=='THERMIQUE'", @@ -4579,6 +4512,39 @@ AFFE_MODELE=OPER(nom="AFFE_MODELE",op=18,sd_prod=modele_sdaster, # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== +AIDE=PROC(nom="AIDE",op=42, + UIinfo={"groupes":("Modélisation",)}, + fr="Interroger et imprimer une documentation partielle sur les noms des concepts déjà définis et sur les couples" + +" (type d'éléments, option) disponibles dans la version.", + regles=(AU_MOINS_UN('CONCEPT','TYPE_ELEM', ),), + UNITE =SIMP(statut='f',typ='I',defaut=8), + TYPE_ELEM =FACT(fr="couple type_elem option",statut='f', + INITEL =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ), + ), + CONCEPT =FACT(statut='f',max='**', + NOM =SIMP(fr="liste des noms de concept",statut='f',typ='TXM',validators=NoRepeat(),max='**',defaut="*"), + OPTION =SIMP(fr="option d'édition de concept",statut='f',typ='TXM',defaut="TOUT_TYPE", + into=("TOUT_TYPE","CREER","A_CREER",) ), + ), +) ; +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== # RESPONSABLE VABHHTS J.PELLET ASSE_MAILLAGE=OPER(nom="ASSE_MAILLAGE",op= 105,sd_prod=maillage_sdaster, fr="Assembler deux maillages pour en former un nouveau", @@ -4675,18 +4641,14 @@ ASSE_MATRICE=OPER(nom="ASSE_MATRICE",op=12,sd_prod=asse_matrice_prod, # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -ASSE_VECT_GENE=OPER(nom="ASSE_VECT_GENE",op= 140,sd_prod=vect_asse_gene, - fr="Projection des chargements sur la base modale d'une sous structure", - reentrant='n', +# RESPONSABLE VABHHTS J.PELLET + +ASSE_VECTEUR=OPER(nom="ASSE_VECTEUR",op=13,sd_prod=cham_no_sdaster, + fr="Construire un champ aux noeuds par assemblage de vecteurs élémentaires",reentrant='n', UIinfo={"groupes":("Matrices/vecteurs",)}, - NUME_DDL_GENE =SIMP(statut='o',typ=nume_ddl_gene ), - METHODE =SIMP(statut='f',typ='TXM',defaut="CLASSIQUE",into=("CLASSIQUE","INITIAL") ), - b_nume =BLOC(condition = "METHODE == 'CLASSIQUE'", - CHAR_SOUS_STRUC =FACT(statut='o',max='**', - SOUS_STRUC =SIMP(statut='o',typ='TXM' ), - VECT_ASSE =SIMP(statut='o',typ=cham_no_sdaster ), - ), - ), + VECT_ELEM =SIMP(statut='o',typ=vect_elem,max='**'), + NUME_DDL =SIMP(statut='o',typ=nume_ddl_sdaster ), + INFO =SIMP(statut='f',typ='I',into=(1,2,) ), ) ; #& MODIF COMMANDE DATE 21/02/2006 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION @@ -4706,14 +4668,18 @@ ASSE_VECT_GENE=OPER(nom="ASSE_VECT_GENE",op= 140,sd_prod=vect_asse_gene, # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE VABHHTS J.PELLET - -ASSE_VECTEUR=OPER(nom="ASSE_VECTEUR",op=13,sd_prod=cham_no_sdaster, - fr="Construire un champ aux noeuds par assemblage de vecteurs élémentaires",reentrant='n', +ASSE_VECT_GENE=OPER(nom="ASSE_VECT_GENE",op= 140,sd_prod=vect_asse_gene, + fr="Projection des chargements sur la base modale d'une sous structure", + reentrant='n', UIinfo={"groupes":("Matrices/vecteurs",)}, - VECT_ELEM =SIMP(statut='o',typ=vect_elem,max='**'), - NUME_DDL =SIMP(statut='o',typ=nume_ddl_sdaster ), - INFO =SIMP(statut='f',typ='I',into=(1,2,) ), + NUME_DDL_GENE =SIMP(statut='o',typ=nume_ddl_gene ), + METHODE =SIMP(statut='f',typ='TXM',defaut="CLASSIQUE",into=("CLASSIQUE","INITIAL") ), + b_nume =BLOC(condition = "METHODE == 'CLASSIQUE'", + CHAR_SOUS_STRUC =FACT(statut='o',max='**', + SOUS_STRUC =SIMP(statut='o',typ='TXM' ), + VECT_ASSE =SIMP(statut='o',typ=cham_no_sdaster ), + ), + ), ) ; #& MODIF COMMANDE DATE 03/01/2006 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION @@ -4906,7 +4872,7 @@ CALC_CHAR_SEISME=OPER(nom="CALC_CHAR_SEISME",op= 92,sd_prod=calc_char_seisme_pr ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 03/04/2007 AUTEUR DURAND C.DURAND +#& MODIF COMMANDE DATE 09/05/2007 AUTEUR VIVAN L.VIVAN # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -4936,12 +4902,8 @@ CALC_ELEM=OPER(nom="CALC_ELEM",op=58,sd_prod=calc_elem_prod,reentrant='f', CHAM_MATER =SIMP(statut='f',typ=cham_mater), CARA_ELEM =SIMP(statut='f',typ=cara_elem), - RESULTAT =SIMP(statut='o',typ=(evol_elas,dyna_trans,dyna_harmo,mode_meca, - mode_stat,mode_stat_depl,mode_stat_acce,mode_stat_forc, - evol_noli,mult_elas,fourier_elas,fourier_ther, - evol_ther,base_modale, - acou_harmo,mode_acou,mode_flamb) , - fr="Résultat d'une commande globale"), + RESULTAT =SIMP(statut='o',typ=resultat_sdaster, + fr="Résultat d'une commande globale"), regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE', 'NOEUD_CMP','LIST_INST','LIST_FREQ','LIST_ORDRE','NOM_CAS'), @@ -5192,8 +5154,8 @@ b_charge =BLOC( condition = "OPTION in ('EPME_ELNO_DEPL','EPSI_ELGA_DEPL','EPME_ # statique ou dynamique non lineaire : evol_noli - b_noli =BLOC( condition = "AsType(RESULTAT) == evol_noli",fr="options evol noli", - TYPE_OPTION =SIMP(statut='f',typ='TXM',defaut='TOUTES', + b_noli =BLOC( condition = "AsType(RESULTAT) == evol_noli",fr="options mecaniques non lineaires", + TYPE_OPTION =SIMP(statut='f',typ='TXM',defaut='TOUTES',fr="type d'options mecaniques non lineaires", into=("SIGM_MASSIF","SIGM_STRUCT","EPSI","ENER","CRIT", "VARI","INDI_ERREUR","TOUTES","AUTRES"), ), @@ -5228,7 +5190,19 @@ b_charge =BLOC( condition = "OPTION in ('EPME_ELNO_DEPL','EPSI_ELGA_DEPL','EPME_ NOM_CHAM =SIMP(statut='f',typ='TXM',fr="Nom du champ pour VALE_NCOU_MAXI"), NOM_CMP =SIMP(statut='f',typ='TXM',fr="Nom de la composante pour VALE_NCOU_MAXI"), - + + b_erreur_re=BLOC(condition ="OPTION in ('ERRE_ELEM_SIGM','ERRE_ELNO_ELEM') or \ + (type(OPTION)==type(()) and 'ERRE_ELEM_SIGM' in OPTION) or \ + (type(OPTION)==type(()) and 'ERRE_ELNO_ELEM' in OPTION)", + ERRE_THM =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON", + fr="Indicateur d'erreur spatiale pour les modélisations THM", + ang="Spatial error indicators for THM models"), + b_ERRE_THM=BLOC(condition = "ERRE_THM == 'OUI'", + regles=(ENSEMBLE('LONGUEUR','PRESSION'),), + LONGUEUR=SIMP(statut='o',typ='R',val_min=0.0,fr="Longueur caractéristique du problème"), + PRESSION=SIMP(statut='o',typ='R',val_min=0.0,fr="Pression caractéristique du problème"), + TEMPERATURE=SIMP(statut='f',typ='R',val_min=0.0,fr="Température caractéristique du problème"),),), + b_erre_qi =BLOC(condition = "OPTION in ('QIRE_ELEM_SIGM','QIZ1_ELEM_SIGM','QIZ2_ELEM_SIGM') or \ (type(OPTION)==type(()) and 'QIRE_ELEM_SIGM' in OPTION) or \ (type(OPTION)==type(()) and 'QIZ1_ELEM_SIGM' in OPTION) or \ @@ -5333,14 +5307,25 @@ b_charge =BLOC( condition = "OPTION in ('EPME_ELNO_DEPL','EPSI_ELGA_DEPL','EPME_ NOM_CMP =SIMP(statut='o',typ='TXM',fr="Nom de la composante pour VALE_NCOU_MAXI"),), ), - b_indi_erreur =BLOC( condition = "TYPE_OPTION=='INDI_ERREUR'", OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',defaut="ERRE_ELEM_SIGM", into=("ERRE_ELEM_SIGM","ERRE_ELNO_ELEM","ERZ1_ELEM_SIGM","ERZ2_ELEM_SIGM", "DCHA_ELNO_SIGM","DCHA_ELGA_SIGM","RADI_ELNO_SIGM","RADI_ELGA_SIGM", "QIRE_ELEM_SIGM","QIRE_ELNO_ELEM","QIZ1_ELEM_SIGM","QIZ2_ELEM_SIGM", "SING_ELEM","SING_ELNO_ELEM",) ), - + + b_erreur_re=BLOC(condition ="OPTION in ('ERRE_ELEM_SIGM','ERRE_ELNO_ELEM') or \ + (type(OPTION)==type(()) and 'ERRE_ELEM_SIGM' in OPTION) or \ + (type(OPTION)==type(()) and 'ERRE_ELNO_ELEM' in OPTION)", + ERRE_THM =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON", + fr="Indicateur d'erreur spatiale pour les modélisations THM", + ang="Spatial error indicators for THM models"), + b_ERRE_THM=BLOC(condition = "ERRE_THM == 'OUI'", + regles=(ENSEMBLE('LONGUEUR','PRESSION'),), + LONGUEUR=SIMP(statut='o',typ='R',val_min=0.0,fr="Longueur caractéristique du problème"), + PRESSION=SIMP(statut='o',typ='R',val_min=0.0,fr="Pression caractéristique du problème"), + TEMPERATURE=SIMP(statut='f',typ='R',val_min=0.0,fr="Température caractéristique du problème"),),), + b_erre_qi =BLOC(condition = "OPTION in ('QIRE_ELEM_SIGM','QIZ1_ELEM_SIGM','QIZ2_ELEM_SIGM') or \ (type(OPTION)==type(()) and 'QIRE_ELEM_SIGM' in OPTION) or \ (type(OPTION)==type(()) and 'QIZ1_ELEM_SIGM' in OPTION) or \ @@ -5840,196 +5825,129 @@ CALC_FORC_AJOU=OPER(nom="CALC_FORC_AJOU",op=199,sd_prod=vect_asse_gene, # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== - -from Macro.post_k_trans_ops import post_k_trans_ops - -POST_K_TRANS=MACRO(nom="POST_K_TRANS",op=post_k_trans_ops,sd_prod=table_sdaster, - fr="Calcul des facteurs d intensite des contrainte par recombinaison modale",reentrant='n', +CALC_G=OPER(nom="CALC_G",op=100,sd_prod=table_sdaster, + fr="Calcul du taux de restitution d'énergie par la méthode theta en thermo-élasticité" + +" et les facteurs d'intensité de contraintes.", + reentrant='f', UIinfo={"groupes":("Post traitements",)}, - RESU_TRANS =SIMP(statut='o',typ=tran_gene), - K_MODAL =FACT(statut='o', - TABL_K_MODA =SIMP(statut='f',typ=table_sdaster,), - RESU_MODA =SIMP(statut='f',typ=mode_meca,), - FOND_FISS =SIMP(statut='f',typ=fond_fiss,), - FISSURE =SIMP(statut='f',typ=fiss_xfem,), - THETA =SIMP(statut='f',typ=(theta_geom,cham_no_sdaster)), - R_INF =SIMP(statut='f',typ='R'), - R_SUP =SIMP(statut='f',typ='R'), - MODULE =SIMP(statut='f',typ='R'), - DIRE_THETA =SIMP(statut='f',typ=cham_no_sdaster ), - DIRECTION =SIMP(statut='f',typ='R',max='**'), - R_INF_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - R_SUP_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MODULE_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - DEGRE =SIMP(statut='f',typ='I',into=(0,1,2,3,4,5,6,7) ), - LISSAGE_THETA =SIMP(statut='f',typ='TXM',into=("LEGENDRE","LAGRANGE","LAGRANGE_REGU"),), - LISSAGE_G =SIMP(statut='f',typ='TXM',into=("LEGENDRE","LAGRANGE","LAGRANGE_NO_NO","LAGRANGE_REGU"),), - - - regles=(UN_PARMI('TABL_K_MODA','RESU_MODA'), - UN_PARMI('FISSURE','FOND_FISS'), - EXCLUS('MODULE','MODULE_FO'), - PRESENT_PRESENT('R_INF','R_SUP'), - PRESENT_PRESENT('R_INF_FO','R_SUP_FO'), ), - ), - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST','LIST_ORDRE'),), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ), - - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), - TITRE =SIMP(statut='f',typ='TXM'), -) + regles=(EXCLUS('COMP_ELAS','COMP_INCR'), + CONCEPT_SENSIBLE("ENSEMBLE"), + REUSE_SENSIBLE(), + DERIVABLE('RESULTAT'), + EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST', + 'TOUT_MODE','NUME_MODE','LIST_MODE','FREQ','LIST_FREQ',),), -#& MODIF COMMANDE DATE 09/01/2007 AUTEUR PROIX J-M.PROIX -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2006 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# -*- coding: iso-8859-1 -*- + THETA =FACT(statut='o', + THETA =SIMP(statut='f',typ=(theta_geom,cham_no_sdaster),), + FOND_FISS =SIMP(statut='f',typ=fond_fiss,max=1), + FISSURE =SIMP(statut='f',typ=fiss_xfem,max=1), + regles=(EXCLUS('FOND_FISS','FISSURE'),), + b_theta =BLOC(condition="THETA == None",fr="calcul de theta", + regles=(UN_PARMI('R_INF','R_INF_FO'), + EXCLUS('MODULE','MODULE_FO'), + PRESENT_PRESENT('R_INF','R_SUP'), + PRESENT_PRESENT('R_INF_FO','R_SUP_FO'), ), + NUME_FOND =SIMP(statut='f',typ='I',defaut=1), + R_INF =SIMP(statut='f',typ='R'), + R_SUP =SIMP(statut='f',typ='R'), + MODULE =SIMP(statut='f',typ='R'), + DIRE_THETA =SIMP(statut='f',typ=cham_no_sdaster ), + DIRECTION =SIMP(statut='f',typ='R',max='**'), + R_INF_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + R_SUP_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + MODULE_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + ), + ), -from Macro.simu_point_mat_ops import simu_point_mat_ops + RESULTAT =SIMP(statut='o',typ=(evol_elas,evol_noli,dyna_trans,mode_meca),), -SIMU_POINT_MAT=MACRO(nom="SIMU_POINT_MAT", op=simu_point_mat_ops,sd_prod=table_sdaster, - UIinfo={"groupes":("Résolution",)}, - fr="Calcul de l'évolution mécanique, en quasi-statique," - +" d'un point matériel en non linéaire", - COMP_INCR =C_COMP_INCR(), - MATER =SIMP(statut='o',typ=mater_sdaster,max=30), - INCREMENT =FACT(statut='o', - LIST_INST =SIMP(statut='o',typ=listr8_sdaster), - # DEBUT DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS - SUBD_METHODE =SIMP( statut='f',typ='TXM', - into =("AUCUNE","UNIFORME","EXTRAPOLE"), - defaut="AUCUNE", - fr="Méthode de subdivision des pas de temps en cas de non-convergence" - ), - b_subd_unif=BLOC(condition = "SUBD_METHODE == 'UNIFORME'", - regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), - SUBD_COEF_PAS_1=SIMP(statut='f',typ='R',defaut=1.0,val_min=0.0, - fr="Coefficient multiplicateur de la 1ère subdivision"), - SUBD_PAS =SIMP(statut='f',typ='I',defaut=4,val_min=2, - fr="Nombre de subdivision d'un pas de temps"), - SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, - fr="Nombre maximum de niveau de subdivision d'un pas de temps"), - SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, - fr="Pas de temps en dessous duquel on ne subdivise plus"), - ), - b_subd_extr=BLOC(condition = "SUBD_METHODE == 'EXTRAPOLE'", - regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), - SUBD_OPTION =SIMP(statut='f',typ='TXM', - into =("IGNORE_PREMIERES","GARDE_DERNIERES",), - defaut="IGNORE_PREMIERES", - fr="Technique d'extrapolation : les 1ere itérations sont ignorées ou les dernières sont gardées"), - SUBD_ITER_IGNO =SIMP(statut='c',typ='I',defaut=3,val_min=0, - fr="Les n premières itérations sont ignorées pour l'extrapolation"), - SUBD_ITER_FIN =SIMP(statut='c',typ='I',defaut=8,val_min=3, - fr="Seules les n dernières itérations sont prises pour l'extrapolation"), - SUBD_PAS =SIMP(statut='c',typ='I',defaut=4,val_min=2, - fr="Nombre de subdivision d'un pas de temps en cas divergence"), - SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, - fr="Nombre maximum de niveau de subdivision d'un pas de temps"), - SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, - fr="Pas de temps en dessous duquel on ne subdivise plus"), - SUBD_ITER_PLUS =SIMP(statut='c',typ='I',defaut=50,val_min=20, - fr="% itération autorisée en plus"), - ), - # FIN DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS + TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_INST =SIMP(statut='f',typ=listr8_sdaster), + TOUT_MODE =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + LIST_MODE =SIMP(statut='f',typ=listis_sdaster), + LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), + FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + + b_acce_reel =BLOC(condition="(INST != None)or(LIST_INST != None)or(FREQ != None)or(LIST_FREQ != None)", + PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-6), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), ), - NEWTON =FACT(statut='d', - PREDICTION =SIMP(statut='f',typ='TXM',into=("TANGENTE","ELASTIQUE","EXTRAPOL") ), - MATRICE =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE") ), - PAS_MINI_ELAS =SIMP(statut='f',typ='R',defaut=0.0E+0), - REAC_ITER =SIMP(statut='f',typ='I',defaut=1), - REAC_ITER_ELAS =SIMP(statut='f',typ='I',defaut=0), + + EXCIT =FACT(statut='f',max='**', + CHARGE =SIMP(statut='f',typ=(char_meca,char_cine_meca)), + FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",) ), ), - CONVERGENCE =FACT(statut='d', - regles=(PRESENT_ABSENT('RESI_REFE_RELA','RESI_GLOB_MAXI','RESI_GLOB_RELA'),), - SIGM_REFE =SIMP(statut='f',typ='R'), - EPSI_REFE =SIMP(statut='f',typ='R'), - RESI_REFE_RELA =SIMP(statut='f',typ='R'), - RESI_GLOB_MAXI =SIMP(statut='f',typ='R'), - RESI_GLOB_RELA =SIMP(statut='f',typ='R'), - ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut=50), - ITER_GLOB_ELAS =SIMP(statut='f',typ='I',defaut=25), - ARRET =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - ), - SUIVI_DDL = FACT(statut='f',max=4, - NUME_SUIVI =SIMP(statut='o',typ='I' ,min=1,max=4), - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=1, - into=("DEPL","SIEF_ELGA","VARI_ELGA",)), - NOM_CMP =SIMP(statut='o',typ='TXM',max=1 ), - ), - ARCHIVAGE =FACT(statut='f', - regles=(EXCLUS('PAS_ARCH','LIST_INST','INST'), - EXCLUS('ARCH_ETAT_INIT','NUME_INIT'), ), - LIST_INST =SIMP(statut='f',typ=(listr8_sdaster) ), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - PAS_ARCH =SIMP(statut='f',typ='I' ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3), - ARCH_ETAT_INIT =SIMP(statut='f',typ='TXM',into=("OUI",)), - NUME_INIT =SIMP(statut='f',typ='I'), - DETR_NUME_SUIV =SIMP(statut='f',typ='TXM',into=("OUI",)), - HAM_EXCLU =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**', - into=("DEPL","SIEF_ELGA","VARI_ELGA","VARI_NON_LOCAL","LANL_ELGA")), - ), - MODELISATION =SIMP(statut='f',typ='TXM',defaut="3D",validators=NoRepeat(),max=1, - into=("3D","C_PLAN","D_PLAN",)), - b_3D = BLOC(condition="MODELISATION == '3D'", - fr="Trajets de chargeement en 3D", - SIGM_IMPOSE=FACT(statut='f', - SIXX = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - SIYY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - SIZZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - SIXY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - SIXZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - SIYZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - EPSI_IMPOSE=FACT(statut='f', - EPXX = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPYY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPZZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPXY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPXZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPYZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - ), - - b_2D = BLOC(condition="MODELISATION != '3D'", - fr="Trajets de chargeement en 2D", - - SIGM_IMPOSE=FACT(statut='f', - SIXX = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - SIYY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - SIXY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - EPSI_IMPOSE=FACT(statut='f', - EPXX = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPYY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - EPXY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - ), - - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), -) + SYME_CHAR =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SYME","ANTI","SANS") ), + + COMP_ELAS =FACT(statut='f', + RELATION =SIMP(statut='f',typ='TXM',defaut="ELAS", + into=("ELAS","ELAS_VMIS_LINE","ELAS_VMIS_TRAC") ), + ELAS =SIMP(statut='f',typ='I',defaut=1,into=(1,) ), + ELAS_VMIS_LINE =SIMP(statut='f',typ='I',defaut=1,into=(1,) ), + ELAS_VMIS_TRAC =SIMP(statut='f',typ='I',defaut=1,into=(1,) ), + DEFORMATION =SIMP(statut='f',typ='TXM',defaut="PETIT",into=("PETIT","GREEN") ), + regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), + ), + COMP_INCR =FACT(statut='f', + RELATION =SIMP(statut='f',typ='TXM',defaut="ELAS", + into=("ELAS","VMIS_ISOT_TRAC","VMIS_ISOT_LINE","VMIS_CINE_LINE") ), + ELAS =SIMP(statut='f',typ='I',defaut=1,into=(1,) ), + VMIS_ISOT_TRAC =SIMP(statut='f',typ='I',defaut=2,into=(2,) ), + VMIS_ISOT_LINE =SIMP(statut='f',typ='I',defaut=2,into=(2,) ), + DEFORMATION =SIMP(statut='f',typ='TXM',defaut="PETIT",into=("PETIT","PETIT_REAC") ), + regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), + ), + ETAT_INIT =FACT(statut='f', + SIGM =SIMP(statut='f',typ=cham_elem), + DEPL =SIMP(statut='f',typ=cham_no_sdaster), + ), + + LISSAGE =FACT(statut='d', + DEGRE =SIMP(statut='f',typ='I',defaut=5,into=(0,1,2,3,4,5,6,7) ), + LISSAGE_THETA =SIMP(statut='f',typ='TXM',defaut="LEGENDRE",into=("LEGENDRE","LAGRANGE","LAGRANGE_REGU"),), + LISSAGE_G =SIMP(statut='f',typ='TXM',defaut="LEGENDRE",into=("LEGENDRE","LAGRANGE", + "LAGRANGE_NO_NO","LAGRANGE_REGU"),), + ), + + OPTION =SIMP(statut='o',typ='TXM',max=1,defaut='CALC_G', + into=("CALC_G","CALC_G_GLOB","CALC_K_G","K_G_MODA","G_MAX","G_MAX_GLOB","G_BILI", + "G_BILI_GLOB","G_LAGR","G_LAGR_GLOB","CALC_K_MAX"),), + + b_g_max =BLOC(condition="(OPTION=='G_MAX') or (OPTION=='G_MAX_GLOB')", + BORNES =FACT(statut='o',max='**', + NUME_ORDRE =SIMP(statut='o',typ='I'), + VALE_MIN =SIMP(statut='o',typ='R'), + VALE_MAX =SIMP(statut='o',typ='R'), + ), + ), + b_k_max =BLOC(condition="(OPTION=='CALC_K_MAX')", + SIGNES =FACT(statut='o',max=1, + CHARGE_S =SIMP(statut='o',typ='I',validators=NoRepeat(),max='**'), + CHARGE_NS =SIMP(statut='o',typ='I',validators=NoRepeat(),max='**'), + ), + ), + + PROPAGATION =SIMP(statut='f',typ='R'), + THETA_LAGR =SIMP(statut='f',typ=theta_geom), + DIRE_THETA_LAGR =SIMP(statut='f',typ=cham_no_sdaster), + SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', + fr="Liste des paramètres de sensibilité.", + ang="List of sensitivity parameters"), + TITRE =SIMP(statut='f',typ='TXM',max='**'), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), +); #& MODIF COMMANDE DATE 10/10/2006 AUTEUR MCOURTOI M.COURTOIS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -6366,7 +6284,7 @@ CALC_META=OPER(nom="CALC_META",op=194,sd_prod=evol_ther,reentrant='o', OPTION =SIMP(statut='f',typ='TXM' ,into=("META_ELNO_TEMP",) ), ) ; -#& MODIF COMMANDE DATE 12/02/2007 AUTEUR KHAM M.KHAM +#& MODIF COMMANDE DATE 09/05/2007 AUTEUR VIVAN L.VIVAN # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -6392,10 +6310,7 @@ def calc_no_prod(RESULTAT,**args): CALC_NO=OPER(nom="CALC_NO",op= 106,sd_prod=calc_no_prod,reentrant='o', fr="Enrichir une SD Résultat par des champs aux noeuds calculés à partir de champs aux éléments évalués aux noeuds", UIinfo={"groupes":("Post traitements",)}, - RESULTAT =SIMP(statut='o',typ=(evol_elas,dyna_trans,dyna_harmo,acou_harmo,mode_meca, - mode_acou,mode_stat,mode_stat_depl,mode_stat_acce, - mode_stat_forc,evol_ther,evol_noli,base_modale, - mult_elas,fourier_elas,fourier_ther,mode_flamb ) ), + RESULTAT =SIMP(statut='o',typ=resultat_sdaster), SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', fr="Liste des paramètres de sensibilité.", ang="List of sensitivity parameters"), @@ -6472,151 +6387,191 @@ CALC_NO=OPER(nom="CALC_NO",op= 106,sd_prod=calc_no_prod,reentrant='o', GROUP_NO_RESU =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), NOEUD_RESU =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), ) ; -#& MODIF COMMANDE DATE 05/03/2007 AUTEUR GALENNE E.GALENNE +#& MODIF COMMANDE DATE 10/10/2006 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -CALC_THETA=OPER(nom="CALC_THETA",op=54,sd_prod=theta_geom,reentrant='n', - UIinfo={"groupes":("Post traitements",)}, - fr="Définir un champ theta pour le calcul du taux de restitution d'énergie" - +" ou des facteurs d'intensité de contraintes", - regles=(UN_PARMI('THETA_2D','THETA_3D','THETA_BANDE'), - PRESENT_ABSENT('THETA_2D','DIRE_THETA'), - EXCLUS('DIRECTION','DIRE_THETA'),), - OPTION =SIMP(statut='f',typ='TXM',defaut="COURONNE",into=("COURONNE","BANDE") ), - MODELE =SIMP(statut='o',typ=(modele_sdaster) ), - THETA_3D =FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','GROUP_NO','NOEUD'), - UN_PARMI('MODULE','MODULE_FO'), - ENSEMBLE('MODULE','R_INF','R_SUP'), - ENSEMBLE('MODULE_FO','R_INF_FO','R_SUP_FO'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - MODULE =SIMP(statut='f',typ='R'), - R_INF =SIMP(statut='f',typ='R'), - R_SUP =SIMP(statut='f',typ='R'), - MODULE_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - R_INF_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - R_SUP_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - b_theta_3d =BLOC(condition="THETA_3D != None", - FOND_FISS =SIMP(statut='o',typ=fond_fiss),), - DIRE_THETA =SIMP(statut='f',typ=cham_no_sdaster ), - DIRECTION =SIMP(statut='f',typ='R',max='**'), - THETA_2D =FACT(statut='f',max='**', - regles=(UN_PARMI('GROUP_NO','NOEUD'),), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - MODULE =SIMP(statut='o',typ='R'), - R_INF =SIMP(statut='o',typ='R'), - R_SUP =SIMP(statut='o',typ='R'), - ), - THETA_BANDE =FACT(statut='f',max='**', - MODULE =SIMP(statut='o',typ='R'), - R_INF =SIMP(statut='o',typ='R'), - R_SUP =SIMP(statut='o',typ='R'), - ), - GRAD_NOEU_THETA =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - IMPRESSION =FACT(statut='f', - UNITE =SIMP(statut='f',typ='I',defaut=8), - FORMAT =SIMP(statut='f',typ='TXM',defaut="EXCEL",into=("EXCEL","AGRAF") ), - ), -) ; -#& MODIF COMMANDE DATE 12/03/2007 AUTEUR DEVESA G.DEVESA -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE VABHHTS J.PELLET -def calc_vect_elem_prod(OPTION,**args): - if OPTION == "CHAR_MECA" : return vect_elem_depl_r - if OPTION == "CHAR_MECA_LAGR" : return vect_elem_depl_r - if OPTION == "CHAR_THER" : return vect_elem_temp_r - if OPTION == "CHAR_ACOU" : return vect_elem_pres_c - if OPTION == "FORC_NODA" : return vect_elem_depl_r - raise AsException("type de concept resultat non prevu") +# RESPONSABLE ASSIRE A.ASSIRE -CALC_VECT_ELEM=OPER(nom="CALC_VECT_ELEM",op=8,sd_prod=calc_vect_elem_prod,reentrant='n', - UIinfo={"groupes":("Matrices/vecteurs",)}, - fr="Calcul des seconds membres élémentaires", - OPTION =SIMP(statut='o',typ='TXM',into=("CHAR_MECA","CHAR_THER","CHAR_ACOU", - "FORC_NODA","CHAR_MECA_LAGR") ), - b_char_meca =BLOC(condition = "OPTION=='CHAR_MECA'", - regles=(AU_MOINS_UN('CHARGE','MODELE'),), - CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), - MODELE =SIMP(statut='f',typ=modele_sdaster), - b_charge =BLOC(condition = "CHARGE != None", fr="modèle ne contenant pas de sous-structure", - CHAM_MATER =SIMP(statut='f',typ=cham_mater), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - INST =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - MODE_FOURIER =SIMP(statut='f',typ='I',defaut= 0 ), - ), - b_modele =BLOC(condition = "(MODELE != None)",fr="modèle contenant une sous-structure", - SOUS_STRUC =FACT(statut='o',min=01, - regles=(UN_PARMI('TOUT','SUPER_MAILLE'),), - CAS_CHARGE =SIMP(statut='o',typ='TXM' ), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - SUPER_MAILLE=SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**',), - ), +from Macro.calc_precont_ops import calc_precont_ops + + +# =========================================================================== +# CATALOGUE DE LA MACRO "CALC_PRECONT" +# ----------------------------------------- +# USAGE : +# +# +# =========================================================================== + +CALC_PRECONT=MACRO(nom="CALC_PRECONT",op=calc_precont_ops,sd_prod=evol_noli, + fr="Imposer la tension définie par le BPEL dans les cables", + reentrant='f',UIinfo={"groupe":("Modélisation",)}, + reuse =SIMP(statut='f',typ='evol_noli'), + MODELE =SIMP(statut='o',typ=modele_sdaster), + CHAM_MATER =SIMP(statut='o',typ=cham_mater), + CARA_ELEM =SIMP(statut='o',typ=cara_elem), + CABLE_BP =SIMP(statut='o',typ=cabl_precont,validators=NoRepeat(),max='**'), + CABLE_BP_INACTIF =SIMP(statut='f',typ=cabl_precont,validators=NoRepeat(),max='**'), + INCREMENT =FACT(statut='o', + LIST_INST =SIMP(statut='o',typ=listr8_sdaster), + INST_INIT =SIMP(statut='f',typ='R'), + INST_FIN =SIMP(statut='f',typ='R'), + PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), + # DEBUT DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS + SUBD_METHODE =SIMP( statut='f',typ='TXM', + into =("AUCUNE","UNIFORME","EXTRAPOLE"), + defaut="AUCUNE", + fr="Méthode de subdivision des pas de temps en cas de non-convergence" ), + b_subd_unif=BLOC(condition = "SUBD_METHODE == 'UNIFORME'", + regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), + SUBD_COEF_PAS_1=SIMP(statut='f',typ='R',defaut=1.0,val_min=0.0, + fr="Coefficient multiplicateur de la 1ère subdivision"), + SUBD_PAS =SIMP(statut='f',typ='I',defaut=4,val_min=2, + fr="Nombre de subdivision d'un pas de temps"), + SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, + fr="Nombre maximum de niveau de subdivision d'un pas de temps"), + SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, + fr="Pas de temps en dessous duquel on ne subdivise plus"), + ), + b_subd_extr=BLOC(condition = "SUBD_METHODE == 'EXTRAPOLE'", + regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), + SUBD_OPTION =SIMP(statut='f',typ='TXM', + into =("IGNORE_PREMIERES","GARDE_DERNIERES",), + defaut="IGNORE_PREMIERES", + fr="Technique d'extrapolation : les 1ere itérations sont ignorées ou les dernières sont gardées"), + SUBD_ITER_IGNO =SIMP(statut='c',typ='I',defaut=3,val_min=0, + fr="Les n premières itérations sont ignorées pour l'extrapolation"), + SUBD_ITER_FIN =SIMP(statut='c',typ='I',defaut=8,val_min=3, + fr="Seules les n dernières itérations sont prises pour l'extrapolation"), + SUBD_PAS =SIMP(statut='c',typ='I',defaut=4,val_min=2, + fr="Nombre de subdivision d'un pas de temps en cas divergence"), + SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, + fr="Nombre maximum de niveau de subdivision d'un pas de temps"), + SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, + fr="Pas de temps en dessous duquel on ne subdivise plus"), + SUBD_ITER_PLUS =SIMP(statut='c',typ='I',defaut=50,val_min=20, + fr="% itération autorisée en plus"), + ), + # FIN DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS ), - b_char_ther =BLOC(condition = "OPTION=='CHAR_THER'", - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - CHARGE =SIMP(statut='o',typ=char_ther,validators=NoRepeat(),max='**'), - INST =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - ), - - b_char_acou =BLOC(condition = "OPTION=='CHAR_ACOU'", - CHAM_MATER =SIMP(statut='o',typ=cham_mater), - CHARGE =SIMP(statut='o',typ=char_acou,validators=NoRepeat(),max='**'), - ), - - b_forc_noda =BLOC(condition = "OPTION=='FORC_NODA'", - SIEF_ELGA =SIMP(statut='o',typ=cham_elem), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - MODELE =SIMP(statut='f',typ=modele_sdaster), - ), - - b_meca_lagr =BLOC(condition = "OPTION=='CHAR_MECA_LAGR'", - CHAM_MATER =SIMP(statut='o',typ=cham_mater), - THETA =SIMP(statut='o',typ=theta_geom), - PROPAGATION =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), - INST =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + + NEWTON =FACT(statut='d', + REAC_INCR =SIMP(statut='f',typ='I',defaut= 1 ), + PREDICTION =SIMP(statut='f',typ='TXM',into=("DEPL_CALCULE","TANGENTE","ELASTIQUE","EXTRAPOL") ), + MATRICE =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE") ), + PAS_MINI_ELAS =SIMP(statut='f',typ='R',defaut=0.0E+0), + REAC_ITER =SIMP(statut='f',typ='I',defaut=0), + EVOL_NOLI =SIMP(statut='f',typ=evol_noli), + ), + RECH_LINEAIRE =FACT(statut='f', + RESI_LINE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-1 ), + ITER_LINE_MAXI =SIMP(statut='f',typ='I',defaut= 3), ), -) ; -#& MODIF COMMANDE DATE 31/10/2006 AUTEUR REZETTE C.REZETTE + CONVERGENCE =FACT(statut='d', + RESI_GLOB_MAXI =SIMP(statut='f',typ='R'), + RESI_GLOB_RELA =SIMP(statut='f',typ='R'), + ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut=10), + ITER_GLOB_ELAS =SIMP(statut='f',typ='I',defaut=25), + ARRET =SIMP(statut='f',typ='TXM',defaut="OUI"), + ), + ETAT_INIT =FACT(statut='f', + regles=(AU_MOINS_UN('EVOL_NOLI','DEPL','SIGM','VARI','VARI_NON_LOCAL',), + EXCLUS('EVOL_NOLI','DEPL',), + EXCLUS('EVOL_NOLI','SIGM',), + EXCLUS('EVOL_NOLI','VARI',), + EXCLUS('EVOL_NOLI','VARI_NON_LOCAL',), + EXCLUS('NUME_ORDRE','INST'), ), + DEPL =SIMP(statut='f',typ=cham_no_sdaster), + SIGM =SIMP(statut='f',typ=(carte_sdaster,cham_elem)), + VARI =SIMP(statut='f',typ=cham_elem), + VARI_NON_LOCAL =SIMP(statut='f',typ=cham_no_sdaster), + EVOL_NOLI =SIMP(statut='f',typ=evol_noli), + NUME_ORDRE =SIMP(statut='f',typ='I'), + INST =SIMP(statut='f',typ='R'), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + NUME_DIDI =SIMP(statut='f',typ='I'), + INST_ETAT_INIT =SIMP(statut='f',typ='R'), + ), + SOLVEUR =FACT(statut='d', + METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ), + b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale", + RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), + ), + b_ldlt =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT", + RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), + ), + b_ldlt_mult =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ", + fr="Paramètres relatifs à la non inversibilité de la matrice à factorise", + NPREC =SIMP(statut='f',typ='I',defaut= 8 ), + STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON","DECOUPE") ), + ), + b_gcpc =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué", + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ), + NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), + RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), + RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), + NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), + ), + SYME =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + ), + SOLV_NON_LOCAL =FACT(statut='f', + METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ), + b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale", + RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), + ), + b_ldlt =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT", + RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), + ), + b_ldlt_mult =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ", + fr="Paramètres relatifs à la non inversibilité de la matrice à factorise", + NPREC =SIMP(statut='f',typ='I',defaut= 8 ), + STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + ), + b_gcpc =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué", + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ), + NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), + RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), + NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), + ), + EPS =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + ), + LAGR_NON_LOCAL =FACT(statut='f', + ITER_DUAL_MAXI =SIMP(statut='f',typ='I',defaut= 50), + RESI_DUAL_ABSO =SIMP(statut='o',typ='R'), + RESI_PRIM_ABSO =SIMP(statut='o',typ='R'), + R =SIMP(statut='f',typ='R',defaut= 1000.), + ITER_PRIM_MAXI =SIMP(statut='f',typ='I',defaut= 10), + ), + INFO =SIMP(statut='f',typ='I',into=(1,2) ), + TITRE =SIMP(statut='f',typ='TXM',max='**' ), + + EXCIT =FACT(statut='o',max='**', + CHARGE =SIMP(statut='o',typ=char_meca), + ), + + COMP_INCR =C_COMP_INCR(), + ) ; +#& MODIF COMMANDE DATE 10/10/2006 AUTEUR MCOURTOI M.COURTOIS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2006 EDF R&D WWW.CODE-ASTER.ORG +# COPYRIGHT (C) 1991 - 2005 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR @@ -6631,147 +6586,245 @@ CALC_VECT_ELEM=OPER(nom="CALC_VECT_ELEM",op=8,sd_prod=calc_vect_elem_prod,reentr # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== +# -*- coding: iso-8859-1 -*- -from Macro.post_gp_ops import post_gp_ops -def post_gp_prod(self, TABL_RESU, **kargs): - """Typage des sd_prod - """ - if TABL_RESU != None: - self.type_sdprod(TABL_RESU, table_sdaster) - return table_sdaster +# RESPONSABLE MCOURTOI M.COURTOIS -POST_GP=MACRO(nom="POST_GP", op=post_gp_ops, sd_prod=post_gp_prod, - fr="Calcul du critère énergétique Gp suite à un calcul thermo-mécanique", - reentrant='n', - UIinfo={"groupes":("Post traitements",)}, - regles=(AU_MOINS_UN('IDENTIFICATION', 'PREDICTION'),), - - # Résultat, modèle, comportement, chargement - RESULTAT = SIMP(statut='o',typ=(evol_elas,evol_noli,dyna_trans,mode_meca),), - RESU_THER = SIMP(statut='f',typ=evol_ther,), - MODELE = SIMP(statut='o',typ=modele_sdaster), - MATER = SIMP(statut='o',typ=mater_sdaster), +def calc_table_prod(self, TABLE, ACTION, **kargs): + """Typage du concept produit. + """ + l_typ = [AsType(TABLE),] + for mcf in ACTION: + dmc = mcf.cree_dict_valeurs(mcf.mc_liste) + if dmc.get('TABLE') != None: + l_typ.append(AsType(dmc['TABLE'])) + # une table_fonction étant une table + if table_fonction in l_typ: + return table_fonction + else: + return table_sdaster + + +from Macro.calc_table_ops import calc_table_ops + +CALC_TABLE=MACRO(nom="CALC_TABLE",op=calc_table_ops, sd_prod=calc_table_prod, + fr="Opérations sur une table", + reentrant='f', + regles=(DERIVABLE('TABLE'),), + TABLE = SIMP(statut='o',typ=table_sdaster), + ACTION = FACT(statut='o', max='**', + fr = "Suite des opérations à effectuer sur la table", + OPERATION = SIMP(statut='o', typ='TXM', + into=('FILTRE', 'EXTR', 'RENOMME', 'TRI', 'COMB', 'OPER',)), - COMP_ELAS = FACT(statut='o', - RELATION = SIMP(statut='f',typ='TXM',defaut="ELAS", - into=("ELAS","ELAS_VMIS_LINE","ELAS_VMIS_TRAC"),), - DEFORMATION = SIMP(statut='f',typ='TXM',defaut="PETIT",into=("PETIT","GREEN"),), + b_filtre = BLOC(condition="OPERATION == 'FILTRE'", + fr="Sélectionne les lignes de la table vérifiant un critère", + NOM_PARA = SIMP(statut='o',typ='TXM'), + CRIT_COMP = SIMP(statut='f',typ='TXM',defaut="EQ", + into=('EQ','NE','GT','LT','GE','LE','REGEXP', + 'VIDE','NON_VIDE','MAXI','ABS_MAXI','MINI','ABS_MINI'),), + b_vale = BLOC(condition = "(CRIT_COMP in ('EQ','NE','GT','LT','GE','LE'))", + regles=(UN_PARMI('VALE','VALE_I','VALE_K','VALE_C',),), + VALE = SIMP(statut='f',typ='R'), + VALE_I = SIMP(statut='f',typ='I'), + VALE_C = SIMP(statut='f',typ='C'), + VALE_K = SIMP(statut='f',typ='TXM'), + ), + b_regexp = BLOC(condition = "CRIT_COMP == 'REGEXP'", + VALE_K = SIMP(statut='f',typ='TXM'), + ), + b_crit = BLOC(condition = "CRIT_COMP in ('EQ','NE')", + CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3 ), + ), ), - EXCIT = FACT(statut='f', max='**', - CHARGE = SIMP(statut='o', typ=(char_meca,char_cine_meca)), - FONC_MULT = SIMP(statut='f', typ=(fonction_sdaster,nappe_sdaster,formule)), - TYPE_CHARGE = SIMP(statut='f', typ='TXM', defaut="FIXE", into=("FIXE",)), + b_extr = BLOC(condition="OPERATION == 'EXTR'", + fr="Extrait une ou plusieurs colonnes de la table", + NOM_PARA = SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', + fr="Noms des colonnes à extraire"), ), - SYME_CHAR = SIMP(statut='f',typ='TXM',defaut="SANS",into=("SYME","ANTI","SANS")), - - DIRECTION = SIMP(statut='o', typ='R', max=3), - THETA_2D = FACT(statut='o', max='**', - fr="paramètres de définition des champs theta", - GROUP_NO = SIMP(statut='o', typ=grno, validators=NoRepeat(), max='**'), - R_INF = SIMP(statut='o', typ='R'), - R_SUP = SIMP(statut='o', typ='R'), + + b_renomme = BLOC(condition="OPERATION == 'RENOMME'", + fr="Renomme un ou plusieurs paramètres de la table", + NOM_PARA = SIMP(statut='o', typ='TXM', validators=NoRepeat(), min=2, max=2, + fr="Couple (ancien nom du paramètre, nouveau nom du paramètre)",), ), - - # copeaux - GROUP_MA = SIMP(statut='o', typ=grma, validators=NoRepeat(), max='**'), - PAS_ENTAILLE = SIMP(statut='o', typ='R', val_min=0.), - - # critère sur Gp - CRIT_MAXI_GP = SIMP(statut='f', typ='TXM', defaut="ABSOLU", - into=("RELATIF","ABSOLU")), - - # correction axisymétrie - RAYON_AXIS = SIMP(statut='f', typ='R', val_min=0., defaut=1.), - - # identification - IDENTIFICATION = FACT(statut='f', max=1, - KJ_CRIT = SIMP(statut='o', typ='R', val_min=0., max='**'), - TEMP = SIMP(statut='o', typ='R', val_min=0., max='**'), + + b_tri = BLOC(condition="OPERATION == 'TRI'", + fr="Ordonne les lignes de la table selon les valeurs d'un ou plusieurs paramètres", + NOM_PARA = SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**'), + ORDRE = SIMP(statut='f',typ='TXM',defaut="CROISSANT", + into=("CROISSANT","DECROISSANT") ), ), - # prédiction - PREDICTION = FACT(statut='f', max=1, - GP_CRIT = SIMP(statut='o', typ='R', val_min=0., max='**'), - TEMP = SIMP(statut='o', typ='R', val_min=0., max='**'), + b_comb = BLOC(condition="OPERATION == 'COMB'", + fr="Combine deux tables ayant éventuellement des paramètres communs", + TABLE = SIMP(statut='o',typ=table_sdaster, + fr="Table dont les colonnes vont venir surcharger la table initiale"), + NOM_PARA = SIMP(statut='f',typ='TXM',max='**', + fr="Noms des paramètres dont les valeurs doivent etre identiques dans les deux tables "\ + "pour que les colonnes soient combinées"), ), - # table résultat - TABL_RESU = SIMP(statut='o', typ=CO,), - - INFO = SIMP(statut='f', typ='I', defaut=1, into=(1, 2),), + b_oper = BLOC(condition="OPERATION == 'OPER'", + fr="Applique une formule dans laquelle les variables sont les paramètres de la table", + FORMULE = SIMP(statut='o',typ=formule, + fr="Formule à appliquer aux colonnes de la table"), + NOM_PARA = SIMP(statut='o',typ='TXM', + fr="Nom de la nouvelle colonne"), + ), + ), + + SENSIBILITE = SIMP(statut='f',typ=(para_sensi,theta_geom),max=1, + fr="Paramètre de sensibilité", + ang="Sensitivity parameter"), + TITRE = SIMP(statut='f',typ='TXM',max='**', + fr="Titre de la table produite"), + INFO = SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), ) -#& MODIF COMMANDE DATE 09/01/2007 AUTEUR ABBAS M.ABBAS +#& MODIF COMMANDE DATE 05/03/2007 AUTEUR GALENNE E.GALENNE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2006 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== - -from Macro.macr_spectre_ops import macr_spectre_ops - -MACR_SPECTRE=MACRO(nom="MACR_SPECTRE",op=macr_spectre_ops,sd_prod=table_sdaster, - reentrant='n', UIinfo={"groupes":("Outils métier",)}, - fr="calcul de spectre, post-traitement de séisme", - MAILLAGE =SIMP(statut='o',typ=maillage_sdaster,), - PLANCHER =FACT(statut='o',max='**', - regles=(AU_MOINS_UN('NOEUD','GROUP_NO' ),), - NOM =SIMP(statut='o',typ='TXM',), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), ), - NOM_CHAM =SIMP(statut='o',typ='TXM' ,into=('ACCE','DEPL')), - CALCUL =SIMP(statut='o',typ='TXM' ,into=('ABSOLU','RELATIF'),position='global'), - b_acce =BLOC( condition = "NOM_CHAM=='ACCE'", - regles=(UN_PARMI('LIST_FREQ','FREQ'),), - AMOR_SPEC =SIMP(statut='o',typ='R',max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster ), - FREQ =SIMP(statut='f',typ='R',max='**'), - NORME =SIMP(statut='o',typ='R'), - RESU =FACT(statut='o',max='**', - regles=(UN_PARMI('RESU_GENE','RESULTAT'),), - RESU_GENE =SIMP(statut='f',typ=tran_gene), - RESULTAT =SIMP(statut='f',typ=(dyna_trans,evol_noli)), - b_calc =BLOC( condition = "CALCUL=='RELATIF'", - ACCE_X =SIMP(statut='o',typ=fonction_sdaster), - ACCE_Y =SIMP(statut='o',typ=fonction_sdaster), - ACCE_Z =SIMP(statut='o',typ=fonction_sdaster),), ), - IMPRESSION =FACT(statut='f', - TRI =SIMP(statut='f',typ='TXM',defaut='AMOR_SPEC',into=("AMOR_SPEC","DIRECTION",),), - FORMAT =SIMP(statut='f',typ='TXM',defaut='TABLEAU',into=("TABLEAU","XMGRACE",),), - UNITE =SIMP(statut='f',typ='I',val_min=10,val_max=90,defaut=29, - fr="Unité logique définissant le fichier (fort.N) dans lequel on écrit"), - b_pilote = BLOC(condition = "FORMAT == 'XMGRACE'", - PILOTE =SIMP(statut='f',typ='TXM',defaut='', - into=('','POSTSCRIPT','EPS','MIF','SVG','PNM','PNG','JPEG','PDF','INTERACTIF'),),), - TOUT =SIMP(statut='f',typ='TXM',defaut='NON',into=("OUI","NON",),), - ), +CALC_THETA=OPER(nom="CALC_THETA",op=54,sd_prod=theta_geom,reentrant='n', + UIinfo={"groupes":("Post traitements",)}, + fr="Définir un champ theta pour le calcul du taux de restitution d'énergie" + +" ou des facteurs d'intensité de contraintes", + regles=(UN_PARMI('THETA_2D','THETA_3D','THETA_BANDE'), + PRESENT_ABSENT('THETA_2D','DIRE_THETA'), + EXCLUS('DIRECTION','DIRE_THETA'),), + OPTION =SIMP(statut='f',typ='TXM',defaut="COURONNE",into=("COURONNE","BANDE") ), + MODELE =SIMP(statut='o',typ=(modele_sdaster) ), + THETA_3D =FACT(statut='f',max='**', + regles=(UN_PARMI('TOUT','GROUP_NO','NOEUD'), + UN_PARMI('MODULE','MODULE_FO'), + ENSEMBLE('MODULE','R_INF','R_SUP'), + ENSEMBLE('MODULE_FO','R_INF_FO','R_SUP_FO'),), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + MODULE =SIMP(statut='f',typ='R'), + R_INF =SIMP(statut='f',typ='R'), + R_SUP =SIMP(statut='f',typ='R'), + MODULE_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + R_INF_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + R_SUP_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + ), + b_theta_3d =BLOC(condition="THETA_3D != None", + FOND_FISS =SIMP(statut='o',typ=fond_fiss),), + DIRE_THETA =SIMP(statut='f',typ=cham_no_sdaster ), + DIRECTION =SIMP(statut='f',typ='R',max='**'), + THETA_2D =FACT(statut='f',max='**', + regles=(UN_PARMI('GROUP_NO','NOEUD'),), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + MODULE =SIMP(statut='o',typ='R'), + R_INF =SIMP(statut='o',typ='R'), + R_SUP =SIMP(statut='o',typ='R'), ), - b_depl =BLOC( condition = "NOM_CHAM=='DEPL'", - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - RESU =FACT(statut='o',max=3, - regles=(UN_PARMI('RESU_GENE','RESULTAT'),), - RESU_GENE =SIMP(statut='f',typ=tran_gene), - RESULTAT =SIMP(statut='f',typ=(dyna_trans,evol_noli)), - b_calc =BLOC( condition = "CALCUL=='ABSOLU'", - DEPL_X =SIMP(statut='o',typ=fonction_sdaster), - DEPL_Y =SIMP(statut='o',typ=fonction_sdaster), - DEPL_Z =SIMP(statut='o',typ=fonction_sdaster),),), + THETA_BANDE =FACT(statut='f',max='**', + MODULE =SIMP(statut='o',typ='R'), + R_INF =SIMP(statut='o',typ='R'), + R_SUP =SIMP(statut='o',typ='R'), ), -) -#& MODIF COMMANDE DATE 12/09/2006 AUTEUR REZETTE C.REZETTE + GRAD_NOEU_THETA =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + IMPRESSION =FACT(statut='f', + UNITE =SIMP(statut='f',typ='I',defaut=8), + FORMAT =SIMP(statut='f',typ='TXM',defaut="EXCEL",into=("EXCEL","AGRAF") ), + ), +) ; +#& MODIF COMMANDE DATE 12/03/2007 AUTEUR DEVESA G.DEVESA +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE VABHHTS J.PELLET +def calc_vect_elem_prod(OPTION,**args): + if OPTION == "CHAR_MECA" : return vect_elem_depl_r + if OPTION == "CHAR_MECA_LAGR" : return vect_elem_depl_r + if OPTION == "CHAR_THER" : return vect_elem_temp_r + if OPTION == "CHAR_ACOU" : return vect_elem_pres_c + if OPTION == "FORC_NODA" : return vect_elem_depl_r + raise AsException("type de concept resultat non prevu") + +CALC_VECT_ELEM=OPER(nom="CALC_VECT_ELEM",op=8,sd_prod=calc_vect_elem_prod,reentrant='n', + UIinfo={"groupes":("Matrices/vecteurs",)}, + fr="Calcul des seconds membres élémentaires", + OPTION =SIMP(statut='o',typ='TXM',into=("CHAR_MECA","CHAR_THER","CHAR_ACOU", + "FORC_NODA","CHAR_MECA_LAGR") ), + b_char_meca =BLOC(condition = "OPTION=='CHAR_MECA'", + regles=(AU_MOINS_UN('CHARGE','MODELE'),), + CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), + MODELE =SIMP(statut='f',typ=modele_sdaster), + b_charge =BLOC(condition = "CHARGE != None", fr="modèle ne contenant pas de sous-structure", + CHAM_MATER =SIMP(statut='f',typ=cham_mater), + CARA_ELEM =SIMP(statut='f',typ=cara_elem), + INST =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + MODE_FOURIER =SIMP(statut='f',typ='I',defaut= 0 ), + ), + b_modele =BLOC(condition = "(MODELE != None)",fr="modèle contenant une sous-structure", + SOUS_STRUC =FACT(statut='o',min=01, + regles=(UN_PARMI('TOUT','SUPER_MAILLE'),), + CAS_CHARGE =SIMP(statut='o',typ='TXM' ), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + SUPER_MAILLE=SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**',), + ), + ), + ), + b_char_ther =BLOC(condition = "OPTION=='CHAR_THER'", + CARA_ELEM =SIMP(statut='f',typ=cara_elem), + CHARGE =SIMP(statut='o',typ=char_ther,validators=NoRepeat(),max='**'), + INST =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + ), + + b_char_acou =BLOC(condition = "OPTION=='CHAR_ACOU'", + CHAM_MATER =SIMP(statut='o',typ=cham_mater), + CHARGE =SIMP(statut='o',typ=char_acou,validators=NoRepeat(),max='**'), + ), + + b_forc_noda =BLOC(condition = "OPTION=='FORC_NODA'", + SIEF_ELGA =SIMP(statut='o',typ=cham_elem), + CARA_ELEM =SIMP(statut='f',typ=cara_elem), + MODELE =SIMP(statut='f',typ=modele_sdaster), + ), + + b_meca_lagr =BLOC(condition = "OPTION=='CHAR_MECA_LAGR'", + CHAM_MATER =SIMP(statut='o',typ=cham_mater), + THETA =SIMP(statut='o',typ=theta_geom), + PROPAGATION =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), + INST =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + ), +) ; +#& MODIF COMMANDE DATE 12/09/2006 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -7482,66 +7535,74 @@ CREA_RESU=OPER(nom="CREA_RESU",op=124,sd_prod=crea_resu_prod,reentrant='f', ), ), ) ; -#& MODIF COMMANDE DATE 03/10/2005 AUTEUR NICOLAS O.NICOLAS +#& MODIF COMMANDE DATE 10/10/2006 AUTEUR MCOURTOI M.COURTOIS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -DEFI_BASE_MODALE=OPER(nom="DEFI_BASE_MODALE",op= 99,sd_prod=base_modale, - reentrant='f', - fr="Définit la base d'une sous-structuration dynamique ou d'une recombinaison modale", - UIinfo={"groupes":("Matrices/vecteurs",)}, - regles=(UN_PARMI('CLASSIQUE','RITZ','DIAG_MASS','ORTHO_BASE'),), - CLASSIQUE =FACT(statut='f', - INTERF_DYNA =SIMP(statut='o',typ=interf_dyna_clas ), - MODE_MECA =SIMP(statut='o',typ=mode_meca,max='**' ), - NMAX_MODE =SIMP(statut='f',typ='I',defaut= 10 ), - ), - RITZ =FACT(statut='f',max='**', - regles=(UN_PARMI('MODE_STAT','MODE_MECA','MULT_ELAS','BASE_MODALE'),), - MODE_MECA =SIMP(statut='f',typ=mode_meca,max='**' ), - NMAX_MODE =SIMP(statut='f',typ='I',defaut= 999 ), - MODE_STAT =SIMP(statut='f',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc,) ), - MULT_ELAS =SIMP(statut='f',typ=mult_elas ), - BASE_MODALE =SIMP(statut='f',typ=base_modale ), - ), - b_ritz =BLOC(condition = "RITZ != None", - INTERF_DYNA =SIMP(statut='f',typ=interf_dyna_clas ), - NUME_REF =SIMP(statut='o',typ=nume_ddl_sdaster ), - ORTHO =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"), - fr="Reorthonormalisation de la base de Ritz" ), - b_ortho =BLOC(condition = "ORTHO == 'OUI' ", - MATRICE =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_gene_r,matr_asse_pres_r ) ), - ), - ), - DIAG_MASS =FACT(statut='f',max='**', - MODE_MECA =SIMP(statut='o',typ=mode_meca,max='**' ), - MODE_STAT =SIMP(statut='o',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc,) ), - ), - ORTHO_BASE =FACT(statut='f',max='**', - BASE =SIMP(statut='o',typ=(mode_meca,mode_stat_depl,mode_stat_acce,mode_stat_forc,mult_elas,base_modale)), - MATRICE =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_gene_r,matr_asse_pres_r ) ), - ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), + +def crea_table_prod(TYPE_TABLE, **args): + """Typage du concept résultat + """ + if TYPE_TABLE == 'TABLE_FONCTION': + return table_fonction + else: + return table_sdaster + +CREA_TABLE=OPER(nom="CREA_TABLE",op=36,sd_prod=crea_table_prod, + fr="Création d'une table à partir d'une fonction ou de deux listes", + reentrant='f',UIinfo={"groupes":("Table",)}, + + regles=(EXCLUS('FONCTION','LISTE'),), + + LISTE=FACT(statut='f',max='**', + fr="Creation d'une table a partir de listes", + regles=(UN_PARMI('LISTE_I','LISTE_R','LISTE_K')), + PARA =SIMP(statut='o',typ='TXM'), + TYPE_K =SIMP(statut='f',typ='TXM',defaut='K8', + into=('K8','K16','K24')), + NUME_LIGN=SIMP(statut='f',typ='I',max='**'), + LISTE_I =SIMP(statut='f',typ='I',max='**'), + LISTE_R =SIMP(statut='f',typ='R',max='**'), + LISTE_K =SIMP(statut='f',typ='TXM', max='**'), + ), + FONCTION=FACT(statut='f', + fr="Creation d'une table a partir d'une fonction", + FONCTION=SIMP(statut='o',typ=(fonction_c,fonction_sdaster)), + PARA=SIMP(statut='f',typ='TXM',min=2,max=2), + ), + b_fonction = BLOC(condition='FONCTION != None', + regles=(CONCEPT_SENSIBLE('SEPARE'), REUSE_SENSIBLE(), + DERIVABLE('FONCTION'),), + SENSIBILITE = SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', + fr="Liste des paramètres de sensibilité.", + ang="List of sensitivity parameters"), + ), + TYPE_TABLE = SIMP(statut='f', typ='TXM', defaut="TABLE", + into=('TABLE', 'TABLE_FONCTION'),), + + TITRE=SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 26/03/2007 AUTEUR ASSIRE A.ASSIRE + + + +#& MODIF COMMANDE DATE 05/02/2007 AUTEUR PELLET J.PELLET # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG +# COPYRIGHT (C) 1991 - 2007 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR @@ -7556,63 +7617,112 @@ DEFI_BASE_MODALE=OPER(nom="DEFI_BASE_MODALE",op= 99,sd_prod=base_modale, # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== +# ====================================================================== +DEBUG=PROC(nom="DEBUG",op=137, + UIinfo={"groupes":("Utilitaires",)}, + fr="Permettre de changer entre 2 commandes quelques variables globales de debug", -from Macro.defi_cable_bp_ops import defi_cable_bp_ops - -# =========================================================================== -# CATALOGUE DE LA MACRO "DEFI_CABLE_BP" -# ----------------------------------------- + SDVERI =SIMP(fr="vérifie la conformité des SD produites par les commandes", + statut='f',typ='TXM',into=('OUI','NON')), + JXVERI =SIMP(fr="vérifie l intégrité de la segmentation mémoire", + statut='f',typ='TXM',into=('OUI','NON')), + JEVEUX =SIMP(fr="force les déchargement sur disque", + statut='f',typ='TXM',into=('OUI','NON')), + IMPR_MACRO =SIMP(fr="affichage des sous-commandes produites par les macros dans le fichier mess", + statut='f',typ='TXM',into=("OUI","NON")), + ); +#& MODIF COMMANDE DATE 19/02/2007 AUTEUR LEFEBVRE J-P.LEFEBVRE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # -# USAGE : -# Entrée : -# - MODELE -# - CABLE -# - CHAM_MATER -# - CARA_ELEM -# - GROUP_MA_BETON -# - DEFI_CABLE -# - TENSION_INIT -# - RECUL_ANCRAGE -# - RELAXATION -# - CONE -# RAYON -# LONGUEUR -# PRESENT OUI ou NON deux fois -# - TITRE -# - INFO 1 / 2 +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # -# =========================================================================== +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +DEBUT=MACRO(nom="DEBUT",op=ops.build_debut ,repetable='n', + UIinfo={"groupes":("Gestion du travail",)}, + fr="Ouverture d'une étude. Allocation des ressources mémoire et disque et fichiers", + sd_prod=ops.DEBUT, -DEFI_CABLE_BP=MACRO(nom="DEFI_CABLE_BP",op=defi_cable_bp_ops,sd_prod=cabl_precont, - fr="Calculer les profils initiaux de tension le long des cables de précontrainte d'une structure en béton", - reentrant='n',UIinfo={"groupe":("Modélisation",)}, - MODELE =SIMP(statut='o',typ=modele_sdaster ), - CHAM_MATER =SIMP(statut='o',typ=cham_mater ), - CARA_ELEM =SIMP(statut='o',typ=cara_elem ), - GROUP_MA_BETON =SIMP(statut='o',typ=grma,max='**'), - DEFI_CABLE =FACT(statut='o',max='**', - regles=(UN_PARMI('MAILLE','GROUP_MA'), - UN_PARMI('NOEUD_ANCRAGE','GROUP_NO_ANCRAGE'),), - MAILLE =SIMP(statut='f',typ=ma,min=2,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma), - NOEUD_ANCRAGE =SIMP(statut='f',typ=no ,validators=NoRepeat(),max=2), - GROUP_NO_ANCRAGE=SIMP(statut='f',typ=grno,validators=NoRepeat(),max=2), + PAR_LOT =SIMP(fr="mode de traitement des commandes",statut='f',typ='TXM', + into=("OUI","NON"),defaut="OUI"), + IMPR_MACRO =SIMP(fr="affichage des sous-commandes produites par les macros dans le fichier mess", + statut='f',typ='TXM',into=("OUI","NON"),defaut="NON"), +# FORMAT_HDF =SIMP(fr="sauvegarde de la base GLOBALE au format HDF",statut='f', +# typ='TXM',defaut="NON",into=("OUI","NON",) ), + BASE =FACT(fr="définition des paramètres associés aux bases JEVEUX", + statut='f',min=1,max=2, + FICHIER =SIMP(fr="nom de la base",statut='o',typ='TXM', + into=('GLOBALE','VOLATILE'),), + TITRE =SIMP(statut='f',typ='TXM'), + CAS =SIMP(statut='f',typ='TXM'), + NMAX_ENRE =SIMP(fr="nombre maximum d enregistrements",statut='f',typ='I'), + LONG_ENRE =SIMP(fr="longueur des enregistrements",statut='f',typ='I'), + LONG_REPE =SIMP(fr="longueur du répertoire",statut='f',typ='I'), ), - TYPE_ANCRAGE =SIMP(statut='o',typ='TXM',min=2,max=2,into=("ACTIF","PASSIF") ), - TENSION_INIT =SIMP(statut='o',typ='R',val_min=0.E+0 ), - RECUL_ANCRAGE =SIMP(statut='o',typ='R',val_min=0.E+0 ), - RELAXATION =FACT(statut='f',min=0, - R_J =SIMP(statut='o',typ='R',val_min=0.E+0 ), + + IMPRESSION =FACT(statut='f',min=1,max=3, + FICHIER =SIMP(statut='o',typ='TXM'), + UNITE =SIMP(statut='o',typ='I'), ), - CONE =FACT(statut='f', - RAYON =SIMP(statut='o',typ='R',val_min=0.E+0 ), - LONGUEUR =SIMP(statut='o',typ='R',val_min=0.E+0 ), - PRESENT =SIMP(statut='o',typ='TXM',min=2,max=2,into=("OUI","NON") ), + + CATALOGUE =FACT(statut='f',min=1,max=10, + FICHIER =SIMP(statut='o',typ='TXM'), + TITRE =SIMP(statut='f',typ='TXM'), + UNITE =SIMP(statut='f',typ='I'), ), - TITRE =SIMP(statut='f',typ='TXM',max='**' ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), -) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE + + CODE =FACT(fr="définition d un nom pour l'ensemble d'une étude", + statut='f',min=1,max=1, + NOM =SIMP(statut='o',typ='TXM'), + NIV_PUB_WEB =SIMP(statut='o',typ='TXM',into=('INTERNET','INTRANET')), + VISU_EFICAS =SIMP(statut='f',typ='TXM',into=('OUI','NON'),defaut='OUI'), + UNITE =SIMP(statut='f',typ='I',defaut=15), + ), + + ERREUR =FACT(fr="comportement en cas d'erreur",statut='f',min=1,max=1, + ERREUR_F =SIMP(statut='f',typ='TXM',into=('ABORT','EXCEPTION'),defaut='ABORT'), + ), + + DEBUG =FACT(fr="option de déboggage reservée aux développeurs", + statut='f',min=1,max=1, + JXVERI =SIMP(fr="vérifie l intégrité de la segmentation mémoire", + statut='f',typ='TXM',into=('OUI','NON'),defaut='NON'), + SDVERI =SIMP(fr="vérifie la conformité des SD produites par les commandes", + statut='f',typ='TXM',into=('OUI','NON')), + JEVEUX =SIMP(fr="force les déchargement sur disque", + statut='f',typ='TXM',into=('OUI','NON'),defaut='NON'), + ENVIMA =SIMP(fr="imprime les valeurs définies dans ENVIMA", + statut='f',typ='TXM',into=('TEST',)), + ), + + MEMOIRE =FACT(fr="mode de gestion mémoire utilisé",statut='f',min=1,max=1, + GESTION =SIMP(statut='f',typ='TXM',into=('COMPACTE','RAPIDE'),defaut='RAPIDE'), + TYPE_ALLOCATION =SIMP(statut='f',typ='I',into=(1,2,3,4),defaut=1), + TAILLE =SIMP(statut='f',typ='I'), + TAILLE_BLOC =SIMP(statut='f',typ='R',defaut=800.), + PARTITION =SIMP(statut='f',typ='R'), + DYNAMIQUE =SIMP(statut='f',typ='I'), + ), + RESERVE_CPU =FACT(fr="reserve de temps pour terminer une execution",statut='f',max=1, + regles=(EXCLUS('VALE','POURCENTAGE'),), + VALE =SIMP(statut='f',typ='I',val_min=0), + POURCENTAGE =SIMP(statut='f',typ='R',val_min=0.,val_max=1.0), +# valeur en pourcentage du temps maximum bornée à 180 secondes + BORNE =SIMP(statut='f',typ='I',val_min=0,defaut=180) + ), + ); +#& MODIF COMMANDE DATE 03/10/2005 AUTEUR NICOLAS O.NICOLAS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -7630,316 +7740,383 @@ DEFI_CABLE_BP=MACRO(nom="DEFI_CABLE_BP",op=defi_cable_bp_ops,sd_prod=cabl_precon # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -DEFI_CONSTANTE=OPER(nom="DEFI_CONSTANTE",op= 2,sd_prod=fonction_sdaster, - fr="Définir la valeur d'une grandeur invariante", - reentrant='n', - UIinfo={"groupes":("Fonction",)}, - NOM_RESU =SIMP(statut='f',typ='TXM',defaut="TOUTRESU"), - VALE =SIMP(statut='o',typ='R',), +DEFI_BASE_MODALE=OPER(nom="DEFI_BASE_MODALE",op= 99,sd_prod=base_modale, + reentrant='f', + fr="Définit la base d'une sous-structuration dynamique ou d'une recombinaison modale", + UIinfo={"groupes":("Matrices/vecteurs",)}, + regles=(UN_PARMI('CLASSIQUE','RITZ','DIAG_MASS','ORTHO_BASE'),), + CLASSIQUE =FACT(statut='f', + INTERF_DYNA =SIMP(statut='o',typ=interf_dyna_clas ), + MODE_MECA =SIMP(statut='o',typ=mode_meca,max='**' ), + NMAX_MODE =SIMP(statut='f',typ='I',defaut= 10 ), + ), + RITZ =FACT(statut='f',max='**', + regles=(UN_PARMI('MODE_STAT','MODE_MECA','MULT_ELAS','BASE_MODALE'),), + MODE_MECA =SIMP(statut='f',typ=mode_meca,max='**' ), + NMAX_MODE =SIMP(statut='f',typ='I',defaut= 999 ), + MODE_STAT =SIMP(statut='f',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc,) ), + MULT_ELAS =SIMP(statut='f',typ=mult_elas ), + BASE_MODALE =SIMP(statut='f',typ=base_modale ), + ), + b_ritz =BLOC(condition = "RITZ != None", + INTERF_DYNA =SIMP(statut='f',typ=interf_dyna_clas ), + NUME_REF =SIMP(statut='o',typ=nume_ddl_sdaster ), + ORTHO =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"), + fr="Reorthonormalisation de la base de Ritz" ), + b_ortho =BLOC(condition = "ORTHO == 'OUI' ", + MATRICE =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_gene_r,matr_asse_pres_r ) ), + ), + ), + DIAG_MASS =FACT(statut='f',max='**', + MODE_MECA =SIMP(statut='o',typ=mode_meca,max='**' ), + MODE_STAT =SIMP(statut='o',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc,) ), + ), + ORTHO_BASE =FACT(statut='f',max='**', + BASE =SIMP(statut='o',typ=(mode_meca,mode_stat_depl,mode_stat_acce,mode_stat_forc,mult_elas,base_modale)), + MATRICE =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_gene_r,matr_asse_pres_r ) ), + ), TITRE =SIMP(statut='f',typ='TXM',max='**'), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +#& MODIF COMMANDE DATE 26/03/2007 AUTEUR ASSIRE A.ASSIRE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. +# COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== + +from Macro.defi_cable_bp_ops import defi_cable_bp_ops + +# =========================================================================== +# CATALOGUE DE LA MACRO "DEFI_CABLE_BP" +# ----------------------------------------- # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# USAGE : +# Entrée : +# - MODELE +# - CABLE +# - CHAM_MATER +# - CARA_ELEM +# - GROUP_MA_BETON +# - DEFI_CABLE +# - TENSION_INIT +# - RECUL_ANCRAGE +# - RELAXATION +# - CONE +# RAYON +# LONGUEUR +# PRESENT OUI ou NON deux fois +# - TITRE +# - INFO 1 / 2 # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -DEFI_COQU_MULT=OPER(nom="DEFI_COQU_MULT",op=56,sd_prod=mater_sdaster,reentrant='n', - UIinfo={"groupes":("Modélisation",)}, - fr="Déterminer les caractéristiques matériaux homogénéisées d'une coque multicouche à partir" - +" des caractéristiques de chaque couche", - COUCHE =FACT(statut='o',max='**', - EPAIS =SIMP(statut='o',typ='R',val_min=0.E+0 ), - MATER =SIMP(statut='o',typ=(mater_sdaster) ), - ORIENTATION =SIMP(statut='f',typ='R',defaut= 0.E+0, - val_min=-90.E+0,val_max=90.E+0 ), +# =========================================================================== + +DEFI_CABLE_BP=MACRO(nom="DEFI_CABLE_BP",op=defi_cable_bp_ops,sd_prod=cabl_precont, + fr="Calculer les profils initiaux de tension le long des cables de précontrainte d'une structure en béton", + reentrant='n',UIinfo={"groupe":("Modélisation",)}, + MODELE =SIMP(statut='o',typ=modele_sdaster ), + CHAM_MATER =SIMP(statut='o',typ=cham_mater ), + CARA_ELEM =SIMP(statut='o',typ=cara_elem ), + GROUP_MA_BETON =SIMP(statut='o',typ=grma,max='**'), + DEFI_CABLE =FACT(statut='o',max='**', + regles=(UN_PARMI('MAILLE','GROUP_MA'), + UN_PARMI('NOEUD_ANCRAGE','GROUP_NO_ANCRAGE'),), + MAILLE =SIMP(statut='f',typ=ma,min=2,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma), + NOEUD_ANCRAGE =SIMP(statut='f',typ=no ,validators=NoRepeat(),max=2), + GROUP_NO_ANCRAGE=SIMP(statut='f',typ=grno,validators=NoRepeat(),max=2), ), - IMPRESSION =FACT(statut='f', - UNITE =SIMP(statut='f',typ='I',defaut=8), + TYPE_ANCRAGE =SIMP(statut='o',typ='TXM',min=2,max=2,into=("ACTIF","PASSIF") ), + TENSION_INIT =SIMP(statut='o',typ='R',val_min=0.E+0 ), + RECUL_ANCRAGE =SIMP(statut='o',typ='R',val_min=0.E+0 ), + RELAXATION =FACT(statut='f',min=0, + R_J =SIMP(statut='o',typ='R',val_min=0.E+0 ), + ), + CONE =FACT(statut='f', + RAYON =SIMP(statut='o',typ='R',val_min=0.E+0 ), + LONGUEUR =SIMP(statut='o',typ='R',val_min=0.E+0 ), + PRESENT =SIMP(statut='o',typ='TXM',min=2,max=2,into=("OUI","NON") ), ), + TITRE =SIMP(statut='f',typ='TXM',max='**' ), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; #& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -DEFI_FLUI_STRU=OPER(nom="DEFI_FLUI_STRU",op= 143,sd_prod=type_flui_stru, - reentrant='n',fr="Définit les caractéristiques nécessaires à l'étude dynamique d'une structure sous écoulement", - UIinfo={"groupes":("Maillage",)}, - regles=( UN_PARMI('FAISCEAU_TRANS','GRAPPE','FAISCEAU_AXIAL','COQUE_COAX',),), - FAISCEAU_TRANS =FACT(statut='f',max='**', - regles=( ENSEMBLE('CSTE_CONNORS','NB_CONNORS','RHO_TUBE'),), - COUPLAGE =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), - CARA_ELEM =SIMP(statut='f',typ=cara_elem ), - PROF_VITE_FLUI =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PROF_RHO_F_INT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PROF_RHO_F_EXT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - NOM_CMP =SIMP(statut='f',typ='TXM',into=("DX","DY","DZ") ), - COEF_MASS_AJOU =SIMP(statut='f',typ='R' ), - TYPE_PAS =SIMP(statut='f',typ='TXM',into=("CARRE_LIGN","TRIA_LIGN") ), - TYPE_RESEAU =SIMP(statut='f',typ='I' ), - UNITE_CD =SIMP(statut='f',typ='I',defaut=70), - UNITE_CK =SIMP(statut='f',typ='I',defaut=71), - PAS =SIMP(statut='f',typ='R' ), - CSTE_CONNORS =SIMP(statut='f',typ='R',min=2,max=2,val_min=0.E+00), - NB_CONNORS =SIMP(statut='f',typ='I',val_min=2,), - RHO_TUBE =SIMP(statut='f',typ='R' ), - ), - GRAPPE =FACT(statut='f', - regles=(ENSEMBLE('GRAPPE_2','NOEUD','CARA_ELEM','MODELE','RHO_FLUI',), - PRESENT_PRESENT('COEF_MASS_AJOU','GRAPPE_2', ),), -# peut on créer un bloc a partir de la valeur de couplage - COUPLAGE =SIMP(statut='o',typ='TXM',into=("OUI","NON") ), - GRAPPE_2 =SIMP(statut='f',typ='TXM', - into=("ASC_CEN","ASC_EXC","DES_CEN","DES_EXC") ), - NOEUD =SIMP(statut='f',typ=no), - CARA_ELEM =SIMP(statut='f',typ=cara_elem ), - MODELE =SIMP(statut='f',typ=modele_sdaster ), - COEF_MASS_AJOU =SIMP(statut='f',typ='R' ), - RHO_FLUI =SIMP(statut='f',typ='R' ), - UNITE_CA =SIMP(statut='f',typ='I',defaut=70), - UNITE_KA =SIMP(statut='f',typ='I',defaut=71), - ), - FAISCEAU_AXIAL =FACT(statut='f',max='**', - regles=(UN_PARMI('GROUP_MA','TRI_GROUP_MA'), - UN_PARMI('CARA_ELEM','RAYON_TUBE'), - ENSEMBLE('RAYON_TUBE','COOR_TUBE'), - PRESENT_ABSENT('RAYON_TUBE','TRI_GROUP_MA'), - ENSEMBLE('CARA_PAROI','VALE_PAROI'), - ENSEMBLE('LONG_TYPG','LARG_TYPG','EPAI_TYPG','RUGO_TYPG','COEF_TRAI_TYPG','COEF_DPOR_TYPG', - 'COOR_GRILLE','TYPE_GRILLE', ),), -# on doit pouvoir mettre des blocs conditionnels mais pas assez d infos pour le faire - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - TRI_GROUP_MA =SIMP(statut='f',typ='TXM' ), - VECT_X =SIMP(statut='f',typ='R',max=3), - PROF_RHO_FLUI =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - PROF_VISC_CINE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - CARA_ELEM =SIMP(statut='f',typ=cara_elem ), - RAYON_TUBE =SIMP(statut='f',typ='R' ), - COOR_TUBE =SIMP(statut='f',typ='R',max='**'), - PESANTEUR =SIMP(statut='f',typ='R',min=4,max=4), - RUGO_TUBE =SIMP(statut='f',typ='R' ), - CARA_PAROI =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=5, - into=("YC","ZC","R","HY","HZ") ), - VALE_PAROI =SIMP(statut='f',typ='R',max=5), - ANGL_VRIL =SIMP(statut='f',typ='R' ), - LONG_TYPG =SIMP(statut='f',typ='R',max='**',val_min=0.E+0), - LARG_TYPG =SIMP(statut='f',typ='R',max='**',val_min=0.E+0), - EPAI_TYPG =SIMP(statut='f',typ='R',max='**',val_min=0.E+0), - RUGO_TYPG =SIMP(statut='f',typ='R',max='**',val_min=0.E+0), - COEF_TRAI_TYPG =SIMP(statut='f',typ='R',max='**',val_min=0.E+0), - COEF_DPOR_TYPG =SIMP(statut='f',typ='R',max='**'), - COOR_GRILLE =SIMP(statut='f',typ='R',max='**'), - TYPE_GRILLE =SIMP(statut='f',typ='I',max='**'), + +DEFI_CABLE_OP=OPER(nom="DEFI_CABLE_OP",op= 180,sd_prod=cabl_precont,reentrant='n', + fr="Définit les profils initiaux de tension d'une structure en béton le long des cables de précontrainte" + +" (utilisée par la macro DEFI_CABLE_BP)", + UIinfo={"groupes":("Modélisation",)}, + MODELE =SIMP(statut='o',typ=modele_sdaster ), + CHAM_MATER =SIMP(statut='o',typ=cham_mater ), + CARA_ELEM =SIMP(statut='o',typ=cara_elem ), + GROUP_MA_BETON =SIMP(statut='o',typ=grma,max='**'), + DEFI_CABLE =FACT(statut='o',max='**', + regles=(UN_PARMI('MAILLE','GROUP_MA'), + UN_PARMI('NOEUD_ANCRAGE','GROUP_NO_ANCRAGE'),), + MAILLE =SIMP(statut='f',typ=ma,min=2,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma), + NOEUD_ANCRAGE =SIMP(statut='f',typ=no ,validators=NoRepeat(),max=2), + GROUP_NO_ANCRAGE=SIMP(statut='f',typ=grno,validators=NoRepeat(),max=2), + GROUP_NO_FUT =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=2), ), - COQUE_COAX =FACT(statut='f', - MASS_AJOU =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - GROUP_MA_INT =SIMP(statut='o',typ=grma), - GROUP_MA_EXT =SIMP(statut='o',typ=grma), - VECT_X =SIMP(statut='o',typ='R',max='**'), - CARA_ELEM =SIMP(statut='o',typ=cara_elem ), - MATER_INT =SIMP(statut='o',typ=mater_sdaster ), - MATER_EXT =SIMP(statut='o',typ=mater_sdaster ), - RHO_FLUI =SIMP(statut='o',typ='R' ), - VISC_CINE =SIMP(statut='o',typ='R' ), - RUGOSITE =SIMP(statut='o',typ='R' ), - PDC_MOY_1 =SIMP(statut='o',typ='R' ), - PDC_DYN_1 =SIMP(statut='o',typ='R' ), - PDC_MOY_2 =SIMP(statut='o',typ='R' ), - PDC_DYN_2 =SIMP(statut='o',typ='R' ), + TYPE_ANCRAGE =SIMP(statut='o',typ='TXM',min=2,max=2,into=("ACTIF","PASSIF") ), + TENSION_INIT =SIMP(statut='o',typ='R',val_min=0.E+0 ), + RECUL_ANCRAGE =SIMP(statut='o',typ='R',val_min=0.E+0 ), + RELAXATION =FACT(statut='f',min=0, + R_J =SIMP(statut='o',typ='R',val_min=0.E+0 ), ), + TITRE =SIMP(statut='f',typ='TXM',max='**' ), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), -) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -DEFI_FONC_ELEC=OPER(nom="DEFI_FONC_ELEC",op=64,sd_prod=fonction_sdaster,reentrant='n', - UIinfo={"groupes":("Outils métier",)}, - fr="Définir une fonction du temps intervenant dans le calcul des forces de LAPLACE", - regles=(UN_PARMI('COUR_PRIN','COUR'), - EXCLUS('COUR','COUR_SECO'), ), - FREQ =SIMP(statut='f',typ='R',defaut= 50.), - SIGNAL =SIMP(statut='f',typ='TXM',defaut="COMPLET",into=("COMPLET","CONTINU") ), - COUR =FACT(statut='f',max='**', - fr="Définition du courant de court-circuit", - regles=(UN_PARMI('PHI_CC_1','INTC_CC_1'), - UN_PARMI('PHI_CC_2','INTC_CC_2'),), - INTE_CC_1 =SIMP(statut='o',typ='R'), - TAU_CC_1 =SIMP(statut='o',typ='R'), - PHI_CC_1 =SIMP(statut='f',typ='R'), - INTC_CC_1 =SIMP(statut='f',typ='R'), - INTE_CC_2 =SIMP(statut='o',typ='R'), - TAU_CC_2 =SIMP(statut='o',typ='R'), - PHI_CC_2 =SIMP(statut='f',typ='R'), - INTC_CC_2 =SIMP(statut='f',typ='R'), - INST_CC_INIT =SIMP(statut='o',typ='R'), - INST_CC_FIN =SIMP(statut='o',typ='R'), - ), - COUR_PRIN =FACT(statut='f', - fr="Définition du courant de court-circuit avec réenclenchement", - regles=(UN_PARMI('PHI_CC_1','INTC_CC_1'),), - INTE_CC_1 =SIMP(statut='o',typ='R'), - TAU_CC_1 =SIMP(statut='o',typ='R'), - PHI_CC_1 =SIMP(statut='f',typ='R'), - INTC_CC_1 =SIMP(statut='f',typ='R'), - INTE_RENC_1 =SIMP(statut='f',typ='R'), - TAU_RENC_1 =SIMP(statut='f',typ='R'), - PHI_RENC_1 =SIMP(statut='f',typ='R'), - INST_CC_INIT =SIMP(statut='o',typ='R'), - INST_CC_FIN =SIMP(statut='o',typ='R'), - INST_RENC_INIT =SIMP(statut='f',typ='R',defaut= 0.0E+0), - INST_RENC_FIN =SIMP(statut='f',typ='R',defaut= 0.0E+0), - ), - COUR_SECO =FACT(statut='f',max='**', - fr="Définition du courant de court-circuit avec un intervalle de temps différent de celui de COUR_PRIN", - regles=(UN_PARMI('PHI_CC_2','INTC_CC_2'),), - INTE_CC_2 =SIMP(statut='o',typ='R'), - TAU_CC_2 =SIMP(statut='o',typ='R'), - PHI_CC_2 =SIMP(statut='f',typ='R'), - INTC_CC_2 =SIMP(statut='f',typ='R'), - INTE_RENC_2 =SIMP(statut='f',typ='R'), - TAU_RENC_2 =SIMP(statut='f',typ='R'), - PHI_RENC_2 =SIMP(statut='f',typ='R'), - DIST =SIMP(statut='f',typ='R',defaut=1.0E+0), - ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), -) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -DEFI_FONC_FLUI=OPER(nom="DEFI_FONC_FLUI",op= 142,sd_prod=fonction_sdaster, - reentrant='n', - fr="Définit un profil de vitesse d'écoulement fluide le long d'une poutre", - UIinfo={"groupes":("Fonction",)}, - MAILLAGE =SIMP(statut='o',typ=(maillage_sdaster) ), - NOEUD_INIT =SIMP(statut='o',typ=no), - NOEUD_FIN =SIMP(statut='o',typ=no), - VITE =FACT(statut='o', - VALE =SIMP(statut='f',typ='R',defaut= 1. ), - PROFIL =SIMP(statut='o',typ='TXM',into=("UNIFORME","LEONARD") ), - NB_BAV =SIMP(statut='f',typ='I',defaut= 0,into=( 0 , 2 , 3 ) ), + CONE =FACT(statut='f',min=0, + RAYON =SIMP(statut='o',typ='R',val_min=0.E+0 ), + LONGUEUR =SIMP(statut='o',typ='R',val_min=0.E+0, defaut=0.E+0 ), + PRESENT =SIMP(statut='o',typ='TXM',min=2,max=2,into=("OUI","NON") ), ), - INTERPOL =SIMP(statut='f',typ='TXM',max=2,defaut="LIN", - into=("NON","LIN","LOG") ), - PROL_DROITE =SIMP(statut='f',typ='TXM',defaut="EXCLU", - into=("CONSTANT","LINEAIRE","EXCLU") ), - PROL_GAUCHE =SIMP(statut='f',typ='TXM' ,defaut="EXCLU", - into=("CONSTANT","LINEAIRE","EXCLU") ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +#& MODIF COMMANDE DATE 13/02/2007 AUTEUR PELLET J.PELLET +# RESPONSABLE JMBHH01 J.M.PROIX # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE MCOURTOI M.COURTOIS -def defi_fonction_prod(VALE,VALE_PARA,VALE_C,NOEUD_PARA,**args): - if VALE != None : return fonction_sdaster - if VALE_C != None : return fonction_c - if VALE_PARA != None : return fonction_sdaster - if NOEUD_PARA != None : return fonction_sdaster - raise AsException("type de concept resultat non prevu") - -DEFI_FONCTION=OPER(nom="DEFI_FONCTION",op=3,sd_prod=defi_fonction_prod - ,fr="Définit une fonction réelle ou complexe d'une variable réelle", - reentrant='n', - UIinfo={"groupes":("Fonction",)}, - regles=(UN_PARMI('VALE','VALE_C','VALE_PARA','NOEUD_PARA'),), - NOM_PARA =SIMP(statut='o',typ='TXM',into=C_PARA_FONCTION() ), - NOM_RESU =SIMP(statut='f',typ='TXM',defaut="TOUTRESU"), - VALE =SIMP(statut='f',typ='R',min=2,max='**', - fr ="Fonction réelle définie par une liste de couples (abscisse,ordonnée)"), - VALE_C =SIMP(statut='f',typ='R',min=2,max='**', - fr ="Fonction complexe définie par une liste de couples"), - VALE_PARA =SIMP(statut='f',typ=listr8_sdaster, - fr ="Fonction réelle définie par deux concepts de type listr8" ), - b_vale_para =BLOC(condition = "VALE_PARA != None", - VALE_FONC =SIMP(statut='o',typ=listr8_sdaster ), - ), - NOEUD_PARA =SIMP(statut='f',typ=no,max='**', - fr ="Fonction réelle définie par une liste de noeuds et un maillage"), - b_noeud_para =BLOC(condition = "NOEUD_PARA != None", - MAILLAGE =SIMP(statut='o',typ=maillage_sdaster ), - VALE_Y =SIMP(statut='o',typ='R',max='**'), - ), +DEFI_COMPOR=OPER(nom="DEFI_COMPOR",op=59,sd_prod=compor_sdaster, + fr="Définir le comportement d'un monocristal, d'un polycristal ou de groupes de fibres", + reentrant='n', + UIinfo={"groupes":("Modélisation",)}, +# on exclut MULTIFBRE de MONOCRISTAL ou POLYCRISTAL car la structure de données n'est pas organisée pareil pour ces cas + regles=(EXCLUS('MONOCRISTAL','POLYCRISTAL','MULTIFIBRE'), + PRESENT_PRESENT('MULTIFIBRE','GEOM_FIBRE','MATER_SECT'), + ), + MONOCRISTAL =FACT(statut='f', max='**', + MATER =SIMP(statut='o', typ=mater_sdaster, max=1), + ECOULEMENT =SIMP(statut='o', typ='TXM', max=1, + fr="Donner le nom du mot-clé facteur de DEFI_MATERIAU précisant le type d'écoulement viscoplastique"), + ECRO_ISOT =SIMP(statut='o', typ='TXM', max=1, + fr="Donner le nom du mot-clé facteur de DEFI_MATERIAU précisant le type d'écrouissage isotrope"), + ECRO_CINE =SIMP(statut='o', typ='TXM', max=1, + fr="Donner le nom du mot-clé facteur de DEFI_MATERIAU précisant le type d'écrouissage cinématique"), + ELAS =SIMP(statut='f', typ='TXM', max=1, + fr="Donner le nom du mot-clé facteur de DEFI_MATERIAU précisant le comportement élastique (un et un seul)"), + FAMI_SYST_GLIS =SIMP(statut='o',typ='TXM', max=1, + into=('BASAL', 'PRISMATIQUE', 'OCTAEDRIQUE', 'PYRAMIDAL1', + 'PYRAMIDAL2', 'CUBIQUE1', 'CUBIQUE2', 'MACLAGE', 'JOINT_GRAIN', 'RL', 'UNIAXIAL','BCC24'),), + ), + + + POLYCRISTAL =FACT(statut='f', max='**', + regles=(UN_PARMI('ANGL_REP','ANGL_EULER'),), + MONOCRISTAL =SIMP(statut='o', typ=compor_sdaster, max=1), + FRAC_VOL =SIMP(statut='o', typ='R', max=1,fr="fraction volumique de la phase correspondant au monocristal"), + ANGL_REP =SIMP(statut='f',typ='R',max=3,fr="orientation du monocristal : 3 angles nautiques en degrés"), + ANGL_EULER=SIMP(statut='f',typ='R',max=3,fr="orientation du monocristal : 3 angles d'Euler en degrés"), + ), + + + b_poly =BLOC( condition = "POLYCRISTAL!='None'", + LOCALISATION =SIMP(statut='f', typ='TXM', max=1, into=('BZ', 'BETA', 'RL',), + fr="Donner le nom de la règle de localisation"), + + b_beta =BLOC( condition = "LOCALISATION=='BETA'", + DL =SIMP(statut='o',typ='R',max=1), + DA =SIMP(statut='o',typ='R',max=1), + ), + ), + +##################################################################################### + GEOM_FIBRE = SIMP(statut='f',max=1,typ=gfibre_sdaster, + fr="Donner le nom du concept regroupant tous les groupes de fibres (issu de DEFI_GEOM_FIBRE)"), + MATER_SECT = SIMP(statut='f',max=1,typ=mater_sdaster, + fr="Donner le nom du materiau pour les caracteristiques homogeneisees sur la section"), + MULTIFIBRE = FACT(statut='f',max='**', + GROUP_FIBRE =SIMP(statut='o', typ='TXM', max='**'), + MATER =SIMP(statut='o', typ=mater_sdaster, max=1, + fr="Donner le nom du materiau pour le groupe de fibres"), + ALGO_1D =SIMP(statut='f',typ='TXM',defaut="ANALYTIQUE",into=("DEBORST","ANALYTIQUE",)), + DEFORMATION =SIMP(statut='f',typ='TXM',defaut="PETIT", + into=("PETIT","PETIT_REAC","REAC_GEOM")), + RELATION =SIMP(statut='f', typ='TXM', max=1,defaut="ELAS", +# into=c_relation_into, + fr="Donner le nom de la relation incrementale pour le groupe de fibres", + into=( + "ELAS", + "ELAS_HYPER", + "VMIS_ISOT_TRAC", + "VISC_ISOT_TRAC", + "VMIS_ISOT_LINE", + "VISC_ISOT_LINE", + "VMIS_ISOT_PUIS", + "VMIS_ECMI_TRAC", + "VMIS_ECMI_LINE", + "LABORD_1D", + "ENDO_FRAGILE", + "ENDO_ISOT_BETON", + "ENDO_ORTH_BETON", + "BETON_REGLE_PR", + "MAZARS", + "RUPT_FRAG", + "VMIS_CINE_LINE", + "VISC_TAHERI", + "VISCOCHAB", + "VMIS_CIN1_CHAB", + "VMIS_CIN2_CHAB", + "VISC_CIN1_CHAB", + "VISC_CIN2_CHAB", + "ROUSSELIER", + "ROUSS_PR", + "ROUSS_VISC", + "NORTON_HOFF", + "LEMAITRE", + "VENDOCHAB", + "DRUCKER_PRAGER", + "GRANGER_FP", + "GRANGER_FP_INDT", + "GRANGER_FP_V", + "BAZANT_FD", + "BETON_UMLV_FP", + "BETON_DOUBLE_DP", + "KIT_DDI", + "SANS", + "CORR_ACIER", + "ZMAT", + "GRAN_IRRA_LOG", + ) ), + ELAS =SIMP(statut='c',typ='I',defaut=1,into=(1,)), + ELAS_HYPER =SIMP(statut='c',typ='I',defaut=1,into=(1,)), + SANS =SIMP(statut='c',typ='I',defaut=1,into=(1,)), + CORR_ACIER =SIMP(statut='c',typ='I',defaut=3,into=(3,)), + VMIS_ISOT_TRAC =SIMP(statut='c',typ='I',defaut=2,into=(2,)), + VISC_ISOT_TRAC =SIMP(statut='c',typ='I',defaut=3,into=(3,)), + VMIS_ISOT_LINE =SIMP(statut='c',typ='I',defaut=2,into=(2,)), + VISC_ISOT_LINE =SIMP(statut='c',typ='I',defaut=3,into=(3,)), + VMIS_ISOT_PUIS =SIMP(statut='c',typ='I',defaut=2,into=(2,)), + VMIS_ECMI_TRAC =SIMP(statut='c',typ='I',defaut=8,into=(8,)), + VMIS_ECMI_LINE =SIMP(statut='c',typ='I',defaut=8,into=(8,)), + LABORD_1D =SIMP(statut='c',typ='I',defaut=5,into=(5,)), + ENDO_FRAGILE =SIMP(statut='c',typ='I',defaut=2,into=(2,)), + ENDO_ISOT_BETON =SIMP(statut='c',typ='I',defaut=2,into=(2,)), + ENDO_ORTH_BETON =SIMP(statut='c',typ='I',defaut=7,into=(7,)), + BETON_REGLE_PR =SIMP(statut='c',typ='I',defaut=1,into=(1,)), + MAZARS =SIMP(statut='c',typ='I',defaut=4,into=(4,)), + RUPT_FRAG =SIMP(statut='c',typ='I',defaut=1,into=(1,)), + VMIS_CINE_LINE =SIMP(statut='c',typ='I',defaut=7,into=(7,)), + VISCOCHAB =SIMP(statut='c',typ='I',defaut=28,into=(28,)), + VMIS_CIN1_CHAB =SIMP(statut='c',typ='I',defaut=8,into=(8,)), + VMIS_CIN2_CHAB =SIMP(statut='c',typ='I',defaut=14,into=(14,)), + VISC_CIN1_CHAB =SIMP(statut='c',typ='I',defaut=8,into=(8,)), + VISC_CIN2_CHAB =SIMP(statut='c',typ='I',defaut=14,into=(14,)), + VISC_TAHERI =SIMP(statut='c',typ='I',defaut=9,into=(9,)), + ROUSSELIER =SIMP(statut='c',typ='I',defaut=9,into=(9,)), + ROUSS_PR =SIMP(statut='c',typ='I',defaut=3,into=(3,)), + ROUSS_VISC =SIMP(statut='c',typ='I',defaut=3,into=(3,)), + VMIS_POU_LINE =SIMP(statut='c',typ='I',defaut=9,into=(9,)), + VMIS_POU_FLEJOU =SIMP(statut='c',typ='I',defaut=9 ,into=(9,)), + ASSE_CORN =SIMP(statut='c',typ='I',defaut=7,into=(7,)), + ARME =SIMP(statut='c',typ='I',defaut=1,into=(1,)), + NORTON_HOFF =SIMP(statut='c',typ='I',defaut=1,into=(1,)), + LEMAITRE =SIMP(statut='c',typ='I',defaut=2,into=(2,)), + VENDOCHAB =SIMP(statut='c',typ='I',defaut=10,into=(10,)), + GRILLE_ISOT_LINE=SIMP(statut='c',typ='I',defaut=4,into=(4,)), + DRUCKER_PRAGER =SIMP(statut='c',typ='I',defaut=3,into=(3,)), + HOEK_BROWN =SIMP(statut='c',typ='I',defaut=3,into=(3,)), + HOEK_BROWN_EFF =SIMP(statut='c',typ='I',defaut=3,into=(3,)), + HOEK_BROWN_TOT =SIMP(statut='c',typ='I',defaut=3,into=(3,)), + GRANGER_FP =SIMP(statut='c',typ='I',defaut=55,into=(55,)), + GRANGER_FP_INDT =SIMP(statut='c',typ='I',defaut=55,into=(55,)), + GRANGER_FP_V =SIMP(statut='c',typ='I',defaut=55,into=(55,)), + BAZANT_FD =SIMP(statut='c',typ='I',defaut=1,into=(1,)), + BETON_DOUBLE_DP =SIMP(statut='c',typ='I',defaut=4,into=(4,)), + BETON_UMLV_FP =SIMP(statut='c',typ='I',defaut=21,into=(21,)), + GRAN_IRRA_LOG =SIMP(statut='c',typ='I',defaut=4,into=(4,)), + + RELATION_KIT =SIMP(statut='f',typ='TXM',max='**',validators=NoRepeat(), + into=( +# MECA KIT_DDI + "VMIS_ISOT_TRAC", + "VMIS_ISOT_LINE", + "VMIS_ISOT_CINE", + "VMIS_ISOT_PUIS", + "GRANGER_FP", + "GRANGER_FP_INDT", + "GRANGER_FP_V", + "BETON_UMLV_FP", + "ROUSS_PR", + "NADAI_B", + "BETON_DOUBLE_DP", + ),), - INTERPOL =SIMP(statut='f',typ='TXM',max=2,defaut="LIN",into=("NON","LIN","LOG") ), - PROL_DROITE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), - PROL_GAUCHE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), - VERIF =SIMP(statut='f',typ='TXM',defaut="CROISSANT",into=("CROISSANT","NON") ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), +# on pourrait ajouter TOUT_GROUP_FIBRE + + ) ); + +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +DEFI_CONSTANTE=OPER(nom="DEFI_CONSTANTE",op= 2,sd_prod=fonction_sdaster, + fr="Définir la valeur d'une grandeur invariante", + reentrant='n', + UIinfo={"groupes":("Fonction",)}, + NOM_RESU =SIMP(statut='f',typ='TXM',defaut="TOUTRESU"), + VALE =SIMP(statut='o',typ='R',), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 05/03/2007 AUTEUR GALENNE E.GALENNE +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -7957,92 +8134,93 @@ DEFI_FONCTION=OPER(nom="DEFI_FONCTION",op=3,sd_prod=defi_fonction_prod # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -DEFI_FOND_FISS=OPER(nom="DEFI_FOND_FISS",op=55,sd_prod=fond_fiss,reentrant='n', - UIinfo={"groupes":("Post traitements",)}, - fr="Définition de lèvres et d'un fond de fissure en 3D", - regles=(UN_PARMI('FOND_FISS','FOND_FERME','FOND_INF'), - EXCLUS('FOND_FERME','DTAN_ORIG'), - EXCLUS('FOND_FERME','DTAN_EXTR'), - EXCLUS('FOND_FERME','VECT_GRNO_ORIG'), - EXCLUS('FOND_FERME','VECT_GRNO_EXTR'), - UN_PARMI('LEVRE_SUP','NORMALE'), - EXCLUS('LEVRE_INF','NORMALE'), - ENSEMBLE('DTAN_ORIG','DTAN_EXTR'), - ENSEMBLE('FOND_SUP','FOND_INF'), - EXCLUS('FOND_INF','FOND_FISS'), - EXCLUS('FOND_INF','FOND_FERME'), - ENSEMBLE('VECT_GRNO_ORIG','VECT_GRNO_EXTR'), - EXCLUS('DTAN_ORIG','VECT_GRNO_ORIG'), - EXCLUS('DTAN_EXTR','VECT_GRNO_EXTR') ,), - MAILLAGE =SIMP(statut='o',typ=maillage_sdaster ), - FOND_FISS =FACT(statut='f', - regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'), - EXCLUS('NOEUD_ORIG','GROUP_NO_ORIG'), - EXCLUS('NOEUD_EXTR','GROUP_NO_EXTR'),), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), -# à mettre à jour le max vaut-il 1 - NOEUD_ORIG =SIMP(statut='f',typ=no,), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno,), - NOEUD_EXTR =SIMP(statut='f',typ=no,), - GROUP_NO_EXTR =SIMP(statut='f',typ=grno,), - ), - FOND_FERME =FACT(statut='f', - regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'), - EXCLUS('NOEUD_ORIG','GROUP_NO_ORIG'),), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - NOEUD_ORIG =SIMP(statut='f',typ=no,), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno,), - MAILLE_ORIG =SIMP(statut='f',typ=ma,), - GROUP_MA_ORIG =SIMP(statut='f',typ=ma,), - ), - FOND_INF =FACT(statut='f', - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - NOEUD_ORIG =SIMP(statut='f',typ=no,), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno,), - NOEUD_EXTR =SIMP(statut='f',typ=no,), - GROUP_NO_EXTR =SIMP(statut='f',typ=grno,), - ), - FOND_SUP =FACT(statut='f', - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - NOEUD_ORIG =SIMP(statut='f',typ=no,), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno,), - NOEUD_EXTR =SIMP(statut='f',typ=no,), - GROUP_NO_EXTR =SIMP(statut='f',typ=grno,), - ), - LEVRE_SUP =FACT(statut='f', - regles=(UN_PARMI('GROUP_MA','MAILLE'),), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - ), - LEVRE_INF =FACT(statut='f', - regles=(UN_PARMI('GROUP_MA','MAILLE', ),), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - ), - NORMALE =SIMP(statut='f',typ='R',max='**'), - PREC_NORM =SIMP(statut='f',typ='R',defaut=0.1), - DTAN_ORIG =SIMP(statut='f',typ='R',max='**'), - DTAN_EXTR =SIMP(statut='f',typ='R',max='**'), - VECT_GRNO_ORIG =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=2), - VECT_GRNO_EXTR =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=2), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), +DEFI_COQU_MULT=OPER(nom="DEFI_COQU_MULT",op=56,sd_prod=mater_sdaster,reentrant='n', + UIinfo={"groupes":("Modélisation",)}, + fr="Déterminer les caractéristiques matériaux homogénéisées d'une coque multicouche à partir" + +" des caractéristiques de chaque couche", + COUCHE =FACT(statut='o',max='**', + EPAIS =SIMP(statut='o',typ='R',val_min=0.E+0 ), + MATER =SIMP(statut='o',typ=(mater_sdaster) ), + ORIENTATION =SIMP(statut='f',typ='R',defaut= 0.E+0, + val_min=-90.E+0,val_max=90.E+0 ), + ), + IMPRESSION =FACT(statut='f', + UNITE =SIMP(statut='f',typ='I',defaut=8), + ), ) ; -#& MODIF COMMANDE DATE 04/07/2005 AUTEUR REZETTE C.REZETTE +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE D6BHHJP J.P.LEFEBVRE +def DEFIC_prod(self,ACTION,UNITE,**args): + if ACTION == "ASSOCIER" or ACTION == "RESERVER": + if UNITE != None : + return + else : + return entier + elif ACTION == "LIBERER" : + return + else : + raise AsException("ACTION non prevue : %s" % ACTION) + +DEFI_FICHIER=MACRO(nom="DEFI_FICHIER",op=ops.build_DEFI_FICHIER,sd_prod=DEFIC_prod,reentrant='n', + UIinfo={"groupes":("Gestion du travail",)}, + fr="Ouvre ou ferme un fichier associé à un numéro d'unité logique", + + ACTION =SIMP(statut='f',typ='TXM',into=("ASSOCIER","LIBERER","RESERVER"),defaut="ASSOCIER"), + + b_associer =BLOC(condition = "ACTION == 'ASSOCIER'", + fr="Paramètres pour l'ouverture du fichier", + regles=(AU_MOINS_UN('FICHIER','UNITE'),), + UNITE =SIMP(statut='f',typ='I' ,val_min=1), + FICHIER =SIMP(statut='f',typ='TXM',validators=LongStr(1,255)), + TYPE =SIMP(statut='f',typ='TXM',into=("ASCII","BINARY","LIBRE"),defaut="ASCII"), + + b_type_ascii =BLOC(condition = "TYPE == 'ASCII'",fr="Paramètres pour le type ASCII", + ACCES =SIMP(statut='f',typ='TXM',into=("NEW","APPEND","OLD"),defaut="NEW"), + ), + b_type_autre =BLOC(condition = "TYPE != 'ASCII'",fr="Paramètres pour les types BINARY et LIBRE", + ACCES =SIMP(statut='f',typ='TXM',into=("NEW","OLD"),defaut="NEW"), + ), + ), + + b_reserver =BLOC(condition = "ACTION == 'RESERVER'", + fr="Paramètres pour la réservation de l'unité du fichier", + regles=(AU_MOINS_UN('FICHIER','UNITE'),), + UNITE =SIMP(statut='f',typ='I' ,val_min=1), + FICHIER =SIMP(statut='f',typ='TXM',validators=LongStr(1,255)), + TYPE =SIMP(statut='f',typ='TXM',into=("ASCII",),defaut="ASCII"), + ACCES =SIMP(statut='f',typ='TXM',into=("APPEND",),defaut="APPEND"), + ), + + b_liberer =BLOC(condition = "ACTION == 'LIBERER'", + fr="Paramètres pour la fermeture du fichier", + regles=(UN_PARMI('FICHIER','UNITE'),), + UNITE =SIMP(statut='f',typ='I' ,val_min=1), + FICHIER =SIMP(statut='f',typ='TXM',validators=LongStr(1,255)), + ), + + INFO =SIMP(statut='f',typ='I',into=(1,2) ), + ) +#& MODIF COMMANDE DATE 15/05/2007 AUTEUR GENIAUT S.GENIAUT +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR @@ -8057,191 +8235,144 @@ DEFI_FOND_FISS=OPER(nom="DEFI_FOND_FISS",op=55,sd_prod=fond_fiss,reentrant='n', # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE VABHHTS J.PELLET -def defi_group_prod(MAILLAGE,**args): - if AsType(MAILLAGE) == maillage_sdaster : return maillage_sdaster - if AsType(MAILLAGE) == squelette : return squelette - raise AsException("type de concept resultat non prevu") -DEFI_GROUP=OPER(nom="DEFI_GROUP",op= 104,sd_prod=defi_group_prod, - fr="Définition de nouveaux groupes de noeuds et/ou de mailles dans un concept maillage", - reentrant='o', - UIinfo={"groupes":("Maillage",)}, - regles=(AU_MOINS_UN('CREA_GROUP_MA','CREA_GROUP_NO','DETR_GROUP_NO','DETR_GROUP_MA'),), - MAILLAGE =SIMP(statut='o',typ=(maillage_sdaster,squelette) ), - DETR_GROUP_MA =FACT(statut='f',max='**', - NOM =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'),), - DETR_GROUP_NO =FACT(statut='f',max='**', - NOM =SIMP(statut='o',typ=grno,validators=NoRepeat(),max='**'),), - CREA_GROUP_MA =FACT(statut='f',max='**', +DEFI_FISS_XFEM=OPER(nom="DEFI_FISS_XFEM",op= 41,sd_prod=fiss_xfem,reentrant='n', + UIinfo={"groupes":("Modélisation",)}, + fr="Définition des caratéristiques d'une fissure avec X-FEM", -regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE','INTERSEC','UNION','DIFFE','OPTION'),), -# quel est le concept attendu deriere NOM - NOM =SIMP(statut='o',typ=grma), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - INTERSEC =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - UNION =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - DIFFE =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - OPTION =SIMP(statut='f',typ='TXM',into=("FACE_NORMALE","SPHERE","CYLINDRE","BANDE","APPUI_LACHE") ), - b_group_ma =BLOC(condition = "GROUP_MA != None", - regles=(EXCLUS('POSITION','NUME_INIT'),), - NUME_INIT =SIMP(statut='f',typ='I'), - POSITION =SIMP(statut='f',typ='TXM',into=("INIT","FIN","MILIEU") ), - b_nume_init =BLOC(condition = "NUME_INIT != None", - NUME_FIN =SIMP(statut='f',typ='I' ), - ), - ), - b_face_normale =BLOC(condition = "OPTION == 'FACE_NORMALE'", - regles=(UN_PARMI('ANGL_NAUT','VECT_NORMALE'),), - ANGL_NAUT =SIMP(statut='f',typ='R',max=2), - VECT_NORMALE =SIMP(statut='f',typ='R',max=3), - ANGL_PREC =SIMP(statut='f',typ='R',defaut= 0.5 ), - VERI_SIGNE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - b_sphere =BLOC(condition = "OPTION == 'SPHERE'", - regles=(UN_PARMI('POINT','NOEUD_CENTRE','GROUP_NO_CENTRE'),), - POINT =SIMP(statut='f',typ='R',max=3), - NOEUD_CENTRE =SIMP(statut='f',typ=no), - GROUP_NO_CENTRE =SIMP(statut='f',typ=grno), - RAYON =SIMP(statut='o',typ='R' ), - ), - b_cylindre =BLOC(condition = "OPTION == 'CYLINDRE'", - regles=(UN_PARMI('POINT','NOEUD_CENTRE','GROUP_NO_CENTRE'), - UN_PARMI('ANGL_NAUT','VECT_NORMALE'),), - POINT =SIMP(statut='f',typ='R',max=3), - NOEUD_CENTRE =SIMP(statut='f',typ=no), - GROUP_NO_CENTRE =SIMP(statut='f',typ=grno), - RAYON =SIMP(statut='o',typ='R' ), - ANGL_NAUT =SIMP(statut='f',typ='R',max=2), - VECT_NORMALE =SIMP(statut='f',typ='R',max=3), - ), - b_bande =BLOC(condition = "OPTION == 'BANDE'", - regles=(UN_PARMI('POINT','NOEUD_CENTRE','GROUP_NO_CENTRE'), - UN_PARMI('ANGL_NAUT','VECT_NORMALE'),), - POINT =SIMP(statut='f',typ='R' ,max=3), - NOEUD_CENTRE =SIMP(statut='f',typ=no ,validators=NoRepeat(),max=1), - GROUP_NO_CENTRE =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=1), - DIST =SIMP(statut='o',typ='R' ), - ANGL_NAUT =SIMP(statut='f',typ='R',max=2), - VECT_NORMALE =SIMP(statut='f',typ='R',max=3), - ), - b_app_lache =BLOC(condition = "OPTION == 'APPUI_LACHE'", - regles=(UN_PARMI('NOEUD','GROUP_NO'),), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - ), + MODELE =SIMP(statut='o',typ=modele_sdaster), + DEFI_FISS =FACT(statut='o',max=01, + regles =(UN_PARMI('GROUP_MA_FISS','FONC_LT','FORM_FISS'), + ENSEMBLE('FONC_LT','FONC_LN'), + ENSEMBLE('GROUP_MA_FISS','GROUP_MA_FOND')), + FONC_LT =SIMP(statut='f',typ=(fonction_sdaster,formule) ), + FONC_LN =SIMP(statut='f',typ=(fonction_sdaster,formule) ), + GROUP_MA_FISS =SIMP(statut='f',typ=grma,max=01), + GROUP_MA_FOND =SIMP(statut='f',typ=grma), + FORM_FISS =SIMP(statut='f',typ='TXM',into=("ELLIPSE",) ), + b_ellipse =BLOC(condition = "FORM_FISS == 'ELLIPSE' ",fr="Paramères de la fissure elliptique", + DEMI_GRAND_AXE =SIMP(statut='o',typ='R',val_min=0.E+0), + DEMI_PETIT_AXE =SIMP(statut='o',typ='R',val_min=0.E+0), + CENTRE =SIMP(statut='o',typ='R',min=3,max=3), + VECT_X =SIMP(statut='o',typ='R',min=3,max=3), + VECT_Y =SIMP(statut='o',typ='R',min=3,max=3), + COTE_FISS =SIMP(statut='f',typ='TXM',defaut="IN",into=("IN","OUT",) ), ), + ), + GROUP_MA_ENRI =SIMP(statut='o',typ=grma,max=01), + RAYON_ENRI =SIMP(statut='f',typ='R',defaut=0.E+0), + ORIE_FOND =FACT(statut='f',max=01, + PFON_INI =SIMP(statut='o',typ='R',max=03), + VECT_ORIE =SIMP(statut='o',typ='R',max=03), + PT_ORIGIN =SIMP(statut='o',typ='R',max=03), + ), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2,3,) ), +) ; +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +DEFI_FLUI_STRU=OPER(nom="DEFI_FLUI_STRU",op= 143,sd_prod=type_flui_stru, + reentrant='n',fr="Définit les caractéristiques nécessaires à l'étude dynamique d'une structure sous écoulement", + UIinfo={"groupes":("Maillage",)}, + regles=( UN_PARMI('FAISCEAU_TRANS','GRAPPE','FAISCEAU_AXIAL','COQUE_COAX',),), + FAISCEAU_TRANS =FACT(statut='f',max='**', + regles=( ENSEMBLE('CSTE_CONNORS','NB_CONNORS','RHO_TUBE'),), + COUPLAGE =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), + CARA_ELEM =SIMP(statut='f',typ=cara_elem ), + PROF_VITE_FLUI =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), + PROF_RHO_F_INT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + PROF_RHO_F_EXT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + NOM_CMP =SIMP(statut='f',typ='TXM',into=("DX","DY","DZ") ), + COEF_MASS_AJOU =SIMP(statut='f',typ='R' ), + TYPE_PAS =SIMP(statut='f',typ='TXM',into=("CARRE_LIGN","TRIA_LIGN") ), + TYPE_RESEAU =SIMP(statut='f',typ='I' ), + UNITE_CD =SIMP(statut='f',typ='I',defaut=70), + UNITE_CK =SIMP(statut='f',typ='I',defaut=71), + PAS =SIMP(statut='f',typ='R' ), + CSTE_CONNORS =SIMP(statut='f',typ='R',min=2,max=2,val_min=0.E+00), + NB_CONNORS =SIMP(statut='f',typ='I',val_min=2,), + RHO_TUBE =SIMP(statut='f',typ='R' ), ), - CREA_GROUP_NO =FACT(statut='f',max='**', - OPTION =SIMP(statut='f',typ='TXM',into=("ENV_SPHERE","ENV_CYLINDRE","PLAN", - "SEGM_DROI_ORDO","NOEUD_ORDO","TUNNEL") ), - - b_option =BLOC(condition = "OPTION == None" , - regles=(UN_PARMI('TOUT_GROUP_MA','GROUP_MA','GROUP_NO','NOEUD', - 'INTERSEC','UNION','DIFFE'),), - TOUT_GROUP_MA =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - INTERSEC =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - UNION =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - DIFFE =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - - b_nom_group_ma =BLOC(condition = "GROUP_MA != None", - NOM = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - CRIT_NOEUD = SIMP(statut='f',typ='TXM',defaut="TOUS", - into=("TOUS","SOMMET","MILIEU","CENTRE"),), - ), - b_group_no =BLOC(condition = "GROUP_NO != None", - regles=(EXCLUS('POSITION','NUME_INIT'),), - NUME_INIT =SIMP(statut='f',typ='I'), - POSITION =SIMP(statut='f',typ='TXM',into=("INIT","FIN","MILIEU") ), - b_nume_init =BLOC(condition = "NUME_INIT != None", - NUME_FIN =SIMP(statut='f',typ='I' ), - ), - ), - b_nom =BLOC(condition = "GROUP_MA == None and TOUT_GROUP_MA == None" , - NOM =SIMP(statut='o',typ=geom), - ), - ), - - b_env_sphere =BLOC(condition = "OPTION == 'ENV_SPHERE'", - regles=(UN_PARMI('POINT','NOEUD_CENTRE','GROUP_NO_CENTRE'),), - NOM =SIMP(statut='o',typ=geom), - POINT =SIMP(statut='f',typ='R' ,max=3), - NOEUD_CENTRE =SIMP(statut='f',typ=no ,validators=NoRepeat(),max=1), - GROUP_NO_CENTRE =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=1), - RAYON =SIMP(statut='o',typ='R' ), - PRECISION =SIMP(statut='o',typ='R' ), - ), - b_env_cylindre =BLOC(condition = "OPTION == 'ENV_CYLINDRE'", - regles=(UN_PARMI('POINT','NOEUD_CENTRE','GROUP_NO_CENTRE'), - UN_PARMI('ANGL_NAUT','VECT_NORMALE'),), - NOM =SIMP(statut='o',typ=geom), - POINT =SIMP(statut='f',typ='R' ,max=3), - NOEUD_CENTRE =SIMP(statut='f',typ=no ,validators=NoRepeat(),max=1), - GROUP_NO_CENTRE =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=1), - RAYON =SIMP(statut='o',typ='R' ), - ANGL_NAUT =SIMP(statut='f',typ='R',max=3), - VECT_NORMALE =SIMP(statut='f',typ='R',max=3), - PRECISION =SIMP(statut='o',typ='R' ), - ), - b_env_plan =BLOC(condition = "OPTION == 'PLAN'", - regles=(UN_PARMI('POINT','NOEUD_CENTRE','GROUP_NO_CENTRE'), - UN_PARMI('ANGL_NAUT','VECT_NORMALE'),), - NOM =SIMP(statut='o',typ=geom), - POINT =SIMP(statut='f',typ='R' ,max=3), - NOEUD_CENTRE =SIMP(statut='f',typ=no ,validators=NoRepeat(),max=1), - GROUP_NO_CENTRE =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=1), - ANGL_NAUT =SIMP(statut='f',typ='R' ,max=3), - VECT_NORMALE =SIMP(statut='f',typ='R' ,max=3), - PRECISION =SIMP(statut='o',typ='R' ), - ), - b_segm_droi_ordo=BLOC(condition = "OPTION == 'SEGM_DROI_ORDO'", - regles=(AU_MOINS_UN('NOEUD','GROUP_NO'), - UN_PARMI('NOEUD_ORIG','GROUP_NO_ORIG'), - UN_PARMI('NOEUD_EXTR','GROUP_NO_EXTR'),), - NOM =SIMP(statut='o',typ=geom), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_ORIG =SIMP(statut='f',typ=no), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno), - NOEUD_EXTR =SIMP(statut='f',typ=no), - GROUP_NO_EXTR =SIMP(statut='f',typ=grno), - PRECISION =SIMP(statut='o',typ='R' ), - CRITERE =SIMP(statut='o',typ='TXM',into=("ABSOLU","RELATIF") ), - ), - b_noeud_ordo =BLOC(condition = "OPTION == 'NOEUD_ORDO'", - regles=(EXCLUS('NOEUD_ORIG','GROUP_NO_ORIG'), - EXCLUS('NOEUD_EXTR','GROUP_NO_EXTR'),), - NOM =SIMP(statut='o',typ=geom), - GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), - NOEUD_ORIG =SIMP(statut='f',typ=no), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno), - NOEUD_EXTR =SIMP(statut='f',typ=no), - GROUP_NO_EXTR =SIMP(statut='f',typ=grno), - ), - b_tunnel =BLOC(condition = "OPTION == 'TUNNEL'", - regles=(AU_MOINS_UN ('TOUT','GROUP_MA','MAILLE'), - EXCLUS('NOEUD_ORIG','GROUP_NO_ORIG'), - AU_MOINS_UN ('GROUP_MA_AXE','MAILLE_AXE'),), - NOM =SIMP(statut='o',typ=geom), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA_AXE =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_AXE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - NOEUD_ORIG =SIMP(statut='f',typ=no), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno), - RAYON =SIMP(statut='o',typ='R'), - LONGUEUR =SIMP(statut='f',typ='R'), - ), + GRAPPE =FACT(statut='f', + regles=(ENSEMBLE('GRAPPE_2','NOEUD','CARA_ELEM','MODELE','RHO_FLUI',), + PRESENT_PRESENT('COEF_MASS_AJOU','GRAPPE_2', ),), +# peut on créer un bloc a partir de la valeur de couplage + COUPLAGE =SIMP(statut='o',typ='TXM',into=("OUI","NON") ), + GRAPPE_2 =SIMP(statut='f',typ='TXM', + into=("ASC_CEN","ASC_EXC","DES_CEN","DES_EXC") ), + NOEUD =SIMP(statut='f',typ=no), + CARA_ELEM =SIMP(statut='f',typ=cara_elem ), + MODELE =SIMP(statut='f',typ=modele_sdaster ), + COEF_MASS_AJOU =SIMP(statut='f',typ='R' ), + RHO_FLUI =SIMP(statut='f',typ='R' ), + UNITE_CA =SIMP(statut='f',typ='I',defaut=70), + UNITE_KA =SIMP(statut='f',typ='I',defaut=71), ), - ALARME =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - INFO =SIMP(statut='f',typ='I',into=( 1 , 2 ) ), + FAISCEAU_AXIAL =FACT(statut='f',max='**', + regles=(UN_PARMI('GROUP_MA','TRI_GROUP_MA'), + UN_PARMI('CARA_ELEM','RAYON_TUBE'), + ENSEMBLE('RAYON_TUBE','COOR_TUBE'), + PRESENT_ABSENT('RAYON_TUBE','TRI_GROUP_MA'), + ENSEMBLE('CARA_PAROI','VALE_PAROI'), + ENSEMBLE('LONG_TYPG','LARG_TYPG','EPAI_TYPG','RUGO_TYPG','COEF_TRAI_TYPG','COEF_DPOR_TYPG', + 'COOR_GRILLE','TYPE_GRILLE', ),), +# on doit pouvoir mettre des blocs conditionnels mais pas assez d infos pour le faire + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + TRI_GROUP_MA =SIMP(statut='f',typ='TXM' ), + VECT_X =SIMP(statut='f',typ='R',max=3), + PROF_RHO_FLUI =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + PROF_VISC_CINE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + CARA_ELEM =SIMP(statut='f',typ=cara_elem ), + RAYON_TUBE =SIMP(statut='f',typ='R' ), + COOR_TUBE =SIMP(statut='f',typ='R',max='**'), + PESANTEUR =SIMP(statut='f',typ='R',min=4,max=4), + RUGO_TUBE =SIMP(statut='f',typ='R' ), + CARA_PAROI =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=5, + into=("YC","ZC","R","HY","HZ") ), + VALE_PAROI =SIMP(statut='f',typ='R',max=5), + ANGL_VRIL =SIMP(statut='f',typ='R' ), + LONG_TYPG =SIMP(statut='f',typ='R',max='**',val_min=0.E+0), + LARG_TYPG =SIMP(statut='f',typ='R',max='**',val_min=0.E+0), + EPAI_TYPG =SIMP(statut='f',typ='R',max='**',val_min=0.E+0), + RUGO_TYPG =SIMP(statut='f',typ='R',max='**',val_min=0.E+0), + COEF_TRAI_TYPG =SIMP(statut='f',typ='R',max='**',val_min=0.E+0), + COEF_DPOR_TYPG =SIMP(statut='f',typ='R',max='**'), + COOR_GRILLE =SIMP(statut='f',typ='R',max='**'), + TYPE_GRILLE =SIMP(statut='f',typ='I',max='**'), + ), + COQUE_COAX =FACT(statut='f', + MASS_AJOU =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + GROUP_MA_INT =SIMP(statut='o',typ=grma), + GROUP_MA_EXT =SIMP(statut='o',typ=grma), + VECT_X =SIMP(statut='o',typ='R',max='**'), + CARA_ELEM =SIMP(statut='o',typ=cara_elem ), + MATER_INT =SIMP(statut='o',typ=mater_sdaster ), + MATER_EXT =SIMP(statut='o',typ=mater_sdaster ), + RHO_FLUI =SIMP(statut='o',typ='R' ), + VISC_CINE =SIMP(statut='o',typ='R' ), + RUGOSITE =SIMP(statut='o',typ='R' ), + PDC_MOY_1 =SIMP(statut='o',typ='R' ), + PDC_DYN_1 =SIMP(statut='o',typ='R' ), + PDC_MOY_2 =SIMP(statut='o',typ='R' ), + PDC_DYN_2 =SIMP(statut='o',typ='R' ), + ), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; -#& MODIF COMMANDE DATE 10/10/2006 AUTEUR MCOURTOI M.COURTOIS +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -8259,87 +8390,56 @@ regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE','INTERSEC','UNION','DIFFE','OPTION') # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -from Macro.defi_inte_spec_ops import defi_inte_spec_ops - -DEFI_INTE_SPEC=MACRO(nom="DEFI_INTE_SPEC",op= defi_inte_spec_ops,sd_prod=table_fonction, - reentrant='n', - fr="Définit une matrice interspectrale", - UIinfo={"groupes":("Fonction",)}, - - DIMENSION =SIMP(statut='f',typ='I',defaut= 1 ), - - PAR_FONCTION =FACT(statut='f',max='**', - NUME_ORDRE_I =SIMP(statut='o',typ='I' ), - NUME_ORDRE_J =SIMP(statut='o',typ='I' ), - FONCTION =SIMP(statut='o',typ=fonction_c ), +DEFI_FONC_ELEC=OPER(nom="DEFI_FONC_ELEC",op=64,sd_prod=fonction_sdaster,reentrant='n', + UIinfo={"groupes":("Outils métier",)}, + fr="Définir une fonction du temps intervenant dans le calcul des forces de LAPLACE", + regles=(UN_PARMI('COUR_PRIN','COUR'), + EXCLUS('COUR','COUR_SECO'), ), + FREQ =SIMP(statut='f',typ='R',defaut= 50.), + SIGNAL =SIMP(statut='f',typ='TXM',defaut="COMPLET",into=("COMPLET","CONTINU") ), + COUR =FACT(statut='f',max='**', + fr="Définition du courant de court-circuit", + regles=(UN_PARMI('PHI_CC_1','INTC_CC_1'), + UN_PARMI('PHI_CC_2','INTC_CC_2'),), + INTE_CC_1 =SIMP(statut='o',typ='R'), + TAU_CC_1 =SIMP(statut='o',typ='R'), + PHI_CC_1 =SIMP(statut='f',typ='R'), + INTC_CC_1 =SIMP(statut='f',typ='R'), + INTE_CC_2 =SIMP(statut='o',typ='R'), + TAU_CC_2 =SIMP(statut='o',typ='R'), + PHI_CC_2 =SIMP(statut='f',typ='R'), + INTC_CC_2 =SIMP(statut='f',typ='R'), + INST_CC_INIT =SIMP(statut='o',typ='R'), + INST_CC_FIN =SIMP(statut='o',typ='R'), ), - KANAI_TAJIMI =FACT(statut='f',max='**', - regles=(EXCLUS('VALE_R','VALE_C'),), - NUME_ORDRE_I =SIMP(statut='o',typ='I' ), - NUME_ORDRE_J =SIMP(statut='o',typ='I' ), - FREQ_MIN =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - FREQ_MAX =SIMP(statut='f',typ='R',defaut= 100. ), - PAS =SIMP(statut='f',typ='R',defaut= 1. ), - AMOR_REDUIT =SIMP(statut='f',typ='R',defaut= 0.6 ), - FREQ_MOY =SIMP(statut='f',typ='R',defaut= 5. ), - VALE_R =SIMP(statut='f',typ='R' ), - VALE_C =SIMP(statut='f',typ='C' ), - INTERPOL =SIMP(statut='f',typ='TXM',max=2,defaut="LIN",into=("NON","LIN","LOG") ), - PROL_DROITE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), - PROL_GAUCHE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), + COUR_PRIN =FACT(statut='f', + fr="Définition du courant de court-circuit avec réenclenchement", + regles=(UN_PARMI('PHI_CC_1','INTC_CC_1'),), + INTE_CC_1 =SIMP(statut='o',typ='R'), + TAU_CC_1 =SIMP(statut='o',typ='R'), + PHI_CC_1 =SIMP(statut='f',typ='R'), + INTC_CC_1 =SIMP(statut='f',typ='R'), + INTE_RENC_1 =SIMP(statut='f',typ='R'), + TAU_RENC_1 =SIMP(statut='f',typ='R'), + PHI_RENC_1 =SIMP(statut='f',typ='R'), + INST_CC_INIT =SIMP(statut='o',typ='R'), + INST_CC_FIN =SIMP(statut='o',typ='R'), + INST_RENC_INIT =SIMP(statut='f',typ='R',defaut= 0.0E+0), + INST_RENC_FIN =SIMP(statut='f',typ='R',defaut= 0.0E+0), ), - CONSTANT =FACT(statut='f',max='**', - regles=(EXCLUS('VALE_R','VALE_C'),), - NUME_ORDRE_I =SIMP(statut='o',typ='I' ), - NUME_ORDRE_J =SIMP(statut='o',typ='I' ), - FREQ_MIN =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - FREQ_MAX =SIMP(statut='f',typ='R',defaut= 100. ), - PAS =SIMP(statut='f',typ='R',defaut= 1. ), - VALE_R =SIMP(statut='f',typ='R' ), - VALE_C =SIMP(statut='f',typ='C' ), - INTERPOL =SIMP(statut='f',typ='TXM',max=2,defaut="LIN",into=("NON","LIN","LOG") ), - PROL_DROITE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), - PROL_GAUCHE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), + COUR_SECO =FACT(statut='f',max='**', + fr="Définition du courant de court-circuit avec un intervalle de temps différent de celui de COUR_PRIN", + regles=(UN_PARMI('PHI_CC_2','INTC_CC_2'),), + INTE_CC_2 =SIMP(statut='o',typ='R'), + TAU_CC_2 =SIMP(statut='o',typ='R'), + PHI_CC_2 =SIMP(statut='f',typ='R'), + INTC_CC_2 =SIMP(statut='f',typ='R'), + INTE_RENC_2 =SIMP(statut='f',typ='R'), + TAU_RENC_2 =SIMP(statut='f',typ='R'), + PHI_RENC_2 =SIMP(statut='f',typ='R'), + DIST =SIMP(statut='f',typ='R',defaut=1.0E+0), ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), -) ; -#& MODIF COMMANDE DATE 26/06/2006 AUTEUR CIBHHLV L.VIVAN -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -DEFI_INTERF_DYNA=OPER(nom="DEFI_INTERF_DYNA",op= 98,sd_prod=interf_dyna_clas, - reentrant='n', - UIinfo={"groupes":("Matrices/vecteurs",)}, - fr="Définir les interfaces d'une structure et leur affecter un type", - NUME_DDL =SIMP(statut='o',typ=nume_ddl_sdaster ), - INTERFACE =FACT(statut='o',max='**', - regles=(ENSEMBLE('NOM','TYPE'), -# erreur doc U sur la condition qui suit - UN_PARMI('NOEUD','GROUP_NO'),), - NOM =SIMP(statut='f',typ='TXM' ), - TYPE =SIMP(statut='f',typ='TXM',into=("MNEAL","CRAIGB","CB_HARMO","AUCUN") ), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), -# DDL_ACTIF =SIMP(statut='f',typ='TXM',max='**'), - MASQUE =SIMP(statut='f',typ='TXM',max='**'), - ), - FREQ =SIMP(statut='f',typ='R',defaut= 1.), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), ) ; #& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION @@ -8359,22 +8459,25 @@ DEFI_INTERF_DYNA=OPER(nom="DEFI_INTERF_DYNA",op= 98,sd_prod=interf_dyna_clas, # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE VABHHTS J.PELLET -DEFI_LIST_ENTI=OPER(nom="DEFI_LIST_ENTI",op=22,sd_prod=listis_sdaster, - fr="Définir une liste d'entier strictement croissante", +DEFI_FONC_FLUI=OPER(nom="DEFI_FONC_FLUI",op= 142,sd_prod=fonction_sdaster, reentrant='n', + fr="Définit un profil de vitesse d'écoulement fluide le long d'une poutre", UIinfo={"groupes":("Fonction",)}, - regles=(UN_PARMI('VALE','DEBUT'), - EXCLUS('VALE','INTERVALLE'),), - VALE =SIMP(statut='f',typ='I',max='**'), - DEBUT =SIMP(statut='f',typ='I'), - INTERVALLE =FACT(statut='f',max='**', - regles=(UN_PARMI('NOMBRE','PAS'),), - JUSQU_A =SIMP(statut='o',typ='I'), - NOMBRE =SIMP(statut='f',typ='I',val_min=1,), - PAS =SIMP(statut='f',typ='I',val_min=1,), + MAILLAGE =SIMP(statut='o',typ=(maillage_sdaster) ), + NOEUD_INIT =SIMP(statut='o',typ=no), + NOEUD_FIN =SIMP(statut='o',typ=no), + VITE =FACT(statut='o', + VALE =SIMP(statut='f',typ='R',defaut= 1. ), + PROFIL =SIMP(statut='o',typ='TXM',into=("UNIFORME","LEONARD") ), + NB_BAV =SIMP(statut='f',typ='I',defaut= 0,into=( 0 , 2 , 3 ) ), ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), + INTERPOL =SIMP(statut='f',typ='TXM',max=2,defaut="LIN", + into=("NON","LIN","LOG") ), + PROL_DROITE =SIMP(statut='f',typ='TXM',defaut="EXCLU", + into=("CONSTANT","LINEAIRE","EXCLU") ), + PROL_GAUCHE =SIMP(statut='f',typ='TXM' ,defaut="EXCLU", + into=("CONSTANT","LINEAIRE","EXCLU") ), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; #& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE @@ -8395,26 +8498,45 @@ DEFI_LIST_ENTI=OPER(nom="DEFI_LIST_ENTI",op=22,sd_prod=listis_sdaster, # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE VABHHTS J.PELLET -DEFI_LIST_REEL=OPER(nom="DEFI_LIST_REEL",op=24,sd_prod=listr8_sdaster, - fr="Définir une liste de réels strictement croissante", - reentrant='n', +# RESPONSABLE MCOURTOI M.COURTOIS +def defi_fonction_prod(VALE,VALE_PARA,VALE_C,NOEUD_PARA,**args): + if VALE != None : return fonction_sdaster + if VALE_C != None : return fonction_c + if VALE_PARA != None : return fonction_sdaster + if NOEUD_PARA != None : return fonction_sdaster + raise AsException("type de concept resultat non prevu") + +DEFI_FONCTION=OPER(nom="DEFI_FONCTION",op=3,sd_prod=defi_fonction_prod + ,fr="Définit une fonction réelle ou complexe d'une variable réelle", + reentrant='n', UIinfo={"groupes":("Fonction",)}, - regles=(UN_PARMI('VALE','DEBUT',), - EXCLUS('VALE','INTERVALLE'), - ENSEMBLE('DEBUT','INTERVALLE')), - VALE =SIMP(statut='f',typ='R',max='**'), - DEBUT =SIMP(statut='f',typ='R'), - INTERVALLE =FACT(statut='f',max='**', - regles=(UN_PARMI('NOMBRE','PAS'),), - JUSQU_A =SIMP(statut='o',typ='R'), - NOMBRE =SIMP(statut='f',typ='I'), - PAS =SIMP(statut='f',typ='R'), + regles=(UN_PARMI('VALE','VALE_C','VALE_PARA','NOEUD_PARA'),), + NOM_PARA =SIMP(statut='o',typ='TXM',into=C_PARA_FONCTION() ), + NOM_RESU =SIMP(statut='f',typ='TXM',defaut="TOUTRESU"), + VALE =SIMP(statut='f',typ='R',min=2,max='**', + fr ="Fonction réelle définie par une liste de couples (abscisse,ordonnée)"), + VALE_C =SIMP(statut='f',typ='R',min=2,max='**', + fr ="Fonction complexe définie par une liste de couples"), + VALE_PARA =SIMP(statut='f',typ=listr8_sdaster, + fr ="Fonction réelle définie par deux concepts de type listr8" ), + b_vale_para =BLOC(condition = "VALE_PARA != None", + VALE_FONC =SIMP(statut='o',typ=listr8_sdaster ), ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), + NOEUD_PARA =SIMP(statut='f',typ=no,max='**', + fr ="Fonction réelle définie par une liste de noeuds et un maillage"), + b_noeud_para =BLOC(condition = "NOEUD_PARA != None", + MAILLAGE =SIMP(statut='o',typ=maillage_sdaster ), + VALE_Y =SIMP(statut='o',typ='R',max='**'), + ), + + INTERPOL =SIMP(statut='f',typ='TXM',max=2,defaut="LIN",into=("NON","LIN","LOG") ), + PROL_DROITE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), + PROL_GAUCHE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), + VERIF =SIMP(statut='f',typ='TXM',defaut="CROISSANT",into=("CROISSANT","NON") ), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 12/03/2007 AUTEUR DEVESA G.DEVESA +#& MODIF COMMANDE DATE 05/03/2007 AUTEUR GALENNE E.GALENNE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -8432,68 +8554,141 @@ DEFI_LIST_REEL=OPER(nom="DEFI_LIST_REEL",op=24,sd_prod=listr8_sdaster, # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE VABHHTS J.PELLET -DEFI_MAILLAGE=OPER(nom="DEFI_MAILLAGE",op= 88,sd_prod=maillage_sdaster, - fr="Définition d'un nouveau maillage à partir de macro-éléments", - reentrant='n', - UIinfo={"groupes":("Maillage",)}, - DEFI_SUPER_MAILLE =FACT(statut='o',max='**', - MACR_ELEM =SIMP(statut='o',typ=(macr_elem_stat,macr_elem_dyna),max='**' ), - SUPER_MAILLE =SIMP(statut='f',typ=ma,max='**'), - TRAN =SIMP(statut='f',typ='R',max=3), - ANGL_NAUT =SIMP(statut='f',typ='R',max=3), - b_angl_naut =BLOC(condition = "ANGL_NAUT != None", - CENTRE =SIMP(statut='f',typ='R',max=3), +DEFI_FOND_FISS=OPER(nom="DEFI_FOND_FISS",op=55,sd_prod=fond_fiss,reentrant='n', + UIinfo={"groupes":("Post traitements",)}, + fr="Définition de lèvres et d'un fond de fissure en 3D", + regles=(UN_PARMI('FOND_FISS','FOND_FERME','FOND_INF'), + EXCLUS('FOND_FERME','DTAN_ORIG'), + EXCLUS('FOND_FERME','DTAN_EXTR'), + EXCLUS('FOND_FERME','VECT_GRNO_ORIG'), + EXCLUS('FOND_FERME','VECT_GRNO_EXTR'), + UN_PARMI('LEVRE_SUP','NORMALE'), + EXCLUS('LEVRE_INF','NORMALE'), + ENSEMBLE('DTAN_ORIG','DTAN_EXTR'), + ENSEMBLE('FOND_SUP','FOND_INF'), + EXCLUS('FOND_INF','FOND_FISS'), + EXCLUS('FOND_INF','FOND_FERME'), + ENSEMBLE('VECT_GRNO_ORIG','VECT_GRNO_EXTR'), + EXCLUS('DTAN_ORIG','VECT_GRNO_ORIG'), + EXCLUS('DTAN_EXTR','VECT_GRNO_EXTR') ,), + MAILLAGE =SIMP(statut='o',typ=maillage_sdaster ), + FOND_FISS =FACT(statut='f', + regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'), + EXCLUS('NOEUD_ORIG','GROUP_NO_ORIG'), + EXCLUS('NOEUD_EXTR','GROUP_NO_EXTR'),), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), +# à mettre à jour le max vaut-il 1 + NOEUD_ORIG =SIMP(statut='f',typ=no,), + GROUP_NO_ORIG =SIMP(statut='f',typ=grno,), + NOEUD_EXTR =SIMP(statut='f',typ=no,), + GROUP_NO_EXTR =SIMP(statut='f',typ=grno,), ), - ), - RECO_GLOBAL =FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','SUPER_MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - SUPER_MAILLE =SIMP(statut='f',typ=ma,max='**'), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - ), - RECO_SUPER_MAILLE =FACT(statut='f',max='**', - SUPER_MAILLE =SIMP(statut='o',typ=ma,max='**'), - GROUP_NO =SIMP(statut='o',typ=grno,max='**'), - OPTION =SIMP(statut='f',typ='TXM',defaut="GEOMETRIQUE",into=("GEOMETRIQUE","NOEUD_A_NOEUD","INVERSE") ), - geometrique =BLOC(condition = "OPTION == 'GEOMETRIQUE'", - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), + FOND_FERME =FACT(statut='f', + regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'), + EXCLUS('NOEUD_ORIG','GROUP_NO_ORIG'),), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + NOEUD_ORIG =SIMP(statut='f',typ=no,), + GROUP_NO_ORIG =SIMP(statut='f',typ=grno,), + MAILLE_ORIG =SIMP(statut='f',typ=ma,), + GROUP_MA_ORIG =SIMP(statut='f',typ=ma,), ), - ), - DEFI_NOEUD =FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','NOEUD_INIT'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",), - fr="Renommage de tous les noeuds" ), - NOEUD_INIT =SIMP(statut='f',typ=no, - fr="Renommage d un seul noeud"), - b_tout =BLOC(condition = "TOUT != None", - PREFIXE =SIMP(statut='f',typ='TXM' ), - INDEX =SIMP(statut='o',typ='I',max='**'), + FOND_INF =FACT(statut='f', + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + NOEUD_ORIG =SIMP(statut='f',typ=no,), + GROUP_NO_ORIG =SIMP(statut='f',typ=grno,), + NOEUD_EXTR =SIMP(statut='f',typ=no,), + GROUP_NO_EXTR =SIMP(statut='f',typ=grno,), ), - b_noeud_init =BLOC(condition = "NOEUD_INIT != None", - SUPER_MAILLE =SIMP(statut='o',typ=ma), - NOEUD_FIN =SIMP(statut='o',typ=no), - ), - ), - DEFI_GROUP_NO =FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','SUPER_MAILLE'), - AU_MOINS_UN('INDEX','GROUP_NO_FIN'), - ENSEMBLE('GROUP_NO_INIT','GROUP_NO_FIN'),), -# la regle ancien catalogue AU_MOINS_UN__: ( INDEX , GROUP_NO_FIN ) incoherente avec doc U - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",), - fr="Création de plusieurs groupes de noeuds" ), - SUPER_MAILLE =SIMP(statut='f',typ=ma, - fr="Création de plusieurs groupes de noeuds"), - GROUP_NO_INIT =SIMP(statut='f',typ=grno, - fr="Création d un seul groupe de noeuds"), - PREFIXE =SIMP(statut='f',typ='TXM' ), - INDEX =SIMP(statut='f',typ='I',max='**'), - GROUP_NO_FIN =SIMP(statut='f',typ=grno), - ), + FOND_SUP =FACT(statut='f', + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + NOEUD_ORIG =SIMP(statut='f',typ=no,), + GROUP_NO_ORIG =SIMP(statut='f',typ=grno,), + NOEUD_EXTR =SIMP(statut='f',typ=no,), + GROUP_NO_EXTR =SIMP(statut='f',typ=grno,), + ), + LEVRE_SUP =FACT(statut='f', + regles=(UN_PARMI('GROUP_MA','MAILLE'),), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + ), + LEVRE_INF =FACT(statut='f', + regles=(UN_PARMI('GROUP_MA','MAILLE', ),), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + ), + NORMALE =SIMP(statut='f',typ='R',max='**'), + PREC_NORM =SIMP(statut='f',typ='R',defaut=0.1), + DTAN_ORIG =SIMP(statut='f',typ='R',max='**'), + DTAN_EXTR =SIMP(statut='f',typ='R',max='**'), + VECT_GRNO_ORIG =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=2), + VECT_GRNO_EXTR =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=2), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 03/04/2007 AUTEUR VIVAN L.VIVAN +#& MODIF COMMANDE DATE 13/02/2007 AUTEUR PELLET J.PELLET +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2007 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# ====================================================================== +# +DEFI_GEOM_FIBRE=OPER(nom="DEFI_GEOM_FIBRE",op= 119, sd_prod=gfibre_sdaster, + fr="Definition des groupes de fibres pour les elements multifibres", + reentrant='n', + UIinfo={"groupes":("Modelisation",)}, + regles=(AU_MOINS_UN('SECTION','FIBRE'),), + + INFO =SIMP(statut='f',typ='I', defaut= 1 ,into=(1,2) ), +#============================================================================ + SECTION =FACT(statut='f',max='**', + regles=(AU_MOINS_UN('TOUT_SECT','GROUP_MA_SECT','MAILLE_SECT'), + PRESENT_ABSENT('TOUT_SECT','GROUP_MA_SECT','MAILLE_SECT'),), + + GROUP_FIBRE =SIMP(statut='o',typ='TXM',min=1,max=1), + TOUT_SECT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_MA_SECT =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE_SECT =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + + MAILLAGE_SECT =SIMP(statut='o',typ=maillage_sdaster), + COOR_AXE_POUTRE =SIMP(statut='o',typ='R',min=2,max=2), + ), + + +#============================================================================ + FIBRE =FACT(statut='f',max='**', + GROUP_FIBRE =SIMP(statut='o',typ='TXM',min=1,max=1), + CARA =SIMP(statut='f',typ='TXM',defaut='SURFACE',into=('SURFACE','DIAMETRE',)), + VALE =SIMP(statut='o',typ='R',max='**'), + COOR_AXE_POUTRE =SIMP(statut='o',typ='R',min=2,max=2), + ), + + +) ; +#& MODIF COMMANDE DATE 04/07/2005 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -8511,527 +8706,988 @@ DEFI_MAILLAGE=OPER(nom="DEFI_MAILLAGE",op= 88,sd_prod=maillage_sdaster, # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater_sdaster, - fr="Définition des paramètres décrivant le comportement d un matériau", - reentrant='f', - UIinfo={"groupes":("Modélisation",)}, - regles=(EXCLUS('ELAS','ELAS_FO','ELAS_FLUI','ELAS_ISTR','ELAS_ISTR_FO','ELAS_ORTH', - 'ELAS_ORTH_FO','ELAS_COQUE','ELAS_COQUE_FO', - 'ELAS_HYPER',), - EXCLUS('THER','THER_FO','THER_ORTH','THER_NL'), - EXCLUS('ECRO_LINE','ECRO_LINE_FO','ECRO_PUIS'), - EXCLUS('TAHERI','TAHERI_FO'), - EXCLUS('ROUSSELIER','ROUSSELIER_FO'), - EXCLUS('VISC_SINH','VISC_SINH_FO'), - PRESENT_PRESENT('ROUSSELIER','TRACTION'), - PRESENT_PRESENT('ROUSSELIER_FO','TRACTION'), - EXCLUS('CIN1_CHAB','CIN1_CHAB_FO'), - EXCLUS('CIN2_CHAB','CIN2_CHAB_FO'), - EXCLUS('VISCOCHAB','VISCOCHAB_FO'), - EXCLUS('LEMAITRE','LEMAITRE_FO','ZIRC_CYRA2','ZIRC_EPRI','VISC_IRRA_LOG', - 'LEMA_SEUIL','LEMA_SEUIL_FO','LEMAITRE_IRRA','LMARC_IRRA',), - EXCLUS('LMARC','LMARC_FO'), - EXCLUS('VMIS_POUTRE','VMIS_POUTRE_FO'), - EXCLUS('VENDOCHAB','VENDOCHAB_FO'), - PRESENT_PRESENT('BPEL_ACIER','ELAS'), - EXCLUS('RCCM','RCCM_FO'), - EXCLUS('WEIBULL','WEIBULL_FO'), - PRESENT_PRESENT('BARCELONE','CAM_CLAY','ELAS'), - PRESENT_PRESENT('CAM_CLAY','ELAS'), - PRESENT_PRESENT('LAIGLE','ELAS'), - PRESENT_PRESENT('DRUCK_PRAGER','ELAS'), - PRESENT_PRESENT('HOEK_BROWN','ELAS'), - EXCLUS('MAZARS','MAZARS_FO'), - PRESENT_PRESENT('BAZANT_FD','ELAS_FO'), - PRESENT_PRESENT('JOINT_BA','ELAS'), - PRESENT_PRESENT('CABLE','ELAS'), - EXCLUS('GLRC_DAMAGE','GLRC_DM'), - ), - MATER =SIMP(statut='f',typ=mater_sdaster), -# -# comportement élastique -# - ELAS =FACT(statut='f', - E =SIMP(statut='o',typ='R',val_min=0.E+0), - NU =SIMP(statut='o',typ='R',val_min=-1.E+0,val_max=0.5E+0), - RHO =SIMP(statut='f',typ='R'), - ALPHA =SIMP(statut='f',typ='R'), - AMOR_ALPHA =SIMP(statut='f',typ='R'), - AMOR_BETA =SIMP(statut='f',typ='R'), - AMOR_HYST =SIMP(statut='f',typ='R'), +# RESPONSABLE VABHHTS J.PELLET +def defi_group_prod(MAILLAGE,**args): + if AsType(MAILLAGE) == maillage_sdaster : return maillage_sdaster + if AsType(MAILLAGE) == squelette : return squelette + raise AsException("type de concept resultat non prevu") + +DEFI_GROUP=OPER(nom="DEFI_GROUP",op= 104,sd_prod=defi_group_prod, + fr="Définition de nouveaux groupes de noeuds et/ou de mailles dans un concept maillage", + reentrant='o', + UIinfo={"groupes":("Maillage",)}, + regles=(AU_MOINS_UN('CREA_GROUP_MA','CREA_GROUP_NO','DETR_GROUP_NO','DETR_GROUP_MA'),), + MAILLAGE =SIMP(statut='o',typ=(maillage_sdaster,squelette) ), + DETR_GROUP_MA =FACT(statut='f',max='**', + NOM =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'),), + DETR_GROUP_NO =FACT(statut='f',max='**', + NOM =SIMP(statut='o',typ=grno,validators=NoRepeat(),max='**'),), + CREA_GROUP_MA =FACT(statut='f',max='**', + +regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE','INTERSEC','UNION','DIFFE','OPTION'),), +# quel est le concept attendu deriere NOM + NOM =SIMP(statut='o',typ=grma), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_MA =SIMP(statut='f',typ=grma), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + INTERSEC =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + UNION =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + DIFFE =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + OPTION =SIMP(statut='f',typ='TXM',into=("FACE_NORMALE","SPHERE","CYLINDRE","BANDE","APPUI_LACHE") ), + b_group_ma =BLOC(condition = "GROUP_MA != None", + regles=(EXCLUS('POSITION','NUME_INIT'),), + NUME_INIT =SIMP(statut='f',typ='I'), + POSITION =SIMP(statut='f',typ='TXM',into=("INIT","FIN","MILIEU") ), + b_nume_init =BLOC(condition = "NUME_INIT != None", + NUME_FIN =SIMP(statut='f',typ='I' ), + ), ), - ELAS_FO =FACT(statut='f', - regles=(PRESENT_PRESENT('ALPHA','TEMP_DEF_ALPHA'),), - E =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - NU =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - RHO =SIMP(statut='f',typ='R'), - TEMP_DEF_ALPHA =SIMP(statut='f',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.), - ALPHA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - AMOR_ALPHA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - AMOR_BETA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - AMOR_HYST =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - K_DESSIC =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - B_ENDOGE =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - FONC_DESORP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP","INST","HYDR","SECH","NEUT1","NEUT2",) ), + b_face_normale =BLOC(condition = "OPTION == 'FACE_NORMALE'", + regles=(UN_PARMI('ANGL_NAUT','VECT_NORMALE'),), + ANGL_NAUT =SIMP(statut='f',typ='R',max=2), + VECT_NORMALE =SIMP(statut='f',typ='R',max=3), + ANGL_PREC =SIMP(statut='f',typ='R',defaut= 0.5 ), + VERI_SIGNE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), ), - ELAS_FLUI =FACT(statut='f', - E =SIMP(statut='o',typ='R'), - NU =SIMP(statut='o',typ='R'), - RHO =SIMP(statut='o',typ='R'), - PROF_RHO_F_INT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - PROF_RHO_F_EXT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - COEF_MASS_AJOU =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("ABSC",) ), + b_sphere =BLOC(condition = "OPTION == 'SPHERE'", + regles=(UN_PARMI('POINT','NOEUD_CENTRE','GROUP_NO_CENTRE'),), + POINT =SIMP(statut='f',typ='R',max=3), + NOEUD_CENTRE =SIMP(statut='f',typ=no), + GROUP_NO_CENTRE =SIMP(statut='f',typ=grno), + RAYON =SIMP(statut='o',typ='R' ), ), - ELAS_ISTR =FACT(statut='f', - E_L =SIMP(statut='o',typ='R'), - E_N =SIMP(statut='o',typ='R'), - NU_LT =SIMP(statut='o',typ='R'), - NU_LN =SIMP(statut='o',typ='R'), - G_LN =SIMP(statut='o',typ='R'), - RHO =SIMP(statut='f',typ='R'), - ALPHA_L =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - ALPHA_N =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + b_cylindre =BLOC(condition = "OPTION == 'CYLINDRE'", + regles=(UN_PARMI('POINT','NOEUD_CENTRE','GROUP_NO_CENTRE'), + UN_PARMI('ANGL_NAUT','VECT_NORMALE'),), + POINT =SIMP(statut='f',typ='R',max=3), + NOEUD_CENTRE =SIMP(statut='f',typ=no), + GROUP_NO_CENTRE =SIMP(statut='f',typ=grno), + RAYON =SIMP(statut='o',typ='R' ), + ANGL_NAUT =SIMP(statut='f',typ='R',max=2), + VECT_NORMALE =SIMP(statut='f',typ='R',max=3), ), - ELAS_ISTR_FO =FACT(statut='f', - regles=( - PRESENT_PRESENT('ALPHA_L','TEMP_DEF_ALPHA'), - PRESENT_PRESENT('ALPHA_N','TEMP_DEF_ALPHA'), - ), - E_L =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - E_N =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - NU_LT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - NU_LN =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - G_LN =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - RHO =SIMP(statut='f',typ='R'), - TEMP_DEF_ALPHA =SIMP(statut='f',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.), - ALPHA_L =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ALPHA_N =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP","INST")), + b_bande =BLOC(condition = "OPTION == 'BANDE'", + regles=(UN_PARMI('POINT','NOEUD_CENTRE','GROUP_NO_CENTRE'), + UN_PARMI('ANGL_NAUT','VECT_NORMALE'),), + POINT =SIMP(statut='f',typ='R' ,max=3), + NOEUD_CENTRE =SIMP(statut='f',typ=no ,validators=NoRepeat(),max=1), + GROUP_NO_CENTRE =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=1), + DIST =SIMP(statut='o',typ='R' ), + ANGL_NAUT =SIMP(statut='f',typ='R',max=2), + VECT_NORMALE =SIMP(statut='f',typ='R',max=3), ), - ELAS_ORTH =FACT(statut='f', - E_L =SIMP(statut='o',typ='R'), - E_T =SIMP(statut='o',typ='R'), - E_N =SIMP(statut='f',typ='R'), - NU_LT =SIMP(statut='o',typ='R'), - NU_LN =SIMP(statut='f',typ='R'), - NU_TN =SIMP(statut='f',typ='R'), - G_LT =SIMP(statut='o',typ='R'), - G_LN =SIMP(statut='f',typ='R'), - G_TN =SIMP(statut='f',typ='R'), - RHO =SIMP(statut='f',typ='R'), - ALPHA_L =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - ALPHA_T =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - ALPHA_N =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - XT =SIMP(statut='f',typ='R',defaut= 1. ), - XC =SIMP(statut='f',typ='R',defaut= 1. ), - YT =SIMP(statut='f',typ='R',defaut= 1. ), - YC =SIMP(statut='f',typ='R',defaut= 1. ), - S_LT =SIMP(statut='f',typ='R',defaut= 1. ), - AMOR_ALPHA =SIMP(statut='f',typ='R'), - AMOR_BETA =SIMP(statut='f',typ='R'), - AMOR_HYST =SIMP(statut='f',typ='R'), + b_app_lache =BLOC(condition = "OPTION == 'APPUI_LACHE'", + regles=(UN_PARMI('NOEUD','GROUP_NO'),), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), ), - ELAS_ORTH_FO =FACT(statut='f', - regles=( - PRESENT_PRESENT('ALPHA_L','TEMP_DEF_ALPHA'), - PRESENT_PRESENT('ALPHA_N','TEMP_DEF_ALPHA'), - PRESENT_PRESENT('ALPHA_T','TEMP_DEF_ALPHA'), - ), - E_L =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - E_T =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - E_N =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - NU_LT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - NU_LN =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - NU_TN =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - G_LT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - G_LN =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - G_TN =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - RHO =SIMP(statut='f',typ='R'), - TEMP_DEF_ALPHA =SIMP(statut='f',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut= 1. ), - ALPHA_L =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ALPHA_T =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ALPHA_N =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP","INST",) ), - AMOR_ALPHA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - AMOR_BETA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - AMOR_HYST =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + ), + CREA_GROUP_NO =FACT(statut='f',max='**', + OPTION =SIMP(statut='f',typ='TXM',into=("ENV_SPHERE","ENV_CYLINDRE","PLAN", + "SEGM_DROI_ORDO","NOEUD_ORDO","TUNNEL") ), + + b_option =BLOC(condition = "OPTION == None" , + regles=(UN_PARMI('TOUT_GROUP_MA','GROUP_MA','GROUP_NO','NOEUD', + 'INTERSEC','UNION','DIFFE'),), + TOUT_GROUP_MA =SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + INTERSEC =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + UNION =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + DIFFE =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + + b_nom_group_ma =BLOC(condition = "GROUP_MA != None", + NOM = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + CRIT_NOEUD = SIMP(statut='f',typ='TXM',defaut="TOUS", + into=("TOUS","SOMMET","MILIEU","CENTRE"),), + ), + b_group_no =BLOC(condition = "GROUP_NO != None", + regles=(EXCLUS('POSITION','NUME_INIT'),), + NUME_INIT =SIMP(statut='f',typ='I'), + POSITION =SIMP(statut='f',typ='TXM',into=("INIT","FIN","MILIEU") ), + b_nume_init =BLOC(condition = "NUME_INIT != None", + NUME_FIN =SIMP(statut='f',typ='I' ), + ), + ), + b_nom =BLOC(condition = "GROUP_MA == None and TOUT_GROUP_MA == None" , + NOM =SIMP(statut='o',typ=geom), + ), ), - ELAS_HYPER =FACT(statut='f', - regles=(UN_PARMI('K','NU'),), - C10 =SIMP(statut='f',typ='R',defaut=0.0), - C01 =SIMP(statut='o',typ='R'), - C20 =SIMP(statut='f',typ='R',defaut=0.0), - K =SIMP(statut='f',typ='R'), - RHO =SIMP(statut='f',typ='R',defaut=0.0), - NU =SIMP(statut='f',typ='R',val_min=-1.E+0,val_max=0.5E+0), + + b_env_sphere =BLOC(condition = "OPTION == 'ENV_SPHERE'", + regles=(UN_PARMI('POINT','NOEUD_CENTRE','GROUP_NO_CENTRE'),), + NOM =SIMP(statut='o',typ=geom), + POINT =SIMP(statut='f',typ='R' ,max=3), + NOEUD_CENTRE =SIMP(statut='f',typ=no ,validators=NoRepeat(),max=1), + GROUP_NO_CENTRE =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=1), + RAYON =SIMP(statut='o',typ='R' ), + PRECISION =SIMP(statut='o',typ='R' ), ), - ELAS_COQUE =FACT(statut='f', - regles=(EXCLUS('MEMB_L','M_LLLL',), - PRESENT_PRESENT('MEMB_L','MEMB_LT', 'MEMB_T','MEMB_G_LT','FLEX_L','FLEX_LT', - 'FLEX_T','FLEX_G_LT','CISA_L','CISA_T',), - PRESENT_PRESENT('M_LLLL','M_LLTT','M_LLLT','M_TTTT','M_TTLT','M_LTLT','F_LLLL', - 'F_LLTT','F_LLLT','F_TTTT','F_TTLT','F_LTLT','MF_LLLL', - 'MF_LLTT','MF_LLLT','MF_TTTT','MF_TTLT','MF_LTLT','MC_LLLZ', - 'MC_LLTZ','MC_TTLZ','MC_TTTZ','MC_LTLZ','MC_LTTZ','FC_LLLZ', - 'FC_LLTZ','FC_TTLZ','FC_TTTZ','FC_LTLZ','FC_LTTZ','C_LZLZ', - 'C_LZTZ','C_TZTZ'),), - MEMB_L =SIMP(statut='f',typ='R'), - MEMB_LT =SIMP(statut='f',typ='R'), - MEMB_T =SIMP(statut='f',typ='R'), - MEMB_G_LT =SIMP(statut='f',typ='R'), - FLEX_L =SIMP(statut='f',typ='R'), - FLEX_LT =SIMP(statut='f',typ='R'), - FLEX_T =SIMP(statut='f',typ='R'), - FLEX_G_LT =SIMP(statut='f',typ='R'), - CISA_L =SIMP(statut='f',typ='R'), - CISA_T =SIMP(statut='f',typ='R'), - M_LLLL =SIMP(statut='f',typ='R'), - M_LLTT =SIMP(statut='f',typ='R'), - M_LLLT =SIMP(statut='f',typ='R'), - M_TTTT =SIMP(statut='f',typ='R'), - M_TTLT =SIMP(statut='f',typ='R'), - M_LTLT =SIMP(statut='f',typ='R'), - F_LLLL =SIMP(statut='f',typ='R'), - F_LLTT =SIMP(statut='f',typ='R'), - F_LLLT =SIMP(statut='f',typ='R'), - F_TTTT =SIMP(statut='f',typ='R'), - F_TTLT =SIMP(statut='f',typ='R'), - F_LTLT =SIMP(statut='f',typ='R'), - MF_LLLL =SIMP(statut='f',typ='R'), - MF_LLTT =SIMP(statut='f',typ='R'), - MF_LLLT =SIMP(statut='f',typ='R'), - MF_TTTT =SIMP(statut='f',typ='R'), - MF_TTLT =SIMP(statut='f',typ='R'), - MF_LTLT =SIMP(statut='f',typ='R'), - MC_LLLZ =SIMP(statut='f',typ='R'), - MC_LLTZ =SIMP(statut='f',typ='R'), - MC_TTLZ =SIMP(statut='f',typ='R'), - MC_TTTZ =SIMP(statut='f',typ='R'), - MC_LTLZ =SIMP(statut='f',typ='R'), - MC_LTTZ =SIMP(statut='f',typ='R'), - FC_LLLZ =SIMP(statut='f',typ='R'), - FC_LLTZ =SIMP(statut='f',typ='R'), - FC_TTLZ =SIMP(statut='f',typ='R'), - FC_TTTZ =SIMP(statut='f',typ='R'), - FC_LTLZ =SIMP(statut='f',typ='R'), - FC_LTTZ =SIMP(statut='f',typ='R'), - C_LZLZ =SIMP(statut='f',typ='R'), - C_LZTZ =SIMP(statut='f',typ='R'), - C_TZTZ =SIMP(statut='f',typ='R'), - RHO =SIMP(statut='f',typ='R'), - ALPHA =SIMP(statut='f',typ='R'), + b_env_cylindre =BLOC(condition = "OPTION == 'ENV_CYLINDRE'", + regles=(UN_PARMI('POINT','NOEUD_CENTRE','GROUP_NO_CENTRE'), + UN_PARMI('ANGL_NAUT','VECT_NORMALE'),), + NOM =SIMP(statut='o',typ=geom), + POINT =SIMP(statut='f',typ='R' ,max=3), + NOEUD_CENTRE =SIMP(statut='f',typ=no ,validators=NoRepeat(),max=1), + GROUP_NO_CENTRE =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=1), + RAYON =SIMP(statut='o',typ='R' ), + ANGL_NAUT =SIMP(statut='f',typ='R',max=3), + VECT_NORMALE =SIMP(statut='f',typ='R',max=3), + PRECISION =SIMP(statut='o',typ='R' ), ), - ELAS_COQUE_FO =FACT(statut='f', - regles=(EXCLUS('MEMB_L','M_LLLL',), - PRESENT_PRESENT('MEMB_L','MEMB_LT','MEMB_T','MEMB_G_LT','FLEX_L','FLEX_LT', - 'FLEX_T','FLEX_G_LT','CISA_L','CISA_T',), - PRESENT_PRESENT('M_LLLL','M_LLTT','M_LLLT','M_TTTT','M_TTLT','M_LTLT','F_LLLL', - 'F_LLTT','F_LLLT','F_TTTT','F_TTLT','F_LTLT','MF_LLLL','MF_LLTT', - 'MF_LLLT','MF_TTTT','MF_TTLT','MF_LTLT','MC_LLLZ','MC_LLTZ', - 'MC_TTLZ','MC_TTTZ','MC_LTLZ','MC_LTTZ','FC_LLLZ','FC_LLTZ', - 'FC_TTLZ','FC_TTTZ','FC_LTLZ','FC_LTTZ','C_LZLZ','C_LZTZ','C_TZTZ'),), - MEMB_L =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MEMB_LT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MEMB_T =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MEMB_G_LT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FLEX_L =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FLEX_LT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FLEX_T =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FLEX_G_LT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - CISA_L =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - CISA_T =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - M_LLLL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - M_LLTT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - M_LLLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - M_TTTT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - M_TTLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - M_LTLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F_LLLL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F_LLTT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F_LLLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F_TTTT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F_TTLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - F_LTLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MF_LLLL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MF_LLTT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MF_LLLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MF_TTTT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MF_TTLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MF_LTLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MC_LLLZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MC_LLTZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MC_TTLZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MC_TTTZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MC_LTLZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MC_LTTZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FC_LLLZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FC_LLTZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FC_TTLZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FC_TTTZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FC_LTLZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - FC_LTTZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_LZLZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_LZTZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_TZTZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - RHO =SIMP(statut='f',typ='R'), - ALPHA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP","INST") ), + b_env_plan =BLOC(condition = "OPTION == 'PLAN'", + regles=(UN_PARMI('POINT','NOEUD_CENTRE','GROUP_NO_CENTRE'), + UN_PARMI('ANGL_NAUT','VECT_NORMALE'),), + NOM =SIMP(statut='o',typ=geom), + POINT =SIMP(statut='f',typ='R' ,max=3), + NOEUD_CENTRE =SIMP(statut='f',typ=no ,validators=NoRepeat(),max=1), + GROUP_NO_CENTRE =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=1), + ANGL_NAUT =SIMP(statut='f',typ='R' ,max=3), + VECT_NORMALE =SIMP(statut='f',typ='R' ,max=3), + PRECISION =SIMP(statut='o',typ='R' ), ), - APPUI_ELAS =FACT(statut='f', - E_N =SIMP(statut='o',typ='R'), - E_TAN =SIMP(statut='f',typ='R',defaut= 0.E+0), + b_segm_droi_ordo=BLOC(condition = "OPTION == 'SEGM_DROI_ORDO'", + regles=(AU_MOINS_UN('NOEUD','GROUP_NO'), + UN_PARMI('NOEUD_ORIG','GROUP_NO_ORIG'), + UN_PARMI('NOEUD_EXTR','GROUP_NO_EXTR'),), + NOM =SIMP(statut='o',typ=geom), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD_ORIG =SIMP(statut='f',typ=no), + GROUP_NO_ORIG =SIMP(statut='f',typ=grno), + NOEUD_EXTR =SIMP(statut='f',typ=no), + GROUP_NO_EXTR =SIMP(statut='f',typ=grno), + PRECISION =SIMP(statut='o',typ='R' ), + CRITERE =SIMP(statut='o',typ='TXM',into=("ABSOLU","RELATIF") ), ), - CABLE =FACT(statut='f', - EC_SUR_E =SIMP(statut='f',typ='R',defaut= 1.E-4 ), + b_noeud_ordo =BLOC(condition = "OPTION == 'NOEUD_ORDO'", + regles=(EXCLUS('NOEUD_ORIG','GROUP_NO_ORIG'), + EXCLUS('NOEUD_EXTR','GROUP_NO_EXTR'),), + NOM =SIMP(statut='o',typ=geom), + GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), + NOEUD_ORIG =SIMP(statut='f',typ=no), + GROUP_NO_ORIG =SIMP(statut='f',typ=grno), + NOEUD_EXTR =SIMP(statut='f',typ=no), + GROUP_NO_EXTR =SIMP(statut='f',typ=grno), + ), + b_tunnel =BLOC(condition = "OPTION == 'TUNNEL'", + regles=(AU_MOINS_UN ('TOUT','GROUP_MA','MAILLE'), + EXCLUS('NOEUD_ORIG','GROUP_NO_ORIG'), + AU_MOINS_UN ('GROUP_MA_AXE','MAILLE_AXE'),), + NOM =SIMP(statut='o',typ=geom), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA_AXE =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE_AXE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + NOEUD_ORIG =SIMP(statut='f',typ=no), + GROUP_NO_ORIG =SIMP(statut='f',typ=grno), + RAYON =SIMP(statut='o',typ='R'), + LONGUEUR =SIMP(statut='f',typ='R'), ), + ), + ALARME =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + INFO =SIMP(statut='f',typ='I',into=( 1 , 2 ) ), +) ; +#& MODIF COMMANDE DATE 26/06/2006 AUTEUR CIBHHLV L.VIVAN +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # -# comportement mécanique non linéaire +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # - TRACTION =FACT(statut='f', - SIGM =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("EPSI","TEMP","HYDR","SECH",) ), - ), - ECRO_LINE =FACT(statut='f', - D_SIGM_EPSI =SIMP(statut='o',typ='R',), - SY =SIMP(statut='o',typ='R',), - ), - ECRO_LINE_FO =FACT(statut='f', - D_SIGM_EPSI =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - SY =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP",) ), - ), - ECRO_PUIS =FACT(statut='f', - SY =SIMP(statut='o',typ='R',), - A_PUIS =SIMP(statut='o',typ='R',val_min=0.0), - N_PUIS =SIMP(statut='o',typ='R',val_min=1.E-6), - ), - ECRO_PUIS_FO =FACT(statut='f', - SY =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - A_PUIS =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - N_PUIS =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP",) ), - ), - BETON_ECRO_LINE =FACT(statut='f', - D_SIGM_EPSI =SIMP(statut='o',typ='R'), - SYT =SIMP(statut='o',typ='R'), - SYC =SIMP(statut='f',typ='R'), - ), - BETON_REGLE_PR =FACT(statut='f', - D_SIGM_EPSI =SIMP(statut='o',typ='R'), - SYT =SIMP(statut='o',typ='R'), - SYC =SIMP(statut='f',typ='R'), - EPSC =SIMP(statut='f',typ='R'), - N =SIMP(statut='f',typ='R'), - ), - ENDO_ORTH_BETON =FACT(statut='f', - ALPHA =SIMP(statut='f',typ='R',defaut=0.9), - K0 =SIMP(statut='o',typ='R'), - K1 =SIMP(statut='o',typ='R'), - K2 =SIMP(statut='f',typ='R',defaut=7.E-4), - ECROB =SIMP(statut='o',typ='R'), - ECROD =SIMP(statut='o',typ='R'), +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +DEFI_INTERF_DYNA=OPER(nom="DEFI_INTERF_DYNA",op= 98,sd_prod=interf_dyna_clas, + reentrant='n', + UIinfo={"groupes":("Matrices/vecteurs",)}, + fr="Définir les interfaces d'une structure et leur affecter un type", + NUME_DDL =SIMP(statut='o',typ=nume_ddl_sdaster ), + INTERFACE =FACT(statut='o',max='**', + regles=(ENSEMBLE('NOM','TYPE'), +# erreur doc U sur la condition qui suit + UN_PARMI('NOEUD','GROUP_NO'),), + NOM =SIMP(statut='f',typ='TXM' ), + TYPE =SIMP(statut='f',typ='TXM',into=("MNEAL","CRAIGB","CB_HARMO","AUCUN") ), + NOEUD =SIMP(statut='f',typ=no,max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,max='**'), +# DDL_ACTIF =SIMP(statut='f',typ='TXM',max='**'), + MASQUE =SIMP(statut='f',typ='TXM',max='**'), + ), + FREQ =SIMP(statut='f',typ='R',defaut= 1.), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), +) ; +#& MODIF COMMANDE DATE 10/10/2006 AUTEUR MCOURTOI M.COURTOIS +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +from Macro.defi_inte_spec_ops import defi_inte_spec_ops + +DEFI_INTE_SPEC=MACRO(nom="DEFI_INTE_SPEC",op= defi_inte_spec_ops,sd_prod=table_fonction, + reentrant='n', + fr="Définit une matrice interspectrale", + UIinfo={"groupes":("Fonction",)}, + + DIMENSION =SIMP(statut='f',typ='I',defaut= 1 ), + + PAR_FONCTION =FACT(statut='f',max='**', + NUME_ORDRE_I =SIMP(statut='o',typ='I' ), + NUME_ORDRE_J =SIMP(statut='o',typ='I' ), + FONCTION =SIMP(statut='o',typ=fonction_c ), + ), + KANAI_TAJIMI =FACT(statut='f',max='**', + regles=(EXCLUS('VALE_R','VALE_C'),), + NUME_ORDRE_I =SIMP(statut='o',typ='I' ), + NUME_ORDRE_J =SIMP(statut='o',typ='I' ), + FREQ_MIN =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + FREQ_MAX =SIMP(statut='f',typ='R',defaut= 100. ), + PAS =SIMP(statut='f',typ='R',defaut= 1. ), + AMOR_REDUIT =SIMP(statut='f',typ='R',defaut= 0.6 ), + FREQ_MOY =SIMP(statut='f',typ='R',defaut= 5. ), + VALE_R =SIMP(statut='f',typ='R' ), + VALE_C =SIMP(statut='f',typ='C' ), + INTERPOL =SIMP(statut='f',typ='TXM',max=2,defaut="LIN",into=("NON","LIN","LOG") ), + PROL_DROITE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), + PROL_GAUCHE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), + ), + CONSTANT =FACT(statut='f',max='**', + regles=(EXCLUS('VALE_R','VALE_C'),), + NUME_ORDRE_I =SIMP(statut='o',typ='I' ), + NUME_ORDRE_J =SIMP(statut='o',typ='I' ), + FREQ_MIN =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + FREQ_MAX =SIMP(statut='f',typ='R',defaut= 100. ), + PAS =SIMP(statut='f',typ='R',defaut= 1. ), + VALE_R =SIMP(statut='f',typ='R' ), + VALE_C =SIMP(statut='f',typ='C' ), + INTERPOL =SIMP(statut='f',typ='TXM',max=2,defaut="LIN",into=("NON","LIN","LOG") ), + PROL_DROITE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), + PROL_GAUCHE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), + ), + TITRE =SIMP(statut='f',typ='TXM',max='**'), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), +) ; +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE VABHHTS J.PELLET +DEFI_LIST_ENTI=OPER(nom="DEFI_LIST_ENTI",op=22,sd_prod=listis_sdaster, + fr="Définir une liste d'entier strictement croissante", + reentrant='n', + UIinfo={"groupes":("Fonction",)}, + regles=(UN_PARMI('VALE','DEBUT'), + EXCLUS('VALE','INTERVALLE'),), + VALE =SIMP(statut='f',typ='I',max='**'), + DEBUT =SIMP(statut='f',typ='I'), + INTERVALLE =FACT(statut='f',max='**', + regles=(UN_PARMI('NOMBRE','PAS'),), + JUSQU_A =SIMP(statut='o',typ='I'), + NOMBRE =SIMP(statut='f',typ='I',val_min=1,), + PAS =SIMP(statut='f',typ='I',val_min=1,), + ), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), + TITRE =SIMP(statut='f',typ='TXM',max='**'), +) ; +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE VABHHTS J.PELLET +DEFI_LIST_REEL=OPER(nom="DEFI_LIST_REEL",op=24,sd_prod=listr8_sdaster, + fr="Définir une liste de réels strictement croissante", + reentrant='n', + UIinfo={"groupes":("Fonction",)}, + regles=(UN_PARMI('VALE','DEBUT',), + EXCLUS('VALE','INTERVALLE'), + ENSEMBLE('DEBUT','INTERVALLE')), + VALE =SIMP(statut='f',typ='R',max='**'), + DEBUT =SIMP(statut='f',typ='R'), + INTERVALLE =FACT(statut='f',max='**', + regles=(UN_PARMI('NOMBRE','PAS'),), + JUSQU_A =SIMP(statut='o',typ='R'), + NOMBRE =SIMP(statut='f',typ='I'), + PAS =SIMP(statut='f',typ='R'), + ), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), + TITRE =SIMP(statut='f',typ='TXM',max='**'), +) ; +#& MODIF COMMANDE DATE 12/03/2007 AUTEUR DEVESA G.DEVESA +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE VABHHTS J.PELLET +DEFI_MAILLAGE=OPER(nom="DEFI_MAILLAGE",op= 88,sd_prod=maillage_sdaster, + fr="Définition d'un nouveau maillage à partir de macro-éléments", + reentrant='n', + UIinfo={"groupes":("Maillage",)}, + DEFI_SUPER_MAILLE =FACT(statut='o',max='**', + MACR_ELEM =SIMP(statut='o',typ=(macr_elem_stat,macr_elem_dyna),max='**' ), + SUPER_MAILLE =SIMP(statut='f',typ=ma,max='**'), + TRAN =SIMP(statut='f',typ='R',max=3), + ANGL_NAUT =SIMP(statut='f',typ='R',max=3), + b_angl_naut =BLOC(condition = "ANGL_NAUT != None", + CENTRE =SIMP(statut='f',typ='R',max=3), ), - PRAGER =FACT(statut='f', - C =SIMP(statut='o',typ='R'), + ), + RECO_GLOBAL =FACT(statut='f',max='**', + regles=(UN_PARMI('TOUT','SUPER_MAILLE'),), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + SUPER_MAILLE =SIMP(statut='f',typ=ma,max='**'), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), + ), + RECO_SUPER_MAILLE =FACT(statut='f',max='**', + SUPER_MAILLE =SIMP(statut='o',typ=ma,max='**'), + GROUP_NO =SIMP(statut='o',typ=grno,max='**'), + OPTION =SIMP(statut='f',typ='TXM',defaut="GEOMETRIQUE",into=("GEOMETRIQUE","NOEUD_A_NOEUD","INVERSE") ), + geometrique =BLOC(condition = "OPTION == 'GEOMETRIQUE'", + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), ), - PRAGER_FO =FACT(statut='f', - C =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP",) ), + ), + DEFI_NOEUD =FACT(statut='f',max='**', + regles=(UN_PARMI('TOUT','NOEUD_INIT'),), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",), + fr="Renommage de tous les noeuds" ), + NOEUD_INIT =SIMP(statut='f',typ=no, + fr="Renommage d un seul noeud"), + b_tout =BLOC(condition = "TOUT != None", + PREFIXE =SIMP(statut='f',typ='TXM' ), + INDEX =SIMP(statut='o',typ='I',max='**'), ), - ECRO_FLEJOU =FACT(statut='f', - EP =SIMP(statut='o',typ='R'), - SY =SIMP(statut='o',typ='R'), - SU =SIMP(statut='o',typ='R'), - PUISS =SIMP(statut='o',typ='R'), - ), - TAHERI =FACT(statut='f', - R_0 =SIMP(statut='o',typ='R'), - ALPHA =SIMP(statut='o',typ='R'), - M =SIMP(statut='o',typ='R'), - A =SIMP(statut='o',typ='R'), - B =SIMP(statut='o',typ='R'), - C1 =SIMP(statut='o',typ='R'), - C_INF =SIMP(statut='o',typ='R'), - S =SIMP(statut='o',typ='R'), + b_noeud_init =BLOC(condition = "NOEUD_INIT != None", + SUPER_MAILLE =SIMP(statut='o',typ=ma), + NOEUD_FIN =SIMP(statut='o',typ=no), + ), + ), + DEFI_GROUP_NO =FACT(statut='f',max='**', + regles=(UN_PARMI('TOUT','SUPER_MAILLE'), + AU_MOINS_UN('INDEX','GROUP_NO_FIN'), + ENSEMBLE('GROUP_NO_INIT','GROUP_NO_FIN'),), +# la regle ancien catalogue AU_MOINS_UN__: ( INDEX , GROUP_NO_FIN ) incoherente avec doc U + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",), + fr="Création de plusieurs groupes de noeuds" ), + SUPER_MAILLE =SIMP(statut='f',typ=ma, + fr="Création de plusieurs groupes de noeuds"), + GROUP_NO_INIT =SIMP(statut='f',typ=grno, + fr="Création d un seul groupe de noeuds"), + PREFIXE =SIMP(statut='f',typ='TXM' ), + INDEX =SIMP(statut='f',typ='I',max='**'), + GROUP_NO_FIN =SIMP(statut='f',typ=grno), + ), +) ; +#& MODIF COMMANDE DATE 21/05/2007 AUTEUR FERNANDES R.FERNANDES +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater_sdaster, + fr="Définition des paramètres décrivant le comportement d un matériau", + reentrant='f', + UIinfo={"groupes":("Modélisation",)}, + regles=(EXCLUS('ELAS','ELAS_FO','ELAS_FLUI','ELAS_ISTR','ELAS_ISTR_FO','ELAS_ORTH', + 'ELAS_ORTH_FO','ELAS_COQUE','ELAS_COQUE_FO', + 'ELAS_HYPER','ELAS_2NDG',), + EXCLUS('THER','THER_FO','THER_ORTH','THER_NL'), + EXCLUS('ECRO_LINE','ECRO_LINE_FO','ECRO_PUIS'), + EXCLUS('TAHERI','TAHERI_FO'), + EXCLUS('ROUSSELIER','ROUSSELIER_FO'), + EXCLUS('VISC_SINH','VISC_SINH_FO'), + PRESENT_PRESENT('ROUSSELIER','TRACTION'), + PRESENT_PRESENT('ROUSSELIER_FO','TRACTION'), + EXCLUS('CIN1_CHAB','CIN1_CHAB_FO'), + EXCLUS('CIN2_CHAB','CIN2_CHAB_FO'), + EXCLUS('VISCOCHAB','VISCOCHAB_FO'), + EXCLUS('LEMAITRE','LEMAITRE_FO','ZIRC_CYRA2','ZIRC_EPRI','VISC_IRRA_LOG', + 'LEMA_SEUIL','LEMA_SEUIL_FO','LEMAITRE_IRRA','LMARC_IRRA',), + EXCLUS('LMARC','LMARC_FO'), + EXCLUS('VMIS_POUTRE','VMIS_POUTRE_FO'), + EXCLUS('VENDOCHAB','VENDOCHAB_FO'), + PRESENT_PRESENT('BPEL_ACIER','ELAS'), + EXCLUS('RCCM','RCCM_FO'), + EXCLUS('WEIBULL','WEIBULL_FO'), + PRESENT_PRESENT('BARCELONE','CAM_CLAY','ELAS'), + PRESENT_PRESENT('CAM_CLAY','ELAS'), + PRESENT_PRESENT('LAIGLE','ELAS'), + PRESENT_PRESENT('DRUCK_PRAGER','ELAS'), + PRESENT_PRESENT('HOEK_BROWN','ELAS'), + EXCLUS('MAZARS','MAZARS_FO'), + PRESENT_PRESENT('BAZANT_FD','ELAS_FO'), + PRESENT_PRESENT('JOINT_BA','ELAS'), + PRESENT_PRESENT('CABLE','ELAS'), + EXCLUS('GLRC_DAMAGE','GLRC_DM'), + ), + MATER =SIMP(statut='f',typ=mater_sdaster), +# +# comportement élastique +# + ELAS =FACT(statut='f', + E =SIMP(statut='o',typ='R',val_min=0.E+0), + NU =SIMP(statut='o',typ='R',val_min=-1.E+0,val_max=0.5E+0), + RHO =SIMP(statut='f',typ='R'), + ALPHA =SIMP(statut='f',typ='R'), + AMOR_ALPHA =SIMP(statut='f',typ='R'), + AMOR_BETA =SIMP(statut='f',typ='R'), + AMOR_HYST =SIMP(statut='f',typ='R'), ), - TAHERI_FO =FACT(statut='f', - R_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ALPHA =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - M =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - A =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - B =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C1 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_INF =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - S =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP",) ), + ELAS_FO =FACT(statut='f', + regles=(PRESENT_PRESENT('ALPHA','TEMP_DEF_ALPHA'),), + E =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + NU =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + RHO =SIMP(statut='f',typ='R'), + TEMP_DEF_ALPHA =SIMP(statut='f',typ='R'), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.), + ALPHA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + AMOR_ALPHA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + AMOR_BETA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + AMOR_HYST =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + K_DESSIC =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + B_ENDOGE =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + FONC_DESORP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP","INST","HYDR","SECH","NEUT1","NEUT2",) ), ), - ROUSSELIER =FACT(statut='f', - D =SIMP(statut='o',typ='R'), - SIGM_1 =SIMP(statut='o',typ='R'), - PORO_INIT =SIMP(statut='o',typ='R'), - PORO_CRIT =SIMP(statut='f',typ='R',defaut= 1. ), - PORO_ACCE =SIMP(statut='f',typ='R',defaut= 1. ), - PORO_LIMI =SIMP(statut='f',typ='R',defaut= 0.999 ), - D_SIGM_EPSI_NORM=SIMP(statut='f',typ='R',defaut= 1. ), - AN =SIMP(statut='f',typ='R',defaut= 0. ), - DP_MAXI =SIMP(statut='f',typ='R',defaut= 0.1), - BETA =SIMP(statut='f',typ='R',defaut=0.85), + ELAS_FLUI =FACT(statut='f', + E =SIMP(statut='o',typ='R'), + NU =SIMP(statut='o',typ='R'), + RHO =SIMP(statut='o',typ='R'), + PROF_RHO_F_INT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + PROF_RHO_F_EXT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + COEF_MASS_AJOU =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("ABSC",) ), ), - ROUSSELIER_FO =FACT(statut='f', - D =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_1 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - PORO_INIT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - PORO_CRIT =SIMP(statut='f',typ='R',defaut= 1. ), - PORO_ACCE =SIMP(statut='f',typ='R',defaut= 1. ), - PORO_LIMI =SIMP(statut='f',typ='R',defaut= 0.999 ), - D_SIGM_EPSI_NORM=SIMP(statut='f',typ='R',defaut= 1. ), - AN =SIMP(statut='f',typ='R',defaut= 0. ), - DP_MAXI =SIMP(statut='f',typ='R',defaut= 0.1), - BETA =SIMP(statut='f',typ='R',defaut=0.85), - VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP",) ), + ELAS_ISTR =FACT(statut='f', + E_L =SIMP(statut='o',typ='R'), + E_N =SIMP(statut='o',typ='R'), + NU_LT =SIMP(statut='o',typ='R'), + NU_LN =SIMP(statut='o',typ='R'), + G_LN =SIMP(statut='o',typ='R'), + RHO =SIMP(statut='f',typ='R'), + ALPHA_L =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + ALPHA_N =SIMP(statut='f',typ='R',defaut= 0.E+0 ), ), - VISC_SINH =FACT(statut='f', - SIGM_0 =SIMP(statut='o',typ='R'), - EPSI_0 =SIMP(statut='o',typ='R'), - M =SIMP(statut='o',typ='R'), + ELAS_ISTR_FO =FACT(statut='f', + regles=( + PRESENT_PRESENT('ALPHA_L','TEMP_DEF_ALPHA'), + PRESENT_PRESENT('ALPHA_N','TEMP_DEF_ALPHA'), + ), + E_L =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + E_N =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + NU_LT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + NU_LN =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + G_LN =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + RHO =SIMP(statut='f',typ='R'), + TEMP_DEF_ALPHA =SIMP(statut='f',typ='R'), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.), + ALPHA_L =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + ALPHA_N =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP","INST")), ), - VISC_SINH_FO =FACT(statut='f', - SIGM_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - EPSI_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - M =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP",) ), - ), - CIN1_CHAB =FACT(statut='f', - R_0 =SIMP(statut='o',typ='R'), - R_I =SIMP(statut='f',typ='R'), - B =SIMP(statut='f',typ='R',defaut= 0.0E+0), - C_I =SIMP(statut='o',typ='R'), - K =SIMP(statut='f',typ='R',defaut= 1.0E+0), - W =SIMP(statut='f',typ='R',defaut= 0.0E+0), - G_0 =SIMP(statut='o',typ='R'), - A_I =SIMP(statut='f',typ='R',defaut= 1.0E+0), + ELAS_ORTH =FACT(statut='f', + E_L =SIMP(statut='o',typ='R'), + E_T =SIMP(statut='o',typ='R'), + E_N =SIMP(statut='f',typ='R'), + NU_LT =SIMP(statut='o',typ='R'), + NU_LN =SIMP(statut='f',typ='R'), + NU_TN =SIMP(statut='f',typ='R'), + G_LT =SIMP(statut='o',typ='R'), + G_LN =SIMP(statut='f',typ='R'), + G_TN =SIMP(statut='f',typ='R'), + RHO =SIMP(statut='f',typ='R'), + ALPHA_L =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + ALPHA_T =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + ALPHA_N =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + XT =SIMP(statut='f',typ='R',defaut= 1. ), + XC =SIMP(statut='f',typ='R',defaut= 1. ), + YT =SIMP(statut='f',typ='R',defaut= 1. ), + YC =SIMP(statut='f',typ='R',defaut= 1. ), + S_LT =SIMP(statut='f',typ='R',defaut= 1. ), + AMOR_ALPHA =SIMP(statut='f',typ='R'), + AMOR_BETA =SIMP(statut='f',typ='R'), + AMOR_HYST =SIMP(statut='f',typ='R'), ), - CIN1_CHAB_FO =FACT(statut='f', - R_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - R_I =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - B =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C_I =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - K =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - W =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - G_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - A_I =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP",)), + ELAS_ORTH_FO =FACT(statut='f', + regles=( + PRESENT_PRESENT('ALPHA_L','TEMP_DEF_ALPHA'), + PRESENT_PRESENT('ALPHA_N','TEMP_DEF_ALPHA'), + PRESENT_PRESENT('ALPHA_T','TEMP_DEF_ALPHA'), + ), + E_L =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + E_T =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + E_N =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + NU_LT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + NU_LN =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + NU_TN =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + G_LT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + G_LN =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + G_TN =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + RHO =SIMP(statut='f',typ='R'), + TEMP_DEF_ALPHA =SIMP(statut='f',typ='R'), + PRECISION =SIMP(statut='f',typ='R',defaut= 1. ), + ALPHA_L =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + ALPHA_T =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + ALPHA_N =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP","INST",) ), + AMOR_ALPHA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + AMOR_BETA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + AMOR_HYST =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), ), - CIN2_CHAB =FACT(statut='f', - R_0 =SIMP(statut='o',typ='R'), - R_I =SIMP(statut='f',typ='R'), - B =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - C1_I =SIMP(statut='o',typ='R'), - C2_I =SIMP(statut='o',typ='R'), - K =SIMP(statut='f',typ='R',defaut= 1.), - W =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - G1_0 =SIMP(statut='o',typ='R'), - G2_0 =SIMP(statut='o',typ='R'), - A_I =SIMP(statut='f',typ='R',defaut= 1.E+0 ), + ELAS_HYPER =FACT(statut='f', + regles=(UN_PARMI('K','NU'),), + C10 =SIMP(statut='f',typ='R',defaut=0.0), + C01 =SIMP(statut='o',typ='R'), + C20 =SIMP(statut='f',typ='R',defaut=0.0), + K =SIMP(statut='f',typ='R'), + RHO =SIMP(statut='f',typ='R',defaut=0.0), + NU =SIMP(statut='f',typ='R',val_min=-1.E+0,val_max=0.5E+0), ), - CIN2_CHAB_FO =FACT(statut='f', - R_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - R_I =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - B =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C1_I =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C2_I =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - K =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - W =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - G1_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - G2_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - A_I =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + ELAS_COQUE =FACT(statut='f', + regles=(EXCLUS('MEMB_L','M_LLLL',), + PRESENT_PRESENT('MEMB_L','MEMB_LT', 'MEMB_T','MEMB_G_LT','FLEX_L','FLEX_LT', + 'FLEX_T','FLEX_G_LT','CISA_L','CISA_T',), + PRESENT_PRESENT('M_LLLL','M_LLTT','M_LLLT','M_TTTT','M_TTLT','M_LTLT','F_LLLL', + 'F_LLTT','F_LLLT','F_TTTT','F_TTLT','F_LTLT','MF_LLLL', + 'MF_LLTT','MF_LLLT','MF_TTTT','MF_TTLT','MF_LTLT','MC_LLLZ', + 'MC_LLTZ','MC_TTLZ','MC_TTTZ','MC_LTLZ','MC_LTTZ','FC_LLLZ', + 'FC_LLTZ','FC_TTLZ','FC_TTTZ','FC_LTLZ','FC_LTTZ','C_LZLZ', + 'C_LZTZ','C_TZTZ'),), + MEMB_L =SIMP(statut='f',typ='R'), + MEMB_LT =SIMP(statut='f',typ='R'), + MEMB_T =SIMP(statut='f',typ='R'), + MEMB_G_LT =SIMP(statut='f',typ='R'), + FLEX_L =SIMP(statut='f',typ='R'), + FLEX_LT =SIMP(statut='f',typ='R'), + FLEX_T =SIMP(statut='f',typ='R'), + FLEX_G_LT =SIMP(statut='f',typ='R'), + CISA_L =SIMP(statut='f',typ='R'), + CISA_T =SIMP(statut='f',typ='R'), + M_LLLL =SIMP(statut='f',typ='R'), + M_LLTT =SIMP(statut='f',typ='R'), + M_LLLT =SIMP(statut='f',typ='R'), + M_TTTT =SIMP(statut='f',typ='R'), + M_TTLT =SIMP(statut='f',typ='R'), + M_LTLT =SIMP(statut='f',typ='R'), + F_LLLL =SIMP(statut='f',typ='R'), + F_LLTT =SIMP(statut='f',typ='R'), + F_LLLT =SIMP(statut='f',typ='R'), + F_TTTT =SIMP(statut='f',typ='R'), + F_TTLT =SIMP(statut='f',typ='R'), + F_LTLT =SIMP(statut='f',typ='R'), + MF_LLLL =SIMP(statut='f',typ='R'), + MF_LLTT =SIMP(statut='f',typ='R'), + MF_LLLT =SIMP(statut='f',typ='R'), + MF_TTTT =SIMP(statut='f',typ='R'), + MF_TTLT =SIMP(statut='f',typ='R'), + MF_LTLT =SIMP(statut='f',typ='R'), + MC_LLLZ =SIMP(statut='f',typ='R'), + MC_LLTZ =SIMP(statut='f',typ='R'), + MC_TTLZ =SIMP(statut='f',typ='R'), + MC_TTTZ =SIMP(statut='f',typ='R'), + MC_LTLZ =SIMP(statut='f',typ='R'), + MC_LTTZ =SIMP(statut='f',typ='R'), + FC_LLLZ =SIMP(statut='f',typ='R'), + FC_LLTZ =SIMP(statut='f',typ='R'), + FC_TTLZ =SIMP(statut='f',typ='R'), + FC_TTTZ =SIMP(statut='f',typ='R'), + FC_LTLZ =SIMP(statut='f',typ='R'), + FC_LTTZ =SIMP(statut='f',typ='R'), + C_LZLZ =SIMP(statut='f',typ='R'), + C_LZTZ =SIMP(statut='f',typ='R'), + C_TZTZ =SIMP(statut='f',typ='R'), + RHO =SIMP(statut='f',typ='R'), + ALPHA =SIMP(statut='f',typ='R'), + ), + ELAS_COQUE_FO =FACT(statut='f', + regles=(EXCLUS('MEMB_L','M_LLLL',), + PRESENT_PRESENT('MEMB_L','MEMB_LT','MEMB_T','MEMB_G_LT','FLEX_L','FLEX_LT', + 'FLEX_T','FLEX_G_LT','CISA_L','CISA_T',), + PRESENT_PRESENT('M_LLLL','M_LLTT','M_LLLT','M_TTTT','M_TTLT','M_LTLT','F_LLLL', + 'F_LLTT','F_LLLT','F_TTTT','F_TTLT','F_LTLT','MF_LLLL','MF_LLTT', + 'MF_LLLT','MF_TTTT','MF_TTLT','MF_LTLT','MC_LLLZ','MC_LLTZ', + 'MC_TTLZ','MC_TTTZ','MC_LTLZ','MC_LTTZ','FC_LLLZ','FC_LLTZ', + 'FC_TTLZ','FC_TTTZ','FC_LTLZ','FC_LTTZ','C_LZLZ','C_LZTZ','C_TZTZ'),), + MEMB_L =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + MEMB_LT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + MEMB_T =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + MEMB_G_LT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + FLEX_L =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + FLEX_LT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + FLEX_T =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + FLEX_G_LT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + CISA_L =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + CISA_T =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + M_LLLL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + M_LLTT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + M_LLLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + M_TTTT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + M_TTLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + M_LTLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + F_LLLL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + F_LLTT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + F_LLLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + F_TTTT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + F_TTLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + F_LTLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + MF_LLLL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + MF_LLTT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + MF_LLLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + MF_TTTT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + MF_TTLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + MF_LTLT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + MC_LLLZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + MC_LLTZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + MC_TTLZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + MC_TTTZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + MC_LTLZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + MC_LTTZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + FC_LLLZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + FC_LLTZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + FC_TTLZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + FC_TTTZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + FC_LTLZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + FC_LTTZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + C_LZLZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + C_LZTZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + C_TZTZ =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + RHO =SIMP(statut='f',typ='R'), + ALPHA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP","INST") ), + ), + ELAS_2NDG =FACT(statut='f', + A1 =SIMP(statut='o',typ='R'), + A2 =SIMP(statut='f',typ='R'), + A3 =SIMP(statut='f',typ='R'), + A4 =SIMP(statut='f',typ='R'), + A5 =SIMP(statut='f',typ='R'), + ), + APPUI_ELAS =FACT(statut='f', + E_N =SIMP(statut='o',typ='R'), + E_TAN =SIMP(statut='f',typ='R',defaut= 0.E+0), + ), + CABLE =FACT(statut='f', + EC_SUR_E =SIMP(statut='f',typ='R',defaut= 1.E-4 ), + ), +# +# comportement mécanique non linéaire +# + TRACTION =FACT(statut='f', + SIGM =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("EPSI","TEMP","HYDR","SECH",) ), + ), + ECRO_LINE =FACT(statut='f', + D_SIGM_EPSI =SIMP(statut='o',typ='R',), + SY =SIMP(statut='o',typ='R',), + ), + ECRO_LINE_FO =FACT(statut='f', + D_SIGM_EPSI =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + SY =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP",) ), ), - VISCOCHAB =FACT(statut='f', - K_0 =SIMP(statut='o',typ='R'), - A_K =SIMP(statut='o',typ='R'), - A_R =SIMP(statut='o',typ='R'), - K =SIMP(statut='o',typ='R'), - N =SIMP(statut='o',typ='R'), - ALP =SIMP(statut='o',typ='R'), - B =SIMP(statut='o',typ='R'), - M_R =SIMP(statut='o',typ='R'), - G_R =SIMP(statut='o',typ='R'), - MU =SIMP(statut='o',typ='R'), - Q_M =SIMP(statut='o',typ='R'), - Q_0 =SIMP(statut='o',typ='R'), - QR_0 =SIMP(statut='o',typ='R'), - ETA =SIMP(statut='o',typ='R'), - C1 =SIMP(statut='o',typ='R'), - M_1 =SIMP(statut='o',typ='R'), - D1 =SIMP(statut='o',typ='R'), - G_X1 =SIMP(statut='o',typ='R'), - G1_0 =SIMP(statut='o',typ='R'), - C2 =SIMP(statut='o',typ='R'), - M_2 =SIMP(statut='o',typ='R'), - D2 =SIMP(statut='o',typ='R'), - G_X2 =SIMP(statut='o',typ='R'), - G2_0 =SIMP(statut='o',typ='R'), - A_I =SIMP(statut='o',typ='R'), + ECRO_PUIS =FACT(statut='f', + SY =SIMP(statut='o',typ='R',), + A_PUIS =SIMP(statut='o',typ='R',val_min=0.0), + N_PUIS =SIMP(statut='o',typ='R',val_min=1.E-6), ), - VISCOCHAB_FO =FACT(statut='f', - K_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - A_K =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - A_R =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - K =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - N =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ALP =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - B =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - M_R =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - G_R =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - MU =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - Q_M =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - Q_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - QR_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ETA =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C1 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - M_1 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - D1 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - G_X1 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - G1_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - C2 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - M_2 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - D2 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - G_X2 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - G2_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - A_I =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + ECRO_PUIS_FO =FACT(statut='f', + SY =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + A_PUIS =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + N_PUIS =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP",) ), ), - LEMAITRE =FACT(statut='f', - N =SIMP(statut='o',typ='R'), - UN_SUR_K =SIMP(statut='o',typ='R'), - UN_SUR_M =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + BETON_ECRO_LINE =FACT(statut='f', + D_SIGM_EPSI =SIMP(statut='o',typ='R'), + SYT =SIMP(statut='o',typ='R'), + SYC =SIMP(statut='f',typ='R'), ), - LEMAITRE_IRRA =FACT(statut='f', - N =SIMP(statut='o',typ='R'), - UN_SUR_K =SIMP(statut='o',typ='R'), - UN_SUR_M =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - QSR_K =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - BETA =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - PHI_ZERO =SIMP(statut='f',typ='R',defaut= 1.E+20), - L =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - GRAN_A =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - GRAN_B =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - GRAN_S =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + BETON_REGLE_PR =FACT(statut='f', + D_SIGM_EPSI =SIMP(statut='o',typ='R'), + SYT =SIMP(statut='o',typ='R'), + SYC =SIMP(statut='f',typ='R'), + EPSC =SIMP(statut='f',typ='R'), + N =SIMP(statut='f',typ='R'), ), - LMARC_IRRA =FACT(statut='f', - DE_0 =SIMP(statut='o',typ='R'), - R_0 =SIMP(statut='o',typ='R'), - N =SIMP(statut='o',typ='R'), - K =SIMP(statut='o',typ='R'), - Y_I =SIMP(statut='o',typ='R'), - Y_0 =SIMP(statut='o',typ='R'), - B =SIMP(statut='o',typ='R'), + ENDO_ORTH_BETON =FACT(statut='f', + ALPHA =SIMP(statut='f',typ='R',defaut=0.9), + K0 =SIMP(statut='o',typ='R'), + K1 =SIMP(statut='o',typ='R'), + K2 =SIMP(statut='f',typ='R',defaut=7.E-4), + ECROB =SIMP(statut='o',typ='R'), + ECROD =SIMP(statut='o',typ='R'), + ), + PRAGER =FACT(statut='f', + C =SIMP(statut='o',typ='R'), + ), + PRAGER_FO =FACT(statut='f', + C =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP",) ), + ), + ECRO_FLEJOU =FACT(statut='f', + EP =SIMP(statut='o',typ='R'), + SY =SIMP(statut='o',typ='R'), + SU =SIMP(statut='o',typ='R'), + PUISS =SIMP(statut='o',typ='R'), + ), + TAHERI =FACT(statut='f', + R_0 =SIMP(statut='o',typ='R'), + ALPHA =SIMP(statut='o',typ='R'), + M =SIMP(statut='o',typ='R'), + A =SIMP(statut='o',typ='R'), + B =SIMP(statut='o',typ='R'), + C1 =SIMP(statut='o',typ='R'), + C_INF =SIMP(statut='o',typ='R'), + S =SIMP(statut='o',typ='R'), + ), + TAHERI_FO =FACT(statut='f', + R_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + ALPHA =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + M =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + A =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + B =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + C1 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + C_INF =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + S =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP",) ), + ), + ROUSSELIER =FACT(statut='f', + D =SIMP(statut='o',typ='R'), + SIGM_1 =SIMP(statut='o',typ='R'), + PORO_INIT =SIMP(statut='o',typ='R'), + PORO_CRIT =SIMP(statut='f',typ='R',defaut= 1. ), + PORO_ACCE =SIMP(statut='f',typ='R',defaut= 1. ), + PORO_LIMI =SIMP(statut='f',typ='R',defaut= 0.999 ), + D_SIGM_EPSI_NORM=SIMP(statut='f',typ='R',defaut= 1. ), + AN =SIMP(statut='f',typ='R',defaut= 0. ), + DP_MAXI =SIMP(statut='f',typ='R',defaut= 0.1), + BETA =SIMP(statut='f',typ='R',defaut=0.85), + ), + ROUSSELIER_FO =FACT(statut='f', + D =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + SIGM_1 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + PORO_INIT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + PORO_CRIT =SIMP(statut='f',typ='R',defaut= 1. ), + PORO_ACCE =SIMP(statut='f',typ='R',defaut= 1. ), + PORO_LIMI =SIMP(statut='f',typ='R',defaut= 0.999 ), + D_SIGM_EPSI_NORM=SIMP(statut='f',typ='R',defaut= 1. ), + AN =SIMP(statut='f',typ='R',defaut= 0. ), + DP_MAXI =SIMP(statut='f',typ='R',defaut= 0.1), + BETA =SIMP(statut='f',typ='R',defaut=0.85), + VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP",) ), + ), + VISC_SINH =FACT(statut='f', + SIGM_0 =SIMP(statut='o',typ='R'), + EPSI_0 =SIMP(statut='o',typ='R'), + M =SIMP(statut='o',typ='R'), + ), + VISC_SINH_FO =FACT(statut='f', + SIGM_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + EPSI_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + M =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP",) ), + ), + CIN1_CHAB =FACT(statut='f', + R_0 =SIMP(statut='o',typ='R'), + R_I =SIMP(statut='f',typ='R'), + B =SIMP(statut='f',typ='R',defaut= 0.0E+0), + C_I =SIMP(statut='o',typ='R'), + K =SIMP(statut='f',typ='R',defaut= 1.0E+0), + W =SIMP(statut='f',typ='R',defaut= 0.0E+0), + G_0 =SIMP(statut='o',typ='R'), + A_I =SIMP(statut='f',typ='R',defaut= 1.0E+0), + ), + CIN1_CHAB_FO =FACT(statut='f', + R_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + R_I =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + B =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + C_I =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + K =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + W =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + G_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + A_I =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP",)), + ), + CIN2_CHAB =FACT(statut='f', + R_0 =SIMP(statut='o',typ='R'), + R_I =SIMP(statut='f',typ='R'), + B =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + C1_I =SIMP(statut='o',typ='R'), + C2_I =SIMP(statut='o',typ='R'), + K =SIMP(statut='f',typ='R',defaut= 1.), + W =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + G1_0 =SIMP(statut='o',typ='R'), + G2_0 =SIMP(statut='o',typ='R'), + A_I =SIMP(statut='f',typ='R',defaut= 1.E+0 ), + ), + CIN2_CHAB_FO =FACT(statut='f', + R_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + R_I =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + B =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + C1_I =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + C2_I =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + K =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + W =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + G1_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + G2_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + A_I =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP",) ), + ), + VISCOCHAB =FACT(statut='f', + K_0 =SIMP(statut='o',typ='R'), + A_K =SIMP(statut='o',typ='R'), + A_R =SIMP(statut='o',typ='R'), + K =SIMP(statut='o',typ='R'), + N =SIMP(statut='o',typ='R'), + ALP =SIMP(statut='o',typ='R'), + B =SIMP(statut='o',typ='R'), + M_R =SIMP(statut='o',typ='R'), + G_R =SIMP(statut='o',typ='R'), + MU =SIMP(statut='o',typ='R'), + Q_M =SIMP(statut='o',typ='R'), + Q_0 =SIMP(statut='o',typ='R'), + QR_0 =SIMP(statut='o',typ='R'), + ETA =SIMP(statut='o',typ='R'), + C1 =SIMP(statut='o',typ='R'), + M_1 =SIMP(statut='o',typ='R'), + D1 =SIMP(statut='o',typ='R'), + G_X1 =SIMP(statut='o',typ='R'), + G1_0 =SIMP(statut='o',typ='R'), + C2 =SIMP(statut='o',typ='R'), + M_2 =SIMP(statut='o',typ='R'), + D2 =SIMP(statut='o',typ='R'), + G_X2 =SIMP(statut='o',typ='R'), + G2_0 =SIMP(statut='o',typ='R'), + A_I =SIMP(statut='o',typ='R'), + ), + VISCOCHAB_FO =FACT(statut='f', + K_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + A_K =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + A_R =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + K =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + N =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + ALP =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + B =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + M_R =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + G_R =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + MU =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + Q_M =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + Q_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + QR_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + ETA =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + C1 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + M_1 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + D1 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + G_X1 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + G1_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + C2 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + M_2 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + D2 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + G_X2 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + G2_0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + A_I =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP",) ), + ), + LEMAITRE =FACT(statut='f', + N =SIMP(statut='o',typ='R'), + UN_SUR_K =SIMP(statut='o',typ='R'), + UN_SUR_M =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + ), + LEMAITRE_IRRA =FACT(statut='f', + N =SIMP(statut='o',typ='R'), + UN_SUR_K =SIMP(statut='o',typ='R'), + UN_SUR_M =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + QSR_K =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + BETA =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + PHI_ZERO =SIMP(statut='f',typ='R',defaut= 1.E+20), + L =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + GRAN_A =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + GRAN_B =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + GRAN_S =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + ), + LMARC_IRRA =FACT(statut='f', + DE_0 =SIMP(statut='o',typ='R'), + R_0 =SIMP(statut='o',typ='R'), + N =SIMP(statut='o',typ='R'), + K =SIMP(statut='o',typ='R'), + Y_I =SIMP(statut='o',typ='R'), + Y_0 =SIMP(statut='o',typ='R'), + B =SIMP(statut='o',typ='R'), A_0 =SIMP(statut='o',typ='R'), RM =SIMP(statut='o',typ='R'), M =SIMP(statut='o',typ='R'), @@ -9090,19 +9746,21 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater_sdaster, S =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP",) ), ), - IRRAD3M=FACT(statut='f', - R02 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - EPSI_U =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - RM =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - AI0 =SIMP(statut='o',typ='R',val_min=0.0), - ZETA =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ETAI_S =SIMP(statut='o',typ='R',val_min=0.0), - R =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ALPHA =SIMP(statut='o',typ='R',val_min=0.0), - PHI0 =SIMP(statut='o',typ='R',val_min=0.0), - KAPPA =SIMP(statut='f',typ='R',val_min=0.0,defaut=0.8,val_max=1.0), - VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP","IRRA") ), - ), + IRRAD3M=FACT(statut='f', + R02 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + EPSI_U =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + RM =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + AI0 =SIMP(statut='o',typ='R',val_min=0.0), + ZETA_F =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + ETAI_S =SIMP(statut='o',typ='R',val_min=0.0), + RG0 =SIMP(statut='o',typ='R',val_min=0.0), + ALPHA =SIMP(statut='o',typ='R',val_min=0.0), + PHI0 =SIMP(statut='o',typ='R',val_min=0.0), + KAPPA =SIMP(statut='f',typ='R',val_min=0.0,defaut=0.8,val_max=1.0), + ZETA_G =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + TOLER_ET =SIMP(statut='c',typ='R',val_min=0.1E-2,val_max=10.0E-02,defaut=1.0E-02 ), + VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP","IRRA") ), + ), ZIRC_EPRI =FACT(statut='f', FLUX_PHI =SIMP(statut='o',typ='R'), R_P =SIMP(statut='o',typ='R'), @@ -11035,8 +11693,9 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater_sdaster, VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP",) ), ), NON_LOCAL =FACT(statut='f', - regles=(AU_MOINS_UN('LONG_CARA','C_GONF'),), + regles=(AU_MOINS_UN('LONG_CARA','C_GONF','PENA_LAGR',),), LONG_CARA =SIMP(statut='f',typ='R'), + PENA_LAGR =SIMP(statut='f',typ='R',defaut= 1.0E3), C_GONF =SIMP(statut='f',typ='R'), COEF_RIGI_MINI =SIMP(statut='f',typ='R'), ), @@ -11422,44 +12081,203 @@ DEFI_PARA_SENSI=OPER(nom="DEFI_PARA_SENSI",op= 2,sd_prod=para_sensi, ang="Value of the parameter"), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 10/10/2006 AUTEUR MCOURTOI M.COURTOIS +#& MODIF COMMANDE DATE 30/08/2005 AUTEUR ASSIRE A.ASSIRE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -DEFI_SPEC_TURB=OPER(nom="DEFI_SPEC_TURB",op= 145,sd_prod=spectre_sdaster, - fr="Définition d'un spectre d'excitation turbulente", - reentrant='n', - UIinfo={"groupes":("Modélisation",)}, - regles=(UN_PARMI('SPEC_LONG_COR_1','SPEC_LONG_COR_2','SPEC_LONG_COR_3', - 'SPEC_LONG_COR_4','SPEC_CORR_CONV_1','SPEC_CORR_CONV_2', - 'SPEC_FONC_FORME','SPEC_EXCI_POINT'),), - SPEC_LONG_COR_1 =FACT(statut='f', - LONG_COR =SIMP(statut='o',typ='R' ), - PROF_VITE_FLUI =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - VISC_CINE =SIMP(statut='o',typ='R' ), - ), - SPEC_LONG_COR_2 =FACT(statut='f', - regles=(ENSEMBLE('FREQ_COUP','PHI0','BETA' ),), - LONG_COR =SIMP(statut='o',typ='R' ), - PROF_VITE_FLUI =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - FREQ_COUP =SIMP(statut='f',typ='R',defaut= 0.1 ), - PHI0 =SIMP(statut='f',typ='R',defaut= 1.5E-3 ), - BETA =SIMP(statut='f',typ='R',defaut= 2.7 ), - ), +# RESPONSABLE ASSIRE A.ASSIRE + +from Macro.defi_part_feti_ops import defi_part_feti_ops + +DEFI_PART_FETI=MACRO(nom="DEFI_PART_FETI",op=defi_part_feti_ops,sd_prod=sd_feti_sdaster, + reentrant='n',UIinfo={"groupe":("Maillage",)}, + fr="Creation partitionnement en sous-domaines pour FETI", + regles=(UN_PARMI('MAILLAGE','MODELE'),), + MAILLAGE =SIMP(statut='f',typ=maillage_sdaster), + MODELE =SIMP(statut='f',typ=modele_sdaster), + NB_PART =SIMP(statut='o',typ='I',val_min=2), + EXCIT =FACT(statut='f',max='**', + CHARGE =SIMP(statut='f',typ=(char_meca,char_cine_meca)),), + + # Methode de partitionnement + METHODE =SIMP(statut='f',typ='TXM',into=("PMETIS","SCOTCH","KMETIS",), defaut="SCOTCH" ), + + LOGICIEL =SIMP(statut='f',typ='TXM'), + + # Corrige les problemes possibles de non-connexite des sous-domaines + CORRECTION_CONNEX =SIMP(statut='f',typ='TXM',defaut='NON',into=('OUI','NON')), + + # Permet de grouper des mailles dans un meme sous-doamine + GROUPAGE =FACT(statut='f',max='**', + GROUP_MA =SIMP(statut='o',typ=grma,), + ), + # Permet d'appliquer des poids sur certaines mailles + POIDS_MAILLES =FACT(statut='f',max='**', + GROUP_MA =SIMP(statut='o',typ=grma,), + POIDS =SIMP(statut='f',typ='I',val_min=2), + ), + # Prefixe pour le nom des group_ma definissant les sous-domaines + NOM_GROUP_MA =SIMP(statut='f',typ='TXM',defaut='SD' ), + + # Traiter les mailles de bords (elles sont enlevees du graphe puis reinjectees) + TRAITER_BORDS =SIMP(statut='f',typ='TXM',defaut='OUI',into=('OUI','NON') ), + + # Si le mot-clé suivant est renseigné, crée de nouveau group_ma a partir des bords + # Note : le calcul FETI sera impossible + b_traiter_bords =BLOC(condition="TRAITER_BORDS == 'OUI'", fr="Crée t on des nouveaux group_ma", + NOM_GROUP_MA_BORD =SIMP(statut='f',typ='TXM'), + ), + + INFO =SIMP(statut='f',typ='I',into=(1, 2), defaut=1), +); +#& MODIF COMMANDE DATE 22/02/2005 AUTEUR DURAND C.DURAND +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE ASSIRE A.ASSIRE + +DEFI_PART_OPS=OPER(nom="DEFI_PART_OPS",op=21,sd_prod=sd_feti_sdaster, + fr="Creation partitionnement en sous-domaines pour FETI", + docu="U4.23.05",reentrant='n', + UIinfo={"groupes":("Résolution",)}, + MODELE =SIMP(statut='o',typ=(modele_sdaster) ), + MAILLAGE =SIMP(statut='f',typ=(maillage_sdaster) ), + NOM =SIMP(statut='f',typ='TXM',defaut='SD'), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2,3,4) ), + DEFI =FACT(statut='f',max='**', + GROUP_MA =SIMP(statut='o',typ=grma), + GROUP_MA_BORD =SIMP(statut='f',typ=grma), + ), + EXCIT =FACT(statut='f',max='**', + CHARGE =SIMP(statut='f',typ=(char_meca,char_cine_meca)), + ), +); +#& MODIF COMMANDE DATE 26/03/2007 AUTEUR ASSIRE A.ASSIRE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2005 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE ASSIRE A.ASSIRE + +DEFI_PART_PA_OPS=PROC(nom="DEFI_PART_PA_OPS",op=29, + fr="Creation partitionnement en sous-domaines pour FETI", + docu="U4.00.00", + UIinfo={"groupes":("Résolution",)}, + MAILLAGE =SIMP(statut='o',typ=(maillage_sdaster,squelette) ), + MODELE =SIMP(statut='f',typ=(modele_sdaster)), + NB_PART =SIMP(statut='o',typ='I',), + + # Methode de partitionnement + METHODE =SIMP(statut='f',typ='TXM',into=("PMETIS","SCOTCH","KMETIS",), defaut="SCOTCH" ), + + LOGICIEL =SIMP(statut='f',typ='TXM'), + + # Corrige les problemes possibles de non-connexite des sous-domaines + CORRECTION_CONNEX =SIMP(statut='f',typ='TXM',defaut='NON',into=('OUI','NON')), + + # Permet de grouper des mailles dans un meme sous-doamine + GROUPAGE =FACT(statut='f',max='**', + GROUP_MA =SIMP(statut='o',typ=grma,), + ), + # Permet d'appliquer des poids sur certaines mailles + POIDS_MAILLES =FACT(statut='f',max='**', + GROUP_MA =SIMP(statut='o',typ=grma,), + POIDS =SIMP(statut='f',typ='I'), + ), + # Prefixe pour le nom des group_ma definissant les sous-domaines + NOM_GROUP_MA =SIMP(statut='f',typ='TXM',defaut='SD' ), + + # Traiter les mailles de bords (elles sont enlevees du graphe puis reinjectees) + TRAITER_BORDS =SIMP(statut='f',typ='TXM',defaut='OUI',into=('OUI','NON') ), + + # Si le mot-clé suivant est renseigné, crée de nouveau group_ma a partir des bords + # Note : le calcul FETI sera impossible + b_traiter_bords =BLOC(condition="TRAITER_BORDS == 'OUI'", fr="Crée t on des nouveaux group_ma", + NOM_GROUP_MA_BORD =SIMP(statut='f',typ='TXM'), + ), + + INFO =SIMP(statut='f',typ='I',into=(1, 2), defaut=1), + +); +#& MODIF COMMANDE DATE 10/10/2006 AUTEUR MCOURTOI M.COURTOIS +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +DEFI_SPEC_TURB=OPER(nom="DEFI_SPEC_TURB",op= 145,sd_prod=spectre_sdaster, + fr="Définition d'un spectre d'excitation turbulente", + reentrant='n', + UIinfo={"groupes":("Modélisation",)}, + regles=(UN_PARMI('SPEC_LONG_COR_1','SPEC_LONG_COR_2','SPEC_LONG_COR_3', + 'SPEC_LONG_COR_4','SPEC_CORR_CONV_1','SPEC_CORR_CONV_2', + 'SPEC_FONC_FORME','SPEC_EXCI_POINT'),), + SPEC_LONG_COR_1 =FACT(statut='f', + LONG_COR =SIMP(statut='o',typ='R' ), + PROF_VITE_FLUI =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), + VISC_CINE =SIMP(statut='o',typ='R' ), + ), + SPEC_LONG_COR_2 =FACT(statut='f', + regles=(ENSEMBLE('FREQ_COUP','PHI0','BETA' ),), + LONG_COR =SIMP(statut='o',typ='R' ), + PROF_VITE_FLUI =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), + FREQ_COUP =SIMP(statut='f',typ='R',defaut= 0.1 ), + PHI0 =SIMP(statut='f',typ='R',defaut= 1.5E-3 ), + BETA =SIMP(statut='f',typ='R',defaut= 2.7 ), + ), SPEC_LONG_COR_3 =FACT(statut='f', regles=(ENSEMBLE('PHI0_1','BETA_1','PHI0_2','BETA_2','FREQ_COUP'),), LONG_COR =SIMP(statut='o',typ='R' ), @@ -11606,48 +12424,6 @@ DEFI_SQUELETTE=OPER(nom="DEFI_SQUELETTE",op= 110,sd_prod=squelette, ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/08/2006 AUTEUR MASSIN P.MASSIN -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2006 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== - -PROPA_XFEM=OPER(nom="PROPA_XFEM",op=10,sd_prod=fiss_xfem,reentrant='n', - UIinfo={"groupes":("Modélisation",)}, - fr="Propagation de fissure avec X-FEM", - - MODELE =SIMP(statut='o',typ=modele_sdaster), - - TABLE =SIMP(statut='o',typ=table_sdaster), - - LOI_PROPA =FACT(statut='o',max=01, - LOI =SIMP(statut='o',typ='TXM',into=("PARIS",),defaut="PARIS"), - b_paris =BLOC( condition = "LOI=='PARIS'", - C =SIMP(statut='o',typ='R',), - M =SIMP(statut='o',typ='R',),), - ), - - RAYON =SIMP(statut='o',typ='R',), - - METHODE =SIMP(statut='f',typ='TXM',into=("SIMPLEXE","UPWIND",),defaut="COEFF_POSITIF"), - -# RUNGE_KUTTA =SIMP(statut='f',typ='I',into=("1","2",),defaut=1), - - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), -) ; #& MODIF COMMANDE DATE 03/01/2006 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -11684,93 +12460,32 @@ DEFI_TRC=OPER(nom="DEFI_TRC",op=94,sd_prod=table_sdaster,reentrant='n', A =SIMP(statut='f',typ='R'), ), ) ; -#& MODIF COMMANDE DATE 13/12/2006 AUTEUR PELLET J.PELLET +#& MODIF COMMANDE DATE 31/10/2006 AUTEUR A3BHHAE H.ANDRIAMBOLOLONA # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== - - -from Macro.macr_ecla_pg_ops import macr_ecla_pg_ops - -def macr_ecla_pg_prod(self,RESULTAT,MAILLAGE,RESU_INIT,**args): - self.type_sdprod(RESULTAT,AsType(RESU_INIT)) - self.type_sdprod(MAILLAGE,maillage_sdaster) - return None - - -MACR_ECLA_PG=MACRO(nom="MACR_ECLA_PG",op=macr_ecla_pg_ops,sd_prod=macr_ecla_pg_prod, reentrant='n', - UIinfo={"groupes":("Post traitements",)}, - fr="Permettre la visualisation des champs aux points de Gauss d'une SD_RESULTAT sans lissage ni interpolation", - - - # SD résultat ,modèle et champs à "éclater" : - RESU_INIT =SIMP(statut='o',typ=resultat_sdaster,fr="RESULTAT à éclater",), - MODELE_INIT =SIMP(statut='o',typ=modele_sdaster,fr="MODELE à éclater"), - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**'), - - # paramètres numériques de la commande : - SHRINK =SIMP(statut='f',typ='R',defaut= 0.9, fr="Facteur de réduction" ), - TAILLE_MIN =SIMP(statut='f',typ='R',defaut= 0.0, fr="Taille minimale d'un coté" ), - - # concepts produits par la commande : - RESULTAT =SIMP(statut='o',typ=CO,fr="SD_RESULTAT résultat de la commande"), - MAILLAGE =SIMP(statut='o',typ=CO,fr="MAILLAGE associé aux cham_no de la SD_RESULTAT"), - - # Sélection éventuelle d'un sous-ensemble des éléments à visualiser : - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - - # Sélection des numéros d'ordre : - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST','LIST_ORDRE'),), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ), - ) -#& MODIF COMMANDE DATE 31/10/2006 AUTEUR A3BHHAE H.ANDRIAMBOLOLONA -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -def depl_interne_prod(DEPL_GLOBAL,**args ): - if AsType(DEPL_GLOBAL) == cham_no_sdaster: return cham_no_sdaster - if AsType(DEPL_GLOBAL) == evol_elas : return evol_elas - if AsType(DEPL_GLOBAL) == dyna_trans : return dyna_trans - if AsType(DEPL_GLOBAL) == dyna_harmo : return dyna_harmo - if AsType(DEPL_GLOBAL) == mode_meca : return mode_meca - if AsType(DEPL_GLOBAL) == base_modale : return base_modale - raise AsException("type de concept resultat non prevu") +def depl_interne_prod(DEPL_GLOBAL,**args ): + if AsType(DEPL_GLOBAL) == cham_no_sdaster: return cham_no_sdaster + if AsType(DEPL_GLOBAL) == evol_elas : return evol_elas + if AsType(DEPL_GLOBAL) == dyna_trans : return dyna_trans + if AsType(DEPL_GLOBAL) == dyna_harmo : return dyna_harmo + if AsType(DEPL_GLOBAL) == mode_meca : return mode_meca + if AsType(DEPL_GLOBAL) == base_modale : return base_modale + raise AsException("type de concept resultat non prevu") DEPL_INTERNE=OPER(nom="DEPL_INTERNE",op=89,sd_prod=depl_interne_prod,reentrant='n', UIinfo={"groupes":("Matrices/vecteurs",)}, @@ -11817,147 +12532,6 @@ DETRUIRE=MACRO(nom="DETRUIRE",op=-7, ALARME =SIMP(statut='f',typ='TXM',into=('OUI','NON'),defaut='OUI',), INFO =SIMP(statut='f',typ='I',into=(1,2),defaut=2, ), ); -#& MODIF COMMANDE DATE 31/10/2006 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2006 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -CALC_G=OPER(nom="CALC_G",op=100,sd_prod=table_sdaster, - fr="Calcul du taux de restitution d'énergie par la méthode theta en thermo-élasticité" - +" et les facteurs d'intensité de contraintes.", - reentrant='f', - UIinfo={"groupes":("Post traitements",)}, - regles=(EXCLUS('COMP_ELAS','COMP_INCR'), - CONCEPT_SENSIBLE("ENSEMBLE"), - REUSE_SENSIBLE(), - DERIVABLE('RESULTAT'), - EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST', - 'TOUT_MODE','NUME_MODE','LIST_MODE','FREQ','LIST_FREQ',),), - - THETA =FACT(statut='o', - THETA =SIMP(statut='f',typ=(theta_geom,cham_no_sdaster),), - FOND_FISS =SIMP(statut='f',typ=fond_fiss,max=1), - FISSURE =SIMP(statut='f',typ=fiss_xfem,max=1), - regles=(EXCLUS('FOND_FISS','FISSURE'),), - b_theta =BLOC(condition="THETA == None",fr="calcul de theta", - regles=(UN_PARMI('R_INF','R_INF_FO'), - EXCLUS('MODULE','MODULE_FO'), - PRESENT_PRESENT('R_INF','R_SUP'), - PRESENT_PRESENT('R_INF_FO','R_SUP_FO'), ), - NUME_FOND =SIMP(statut='f',typ='I',defaut=1), - R_INF =SIMP(statut='f',typ='R'), - R_SUP =SIMP(statut='f',typ='R'), - MODULE =SIMP(statut='f',typ='R'), - DIRE_THETA =SIMP(statut='f',typ=cham_no_sdaster ), - DIRECTION =SIMP(statut='f',typ='R',max='**'), - R_INF_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - R_SUP_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MODULE_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - ), - - RESULTAT =SIMP(statut='o',typ=(evol_elas,evol_noli,dyna_trans,mode_meca),), - - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - TOUT_MODE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_MODE =SIMP(statut='f',typ=listis_sdaster), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - - b_acce_reel =BLOC(condition="(INST != None)or(LIST_INST != None)or(FREQ != None)or(LIST_FREQ != None)", - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-6), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - ), - - EXCIT =FACT(statut='f',max='**', - CHARGE =SIMP(statut='f',typ=(char_meca,char_cine_meca)), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",) ), - ), - SYME_CHAR =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SYME","ANTI","SANS") ), - - COMP_ELAS =FACT(statut='f', - RELATION =SIMP(statut='f',typ='TXM',defaut="ELAS", - into=("ELAS","ELAS_VMIS_LINE","ELAS_VMIS_TRAC") ), - ELAS =SIMP(statut='f',typ='I',defaut=1,into=(1,) ), - ELAS_VMIS_LINE =SIMP(statut='f',typ='I',defaut=1,into=(1,) ), - ELAS_VMIS_TRAC =SIMP(statut='f',typ='I',defaut=1,into=(1,) ), - DEFORMATION =SIMP(statut='f',typ='TXM',defaut="PETIT",into=("PETIT","GREEN") ), - regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), - ), - COMP_INCR =FACT(statut='f', - RELATION =SIMP(statut='f',typ='TXM',defaut="ELAS", - into=("ELAS","VMIS_ISOT_TRAC","VMIS_ISOT_LINE","VMIS_CINE_LINE") ), - ELAS =SIMP(statut='f',typ='I',defaut=1,into=(1,) ), - VMIS_ISOT_TRAC =SIMP(statut='f',typ='I',defaut=2,into=(2,) ), - VMIS_ISOT_LINE =SIMP(statut='f',typ='I',defaut=2,into=(2,) ), - DEFORMATION =SIMP(statut='f',typ='TXM',defaut="PETIT",into=("PETIT","PETIT_REAC") ), - regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), - ), - ETAT_INIT =FACT(statut='f', - SIGM =SIMP(statut='f',typ=cham_elem), - DEPL =SIMP(statut='f',typ=cham_no_sdaster), - ), - - LISSAGE =FACT(statut='d', - DEGRE =SIMP(statut='f',typ='I',defaut=5,into=(0,1,2,3,4,5,6,7) ), - LISSAGE_THETA =SIMP(statut='f',typ='TXM',defaut="LEGENDRE",into=("LEGENDRE","LAGRANGE","LAGRANGE_REGU"),), - LISSAGE_G =SIMP(statut='f',typ='TXM',defaut="LEGENDRE",into=("LEGENDRE","LAGRANGE", - "LAGRANGE_NO_NO","LAGRANGE_REGU"),), - ), - - OPTION =SIMP(statut='o',typ='TXM',max=1,defaut='CALC_G', - into=("CALC_G","CALC_G_GLOB","CALC_K_G","K_G_MODA","G_MAX","G_MAX_GLOB","G_BILI", - "G_BILI_GLOB","G_LAGR","G_LAGR_GLOB","CALC_K_MAX"),), - - b_g_max =BLOC(condition="(OPTION=='G_MAX') or (OPTION=='G_MAX_GLOB')", - BORNES =FACT(statut='o',max='**', - NUME_ORDRE =SIMP(statut='o',typ='I'), - VALE_MIN =SIMP(statut='o',typ='R'), - VALE_MAX =SIMP(statut='o',typ='R'), - ), - ), - b_k_max =BLOC(condition="(OPTION=='CALC_K_MAX')", - SIGNES =FACT(statut='o',max=1, - CHARGE_S =SIMP(statut='o',typ='I',validators=NoRepeat(),max='**'), - CHARGE_NS =SIMP(statut='o',typ='I',validators=NoRepeat(),max='**'), - ), - ), - - PROPAGATION =SIMP(statut='f',typ='R'), - THETA_LAGR =SIMP(statut='f',typ=theta_geom), - DIRE_THETA_LAGR =SIMP(statut='f',typ=cham_no_sdaster), - SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', - fr="Liste des paramètres de sensibilité.", - ang="List of sensitivity parameters"), - - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), -); #& MODIF COMMANDE DATE 10/10/2006 AUTEUR MCOURTOI M.COURTOIS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -12292,7 +12866,7 @@ DYNA_LINE_TRAN=OPER(nom="DYNA_LINE_TRAN",op= 48,sd_prod=dyna_trans, TITRE =SIMP(statut='f',typ='TXM',max='**'), INFO =SIMP(statut='f',typ='I',into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 12/03/2007 AUTEUR DEVESA G.DEVESA +#& MODIF COMMANDE DATE 30/05/2007 AUTEUR ABBAS M.ABBAS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -12314,12 +12888,12 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', fr="Calcul de l'évolution dynamique d'une structure dont le matériau ou la géométrie ont un comportement non linéaire", UIinfo={"groupes":("Résolution",)}, regles=(AU_MOINS_UN('COMP_INCR','COMP_ELAS',), - UN_PARMI('NEWMARK','HHT','TETA_METHODE',), CONCEPT_SENSIBLE('ENSEMBLE'),), MODELE =SIMP(statut='o',typ=modele_sdaster), CHAM_MATER =SIMP(statut='o',typ=cham_mater), MODE_STAT =SIMP(statut='f',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc,)), CARA_ELEM =SIMP(statut='f',typ=cara_elem), + MASS_DIAG =SIMP(statut='f',typ='TXM',into=("OUI","NON",) ), EXCIT =FACT(statut='o',max='**', regles=(PRESENT_ABSENT('FONC_MULT','ACCE'), PRESENT_PRESENT('ACCE','VITE','DEPL'), @@ -12337,6 +12911,10 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), ), + EXCIT_GENE =FACT(statut='f',max='**', + FONC_MULT =SIMP(statut='f',typ=fonction_sdaster,max='**' ), + VECT_GENE =SIMP(statut='f',typ=vect_asse_gene,max='**' ), + ), SOUS_STRUC =FACT(statut='f',min=01,max='**', regles=(UN_PARMI('TOUT','SUPER_MAILLE'),), CAS_CHARGE =SIMP(statut='o',typ='TXM' ), @@ -12352,6 +12930,14 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', NB_MODE =SIMP(statut='f',typ='I',defaut= 9999 ), REAC_VITE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), ), + PROJ_MODAL =FACT(statut='f',max='**', + MODE_MECA =SIMP(statut='o',typ=mode_meca), + NB_MODE =SIMP(statut='f',typ='I',defaut= 9999 ), + regles=(PRESENT_PRESENT('MASS_GENE','RIGI_GENE'),), + MASS_GENE =SIMP(statut='f',typ=matr_asse_gene_r), + RIGI_GENE =SIMP(statut='f',typ=matr_asse_gene_r), + AMOR_GENE =SIMP(statut='f',typ=matr_asse_gene_r), + ), COMP_INCR =C_COMP_INCR(), COMP_ELAS =FACT(statut='f',max='**', RELATION =SIMP(statut='o',typ='TXM',defaut="ELAS", @@ -12478,17 +13064,24 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', VALE =SIMP(statut='f',typ='R'), ), #------------------------------------------------------------------- - NEWMARK =FACT(statut='f', - ALPHA =SIMP(statut='f',typ='R',defaut= 0.25), - DELTA =SIMP(statut='f',typ='R',defaut= 0.5), - ), - HHT =FACT(statut='f', - ALPHA =SIMP(statut='f',typ='R',defaut= -0.3 ), - MODI_EQUI =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - ), - TETA_METHODE =FACT(statut='f', - TETA =SIMP(statut='f',typ='R' - ,defaut= 1.,val_min=0.5,val_max=1. ), + SCHEMA_TEMPS =FACT(statut='o', + SCHEMA =SIMP(statut='o',min=1,max=1,typ='TXM', + into=("DIFF_CENT","TCHAMWA","NEWMARK","HHT","THETA_METHODE"),), + b_tchamwa = BLOC(condition="SCHEMA=='TCHAMWA'", + PHI =SIMP(statut='f',typ='R',defaut= 1.05),), + b_newmark = BLOC(condition="SCHEMA=='NEWMARK'", + ALPHA =SIMP(statut='f',typ='R',defaut= 0.25), + DELTA =SIMP(statut='f',typ='R',defaut= 0.5),), + b_hht = BLOC(condition="SCHEMA=='HHT'", + ALPHA =SIMP(statut='f',typ='R',defaut= -0.3 ), + MODI_EQUI =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"),),), + b_theta = BLOC(condition="SCHEMA=='THETA_METHODE'", + THETA =SIMP(statut='f',typ='R',defaut= 1.,val_min=0.5,val_max=1. ),), + b_explicit= BLOC(condition="SCHEMA=='TCHAMWA'or SCHEMA=='DIFF_CENT'", + STOP_CFL =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"),), + FORMULATION =SIMP(statut='o',typ='TXM',into=("ACCELERATION",),),), + b_implicit= BLOC(condition="SCHEMA!='TCHAMWA'and SCHEMA!='DIFF_CENT'", + FORMULATION =SIMP(statut='o',max=1,typ='TXM',into=("DEPLACEMENT","VITESSE",),),), ), NEWTON =FACT(statut='d', REAC_INCR =SIMP(statut='f',typ='I',defaut= 1 ), @@ -12530,6 +13123,7 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', ), #------------------------------------------------------------------- RECH_LINEAIRE =FACT(statut='f', + METHODE =SIMP(statut='f',typ='TXM',defaut="CORDE",into=("CORDE","MIXTE") ), RESI_LINE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-1 ), ITER_LINE_MAXI =SIMP(statut='f',typ='I',defaut= 3), ITER_LINE_CRIT =SIMP(statut='f',typ='I',defaut= 20), @@ -12557,11 +13151,16 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', ), CONVERGENCE =FACT(statut='d', regles=(PRESENT_ABSENT('RESI_REFE_RELA','RESI_GLOB_MAXI','RESI_GLOB_RELA'),), - SIGM_REFE =SIMP(statut='f',typ='R'), - EPSI_REFE =SIMP(statut='f',typ='R'), - FLUX_THER_REFE =SIMP(statut='f',typ='R'), - FLUX_HYD1_REFE =SIMP(statut='f',typ='R'), - FLUX_HYD2_REFE =SIMP(statut='f',typ='R'), + b_refe_rela =BLOC(condition = "RESI_REFE_RELA != None", + regles=(AU_MOINS_UN('SIGM_REFE','EPSI_REFE','FLUX_THER_REFE', + 'FLUX_HYD1_REFE','FLUX_HYD2_REFE','VARI_REFE'),), + SIGM_REFE =SIMP(statut='f',typ='R'), + EPSI_REFE =SIMP(statut='f',typ='R'), + FLUX_THER_REFE =SIMP(statut='f',typ='R'), + FLUX_HYD1_REFE =SIMP(statut='f',typ='R'), + FLUX_HYD2_REFE =SIMP(statut='f',typ='R'), + VARI_REFE =SIMP(statut='f',typ='R'), + ), RESI_REFE_RELA =SIMP(statut='f',typ='R'), RESI_GLOB_MAXI =SIMP(statut='f',typ='R'), RESI_GLOB_RELA =SIMP(statut='f',typ='R'), @@ -12683,2589 +13282,532 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', TYPE_RESOL =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("NONSYM","SYMGEN","SYMDEF","AUTO")), SCALING =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("SANS","AUTO")), RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), - ELIM_LAGR2 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=10,), - RESI_RELA =SIMP(statut='f',typ='R',defaut=-1.0,), - ), - b_gcpc =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué", - PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ), - NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), - RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), - NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), - ), - EPS =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - ), - LAGR_NON_LOCAL =FACT(statut='f', - ITER_DUAL_MAXI =SIMP(statut='f',typ='I',defaut= 50), - RESI_DUAL_ABSO =SIMP(statut='o',typ='R'), - RESI_PRIM_ABSO =SIMP(statut='o',typ='R'), - R =SIMP(statut='f',typ='R',defaut= 1000.), - ITER_PRIM_MAXI =SIMP(statut='f',typ='I',defaut= 10), - ), -#------------------------------------------------------------------- - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; -#& MODIF COMMANDE DATE 10/10/2006 AUTEUR MCOURTOI M.COURTOIS -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -DYNA_SPEC_MODAL=OPER(nom="DYNA_SPEC_MODAL",op= 147,sd_prod=table_fonction, - fr="Calcul de la réponse par recombinaison modale d'une structure linéaire pour une excitation aléatoire", - reentrant='n', - UIinfo={"groupes":("Résolution",)}, - BASE_ELAS_FLUI =SIMP(statut='o',typ=melasflu_sdaster ), - EXCIT =FACT(statut='o', - INTE_SPEC_GENE =SIMP(statut='o',typ=table_fonction), - ), - OPTION =SIMP(statut='f',typ='TXM',defaut="TOUT",into=("TOUT","DIAG") ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; -#& MODIF COMMANDE DATE 10/10/2006 AUTEUR MCOURTOI M.COURTOIS -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -DYNA_TRAN_MODAL=OPER(nom="DYNA_TRAN_MODAL",op= 74,sd_prod=tran_gene, - fr="Calcul de la réponse dynamique transitoire d'un système amorti ou non en coordonées généralisées" - +" par superposition modale ou par sous structuration", - reentrant='f', - UIinfo={"groupes":("Résolution",)}, - regles=(EXCLUS('AMOR_REDUIT','AMOR_GENE','LIST_AMOR'), - PRESENT_ABSENT('MODE_STAT','MODE_CORR'),), - METHODE =SIMP(statut='f',typ='TXM',defaut="EULER", - into=("EULER","NEWMARK","DEVOGE","ADAPT","ITMI") ), - MASS_GENE =SIMP(statut='o',typ=matr_asse_gene_r ), - RIGI_GENE =SIMP(statut='o',typ=matr_asse_gene_r ), - AMOR_GENE =SIMP(statut='f',typ=matr_asse_gene_r ), - AMOR_REDUIT =SIMP(statut='f',typ='R',max='**'), - LIST_AMOR =SIMP(statut='f',typ=listr8_sdaster ), - MODE_STAT =SIMP(statut='f',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc) ), - MODE_CORR =SIMP(statut='f',typ=(mult_elas,mode_stat_acce) ,), - - ETAT_INIT =FACT(statut='f', - regles=(EXCLUS('RESU_GENE','DEPL_INIT_GENE'), - EXCLUS('RESU_GENE','VITE_INIT_GENE'),), - RESU_GENE =SIMP(statut='f',typ=tran_gene ), - b_resu_gene =BLOC(condition = "RESU_GENE != None", - INST_INIT =SIMP(statut='f',typ='R' ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - ), - DEPL_INIT_GENE =SIMP(statut='f',typ=vect_asse_gene ), - VITE_INIT_GENE =SIMP(statut='f',typ=vect_asse_gene ), - ), - INCREMENT =FACT(statut='o',max='**', - INST_INIT =SIMP(statut='f',typ='R' ), - INST_FIN =SIMP(statut='o',typ='R' ), - PAS =SIMP(statut='f',typ='R' ), - VERI_PAS =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - VITE_MIN =SIMP(statut='f',typ='TXM',defaut="NORM",into=("MAXI","NORM") ), - COEF_MULT_PAS =SIMP(statut='f',typ='R',defaut= 1.1 ), - COEF_DIVI_PAS =SIMP(statut='f',typ='R',defaut= 1.3333334 ), - PAS_LIMI_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-6 ), - NB_POIN_PERIODE =SIMP(statut='f',typ='I',defaut= 50 ), - NMAX_ITER_PAS =SIMP(statut='f',typ='I',defaut= 16 ), - ), - ARCHIVAGE =FACT(statut='f', - regles=(UN_PARMI('LIST_ARCH','PAS_ARCH'),), - LIST_ARCH =SIMP(statut='f',typ=listis_sdaster ), - PAS_ARCH =SIMP(statut='f',typ='I' ), - ), - - NMAX_ITER =SIMP(statut='f',typ='I',defaut= 20 ), - RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - LAMBDA =SIMP(statut='f',typ='R',defaut= 10. ), - - EXCIT =FACT(statut='f',max='**', - regles=(UN_PARMI('FONC_MULT','COEF_MULT','ACCE'), - PRESENT_PRESENT('ACCE','VITE','DEPL'), - PRESENT_PRESENT('D_FONC_DT','D_FONC_DT2'), - PRESENT_ABSENT('NUME_ORDRE','VECT_GENE','COEF_MULT'), - EXCLUS('MULT_APPUI','CORR_STAT'), - PRESENT_ABSENT('MULT_APPUI','COEF_MULT'), - PRESENT_ABSENT('MULT_APPUI','FONC_MULT'),), - VECT_GENE =SIMP(statut='f',typ=vect_asse_gene ), - NUME_ORDRE =SIMP(statut='f',typ='I' ), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - COEF_MULT =SIMP(statut='f',typ='R' ), - ACCE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - VITE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - DEPL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - MULT_APPUI =SIMP(statut='f',typ='TXM',into=("OUI",) ), - DIRECTION =SIMP(statut='f',typ='R',max='**'), - b_loca =BLOC(condition= "DIRECTION != None", - regles=(EXCLUS('NOEUD','GROUP_NO'),), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - ), - CORR_STAT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - D_FONC_DT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - D_FONC_DT2 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - CHOC =FACT(statut='f',max='**', - regles=(UN_PARMI('MAILLE','GROUP_MA','NOEUD_1','GROUP_NO_1' ), - EXCLUS('NOEUD_2','GROUP_NO_2'), - PRESENT_ABSENT('GROUP_MA','NOEUD_2','GROUP_NO_2'), - PRESENT_ABSENT('MAILLE','NOEUD_2','GROUP_NO_2'),), - INTITULE =SIMP(statut='f',typ='TXM' ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - NOEUD_1 =SIMP(statut='f',typ=no), - NOEUD_2 =SIMP(statut='f',typ=no), - GROUP_NO_1 =SIMP(statut='f',typ=grno), - GROUP_NO_2 =SIMP(statut='f',typ=grno), - OBSTACLE =SIMP(statut='o',typ=table_fonction), - ORIG_OBST =SIMP(statut='f',typ='R',min=3,max=3), - NORM_OBST =SIMP(statut='o',typ='R',min=3,max=3), - ANGL_VRIL =SIMP(statut='f',typ='R' ), - JEU =SIMP(statut='f',typ='R',defaut= 1. ), - DIST_1 =SIMP(statut='f',typ='R',val_min=0.E+0 ), - DIST_2 =SIMP(statut='f',typ='R',val_min=0.E+0 ), - SOUS_STRUC_1 =SIMP(statut='f',typ='TXM' ), - SOUS_STRUC_2 =SIMP(statut='f',typ='TXM' ), - REPERE =SIMP(statut='f',typ='TXM',defaut="GLOBAL"), - RIGI_NOR =SIMP(statut='f',typ='R' ), - AMOR_NOR =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - RIGI_TAN =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - AMOR_TAN =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - COULOMB =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - - LAME_FLUIDE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - b_lame =BLOC(condition="LAME_FLUIDE=='OUI'", - ALPHA =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - BETA =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - CHI =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - DELTA =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - ), - ), - VERI_CHOC =FACT(statut='f',max='**', - STOP_CRITERE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - SEUIL =SIMP(statut='f',typ='R',defaut= 0.5 ), - ), - FLAMBAGE =FACT(statut='f',max='**', - regles=(UN_PARMI('NOEUD_1','GROUP_NO_1'), - EXCLUS('NOEUD_2','GROUP_NO_2'),), - NOEUD_1 =SIMP(statut='f',typ=no), - NOEUD_2 =SIMP(statut='f',typ=no), - GROUP_NO_1 =SIMP(statut='f',typ=grno), - GROUP_NO_2 =SIMP(statut='f',typ=grno), - OBSTACLE =SIMP(statut='o',typ=table_fonction), - ORIG_OBST =SIMP(statut='f',typ='R',max='**'), - NORM_OBST =SIMP(statut='o',typ='R',max='**'), - ANGL_VRIL =SIMP(statut='f',typ='R' ), - JEU =SIMP(statut='f',typ='R',defaut= 1. ), - DIST_1 =SIMP(statut='f',typ='R' ), - DIST_2 =SIMP(statut='f',typ='R' ), - REPERE =SIMP(statut='f',typ='TXM',defaut="GLOBAL"), - RIGI_NOR =SIMP(statut='f',typ='R' ), - FNOR_CRIT =SIMP(statut='f',typ='R' ), - FNOR_POST_FL =SIMP(statut='f',typ='R' ), - RIGI_NOR_POST_FL=SIMP(statut='f',typ='R' ), - ), - ANTI_SISM =FACT(statut='f',max='**', - regles=(UN_PARMI('NOEUD_1','GROUP_NO_1'), - UN_PARMI('NOEUD_2','GROUP_NO_2'),), - NOEUD_1 =SIMP(statut='f',typ=no), - NOEUD_2 =SIMP(statut='f',typ=no), - GROUP_NO_1 =SIMP(statut='f',typ=grno), - GROUP_NO_2 =SIMP(statut='f',typ=grno), - RIGI_K1 =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - RIGI_K2 =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - SEUIL_FX =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - C =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - PUIS_ALPHA =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - DX_MAX =SIMP(statut='f',typ='R',defaut= 1. ), - ), - RELA_EFFO_DEPL =FACT(statut='f',max='**', - NOEUD =SIMP(statut='o',typ=no), - SOUS_STRUC =SIMP(statut='f',typ='TXM' ), - NOM_CMP =SIMP(statut='f',typ='TXM' ), - RELATION =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - RELA_TRANSIS =FACT(statut='f',max='**', - NOEUD =SIMP(statut='o',typ=no), - SOUS_STRUC =SIMP(statut='f',typ='TXM' ), - NOM_CMP =SIMP(statut='f',typ='TXM' ), - RELATION =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - RELA_EFFO_VITE =FACT(statut='f',max='**', - NOEUD =SIMP(statut='o',typ=no), - SOUS_STRUC =SIMP(statut='f',typ='TXM' ), - NOM_CMP =SIMP(statut='f',typ='TXM' ), - RELATION =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - b_itmi =BLOC(condition = "METHODE=='ITMI'", - regles=(ENSEMBLE('BASE_ELAS_FLUI','NUME_VITE_FLUI'),), - BASE_ELAS_FLUI =SIMP(statut='f',typ=melasflu_sdaster ), - NUME_VITE_FLUI =SIMP(statut='f',typ='I' ), - ETAT_STAT =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - PREC_DUREE =SIMP(statut='f',typ='R',defaut= 1.E-2 ), - CHOC_FLUI =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - NB_MODE =SIMP(statut='f',typ='I' ), - NB_MODE_FLUI =SIMP(statut='f',typ='I' ), - NB_MODE_DIAG =SIMP(statut='f',typ='I' ), - TS_REG_ETAB =SIMP(statut='f',typ='R' ), - ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), - IMPRESSION =FACT(statut='f',max='**', - regles=(EXCLUS('TOUT','NIVEAU'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NIVEAU =SIMP(statut='f',typ='TXM',into=("DEPL_LOC","VITE_LOC","FORC_LOC","TAUX_CHOC") ), - INST_INIT =SIMP(statut='f',typ='R' ), - INST_FIN =SIMP(statut='f',typ='R' ), - ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - ) ; -#& MODIF COMMANDE DATE 12/12/2006 AUTEUR VIVAN L.VIVAN -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE VABHHTS J.PELLET -ENGENDRE_TEST=PROC(nom="ENGENDRE_TEST",op=178, - UIinfo={"groupes":("Impression",)}, - fr="Engendre des tests pour la non régression du code (pour développeurs)", - UNITE =SIMP(statut='f',typ='I',defaut=8), - FORMAT =SIMP(statut='f',typ='TXM',into=("OBJET",) ), - FORMAT_R =SIMP(statut='f',typ='TXM',defaut="1PE20.13"), - PREC_R =SIMP(statut='f',typ='TXM',defaut="1.E-10"), -#============================================================================ - b_aster =BLOC( condition = "FORMAT==None", - CO =SIMP(statut='o',typ=(cham_gd_sdaster,resultat_sdaster,table_sdaster), - validators=NoRepeat(),max='**'), - TYPE_TEST =SIMP(statut='f',typ='TXM',defaut="SOMM_ABS",into=("SOMM","SOMM_ABS","MAX","MIN") ), - ), -#============================================================================ - b_objet =BLOC( condition = "FORMAT=='OBJET'", - regles=(UN_PARMI('TOUT','CO'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - CO =SIMP(statut='f',typ=assd,validators=NoRepeat(),max='**'), - TYPE_TEST =SIMP(statut='f',typ='TXM',defaut="SOMME",into=("SOMME","RESUME") ), - ), -) ; -#& MODIF COMMANDE DATE 29/08/2006 AUTEUR MCOURTOI M.COURTOIS -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== - -from Macro.exec_logiciel_ops import exec_logiciel_ops -def exec_logiciel_prod(self, MAILLAGE, **args): - if MAILLAGE != None: - mcf = MAILLAGE[0] - self.type_sdprod(mcf['MAILLAGE'], maillage_sdaster) - return None - -EXEC_LOGICIEL = MACRO(nom="EXEC_LOGICIEL",op=exec_logiciel_ops, sd_prod=exec_logiciel_prod, - fr="Exécute un logiciel ou une commande système depuis Aster", - UIinfo={"groupes":("Outils métier",)}, - - regles = (AU_MOINS_UN('LOGICIEL', 'MAILLAGE'),), - - LOGICIEL = SIMP(statut='f', typ='TXM'), - ARGUMENT = SIMP(statut='f', max='**', typ='TXM'), - - MAILLAGE = FACT(statut='f', - FORMAT = SIMP(statut='o', typ='TXM', into=("GMSH", "GIBI", "SALOME")), - UNITE_GEOM = SIMP(statut='f', typ='I', val_min=10, val_max=90, defaut=16, - fr="Unité logique définissant le fichier (fort.N) contenant les données géométriques (datg)"), - UNITE = SIMP(statut='f', typ='I', val_min=10, val_max=90, defaut=19, - fr="Unité logique définissant le fichier (fort.N) produit par le mailleur"), - MAILLAGE = SIMP(statut='o', typ=CO), - ), - - CODE_RETOUR_MAXI = SIMP(statut='f', typ='I', defaut=0, val_min=-1, - fr="Valeur maximale du code retour toléré (-1 pour l'ignorer)"), - - INFO = SIMP(statut='f', typ='I', defaut=2, into=(1,2),), -) -#& MODIF COMMANDE DATE 14/10/2005 AUTEUR CIBHHLV L.VIVAN -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -def extr_mode_prod(FILTRE_MODE,**args): - vale=FILTRE_MODE[0]['MODE'] - if AsType(vale) == mode_meca : return mode_meca - if AsType(vale) == mode_meca_c : return mode_meca_c - if AsType(vale) == mode_gene : return mode_gene - raise AsException("type de concept resultat non prevu") - -EXTR_MODE=OPER(nom="EXTR_MODE",op= 168,sd_prod=extr_mode_prod, - reentrant='n',fr="Extraire séléctivement des modes des structures de données modales", - UIinfo={"groupes":("Résolution",)}, - FILTRE_MODE =FACT(statut='o',max='**', - regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE','NUME_MODE','NUME_MODE_EXCLU','FREQ_MIN','CRIT_EXTR',),), - MODE =SIMP(statut='o',typ=(mode_meca,mode_meca_c,mode_gene ) ), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - NUME_MODE_EXCLU =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - FREQ_MIN =SIMP(statut='f',typ='R' ), - CRIT_EXTR =SIMP(statut='f',typ='TXM',into=("MASS_EFFE_UN","MASS_GENE") ), - b_freq_min =BLOC(condition = "FREQ_MIN != None", - FREQ_MAX =SIMP(statut='o',typ='R' ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - ), - b_crit_extr =BLOC(condition = "CRIT_EXTR != None", - regles=(AU_MOINS_UN('SEUIL','SEUIL_X','SEUIL_Y','SEUIL_Z'),), - SEUIL =SIMP(statut='f',typ='R'), - SEUIL_X =SIMP(statut='f',typ='R'), - SEUIL_Y =SIMP(statut='f',typ='R'), - SEUIL_Z =SIMP(statut='f',typ='R'), - ), - ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - IMPRESSION =FACT(statut='f', - CUMUL =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - CRIT_EXTR =SIMP(statut='f',typ='TXM',defaut="MASS_EFFE_UN",into=("MASS_EFFE_UN","MASS_GENE") ), - ), -) ; -#& MODIF COMMANDE DATE 10/10/2006 AUTEUR VABHHTS J.PELLET -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -def extr_resu_prod(RESULTAT,**args): - if AsType(RESULTAT) == evol_elas : return evol_elas - if AsType(RESULTAT) == evol_noli : return evol_noli - if AsType(RESULTAT) == evol_ther : return evol_ther - if AsType(RESULTAT) == dyna_trans : return dyna_trans - if AsType(RESULTAT) == dyna_harmo : return dyna_harmo - if AsType(RESULTAT) == acou_harmo : return acou_harmo - if AsType(RESULTAT) == mode_meca : return mode_meca - if AsType(RESULTAT) == mode_acou : return mode_acou - if AsType(RESULTAT) == mode_stat_depl : return mode_stat_depl - if AsType(RESULTAT) == mode_stat_acce : return mode_stat_acce - if AsType(RESULTAT) == mode_stat_forc : return mode_stat_forc - if AsType(RESULTAT) == mult_elas : return mult_elas - if AsType(RESULTAT) == fourier_elas : return fourier_elas - raise AsException("type de concept resultat non prevu") - -EXTR_RESU=OPER(nom="EXTR_RESU",op=176,sd_prod=extr_resu_prod,reentrant='f', - UIinfo={"groupes":("Résultats et champs",)}, - fr="Extraire des champs au sein d'une SD Résultat", - regles=(CONCEPT_SENSIBLE('SEPARE'), REUSE_SENSIBLE(), - DERIVABLE('RESULTAT'),), - RESULTAT =SIMP(statut='o',typ=(evol_elas,dyna_trans,dyna_harmo,acou_harmo,mode_meca, - mode_acou,mode_stat_depl,mode_stat_acce,mode_stat_forc,evol_ther,evol_noli, - mult_elas,fourier_elas,fourier_ther ) ), - - SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', - fr="Liste des paramètres de sensibilité.", - ang="List of sensitivity parameters"), - - ARCHIVAGE =FACT(statut='f', - regles=( UN_PARMI('NUME_ORDRE', 'INST', 'FREQ', 'NUME_MODE', - 'NOEUD_CMP', 'LIST_INST', 'LIST_FREQ', 'LIST_ORDRE', - 'NOM_CAS', 'LIST_ARCH', 'PAS_ARCH' ), - EXCLUS( 'CHAM_EXCLU','NOM_CHAM' ), ), - CHAM_EXCLU =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',into=C_NOM_CHAM_INTO()), - PRECISION =SIMP(statut='f',typ='R',defaut=1.E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',into=("RELATIF","ABSOLU"),defaut="RELATIF"), - LIST_ARCH =SIMP(statut='f',typ=listis_sdaster), - PAS_ARCH =SIMP(statut='f',typ='I'), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - NOEUD_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - NOM_CAS =SIMP(statut='f',typ='TXM'), - ), - - TITRE =SIMP(statut='f',typ='TXM',max='**' ), -) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -def fact_grad_prod(MATR_ASSE,**args): - if AsType(MATR_ASSE) == matr_asse_depl_r : return matr_asse_depl_r - if AsType(MATR_ASSE) == matr_asse_temp_r : return matr_asse_temp_r - if AsType(MATR_ASSE) == matr_asse_pres_r : return matr_asse_pres_r - raise AsException("type de concept resultat non prevu") - -FACT_GRAD=OPER(nom="FACT_GRAD",op=85,sd_prod=fact_grad_prod, - UIinfo={"groupes":("Résolution",)}, - fr="Construire une matrice de préconditionnement pour une résolution par gradient conjugué", - reentrant='n', - MATR_ASSE =SIMP(statut='o', - typ=(matr_asse_depl_r,matr_asse_temp_r, - matr_asse_pres_r) ), - PRE_COND =SIMP(statut='f',typ='TXM',defaut="LDLT_INC",into=("LDLT_INC",) ), - NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), - INFO =SIMP(statut='f',typ='I',into=(1,2) ), -) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE GNICOLAS G.NICOLAS - -from Macro.macr_fiab_impr_ops import macr_fiab_impr_ops - -MACR_FIAB_IMPR=MACRO(nom="MACR_FIAB_IMPR",op=macr_fiab_impr_ops, - docu="U7.04.41",UIinfo={"groupe":("Impression",)}, - fr="Imprimer les valeurs à transmettre au logiciel de fiabilité.", - ang="Print values for the fiability software", -# -# 1. Le niveau d'information -# - INFO = SIMP(statut='f',typ='I',defaut=1,into=(1,2)), -# -# 2. Impression de la valeur de la cible -# -# 2.1. ==> La table contenant la valeur à imprimer -# - TABLE_CIBLE = SIMP(statut='o',typ=table_sdaster, - fr="Table contenant la valeur cible.", - ang="Table which includes the target value."), -# -# 2.2. ==> Le nom du paramètre associé à la valeur cible dans cette table -# - NOM_PARA_CIBLE = SIMP(statut='o',typ='TXM', - fr="Nom du paramètre associé à la valeur cible.", - ang="Name of the parameter connected to the target value."), -# -# 3. Impressions des valeurs des éventuels gradients -# - GRADIENTS = FACT(statut='f',min=1,max='**', -# -# 3.1. ==> La table contenant la valeur à imprimer -# - TABLE = SIMP(statut='o',typ=table_sdaster, - fr="Table contenant le gradient.", - ang="Table which includes the gradient."), -# -# 3.2. ==> Le paramètre sensible -# - PARA_SENSI = SIMP(statut='o',typ=(para_sensi,theta_geom), - fr="Paramètre sensible associé au gradient.", - ang="Sensitivity parameter connected to the gradient."), -# -# 3.3. ==> Le nom du paramètre associé au gradient dans cette table -# - NOM_PARA = SIMP(statut='o',typ='TXM', - fr="Nom du paramètre associé au gradient.", - ang="Name of the parameter connected to the gradient."), -# - ), -# -); -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE VABHHTS J.PELLET -def fact_ldlt_prod(MATR_ASSE,**args): - if AsType(MATR_ASSE) == matr_asse_depl_r : return matr_asse_depl_r - if AsType(MATR_ASSE) == matr_asse_depl_c : return matr_asse_depl_c - if AsType(MATR_ASSE) == matr_asse_temp_r : return matr_asse_temp_r - if AsType(MATR_ASSE) == matr_asse_temp_c : return matr_asse_temp_c - if AsType(MATR_ASSE) == matr_asse_pres_r : return matr_asse_pres_r - if AsType(MATR_ASSE) == matr_asse_pres_c : return matr_asse_pres_c - raise AsException("type de concept resultat non prevu") - -FACT_LDLT=OPER(nom="FACT_LDLT",op=14,sd_prod=fact_ldlt_prod, - fr="Factoriser une matrice assemblée en un produit de deux matrices triangulaires", - reentrant='f', - UIinfo={"groupes":("Résolution",)}, - regles=(EXCLUS('BLOC_DEBUT','DDL_DEBUT'), - EXCLUS('BLOC_FIN','DDL_FIN'),), - MATR_ASSE =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_temp_r, - matr_asse_temp_c,matr_asse_pres_r,matr_asse_pres_c) ), - STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - NPREC =SIMP(statut='f',typ='I',defaut=8,val_min=0,), - PRE_COND =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SANS","DIAG") ), - BLOC_DEBUT =SIMP(statut='f',typ='I',val_min=1,), - DDL_DEBUT =SIMP(statut='f',typ='I',val_min=1,), - BLOC_FIN =SIMP(statut='f',typ='I',val_min=1,), - DDL_FIN =SIMP(statut='f',typ='I',val_min=1,), -# - EPS =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - -# mots clés pour solveur MUMPS : - TYPE_RESOL =SIMP(statut='f',typ='TXM',defaut='AUTO',into=('NONSYM','SYMGEN','SYMDEF','AUTO')), - PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=20,), - - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',into=(1,2) ), -) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -FIN=PROC(nom="FIN",op=9999,repetable='n',fr="Fin d'une étude, fin du travail engagé par une des commandes DEBUT ou POURSUITE", - UIinfo={"groupes":("Gestion du travail",)}, - FORMAT_HDF =SIMP(fr="sauvegarde de la base GLOBALE au format HDF",statut='f', - typ='TXM',defaut="NON",into=("OUI","NON",) ), - RETASSAGE =SIMP(fr="provoque le retassage de la base GLOBALE", - statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ), - PERFORMANCE =SIMP(fr="provoque l'impression d'un résumé des mesures de temps ", - statut='f',typ='TXM',defaut="OUI",into=("OUI","NON",) ), - INFO_RESU =SIMP(fr="provoque l'impression des informations sur les structures de données", - statut='f',typ='TXM',defaut="OUI",into=("OUI","NON",) ), - UNITE =SIMP(statut='f',typ='I',defaut=6), -) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -FONC_FLUI_STRU=OPER(nom="FONC_FLUI_STRU",op= 169,sd_prod=fonction_sdaster, - reentrant='n',fr="Crée une fonction constante paramètrée par l'abscisse curviligne", - UIinfo={"groupes":("Fonction",)}, - TYPE_FLUI_STRU =SIMP(statut='o',typ=(type_flui_stru) ), -) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -def form_pyth_ops(self,d): - import types,string - NOM_PARA=self.etape['NOM_PARA'] - VALE =self.etape['VALE'] - if type(NOM_PARA) not in (types.ListType,types.TupleType) : NOM_PARA=[NOM_PARA,] - if self.sd==None : return - texte=string.join(VALE.splitlines()) - - self.sd.setFormule(NOM_PARA,string.strip(texte)) - -FORMULE=FORM(nom="FORMULE",op_init=form_pyth_ops,op=-5, - sd_prod=formule,UIinfo={"groupes":("Fonction",)}, - fr="Définit une formule réelle à partir de son expression mathématique", - VALE =SIMP(statut='f',typ='TXM'), - NOM_PARA =SIMP(statut='o',typ='TXM',max='**'), -); -#& MODIF COMMANDE DATE 10/10/2006 AUTEUR MCOURTOI M.COURTOIS -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE CAMBIER S.CAMBIER -GENE_FONC_ALEA=OPER(nom="GENE_FONC_ALEA",op= 118,sd_prod=table_fonction, - fr="Génération de la fonction temporelle à partir d une matrice interspectrale", - reentrant='n', - UIinfo={"groupes":("Fonction",)}, - INTE_SPEC =SIMP(statut='o',typ=table_fonction), - NUME_VITE_FLUI =SIMP(statut='f',typ='I' ), - INTERPOL =SIMP(statut='f',typ='TXM',defaut="OUI",into=("NON","OUI") ), - b_interpol_oui =BLOC(condition = "INTERPOL == 'OUI' ",fr="Parametres cas interpolation autorisee", - DUREE_TIRAGE =SIMP(statut='f',typ='R' ), - FREQ_INIT =SIMP(statut='f',typ='R' ), - FREQ_FIN =SIMP(statut='f',typ='R' ), - ), - NB_POIN =SIMP(statut='f',typ='I'), - NB_TIRAGE =SIMP(statut='f',typ='I',defaut= 1 ), - INIT_ALEA =SIMP(statut='f',typ='I'), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; -#& MODIF COMMANDE DATE 23/08/2004 AUTEUR CIBHHLV L.VIVAN -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -IMPR_CHARGE=PROC(nom="IMPR_CHARGE",op= 158, - fr="Impression des charges mécaniques de type ddl imposés et relations linéaires entre les ddl", - UIinfo={"groupes":("Fonction",)}, - UNITE =SIMP(statut='f',typ='I',defaut=30), - FORMAT =SIMP(statut='f',typ='TXM',defaut="IDEAS",into=("IDEAS",) ), - VERSION =SIMP(statut='f',typ='I',defaut= 5,into=( 5 ,) ), - CHARGE =SIMP(statut='o',typ=char_meca,validators=NoRepeat(),max='**', ), -) ; -#& MODIF COMMANDE DATE 10/05/2006 AUTEUR MCOURTOI M.COURTOIS -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE VABHHTS J.PELLET -IMPR_CO=PROC(nom="IMPR_CO",op=17, - UIinfo={"groupes":("Impression",)}, - fr="Imprimer tous les objets JEVEUX qui constituent un concept utilisateur existant (pour les développeurs)", - regles=(UN_PARMI('CONCEPT','CHAINE','TOUT' ),), - - UNITE =SIMP(statut='f',typ='I',defaut=8), - NIVEAU =SIMP(statut='f',typ='I',defaut=2,into=(-1,0,1,2) ), - ATTRIBUT =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","OUI") ), - CONTENU =SIMP(statut='f',typ='TXM',defaut="OUI",into=("NON","OUI") ), - BASE =SIMP(statut='f',typ='TXM',defaut="G",into=(" ","G","V","L") ), - CONCEPT =FACT(statut='f',max='**', - regles=(DERIVABLE('NOM'),), - NOM =SIMP(statut='o',typ=assd,validators=NoRepeat(),max='**'), - SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(), - fr="Paramètre de sensibilité.", - ang="Sensitivity parameter",max='**'),), - CHAINE =SIMP(statut='f',typ='TXM'), - POSITION =SIMP(statut='f',typ='I',defaut=1), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), -) ; -#& MODIF COMMANDE DATE 21/02/2006 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -IMPR_GENE=PROC(nom="IMPR_GENE",op= 157, - fr="Imprimer le résultat d'un calcul dynamique en variables généralisées au format RESULTAT", - UIinfo={"groupes":("Impression",)}, - FORMAT =SIMP(statut='f',typ='TXM',defaut="RESULTAT",into=("RESULTAT",) ), - UNITE =SIMP(statut='f',typ='I',defaut=8), - GENE =FACT(statut='o',max='**', - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE', - 'LIST_INST','LIST_FREQ','TOUT_MODE','TOUT_INST','LIST_ORDRE'), - EXCLUS('TOUT_MODE','NUME_ORDRE','INST','FREQ','NUME_MODE', - 'LIST_INST','LIST_FREQ','TOUT_ORDRE','TOUT_INST','LIST_ORDRE'), - EXCLUS('TOUT_INST','NUME_ORDRE','INST','FREQ','NUME_MODE', - 'LIST_INST','LIST_FREQ','TOUT_ORDRE','LIST_ORDRE'), - EXCLUS('TOUT_CMP_GENE','NUME_CMP_GENE'), - EXCLUS('TOUT_CHAM','NOM_CHAM'), - EXCLUS('TOUT_PARA','NOM_PARA'),), -# faut-il faire des blocs selon le type de RESU_GENE - RESU_GENE =SIMP(statut='o',typ=(vect_asse_gene, tran_gene, mode_gene, harm_gene)), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster ), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), - TOUT_INST =SIMP(statut='f',typ='TXM',into=("OUI",) ), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster ), - TOUT_MODE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF", - into=("RELATIF","ABSOLU") ), - TOUT_CMP_GENE =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), - NUME_CMP_GENE =SIMP(statut='f',typ='I',max='**'), - TOUT_CHAM =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), - NOM_CHAM =SIMP(statut='f',typ='TXM',max='**'), - TOUT_PARA =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), - NOM_PARA =SIMP(statut='f',typ='TXM',max='**'), - SOUS_TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO_CMP_GENE =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), - INFO_GENE =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), - ), -) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -IMPR_JEVEUX=PROC(nom="IMPR_JEVEUX",op=16, - UIinfo={"groupes":("Impression",)}, - fr="Imprimer le contenu des objets créés par JEVEUX (pour développeur)", - ENTITE =SIMP(fr="choix de l'observation",statut='o',typ='TXM', - into=("DISQUE","MEMOIRE","REPERTOIRE", - "OBJET","ATTRIBUT","SYSTEME") ), - b_objet =BLOC(condition = "(ENTITE=='OBJET')", - NOMOBJ =SIMP(fr="nom d'objet",statut='f',typ='TXM' ), - NUMOC =SIMP(fr="numéro d objet de collection",statut='f',typ='I' ), - NOMOC =SIMP(fr="nom d'objet de collection",statut='f',typ='TXM' ), - ), - b_attribut =BLOC(condition = "(ENTITE=='ATTRIBUT')", - NOMOBJ =SIMP(fr="nom de collection",statut='f',typ='TXM' ), - NOMATR =SIMP(fr="nom d attribut de collection",statut='f',typ='TXM', - into=('$$DESO','$$IADD','$$IADM','$$NOM','$$LONG', - '$$LONO','$$LUTI','$$NUM') ), - ), - b_systeme =BLOC(condition = "(ENTITE=='SYSTEME')", - CLASSE =SIMP(statut='o',typ='TXM',into=('G','V','L') ), - NOMATR =SIMP(fr="nom d attribut systeme",statut='f',typ='TXM', - into=('$$CARA','$$IADD','$$GENR','$$TYPE','$$MARQ', - '$$DOCU','$$ORIG','$$RNOM','$$LTYP','$$LONG', - '$$LONO','$$DATE','$$LUTI','$$HCOD','$$INDX', - '$$TLEC','$$TECR','$$IADM','$$ACCE','$$USADI') ), - ), - b_repertoire =BLOC(condition = "(ENTITE=='REPERTOIRE')", - CLASSE =SIMP(statut='f',typ='TXM',into=('G','V','L',' '),defaut=' '), - ), - b_disque =BLOC(condition = "(ENTITE=='DISQUE')", - CLASSE =SIMP(statut='f',typ='TXM' ,into=('G','V','L',' '),defaut=' '), - ), - IMPRESSION =FACT(statut='f', - NOM =SIMP(statut='f',typ='TXM' ), - UNITE =SIMP(statut='f',typ='I'), - ), - COMMENTAIRE =SIMP(statut='f',typ='TXM' ), -) ; -#& MODIF COMMANDE DATE 26/03/2007 AUTEUR DEVESA G.DEVESA -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -IMPR_MACR_ELEM=PROC(nom="IMPR_MACR_ELEM",op= 160, - UIinfo={"groupes":("Impression",)}, - fr="Impression d'une structure de données MACR_ELEM_DYNA au format IDEAS MISS3D PLEXUS ou CADYRO", - MACR_ELEM_DYNA =SIMP(statut='o',typ=macr_elem_dyna ), - FORMAT =SIMP(statut='f',typ='TXM',defaut="IDEAS", - into=("MISS_3D","IDEAS","CADYRO","PLEXUS") ), - - b_plexus =BLOC(condition = "FORMAT == 'IDEAS'", - UNITE =SIMP(statut='f',typ='I',defaut=30), - VERSION =SIMP(statut='f',typ='I',defaut= 5,into=( 5 ,) ), - ), - - b_ideas =BLOC(condition = "FORMAT == 'PLEXUS'", - UNITE =SIMP(statut='f',typ='I',defaut=30), - VERSION =SIMP(statut='f',typ='I',defaut= 5,into=( 5 ,) ), - ), - - b_miss_3d =BLOC(condition = "FORMAT == 'MISS_3D'", - regles=(EXCLUS('AMOR_REDUIT','LIST_AMOR'),), - UNITE =SIMP(statut='f',typ='I',defaut= 26 ), - SOUS_TITRE =SIMP(statut='f',typ='TXM',max='**'), - AMOR_REDUIT =SIMP(statut='f',typ='R' ,max='**'), - LIST_AMOR =SIMP(statut='f',typ=listr8_sdaster ), - GROUP_MA_INTERF =SIMP(statut='o',typ=grma ,max='**'), - GROUP_MA_FLU_STR=SIMP(statut='f',typ=grma,max='**'), - GROUP_MA_FLU_SOL=SIMP(statut='f',typ=grma,max='**'), - GROUP_MA_SOL_SOL=SIMP(statut='f',typ=grma,max='**'), - GROUP_MA_CONTROL=SIMP(statut='f',typ=grma,max='**'), - IMPR_MODE_MECA =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - IMPR_MODE_STAT =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - - b_cadyro =BLOC(condition = "FORMAT == 'CADYRO'", - SQUELETTE =SIMP(statut='f',typ=squelette ), - UNITE_MODE_MECA =SIMP(statut='f',typ='I',defaut= 26 ), - UNITE_MODE_STAT =SIMP(statut='f',typ='I',defaut= 27 ), - UNITE_MAILLAGE =SIMP(statut='f',typ='I',defaut= 28 ), - IMPR_MODE_MECA =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - IMPR_MODE_STAT =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - -) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -IMPR_MATRICE=PROC(nom="IMPR_MATRICE",op= 159, - fr="Imprimer sur un fichier au format IDEAS ou RESULTAT des matrices élémentaires et assemblées", - UIinfo={"groupes":("Impression",)}, - regles=(AU_MOINS_UN('MATR_ELEM','MATR_ASSE'),), -# ====================================================================== - MATR_ELEM =FACT(statut='f',max='**', -# - MATRICE =SIMP(statut='o',typ=(matr_elem, vect_elem)), - FORMAT =SIMP(statut='f',typ='TXM',defaut="IDEAS", - into=("IDEAS","RESULTAT") ), -# - b_format_ideas =BLOC(condition="FORMAT=='IDEAS'",fr="unité logique d'impression et version IDEAS", - UNITE =SIMP(statut='f',typ='I',defaut=30), - VERSION =SIMP(statut='f',typ='I',defaut= 5,into=( 5 ,), ), ), -# - b_format_resultat =BLOC(condition="FORMAT=='RESULTAT'",fr="unité logique d'impression au format RESULTAT", - regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'),), - UNITE =SIMP(statut='f',typ='I',defaut=8), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno ,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), - NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), - GRAIN =SIMP(statut='f',typ='TXM',defaut="VALEUR",into=("VALEUR","NOEUD","MAILLE") ), - NB_CHIFFRE =SIMP(statut='f',typ='I',defaut= 4 ), ), - ), -# ====================================================================== - MATR_ASSE =FACT(statut='f',max='**', -# - MATRICE =SIMP(statut='o',typ=matr_asse_gd), - FORMAT =SIMP(statut='f',typ='TXM',defaut="IDEAS",into=("IDEAS","RESULTAT") ), -# - b_format_ideas =BLOC(condition="FORMAT=='IDEAS'",fr="unité logique d'impression et version IDEAS", - UNITE =SIMP(statut='f',typ='I',defaut=30), - VERSION =SIMP(statut='f',typ='I',defaut= 5,into=( 5 ,), ), ), -# - b_format_resultat =BLOC(condition="FORMAT=='RESULTAT'",fr="unité logique d'impression au format RESULTAT", - regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'),), - UNITE =SIMP(statut='f',typ='I',defaut=8), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno ,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), - OPTION =SIMP(statut='f',typ='TXM',defaut="SOUS_MATRICE",into=("SOUS_MATRICE","LIGNE","COLONNE") ), - NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), - GRAIN =SIMP(statut='f',typ='TXM',defaut="VALEUR",into=("VALEUR","NOEUD") ), - NB_CHIFFRE =SIMP(statut='f',typ='I',defaut= 4 ), - VALE_ZERO =SIMP(statut='f',typ='R',defaut= 0.E+0 ), ), - ), -# ====================================================================== -) ; -#& MODIF COMMANDE DATE 21/02/2006 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -IMPR_MISS_3D=PROC(nom="IMPR_MISS_3D",op= 162, - UIinfo={"groupes":("Impression",)}, - fr="Impression des données d'entrée pour une étude sismique avec MISS3D", - regles=(UN_PARMI('INST_INIT','FREQ_INIT'), - PRESENT_PRESENT('INST_INIT','INST_FIN'), - PRESENT_PRESENT('FREQ_INIT','FREQ_FIN'),), - MACR_ELEM_DYNA =SIMP(statut='o',typ=macr_elem_dyna ), - EXCIT =FACT(statut='f',max='**', - regles=(UN_PARMI('FONC_MULT','COEF_MULT' ),), - VECT_ASSE =SIMP(statut='f',typ=cham_no_sdaster), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - COEF_MULT =SIMP(statut='f',typ='R' ), - ), - EXCIT_SOL =FACT(statut='f',max='**', - DIRECTION =SIMP(statut='o',typ='R',min=3,max=3), - FONC_SIGNAL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - NOM_CHAM =SIMP(statut='f',typ='TXM',defaut="DEPL", - into=("DEPL","VITE","ACCE","FORC",) ), - ), - INST_INIT =SIMP(statut='f',typ='R' ), - INST_FIN =SIMP(statut='f',typ='R' ), - FREQ_INIT =SIMP(statut='f',typ='R' ), - FREQ_FIN =SIMP(statut='f',typ='R' ), - PAS =SIMP(statut='o',typ='R' ), - UNITE =SIMP(statut='f',typ='I',defaut= 26 ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; -#& MODIF COMMANDE DATE 06/11/2006 AUTEUR MCOURTOI M.COURTOIS -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -IMPR_RESU=PROC(nom="IMPR_RESU",op=39, - UIinfo={"groupes":("Impression",)}, - fr="Imprimer un maillage et/ou les résultats d'un calcul (différents formats)", - MODELE =SIMP(statut='f',typ=modele_sdaster), - - FORMAT =SIMP(statut='f',typ='TXM',position='global',defaut="RESULTAT", - into=("RESULTAT","IDEAS","ASTER","CASTEM","ENSIGHT","MED","GMSH") ), - - b_format_resultat =BLOC(condition="FORMAT=='RESULTAT'",fr="unité logique d'impression au format RESULTAT", - UNITE =SIMP(statut='f',typ='I',defaut=8), - ), - - b_format_ideas =BLOC(condition="FORMAT=='IDEAS'",fr="unité logique d'impression et version IDEAS", - UNITE =SIMP(statut='f',typ='I',defaut=30), - VERSION =SIMP(statut='f',typ='I',defaut=5,into=(4,5)), - ), - - b_format_aster =BLOC(condition="FORMAT=='ASTER'",fr="unité logique d'impression au format ASTER", - UNITE =SIMP(statut='f',typ='I',defaut=26), - ), - - b_format_castem =BLOC(condition="FORMAT=='CASTEM'",fr="unité logique d'impression et version CASTEM", - UNITE =SIMP(statut='f',typ='I',defaut=37), - NIVE_GIBI =SIMP(statut='f',typ='I',defaut=10,into=(3,10)), - ), - - b_format_ensight =BLOC(condition="FORMAT=='ENSIGHT'",fr="unité logique d'impression au format ENSIGHT", - UNITE =SIMP(statut='f',typ='I',defaut=31), - ), - - b_format_med =BLOC(condition="FORMAT=='MED'",fr="unité logique d'impression au format MED", - UNITE =SIMP(statut='f',typ='I',defaut=80), - ), - - b_format_gmsh =BLOC(condition="FORMAT=='GMSH'",fr="unité logique d'impression et version GMSH", - UNITE =SIMP(statut='f',typ='I',defaut=37), - VERSION =SIMP(statut='f',typ='R',defaut=1.2,into=(1.0,1.2)), - ), - - RESU =FACT(statut='o',max='**', - - regles=(AU_MOINS_UN('CHAM_GD','RESULTAT','MAILLAGE'), - EXCLUS('CHAM_GD','RESULTAT'),), - MAILLAGE =SIMP(statut='f',typ=(maillage_sdaster,squelette)), - INFO_MAILLAGE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - CHAM_GD =SIMP(statut='f',typ=cham_gd_sdaster), - RESULTAT =SIMP(statut='f',typ=resultat_sdaster),# CO() sd a creer !!! - - b_sensibilite =BLOC(condition="RESULTAT != None", - fr="Définition des paramètres de sensibilité", - ang="Definition of sensitivity parameters", - regles=(DERIVABLE('RESULTAT'),), - SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', - fr="Liste des paramètres de sensibilité.", - ang="List of sensitivity parameters"),), - -# b_partie =BLOC(condition="""((AsType(RESULTAT)==dyna_harmo) or -# (AsType(CHAM_GD)!=carte_sdaster)) and ((FORMAT=='CASTEM') or (FORMAT=='GMSH'))""", - PARTIE =SIMP(statut='f',typ='TXM',into=("REEL","IMAG") ), -# ), - b_extrac =BLOC(condition="RESULTAT != None", - fr="extraction d un champ de grandeur", - regles=(EXCLUS('TOUT_CHAM','NOM_CHAM'), - EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE','NOEUD_CMP', - 'LIST_INST','LIST_FREQ','LIST_ORDRE','NOM_CAS','ANGL'),), - TOUT_CHAM =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',into=C_NOM_CHAM_INTO()), - - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - NOEUD_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - NOM_CAS =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - ANGL =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - - b_acce_reel =BLOC(condition="(FREQ != None)or(LIST_FREQ != None)or(INST != None)or(LIST_INST != None)", - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - ), - ), -### - b_parametres =BLOC(condition="""(RESULTAT != None)and(FORMAT == 'RESULTAT')""", - regles=(EXCLUS('TOUT_PARA','NOM_PARA'),), - INFO_RESU =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - TOUT_PARA =SIMP(statut='f',typ='TXM',into=("OUI","NON",) ), - NOM_PARA =SIMP(statut='f',typ='TXM',max='**'), - FORM_TABL =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON","EXCEL") ), - ), -### - b_cmp=BLOC(condition="""((CHAM_GD != None)or(RESULTAT != None))and\ - ((FORMAT == 'CASTEM')or(FORMAT == 'RESULTAT')or(FORMAT == 'IDEAS')or(FORMAT == 'ENSIGHT')or(FORMAT == 'MED'))""", - fr="sélection des composantes", - regles=(EXCLUS('TOUT_CMP','NOM_CMP'),), - TOUT_CMP =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), - ), -### - b_gmsh=BLOC(condition="""((CHAM_GD != None)or(RESULTAT != None))and((FORMAT == 'GMSH'))""", - fr="sélection des composantes et des entités toplogiques", - NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ), -### - b_topologie=BLOC(condition="""((CHAM_GD != None)or(RESULTAT != None))and\ - ((FORMAT == 'RESULTAT')or(FORMAT == 'IDEAS')or(FORMAT == 'MED'))""", - fr="sélection des entités topologiques", - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ), -### - b_valeurs=BLOC(condition="(FORMAT == 'RESULTAT')", - fr="sélection sur les valeurs", - VALE_MAX =SIMP(statut='f',typ='TXM',into=("OUI",) ), - VALE_MIN =SIMP(statut='f',typ='TXM',into=("OUI",) ), - BORNE_SUP =SIMP(statut='f',typ='R'), - BORNE_INF =SIMP(statut='f',typ='R'), - IMPR_COOR =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - FORMAT_R =SIMP(statut='f',typ='TXM',defaut="1PE12.5"), - ), - - SOUS_TITRE =SIMP(statut='f',typ='TXM',max='**'), - ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), -) ; -#& MODIF COMMANDE DATE 23/08/2004 AUTEUR CIBHHLV L.VIVAN -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -IMPR_STURM=PROC(nom="IMPR_STURM",op=32,fr="Calculer et imprimer le nombre de valeurs propres dans un intervalle donné", - UIinfo={"groupes":("Résolution",)}, - MATR_A =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r ) ), - MATR_B =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r ) ), - TYPE_RESU =SIMP(statut='f',typ='TXM',defaut="DYNAMIQUE",into=("MODE_FLAMB","DYNAMIQUE"), - fr="Type d analyse" ), - b_dynamique =BLOC(condition = "TYPE_RESU == 'DYNAMIQUE'", - fr="Recheche du nombre de fréquences propres", - FREQ_MIN =SIMP(statut='f',typ='R',defaut= 0.E+0 ,fr="Borne inférieure de l intervalle" ), - FREQ_MAX =SIMP(statut='o',typ='R',fr="Borne supérieure de l intervalle" ), - ), - b_mode_flamb =BLOC(condition = "TYPE_RESU == 'MODE_FLAMB'", - fr="Recherche du nombre de charges critiques", - CHAR_CRIT_MIN =SIMP(statut='o',typ='R',fr="Borne inférieure de l intervalle" ), - CHAR_CRIT_MAX =SIMP(statut='o',typ='R',fr="Borne supérieure de l intervalle" ), - ), - NPREC_SOLVEUR =SIMP(statut='f',typ='I',defaut= 8 ), - NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 5 ), - UNITE =SIMP(statut='f',typ='I',defaut=8), - PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 1.E-2 ), - SEUIL_FREQ =SIMP(statut='f',typ='R',defaut= 1.E-2 ), -) ; -#& MODIF COMMANDE DATE 10/05/2006 AUTEUR MCOURTOI M.COURTOIS -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE MCOURTOI M.COURTOIS -from Macro.impr_table_ops import impr_table_ops - -IMPR_TABLE=MACRO(nom="IMPR_TABLE",op=impr_table_ops,sd_prod=None, - UIinfo={"groupes":("Impression",)}, - fr="Impression du contenu d'une table dans un fichier", - regles=(DERIVABLE("TABLE"),), - TABLE =SIMP(statut='o',typ=table_sdaster), - SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', - fr="Liste des paramètres de sensibilité.", - ang="List of sensitivity parameters"), - FORMAT =SIMP(statut='f',typ='TXM',defaut="TABLEAU", - into=("TABLEAU","ASTER","TABLEAU_CROISE","AGRAF","XMGRACE",),), - b_pilote =BLOC(condition = "FORMAT == 'XMGRACE'", - fr="Mots-clés propres à XMGRACE", - PILOTE =SIMP(statut='f',typ='TXM',defaut='', - into=('','POSTSCRIPT','EPS','MIF','SVG','PNM','PNG','JPEG','PDF','INTERACTIF'), - fr="Pilote de sortie, PNG/JPEG/PDF ne sont pas disponibles sur toutes les installations de xmgrace"), - UNITE =SIMP(statut='f',typ='I',val_min=10,val_max=90,defaut=29, - fr="Unité logique définissant le fichier (fort.N) dans lequel on écrit"), - ), - b_unite =BLOC(condition = "FORMAT != 'XMGRACE'", - UNITE =SIMP(statut='f',typ='I',defaut=8, - fr="Unité logique définissant le fichier (fort.N) dans lequel on écrit"), - ), - FILTRE =FACT(statut='f',max='**', - NOM_PARA =SIMP(statut='o',typ='TXM'), - CRIT_COMP =SIMP(statut='f',typ='TXM',defaut="EQ", - into=("EQ","LT","GT","NE","LE","GE","VIDE", - "NON_VIDE","MAXI","ABS_MAXI","MINI","ABS_MINI"),), - b_vale =BLOC(condition = "(CRIT_COMP in ('EQ','NE','GT','LT','GE','LE'))", - regles=(UN_PARMI('VALE','VALE_I','VALE_K','VALE_C',),), - VALE =SIMP(statut='f',typ='R'), - VALE_I =SIMP(statut='f',typ='I'), - VALE_C =SIMP(statut='f',typ='C'), - VALE_K =SIMP(statut='f',typ='TXM'), - ), - b_crit =BLOC(condition = "CRIT_COMP in ('EQ','NE')", - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - ), - ), - TRI =FACT(statut='f', - NOM_PARA =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**'), - ORDRE =SIMP(statut='f',typ='TXM',defaut="CROISSANT", # max='**', - into=("CROISSANT","DECROISSANT") ), - ), - PAGINATION =SIMP(statut='f',typ='TXM',max='**'), - FORMAT_R =SIMP(statut='f',typ='TXM',defaut="E12.5"), - FORMAT_C =SIMP(statut='f',typ='TXM',defaut="MODULE_PHASE", - into=("MODULE_PHASE","REEL_IMAG") ), - NOM_PARA =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - IMPR_FONCTION =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - - # mise en forme pour les formats qui passent par Graph - b_forme =BLOC(condition = "FORMAT == 'XMGRACE'", - fr="Données de mise en forme du graphique", - # pour la courbe - LEGENDE =SIMP(statut='f',typ='TXM', - fr="Légende associée à la fonction" ), - STYLE =SIMP(statut='f',typ='I',val_min=0, - fr="Style de la ligne représentant la fonction",), - COULEUR =SIMP(statut='f',typ='I',val_min=0, - fr="Couleur associée à la fonction",), - MARQUEUR =SIMP(statut='f',typ='I',val_min=0, - fr="Type du marqueur associé à la fonction",), - FREQ_MARQUEUR =SIMP(statut='f',typ='I',defaut=0, - fr="Fréquence d impression du marqueur associé à la fonction", ), - # format du graphique - BORNE_X =SIMP(statut='f',typ='R',min=2,max=2, - fr="Intervalles de variation des abscisses"), - BORNE_Y =SIMP(statut='f',typ='R',min=2,max=2, - fr="Intervalles de variation des ordonnées"), - ECHELLE_X =SIMP(statut='f',typ='TXM',defaut="LIN",into=("LIN","LOG"), - fr="Type d'échelle pour les abscisses" ), - ECHELLE_Y =SIMP(statut='f',typ='TXM',defaut="LIN",into=("LIN","LOG"), - fr="Type d'échelle pour les ordonnées" ), - GRILLE_X =SIMP(statut='f',typ='R',max=1,val_min=0., - fr="Pas du quadrillage vertical" ), - GRILLE_Y =SIMP(statut='f',typ='R',max=1,val_min=0., - fr="Pas du quadrillage horizontal" ), - LEGENDE_X =SIMP(statut='f',typ='TXM', - fr="Légende associée à l'axe des abscisses" ), - LEGENDE_Y =SIMP(statut='f',typ='TXM', - fr="Légende associée à l'axe des ordonnées" ), - ), - - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), -) -#& MODIF COMMANDE DATE 10/06/2004 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -INCLUDE=MACRO(nom="INCLUDE",op=ops.build_include, - UIinfo={"groupes":("Gestion du travail",)}, - fr="Débranchement vers un fichier de commandes secondaires", - sd_prod=ops.INCLUDE,op_init=ops.INCLUDE_context,fichier_ini=1, - UNITE = SIMP(statut='o',typ='I'), - INFO = SIMP(statut='f',typ='I',defaut=1,into=(1,2)), -); -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -INCLUDE_MATERIAU=MACRO(nom="INCLUDE_MATERIAU",op=-14, - UIinfo={"groupes":("Modélisation",)}, - fr="Récupérer les caractéristiques d'un matériau dans le Catalogue Materiaux d'Aster ", - sd_prod=ops.INCLUDE_MATERIAU,op_init=ops.INCLUDE_context,fichier_ini=0, - NOM_AFNOR =SIMP(statut='o',typ='TXM' ), - TYPE_MODELE =SIMP(statut='o',typ='TXM',into=("REF","PAR") ), - VARIANTE =SIMP(statut='o',typ='TXM', - into=("A","B","C","D","E","F","G","H","I","J", - "K","L","M","N","O","P","Q","R","S","T","U","V", - "W","X","Y","Z",) ), - TYPE_VALE =SIMP(statut='o',typ='TXM',into=("NOMI","MINI","MAXI") ), - NOM_MATER =SIMP(statut='o',typ='TXM' ), - UNITE =SIMP(statut='f',typ='I',defaut= 32 ), - EXTRACTION =FACT(statut='f',max=99, - COMPOR =SIMP(statut='o',typ='TXM' ), - TEMP_EVAL =SIMP(statut='o',typ='R' ), - ), - UNITE_LONGUEUR =SIMP(statut='f',typ='TXM',into=("M","MM"),defaut="M" ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), -) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE G8BHHXD X.DESROCHES -INTE_MAIL_2D=OPER(nom="INTE_MAIL_2D",op=50,sd_prod=courbe_sdaster, - UIinfo={"groupes":("Post traitements",)}, - fr="Définition d'une courbe dans un maillage 2D",reentrant='n', - - MAILLAGE =SIMP(statut='o',typ=(maillage_sdaster) ), - - regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), - AU_MOINS_UN('DEFI_SEGMENT','DEFI_ARC','DEFI_CHEMIN'), - PRESENT_ABSENT('DEFI_CHEMIN','DEFI_SEGMENT','DEFI_ARC'), - PRESENT_ABSENT('DEFI_SEGMENT','NOEUD_ORIG','GROUP_NO_ORIG'), - PRESENT_ABSENT('DEFI_ARC','NOEUD_ORIG','GROUP_NO_ORIG'), - EXCLUS('NOEUD_ORIG','GROUP_NO_ORIG'), - EXCLUS('DEFI_CHEMIN','DEFI_SEGMENT'), - EXCLUS('DEFI_CHEMIN','DEFI_ARC'),), - - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - - DEFI_SEGMENT =FACT(statut='f',max='**', - regles=(UN_PARMI('ORIGINE','NOEUD_ORIG','GROUP_NO_ORIG'), - UN_PARMI('EXTREMITE','NOEUD_EXTR','GROUP_NO_EXTR'),), - ORIGINE =SIMP(statut='f',typ='R',min=2,max=2), - NOEUD_ORIG =SIMP(statut='f',typ=no,), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno,), - EXTREMITE =SIMP(statut='f',typ='R',min=2,max=2), - NOEUD_EXTR =SIMP(statut='f',typ=no,), - GROUP_NO_EXTR =SIMP(statut='f',typ=grno,), - ), - - DEFI_ARC =FACT(statut='f',max='**', - regles=(UN_PARMI('CENTRE','NOEUD_CENTRE','GROUP_NO_CENTRE'), - UN_PARMI('RAYON','ORIGINE','NOEUD_ORIG','GROUP_NO_ORIG'), - UN_PARMI('RAYON','EXTREMITE','NOEUD_EXTR','GROUP_NO_EXTR'), - PRESENT_PRESENT('RAYON','SECTEUR'),), - CENTRE =SIMP(statut='f',typ='R',min=2,max=2), - NOEUD_CENTRE =SIMP(statut='f',typ=no,), - GROUP_NO_CENTRE =SIMP(statut='f',typ=grno,), - RAYON =SIMP(statut='f',typ='R',val_min=0.E+0), - SECTEUR =SIMP(statut='f',typ='R',min=2,max=2, - val_min=-180.E+0,val_max=180E+0), - ORIGINE =SIMP(statut='f',typ='R',min=2,max=2), - NOEUD_ORIG =SIMP(statut='f',typ=no,), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno,), - EXTREMITE =SIMP(statut='f',typ='R',min=2,max=2), - NOEUD_EXTR =SIMP(statut='f',typ=no,), - GROUP_NO_EXTR =SIMP(statut='f',typ=grno,), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF", - into=("RELATIF","ABSOLU",) ), - ), - - DEFI_CHEMIN =FACT(statut='f',max='**', - regles=(UN_PARMI('MAILLE','GROUP_MA'),), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ), - - NOEUD_ORIG =SIMP(statut='f',typ=no,), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno,), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), -) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE G8BHHXD X.DESROCHES -INTE_MAIL_3D=OPER(nom="INTE_MAIL_3D",op=96,sd_prod=surface_sdaster, - UIinfo={"groupes":("Post traitements",)}, - fr="Définir un chemin de type segment de droite dans un maillage 3D",reentrant='n', - MAILLAGE =SIMP(statut='o',typ=maillage_sdaster), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - DEFI_SEGMENT =FACT(statut='o',max='**', - regles=(UN_PARMI('ORIGINE','NOEUD_ORIG','GROUP_NO_ORIG'), - UN_PARMI('EXTREMITE','NOEUD_EXTR','GROUP_NO_EXTR'),), - ORIGINE =SIMP(statut='f',typ='R',min=3,max=3), - NOEUD_ORIG =SIMP(statut='f',typ=no,), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno,), - EXTREMITE =SIMP(statut='f',typ='R',min=3,max=3), - NOEUD_EXTR =SIMP(statut='f',typ=no,), - GROUP_NO_EXTR =SIMP(statut='f',typ=grno,), - ), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-6), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), -) ; -#& MODIF COMMANDE DATE 16/05/2006 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -def lire_champ_prod(TYPE_CHAM=None,**args): -# Remarque : si cette liste évolue, il faut penser à mettre à jour son -# homologue dans macr_adap_mail - import string -# - if TYPE_CHAM[0:5] == "NOEU_" : return cham_no_sdaster - if TYPE_CHAM[0:2] == "EL" : return cham_elem - raise AsException("type de concept resultat non prevu") - -LIRE_CHAMP=OPER(nom="LIRE_CHAMP",op= 192,sd_prod=lire_champ_prod, - fr="Lire un champ dans un fichier au format MED et le stocker dans un concept.", - reentrant='n',UIinfo={"groupe":("Résultats et champs",)}, - MAILLAGE =SIMP(statut='o',typ=maillage_sdaster,), - FORMAT =SIMP(statut='f',typ='TXM',defaut="MED",into=("MED",),), - UNITE =SIMP(statut='f',typ='I',defaut= 81,), - b_format =BLOC(condition = "FORMAT == 'MED'", - regles=( UN_PARMI('NOM_CMP_IDEM','NOM_CMP'), - PRESENT_PRESENT('NOM_CMP','NOM_CMP_MED' ), - EXCLUS('NUME_ORDRE','INST'), - EXCLUS('NUME_PT','INST'),), - NOM_MED =SIMP(statut='o',typ='TXM', ), - NOM_CMP_IDEM =SIMP(statut='f',typ='TXM',into=("OUI",), ), - NOM_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',), - NOM_CMP_MED =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',), - NUME_PT =SIMP(statut='f',typ='I' ,validators=NoRepeat(),max='**',), - NUME_ORDRE =SIMP(statut='f',typ='I' ,validators=NoRepeat(),max='**', - fr="Numero d ordre du champ à lire",ang="Rank of the field to be read" ), - INST =SIMP(statut='f',typ='R',fr="Instant associé",ang="Instant" ), -# - b_precision =BLOC(condition="(INST != None)", - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3, - fr="Précision sur le choix de l'instant associé",ang="Accuracy over instant choice" ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU"), - fr="Critère de précision sur le choix de l'instant associé", - ang="Accuracy criterium over instant choice" ),), -# - NOM_MAIL_MED =SIMP(statut='f',typ='TXM',), - ), -# Remarque : si cette liste évolue, il faut penser à mettre à jour son -# homologue dans macr_adap_mail - TYPE_CHAM =SIMP(statut='o',typ='TXM',into=C_TYPE_CHAM_INTO()), - b_modele =BLOC(condition = "TYPE_CHAM!=None and TYPE_CHAM[0:2] == 'EL'", - MODELE =SIMP(statut='o',typ=modele_sdaster, ), - ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), -) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== - -from Macro.lire_fonction_ops import lire_fonction_ops - -def lire_fonction_prod(self,TYPE,**args): - if (TYPE == 'FONCTION') : return fonction_sdaster - elif (TYPE == 'FONCTION_C'): return fonction_c - elif (TYPE == 'NAPPE' ) : return nappe_sdaster - raise AsException("type de concept resultat non prevu") - -LIRE_FONCTION=MACRO(nom="LIRE_FONCTION",op=lire_fonction_ops,sd_prod=lire_fonction_prod, - fr="Lit les valeurs réelles dans un fichier de données représentant une fonction et" - +" crée un concept de type fonction ou nappe", - reentrant='n', - UIinfo={"groupes":("Fonction",)}, - FORMAT =SIMP(statut='f',typ='TXM',into=("LIBRE",),defaut="LIBRE" ), - TYPE =SIMP(statut='f',typ='TXM',into=("FONCTION","FONCTION_C","NAPPE"),defaut="FONCTION" ), - SEPAR =SIMP(statut='f',typ='TXM',into=("None",",",";","/"),defaut="None" ), - INDIC_PARA =SIMP(statut='f',typ='I',min=2,max=2,defaut=[1,1]), - b_fonction =BLOC(condition = "TYPE=='FONCTION' ", - INDIC_RESU =SIMP(statut='f',typ='I',min=2,max=2,defaut=[1,2]), ), - b_fonction_c =BLOC(condition = "TYPE=='FONCTION_C' ", - FORMAT_C =SIMP(statut='f',typ='TXM',defaut="REEL_IMAG",into=("REEL_IMAG","MODULE_PHASE") ), - b_reel_imag =BLOC(condition = "FORMAT_C=='REEL_IMAG' ", - INDIC_REEL =SIMP(statut='o',typ='I',min=2,max=2,defaut=[1,2]), - INDIC_IMAG =SIMP(statut='o',typ='I',min=2,max=2,defaut=[1,3]), ) , - b_modu_phas =BLOC(condition = "FORMAT_C=='MODULE_PHASE' ", - INDIC_MODU =SIMP(statut='o',typ='I',min=2,max=2,defaut=[1,2]), - INDIC_PHAS =SIMP(statut='o',typ='I',min=2,max=2,defaut=[1,3]), ), ), - b_nappe =BLOC(condition = "TYPE=='NAPPE' ", - NOM_PARA_FONC =SIMP(statut='o',typ='TXM',into=C_PARA_FONCTION() ), - INDIC_ABSCISSE =SIMP(statut='o',typ='I',min=2,max=2,), - INTERPOL_FONC =SIMP(statut='f',typ='TXM',max=2,defaut="LIN",into=("NON","LIN","LOG") ), - PROL_DROITE_FONC=SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), - PROL_GAUCHE_FONC=SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), - DEFI_FONCTION =FACT(statut='f',max='**', - INDIC_RESU =SIMP(statut='o',typ='I',min=2,max=2,),), ), - UNITE =SIMP(statut='o',typ='I' ), - NOM_PARA =SIMP(statut='o',typ='TXM',into=C_PARA_FONCTION() ), - NOM_RESU =SIMP(statut='f',typ='TXM',defaut="TOUTRESU"), - INTERPOL =SIMP(statut='f',typ='TXM',max=2,defaut="LIN",into=("NON","LIN","LOG") ), - PROL_DROITE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), - PROL_GAUCHE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), - VERIF =SIMP(statut='f',typ='TXM',defaut="CROISSANT",into=("CROISSANT","NON") ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; -#& MODIF COMMANDE DATE 10/10/2006 AUTEUR MCOURTOI M.COURTOIS -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== - -from Macro.lire_inte_spec_ops import lire_inte_spec_ops - -LIRE_INTE_SPEC=MACRO(nom="LIRE_INTE_SPEC",op=lire_inte_spec_ops,sd_prod=table_fonction, - fr="Lecture sur un fichier externe de fonctions complexes pour créer une matrice interspectrale", - reentrant='n', - UIinfo={"groupes":("Fonction",)}, - UNITE =SIMP(statut='o',typ='I' ), - FORMAT =SIMP(statut='f',typ='TXM',defaut="MODULE_PHASE",into=("REEL_IMAG","MODULE_PHASE") ), - NOM_PARA =SIMP(statut='f',typ='TXM',defaut="FREQ", - into=("DX","DY","DZ","DRX","DRY","DRZ","TEMP", - "INST","X","Y","Z","EPSI","FREQ","PULS","AMOR","ABSC",) ), - NOM_RESU =SIMP(statut='f',typ='TXM',defaut="DSP" ), - INTERPOL =SIMP(statut='f',typ='TXM',max=2,into=("NON","LIN","LOG") ), - PROL_DROITE =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ), - PROL_GAUCHE =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), -) ; -#& MODIF COMMANDE DATE 21/11/2006 AUTEUR COURTOIS M.COURTOIS -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE VABHHTS J.PELLET -LIRE_MAILLAGE=OPER(nom="LIRE_MAILLAGE",op= 1,sd_prod=maillage_sdaster, - fr="Crée un maillage par lecture d'un fichier au format Aster ou Med", - ang="Readings of a mesh file", - reentrant='n', - UIinfo={"groupes":("Maillage",)}, -# - UNITE =SIMP(statut='f',typ='I',defaut= 20 ), -# - FORMAT =SIMP(statut='f',typ='TXM',defaut="ASTER",into=("ASTER","MED"), - fr="Format du fichier : ASTER ou MED.", - ang="Format of the file : ASTER or MED.",), -# - ABSC_CURV =FACT(statut='f',min=0, - TOUT =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - ), -# - VERI_MAIL =FACT(statut='d', - VERIF =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - APLAT =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - ), -# - b_format_med =BLOC( condition = " ( FORMAT == 'MED' ) " , - fr="Informations complémentaires pour la lecture MED.", - ang="Further information for MED readings.", -# -# Pour une lecture dans un fichier MED, on peut préciser le nom sous lequel -# le maillage y a été enregistré. Par défaut, on va le chercher sous le nom du concept à créer. - NOM_MED = SIMP(statut='f',typ='TXM', - fr="Nom du maillage dans le fichier MED.", - ang="Name of the mesh into the MED file.",), - INFO_MED = SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), -# - RENOMME = FACT(statut='f', max='**', - fr="Renommer un nom de groupe MED", - NOM_MED = SIMP(statut='o', typ=grma, - fr="Nom du groupe dans le fichier MED"), - NOM = SIMP(statut='o', typ=grma, validators=LongStr(1,8), - fr="Nom du groupe dans le maillage ASTER"), - ), - ), -# - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), -# -) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -def lire_miss_3d_prod(TYPE_RESU,**args): - if TYPE_RESU == "TRANS" : return dyna_trans - if TYPE_RESU == "HARMO" : return dyna_harmo - raise AsException("type de concept resultat non prevu") - -LIRE_MISS_3D=OPER(nom="LIRE_MISS_3D",op= 163,sd_prod=lire_miss_3d_prod, - fr="Restituer sur base physique une réponse harmonique ou transitoire issue de MISS3D", - reentrant='n', - UIinfo={"groupes":("Maillage",)}, - MACR_ELEM_DYNA =SIMP(statut='o',typ=macr_elem_dyna ), - UNITE =SIMP(statut='f',typ='I',defaut= 27 ), - NOM =SIMP(statut='f',typ='TXM' ), - TYPE_RESU =SIMP(statut='f',typ='TXM',defaut="TRANS",into=("TRANS","HARMO") ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -LIRE_PLEXUS=OPER(nom="LIRE_PLEXUS",op= 184,sd_prod=evol_char, - fr="Lire le fichier de résultats au format IDEAS produit par le logiciel EUROPLEXUS", - reentrant='n', - UIinfo={"groupes":("Maillage",)}, - regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST','LIST_ORDRE'),), - UNITE =SIMP(statut='f',typ='I',defaut= 19 ), - FORMAT =SIMP(statut='f',typ='TXM',defaut="IDEAS",into=("IDEAS",)), - MAIL_PLEXUS =SIMP(statut='o',typ=maillage_sdaster ), - MAILLAGE =SIMP(statut='o',typ=maillage_sdaster ), - MODELE =SIMP(statut='o',typ=modele_sdaster ), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster ), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), - b_prec_crit =BLOC(condition = "LIST_INST != None or INST != None", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF", - into=("RELATIF","ABSOLU") ), - ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; -#& MODIF COMMANDE DATE 13/02/2007 AUTEUR PELLET J.PELLET -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE VABHHTS J.PELLET - -def lire_resu_prod(TYPE_RESU,**args): - if TYPE_RESU == "EVOL_CHAR" : return evol_char - if TYPE_RESU == "EVOL_THER" : return evol_ther - if TYPE_RESU == "EVOL_ELAS" : return evol_elas - if TYPE_RESU == "EVOL_NOLI" : return evol_noli - if TYPE_RESU == "DYNA_TRANS" : return dyna_trans - if TYPE_RESU == "DYNA_HARMO" : return dyna_harmo - if TYPE_RESU == "HARM_GENE" : return harm_gene - if TYPE_RESU == "MODE_MECA" : return mode_meca - if TYPE_RESU == "MODE_MECA_C" : return mode_meca_c - raise AsException("type de concept resultat non prevu") - -# pour éviter d'écrire 3 fois cette liste : -def l_nom_cham_pas_elga(): return ( - "ACCE", "ACCE_ABSOLU", "CRIT_ELNO_RUPT", "DCHA_ELNO_SIGM", - "DCHA_NOEU_SIGM", "DEDE_ELNO_DLDE", "DEDE_NOEU_DLDE", "DEGE_ELNO_DEPL", "DEGE_NOEU_DEPL", - "DEPL", "DEPL_ABSOLU", "DESI_ELNO_DLSI", "DESI_NOEU_DLSI", "DETE_ELNO_DLTE", "DETE_NOEU_DLTE", - "DURT_ELNO_META", "DURT_NOEU_META", "ECIN_ELEM_DEPL", "EFGE_ELNO_CART", "EFGE_ELNO_DEPL", - "EFGE_NOEU_CART", "EFGE_NOEU_DEPL", "ENDO_ELNO_SIGA", "ENDO_ELNO_SINO", "ENDO_NOEU_SINO", - "ENEL_ELNO_ELGA", "ENEL_NOEU_ELGA", "EPEQ_ELNO_TUYO", "EPGR_ELNO", "EPME_ELNO_DEPL", - "EPMG_ELNO_DEPL", "EPMG_NOEU_DEPL", "EPOT_ELEM_DEPL", "EPSA_ELNO", "EPSA_NOEU", - "EPSG_ELNO_DEPL", "EPSG_NOEU_DEPL", "EPSI_ELNO_DEPL", "EPSI_ELNO_TUYO", "EPSI_NOEU_DEPL", - "EPSP_ELNO", "EPSP_ELNO_ZAC", "EPSP_NOEU", "EPSP_NOEU_ZAC", "EQUI_ELNO_EPME", "EQUI_ELNO_EPSI", - "EQUI_ELNO_SIGM", "EQUI_NOEU_EPME", "EQUI_NOEU_EPSI", "EQUI_NOEU_SIGM", "ERRE_ELEM_NOZ1", - "ERRE_ELEM_NOZ2", "ERRE_ELNO_ELGA", "ERRE_NOEU_ELGA", "ERTH_ELEM_TEMP", "ERTH_ELNO_ELEM", - "ETOT_ELEM", "ETOT_ELNO_ELGA", "FLUX_ELNO_TEMP", "FLUX_NOEU_TEMP", "FORC_NODA", "FSUR_2D", - "FSUR_3D", "FVOL_2D", "FVOL_3D", "GRAD_NOEU_THETA", "HYDR_ELNO_ELGA", "HYDR_NOEU_ELGA", - "INTE_ELNO_ACTI", "INTE_ELNO_REAC", "INTE_NOEU_ACTI", "INTE_NOEU_REAC", "IRRA", - "META_ELNO_TEMP", "META_NOEU_TEMP", "PMPB_ELNO_SIEF", "PMPB_NOEU_SIEF", - "PRES", "PRES_DBEL_DEPL", "PRES_ELNO_DBEL", "PRES_ELNO_IMAG", "PRES_ELNO_REEL", - "PRES_NOEU_DBEL", "PRES_NOEU_IMAG", "PRES_NOEU_REEL", - "RADI_ELNO_SIGM", "RADI_NOEU_SIGM", "REAC_NODA", - "SIEF_ELNO", "SIEF_ELNO_ELGA", "SIEF_NOEU", "SIEF_NOEU_ELGA", "SIEQ_ELNO_TUYO", - "SIGM_ELNO_CART", "SIGM_ELNO_COQU", "SIGM_ELNO_DEPL", "SIGM_ELNO_SIEF", - "SIGM_ELNO_TUYO", "SIGM_ELNO_ZAC", "SIGM_NOEU_CART", "SIGM_NOEU_COQU", - "SIGM_NOEU_DEPL", "SIGM_NOEU_SIEF", "SIGM_NOEU_ZAC", "SIGM_NOZ1_ELGA", - "SIGM_NOZ2_ELGA", "SIPO_ELNO_DEPL", "SIPO_ELNO_SIEF", "SIPO_NOEU_DEPL", - "SIPO_NOEU_SIEF", "SIRE_ELNO_DEPL", "SIRE_NOEU_DEPL", "TEMP", "THETA", - "VALE_CONT", "VALE_NCOU_MAXI", "VARI_ELNO", "VARI_ELNO_COQU", - "VARI_ELNO_ELGA", "VARI_ELNO_TUYO", "VARI_NOEU", "VARI_NOEU_ELGA", "VARI_NON_LOCAL", - "VITE", "VITE_ABSOLU", "VITE_VENT", - ) - -LIRE_RESU=OPER(nom="LIRE_RESU",op=150,sd_prod=lire_resu_prod,reentrant='n', - UIinfo={"groupes":("Résultats et champs",)}, - fr="Lire dans un fichier, soit format IDEAS, soit au format ENSIGHT soit au format MED," - +" des champs et les stocker dans une SD résultat", - - -# 0) mots clés généraux : -#---------------------- - TYPE_RESU =SIMP(statut='o',typ='TXM',into=("EVOL_THER","EVOL_ELAS","EVOL_NOLI","MODE_MECA", - "MODE_MECA_C","DYNA_TRANS","DYNA_HARMO","HARM_GENE", - "EVOL_CHAR") ), - - FORMAT =SIMP(statut='o',typ='TXM',into=("IDEAS","IDEAS_DS58","ENSIGHT","MED") ), - - INFO =SIMP(statut='f',typ='I',into=(1,2) ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - - regles=(UN_PARMI('MAILLAGE','MODELE'),), - MAILLAGE =SIMP(statut='f',typ=maillage_sdaster), - MODELE =SIMP(statut='f',typ=modele_sdaster), - - NB_VARI =SIMP(statut='f',typ='I' ), - - CHAM_MATER =SIMP(statut='f',typ=cham_mater,), - - CARA_ELEM =SIMP(statut='f',typ=cara_elem,), - - b_evol_elas = BLOC(condition="TYPE_RESU=='EVOL_ELAS'", - EXCIT =FACT(statut='f',max='**', - CHARGE =SIMP(statut='o',typ=(char_meca,char_cine_meca)), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",) ),), - ), - - b_evol_ther = BLOC(condition="TYPE_RESU=='EVOL_THER'", - EXCIT =FACT(statut='f',max='**', - CHARGE =SIMP(statut='o',typ=(char_ther,char_cine_ther)), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)),), - ), - - b_evol_noli = BLOC(condition="TYPE_RESU=='EVOL_NOLI'", - EXCIT =FACT(statut='f',max='**', - CHARGE =SIMP(statut='o',typ=(char_meca,char_cine_meca)), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE_CSTE", - into=("FIXE_CSTE","FIXE_PILO","SUIV","DIDI")), - DEPL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ACCE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - VITE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MULT_APPUI =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - DIRECTION =SIMP(statut='f',typ='R',max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),), - ), - - -# 1) blocs selon le format choisi : -#--------------------------------- - -# 1-1 ideas dataset-58 : -# ---------------------- - b_dataset_58 = BLOC(condition="FORMAT=='IDEAS_DS58'", - UNITE =SIMP(statut='f',typ='I',defaut= 19 ), - ), - b_dataset_58_b = BLOC(condition="(FORMAT=='IDEAS_DS58') and ((TYPE_RESU=='DYNA_TRANS') or\ - (TYPE_RESU=='DYNA_HARMO') or (TYPE_RESU=='HARM_GENE'))", - UNITE =SIMP(statut='f',typ='I',defaut= 19 ), - NOM_CHAM=SIMP(statut='o',typ='TXM',into=("DEPL","VITE","ACCE","EPSI_NOEU_DEPL","SIEF_NOEU",) ), - REDEFI_ORIENT=FACT(statut='f',max='**', - regles=(PRESENT_PRESENT('CODE_DIR','DIRECTION','NOEUD',),), - CODE_DIR =SIMP(statut='f',typ='I',into=(1,2,3,) ), - DIRECTION=SIMP(statut='f',typ='R',min=3,max=3,), - NOEUD =SIMP(statut='f',typ=no,validators=NoRepeat(),max='**'),), - ), - -# 1-2 ideas : -# --------- - b_ideas =BLOC(condition="FORMAT=='IDEAS'", - UNITE =SIMP(statut='f',typ='I',defaut= 19 ), -# TEST =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON" ), - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=l_nom_cham_pas_elga()), - FORMAT_IDEAS =FACT(statut='f',max='**', - regles=(UN_PARMI('POSI_INST','POSI_FREQ'),), - NOM_CHAM =SIMP(statut='o',typ='TXM',into=l_nom_cham_pas_elga()), - NUME_DATASET =SIMP(statut='f',typ='I',into=(55,57,2414) ), - RECORD_3 =SIMP(statut='f',typ='I',max=10), - RECORD_6 =SIMP(statut='f',typ='I',max=10), - RECORD_9 =SIMP(statut='f',typ='I',max=10), - POSI_ORDRE =SIMP(statut='o',typ='I',min=2,max=2), - POSI_NUME_MODE =SIMP(statut='f',typ='I',min=2,max=2), - POSI_MASS_GENE =SIMP(statut='f',typ='I',min=2,max=2), - POSI_AMOR_GENE =SIMP(statut='f',typ='I',min=2,max=2), - POSI_INST =SIMP(statut='f',typ='I',min=2,max=2), - POSI_FREQ =SIMP(statut='f',typ='I',min=2,max=2), - NOM_CMP =SIMP(statut='o',typ='TXM',max='**'),), - ), -# 1-3 ensight : -# ------------- - b_ensight =BLOC(condition="FORMAT=='ENSIGHT'", - NOM_FICHIER =SIMP(statut='f',typ='TXM'), - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=l_nom_cham_pas_elga()), - ), - -# 1-4 med : -# --------- - b_med =BLOC(condition = "FORMAT == 'MED'",fr="Nom du champ dans le fichier MED", - UNITE =SIMP(statut='f',typ='I',defaut= 81, fr="Le fichier est : fort.n.",), - FORMAT_MED =FACT(statut='f',max='**', - regles=(ENSEMBLE('NOM_CMP','NOM_CMP_MED'),), - NOM_CHAM =SIMP(statut='o',typ='TXM',into=l_nom_cham_pas_elga()), - NOM_CHAM_MED =SIMP(statut='o',typ='TXM', fr="Nom du champ dans le fichier MED.", ), - NOM_CMP =SIMP(statut='f',typ='TXM',max='**', fr="Nom des composantes dans ASTER.", ), - NOM_CMP_MED =SIMP(statut='f',typ='TXM',max='**', fr="Nom des composantes dans MED.", ), - ), - ), - -# 2) blocs selon le type du résultat : -#--------------------------------- - b_mode_meca =BLOC(condition="(TYPE_RESU=='MODE_MECA')or(TYPE_RESU=='MODE_MECA_C')", - MATR_A =SIMP(statut='f',typ=matr_asse_depl_r,), - MATR_B =SIMP(statut='f',typ=matr_asse_depl_r,), - ), - - -# 3) autres blocs : -#--------------------------------- - b_extrac =BLOC(condition="1",fr="accès à un champ dans la structure de données résultat", - regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST','FREQ','LIST_FREQ'),), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), - - b_acce_reel =BLOC(condition="(INST != None)or(LIST_INST != None)or(FREQ != None)or(LIST_FREQ != None)", - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - ), - ), -) ; -#& MODIF COMMANDE DATE 30/10/2006 AUTEUR DURAND C.DURAND -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE GNICOLAS G.NICOLAS - - -from Macro.macr_adap_mail_ops import macr_adap_mail_ops - -def macr_adap_mail_prod(self,MAJ_CHAM,ADAPTATION,**args): -# -# 0. Typage des structures produites -# - maillage_np1=args['MAILLAGE_NP1'] - self.type_sdprod(maillage_np1,maillage_sdaster) -# - if ( args['MAILLAGE_NP1_ANNEXE'] is not None ) : - maillage_np1_annexe=args['MAILLAGE_NP1_ANNEXE'] - self.type_sdprod(maillage_np1_annexe,maillage_sdaster) -# - if MAJ_CHAM == None:return None -# Remarque : la liste qui suit doit etre conforme à son homologue de LIRE_CHAMP - for ch in MAJ_CHAM: - t=ch['TYPE_CHAM'] - if t[0:5] == "NOEU_":self.type_sdprod(ch['CHAM_MAJ'],cham_no_sdaster) - if t[0:2] == "EL": self.type_sdprod(ch['CHAM_MAJ'],cham_elem) - return None - - -MACR_ADAP_MAIL=MACRO(nom="MACR_ADAP_MAIL",op=macr_adap_mail_ops,sd_prod=macr_adap_mail_prod, - fr="Adapter un maillage avec le logiciel HOMARD.", - ang="Mesh adaptation with HOMARD software.", - docu="U7.03.01-b",UIinfo={"groupe":("Maillage",)}, -# -# 1. Le niveau d'information -# - INFO = SIMP(statut='f',typ='I',defaut=1,into=(1,2)), -# -# 2. Version de HOMARD -# - VERSION_HOMARD = SIMP(statut='f',typ='TXM',defaut="V8_5", - into=("V8_5", "V8_N", "V8_N_PERSO"), - fr="Version de HOMARD", - ang="HOMARD release"), -# -# 3. Langue des messages produits par HOMARD -# - LANGUE = SIMP(statut='f',typ='TXM',defaut="FRANCAIS", - into=("FRANCAIS","FRENCH","ANGLAIS","ENGLISH",), - fr="Langue des messages produits par HOMARD.", - ang="Language for HOMARD messages." ), -# -# 4. Les maillages -# 4.1. Quel que soit le type de traitement, il faut donner : -# A. Le concept du maillage initial (entree) -# B. Le concept du maillage final (sortie) -# - MAILLAGE_N = SIMP(statut='o',typ=maillage_sdaster, - fr="Maillage avant adaptation", - ang="Mesh before adaptation" ), -# - MAILLAGE_NP1 = SIMP(statut='o',typ=CO, - fr="Maillage apres adaptation", - ang="Mesh after adaptation" ), -# -# 4.2. Eventuellement, on peut produire un maillage annexe -# Actuellement, c'est le maillage n+1, mais de degré différent. -# - MAILLAGE_NP1_ANNEXE = SIMP(statut='f',typ=CO, - fr="Maillage annexe apres adaptation", - ang="Additional mesh after adaptation" ), -# -# 5. Le pilotage de l'adaptation, avec les variantes suivantes : -# . Raffinement et deraffinement, selon un champ d'indicateurs d'erreur -# . Raffinement seul, selon un champ d'indicateurs d'erreur -# . Deraffinement seul, selon un champ d'indicateurs d'erreur -# . Raffinement seul, selon des zones geometriques -# . Raffinement uniforme : toutes les mailles sont divisées -# . Deraffinement uniforme : toutes les mailles sont regroupées -# . Rien : le maillage est le meme a la sortie et a l'entree -# - ADAPTATION = SIMP(statut='o',typ='TXM', - into=("RAFF_DERA","RAFFINEMENT","DERAFFINEMENT","RAFFINEMENT_ZONE", \ - "RAFFINEMENT_UNIFORME","DERAFFINEMENT_UNIFORME","RIEN"), - fr="Pilotage de l'adaptation : selon un indicateur d'erreur ou uniforme.", - ang="Adaptation control : among an error indicator or uniform" ), -# -# 6. Pour de l'adaptation libre, il faut un indicateur d'erreur -# - b_indicateur_d_erreur = BLOC( condition = " (ADAPTATION == 'RAFF_DERA') or \ - (ADAPTATION == 'RAFFINEMENT') or \ - (ADAPTATION == 'DERAFFINEMENT') " , - fr="Pour une adaptation libre, choix de l'indicateur d'erreur ou d'une zone à raffiner", - ang="For free adaptation, selection of error indicator or zone", -# - regles=(UN_PARMI('CHAM_GD','RESULTAT_N')), -# -# 6.1. Repérage de la zone à raffiner à l'aide d'un indicateur -# -# 6.1.1. Sous forme de champ de grandeur -# - CHAM_GD = SIMP(statut='f',typ=cham_gd_sdaster, - fr="Champ de grandeur Code_Aster contenant l'indicateur d'erreur", - ang="Code_Aster champ de grandeur with error indicator" ), -# -# 6.1.2. Sous forme de concept resultat_sdaster -# - RESULTAT_N = SIMP(statut='f',typ=(evol_elas,evol_noli,evol_ther) , - fr="Concept resultat Code_Aster contenant l'indicateur d'erreur", - ang="Code_Aster result with error indicator" ), -# - b_champ_indicateur = BLOC(condition="(RESULTAT_N != None)", - INDICATEUR = SIMP(statut='o',typ='TXM', - fr="Champ de l'indicateur d'erreur dans le résultat", - ang="Error indicator field in the result structure" ), - ), -# -# 6.1.3. Est-ce un champ dérivé -# - b_sensibilite = BLOC(condition=" (RESULTAT_N != None) or (CHAM_GD != None) ", - fr="Est-ce un champ dérivé", - ang="Is the indicator a derivative field", -# - SENSIBILITE = SIMP(statut='f',typ=(para_sensi,theta_geom), - fr="Paramètre de sensibilité.", - ang="Sensitivity parameter") -# - ), -# -# 6.1.4. La composante retenue -# - b_composante = BLOC(condition=" (RESULTAT_N != None) or (CHAM_GD != None) ", - fr="Choix de la composante pour l'indicateur", - ang="Component selection for error indicator", -# - NOM_CMP_INDICA = SIMP(statut='o',typ='TXM', - fr="Composante retenue pour l'indicateur d'erreur", - ang="Selected component for error indicator" ), -# - ), -# -# 6.1.5. Le paramètre temporel pour l'indicateur -# - b_parametre_temporel = BLOC(condition="(RESULTAT_N != None)", - fr="Choix éventuel du paramètre temporel pour l'indicateur", - ang="Time selection for error indicator (option)", -# - regles=(EXCLUS('NUME_ORDRE','INST'),), -# -# 6.1.5.1. Soit le numero d'ordre -# - NUME_ORDRE = SIMP(statut='f',typ='I', - fr="Numero d ordre", - ang="Rank" ), -# -# 6.1.5.2. Soit l'instant -# 6.1.5.2.1. Sa valeur -# - INST = SIMP(statut='f',typ='R', - fr="Instant associé", - ang="Instant" ), -# -# 6.1.5.2.2. La précision du choix de l'instant -# - b_precision = BLOC(condition="(INST != None)", - fr="Choix de la précision du choix de l'instant", - ang="Selection for instant choice", - PRECISION = SIMP(statut='f',typ='R',defaut=1.0E-3, - fr="Précision sur le choix de l'instant associé", - ang="Accuracy over instant choice" ), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU"), - fr="Critère de précision sur le choix de l'instant associé", - ang="Accuracy criterium over instant choice" ), - ), -# - ), -# -# 6.1.6. Type de valeur de l'indicateur : absolue ou relative -# - b_valeur_indicateur = BLOC(condition=" (RESULTAT_N != None) or (CHAM_GD != None) ", - fr="Type de valeur pour l'indicateur", - ang="Value type for error indicator", -# - TYPE_VALEUR_INDICA = SIMP(statut='f',typ='TXM',defaut="V_ABSOLUE",into=("V_ABSOLUE","V_RELATIVE"), - fr="Valeur absolue ou relative pour l'indicateur", - ang="Absolute or relative value for error indicator" ), -# - ), -# - ) , -# -# 7. Les criteres pour de l'adaptation libre avec un indicateur d'erreur : -# absolu, relatif, en proportion d'entite -# 7.1. Pour le raffinement : -# - b_critere_de_raffinement = BLOC( condition = " (ADAPTATION == 'RAFF_DERA') or \ - (ADAPTATION == 'RAFFINEMENT') " , - fr="Critère de raffinement.", - ang="Refinement threshold.", -# - regles=(UN_PARMI ( 'CRIT_RAFF_ABS', 'CRIT_RAFF_REL', 'CRIT_RAFF_PE' ),), -# - CRIT_RAFF_ABS = SIMP(statut='f',typ='R', - fr="Critère absolu", - ang="Absolute threshold" ), - CRIT_RAFF_REL = SIMP(statut='f',typ='R', - fr="Critère relatif : fraction réelle entre 0. et 1.", - ang="Relative threshold : ratio between 0. and 1." ), - CRIT_RAFF_PE = SIMP(statut='f',typ='R', - fr="Pourcentage d'éléments : fraction réelle entre 0. et 1.", - ang="Percentage of elements : ratio between 0. and 1." ), - ) , -# -# 7.2. Pour le deraffinement : -# - b_critere_de_deraffinement = BLOC( condition = " (ADAPTATION == 'RAFF_DERA') or \ - (ADAPTATION == 'DERAFFINEMENT') " , - fr="Critère de déraffinement.", - ang="Unrefinement threshold.", -# - regles=(UN_PARMI ( 'CRIT_DERA_ABS', 'CRIT_DERA_REL', 'CRIT_DERA_PE' ),), -# - CRIT_DERA_ABS = SIMP(statut='f',typ='R' , - fr="Critère absolu", - ang="Absolute threshold" ), - CRIT_DERA_REL = SIMP(statut='f',typ='R', - fr="Critère relatif : fraction réelle entre 0. et 1.", - ang="Relative threshold : ratio between 0. and 1." ), - CRIT_DERA_PE = SIMP(statut='f',typ='R', - fr="Pourcentage d'éléments : fraction réelle entre 0. et 1.", - ang="Percentage of elements : ratio between 0. and 1." ), - ) , -# -# 8. Pour de l'adaptation par zone, définitions des zones -# - b_zone = BLOC( condition = " (ADAPTATION == 'RAFFINEMENT_ZONE') " , - fr="Pour une adaptation selon une zone à raffiner", - ang="For adaptation among zone", - ZONE = FACT(statut='f',max='**', - fr="Définition de zones à raffiner.", - ang="Refined zone definition.", -# - regles=(AU_MOINS_UN('X_MINI','X_CENTRE'), - EXCLUS('X_MINI','X_CENTRE',), - EXCLUS('Z_MINI','X_CENTRE',), - EXCLUS('X_MINI','Z_CENTRE',), - EXCLUS('Z_MINI','Z_CENTRE',), - PRESENT_PRESENT('X_MINI','X_MAXI','Y_MINI','Y_MAXI'), - PRESENT_PRESENT('Z_MINI','Z_MAXI'), - PRESENT_PRESENT('X_CENTRE','Y_CENTRE','RAYON'),), -# -# 6.2.1. Une boite parallelepipedique -# - X_MINI = SIMP(statut='f',typ='R', - fr="Abscisse minimum de la boite", - ang="Minimum X for the box"), - X_MAXI = SIMP(statut='f',typ='R', - fr="Abscisse maximum de la boite", - ang="Maximum X for the box"), -# - Y_MINI = SIMP(statut='f',typ='R', - fr="Orodnnée minimum de la boite", - ang="Minimum Y for the box"), - Y_MAXI = SIMP(statut='f',typ='R', - fr="Abscisse maximum de la boite", - ang="Maximum Y for the box"), -# - Z_MINI = SIMP(statut='f',typ='R', - fr="Cote minimum de la boite", - ang="Minimum Z for the box"), - Z_MAXI = SIMP(statut='f',typ='R', - fr="Cote maximum de la boite", - ang="Maximum Z for the box"), -# -# 6.2.2. Une sphere -# - X_CENTRE = SIMP(statut='f',typ='R', - fr="Abscisse du centre de la sphere", - ang="X for the center of the sphere"), - Y_CENTRE = SIMP(statut='f',typ='R', - fr="Ordonnee du centre de la sphere", - ang="Y for the center of the sphere"), - Z_CENTRE = SIMP(statut='f',typ='R', - fr="Cote du centre de la sphere", - ang="Z for the center of the sphere"), - RAYON = SIMP(statut='f',typ='R', - fr="Rayon de la sphere", - ang="Radius of the sphere"), -# - ) , -# - ) , -# -# 9. Les niveaux extremes pour le maillage adapte -# 9.1. Pour le raffinement : -# - b_niveau_maximum = BLOC( condition = " (ADAPTATION == 'RAFF_DERA') or \ - (ADAPTATION == 'RAFFINEMENT') or \ - (ADAPTATION == 'RAFFINEMENT_UNIFORME') or \ - (ADAPTATION == 'RAFFINEMENT_ZONE') " , - fr="Niveau maximum de profondeur de raffinement", - ang="Maximum level for refinement", - NIVE_MAX = SIMP(statut='f',typ='I', - fr="Niveau maximum de profondeur de raffinement", - ang="Maximum level for refinement"), - ) , -# -# 9.2. Pour le deraffinement : -# - b_niveau_minimum = BLOC( condition = " (ADAPTATION == 'RAFF_DERA') or \ - (ADAPTATION == 'DERAFFINEMENT') or \ - (ADAPTATION == 'DERAFFINEMENT_UNIFORME') " , - fr="Niveau minimum de profondeur de déraffinement", - ang="Minimum level for unrefinement", - NIVE_MIN = SIMP(statut='f',typ='I', - fr="Niveau minimum de profondeur de déraffinement", - ang="Minimum level for unrefinement"), - ) , -# -# 10. Suivi d'une frontiere -# - MAILLAGE_FRONTIERE = SIMP(statut='f',typ=maillage_sdaster, - fr="Maillage de la frontiere à suivre", - ang="Boundary mesh" ), -# - b_frontiere = BLOC( condition = " MAILLAGE_FRONTIERE != None " , - fr="Information complémentaire sur la frontière", - ang="Further information about boundary", -# - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', - fr="Liste des groupes de mailles définissant la frontière", - ang="Mesh groups which define the boundary" ), -# - ) , -# -# 11. Mise à jour de champs sur le nouveau maillage -# - MAJ_CHAM = FACT(statut='f',max='**', - fr="Mise à jour de champs sur le nouveau maillage.", - ang="Updating of fields over the new mesh.", -# -# 11.1. Le nom du champ de grandeur qui contiendra le resultat de la mise a jour -# - CHAM_MAJ = SIMP(statut='o',typ=CO, - fr="Nom du champ de grandeur qui contiendra le champ mis à jour", - ang="Name of the field for the updated field"), -# -# 11.2. Le type du champ qui contiendra le resultat de la mise a jour -# - TYPE_CHAM = SIMP(statut='o',typ='TXM',into=C_TYPE_CHAM_INTO(), - fr="Type du champ qui contiendra le champ mis à jour", - ang="Type of the field for the updated field" ), -# -# 11.3. Le champ a interpoler -# - regles=(UN_PARMI('CHAM_GD','RESULTAT')), -# -# 11.3.1. Sous forme de champ de grandeur -# - CHAM_GD = SIMP(statut='f',typ=cham_gd_sdaster, - fr="Champ de grandeur Code_Aster contenant le champ à mettre à jour", - ang="Champ de grandeur with field to be updated" ), -# -# 11.3.2. Sous forme de champ dans un resultat -# - RESULTAT = SIMP(statut='f',typ=(evol_elas,evol_noli,evol_ther), - fr="Resultat contenant le champ à mettre à jour", - ang="Result with field to be updated" ), -# - b_nom_du_champ = BLOC(condition="(RESULTAT != None)", - fr="Choix éventuel du nom du champ à interpoler", - ang="Selection for the name of the field (option)", -# - NOM_CHAM = SIMP(statut='o',typ='TXM', - fr="Nom du champ à mettre à jour", - ang="Name of the field to be updated" ), -# - ), -# -# 11.4. Est-ce un champ dérivé -# - SENSIBILITE = SIMP(statut='f',typ=(para_sensi,theta_geom), - fr="Paramètre de sensibilité.", - ang="Sensitivity parameter"), -# -# 11.5. Le paramètre temporel pour le champ a interpoler -# - b_parametre_temporel = BLOC(condition="(RESULTAT != None)", - fr="Choix éventuel du paramètre temporel pour le champ à interpoler", - ang="Time selection for the field (option)", -# - regles=(EXCLUS('NUME_ORDRE','INST'),), -# -# 11.5.1. Soit le numero d'ordre + ELIM_LAGR2 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), + PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=10,), + RESI_RELA =SIMP(statut='f',typ='R',defaut=-1.0,), + ), + b_gcpc =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué", + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ), + NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), + RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), + NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), + ), + EPS =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + ), + LAGR_NON_LOCAL =FACT(statut='f', + ITER_DUAL_MAXI =SIMP(statut='f',typ='I',defaut= 50), + RESI_DUAL_ABSO =SIMP(statut='o',typ='R'), + RESI_PRIM_ABSO =SIMP(statut='o',typ='R'), + R =SIMP(statut='f',typ='R',defaut= 1000.), + ITER_PRIM_MAXI =SIMP(statut='f',typ='I',defaut= 10), + ), +#------------------------------------------------------------------- + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), + TITRE =SIMP(statut='f',typ='TXM',max='**'), +) ; +#& MODIF COMMANDE DATE 10/10/2006 AUTEUR MCOURTOI M.COURTOIS +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # - NUME_ORDRE = SIMP(statut='f',typ='I', - fr="Numero d ordre du champ à mettre à jour", - ang="Rank of the field to be updated" ), +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # -# 11.5.2. Soit l'instant -# 11.5.2.1. Sa valeur +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +DYNA_SPEC_MODAL=OPER(nom="DYNA_SPEC_MODAL",op= 147,sd_prod=table_fonction, + fr="Calcul de la réponse par recombinaison modale d'une structure linéaire pour une excitation aléatoire", + reentrant='n', + UIinfo={"groupes":("Résolution",)}, + BASE_ELAS_FLUI =SIMP(statut='o',typ=melasflu_sdaster ), + EXCIT =FACT(statut='o', + INTE_SPEC_GENE =SIMP(statut='o',typ=table_fonction), + ), + OPTION =SIMP(statut='f',typ='TXM',defaut="TOUT",into=("TOUT","DIAG") ), + TITRE =SIMP(statut='f',typ='TXM',max='**'), +) ; +#& MODIF COMMANDE DATE 10/10/2006 AUTEUR MCOURTOI M.COURTOIS +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # - INST = SIMP(statut='f',typ='R', - fr="Instant associé", - ang="Instant" ), +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # -# 11.5.2.2. La précision du choix de l'instant +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +DYNA_TRAN_MODAL=OPER(nom="DYNA_TRAN_MODAL",op= 74,sd_prod=tran_gene, + fr="Calcul de la réponse dynamique transitoire d'un système amorti ou non en coordonées généralisées" + +" par superposition modale ou par sous structuration", + reentrant='f', + UIinfo={"groupes":("Résolution",)}, + regles=(EXCLUS('AMOR_REDUIT','AMOR_GENE','LIST_AMOR'), + PRESENT_ABSENT('MODE_STAT','MODE_CORR'),), + METHODE =SIMP(statut='f',typ='TXM',defaut="EULER", + into=("EULER","NEWMARK","DEVOGE","ADAPT","ITMI") ), + MASS_GENE =SIMP(statut='o',typ=matr_asse_gene_r ), + RIGI_GENE =SIMP(statut='o',typ=matr_asse_gene_r ), + AMOR_GENE =SIMP(statut='f',typ=matr_asse_gene_r ), + AMOR_REDUIT =SIMP(statut='f',typ='R',max='**'), + LIST_AMOR =SIMP(statut='f',typ=listr8_sdaster ), + MODE_STAT =SIMP(statut='f',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc) ), + MODE_CORR =SIMP(statut='f',typ=(mult_elas,mode_stat_acce) ,), + + ETAT_INIT =FACT(statut='f', + regles=(EXCLUS('RESU_GENE','DEPL_INIT_GENE'), + EXCLUS('RESU_GENE','VITE_INIT_GENE'),), + RESU_GENE =SIMP(statut='f',typ=tran_gene ), + b_resu_gene =BLOC(condition = "RESU_GENE != None", + INST_INIT =SIMP(statut='f',typ='R' ), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + ), + DEPL_INIT_GENE =SIMP(statut='f',typ=vect_asse_gene ), + VITE_INIT_GENE =SIMP(statut='f',typ=vect_asse_gene ), + ), + INCREMENT =FACT(statut='o',max='**', + INST_INIT =SIMP(statut='f',typ='R' ), + INST_FIN =SIMP(statut='o',typ='R' ), + PAS =SIMP(statut='f',typ='R' ), + VERI_PAS =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + VITE_MIN =SIMP(statut='f',typ='TXM',defaut="NORM",into=("MAXI","NORM") ), + COEF_MULT_PAS =SIMP(statut='f',typ='R',defaut= 1.1 ), + COEF_DIVI_PAS =SIMP(statut='f',typ='R',defaut= 1.3333334 ), + PAS_LIMI_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-6 ), + NB_POIN_PERIODE =SIMP(statut='f',typ='I',defaut= 50 ), + NMAX_ITER_PAS =SIMP(statut='f',typ='I',defaut= 16 ), + ), + ARCHIVAGE =FACT(statut='f', + regles=(UN_PARMI('LIST_ARCH','PAS_ARCH'),), + LIST_ARCH =SIMP(statut='f',typ=listis_sdaster ), + PAS_ARCH =SIMP(statut='f',typ='I' ), + ), + + NMAX_ITER =SIMP(statut='f',typ='I',defaut= 20 ), + RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), + LAMBDA =SIMP(statut='f',typ='R',defaut= 10. ), + + EXCIT =FACT(statut='f',max='**', + regles=(UN_PARMI('FONC_MULT','COEF_MULT','ACCE'), + PRESENT_PRESENT('ACCE','VITE','DEPL'), + PRESENT_PRESENT('D_FONC_DT','D_FONC_DT2'), + PRESENT_ABSENT('NUME_ORDRE','VECT_GENE','COEF_MULT'), + EXCLUS('MULT_APPUI','CORR_STAT'), + PRESENT_ABSENT('MULT_APPUI','COEF_MULT'), + PRESENT_ABSENT('MULT_APPUI','FONC_MULT'),), + VECT_GENE =SIMP(statut='f',typ=vect_asse_gene ), + NUME_ORDRE =SIMP(statut='f',typ='I' ), + FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + COEF_MULT =SIMP(statut='f',typ='R' ), + ACCE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + VITE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + DEPL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + MULT_APPUI =SIMP(statut='f',typ='TXM',into=("OUI",) ), + DIRECTION =SIMP(statut='f',typ='R',max='**'), + b_loca =BLOC(condition= "DIRECTION != None", + regles=(EXCLUS('NOEUD','GROUP_NO'),), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + ), + CORR_STAT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + D_FONC_DT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + D_FONC_DT2 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + ), + CHOC =FACT(statut='f',max='**', + regles=(UN_PARMI('MAILLE','GROUP_MA','NOEUD_1','GROUP_NO_1' ), + EXCLUS('NOEUD_2','GROUP_NO_2'), + PRESENT_ABSENT('GROUP_MA','NOEUD_2','GROUP_NO_2'), + PRESENT_ABSENT('MAILLE','NOEUD_2','GROUP_NO_2'),), + INTITULE =SIMP(statut='f',typ='TXM' ), + GROUP_MA =SIMP(statut='f',typ=grma,max='**'), + MAILLE =SIMP(statut='f',typ=ma,max='**'), + NOEUD_1 =SIMP(statut='f',typ=no), + NOEUD_2 =SIMP(statut='f',typ=no), + GROUP_NO_1 =SIMP(statut='f',typ=grno), + GROUP_NO_2 =SIMP(statut='f',typ=grno), + OBSTACLE =SIMP(statut='o',typ=table_fonction), + ORIG_OBST =SIMP(statut='f',typ='R',min=3,max=3), + NORM_OBST =SIMP(statut='o',typ='R',min=3,max=3), + ANGL_VRIL =SIMP(statut='f',typ='R' ), + JEU =SIMP(statut='f',typ='R',defaut= 1. ), + DIST_1 =SIMP(statut='f',typ='R',val_min=0.E+0 ), + DIST_2 =SIMP(statut='f',typ='R',val_min=0.E+0 ), + SOUS_STRUC_1 =SIMP(statut='f',typ='TXM' ), + SOUS_STRUC_2 =SIMP(statut='f',typ='TXM' ), + REPERE =SIMP(statut='f',typ='TXM',defaut="GLOBAL"), + RIGI_NOR =SIMP(statut='f',typ='R' ), + AMOR_NOR =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + RIGI_TAN =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + AMOR_TAN =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + COULOMB =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + + LAME_FLUIDE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + b_lame =BLOC(condition="LAME_FLUIDE=='OUI'", + ALPHA =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + BETA =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + CHI =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + DELTA =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + ), + ), + VERI_CHOC =FACT(statut='f',max='**', + STOP_CRITERE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + SEUIL =SIMP(statut='f',typ='R',defaut= 0.5 ), + ), + FLAMBAGE =FACT(statut='f',max='**', + regles=(UN_PARMI('NOEUD_1','GROUP_NO_1'), + EXCLUS('NOEUD_2','GROUP_NO_2'),), + NOEUD_1 =SIMP(statut='f',typ=no), + NOEUD_2 =SIMP(statut='f',typ=no), + GROUP_NO_1 =SIMP(statut='f',typ=grno), + GROUP_NO_2 =SIMP(statut='f',typ=grno), + OBSTACLE =SIMP(statut='o',typ=table_fonction), + ORIG_OBST =SIMP(statut='f',typ='R',max='**'), + NORM_OBST =SIMP(statut='o',typ='R',max='**'), + ANGL_VRIL =SIMP(statut='f',typ='R' ), + JEU =SIMP(statut='f',typ='R',defaut= 1. ), + DIST_1 =SIMP(statut='f',typ='R' ), + DIST_2 =SIMP(statut='f',typ='R' ), + REPERE =SIMP(statut='f',typ='TXM',defaut="GLOBAL"), + RIGI_NOR =SIMP(statut='f',typ='R' ), + FNOR_CRIT =SIMP(statut='f',typ='R' ), + FNOR_POST_FL =SIMP(statut='f',typ='R' ), + RIGI_NOR_POST_FL=SIMP(statut='f',typ='R' ), + ), + ANTI_SISM =FACT(statut='f',max='**', + regles=(UN_PARMI('NOEUD_1','GROUP_NO_1'), + UN_PARMI('NOEUD_2','GROUP_NO_2'),), + NOEUD_1 =SIMP(statut='f',typ=no), + NOEUD_2 =SIMP(statut='f',typ=no), + GROUP_NO_1 =SIMP(statut='f',typ=grno), + GROUP_NO_2 =SIMP(statut='f',typ=grno), + RIGI_K1 =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + RIGI_K2 =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + SEUIL_FX =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + C =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + PUIS_ALPHA =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + DX_MAX =SIMP(statut='f',typ='R',defaut= 1. ), + ), + RELA_EFFO_DEPL =FACT(statut='f',max='**', + NOEUD =SIMP(statut='o',typ=no), + SOUS_STRUC =SIMP(statut='f',typ='TXM' ), + NOM_CMP =SIMP(statut='f',typ='TXM' ), + RELATION =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), + ), + RELA_TRANSIS =FACT(statut='f',max='**', + NOEUD =SIMP(statut='o',typ=no), + SOUS_STRUC =SIMP(statut='f',typ='TXM' ), + NOM_CMP =SIMP(statut='f',typ='TXM' ), + RELATION =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), + ), + RELA_EFFO_VITE =FACT(statut='f',max='**', + NOEUD =SIMP(statut='o',typ=no), + SOUS_STRUC =SIMP(statut='f',typ='TXM' ), + NOM_CMP =SIMP(statut='f',typ='TXM' ), + RELATION =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), + ), + b_itmi =BLOC(condition = "METHODE=='ITMI'", + regles=(ENSEMBLE('BASE_ELAS_FLUI','NUME_VITE_FLUI'),), + BASE_ELAS_FLUI =SIMP(statut='f',typ=melasflu_sdaster ), + NUME_VITE_FLUI =SIMP(statut='f',typ='I' ), + ETAT_STAT =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + PREC_DUREE =SIMP(statut='f',typ='R',defaut= 1.E-2 ), + CHOC_FLUI =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + NB_MODE =SIMP(statut='f',typ='I' ), + NB_MODE_FLUI =SIMP(statut='f',typ='I' ), + NB_MODE_DIAG =SIMP(statut='f',typ='I' ), + TS_REG_ETAB =SIMP(statut='f',typ='R' ), + ), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), + IMPRESSION =FACT(statut='f',max='**', + regles=(EXCLUS('TOUT','NIVEAU'),), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NIVEAU =SIMP(statut='f',typ='TXM',into=("DEPL_LOC","VITE_LOC","FORC_LOC","TAUX_CHOC") ), + INST_INIT =SIMP(statut='f',typ='R' ), + INST_FIN =SIMP(statut='f',typ='R' ), + ), + TITRE =SIMP(statut='f',typ='TXM',max='**'), + ) ; +#& MODIF COMMANDE DATE 12/12/2006 AUTEUR VIVAN L.VIVAN +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # - b_precision = BLOC(condition="(INST != None)", - fr="Choix de la précision du choix de l'instant", - ang="Selection for instant choice", +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # - PRECISION = SIMP(statut='f',typ='R',defaut=1.0E-3, - fr="Précision sur le choix de l'instant associé", - ang="Accuracy over instant choice" ), +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE VABHHTS J.PELLET +ENGENDRE_TEST=PROC(nom="ENGENDRE_TEST",op=178, + UIinfo={"groupes":("Impression",)}, + fr="Engendre des tests pour la non régression du code (pour développeurs)", + UNITE =SIMP(statut='f',typ='I',defaut=8), + FORMAT =SIMP(statut='f',typ='TXM',into=("OBJET",) ), + FORMAT_R =SIMP(statut='f',typ='TXM',defaut="1PE20.13"), + PREC_R =SIMP(statut='f',typ='TXM',defaut="1.E-10"), +#============================================================================ + b_aster =BLOC( condition = "FORMAT==None", + CO =SIMP(statut='o',typ=(cham_gd_sdaster,resultat_sdaster,table_sdaster), + validators=NoRepeat(),max='**'), + TYPE_TEST =SIMP(statut='f',typ='TXM',defaut="SOMM_ABS",into=("SOMM","SOMM_ABS","MAX","MIN") ), + ), +#============================================================================ + b_objet =BLOC( condition = "FORMAT=='OBJET'", + regles=(UN_PARMI('TOUT','CO'),), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + CO =SIMP(statut='f',typ=assd,validators=NoRepeat(),max='**'), + TYPE_TEST =SIMP(statut='f',typ='TXM',defaut="SOMME",into=("SOMME","RESUME") ), + ), +) ; +#& MODIF COMMANDE DATE 29/08/2006 AUTEUR MCOURTOI M.COURTOIS +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU"), - fr="Critère de précision sur le choix de l'instant associé", - ang="Accuracy criterium over instant choice" ), +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== + +from Macro.exec_logiciel_ops import exec_logiciel_ops +def exec_logiciel_prod(self, MAILLAGE, **args): + if MAILLAGE != None: + mcf = MAILLAGE[0] + self.type_sdprod(mcf['MAILLAGE'], maillage_sdaster) + return None + +EXEC_LOGICIEL = MACRO(nom="EXEC_LOGICIEL",op=exec_logiciel_ops, sd_prod=exec_logiciel_prod, + fr="Exécute un logiciel ou une commande système depuis Aster", + UIinfo={"groupes":("Outils métier",)}, + + regles = (AU_MOINS_UN('LOGICIEL', 'MAILLAGE'),), + + LOGICIEL = SIMP(statut='f', typ='TXM'), + ARGUMENT = SIMP(statut='f', max='**', typ='TXM'), + + MAILLAGE = FACT(statut='f', + FORMAT = SIMP(statut='o', typ='TXM', into=("GMSH", "GIBI", "SALOME")), + UNITE_GEOM = SIMP(statut='f', typ='I', val_min=10, val_max=90, defaut=16, + fr="Unité logique définissant le fichier (fort.N) contenant les données géométriques (datg)"), + UNITE = SIMP(statut='f', typ='I', val_min=10, val_max=90, defaut=19, + fr="Unité logique définissant le fichier (fort.N) produit par le mailleur"), + MAILLAGE = SIMP(statut='o', typ=CO), ), + + CODE_RETOUR_MAXI = SIMP(statut='f', typ='I', defaut=0, val_min=-1, + fr="Valeur maximale du code retour toléré (-1 pour l'ignorer)"), + + INFO = SIMP(statut='f', typ='I', defaut=2, into=(1,2),), +) +#& MODIF COMMANDE DATE 14/10/2005 AUTEUR CIBHHLV L.VIVAN +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # - ), - ), -# -# 12. Les options d'analyse de maillage ; par defaut, on ne fait que les nombres -# 12.1. Nombre de noeuds et éléments -# - NOMBRE = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"), - fr="Nombre de noeuds et éléments du maillage", - ang="Number of nodes and éléments in the mesh" ), -# -# 12.2. Determination de la qualité des éléments du maillage -# - QUALITE = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"), - fr="Qualité du maillage", - ang="Mesh quality" ), -# -# 12.3. Connexite du maillage -# - CONNEXITE = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"), - fr="Connexité du maillage.", - ang="Mesh connexity." ), -# -# 12.4. Taille des sous-domaines du maillage -# - TAILLE = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"), - fr="Tailles des sous-domaines du maillage.", - ang="Sizes of mesh sub-domains." ), -# -# 12.5. Controle de la non-interpenetration des éléments -# - INTERPENETRATION= SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"), - fr="Controle de la non interpénétration des éléments.", - ang="Overlapping checking." ), +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # -# 13. Gestion des éléments autres que ceux compatibles avec HOMARD -# "REFUSER" : ils sont refuses (defaut) -# "IGNORER" : ils sont ignorés +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +def extr_mode_prod(FILTRE_MODE,**args): + vale=FILTRE_MODE[0]['MODE'] + if AsType(vale) == mode_meca : return mode_meca + if AsType(vale) == mode_meca_c : return mode_meca_c + if AsType(vale) == mode_gene : return mode_gene + raise AsException("type de concept resultat non prevu") + +EXTR_MODE=OPER(nom="EXTR_MODE",op= 168,sd_prod=extr_mode_prod, + reentrant='n',fr="Extraire séléctivement des modes des structures de données modales", + UIinfo={"groupes":("Résolution",)}, + FILTRE_MODE =FACT(statut='o',max='**', + regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE','NUME_MODE','NUME_MODE_EXCLU','FREQ_MIN','CRIT_EXTR',),), + MODE =SIMP(statut='o',typ=(mode_meca,mode_meca_c,mode_gene ) ), + TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + NUME_MODE_EXCLU =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + FREQ_MIN =SIMP(statut='f',typ='R' ), + CRIT_EXTR =SIMP(statut='f',typ='TXM',into=("MASS_EFFE_UN","MASS_GENE") ), + b_freq_min =BLOC(condition = "FREQ_MIN != None", + FREQ_MAX =SIMP(statut='o',typ='R' ), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), + ), + b_crit_extr =BLOC(condition = "CRIT_EXTR != None", + regles=(AU_MOINS_UN('SEUIL','SEUIL_X','SEUIL_Y','SEUIL_Z'),), + SEUIL =SIMP(statut='f',typ='R'), + SEUIL_X =SIMP(statut='f',typ='R'), + SEUIL_Y =SIMP(statut='f',typ='R'), + SEUIL_Z =SIMP(statut='f',typ='R'), + ), + ), + TITRE =SIMP(statut='f',typ='TXM',max='**'), + IMPRESSION =FACT(statut='f', + CUMUL =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + CRIT_EXTR =SIMP(statut='f',typ='TXM',defaut="MASS_EFFE_UN",into=("MASS_EFFE_UN","MASS_GENE") ), + ), +) ; +#& MODIF COMMANDE DATE 09/05/2007 AUTEUR VIVAN L.VIVAN +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # - ELEMENTS_NON_HOMARD = SIMP(statut='f',typ='TXM',defaut="REFUSER",into=("REFUSER","IGNORER"), - fr="Acceptation d'éléments incompatibles avec HOMARD", - ang="Incompatible elements for HOMARD" ), +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # -) ; -#& MODIF COMMANDE DATE 25/09/2006 AUTEUR MJBHHPE J.L.FLEJOU +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +def extr_resu_prod(RESULTAT,**args): + if AsType(RESULTAT) == evol_elas : return evol_elas + if AsType(RESULTAT) == evol_noli : return evol_noli + if AsType(RESULTAT) == evol_ther : return evol_ther + if AsType(RESULTAT) == dyna_trans : return dyna_trans + if AsType(RESULTAT) == dyna_harmo : return dyna_harmo + if AsType(RESULTAT) == acou_harmo : return acou_harmo + if AsType(RESULTAT) == mode_meca : return mode_meca + if AsType(RESULTAT) == mode_acou : return mode_acou + if AsType(RESULTAT) == mode_stat_depl : return mode_stat_depl + if AsType(RESULTAT) == mode_stat_acce : return mode_stat_acce + if AsType(RESULTAT) == mode_stat_forc : return mode_stat_forc + if AsType(RESULTAT) == mult_elas : return mult_elas + if AsType(RESULTAT) == fourier_elas : return fourier_elas + raise AsException("type de concept resultat non prevu") + +EXTR_RESU=OPER(nom="EXTR_RESU",op=176,sd_prod=extr_resu_prod,reentrant='f', + UIinfo={"groupes":("Résultats et champs",)}, + fr="Extraire des champs au sein d'une SD Résultat", + regles=(CONCEPT_SENSIBLE('SEPARE'), REUSE_SENSIBLE(), + DERIVABLE('RESULTAT'),), + RESULTAT =SIMP(statut='o',typ=(evol_elas,dyna_trans,dyna_harmo,acou_harmo,mode_meca, + mode_acou,mode_stat_depl,mode_stat_acce,mode_stat_forc,evol_ther,evol_noli, + mult_elas,fourier_elas,fourier_ther ) ), + + SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', + fr="Liste des paramètres de sensibilité.", + ang="List of sensitivity parameters"), + + ARCHIVAGE =FACT(statut='f', + regles=( UN_PARMI('NUME_ORDRE', 'INST', 'FREQ', 'NUME_MODE', + 'NOEUD_CMP', 'LIST_INST', 'LIST_FREQ', 'LIST_ORDRE', + 'NOM_CAS', 'LIST_ARCH', 'PAS_ARCH' ), + EXCLUS( 'CHAM_EXCLU','NOM_CHAM' ), ), + CHAM_EXCLU =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), + NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',into=C_NOM_CHAM_INTO()), + PRECISION =SIMP(statut='f',typ='R',defaut=1.E-3 ), + CRITERE =SIMP(statut='f',typ='TXM',into=("RELATIF","ABSOLU"),defaut="RELATIF"), + LIST_ARCH =SIMP(statut='f',typ=listis_sdaster), + PAS_ARCH =SIMP(statut='f',typ='I'), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_INST =SIMP(statut='f',typ=listr8_sdaster), + FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), + NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + NOEUD_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), + NOM_CAS =SIMP(statut='f',typ='TXM'), + ), + + TITRE =SIMP(statut='f',typ='TXM',max='**' ), +) ; +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +def extr_table_prod(TYPE_RESU,**args): + if TYPE_RESU == "MATR_ASSE_GENE_R" : return matr_asse_gene_r + raise AsException("type de concept resultat non prevu") + +EXTR_TABLE=OPER(nom="EXTR_TABLE",op=173,sd_prod=extr_table_prod,reentrant='n', + UIinfo={"groupes":("Résultats et champs",)}, + fr="Extraire d'une table la matrice de masse généralisée assemblée", + TYPE_RESU =SIMP(statut='o',typ='TXM',into=("MATR_ASSE_GENE_R",) ), + + TABLE =SIMP(statut='o',typ=table_sdaster), + + NOM_PARA =SIMP(statut='o',typ='TXM'), + + FILTRE =FACT(statut='f',min=1,max='**', + NOM_PARA =SIMP(statut='o',typ='TXM'), + CRIT_COMP =SIMP(statut='f',typ='TXM',defaut="EQ", + into=("EQ","LT","GT","NE","LE","GE","VIDE", + "NON_VIDE","MAXI","ABS_MAXI","MINI","ABS_MINI") ), + b_vale =BLOC(condition = "(CRIT_COMP in ('EQ','NE','GT','LT','GE','LE'))", + regles=(UN_PARMI('VALE','VALE_I','VALE_K','VALE_C',),), + VALE =SIMP(statut='f',typ='R'), + VALE_I =SIMP(statut='f',typ='I'), + VALE_C =SIMP(statut='f',typ='C'), + VALE_K =SIMP(statut='f',typ='TXM'),), + + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), + ), + + TITRE =SIMP(statut='f',typ='TXM',max='**' ), +) ; +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -15283,234 +13825,293 @@ MACR_ADAP_MAIL=MACRO(nom="MACR_ADAP_MAIL",op=macr_adap_mail_ops,sd_prod=macr_ada # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE F1BHHAJ J.ANGLES -from Macro.macr_ascouf_calc_ops import macr_ascouf_calc_ops -def macr_ascouf_calc_prod(self,MODELE,CHAM_MATER,CARA_ELEM,FOND_FISS,CHARGE,RESU_THER,**args): - self.type_sdprod(MODELE,modele_sdaster) - if CHAM_MATER != None:self.type_sdprod(CHAM_MATER,cham_mater) - if CARA_ELEM != None:self.type_sdprod(CARA_ELEM,cara_elem) - if FOND_FISS != None:self.type_sdprod(FOND_FISS,fond_fiss) - if CHARGE != None:self.type_sdprod(CHARGE,char_meca) - if RESU_THER != None:self.type_sdprod(RESU_THER,evol_ther) - return evol_noli - -MACR_ASCOUF_CALC=MACRO(nom="MACR_ASCOUF_CALC",op=macr_ascouf_calc_ops,sd_prod=macr_ascouf_calc_prod, - fr="Réalise l'analyse thermomécanique du coude dont le maillage a été concu par MACR_ASCOUF_MAIL", - reentrant='n', - UIinfo={"groupes":("Outils métier",)}, - regles=(UN_PARMI('COMP_INCR','COMP_ELAS'),), - - TYPE_MAILLAGE =SIMP(statut='o',typ='TXM', - into=("SAIN", - "FISS_COUDE", - "FISS_AXIS_DEB", - "SOUS_EPAIS_COUDE" - ) ), - - CL_BOL_P2_GV =FACT(statut='f', - ANGLE =SIMP(statut='o',typ='R' ), - AZIMUT =SIMP(statut='f',typ='R',defaut= 90. ), - ), - - MAILLAGE =SIMP(statut='o',typ=maillage_sdaster ), - MODELE =SIMP(statut='o',typ=CO,), - CHAM_MATER =SIMP(statut='f',typ=CO,), - CARA_ELEM =SIMP(statut='f',typ=CO,), - FOND_FISS =SIMP(statut='f',typ=CO,), - CHARGE =SIMP(statut='f',typ=CO,), - RESU_THER =SIMP(statut='f',typ=CO,), - - AFFE_MATERIAU =FACT(statut='o',max=3, - regles=(UN_PARMI('TOUT','GROUP_MA'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ='TXM',into=("COUDE","BOL") ), - MATER =SIMP(statut='o',typ=mater_sdaster ), - TEMP_REF =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - ), - - PRES_REP =FACT(statut='f', - PRES =SIMP(statut='o',typ='R' ), - EFFE_FOND_P1 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - PRES_LEVRE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - ECHANGE =FACT(statut='f', - COEF_H =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - TEMP_EXT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - TORS_P1 =FACT(statut='f',max=6, - regles=(AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),), - FX =SIMP(statut='f',typ='R' ), - FY =SIMP(statut='f',typ='R' ), - FZ =SIMP(statut='f',typ='R' ), - MX =SIMP(statut='f',typ='R' ), - MY =SIMP(statut='f',typ='R' ), - MZ =SIMP(statut='f',typ='R' ), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - - COMP_INCR =FACT(statut='f', - RELATION =SIMP(statut='o',typ='TXM',into=("VMIS_ISOT_TRAC",) ), - VMIS_ISOT_TRAC =SIMP(statut='c',typ='I',defaut= 2,into=( 2 ,) ), - RESI_INTE_RELA =SIMP(statut='f',typ='R' - ,defaut= 1.0E-6), - ITER_INTE_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), - ITER_INTE_PAS =SIMP(statut='f',typ='I',defaut= 0 ), - RESO_INTE =SIMP(statut='f',typ='TXM',defaut="IMPLICITE", - into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")), - ), - - COMP_ELAS =FACT(statut='f', - RELATION =SIMP(statut='o',typ='TXM',into=("ELAS","ELAS_VMIS_TRAC") ), - ELAS =SIMP(statut='c',typ='I',defaut= 1,into=( 1 ,) ), - ELAS_VMIS_TRAC =SIMP(statut='c',typ='I',defaut= 1,into=( 1 ,) ), - RESI_INTE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-6), - ITER_INTE_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), - ITER_INTE_PAS =SIMP(statut='f',typ='I',defaut= 0 ), - RESO_INTE =SIMP(statut='f',typ='TXM',defaut="IMPLICITE", - into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")), - ), - - SOLVEUR =FACT(statut='d', - METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ), - b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale", - RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), - ), - b_ldlt =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT", - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), - ), - b_ldlt_mult =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ", - fr="Paramètres relatifs à la non inversibilité de la matrice à factorise", - NPREC =SIMP(statut='f',typ='I',defaut= 8 ), - STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - b_gcpc =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué", - PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ), - NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), - RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), - NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), - ), - SYME =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - ), - - CONVERGENCE =FACT(statut='d', - RESI_GLOB_MAXI =SIMP(statut='f',typ='R'), - RESI_GLOB_RELA =SIMP(statut='f',typ='R'), - ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut=10), - ARRET =SIMP(statut='f',typ='TXM',defaut="OUI"), - ), - - NEWTON =FACT(statut='d', - REAC_INCR =SIMP(statut='f',typ='I',defaut= 1 ), - PREDICTION =SIMP(statut='f',typ='TXM',into=("DEPL_CALCULE","TANGENTE","ELASTIQUE","EXTRAPOL") ), - MATRICE =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE") ), - REAC_ITER =SIMP(statut='f',typ='I',defaut=0), - EVOL_NOLI =SIMP(statut='f',typ=evol_noli), - ), - - RECH_LINEAIRE =FACT(statut='d', - RESI_LINE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - ITER_LINE_MAXI =SIMP(statut='f',typ='I',defaut= 3), - ), +def fact_grad_prod(MATR_ASSE,**args): + if AsType(MATR_ASSE) == matr_asse_depl_r : return matr_asse_depl_r + if AsType(MATR_ASSE) == matr_asse_temp_r : return matr_asse_temp_r + if AsType(MATR_ASSE) == matr_asse_pres_r : return matr_asse_pres_r + raise AsException("type de concept resultat non prevu") - INCREMENT =FACT(statut='o', - regles=(EXCLUS('NUME_INST_INIT','INST_INIT'), - EXCLUS('NUME_INST_FIN','INST_FIN'),), - LIST_INST =SIMP(statut='o',typ=listr8_sdaster), - EVOLUTION =SIMP(statut='f',typ='TXM',defaut="CHRONOLOGIQUE", - into=("CHRONOLOGIQUE","RETROGRADE","SANS",) ), - NUME_INST_INIT =SIMP(statut='f',typ='I'), - INST_INIT =SIMP(statut='f',typ='R'), - NUME_INST_FIN =SIMP(statut='f',typ='I'), - INST_FIN =SIMP(statut='f',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), - # DEBUT DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS - SUBD_METHODE =SIMP( statut='f',typ='TXM', - into =("AUCUNE","UNIFORME","EXTRAPOLE"), - defaut="AUCUNE", - fr="Méthode de subdivision des pas de temps en cas de non-convergence" - ), - b_subd_unif=BLOC(condition = "SUBD_METHODE == 'UNIFORME'", - regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), - SUBD_COEF_PAS_1=SIMP(statut='f',typ='R',defaut=1.0,val_min=0.0, - fr="Coefficient multiplicateur de la 1ère subdivision"), - SUBD_PAS =SIMP(statut='f',typ='I',defaut=4,val_min=2, - fr="Nombre de subdivision d'un pas de temps"), - SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, - fr="Nombre maximum de niveau de subdivision d'un pas de temps"), - SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, - fr="Pas de temps en dessous duquel on ne subdivise plus"), - ), - b_subd_extr=BLOC(condition = "SUBD_METHODE == 'EXTRAPOLE'", - regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), - SUBD_OPTION =SIMP(statut='f',typ='TXM', - into =("IGNORE_PREMIERES","GARDE_DERNIERES",), - defaut="IGNORE_PREMIERES", - fr="Technique d'extrapolation : les 1ere itérations sont ignorées ou les dernières sont gardées"), - SUBD_ITER_IGNO =SIMP(statut='c',typ='I',defaut=3,val_min=0, - fr="Les n premières itérations sont ignorées pour l'extrapolation"), - SUBD_ITER_FIN =SIMP(statut='c',typ='I',defaut=8,val_min=3, - fr="Seules les n dernières itérations sont prises pour l'extrapolation"), - SUBD_PAS =SIMP(statut='c',typ='I',defaut=4,val_min=2, - fr="Nombre de subdivision d'un pas de temps en cas divergence"), - SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, - fr="Nombre maximum de niveau de subdivision d'un pas de temps"), - SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, - fr="Pas de temps en dessous duquel on ne subdivise plus"), - SUBD_ITER_PLUS =SIMP(statut='c',typ='I',defaut=50,val_min=20, - fr="% itération autorisée en plus"), - ), - # FIN DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS - ), +FACT_GRAD=OPER(nom="FACT_GRAD",op=85,sd_prod=fact_grad_prod, + UIinfo={"groupes":("Résolution",)}, + fr="Construire une matrice de préconditionnement pour une résolution par gradient conjugué", + reentrant='n', + MATR_ASSE =SIMP(statut='o', + typ=(matr_asse_depl_r,matr_asse_temp_r, + matr_asse_pres_r) ), + PRE_COND =SIMP(statut='f',typ='TXM',defaut="LDLT_INC",into=("LDLT_INC",) ), + NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), + INFO =SIMP(statut='f',typ='I',into=(1,2) ), +) ; +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE VABHHTS J.PELLET +def fact_ldlt_prod(MATR_ASSE,**args): + if AsType(MATR_ASSE) == matr_asse_depl_r : return matr_asse_depl_r + if AsType(MATR_ASSE) == matr_asse_depl_c : return matr_asse_depl_c + if AsType(MATR_ASSE) == matr_asse_temp_r : return matr_asse_temp_r + if AsType(MATR_ASSE) == matr_asse_temp_c : return matr_asse_temp_c + if AsType(MATR_ASSE) == matr_asse_pres_r : return matr_asse_pres_r + if AsType(MATR_ASSE) == matr_asse_pres_c : return matr_asse_pres_c + raise AsException("type de concept resultat non prevu") - THETA_3D =FACT(statut='f',max='**', - R_INF =SIMP(statut='o',typ='R' ), - R_SUP =SIMP(statut='o',typ='R' ), - ), +FACT_LDLT=OPER(nom="FACT_LDLT",op=14,sd_prod=fact_ldlt_prod, + fr="Factoriser une matrice assemblée en un produit de deux matrices triangulaires", + reentrant='f', + UIinfo={"groupes":("Résolution",)}, + regles=(EXCLUS('BLOC_DEBUT','DDL_DEBUT'), + EXCLUS('BLOC_FIN','DDL_FIN'),), + MATR_ASSE =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_temp_r, + matr_asse_temp_c,matr_asse_pres_r,matr_asse_pres_c) ), + STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + NPREC =SIMP(statut='f',typ='I',defaut=8,val_min=0,), + PRE_COND =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SANS","DIAG") ), + BLOC_DEBUT =SIMP(statut='f',typ='I',val_min=1,), + DDL_DEBUT =SIMP(statut='f',typ='I',val_min=1,), + BLOC_FIN =SIMP(statut='f',typ='I',val_min=1,), + DDL_FIN =SIMP(statut='f',typ='I',val_min=1,), +# + EPS =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - IMPR_TABLE =FACT(statut='f', - regles=(UN_PARMI('TOUT_PARA','NOM_PARA', ), - PRESENT_PRESENT('TOUT_PARA','ANGLE', ), - PRESENT_PRESENT('TOUT_PARA','R_CINTR', ), - UN_PARMI('POSI_CURV_LONGI','POSI_ANGUL',),), - NOM_PARA =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=4, - into=("TRESCA_MEMBRANE", - "TRESCA_MFLE", - "TRESCA", - "SI_LONG" - "SI_RADI" - "SI_CIRC" - ) ), - TOUT_PARA =SIMP(statut='f',typ='TXM',into=("OUI",) ), - ANGLE =SIMP(statut='f',typ='R',max='**' ), - R_CINTR =SIMP(statut='f',typ='R',max='**' ), - POSI_CURV_LONGI =SIMP(statut='f',typ='R',max='**' ), - POSI_ANGUL =SIMP(statut='f',typ='R',max='**' ), - TRANSFORMEE =SIMP(statut='f',typ='TXM',defaut="COUDE",into=("COUDE","TUBE") ), - ), +# mots clés pour solveur MUMPS : + TYPE_RESOL =SIMP(statut='f',typ='TXM',defaut='AUTO',into=('NONSYM','SYMGEN','SYMDEF','AUTO')), + PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=20,), - IMPRESSION =FACT(statut='f', - FORMAT =SIMP(statut='f',typ='TXM',defaut="RESULTAT", - into=("RESULTAT","ASTER","IDEAS","CASTEM") ), - - b_format_ideas =BLOC(condition="FORMAT=='IDEAS'",fr="version Ideas", - VERSION =SIMP(statut='f',typ='I',defaut=5,into=(4,5)), - ), + TITRE =SIMP(statut='f',typ='TXM',max='**'), + INFO =SIMP(statut='f',typ='I',into=(1,2) ), +) ; +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +FIN=PROC(nom="FIN",op=9999,repetable='n',fr="Fin d'une étude, fin du travail engagé par une des commandes DEBUT ou POURSUITE", + UIinfo={"groupes":("Gestion du travail",)}, + FORMAT_HDF =SIMP(fr="sauvegarde de la base GLOBALE au format HDF",statut='f', + typ='TXM',defaut="NON",into=("OUI","NON",) ), + RETASSAGE =SIMP(fr="provoque le retassage de la base GLOBALE", + statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ), + PERFORMANCE =SIMP(fr="provoque l'impression d'un résumé des mesures de temps ", + statut='f',typ='TXM',defaut="OUI",into=("OUI","NON",) ), + INFO_RESU =SIMP(fr="provoque l'impression des informations sur les structures de données", + statut='f',typ='TXM',defaut="OUI",into=("OUI","NON",) ), + UNITE =SIMP(statut='f',typ='I',defaut=6), +) ; +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +FONC_FLUI_STRU=OPER(nom="FONC_FLUI_STRU",op= 169,sd_prod=fonction_sdaster, + reentrant='n',fr="Crée une fonction constante paramètrée par l'abscisse curviligne", + UIinfo={"groupes":("Fonction",)}, + TYPE_FLUI_STRU =SIMP(statut='o',typ=(type_flui_stru) ), +) ; +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +def form_pyth_ops(self,d): + import types,string + NOM_PARA=self.etape['NOM_PARA'] + VALE =self.etape['VALE'] + if type(NOM_PARA) not in (types.ListType,types.TupleType) : NOM_PARA=[NOM_PARA,] + if self.sd==None : return + texte=string.join(VALE.splitlines()) - b_format_castem =BLOC(condition="FORMAT=='CASTEM'",fr="version Castem", - NIVE_GIBI =SIMP(statut='f',typ='I',defaut=10,into=(3,10)), - ), + self.sd.setFormule(NOM_PARA,string.strip(texte)) - ), +FORMULE=FORM(nom="FORMULE",op_init=form_pyth_ops,op=-5, + sd_prod=formule,UIinfo={"groupes":("Fonction",)}, + fr="Définit une formule réelle à partir de son expression mathématique", + VALE =SIMP(statut='f',typ='TXM'), + NOM_PARA =SIMP(statut='o',typ='TXM',max='**'), +); +#& MODIF COMMANDE DATE 10/10/2006 AUTEUR MCOURTOI M.COURTOIS +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE CAMBIER S.CAMBIER +GENE_FONC_ALEA=OPER(nom="GENE_FONC_ALEA",op= 118,sd_prod=table_fonction, + fr="Génération de la fonction temporelle à partir d une matrice interspectrale", + reentrant='n', + UIinfo={"groupes":("Fonction",)}, + INTE_SPEC =SIMP(statut='o',typ=table_fonction), + NUME_VITE_FLUI =SIMP(statut='f',typ='I' ), + INTERPOL =SIMP(statut='f',typ='TXM',defaut="OUI",into=("NON","OUI") ), + b_interpol_oui =BLOC(condition = "INTERPOL == 'OUI' ",fr="Parametres cas interpolation autorisee", + DUREE_TIRAGE =SIMP(statut='f',typ='R' ), + FREQ_INIT =SIMP(statut='f',typ='R' ), + FREQ_FIN =SIMP(statut='f',typ='R' ), + ), + NB_POIN =SIMP(statut='f',typ='I'), + NB_TIRAGE =SIMP(statut='f',typ='I',defaut= 1 ), + INIT_ALEA =SIMP(statut='f',typ='I'), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), + TITRE =SIMP(statut='f',typ='TXM',max='**'), +) ; +#& MODIF COMMANDE DATE 11/07/2005 AUTEUR CAMBIER S.CAMBIER +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE CAMBIER S.CAMBIER +def gene_matr_alea_prod(MATR_MOYEN,**args ): + if (AsType(MATR_MOYEN) == matr_asse_gene_r ) : return matr_asse_gene_r + if (AsType(MATR_MOYEN) == macr_elem_dyna) : return macr_elem_dyna + raise AsException("type de concept resultat non prevu") - TITRE =SIMP(statut='f',typ='TXM' ), +GENE_MATR_ALEA=OPER(nom="GENE_MATR_ALEA",op= 27, +#sd_prod=matr_asse_gene_r, +sd_prod=gene_matr_alea_prod, + fr="Générer une réalisation d'une matrice aléatoire réelle sym. déf. positive ou d'un macro élément dynamique", + reentrant='n', + UIinfo={"groupes":("Matrice",)}, + MATR_MOYEN = SIMP(statut='o', typ=(matr_asse_gene_r,macr_elem_dyna)), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), -) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +# cas matrice generalisee + b_matr =BLOC( condition = "AsType(MATR_MOYEN) in (matr_asse_gene_r,)", + COEF_VAR = SIMP(statut='f', typ='R', defaut=0.1, val_min=0.E+0 , + fr="coefficient de variation de la matrice a generer" ), + ), +# cas macr_elem_dyna + b_macr =BLOC( condition = "AsType(MATR_MOYEN) in (macr_elem_dyna,)", + fr="cas macr_elem_dyna (sous-structuratio)", + COEF_VAR_RIGI = SIMP(statut='f', typ='R', defaut=0.1, val_min=0.E+0 , + fr="coefficient de variation de la matrice de raideur" ), + COEF_VAR_MASS = SIMP(statut='f', typ='R', defaut=0., val_min=0.E+0 , + fr="coefficient de variation de la matrice de masse" ), + COEF_VAR_AMOR = SIMP(statut='f', typ='R', defaut=0., val_min=0.E+0 , + fr="coefficient de variation de la matrice d'amortissement" ),), + + INIT_ALEA =SIMP(statut='f',typ='I'), +) ; + +#& MODIF COMMANDE DATE 05/02/2007 AUTEUR ZENTNER I.ZENTNER +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE CAMBIER S.CAMBIER +from Macro.gene_vari_alea_ops import gene_vari_alea_ops,gene_vari_alea_init +GENE_VARI_ALEA=MACRO(nom="GENE_VARI_ALEA", + op_init=gene_vari_alea_init,op=gene_vari_alea_ops, + sd_prod=reel,reentrant='n', + fr="Générer une réalisation d'une variable aléatoire réelle de loi de probabilité donnée (Gamma ou Exponentielle)", + UIinfo={"groupes":("Fonction",)}, + TYPE = SIMP(statut='f', typ='TXM', into=("EXP_TRONQUEE", "EXPONENTIELLE", "GAMMA"), defaut="GAMMA"), + b_gamma =BLOC(condition = "TYPE == 'GAMMA' ",fr="Parametres loi gamma", + VALE_MOY = SIMP(statut='f', typ='R', defaut=1.), + BORNE_INF = SIMP(statut='f', typ='R', defaut=0.), + COEF_VAR = SIMP(statut='f', typ='R', defaut=0.1), + ), + b_expo =BLOC(condition = "TYPE == 'EXPONENTIELLE' ",fr="Parametres loi exponentielle", + VALE_MOY = SIMP(statut='f', typ='R', defaut=0.), + BORNE_INF = SIMP(statut='f', typ='R', defaut=-1.), + ), + b_expo_tronq =BLOC(condition = "TYPE == 'EXP_TRONQUEE' ",fr="Parametres loi exponentielle tronquee", + VALE_MOY = SIMP(statut='f', typ='R', defaut=0.), + BORNE_INF = SIMP(statut='f', typ='R', defaut=-1.), + BORNE_SUP = SIMP(statut='f', typ='R', defaut=1.), + ), + INIT_ALEA =SIMP(statut='f',typ='I'), +) +#& MODIF COMMANDE DATE 23/08/2004 AUTEUR CIBHHLV L.VIVAN # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -15528,137 +14129,189 @@ MACR_ASCOUF_CALC=MACRO(nom="MACR_ASCOUF_CALC",op=macr_ascouf_calc_ops,sd_prod=ma # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE F1BHHAJ J.ANGLES -from Macro.macr_ascouf_mail_ops import macr_ascouf_mail_ops -MACR_ASCOUF_MAIL=MACRO(nom="MACR_ASCOUF_MAIL",op=macr_ascouf_mail_ops,sd_prod=maillage_sdaster, - fr="Engendre le maillage d'un coude sain ou comportant une fissure ou une (ou plusieurs) sous-épaisseur(s)", - UIinfo={"groupes":("Outils métier",)},reentrant='n', - - regles=(EXCLUS('SOUS_EPAIS_COUDE','FISS_COUDE','SOUS_EPAIS_MULTI'),), - - EXEC_MAILLAGE =FACT(statut='o', - LOGICIEL =SIMP(statut='o',typ='TXM',defaut="GIBI2000",into=("GIBI98","GIBI2000") ), - UNITE_DATG =SIMP(statut='f',typ='I',defaut=70), - UNITE_MGIB =SIMP(statut='f',typ='I',defaut=19), - NIVE_GIBI =SIMP(statut='f',typ='I',defaut=10,into=(3,4,5,6,7,8,9,10,11)), - ), - - TYPE_ELEM =SIMP(statut='f',typ='TXM',defaut="CU20",into=("CU20","CUB8") ), - - COUDE =FACT(statut='o', - ANGLE =SIMP(statut='o',typ='R' ), - R_CINTR =SIMP(statut='o',typ='R' ), - L_TUBE_P1 =SIMP(statut='o',typ='R' ), - L_TUBE_P2 =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - NB_ELEM_EPAIS =SIMP(statut='f',typ='I',defaut= 3 ), - SYME =SIMP(statut='f',typ='TXM',defaut="ENTIER",into=("ENTIER","QUART","DEMI") ), - TRANSFORMEE =SIMP(statut='o',typ='TXM',defaut="COUDE",into=("COUDE","TUBE") ), - b_transf_coude =BLOC(condition = "TRANSFORMEE == 'COUDE' ", - DEXT =SIMP(statut='o',typ='R' ), - EPAIS =SIMP(statut='o',typ='R' ), - SUR_EPAIS =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - BOL_P2 =SIMP(statut='f',typ='TXM',into=("ASP_MPP","CUVE","GV") ), - ), - b_transf_tube =BLOC(condition = "TRANSFORMEE == 'TUBE' ", - TRAN_EPAIS =SIMP(statut='o',typ='TXM',defaut="NON",into=("OUI","NON") ), - b_trans_epais_oui =BLOC(condition = "TRAN_EPAIS == 'OUI' ", - regles=(ENSEMBLE('ANGL_TETA2','EPAIS_TI'), - UN_PARMI('ABSC_CURV_TRAN','POSI_ANGU_TRAN'),), - DEXT_T1 =SIMP(statut='o',typ='R' ), - EPAIS_T1 =SIMP(statut='o',typ='R' ), - EPAIS_T2 =SIMP(statut='o',typ='R' ), - EPAIS_TI =SIMP(statut='f',typ='R' ), - ANGL_TETA1 =SIMP(statut='o',typ='R' ), - ANGL_TETA2 =SIMP(statut='f',typ='R' ), - ABSC_CURV_TRAN =SIMP(statut='f',typ='R' ), - POSI_ANGU_TRAN =SIMP(statut='f',typ='R' ), - ), - b_trans_epais_non =BLOC(condition = "TRAN_EPAIS == 'NON' ", - DEXT =SIMP(statut='o',typ='R' ), - EPAIS =SIMP(statut='o',typ='R' ), - SUR_EPAIS =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - BOL_P2 =SIMP(statut='f',typ='TXM',into=("ASP_MPP","CUVE","GV") ), - ), - ), - ), +IMPR_CHARGE=PROC(nom="IMPR_CHARGE",op= 158, + fr="Impression des charges mécaniques de type ddl imposés et relations linéaires entre les ddl", + UIinfo={"groupes":("Fonction",)}, + UNITE =SIMP(statut='f',typ='I',defaut=30), + FORMAT =SIMP(statut='f',typ='TXM',defaut="IDEAS",into=("IDEAS",) ), + VERSION =SIMP(statut='f',typ='I',defaut= 5,into=( 5 ,) ), + CHARGE =SIMP(statut='o',typ=char_meca,validators=NoRepeat(),max='**', ), +) ; +#& MODIF COMMANDE DATE 10/05/2006 AUTEUR MCOURTOI M.COURTOIS +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE VABHHTS J.PELLET +IMPR_CO=PROC(nom="IMPR_CO",op=17, + UIinfo={"groupes":("Impression",)}, + fr="Imprimer tous les objets JEVEUX qui constituent un concept utilisateur existant (pour les développeurs)", + regles=(UN_PARMI('CONCEPT','CHAINE','TOUT' ),), - SOUS_EPAIS_COUDE=FACT(statut='f', - regles=(UN_PARMI('POSI_CURV_LONGI','POSI_ANGUL'), - UN_PARMI('POSI_CURV_CIRC','AZIMUT'),), - TYPE =SIMP(statut='o',typ='TXM',into=("AXIS","ELLI") ), - AXE_CIRC =SIMP(statut='f',typ='R' ), - AXE_LONGI =SIMP(statut='o',typ='R' ), - PROFONDEUR =SIMP(statut='o',typ='R' ), - POSI_CURV_LONGI =SIMP(statut='f',typ='R' ), - POSI_ANGUL =SIMP(statut='f',typ='R' ), - POSI_CURV_CIRC =SIMP(statut='f',typ='R' ), - AZIMUT =SIMP(statut='f',typ='R' ), - SOUS_EPAIS =SIMP(statut='o',typ='TXM',into=("INTERNE","EXTERNE") ), - NB_ELEM_LONGI =SIMP(statut='o',typ='I' ), - NB_ELEM_CIRC =SIMP(statut='o',typ='I' ), - NB_ELEM_RADI =SIMP(statut='f',typ='I',defaut= 3 ), - EMPREINTE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), + UNITE =SIMP(statut='f',typ='I',defaut=8), + NIVEAU =SIMP(statut='f',typ='I',defaut=2,into=(-1,0,1,2) ), + ATTRIBUT =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","OUI") ), + CONTENU =SIMP(statut='f',typ='TXM',defaut="OUI",into=("NON","OUI") ), + BASE =SIMP(statut='f',typ='TXM',defaut="G",into=(" ","G","V","L") ), + CONCEPT =FACT(statut='f',max='**', + regles=(DERIVABLE('NOM'),), + NOM =SIMP(statut='o',typ=assd,validators=NoRepeat(),max='**'), + SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(), + fr="Paramètre de sensibilité.", + ang="Sensitivity parameter",max='**'),), + CHAINE =SIMP(statut='f',typ='TXM'), + POSITION =SIMP(statut='f',typ='I',defaut=1), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), +) ; +#& MODIF COMMANDE DATE 24/04/2007 AUTEUR COURTOIS M.COURTOIS +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE MCOURTOI M.COURTOIS +from Macro.impr_fonction_ops import impr_fonction_ops - SOUS_EPAIS_MULTI=FACT(statut='f',max='**', - regles=(UN_PARMI('POSI_CURV_LONGI','POSI_ANGUL'), - UN_PARMI('POSI_CURV_CIRC','AZIMUT'),), - TYPE =SIMP(statut='o',typ='TXM',into=("AXIS","ELLI") ), - AXE_CIRC =SIMP(statut='f',typ='R' ), - AXE_LONGI =SIMP(statut='o',typ='R' ), - PROFONDEUR =SIMP(statut='o',typ='R' ), - POSI_CURV_LONGI =SIMP(statut='f',typ='R' ), - POSI_ANGUL =SIMP(statut='f',typ='R' ), - POSI_CURV_CIRC =SIMP(statut='f',typ='R' ), - AZIMUT =SIMP(statut='f',typ='R' ), - SOUS_EPAIS =SIMP(statut='o',typ='TXM',into=("INTERNE","EXTERNE") ), - NB_ELEM_LONGI =SIMP(statut='o',typ='I' ), - NB_ELEM_CIRC =SIMP(statut='o',typ='I' ), - EMPREINTE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), +IMPR_FONCTION=MACRO(nom="IMPR_FONCTION",op=impr_fonction_ops,sd_prod=None, + fr="Imprime le contenu d'objets de type fonction ou liste de réels dans un fichier destiné à un traceur de courbe", + UIinfo={"groupes":("Fonction",)}, + FORMAT =SIMP(statut='o',typ='TXM',position='global',defaut='TABLEAU', + into=("TABLEAU","AGRAF","XMGRACE",),), + b_pilote = BLOC(condition = "FORMAT == 'XMGRACE'", + fr="Mots-clés propres à XMGRACE", + PILOTE =SIMP(statut='f',typ='TXM',defaut='', + into=('','POSTSCRIPT','EPS','MIF','SVG','PNM','PNG','JPEG','PDF','INTERACTIF'), + fr="Pilote de sortie, PNG/JPEG/PDF ne sont pas disponibles sur toutes les installations de xmgrace"), + UNITE =SIMP(statut='f',typ='I',val_min=10,val_max=90,defaut=29, + fr="Unité logique définissant le fichier (fort.N) dans lequel on écrit"), ), - - FISS_COUDE =FACT(statut='f', - regles=(UN_PARMI('ABSC_CURV','POSI_ANGUL'),), - AXIS =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON" ), - b_axis_non =BLOC(condition = "AXIS == 'NON' ", - LONGUEUR =SIMP(statut='o',typ='R' ), - ), - b_axis_oui =BLOC(condition = "AXIS == 'OUI' ", - LONGUEUR =SIMP(statut='f',typ='R' ), - ), - PROFONDEUR =SIMP(statut='o',typ='R' ), - ABSC_CURV =SIMP(statut='f',typ='R' ), - POSI_ANGUL =SIMP(statut='f',typ='R' ), - FISSURE =SIMP(statut='o',typ='TXM',into=("DEB_INT","DEB_EXT") ), - AZIMUT =SIMP(statut='f',typ='R',defaut= 90. ), - ORIEN =SIMP(statut='o',typ='R', - into=(45.,-45.,90.,0.E+0) ), - NB_TRANCHE =SIMP(statut='o',typ='I' ), - NB_SECTEUR =SIMP(statut='o',typ='I' ), - NB_COURONNE =SIMP(statut='o',typ='I' ), - RAYON_TORE =SIMP(statut='f',typ='R' ), - COEF_MULT_RC2 =SIMP(statut='f',typ='R',defaut= 1. ), - COEF_MULT_RC3 =SIMP(statut='f',typ='R' ), - ANGL_OUVERTURE =SIMP(statut='f',typ='R',defaut= 0.5 ), + b_agraf = BLOC(condition = "FORMAT == 'AGRAF'", + fr="Mots-clés propres à AGRAF", + UNITE =SIMP(statut='o',typ='I',defaut=25, + fr="Unité logique définissant le fichier (fort.N) dans lequel on écrit"), + UNITE_DIGR =SIMP(statut='o',typ='I',defaut=26, + fr="Unité logique définissant le fichier dans lequel on écrit les directives Agraf"), ), + # unite pour TABLEAU dans le bloc de mise en forme spécifique - IMPRESSION =FACT(statut='f',max='**', - regles=(PRESENT_PRESENT('FICHIER','UNITE'),), - FORMAT =SIMP(statut='f',typ='TXM',defaut="ASTER", - into=("ASTER","IDEAS","CASTEM") ), - b_format_ideas =BLOC(condition="FORMAT=='IDEAS'",fr="version Ideas", - VERSION =SIMP(statut='f',typ='I',defaut=5,into=(4,5)), - ), - b_format_castem =BLOC(condition="FORMAT=='CASTEM'",fr="version Castem", - NIVE_GIBI =SIMP(statut='f',typ='I',defaut=10,into=(3,10)), + COURBE =FACT(statut='o',max='**',fr="Définition de la fonction à tracer", + regles=(UN_PARMI('FONCTION','LIST_RESU','FONC_X','ABSCISSE'),), + FONCTION =SIMP(statut='f',typ=(fonction_sdaster, formule, fonction_c, nappe_sdaster), + fr="Fonction réelle ou complexe", ), + LIST_RESU =SIMP(statut='f',typ=listr8_sdaster, + fr="Liste des ordonnees d'une fonction réelle définie par deux listes", ), + FONC_X =SIMP(statut='f',typ=(fonction_sdaster,formule), + fr="Fonction abscisses d'une fonction paramétrique",), + ABSCISSE =SIMP(statut='f',typ='R',max='**', + fr="Valeurs des abscisses", ), + b_fonction =BLOC(condition = "FONCTION != None", + LIST_PARA =SIMP(statut='f',typ=listr8_sdaster ), + ), + b_fonction_c =BLOC(condition = "AsType(FONCTION) == fonction_c", + fr="Fonction complexe définie par le mot-clé fonction", + PARTIE =SIMP(statut='f',typ='TXM',into=("REEL","IMAG") ), + ), + b_list_resu =BLOC(condition = "LIST_RESU != None", + LIST_PARA =SIMP(statut='o',typ=listr8_sdaster ), + ), + b_fonc_x =BLOC(condition = "FONC_X != None", + FONC_Y =SIMP(statut='o',typ=(fonction_sdaster,formule),fr="Fonction ordonnées d une fonction paramétrique" ), + LIST_PARA =SIMP(statut='f',typ=listr8_sdaster ), + ), + b_vale_resu =BLOC(condition = "ABSCISSE != None", + ORDONNEE =SIMP(statut='o',typ='R',max='**', + fr="Valeurs des ordonnées"), ), - FICHIER =SIMP(statut='f',typ='TXM' ), - UNITE =SIMP(statut='f',typ='I' ), - ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), + # mots-clés utilisant uniquement aux formats autres que TABLEAU + # mais ce serait trop pénible de devoir les supprimer quand on change de format + # donc on ne les met pas dans un bloc + # "pseudo" bloc mise en forme : + LEGENDE =SIMP(statut='f',typ='TXM', + fr="Légende associée à la fonction" ), + STYLE =SIMP(statut='f',typ='I',val_min=0, + fr="Style de la ligne représentant la fonction",), + COULEUR =SIMP(statut='f',typ='I',val_min=0, + fr="Couleur associée à la fonction",), + MARQUEUR =SIMP(statut='f',typ='I',val_min=0, + fr="Type du marqueur associé à la fonction",), + FREQ_MARQUEUR =SIMP(statut='f',typ='I',defaut=0, + fr="Fréquence d impression du marqueur associé à la fonction", ), + # fin bloc mise en forme + + TRI =SIMP(statut='f',typ='TXM',defaut="N", + fr="Choix du tri effectué sur les abscisses ou sur les ordonnées", + into=("N","X","Y","XY","YX") ), + ), + # Mise en page du tableau ou du graphique + b_tableau = BLOC(condition = "FORMAT == 'TABLEAU'", + fr="Mots-clés propres au format Tableau", + UNITE =SIMP(statut='o',typ='I',defaut=8, + fr="Unité logique définissant le fichier (fort.N) dans lequel on écrit"), + TITRE =SIMP(statut='f',typ='TXM', + fr="Titre associé au graphique" ), + SOUS_TITRE =SIMP(statut='f',typ='TXM', + fr="Sous-titre du graphique" ), + SEPARATEUR =SIMP(statut='f',typ='TXM',defaut=' ', + fr="Séparateur des colonnes du tableau (ex : ' ', ';'...)"), + COMMENTAIRE =SIMP(statut='f',typ='TXM',defaut='#', + fr="Caractère indiquant au traceur de fonction que la ligne peut etre ignorée"), + DEBUT_LIGNE =SIMP(statut='f',typ='TXM',defaut='', + fr="Caractère de debut de ligne"), + FIN_LIGNE =SIMP(statut='f',typ='TXM',defaut='\n', + fr="Caractère de fin de ligne"), + ), + b_graphique = BLOC(condition = "FORMAT != 'TABLEAU'", + fr="Mise en page du graphique", + TITRE =SIMP(statut='f',typ='TXM', + fr="Titre associé au graphique" ), + SOUS_TITRE =SIMP(statut='f',typ='TXM', + fr="Sous-titre du graphique" ), + BORNE_X =SIMP(statut='f',typ='R',min=2,max=2, + fr="Intervalles de variation des abscisses"), + BORNE_Y =SIMP(statut='f',typ='R',min=2,max=2, + fr="Intervalles de variation des ordonnées"), + ECHELLE_X =SIMP(statut='f',typ='TXM',defaut="LIN",into=("LIN","LOG"), + fr="Type d'échelle pour les abscisses" ), + ECHELLE_Y =SIMP(statut='f',typ='TXM',defaut="LIN",into=("LIN","LOG"), + fr="Type d'échelle pour les ordonnées" ), + GRILLE_X =SIMP(statut='f',typ='R',max=1,val_min=0., + fr="Pas du quadrillage vertical" ), + GRILLE_Y =SIMP(statut='f',typ='R',max=1,val_min=0., + fr="Pas du quadrillage horizontal" ), + LEGENDE_X =SIMP(statut='f',typ='TXM', + fr="Légende associée à l'axe des abscisses" ), + LEGENDE_Y =SIMP(statut='f',typ='TXM', + fr="Légende associée à l'axe des ordonnées" ), + ), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 25/09/2006 AUTEUR MJBHHPE J.L.FLEJOU +#& MODIF COMMANDE DATE 21/02/2006 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -15676,251 +14329,240 @@ MACR_ASCOUF_MAIL=MACRO(nom="MACR_ASCOUF_MAIL",op=macr_ascouf_mail_ops,sd_prod=ma # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE F1BHHAJ J.ANGLES -from Macro.macr_aspic_calc_ops import macr_aspic_calc_ops - -def macr_aspic_calc_prod(self,MODELE,CHAM_MATER,CARA_ELEM,FOND_FISS_1,FOND_FISS_2,CHARGE,RESU_THER,**args): - if MODELE != None:self.type_sdprod(MODELE,modele_sdaster) - if CHAM_MATER != None:self.type_sdprod(CHAM_MATER,cham_mater) - if CARA_ELEM != None:self.type_sdprod(CARA_ELEM,cara_elem) - if FOND_FISS_1 != None:self.type_sdprod(FOND_FISS_1,fond_fiss) - if FOND_FISS_2 != None:self.type_sdprod(FOND_FISS_2,fond_fiss) - if CHARGE != None:self.type_sdprod(CHARGE,char_meca) - if RESU_THER != None:self.type_sdprod(RESU_THER,evol_ther) - return evol_noli - -MACR_ASPIC_CALC=MACRO(nom="MACR_ASPIC_CALC",op=macr_aspic_calc_ops,sd_prod=macr_aspic_calc_prod, - fr="Réalise un calcul prédéfini de piquages sains ou fissurés ainsi que les post-traitements associés ", - UIinfo={"groupes":("Outils métier",)},reentrant='n', - regles=(UN_PARMI('COMP_INCR','COMP_ELAS'),), - - TYPE_MAILLAGE =SIMP(statut='o',typ='TXM', - into=("SAIN_FIN","SAIN_GROS","FISS_COUR_DEB","FISS_COUR_NONDEB","FISS_LONG_DEB", - "FISS_LONG_NONDEB","FISS_AXIS_DEB","FISS_AXIS_NONDEB") ), - - TUBULURE =FACT(statut='o', - TYPE =SIMP(statut='o',typ='TXM',into=("TYPE_1","TYPE_2") ), - ), - MAILLAGE =SIMP(statut='o',typ=maillage_sdaster), - MODELE =SIMP(statut='f',typ=CO,), - CHAM_MATER =SIMP(statut='f',typ=CO,), - CARA_ELEM =SIMP(statut='f',typ=CO,), - FOND_FISS_1 =SIMP(statut='f',typ=CO,), - FOND_FISS_2 =SIMP(statut='f',typ=CO,), - CHARGE =SIMP(statut='f',typ=CO,), - RESU_THER =SIMP(statut='f',typ=CO,), - - AFFE_MATERIAU =FACT(statut='o',max=3, - regles=(UN_PARMI('TOUT','GROUP_MA'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",)), - GROUP_MA =SIMP(statut='f',typ='TXM',into=("TUBU","CORP","SOUD","SOUDCORP","SOUDTUBU") ), - MATER =SIMP(statut='o',typ=mater_sdaster), - TEMP_REF =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - RCCM =SIMP(statut='o',typ='TXM',into=("OUI","NON")), - ), - - EQUILIBRE =FACT(statut='o', - NOEUD =SIMP(statut='o',typ=no), - ), - - PRES_REP =FACT(statut='o', - PRES =SIMP(statut='o',typ='R'), - NOEUD =SIMP(statut='f',typ=no), - EFFE_FOND =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - PRES_LEVRE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - - ECHANGE =FACT(statut='f', - COEF_H_TUBU =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - COEF_H_CORP =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - TEMP_EXT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - - TORS_CORP =FACT(statut='f',max=6, - regles=(AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),), - NOEUD =SIMP(statut='o',typ=no), - FX =SIMP(statut='f',typ='R'), - FY =SIMP(statut='f',typ='R'), - FZ =SIMP(statut='f',typ='R'), - MX =SIMP(statut='f',typ='R'), - MY =SIMP(statut='f',typ='R'), - MZ =SIMP(statut='f',typ='R'), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - - TORS_TUBU =FACT(statut='f',max=6, - regles=(AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),), - FX =SIMP(statut='f',typ='R'), - FY =SIMP(statut='f',typ='R'), - FZ =SIMP(statut='f',typ='R'), - MX =SIMP(statut='f',typ='R'), - MY =SIMP(statut='f',typ='R'), - MZ =SIMP(statut='f',typ='R'), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - - COMP_INCR =FACT(statut='f', - RELATION =SIMP(statut='o',typ='TXM',into=("VMIS_ISOT_TRAC",) ), - VMIS_ISOT_TRAC =SIMP(statut='c',typ='I',defaut= 2,into=( 2 ,) ), - RESI_INTE_RELA =SIMP(statut='f',typ='R',defaut=1.0E-6), - ITER_INTE_MAXI =SIMP(statut='f',typ='I',defaut=10), - ITER_INTE_PAS =SIMP(statut='f',typ='I',defaut=0), - RESO_INTE =SIMP(statut='f',typ='TXM',defaut="IMPLICITE", - into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")), - ), - - COMP_ELAS =FACT(statut='f', - RELATION =SIMP(statut='o',typ='TXM',into=("ELAS","ELAS_VMIS_TRAC") ), - ELAS =SIMP(statut='c',typ='I',defaut= 1,into=( 1 ,) ), - ELAS_VMIS_TRAC =SIMP(statut='c',typ='I',defaut= 1,into=( 1 ,) ), - RESI_INTE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-6), - ITER_INTE_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), - ITER_INTE_PAS =SIMP(statut='f',typ='I',defaut= 0 ), - RESO_INTE =SIMP(statut='f',typ='TXM',defaut="IMPLICITE", - into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")), - ), - - THETA_3D =FACT(statut='f',max='**', - R_INF =SIMP(statut='o',typ='R'), - R_SUP =SIMP(statut='o',typ='R'), +IMPR_GENE=PROC(nom="IMPR_GENE",op= 157, + fr="Imprimer le résultat d'un calcul dynamique en variables généralisées au format RESULTAT", + UIinfo={"groupes":("Impression",)}, + FORMAT =SIMP(statut='f',typ='TXM',defaut="RESULTAT",into=("RESULTAT",) ), + UNITE =SIMP(statut='f',typ='I',defaut=8), + GENE =FACT(statut='o',max='**', + regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE', + 'LIST_INST','LIST_FREQ','TOUT_MODE','TOUT_INST','LIST_ORDRE'), + EXCLUS('TOUT_MODE','NUME_ORDRE','INST','FREQ','NUME_MODE', + 'LIST_INST','LIST_FREQ','TOUT_ORDRE','TOUT_INST','LIST_ORDRE'), + EXCLUS('TOUT_INST','NUME_ORDRE','INST','FREQ','NUME_MODE', + 'LIST_INST','LIST_FREQ','TOUT_ORDRE','LIST_ORDRE'), + EXCLUS('TOUT_CMP_GENE','NUME_CMP_GENE'), + EXCLUS('TOUT_CHAM','NOM_CHAM'), + EXCLUS('TOUT_PARA','NOM_PARA'),), +# faut-il faire des blocs selon le type de RESU_GENE + RESU_GENE =SIMP(statut='o',typ=(vect_asse_gene, tran_gene, mode_gene, harm_gene)), + TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster ), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), + TOUT_INST =SIMP(statut='f',typ='TXM',into=("OUI",) ), + FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster ), + TOUT_MODE =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF", + into=("RELATIF","ABSOLU") ), + TOUT_CMP_GENE =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), + NUME_CMP_GENE =SIMP(statut='f',typ='I',max='**'), + TOUT_CHAM =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), + NOM_CHAM =SIMP(statut='f',typ='TXM',max='**'), + TOUT_PARA =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), + NOM_PARA =SIMP(statut='f',typ='TXM',max='**'), + SOUS_TITRE =SIMP(statut='f',typ='TXM',max='**'), + INFO_CMP_GENE =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), + INFO_GENE =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), ), - - OPTION =SIMP(statut='f',typ='TXM',into=("CALC_G_MAX","CALC_G_MAX_LOCAL") ), - BORNES =FACT(statut='f',max='**', - NUME_ORDRE =SIMP(statut='o',typ='I'), - VALE_MIN =SIMP(statut='o',typ='R'), - VALE_MAX =SIMP(statut='o',typ='R'), +) ; +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +IMPR_JEVEUX=PROC(nom="IMPR_JEVEUX",op=16, + UIinfo={"groupes":("Impression",)}, + fr="Imprimer le contenu des objets créés par JEVEUX (pour développeur)", + ENTITE =SIMP(fr="choix de l'observation",statut='o',typ='TXM', + into=("DISQUE","MEMOIRE","REPERTOIRE", + "OBJET","ATTRIBUT","SYSTEME") ), + b_objet =BLOC(condition = "(ENTITE=='OBJET')", + NOMOBJ =SIMP(fr="nom d'objet",statut='f',typ='TXM' ), + NUMOC =SIMP(fr="numéro d objet de collection",statut='f',typ='I' ), + NOMOC =SIMP(fr="nom d'objet de collection",statut='f',typ='TXM' ), ), - - SOLVEUR =FACT(statut='d', - METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ), - b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale", - RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), - ), - b_ldlt =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT", - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), - ), - b_ldlt_mult =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ", - fr="Paramètres relatifs à la non iversibilité de la matrice à factorise", - NPREC =SIMP(statut='f',typ='I',defaut= 8 ), - STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - b_gcpc =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué", - PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ), - NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), - RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), - NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), - ), - SYME =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + b_attribut =BLOC(condition = "(ENTITE=='ATTRIBUT')", + NOMOBJ =SIMP(fr="nom de collection",statut='f',typ='TXM' ), + NOMATR =SIMP(fr="nom d attribut de collection",statut='f',typ='TXM', + into=('$$DESO','$$IADD','$$IADM','$$NOM','$$LONG', + '$$LONO','$$LUTI','$$NUM') ), ), - - CONVERGENCE =FACT(statut='d', - RESI_GLOB_MAXI =SIMP(statut='f',typ='R'), - RESI_GLOB_RELA =SIMP(statut='f',typ='R'), - ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut=10), - ARRET =SIMP(statut='f',typ='TXM',defaut="OUI"), + b_systeme =BLOC(condition = "(ENTITE=='SYSTEME')", + CLASSE =SIMP(statut='o',typ='TXM',into=('G','V','L') ), + NOMATR =SIMP(fr="nom d attribut systeme",statut='f',typ='TXM', + into=('$$CARA','$$IADD','$$GENR','$$TYPE','$$MARQ', + '$$DOCU','$$ORIG','$$RNOM','$$LTYP','$$LONG', + '$$LONO','$$DATE','$$LUTI','$$HCOD','$$INDX', + '$$TLEC','$$TECR','$$IADM','$$ACCE','$$USADI') ), ), - - NEWTON =FACT(statut='d', - REAC_INCR =SIMP(statut='f',typ='I',defaut=1), - PREDICTION =SIMP(statut='f',typ='TXM',into=("TANGENTE","ELASTIQUE","EXTRAPOL","DEPL_CALCULE")), - MATRICE =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE")), - REAC_ITER =SIMP(statut='f',typ='I',defaut= 0), + b_repertoire =BLOC(condition = "(ENTITE=='REPERTOIRE')", + CLASSE =SIMP(statut='f',typ='TXM',into=('G','V','L',' '),defaut=' '), ), - - RECH_LINEAIRE =FACT(statut='d', - RESI_LINE_RELA =SIMP(statut='f',typ='R',defaut=1.0E-3), - ITER_LINE_MAXI =SIMP(statut='f',typ='I',defaut=3), + b_disque =BLOC(condition = "(ENTITE=='DISQUE')", + CLASSE =SIMP(statut='f',typ='TXM' ,into=('G','V','L',' '),defaut=' '), ), - - INCREMENT =FACT(statut='o', - regles=(EXCLUS('NUME_INST_INIT','INST_INIT'), - EXCLUS('NUME_INST_FIN','INST_FIN'),), - LIST_INST =SIMP(statut='o',typ=listr8_sdaster), - EVOLUTION =SIMP(statut='f',typ='TXM',defaut="CHRONOLOGIQUE", - into=("CHRONOLOGIQUE","RETROGRADE","SANS",) ), - NUME_INST_INIT =SIMP(statut='f',typ='I'), - INST_INIT =SIMP(statut='f',typ='R'), - NUME_INST_FIN =SIMP(statut='f',typ='I'), - INST_FIN =SIMP(statut='f',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), - # DEBUT DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS - SUBD_METHODE =SIMP( statut='f',typ='TXM', - into =("AUCUNE","UNIFORME","EXTRAPOLE"), - defaut="AUCUNE", - fr="Méthode de subdivision des pas de temps en cas de non-convergence" - ), - b_subd_unif=BLOC(condition = "SUBD_METHODE == 'UNIFORME'", - regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), - SUBD_COEF_PAS_1=SIMP(statut='f',typ='R',defaut=1.0,val_min=0.0, - fr="Coefficient multiplicateur de la 1ère subdivision"), - SUBD_PAS =SIMP(statut='f',typ='I',defaut=4,val_min=2, - fr="Nombre de subdivision d'un pas de temps"), - SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, - fr="Nombre maximum de niveau de subdivision d'un pas de temps"), - SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, - fr="Pas de temps en dessous duquel on ne subdivise plus"), - ), - b_subd_extr=BLOC(condition = "SUBD_METHODE == 'EXTRAPOLE'", - regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), - SUBD_OPTION =SIMP(statut='f',typ='TXM', - into =("IGNORE_PREMIERES","GARDE_DERNIERES",), - defaut="IGNORE_PREMIERES", - fr="Technique d'extrapolation : les 1ere itérations sont ignorées ou les dernières sont gardées"), - SUBD_ITER_IGNO =SIMP(statut='c',typ='I',defaut=3,val_min=0, - fr="Les n premières itérations sont ignorées pour l'extrapolation"), - SUBD_ITER_FIN =SIMP(statut='c',typ='I',defaut=8,val_min=3, - fr="Seules les n dernières itérations sont prises pour l'extrapolation"), - SUBD_PAS =SIMP(statut='c',typ='I',defaut=4,val_min=2, - fr="Nombre de subdivision d'un pas de temps en cas divergence"), - SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, - fr="Nombre maximum de niveau de subdivision d'un pas de temps"), - SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, - fr="Pas de temps en dessous duquel on ne subdivise plus"), - SUBD_ITER_PLUS =SIMP(statut='c',typ='I',defaut=50,val_min=20, - fr="% itération autorisée en plus"), - ), - # FIN DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS + IMPRESSION =FACT(statut='f', + NOM =SIMP(statut='f',typ='TXM' ), + UNITE =SIMP(statut='f',typ='I'), ), + COMMENTAIRE =SIMP(statut='f',typ='TXM' ), +) ; +#& MODIF COMMANDE DATE 29/05/2007 AUTEUR VOLDOIRE F.VOLDOIRE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +IMPR_MACR_ELEM=PROC(nom="IMPR_MACR_ELEM",op= 160, + UIinfo={"groupes":("Impression",)}, + fr="Impression d'une structure de données MACR_ELEM_DYNA au format IDEAS MISS3D PLEXUS ou CADYRO", + MACR_ELEM_DYNA =SIMP(statut='o',typ=macr_elem_dyna ), + FORMAT =SIMP(statut='f',typ='TXM',defaut="IDEAS", + into=("MISS_3D","IDEAS","CADYRO","PLEXUS") ), - PAS_AZIMUT =SIMP(statut='f',typ='I',defaut=1), - - IMPRESSION =FACT(statut='f', - FORMAT =SIMP(statut='f',typ='TXM',defaut="RESULTAT", - into=("RESULTAT","ASTER","CASTEM","IDEAS")), - - b_format_ideas =BLOC(condition="FORMAT=='IDEAS'",fr="version Ideas", - VERSION =SIMP(statut='f',typ='I',defaut=5,into=(4,5)), - ), + b_plexus =BLOC(condition = "FORMAT == 'IDEAS'", + UNITE =SIMP(statut='f',typ='I',defaut=30), + VERSION =SIMP(statut='f',typ='I',defaut= 5,into=( 5 ,) ), + ), - b_format_castem =BLOC(condition="FORMAT=='CASTEM'",fr="version Castem", - NIVE_GIBI =SIMP(statut='f',typ='I',defaut=10,into=(3,10)), - ), + b_ideas =BLOC(condition = "FORMAT == 'PLEXUS'", + UNITE =SIMP(statut='f',typ='I',defaut=30), + VERSION =SIMP(statut='f',typ='I',defaut= 5,into=( 5 ,) ), + ), - b_extrac =BLOC(condition="((FORMAT=='IDEAS')or(FORMAT=='CASTEM'))", - fr="extraction d un champ de grandeur", - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST'),), - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=3, - into=("DEPL","EQUI_ELNO_SIGM","TEMP")), - - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - ), + b_miss_3d =BLOC(condition = "FORMAT == 'MISS_3D'", + regles=(EXCLUS('AMOR_REDUIT','LIST_AMOR'),), + UNITE =SIMP(statut='f',typ='I',defaut= 26 ), + SOUS_TITRE =SIMP(statut='f',typ='TXM',max='**'), + AMOR_REDUIT =SIMP(statut='f',typ='R' ,max='**'), + LIST_AMOR =SIMP(statut='f',typ=listr8_sdaster ), + GROUP_MA_INTERF =SIMP(statut='o',typ=grma ,max='**'), + GROUP_MA_FLU_STR=SIMP(statut='f',typ=grma,max='**'), + GROUP_MA_FLU_SOL=SIMP(statut='f',typ=grma,max='**'), + GROUP_MA_SOL_SOL=SIMP(statut='f',typ=grma,max='**'), + GROUP_MA_CONTROL=SIMP(statut='f',typ=grma,max='**'), + FORMAT_R =SIMP(statut='f',typ='TXM',defaut="1PE12.5",into=("1PE12.5","1PE16.9") ), + IMPR_MODE_MECA =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + IMPR_MODE_STAT =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), + b_cadyro =BLOC(condition = "FORMAT == 'CADYRO'", + SQUELETTE =SIMP(statut='f',typ=squelette ), + UNITE_MODE_MECA =SIMP(statut='f',typ='I',defaut= 26 ), + UNITE_MODE_STAT =SIMP(statut='f',typ='I',defaut= 27 ), + UNITE_MAILLAGE =SIMP(statut='f',typ='I',defaut= 28 ), + IMPR_MODE_MECA =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + IMPR_MODE_STAT =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + ), - TITRE =SIMP(statut='f',typ='TXM'), -) +) ; #& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +IMPR_MATRICE=PROC(nom="IMPR_MATRICE",op= 159, + fr="Imprimer sur un fichier au format IDEAS ou RESULTAT des matrices élémentaires et assemblées", + UIinfo={"groupes":("Impression",)}, + regles=(AU_MOINS_UN('MATR_ELEM','MATR_ASSE'),), +# ====================================================================== + MATR_ELEM =FACT(statut='f',max='**', +# + MATRICE =SIMP(statut='o',typ=(matr_elem, vect_elem)), + FORMAT =SIMP(statut='f',typ='TXM',defaut="IDEAS", + into=("IDEAS","RESULTAT") ), +# + b_format_ideas =BLOC(condition="FORMAT=='IDEAS'",fr="unité logique d'impression et version IDEAS", + UNITE =SIMP(statut='f',typ='I',defaut=30), + VERSION =SIMP(statut='f',typ='I',defaut= 5,into=( 5 ,), ), ), +# + b_format_resultat =BLOC(condition="FORMAT=='RESULTAT'",fr="unité logique d'impression au format RESULTAT", + regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'),), + UNITE =SIMP(statut='f',typ='I',defaut=8), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno ,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), + NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), + GRAIN =SIMP(statut='f',typ='TXM',defaut="VALEUR",into=("VALEUR","NOEUD","MAILLE") ), + NB_CHIFFRE =SIMP(statut='f',typ='I',defaut= 4 ), ), + ), +# ====================================================================== + MATR_ASSE =FACT(statut='f',max='**', +# + MATRICE =SIMP(statut='o',typ=matr_asse_gd), + FORMAT =SIMP(statut='f',typ='TXM',defaut="IDEAS",into=("IDEAS","RESULTAT") ), +# + b_format_ideas =BLOC(condition="FORMAT=='IDEAS'",fr="unité logique d'impression et version IDEAS", + UNITE =SIMP(statut='f',typ='I',defaut=30), + VERSION =SIMP(statut='f',typ='I',defaut= 5,into=( 5 ,), ), ), +# + b_format_resultat =BLOC(condition="FORMAT=='RESULTAT'",fr="unité logique d'impression au format RESULTAT", + regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'),), + UNITE =SIMP(statut='f',typ='I',defaut=8), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno ,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), + OPTION =SIMP(statut='f',typ='TXM',defaut="SOUS_MATRICE",into=("SOUS_MATRICE","LIGNE","COLONNE") ), + NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), + GRAIN =SIMP(statut='f',typ='TXM',defaut="VALEUR",into=("VALEUR","NOEUD") ), + NB_CHIFFRE =SIMP(statut='f',typ='I',defaut= 4 ), + VALE_ZERO =SIMP(statut='f',typ='R',defaut= 0.E+0 ), ), + ), +# ====================================================================== +) ; +#& MODIF COMMANDE DATE 21/02/2006 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR # (AT YOUR OPTION) ANY LATER VERSION. # @@ -15933,86 +14575,259 @@ MACR_ASPIC_CALC=MACRO(nom="MACR_ASPIC_CALC",op=macr_aspic_calc_ops,sd_prod=macr_ # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE F1BHHAJ J.ANGLES - -from Macro.macr_aspic_mail_ops import macr_aspic_mail_ops +IMPR_MISS_3D=PROC(nom="IMPR_MISS_3D",op= 162, + UIinfo={"groupes":("Impression",)}, + fr="Impression des données d'entrée pour une étude sismique avec MISS3D", + regles=(UN_PARMI('INST_INIT','FREQ_INIT'), + PRESENT_PRESENT('INST_INIT','INST_FIN'), + PRESENT_PRESENT('FREQ_INIT','FREQ_FIN'),), + MACR_ELEM_DYNA =SIMP(statut='o',typ=macr_elem_dyna ), + EXCIT =FACT(statut='f',max='**', + regles=(UN_PARMI('FONC_MULT','COEF_MULT' ),), + VECT_ASSE =SIMP(statut='f',typ=cham_no_sdaster), + FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + COEF_MULT =SIMP(statut='f',typ='R' ), + ), + EXCIT_SOL =FACT(statut='f',max='**', + DIRECTION =SIMP(statut='o',typ='R',min=3,max=3), + FONC_SIGNAL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + NOM_CHAM =SIMP(statut='f',typ='TXM',defaut="DEPL", + into=("DEPL","VITE","ACCE","FORC",) ), + ), + INST_INIT =SIMP(statut='f',typ='R' ), + INST_FIN =SIMP(statut='f',typ='R' ), + FREQ_INIT =SIMP(statut='f',typ='R' ), + FREQ_FIN =SIMP(statut='f',typ='R' ), + PAS =SIMP(statut='o',typ='R' ), + UNITE =SIMP(statut='f',typ='I',defaut= 26 ), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ), + TITRE =SIMP(statut='f',typ='TXM',max='**'), +) ; +#& MODIF COMMANDE DATE 07/11/2006 AUTEUR DURAND C.DURAND +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE thomasso D.THOMASSON +# +from Macro.impr_oar_ops import impr_oar_ops +IMPR_OAR =MACRO(nom="IMPR_OAR",op= impr_oar_ops, sd_prod=None, + fr="Impression au format OAR", + UIinfo={"groupes":("Impression",)}, + TYPE_CALC = SIMP(statut='o', typ='TXM',into=('COMPOSANT', 'MEF', 'TUYAUTERIE')), + b_composant =BLOC(condition = "TYPE_CALC == 'COMPOSANT' ", + regles = (AU_MOINS_UN('RESU_MECA','RESU_THER')), + DIAMETRE = SIMP(statut='o', typ='R'), + ORIGINE = SIMP(statut='o', typ='TXM', defaut='INTERNE', into=('INTERNE', 'EXTERNE')), + COEF_U = SIMP(statut='f', typ='R', defaut=1.0), + ANGLE_C = SIMP(statut='o', typ='R', defaut=0.0), + REVET = SIMP(statut='f', typ='TXM', defaut='NON', into=('OUI', 'NON')), + RESU_MECA = FACT(statut='f', max='**', + NUM_CHAR = SIMP(statut='o', typ='I'), + TYPE = SIMP(statut='o', typ='TXM', defaut='FX', into=('FX', 'FY', 'FZ', 'MX', 'MY', 'MZ', 'PRE')), + TABLE = SIMP(statut='o', typ=table_sdaster), + TABLE_S = SIMP(statut='f', typ=table_sdaster)), + RESU_THER = FACT(statut='f', max='**', + NUM_TRAN = SIMP(statut='o', typ='I'), + TABLE_T = SIMP(statut='o', typ=table_sdaster), + TABLE_TEMP= SIMP(statut='o', typ=table_sdaster), + TABLE_S = SIMP(statut='f', typ=table_sdaster), + TABLE_ST = SIMP(statut='f', typ=table_sdaster)), + ), + b_mef = BLOC(condition = "TYPE_CALC == 'MEF' ", + regles = (AU_MOINS_UN('RESU_MECA','RESU_THER')), + DIAMETRE = SIMP(statut='o', typ='R'), + ORIGINE = SIMP(statut='o', typ='TXM', defaut='INTERNE', into=('INTERNE', 'EXTERNE')), + COEF_U = SIMP(statut='f', typ='R', defaut=1.0), + RESU_MECA = FACT(statut='f', max='**', + AZI = SIMP(statut='o', typ='R'), + TABLE_T = SIMP(statut='o', typ=table_sdaster), + TABLE_F = SIMP(statut='o', typ=table_sdaster), + TABLE_P = SIMP(statut='o', typ=table_sdaster), + TABLE_CA = SIMP(statut='o', typ=table_sdaster)), + RESU_THER=FACT(statut='f', max='**', + AZI = SIMP(statut='o', typ='R'), + NUM_CHAR = SIMP(statut='o', typ='I'), + TABLE_T = SIMP(statut='o', typ=table_sdaster), + TABLE_TI = SIMP(statut='o', typ=table_sdaster)), + ), + b_tuyauterie = BLOC(condition = "TYPE_CALC == 'TUYAUTERIE' ", + RESU_MECA = FACT(statut='o', max='**', + NUM_CHAR = SIMP(statut='o', typ='I'), + TABLE = SIMP(statut='o', typ=table_sdaster), + MAILLAGE = SIMP(statut='o', typ=maillage_sdaster)), + ), + UNITE = SIMP(statut='f',typ='I',defaut=38), + AJOUT = SIMP(statut='f', typ='TXM', defaut='NON', into=('OUI', 'NON')), + ); +#& MODIF COMMANDE DATE 09/05/2007 AUTEUR VIVAN L.VIVAN +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +IMPR_RESU=PROC(nom="IMPR_RESU",op=39, + UIinfo={"groupes":("Impression",)}, + fr="Imprimer un maillage et/ou les résultats d'un calcul (différents formats)", + MODELE =SIMP(statut='f',typ=modele_sdaster), -MACR_ASPIC_MAIL=MACRO(nom="MACR_ASPIC_MAIL",op= macr_aspic_mail_ops,sd_prod=maillage_sdaster,reentrant='n', - fr="Engendre le maillage d'un piquage sain ou avec fissure (longue ou courte)", - UIinfo={"groupes":("Outils métier",)}, + FORMAT =SIMP(statut='f',typ='TXM',position='global',defaut="RESULTAT", + into=("RESULTAT","IDEAS","ASTER","CASTEM","ENSIGHT","MED","GMSH") ), - EXEC_MAILLAGE =FACT(statut='o', - LOGICIEL =SIMP(statut='o',typ='TXM',defaut="GIBI2000",into=("GIBI98","GIBI2000")), - UNITE_DATG =SIMP(statut='f',typ='I',defaut=70), - UNITE_MGIB =SIMP(statut='f',typ='I',defaut=19), - NIVE_GIBI =SIMP(statut='f',typ='I',defaut=10,into=(3,4,5,6,7,8,9,10,11)), + b_format_resultat =BLOC(condition="FORMAT=='RESULTAT'",fr="unité logique d'impression au format RESULTAT", + UNITE =SIMP(statut='f',typ='I',defaut=8), ), - TYPE_ELEM =SIMP(statut='f',typ='TXM',defaut="CU20",into=("CU20","CUB8")), + b_format_ideas =BLOC(condition="FORMAT=='IDEAS'",fr="unité logique d'impression et version IDEAS", + UNITE =SIMP(statut='f',typ='I',defaut=30), + VERSION =SIMP(statut='f',typ='I',defaut=5,into=(4,5)), + ), - RAFF_MAIL =SIMP(statut='f',typ='TXM',defaut="GROS",into=("GROS","FIN")), + b_format_aster =BLOC(condition="FORMAT=='ASTER'",fr="unité logique d'impression au format ASTER", + UNITE =SIMP(statut='f',typ='I',defaut=26), + ), - TUBULURE =FACT(statut='o', - E_BASE =SIMP(statut='o',typ='R'), - DEXT_BASE =SIMP(statut='o',typ='R'), - L_BASE =SIMP(statut='o',typ='R'), - L_CHANF =SIMP(statut='o',typ='R'), - E_TUBU =SIMP(statut='o',typ='R'), - DEXT_TUBU =SIMP(statut='o',typ='R'), - Z_MAX =SIMP(statut='o',typ='R'), - TYPE =SIMP(statut='o',typ='TXM',into=("TYPE_1","TYPE_2")), - L_PENETR =SIMP(statut='f',typ='R',defaut= 0.0E+0), + b_format_castem =BLOC(condition="FORMAT=='CASTEM'",fr="unité logique d'impression et version CASTEM", + UNITE =SIMP(statut='f',typ='I',defaut=37), + NIVE_GIBI =SIMP(statut='f',typ='I',defaut=10,into=(3,10)), ), - SOUDURE =FACT(statut='o', - H_SOUD =SIMP(statut='o',typ='R'), - ANGL_SOUD =SIMP(statut='o',typ='R'), - JEU_SOUD =SIMP(statut='o',typ='R'), + b_format_ensight =BLOC(condition="FORMAT=='ENSIGHT'",fr="unité logique d'impression au format ENSIGHT", + UNITE =SIMP(statut='f',typ='I',defaut=31), ), - CORPS =FACT(statut='o', - E_CORP =SIMP(statut='o',typ='R'), - DEXT_CORP =SIMP(statut='o',typ='R'), - X_MAX =SIMP(statut='o',typ='R'), + b_format_med =BLOC(condition="FORMAT=='MED'",fr="unité logique d'impression au format MED", + UNITE =SIMP(statut='f',typ='I',defaut=80), ), - FISS_SOUDURE =FACT(statut='f', - TYPE =SIMP(statut='o',typ='TXM',into=("LONGUE","COURTE")), - AXIS =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), - PROFONDEUR =SIMP(statut='o',typ='R'), - LONGUEUR =SIMP(statut='f',typ='R'), - AZIMUT =SIMP(statut='o',typ='R'), - RAYON_TORE =SIMP(statut='f',typ='R'), - POSITION =SIMP(statut='o',typ='TXM',into=("DROIT","INCLINE")), - FISSURE =SIMP(statut='o',typ='TXM',into=("DEB_INT","DEB_EXT","NON_DEB","TRAVERS")), - LIGA_INT =SIMP(statut='f',typ='R'), - ANGL_OUVERTURE =SIMP(statut='f',typ='R',defaut= 0.0E+0), - COEF_MULT_RC1 =SIMP(statut='f',typ='R'), - COEF_MULT_RC2 =SIMP(statut='f',typ='R'), - COEF_MULT_RC3 =SIMP(statut='f',typ='R'), - NB_TRANCHE =SIMP(statut='f',typ='I'), - NB_SECTEUR =SIMP(statut='f',typ='I'), - NB_COURONNE =SIMP(statut='f',typ='I'), + b_format_gmsh =BLOC(condition="FORMAT=='GMSH'",fr="unité logique d'impression et version GMSH", + UNITE =SIMP(statut='f',typ='I',defaut=37), + VERSION =SIMP(statut='f',typ='R',defaut=1.2,into=(1.0,1.2)), ), - IMPRESSION =FACT(statut='f',max='**', - regles=(PRESENT_PRESENT('FICHIER','UNITE'),), - FORMAT =SIMP(statut='f',typ='TXM',defaut="ASTER",into=("ASTER","IDEAS","CASTEM")), + RESU =FACT(statut='o',max='**', - b_format_ideas =BLOC(condition="FORMAT=='IDEAS'",fr="version Ideas", - VERSION =SIMP(statut='f',typ='I',defaut=5,into=(4,5)), - ), + regles=(AU_MOINS_UN('CHAM_GD','RESULTAT','MAILLAGE'), + EXCLUS('CHAM_GD','RESULTAT'),), + MAILLAGE =SIMP(statut='f',typ=(maillage_sdaster,squelette)), + CHAM_GD =SIMP(statut='f',typ=cham_gd_sdaster), + RESULTAT =SIMP(statut='f',typ=resultat_sdaster), - b_format_castem =BLOC(condition="FORMAT=='CASTEM'",fr="version Castem", - NIVE_GIBI =SIMP(statut='f',typ='I',defaut=10,into=(3,10)), + b_info_med =BLOC(condition="FORMAT=='MED'", + INFO_MAILLAGE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + ), + + b_sensibilite =BLOC(condition="RESULTAT != None", + fr="Définition des paramètres de sensibilité", + ang="Definition of sensitivity parameters", + regles=(DERIVABLE('RESULTAT'),), + SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', + fr="Liste des paramètres de sensibilité.", + ang="List of sensitivity parameters"),), + +# b_partie =BLOC(condition="""((AsType(RESULTAT)==dyna_harmo) or +# (AsType(CHAM_GD)!=carte_sdaster)) and ((FORMAT=='CASTEM') or (FORMAT=='GMSH'))""", + PARTIE =SIMP(statut='f',typ='TXM',into=("REEL","IMAG") ), +# ), + b_extrac =BLOC(condition="RESULTAT != None", + fr="extraction d un champ de grandeur", + regles=(EXCLUS('TOUT_CHAM','NOM_CHAM'), + EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE','NOEUD_CMP', + 'LIST_INST','LIST_FREQ','LIST_ORDRE','NOM_CAS','ANGL'),), + TOUT_CHAM =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), + NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',into=C_NOM_CHAM_INTO()), + + TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), + NOEUD_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), + NOM_CAS =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), + ANGL =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_INST =SIMP(statut='f',typ=listr8_sdaster), + + b_acce_reel =BLOC(condition="(FREQ != None)or(LIST_FREQ != None)or(INST != None)or(LIST_INST != None)", + PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + ), + ), +### + b_parametres =BLOC(condition="""(RESULTAT != None)and(FORMAT == 'RESULTAT')""", + regles=(EXCLUS('TOUT_PARA','NOM_PARA'),), + INFO_RESU =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + TOUT_PARA =SIMP(statut='f',typ='TXM',into=("OUI","NON",) ), + NOM_PARA =SIMP(statut='f',typ='TXM',max='**'), + FORM_TABL =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON","EXCEL") ), + ), +### + b_cmp=BLOC(condition="""((CHAM_GD != None)or(RESULTAT != None))and\ + ((FORMAT == 'CASTEM')or(FORMAT == 'RESULTAT')or(FORMAT == 'IDEAS')or(FORMAT == 'ENSIGHT')or(FORMAT == 'MED'))""", + fr="sélection des composantes", + regles=(EXCLUS('TOUT_CMP','NOM_CMP'),), + TOUT_CMP =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), + ), +### + b_gmsh=BLOC(condition="""((CHAM_GD != None)or(RESULTAT != None))and((FORMAT == 'GMSH'))""", + fr="sélection des composantes et des entités toplogiques", + NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + ), +### + b_topologie=BLOC(condition="""((CHAM_GD != None)or(RESULTAT != None))and\ + ((FORMAT == 'RESULTAT')or(FORMAT == 'IDEAS')or(FORMAT == 'MED'))""", + fr="sélection des entités topologiques", + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + ), +### + b_valeurs=BLOC(condition="(FORMAT == 'RESULTAT')", + fr="sélection sur les valeurs", + VALE_MAX =SIMP(statut='f',typ='TXM',into=("OUI",) ), + VALE_MIN =SIMP(statut='f',typ='TXM',into=("OUI",) ), + BORNE_SUP =SIMP(statut='f',typ='R'), + BORNE_INF =SIMP(statut='f',typ='R'), + IMPR_COOR =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + FORMAT_R =SIMP(statut='f',typ='TXM',defaut="1PE12.5"), ), - FICHIER =SIMP(statut='f',typ='TXM'), - UNITE =SIMP(statut='f',typ='I'), - ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), -) ; -#& MODIF COMMANDE DATE 12/03/2007 AUTEUR DEVESA G.DEVESA + SOUS_TITRE =SIMP(statut='f',typ='TXM',max='**'), + ), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), +) ; +#& MODIF COMMANDE DATE 23/08/2004 AUTEUR CIBHHLV L.VIVAN # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16030,30 +14845,29 @@ MACR_ASPIC_MAIL=MACRO(nom="MACR_ASPIC_MAIL",op= macr_aspic_mail_ops,sd_prod=mail # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -MACR_ELEM_DYNA=OPER(nom="MACR_ELEM_DYNA",op= 81,sd_prod=macr_elem_dyna, - fr="Définition d'un macro élément pour analyse modale ou harmonique par sous structuration dynamique", - reentrant='n', - UIinfo={"groupes":("Matrices/vecteurs",)}, - regles=(EXCLUS('MATR_AMOR','AMOR_REDUIT' ), - PRESENT_ABSENT('MATR_IMPE','MATR_RIGI','MATR_MASS'),), - BASE_MODALE =SIMP(statut='o',typ=base_modale ), - MATR_RIGI =SIMP(statut='f',typ=matr_asse_depl_r ), - MATR_MASS =SIMP(statut='f',typ=matr_asse_depl_r ), - MATR_AMOR =SIMP(statut='f',typ=matr_asse_depl_r ), - AMOR_REDUIT =SIMP(statut='f',typ='R',max='**'), - OPTION =SIMP(statut='f',typ='TXM',defaut="CLASSIQUE",into=("CLASSIQUE","RITZ", - "DIAG_MASS") ), - MATR_IMPE =SIMP(statut='f',typ=matr_asse_gene_c ), - b_matr_impe =BLOC(condition = "MATR_IMPE != None", - FREQ_EXTR =SIMP(statut='o',typ='R' ), - AMOR_SOL =SIMP(statut='f',typ='R',defaut=0.E+0 ), - ), - CAS_CHARGE =FACT(statut='f',max='**', - NOM_CAS =SIMP(statut='o',typ='TXM'), - VECT_ASSE_GENE =SIMP(statut='o',typ=vect_asse_gene ), +IMPR_STURM=PROC(nom="IMPR_STURM",op=32,fr="Calculer et imprimer le nombre de valeurs propres dans un intervalle donné", + UIinfo={"groupes":("Résolution",)}, + MATR_A =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r ) ), + MATR_B =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r ) ), + TYPE_RESU =SIMP(statut='f',typ='TXM',defaut="DYNAMIQUE",into=("MODE_FLAMB","DYNAMIQUE"), + fr="Type d analyse" ), + b_dynamique =BLOC(condition = "TYPE_RESU == 'DYNAMIQUE'", + fr="Recheche du nombre de fréquences propres", + FREQ_MIN =SIMP(statut='f',typ='R',defaut= 0.E+0 ,fr="Borne inférieure de l intervalle" ), + FREQ_MAX =SIMP(statut='o',typ='R',fr="Borne supérieure de l intervalle" ), + ), + b_mode_flamb =BLOC(condition = "TYPE_RESU == 'MODE_FLAMB'", + fr="Recherche du nombre de charges critiques", + CHAR_CRIT_MIN =SIMP(statut='o',typ='R',fr="Borne inférieure de l intervalle" ), + CHAR_CRIT_MAX =SIMP(statut='o',typ='R',fr="Borne supérieure de l intervalle" ), ), + NPREC_SOLVEUR =SIMP(statut='f',typ='I',defaut= 8 ), + NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 5 ), + UNITE =SIMP(statut='f',typ='I',defaut=8), + PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 1.E-2 ), + SEUIL_FREQ =SIMP(statut='f',typ='R',defaut= 1.E-2 ), ) ; -#& MODIF COMMANDE DATE 31/10/2006 AUTEUR A3BHHAE H.ANDRIAMBOLOLONA +#& MODIF COMMANDE DATE 10/05/2006 AUTEUR MCOURTOI M.COURTOIS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16071,169 +14885,122 @@ MACR_ELEM_DYNA=OPER(nom="MACR_ELEM_DYNA",op= 81,sd_prod=macr_elem_dyna, # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -MACR_ELEM_STAT=OPER(nom="MACR_ELEM_STAT",op=86,sd_prod=macr_elem_stat,reentrant='f', - UIinfo={"groupes":("Matrices/vecteurs",)}, - fr="Définition d'un macro-élément pour l'analyse statique par sous-structuration", - regles=(AU_MOINS_UN('DEFINITION','RIGI_MECA','MASS_MECA','CAS_CHARGE'), - ENSEMBLE('DEFINITION','EXTERIEUR'),), - DEFINITION =FACT(statut='f', - regles=(PRESENT_PRESENT('PROJ_MESU','MODE_MESURE'),), - MODELE =SIMP(statut='o',typ=modele_sdaster), - CHAM_MATER =SIMP(statut='f',typ=cham_mater), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - CHAR_MACR_ELEM =SIMP(statut='f',typ=char_meca), - INST =SIMP(statut='f',typ='R',defaut=0.0E+0 ), - NMAX_CAS =SIMP(statut='f',typ='I',defaut=10), - NMAX_CHAR =SIMP(statut='f',typ='I',defaut=10), - PROJ_MESU =SIMP(statut='f',typ=(mode_gene,tran_gene,harm_gene),max=1), - MODE_MESURE =SIMP(statut='f',typ=( mode_meca,base_modale) ), - ), - EXTERIEUR =FACT(statut='f', - regles=(AU_MOINS_UN('NOEUD','GROUP_NO'),), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - ), - RIGI_MECA =FACT(statut='f', - ), - MASS_MECA =FACT(statut='f', - ), - CAS_CHARGE =FACT(statut='f',max='**', - NOM_CAS =SIMP(statut='o',typ='TXM'), - SUIV =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), - INST =SIMP(statut='f',typ='R',defaut=0.E+0), - ), +# RESPONSABLE MCOURTOI M.COURTOIS +from Macro.impr_table_ops import impr_table_ops -) ; -#& MODIF COMMANDE DATE 07/11/2006 AUTEUR DURAND C.DURAND -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE thomasso D.THOMASSON -# -from Macro.impr_oar_ops import impr_oar_ops -IMPR_OAR =MACRO(nom="IMPR_OAR",op= impr_oar_ops, sd_prod=None, - fr="Impression au format OAR", - UIinfo={"groupes":("Impression",)}, - TYPE_CALC = SIMP(statut='o', typ='TXM',into=('COMPOSANT', 'MEF', 'TUYAUTERIE')), - b_composant =BLOC(condition = "TYPE_CALC == 'COMPOSANT' ", - regles = (AU_MOINS_UN('RESU_MECA','RESU_THER')), - DIAMETRE = SIMP(statut='o', typ='R'), - ORIGINE = SIMP(statut='o', typ='TXM', defaut='INTERNE', into=('INTERNE', 'EXTERNE')), - COEF_U = SIMP(statut='f', typ='R', defaut=1.0), - ANGLE_C = SIMP(statut='o', typ='R', defaut=0.0), - REVET = SIMP(statut='f', typ='TXM', defaut='NON', into=('OUI', 'NON')), - RESU_MECA = FACT(statut='f', max='**', - NUM_CHAR = SIMP(statut='o', typ='I'), - TYPE = SIMP(statut='o', typ='TXM', defaut='FX', into=('FX', 'FY', 'FZ', 'MX', 'MY', 'MZ', 'PRE')), - TABLE = SIMP(statut='o', typ=table_sdaster), - TABLE_S = SIMP(statut='f', typ=table_sdaster)), - RESU_THER = FACT(statut='f', max='**', - NUM_TRAN = SIMP(statut='o', typ='I'), - TABLE_T = SIMP(statut='o', typ=table_sdaster), - TABLE_TEMP= SIMP(statut='o', typ=table_sdaster), - TABLE_S = SIMP(statut='f', typ=table_sdaster), - TABLE_ST = SIMP(statut='f', typ=table_sdaster)), - ), - b_mef = BLOC(condition = "TYPE_CALC == 'MEF' ", - regles = (AU_MOINS_UN('RESU_MECA','RESU_THER')), - DIAMETRE = SIMP(statut='o', typ='R'), - ORIGINE = SIMP(statut='o', typ='TXM', defaut='INTERNE', into=('INTERNE', 'EXTERNE')), - COEF_U = SIMP(statut='f', typ='R', defaut=1.0), - RESU_MECA = FACT(statut='f', max='**', - AZI = SIMP(statut='o', typ='R'), - TABLE_T = SIMP(statut='o', typ=table_sdaster), - TABLE_F = SIMP(statut='o', typ=table_sdaster), - TABLE_P = SIMP(statut='o', typ=table_sdaster), - TABLE_CA = SIMP(statut='o', typ=table_sdaster)), - RESU_THER=FACT(statut='f', max='**', - AZI = SIMP(statut='o', typ='R'), - NUM_CHAR = SIMP(statut='o', typ='I'), - TABLE_T = SIMP(statut='o', typ=table_sdaster), - TABLE_TI = SIMP(statut='o', typ=table_sdaster)), +IMPR_TABLE=MACRO(nom="IMPR_TABLE",op=impr_table_ops,sd_prod=None, + UIinfo={"groupes":("Impression",)}, + fr="Impression du contenu d'une table dans un fichier", + regles=(DERIVABLE("TABLE"),), + TABLE =SIMP(statut='o',typ=table_sdaster), + SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', + fr="Liste des paramètres de sensibilité.", + ang="List of sensitivity parameters"), + FORMAT =SIMP(statut='f',typ='TXM',defaut="TABLEAU", + into=("TABLEAU","ASTER","TABLEAU_CROISE","AGRAF","XMGRACE",),), + b_pilote =BLOC(condition = "FORMAT == 'XMGRACE'", + fr="Mots-clés propres à XMGRACE", + PILOTE =SIMP(statut='f',typ='TXM',defaut='', + into=('','POSTSCRIPT','EPS','MIF','SVG','PNM','PNG','JPEG','PDF','INTERACTIF'), + fr="Pilote de sortie, PNG/JPEG/PDF ne sont pas disponibles sur toutes les installations de xmgrace"), + UNITE =SIMP(statut='f',typ='I',val_min=10,val_max=90,defaut=29, + fr="Unité logique définissant le fichier (fort.N) dans lequel on écrit"), + ), + b_unite =BLOC(condition = "FORMAT != 'XMGRACE'", + UNITE =SIMP(statut='f',typ='I',defaut=8, + fr="Unité logique définissant le fichier (fort.N) dans lequel on écrit"), + ), + FILTRE =FACT(statut='f',max='**', + NOM_PARA =SIMP(statut='o',typ='TXM'), + CRIT_COMP =SIMP(statut='f',typ='TXM',defaut="EQ", + into=("EQ","LT","GT","NE","LE","GE","VIDE", + "NON_VIDE","MAXI","ABS_MAXI","MINI","ABS_MINI"),), + b_vale =BLOC(condition = "(CRIT_COMP in ('EQ','NE','GT','LT','GE','LE'))", + regles=(UN_PARMI('VALE','VALE_I','VALE_K','VALE_C',),), + VALE =SIMP(statut='f',typ='R'), + VALE_I =SIMP(statut='f',typ='I'), + VALE_C =SIMP(statut='f',typ='C'), + VALE_K =SIMP(statut='f',typ='TXM'), ), - b_tuyauterie = BLOC(condition = "TYPE_CALC == 'TUYAUTERIE' ", - RESU_MECA = FACT(statut='o', max='**', - NUM_CHAR = SIMP(statut='o', typ='I'), - TABLE = SIMP(statut='o', typ=table_sdaster), - MAILLAGE = SIMP(statut='o', typ=maillage_sdaster)), - ), - UNITE = SIMP(statut='f',typ='I',defaut=38), - AJOUT = SIMP(statut='f', typ='TXM', defaut='NON', into=('OUI', 'NON')), - ); -#& MODIF COMMANDE DATE 25/04/2006 AUTEUR CIBHHPD L.SALMONA + b_crit =BLOC(condition = "CRIT_COMP in ('EQ','NE')", + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), + ), + ), + TRI =FACT(statut='f', + NOM_PARA =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**'), + ORDRE =SIMP(statut='f',typ='TXM',defaut="CROISSANT", # max='**', + into=("CROISSANT","DECROISSANT") ), + ), + PAGINATION =SIMP(statut='f',typ='TXM',max='**'), + FORMAT_R =SIMP(statut='f',typ='TXM',defaut="E12.5"), + FORMAT_C =SIMP(statut='f',typ='TXM',defaut="MODULE_PHASE", + into=("MODULE_PHASE","REEL_IMAG") ), + NOM_PARA =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), + IMPR_FONCTION =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + + # mise en forme pour les formats qui passent par Graph + b_forme =BLOC(condition = "FORMAT == 'XMGRACE'", + fr="Données de mise en forme du graphique", + # pour la courbe + LEGENDE =SIMP(statut='f',typ='TXM', + fr="Légende associée à la fonction" ), + STYLE =SIMP(statut='f',typ='I',val_min=0, + fr="Style de la ligne représentant la fonction",), + COULEUR =SIMP(statut='f',typ='I',val_min=0, + fr="Couleur associée à la fonction",), + MARQUEUR =SIMP(statut='f',typ='I',val_min=0, + fr="Type du marqueur associé à la fonction",), + FREQ_MARQUEUR =SIMP(statut='f',typ='I',defaut=0, + fr="Fréquence d impression du marqueur associé à la fonction", ), + # format du graphique + BORNE_X =SIMP(statut='f',typ='R',min=2,max=2, + fr="Intervalles de variation des abscisses"), + BORNE_Y =SIMP(statut='f',typ='R',min=2,max=2, + fr="Intervalles de variation des ordonnées"), + ECHELLE_X =SIMP(statut='f',typ='TXM',defaut="LIN",into=("LIN","LOG"), + fr="Type d'échelle pour les abscisses" ), + ECHELLE_Y =SIMP(statut='f',typ='TXM',defaut="LIN",into=("LIN","LOG"), + fr="Type d'échelle pour les ordonnées" ), + GRILLE_X =SIMP(statut='f',typ='R',max=1,val_min=0., + fr="Pas du quadrillage vertical" ), + GRILLE_Y =SIMP(statut='f',typ='R',max=1,val_min=0., + fr="Pas du quadrillage horizontal" ), + LEGENDE_X =SIMP(statut='f',typ='TXM', + fr="Légende associée à l'axe des abscisses" ), + LEGENDE_Y =SIMP(statut='f',typ='TXM', + fr="Légende associée à l'axe des ordonnées" ), + ), + + TITRE =SIMP(statut='f',typ='TXM',max='**'), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), +) +#& MODIF COMMANDE DATE 10/06/2004 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== - -DEFI_FISS_XFEM=OPER(nom="DEFI_FISS_XFEM",op= 41,sd_prod=fiss_xfem,reentrant='n', - UIinfo={"groupes":("Modélisation",)}, - fr="Définition des caratéristiques d'une fissure avec X-FEM", - - MODELE =SIMP(statut='o',typ=modele_sdaster), - DEFI_FISS =FACT(statut='o',max=01, - regles =(UN_PARMI('GROUP_MA_FISS','FONC_LT'), - ENSEMBLE('FONC_LT','FONC_LN'), - ENSEMBLE('GROUP_MA_FISS','GROUP_MA_FOND')), - FONC_LT =SIMP(statut='f',typ=(fonction_sdaster,formule) ), - FONC_LN =SIMP(statut='f',typ=(fonction_sdaster,formule) ), - GROUP_MA_FISS =SIMP(statut='f',typ=grma,max=01), - GROUP_MA_FOND =SIMP(statut='f',typ=grma), - ), - GROUP_MA_ENRI =SIMP(statut='o',typ=grma,max=01), - RAYON_ENRI =SIMP(statut='f',typ='R',defaut=0.E+0), - ORIE_FOND =FACT(statut='f',max=01, - PFON_INI =SIMP(statut='o',typ='R',max=03), - VECT_ORIE =SIMP(statut='o',typ='R',max=03), - PT_ORIGIN =SIMP(statut='o',typ='R',max=03), - ), - CONTACT =FACT(statut='f',max=01, - NOM_CHAM =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL",) ), - FROTTEMENT =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SANS","COULOMB",) ), - INTEGRATION =SIMP(statut='f',typ='TXM',defaut="FPG4",into=("GAUSS","FPG4","FPG6","FPG7",) ), - COEF_REGU_CONT =SIMP(statut='f',typ='R',defaut=100.E+0), - MODL_AXIS =SIMP(statut='f',typ='TXM',into=("NON",)), - ITER_CONT_MAXI =SIMP(statut='f',typ='I',defaut=30), - CONTACT_INIT =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ), - ALGO_LAGR =SIMP(statut='f',typ='TXM',defaut="VERSION1",into=("NON","VERSION1","VERSION2" , ) ), - COEF_ECHELLE =SIMP(statut='f',typ='R',defaut=1.E+6), - b_frottement =BLOC(condition = "FROTTEMENT == 'COULOMB' ",fr="Paramères du frottement de Coulomb", - COULOMB =SIMP(statut='o',typ='R',), - ITER_FROT_MAXI =SIMP(statut='f',typ='I',defaut=2), - COEF_REGU_FROT =SIMP(statut='f',typ='R',defaut=100.E+0), - SEUIL_INIT =SIMP(statut='f',typ='R',defaut=0.E+0),), - ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2,3,) ), -) ; -#& MODIF COMMANDE DATE 30/10/2006 AUTEUR DURAND C.DURAND +INCLUDE=MACRO(nom="INCLUDE",op=ops.build_include, + UIinfo={"groupes":("Gestion du travail",)}, + fr="Débranchement vers un fichier de commandes secondaires", + sd_prod=ops.INCLUDE,op_init=ops.INCLUDE_context,fichier_ini=1, + UNITE = SIMP(statut='o',typ='I'), + INFO = SIMP(statut='f',typ='I',defaut=1,into=(1,2)), +); +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16251,326 +15018,273 @@ DEFI_FISS_XFEM=OPER(nom="DEFI_FISS_XFEM",op= 41,sd_prod=fiss_xfem,reentrant='n' # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE GNICOLAS G.NICOLAS - -from Macro.macr_adap_mail_ops import macr_adap_mail_ops +INCLUDE_MATERIAU=MACRO(nom="INCLUDE_MATERIAU",op=-14, + UIinfo={"groupes":("Modélisation",)}, + fr="Récupérer les caractéristiques d'un matériau dans le Catalogue Materiaux d'Aster ", + sd_prod=ops.INCLUDE_MATERIAU,op_init=ops.INCLUDE_context,fichier_ini=0, + NOM_AFNOR =SIMP(statut='o',typ='TXM' ), + TYPE_MODELE =SIMP(statut='o',typ='TXM',into=("REF","PAR") ), + VARIANTE =SIMP(statut='o',typ='TXM', + into=("A","B","C","D","E","F","G","H","I","J", + "K","L","M","N","O","P","Q","R","S","T","U","V", + "W","X","Y","Z",) ), + TYPE_VALE =SIMP(statut='o',typ='TXM',into=("NOMI","MINI","MAXI") ), + NOM_MATER =SIMP(statut='o',typ='TXM' ), + UNITE =SIMP(statut='f',typ='I',defaut= 32 ), + EXTRACTION =FACT(statut='f',max=99, + COMPOR =SIMP(statut='o',typ='TXM' ), + TEMP_EVAL =SIMP(statut='o',typ='R' ), + ), + UNITE_LONGUEUR =SIMP(statut='f',typ='TXM',into=("M","MM"),defaut="M" ), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), +) ; +#& MODIF COMMANDE DATE 14/09/2004 AUTEUR MCOURTOI M.COURTOIS +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE D6BHHJP J.P.LEFEBVRE +INFO_EXEC_ASTER=OPER(nom="INFO_EXEC_ASTER",op=35,sd_prod=table_sdaster, + fr="Récupère différentes informations propres à l'exécution en cours", + reentrant='n', + UIinfo={"groupes":("Gestion du travail",)}, -MACR_INFO_MAIL=MACRO(nom="MACR_INFO_MAIL",op=macr_adap_mail_ops, - docu="U7.03.02-b",UIinfo={"groupe":("Maillage",)}, - fr="Donner des informations sur un maillage.", - ang="To give information about a mesh.", -# -# 1. Le niveau d'information -# - INFO = SIMP(statut='f',typ='I',defaut=1,into=(1,2)), -# -# 2. Version de HOMARD -# - VERSION_HOMARD = SIMP(statut='f',typ='TXM',defaut="V8_5", - into=("V8_5", "V8_N", "V8_N_PERSO"), - fr="Version de HOMARD", - ang="HOMARD release"), -# -# 3. Langue des messages issus de HOMARD -# - LANGUE = SIMP(statut='f',typ='TXM',defaut="FRANCAIS", - into=("FRANCAIS","FRENCH","ANGLAIS","ENGLISH",), - fr="Langue des messages issus de HOMARD.", - ang="Language for HOMARD messages." ), -# -# 4. Le nom du maillage a analyser -# - MAILLAGE = SIMP(statut='o',typ=maillage_sdaster, - fr="Maillage à analyser.", - ang="Mesh to be checked." ), -# -# 5. Suivi d'une frontiere -# - MAILLAGE_FRONTIERE = SIMP(statut='f',typ=maillage_sdaster, - fr="Maillage de la frontiere à suivre", - ang="Boundary mesh" ), -# - b_frontiere = BLOC( condition = " MAILLAGE_FRONTIERE != None " , - fr="Information complémentaire sur la frontière", - ang="Further information about boundary", -# - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', - fr="Groupes de mailles définissant la frontière", - ang="Mesh groups which define the boundary" ), -# - ) , -# -# 6. Les options ; par defaut, on controle tout -# 6.1. Nombre de noeuds et elements -# - NOMBRE = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"), - fr="Nombre de noeuds et éléments du maillage", - ang="Number of nodes and elements in the mesh" ), -# -# 6.2. Determination de la qualite des elements du maillage -# - QUALITE = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"), - fr="Qualité du maillage", - ang="Mesh quality" ), -# -# 6.3. Connexite du maillage -# - CONNEXITE = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"), - fr="Connexité du maillage.", - ang="Mesh connexity." ), -# -# 6.4. Taille des sous-domaines du maillage -# - TAILLE = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"), - fr="Tailles des sous-domaines du maillage.", - ang="Sizes of mesh sub-domains." ), -# -# 6.5. Controle de la non-interpenetration des elements -# - INTERPENETRATION=SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"), - fr="Controle de la non interpénétration des éléments.", - ang="Overlapping checking." ), -# -# 7. Gestion des éléments autres que ceux compatibles avec HOMARD -# "REFUSER" : ils sont refuses (defaut) -# "IGNORER" : ils sont ignorés -# - ELEMENTS_NON_HOMARD = SIMP(statut='f',typ='TXM',defaut="REFUSER",into=("REFUSER","IGNORER"), - fr="Acceptation d'éléments incompatibles avec HOMARD", - ang="Incompatible elements for HOMARD" ), + regles=(), + LISTE_INFO =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=3, + into=("CPU_RESTANT","UNITE_LIBRE","ETAT_UNITE"),), + b_etat_unite =BLOC(condition = "'ETAT_UNITE' in LISTE_INFO", + regles=(UN_PARMI('UNITE','FICHIER'),), + UNITE =SIMP(statut='f',typ='I',val_min=1,val_max=99,max=1, + fr="Unité logique dont on veut obtenir l'état",), + FICHIER =SIMP(statut='f',typ='TXM',validators=LongStr(1,255), + fr="Nom du fichier dont on veut obtenir l'état",), + ), + TITRE =SIMP(statut='f',typ='TXM',max='**'), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 10/10/2006 AUTEUR REZETTE C.REZETTE +#& MODIF COMMANDE DATE 30/05/2007 AUTEUR COURTOIS M.COURTOIS +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2005 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +from Macro.info_fonction_ops import info_fonction_ops +def info_fonction_prod(self,ECART_TYPE,RMS,NOCI_SEISME,MAX,NORME, **args): + if (RMS != None): return table_sdaster + if (MAX != None): return table_sdaster + if (NOCI_SEISME != None): return table_sdaster + if (ECART_TYPE != None): return table_sdaster + if (NORME != None): return table_sdaster + raise AsException("type de concept resultat non prevu") + +INFO_FONCTION=MACRO(nom="INFO_FONCTION",op=info_fonction_ops,sd_prod=info_fonction_prod + ,fr="Opérations mathématiques sur des concepts de type fonction, fonction_c ou nappe", + reentrant='n', + UIinfo={"groupes":("Fonction",)}, + regles=(UN_PARMI('MAX','RMS','NOCI_SEISME','NORME','ECART_TYPE',),), + RMS =FACT(statut='f',fr="Valeur RMS d'une fonction",max='**', + METHODE =SIMP(statut='f',typ='TXM',defaut="TRAPEZE",into=("SIMPSON","TRAPEZE") ), + FONCTION =SIMP(statut='o',typ=fonction_sdaster ), + INST_INIT =SIMP(statut='f',typ='R',fr="Instant initial définissant le début du signal" ), + INST_FIN =SIMP(statut='f',typ='R',fr="Instant final définissant la fin du signal" ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3,val_min=0.E+0 ), + ), + NOCI_SEISME =FACT(statut='f', + regles=(UN_PARMI('FONCTION','SPEC_OSCI',),), + FONCTION =SIMP(statut='f',typ=fonction_sdaster ), + SPEC_OSCI =SIMP(statut='f',typ=nappe_sdaster ), + b_option_f =BLOC(condition="""FONCTION !=None""", + OPTION =SIMP(statut='f',typ='TXM',defaut="TOUT",validators=NoRepeat(),max='**', + into=("INTE_ARIAS","POUV_DEST","INTE_SPEC","VITE_ABSO_CUMU", + "DUREE_PHAS_FORT","MAXI","ACCE_SUR_VITE","TOUT",), ), + b_amor_red =BLOC(condition="""OPTION in ("TOUT", "INTE_SPEC") """, + AMOR_REDUIT =SIMP(statut='o',typ='R'),), + b_pesanteur =BLOC(condition="""OPTION in ("TOUT", "INTE_ARIAS", "POUV_DEST", "DUREE_PHAS_FORT") """, + PESANTEUR =SIMP(statut='o',typ='R'),), + ), + b_option_n =BLOC(condition="""SPEC_OSCI !=None""", + OPTION =SIMP(statut='f',typ='TXM',defaut="INTE_SPEC",into=("INTE_SPEC",), ), + NATURE =SIMP(statut='o',typ='TXM',into=("DEPL","VITE","ACCE") ), + AMOR_REDUIT =SIMP(statut='o',typ='R'), ), + INST_INIT =SIMP(statut='f',typ='R'), + INST_FIN =SIMP(statut='f',typ='R'), + COEF =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + FREQ_INIT =SIMP(statut='f',typ='R',defaut= 4.E-1 ), + FREQ_FIN =SIMP(statut='f',typ='R',defaut= 10.E+0 ), + LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster ), + FREQ =SIMP(statut='f',typ='R',max='**'), + NORME =SIMP(statut='f',typ='R',defaut= 1.E+0 ), + BORNE_INF =SIMP(statut='f',typ='R',defaut= 0.05E+0 ), + BORNE_SUP =SIMP(statut='f',typ='R',defaut= 0.95E+0 ), + b_acce_reel =BLOC(condition="(INST_INIT != None)or(INST_FIN != None)or(FREQ_INIT != None)or(FREQ_FIN != None)", + PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3,val_min=0.E+0), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + ), + ), + MAX =FACT(statut='f',fr="Extrémas locaux d'une fonction", + FONCTION =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster),max='**' ), + ), + NORME =FACT(statut='f',fr="Norme L2 d'une fonction", + FONCTION =SIMP(statut='o', typ=nappe_sdaster), + ), + ECART_TYPE =FACT(statut='f',fr="Ecart-type d'une fonction", + METHODE =SIMP(statut='f',typ='TXM',defaut="TRAPEZE",into=("SIMPSON","TRAPEZE") ), + FONCTION =SIMP(statut='o',typ=fonction_sdaster), + INST_INIT =SIMP(statut='f',typ='R',fr="Instant initial définissant le début du signal" ), + INST_FIN =SIMP(statut='f',typ='R',fr="Instant final définissant la fin du signal" ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3,val_min=0.E+0 ), + ), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), +) +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE ASSIRE A.ASSIRE +# RESPONSABLE G8BHHXD X.DESROCHES +INTE_MAIL_2D=OPER(nom="INTE_MAIL_2D",op=50,sd_prod=courbe_sdaster, + UIinfo={"groupes":("Post traitements",)}, + fr="Définition d'une courbe dans un maillage 2D",reentrant='n', -from Macro.calc_precont_ops import calc_precont_ops + MAILLAGE =SIMP(statut='o',typ=(maillage_sdaster) ), + regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), + AU_MOINS_UN('DEFI_SEGMENT','DEFI_ARC','DEFI_CHEMIN'), + PRESENT_ABSENT('DEFI_CHEMIN','DEFI_SEGMENT','DEFI_ARC'), + PRESENT_ABSENT('DEFI_SEGMENT','NOEUD_ORIG','GROUP_NO_ORIG'), + PRESENT_ABSENT('DEFI_ARC','NOEUD_ORIG','GROUP_NO_ORIG'), + EXCLUS('NOEUD_ORIG','GROUP_NO_ORIG'), + EXCLUS('DEFI_CHEMIN','DEFI_SEGMENT'), + EXCLUS('DEFI_CHEMIN','DEFI_ARC'),), -# =========================================================================== -# CATALOGUE DE LA MACRO "CALC_PRECONT" -# ----------------------------------------- -# USAGE : -# -# -# =========================================================================== + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), -CALC_PRECONT=MACRO(nom="CALC_PRECONT",op=calc_precont_ops,sd_prod=evol_noli, - fr="Imposer la tension définie par le BPEL dans les cables", - reentrant='f',UIinfo={"groupe":("Modélisation",)}, - reuse =SIMP(statut='f',typ='evol_noli'), - MODELE =SIMP(statut='o',typ=modele_sdaster), - CHAM_MATER =SIMP(statut='o',typ=cham_mater), - CARA_ELEM =SIMP(statut='o',typ=cara_elem), - CABLE_BP =SIMP(statut='o',typ=cabl_precont,validators=NoRepeat(),max='**'), - CABLE_BP_INACTIF =SIMP(statut='f',typ=cabl_precont,validators=NoRepeat(),max='**'), - INCREMENT =FACT(statut='o', - LIST_INST =SIMP(statut='o',typ=listr8_sdaster), - INST_INIT =SIMP(statut='f',typ='R'), - INST_FIN =SIMP(statut='f',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), - # DEBUT DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS - SUBD_METHODE =SIMP( statut='f',typ='TXM', - into =("AUCUNE","UNIFORME","EXTRAPOLE"), - defaut="AUCUNE", - fr="Méthode de subdivision des pas de temps en cas de non-convergence" - ), - b_subd_unif=BLOC(condition = "SUBD_METHODE == 'UNIFORME'", - regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), - SUBD_COEF_PAS_1=SIMP(statut='f',typ='R',defaut=1.0,val_min=0.0, - fr="Coefficient multiplicateur de la 1ère subdivision"), - SUBD_PAS =SIMP(statut='f',typ='I',defaut=4,val_min=2, - fr="Nombre de subdivision d'un pas de temps"), - SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, - fr="Nombre maximum de niveau de subdivision d'un pas de temps"), - SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, - fr="Pas de temps en dessous duquel on ne subdivise plus"), - ), - b_subd_extr=BLOC(condition = "SUBD_METHODE == 'EXTRAPOLE'", - regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), - SUBD_OPTION =SIMP(statut='f',typ='TXM', - into =("IGNORE_PREMIERES","GARDE_DERNIERES",), - defaut="IGNORE_PREMIERES", - fr="Technique d'extrapolation : les 1ere itérations sont ignorées ou les dernières sont gardées"), - SUBD_ITER_IGNO =SIMP(statut='c',typ='I',defaut=3,val_min=0, - fr="Les n premières itérations sont ignorées pour l'extrapolation"), - SUBD_ITER_FIN =SIMP(statut='c',typ='I',defaut=8,val_min=3, - fr="Seules les n dernières itérations sont prises pour l'extrapolation"), - SUBD_PAS =SIMP(statut='c',typ='I',defaut=4,val_min=2, - fr="Nombre de subdivision d'un pas de temps en cas divergence"), - SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, - fr="Nombre maximum de niveau de subdivision d'un pas de temps"), - SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, - fr="Pas de temps en dessous duquel on ne subdivise plus"), - SUBD_ITER_PLUS =SIMP(statut='c',typ='I',defaut=50,val_min=20, - fr="% itération autorisée en plus"), - ), - # FIN DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS + DEFI_SEGMENT =FACT(statut='f',max='**', + regles=(UN_PARMI('ORIGINE','NOEUD_ORIG','GROUP_NO_ORIG'), + UN_PARMI('EXTREMITE','NOEUD_EXTR','GROUP_NO_EXTR'),), + ORIGINE =SIMP(statut='f',typ='R',min=2,max=2), + NOEUD_ORIG =SIMP(statut='f',typ=no,), + GROUP_NO_ORIG =SIMP(statut='f',typ=grno,), + EXTREMITE =SIMP(statut='f',typ='R',min=2,max=2), + NOEUD_EXTR =SIMP(statut='f',typ=no,), + GROUP_NO_EXTR =SIMP(statut='f',typ=grno,), ), - NEWTON =FACT(statut='d', - REAC_INCR =SIMP(statut='f',typ='I',defaut= 1 ), - PREDICTION =SIMP(statut='f',typ='TXM',into=("DEPL_CALCULE","TANGENTE","ELASTIQUE","EXTRAPOL") ), - MATRICE =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE") ), - PAS_MINI_ELAS =SIMP(statut='f',typ='R',defaut=0.0E+0), - REAC_ITER =SIMP(statut='f',typ='I',defaut=0), - EVOL_NOLI =SIMP(statut='f',typ=evol_noli), - ), - RECH_LINEAIRE =FACT(statut='f', - RESI_LINE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-1 ), - ITER_LINE_MAXI =SIMP(statut='f',typ='I',defaut= 3), - ), - CONVERGENCE =FACT(statut='d', - RESI_GLOB_MAXI =SIMP(statut='f',typ='R'), - RESI_GLOB_RELA =SIMP(statut='f',typ='R'), - ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut=10), - ITER_GLOB_ELAS =SIMP(statut='f',typ='I',defaut=25), - ARRET =SIMP(statut='f',typ='TXM',defaut="OUI"), - ), - ETAT_INIT =FACT(statut='f', - regles=(AU_MOINS_UN('EVOL_NOLI','DEPL','SIGM','VARI','VARI_NON_LOCAL',), - EXCLUS('EVOL_NOLI','DEPL',), - EXCLUS('EVOL_NOLI','SIGM',), - EXCLUS('EVOL_NOLI','VARI',), - EXCLUS('EVOL_NOLI','VARI_NON_LOCAL',), - EXCLUS('NUME_ORDRE','INST'), ), - DEPL =SIMP(statut='f',typ=cham_no_sdaster), - SIGM =SIMP(statut='f',typ=(carte_sdaster,cham_elem)), - VARI =SIMP(statut='f',typ=cham_elem), - VARI_NON_LOCAL =SIMP(statut='f',typ=cham_no_sdaster), - EVOL_NOLI =SIMP(statut='f',typ=evol_noli), - NUME_ORDRE =SIMP(statut='f',typ='I'), - INST =SIMP(statut='f',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - NUME_DIDI =SIMP(statut='f',typ='I'), - INST_ETAT_INIT =SIMP(statut='f',typ='R'), - ), - SOLVEUR =FACT(statut='d', - METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ), - b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale", - RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), - ), - b_ldlt =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT", - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), - ), - b_ldlt_mult =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ", - fr="Paramètres relatifs à la non inversibilité de la matrice à factorise", - NPREC =SIMP(statut='f',typ='I',defaut= 8 ), - STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON","DECOUPE") ), - ), - b_gcpc =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué", - PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ), - NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), - RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), - NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), - ), - SYME =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - ), - SOLV_NON_LOCAL =FACT(statut='f', - METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ), - b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale", - RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), - ), - b_ldlt =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT", - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), - ), - b_ldlt_mult =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ", - fr="Paramètres relatifs à la non inversibilité de la matrice à factorise", - NPREC =SIMP(statut='f',typ='I',defaut= 8 ), - STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - b_gcpc =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué", - PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ), - NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), - RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), - NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), - ), - EPS =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - ), - LAGR_NON_LOCAL =FACT(statut='f', - ITER_DUAL_MAXI =SIMP(statut='f',typ='I',defaut= 50), - RESI_DUAL_ABSO =SIMP(statut='o',typ='R'), - RESI_PRIM_ABSO =SIMP(statut='o',typ='R'), - R =SIMP(statut='f',typ='R',defaut= 1000.), - ITER_PRIM_MAXI =SIMP(statut='f',typ='I',defaut= 10), - ), - INFO =SIMP(statut='f',typ='I',into=(1,2) ), - TITRE =SIMP(statut='f',typ='TXM',max='**' ), + DEFI_ARC =FACT(statut='f',max='**', + regles=(UN_PARMI('CENTRE','NOEUD_CENTRE','GROUP_NO_CENTRE'), + UN_PARMI('RAYON','ORIGINE','NOEUD_ORIG','GROUP_NO_ORIG'), + UN_PARMI('RAYON','EXTREMITE','NOEUD_EXTR','GROUP_NO_EXTR'), + PRESENT_PRESENT('RAYON','SECTEUR'),), + CENTRE =SIMP(statut='f',typ='R',min=2,max=2), + NOEUD_CENTRE =SIMP(statut='f',typ=no,), + GROUP_NO_CENTRE =SIMP(statut='f',typ=grno,), + RAYON =SIMP(statut='f',typ='R',val_min=0.E+0), + SECTEUR =SIMP(statut='f',typ='R',min=2,max=2, + val_min=-180.E+0,val_max=180E+0), + ORIGINE =SIMP(statut='f',typ='R',min=2,max=2), + NOEUD_ORIG =SIMP(statut='f',typ=no,), + GROUP_NO_ORIG =SIMP(statut='f',typ=grno,), + EXTREMITE =SIMP(statut='f',typ='R',min=2,max=2), + NOEUD_EXTR =SIMP(statut='f',typ=no,), + GROUP_NO_EXTR =SIMP(statut='f',typ=grno,), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF", + into=("RELATIF","ABSOLU",) ), + ), - EXCIT =FACT(statut='o',max='**', - CHARGE =SIMP(statut='o',typ=char_meca), - ), + DEFI_CHEMIN =FACT(statut='f',max='**', + regles=(UN_PARMI('MAILLE','GROUP_MA'),), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + ), - COMP_INCR =C_COMP_INCR(), - ) ; + NOEUD_ORIG =SIMP(statut='f',typ=no,), + GROUP_NO_ORIG =SIMP(statut='f',typ=grno,), + PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), +) ; #& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== - -DEFI_CABLE_OP=OPER(nom="DEFI_CABLE_OP",op= 180,sd_prod=cabl_precont,reentrant='n', - fr="Définit les profils initiaux de tension d'une structure en béton le long des cables de précontrainte" - +" (utilisée par la macro DEFI_CABLE_BP)", - UIinfo={"groupes":("Modélisation",)}, - MODELE =SIMP(statut='o',typ=modele_sdaster ), - CHAM_MATER =SIMP(statut='o',typ=cham_mater ), - CARA_ELEM =SIMP(statut='o',typ=cara_elem ), - GROUP_MA_BETON =SIMP(statut='o',typ=grma,max='**'), - DEFI_CABLE =FACT(statut='o',max='**', - regles=(UN_PARMI('MAILLE','GROUP_MA'), - UN_PARMI('NOEUD_ANCRAGE','GROUP_NO_ANCRAGE'),), - MAILLE =SIMP(statut='f',typ=ma,min=2,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma), - NOEUD_ANCRAGE =SIMP(statut='f',typ=no ,validators=NoRepeat(),max=2), - GROUP_NO_ANCRAGE=SIMP(statut='f',typ=grno,validators=NoRepeat(),max=2), - GROUP_NO_FUT =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=2), - ), - TYPE_ANCRAGE =SIMP(statut='o',typ='TXM',min=2,max=2,into=("ACTIF","PASSIF") ), - TENSION_INIT =SIMP(statut='o',typ='R',val_min=0.E+0 ), - RECUL_ANCRAGE =SIMP(statut='o',typ='R',val_min=0.E+0 ), - RELAXATION =FACT(statut='f',min=0, - R_J =SIMP(statut='o',typ='R',val_min=0.E+0 ), - ), - TITRE =SIMP(statut='f',typ='TXM',max='**' ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), - CONE =FACT(statut='f',min=0, - RAYON =SIMP(statut='o',typ='R',val_min=0.E+0 ), - LONGUEUR =SIMP(statut='o',typ='R',val_min=0.E+0, defaut=0.E+0 ), - PRESENT =SIMP(statut='o',typ='TXM',min=2,max=2,into=("OUI","NON") ), +# RESPONSABLE G8BHHXD X.DESROCHES +INTE_MAIL_3D=OPER(nom="INTE_MAIL_3D",op=96,sd_prod=surface_sdaster, + UIinfo={"groupes":("Post traitements",)}, + fr="Définir un chemin de type segment de droite dans un maillage 3D",reentrant='n', + MAILLAGE =SIMP(statut='o',typ=maillage_sdaster), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + DEFI_SEGMENT =FACT(statut='o',max='**', + regles=(UN_PARMI('ORIGINE','NOEUD_ORIG','GROUP_NO_ORIG'), + UN_PARMI('EXTREMITE','NOEUD_EXTR','GROUP_NO_EXTR'),), + ORIGINE =SIMP(statut='f',typ='R',min=3,max=3), + NOEUD_ORIG =SIMP(statut='f',typ=no,), + GROUP_NO_ORIG =SIMP(statut='f',typ=grno,), + EXTREMITE =SIMP(statut='f',typ='R',min=3,max=3), + NOEUD_EXTR =SIMP(statut='f',typ=no,), + GROUP_NO_EXTR =SIMP(statut='f',typ=grno,), ), + PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-6), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), ) ; -#& MODIF COMMANDE DATE 04/04/2006 AUTEUR CIBHHLV L.VIVAN +#& MODIF COMMANDE DATE 16/05/2006 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16588,77 +15302,120 @@ DEFI_CABLE_OP=OPER(nom="DEFI_CABLE_OP",op= 180,sd_prod=cabl_precont,reentrant='n # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE G8BHHXD X.DESROCHES +def lire_champ_prod(TYPE_CHAM=None,**args): +# Remarque : si cette liste évolue, il faut penser à mettre à jour son +# homologue dans macr_adap_mail + import string +# + if TYPE_CHAM[0:5] == "NOEU_" : return cham_no_sdaster + if TYPE_CHAM[0:2] == "EL" : return cham_elem + raise AsException("type de concept resultat non prevu") -from Macro.macro_elas_mult_ops import macro_elas_mult_ops +LIRE_CHAMP=OPER(nom="LIRE_CHAMP",op= 192,sd_prod=lire_champ_prod, + fr="Lire un champ dans un fichier au format MED et le stocker dans un concept.", + reentrant='n',UIinfo={"groupe":("Résultats et champs",)}, + MAILLAGE =SIMP(statut='o',typ=maillage_sdaster,), + FORMAT =SIMP(statut='f',typ='TXM',defaut="MED",into=("MED",),), + UNITE =SIMP(statut='f',typ='I',defaut= 81,), + b_format =BLOC(condition = "FORMAT == 'MED'", + regles=( UN_PARMI('NOM_CMP_IDEM','NOM_CMP'), + PRESENT_PRESENT('NOM_CMP','NOM_CMP_MED' ), + EXCLUS('NUME_ORDRE','INST'), + EXCLUS('NUME_PT','INST'),), + NOM_MED =SIMP(statut='o',typ='TXM', ), + NOM_CMP_IDEM =SIMP(statut='f',typ='TXM',into=("OUI",), ), + NOM_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',), + NOM_CMP_MED =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',), + NUME_PT =SIMP(statut='f',typ='I' ,validators=NoRepeat(),max='**',), + NUME_ORDRE =SIMP(statut='f',typ='I' ,validators=NoRepeat(),max='**', + fr="Numero d ordre du champ à lire",ang="Rank of the field to be read" ), + INST =SIMP(statut='f',typ='R',fr="Instant associé",ang="Instant" ), +# + b_precision =BLOC(condition="(INST != None)", + PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3, + fr="Précision sur le choix de l'instant associé",ang="Accuracy over instant choice" ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU"), + fr="Critère de précision sur le choix de l'instant associé", + ang="Accuracy criterium over instant choice" ),), +# + NOM_MAIL_MED =SIMP(statut='f',typ='TXM',), + ), +# Remarque : si cette liste évolue, il faut penser à mettre à jour son +# homologue dans macr_adap_mail + TYPE_CHAM =SIMP(statut='o',typ='TXM',into=C_TYPE_CHAM_INTO()), + b_modele =BLOC(condition = "TYPE_CHAM!=None and TYPE_CHAM[0:2] == 'EL'", + MODELE =SIMP(statut='o',typ=modele_sdaster, ), + ), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), +) ; +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== -def macro_elas_mult_prod(self,NUME_DDL,CAS_CHARGE,**args ): - if isinstance(NUME_DDL,CO) : - self.type_sdprod(NUME_DDL,nume_ddl_sdaster) - else: - self.type_sdprod(NUME_DDL,NUME_DDL.__class__) - if CAS_CHARGE[0]['NOM_CAS'] != None : return mult_elas - if CAS_CHARGE[0]['MODE_FOURIER'] != None : return fourier_elas +from Macro.lire_fonction_ops import lire_fonction_ops + +def lire_fonction_prod(self,TYPE,**args): + if (TYPE == 'FONCTION') : return fonction_sdaster + elif (TYPE == 'FONCTION_C'): return fonction_c + elif (TYPE == 'NAPPE' ) : return nappe_sdaster raise AsException("type de concept resultat non prevu") -MACRO_ELAS_MULT=MACRO(nom="MACRO_ELAS_MULT",op=macro_elas_mult_ops,sd_prod=macro_elas_mult_prod,reentrant='f', - UIinfo={"groupes":("Résolution",)}, - fr="Calculer les réponses statiques linéaires pour différents cas de charges ou modes de Fourier", - regles=(UN_PARMI('CHAR_MECA_GLOBAL','CHAR_CINE_GLOBAL','LIAISON_DISCRET', ),), - MODELE =SIMP(statut='o',typ=modele_sdaster), - CHAM_MATER =SIMP(statut='f',typ=cham_mater), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - NUME_DDL =SIMP(statut='f',typ=(nume_ddl_sdaster,CO)), - CHAR_MECA_GLOBAL=SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), - CHAR_CINE_GLOBAL=SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), - LIAISON_DISCRET =SIMP(statut='f',typ='TXM',into=("OUI",)), - CAS_CHARGE =FACT(statut='o',max='**', - regles=(UN_PARMI('NOM_CAS','MODE_FOURIER'), - UN_PARMI('CHAR_MECA','CHAR_CINE','VECT_ASSE'),), - NOM_CAS =SIMP(statut='f',typ='TXM' ), - MODE_FOURIER =SIMP(statut='f',typ='I' ), - TYPE_MODE =SIMP(statut='f',typ='TXM',defaut="SYME",into=("SYME","ANTI","TOUS") ), - CHAR_MECA =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), - CHAR_CINE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), - OPTION =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**', - into=("EFGE_ELNO_DEPL","EPOT_ELEM_DEPL","SIGM_ELNO_DEPL","SIEF_ELGA_DEPL", - "SIGM_ELNO_CART","EFGE_ELNO_CART","DEGE_ELNO_DEPL","EPSI_ELNO_DEPL", - "EPSI_ELGA_DEPL","EPSG_ELNO_DEPL","EPSG_ELGA_DEPL","EPSP_ELNO","EPSP_ELGA", - "ECIN_ELEM_DEPL","FLUX_ELGA_TEMP","FLUX_ELNO_TEMP","SOUR_ELGA_ELEC", - "PRES_ELNO_DBEL","PRES_ELNO_REEL","PRES_ELNO_IMAG","INTE_ELNO_ACTI", - "INTE_ELNO_REAC","SIGM_NOZ1_ELGA","ERZ1_ELEM_SIGM","SIGM_NOZ2_ELGA", - "ERZ2_ELEM_SIGM","VNOR_ELEM_DEPL","ERRE_ELNO_ELEM","SIRE_ELNO_DEPL", - "ERRE_ELEM_SIGM","EQUI_ELNO_SIGM","EQUI_ELGA_SIGM","EQUI_ELNO_EPSI", - "QIRE_ELEM_SIGM","QIRE_ELNO_ELEM","QIZ1_ELEM_SIGM","QIZ2_ELEM_SIGM", - "EQUI_ELGA_EPSI","FORC_NODA","REAC_NODA","EPSI_NOEU_DEPL","SIGM_NOEU_DEPL", - "EFGE_NOEU_DEPL","EQUI_NOEU_SIGM","EQUI_NOEU_EPSI","FLUX_NOEU_TEMP") ), - NUME_COUCHE =SIMP(statut='f',typ='I',defaut=1), - NIVE_COUCHE =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY")), - SOUS_TITRE =SIMP(statut='f',typ='TXM',max='**'), - VECT_ASSE =SIMP(statut='f',typ=cham_no_sdaster), - ), - SOLVEUR =FACT(statut='d', - METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT") ), - b_mult_front = BLOC ( condition = "METHODE == 'MULT_FRONT' ", - fr="Paramètres de la méthode multi frontale", - RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), - ), - b_ldlt =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT", - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), - ), - b_ldlt_mult =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ", - fr="Paramètres relatifs à la non inversibilité de la matrice à factorise", - NPREC =SIMP(statut='f',typ='I',defaut= 8 ), - STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2)), +LIRE_FONCTION=MACRO(nom="LIRE_FONCTION",op=lire_fonction_ops,sd_prod=lire_fonction_prod, + fr="Lit les valeurs réelles dans un fichier de données représentant une fonction et" + +" crée un concept de type fonction ou nappe", + reentrant='n', + UIinfo={"groupes":("Fonction",)}, + FORMAT =SIMP(statut='f',typ='TXM',into=("LIBRE",),defaut="LIBRE" ), + TYPE =SIMP(statut='f',typ='TXM',into=("FONCTION","FONCTION_C","NAPPE"),defaut="FONCTION" ), + SEPAR =SIMP(statut='f',typ='TXM',into=("None",",",";","/"),defaut="None" ), + INDIC_PARA =SIMP(statut='f',typ='I',min=2,max=2,defaut=[1,1]), + b_fonction =BLOC(condition = "TYPE=='FONCTION' ", + INDIC_RESU =SIMP(statut='f',typ='I',min=2,max=2,defaut=[1,2]), ), + b_fonction_c =BLOC(condition = "TYPE=='FONCTION_C' ", + FORMAT_C =SIMP(statut='f',typ='TXM',defaut="REEL_IMAG",into=("REEL_IMAG","MODULE_PHASE") ), + b_reel_imag =BLOC(condition = "FORMAT_C=='REEL_IMAG' ", + INDIC_REEL =SIMP(statut='o',typ='I',min=2,max=2,defaut=[1,2]), + INDIC_IMAG =SIMP(statut='o',typ='I',min=2,max=2,defaut=[1,3]), ) , + b_modu_phas =BLOC(condition = "FORMAT_C=='MODULE_PHASE' ", + INDIC_MODU =SIMP(statut='o',typ='I',min=2,max=2,defaut=[1,2]), + INDIC_PHAS =SIMP(statut='o',typ='I',min=2,max=2,defaut=[1,3]), ), ), + b_nappe =BLOC(condition = "TYPE=='NAPPE' ", + NOM_PARA_FONC =SIMP(statut='o',typ='TXM',into=C_PARA_FONCTION() ), + INDIC_ABSCISSE =SIMP(statut='o',typ='I',min=2,max=2,), + INTERPOL_FONC =SIMP(statut='f',typ='TXM',max=2,defaut="LIN",into=("NON","LIN","LOG") ), + PROL_DROITE_FONC=SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), + PROL_GAUCHE_FONC=SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), + DEFI_FONCTION =FACT(statut='f',max='**', + INDIC_RESU =SIMP(statut='o',typ='I',min=2,max=2,),), ), + UNITE =SIMP(statut='o',typ='I' ), + NOM_PARA =SIMP(statut='o',typ='TXM',into=C_PARA_FONCTION() ), + NOM_RESU =SIMP(statut='f',typ='TXM',defaut="TOUTRESU"), + INTERPOL =SIMP(statut='f',typ='TXM',max=2,defaut="LIN",into=("NON","LIN","LOG") ), + PROL_DROITE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), + PROL_GAUCHE =SIMP(statut='f',typ='TXM',defaut="EXCLU",into=("CONSTANT","LINEAIRE","EXCLU") ), + VERIF =SIMP(statut='f',typ='TXM',defaut="CROISSANT",into=("CROISSANT","NON") ), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +#& MODIF COMMANDE DATE 21/02/2006 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG +# COPYRIGHT (C) 1991 - 2005 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR @@ -16673,58 +15430,48 @@ MACRO_ELAS_MULT=MACRO(nom="MACRO_ELAS_MULT",op=macro_elas_mult_ops,sd_prod=macro # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE D6BHHJP J.P.LEFEBVRE -def DEFIC_prod(self,ACTION,UNITE,**args): - if ACTION == "ASSOCIER" or ACTION == "RESERVER": - if UNITE != None : - return - else : - return entier - elif ACTION == "LIBERER" : - return - else : - raise AsException("ACTION non prevue : %s" % ACTION) - -DEFI_FICHIER=MACRO(nom="DEFI_FICHIER",op=ops.build_DEFI_FICHIER,sd_prod=DEFIC_prod,reentrant='n', - UIinfo={"groupes":("Gestion du travail",)}, - fr="Ouvre ou ferme un fichier associé à un numéro d'unité logique", - - ACTION =SIMP(statut='f',typ='TXM',into=("ASSOCIER","LIBERER","RESERVER"),defaut="ASSOCIER"), - - b_associer =BLOC(condition = "ACTION == 'ASSOCIER'", - fr="Paramètres pour l'ouverture du fichier", - regles=(AU_MOINS_UN('FICHIER','UNITE'),), - UNITE =SIMP(statut='f',typ='I' ,val_min=1), - FICHIER =SIMP(statut='f',typ='TXM',validators=LongStr(1,255)), - TYPE =SIMP(statut='f',typ='TXM',into=("ASCII","BINARY","LIBRE"),defaut="ASCII"), - - b_type_ascii =BLOC(condition = "TYPE == 'ASCII'",fr="Paramètres pour le type ASCII", - ACCES =SIMP(statut='f',typ='TXM',into=("NEW","APPEND","OLD"),defaut="NEW"), - ), - b_type_autre =BLOC(condition = "TYPE != 'ASCII'",fr="Paramètres pour les types BINARY et LIBRE", - ACCES =SIMP(statut='f',typ='TXM',into=("NEW","OLD"),defaut="NEW"), - ), - ), - - b_reserver =BLOC(condition = "ACTION == 'RESERVER'", - fr="Paramètres pour la réservation de l'unité du fichier", - regles=(AU_MOINS_UN('FICHIER','UNITE'),), - UNITE =SIMP(statut='f',typ='I' ,val_min=1), - FICHIER =SIMP(statut='f',typ='TXM',validators=LongStr(1,255)), - TYPE =SIMP(statut='f',typ='TXM',into=("ASCII",),defaut="ASCII"), - ACCES =SIMP(statut='f',typ='TXM',into=("APPEND",),defaut="APPEND"), - ), +LIRE_FORC_MISS=OPER(nom="LIRE_FORC_MISS",op= 179,sd_prod=vect_asse_gene, + fr="Création d un vecteur assemblé à partir de base modale", + reentrant='n', + UIinfo={"groupes":("Matrices/vecteurs",)}, + BASE =SIMP(statut='o',typ=base_modale ), + NUME_DDL_GENE =SIMP(statut='o',typ=nume_ddl_gene ), + FREQ_EXTR =SIMP(statut='o',typ='R',max=1), + NOM_CMP =SIMP(statut='o',typ='TXM',into=("DX","DY","DZ") ), + NOM_CHAM =SIMP(statut='f',typ='TXM',into=("DEPL","VITE","ACCE"),defaut="DEPL"), + UNITE_RESU_FORC =SIMP(statut='f',typ='I',defaut=30), +) ; - b_liberer =BLOC(condition = "ACTION == 'LIBERER'", - fr="Paramètres pour la fermeture du fichier", - regles=(UN_PARMI('FICHIER','UNITE'),), - UNITE =SIMP(statut='f',typ='I' ,val_min=1), - FICHIER =SIMP(statut='f',typ='TXM',validators=LongStr(1,255)), - ), +#& MODIF COMMANDE DATE 19/09/2006 AUTEUR ACBHHCD G.DEVESA +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2005 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +LIRE_IMPE_MISS=OPER(nom="LIRE_IMPE_MISS",op= 164,sd_prod=matr_asse_gene_c, + fr="Création d une matrice assemblée à partir de base modale", + reentrant='n', + UIinfo={"groupes":("Matrices/vecteurs",)}, + BASE =SIMP(statut='o',typ=base_modale ), + NUME_DDL_GENE =SIMP(statut='o',typ=nume_ddl_gene ), + FREQ_EXTR =SIMP(statut='o',typ='R',max=1), + UNITE_RESU_IMPE =SIMP(statut='f',typ='I',defaut=30), + TYPE =SIMP(statut='f',typ='TXM',defaut="ASCII",into=("BINAIRE","ASCII") ), +) ; - INFO =SIMP(statut='f',typ='I',into=(1,2) ), - ) -#& MODIF COMMANDE DATE 21/02/2006 AUTEUR REZETTE C.REZETTE +#& MODIF COMMANDE DATE 10/10/2006 AUTEUR MCOURTOI M.COURTOIS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16743,94 +15490,161 @@ DEFI_FICHIER=MACRO(nom="DEFI_FICHIER",op=ops.build_DEFI_FICHIER,sd_prod=DEFIC_pr # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -from Macro.macro_matr_ajou_ops import macro_matr_ajou_ops - -def macro_matr_ajou_prod(self,MATR_AMOR_AJOU,MATR_MASS_AJOU,MATR_RIGI_AJOU,FORC_AJOU,**args): - self.type_sdprod(MATR_AMOR_AJOU,matr_asse_gene_r) - self.type_sdprod(MATR_MASS_AJOU,matr_asse_gene_r) - self.type_sdprod(MATR_RIGI_AJOU,matr_asse_gene_r) - if FORC_AJOU != None: - for m in FORC_AJOU: - self.type_sdprod(m['VECTEUR'],vect_asse_gene) - - return None +from Macro.lire_inte_spec_ops import lire_inte_spec_ops -MACRO_MATR_AJOU=MACRO(nom="MACRO_MATR_AJOU",op=macro_matr_ajou_ops,sd_prod=macro_matr_ajou_prod, - UIinfo={"groupes":("Matrices/vecteurs",)}, - fr="Calculer de facon plus condensée qu'avec CALC_MATR_AJOU des matrices de masse, d'amortissement" - +" ou de rigidité ajoutés", - regles=(AU_MOINS_UN('MODE_MECA','DEPL_IMPO','MODELE_GENE'), - AU_MOINS_UN('MATR_MASS_AJOU','MATR_AMOR_AJOU','MATR_RIGI_AJOU'), - EXCLUS('MODE_MECA','DEPL_IMPO','MODELE_GENE'), - EXCLUS('MONO_APPUI','MODE_STAT',), - ), - MAILLAGE =SIMP(statut='o',typ=maillage_sdaster), - GROUP_MA_FLUIDE =SIMP(statut='o',typ=grma), - GROUP_MA_INTERF =SIMP(statut='o',typ=grma), - MODELISATION =SIMP(statut='o',typ='TXM',into=("PLAN","AXIS","3D")), - FLUIDE =FACT(statut='o',max='**', - RHO =SIMP(statut='o',typ='R'), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",)), - GROUP_MA =SIMP(statut='f',typ=grma), - MAILLE =SIMP(statut='f',typ=ma), - ), - DDL_IMPO =FACT(statut='o',max='**', - regles=(UN_PARMI('NOEUD','GROUP_NO'), - UN_PARMI('PRES_FLUIDE','PRES_SORTIE'),), - NOEUD =SIMP(statut='f',typ=no), - GROUP_NO =SIMP(statut='f',typ=grno), - PRES_FLUIDE =SIMP(statut='f',typ='R'), - PRES_SORTIE =SIMP(statut='f',typ='R'), - ), - ECOULEMENT =FACT(statut='f', - GROUP_MA_1 =SIMP(statut='o',typ=grma), - GROUP_MA_2 =SIMP(statut='o',typ=grma), - VNOR_1 =SIMP(statut='o',typ='R'), - VNOR_2 =SIMP(statut='f',typ='R'), - POTENTIEL =SIMP(statut='f',typ=evol_ther), +LIRE_INTE_SPEC=MACRO(nom="LIRE_INTE_SPEC",op=lire_inte_spec_ops,sd_prod=table_fonction, + fr="Lecture sur un fichier externe de fonctions complexes pour créer une matrice interspectrale", + reentrant='n', + UIinfo={"groupes":("Fonction",)}, + UNITE =SIMP(statut='o',typ='I' ), + FORMAT =SIMP(statut='f',typ='TXM',defaut="MODULE_PHASE",into=("REEL_IMAG","MODULE_PHASE") ), + NOM_PARA =SIMP(statut='f',typ='TXM',defaut="FREQ", + into=("DX","DY","DZ","DRX","DRY","DRZ","TEMP", + "INST","X","Y","Z","EPSI","FREQ","PULS","AMOR","ABSC",) ), + NOM_RESU =SIMP(statut='f',typ='TXM',defaut="DSP" ), + INTERPOL =SIMP(statut='f',typ='TXM',max=2,into=("NON","LIN","LOG") ), + PROL_DROITE =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ), + PROL_GAUCHE =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ), + TITRE =SIMP(statut='f',typ='TXM',max='**'), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), +) ; +#& MODIF COMMANDE DATE 21/11/2006 AUTEUR COURTOIS M.COURTOIS +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE VABHHTS J.PELLET +LIRE_MAILLAGE=OPER(nom="LIRE_MAILLAGE",op= 1,sd_prod=maillage_sdaster, + fr="Crée un maillage par lecture d'un fichier au format Aster ou Med", + ang="Readings of a mesh file", + reentrant='n', + UIinfo={"groupes":("Maillage",)}, +# + UNITE =SIMP(statut='f',typ='I',defaut= 20 ), +# + FORMAT =SIMP(statut='f',typ='TXM',defaut="ASTER",into=("ASTER","MED"), + fr="Format du fichier : ASTER ou MED.", + ang="Format of the file : ASTER or MED.",), +# + ABSC_CURV =FACT(statut='f',min=0, + TOUT =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), ), - MODE_MECA =SIMP(statut='f',typ=mode_meca), - DEPL_IMPO =SIMP(statut='f',typ=cham_no_sdaster), - MODELE_GENE =SIMP(statut='f',typ=modele_gene), - NUME_DDL_GENE =SIMP(statut='f',typ=nume_ddl_gene), - DIST_REFE =SIMP(statut='f',typ='R',defaut= 1.0E-2), - MATR_MASS_AJOU =SIMP(statut='f',typ=CO,), - MATR_RIGI_AJOU =SIMP(statut='f',typ=CO,), - MATR_AMOR_AJOU =SIMP(statut='f',typ=CO,), - MONO_APPUI =SIMP(statut='f',typ='TXM',into=("OUI",),), - MODE_STAT =SIMP(statut='f',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc,),), - FORC_AJOU =FACT(statut='f',max='**', - DIRECTION =SIMP(statut='o',typ='R',max=3), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - VECTEUR =SIMP(statut='o',typ=CO), +# + VERI_MAIL =FACT(statut='d', + VERIF =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + APLAT =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), ), - SOLVEUR =FACT(statut='d', - METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ), - b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale", - RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), - ), - b_ldlt =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT", - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), - ), - b_ldlt_mult =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ", - fr="Paramètres relatifs à la non iversibilité de la matrice à factorise", - NPREC =SIMP(statut='f',typ='I',defaut= 8 ), - STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - b_gcpc =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué", - PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ), - NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), - RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), - NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), - ), +# + b_format_med =BLOC( condition = " ( FORMAT == 'MED' ) " , + fr="Informations complémentaires pour la lecture MED.", + ang="Further information for MED readings.", +# +# Pour une lecture dans un fichier MED, on peut préciser le nom sous lequel +# le maillage y a été enregistré. Par défaut, on va le chercher sous le nom du concept à créer. + NOM_MED = SIMP(statut='f',typ='TXM', + fr="Nom du maillage dans le fichier MED.", + ang="Name of the mesh into the MED file.",), + INFO_MED = SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), +# + RENOMME = FACT(statut='f', max='**', + fr="Renommer un nom de groupe MED", + NOM_MED = SIMP(statut='o', typ=grma, + fr="Nom du groupe dans le fichier MED"), + NOM = SIMP(statut='o', typ=grma, validators=LongStr(1,8), + fr="Nom du groupe dans le maillage ASTER"), + ), ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), - NOEUD_DOUBLE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), - AVEC_MODE_STAT =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), -) -#& MODIF COMMANDE DATE 12/06/2006 AUTEUR CIBHHLV L.VIVAN +# + INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), +# +) ; +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +def lire_miss_3d_prod(TYPE_RESU,**args): + if TYPE_RESU == "TRANS" : return dyna_trans + if TYPE_RESU == "HARMO" : return dyna_harmo + raise AsException("type de concept resultat non prevu") + +LIRE_MISS_3D=OPER(nom="LIRE_MISS_3D",op= 163,sd_prod=lire_miss_3d_prod, + fr="Restituer sur base physique une réponse harmonique ou transitoire issue de MISS3D", + reentrant='n', + UIinfo={"groupes":("Maillage",)}, + MACR_ELEM_DYNA =SIMP(statut='o',typ=macr_elem_dyna ), + UNITE =SIMP(statut='f',typ='I',defaut= 27 ), + NOM =SIMP(statut='f',typ='TXM' ), + TYPE_RESU =SIMP(statut='f',typ='TXM',defaut="TRANS",into=("TRANS","HARMO") ), + TITRE =SIMP(statut='f',typ='TXM',max='**'), +) ; +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +LIRE_PLEXUS=OPER(nom="LIRE_PLEXUS",op= 184,sd_prod=evol_char, + fr="Lire le fichier de résultats au format IDEAS produit par le logiciel EUROPLEXUS", + reentrant='n', + UIinfo={"groupes":("Maillage",)}, + regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST','LIST_ORDRE'),), + UNITE =SIMP(statut='f',typ='I',defaut= 19 ), + FORMAT =SIMP(statut='f',typ='TXM',defaut="IDEAS",into=("IDEAS",)), + MAIL_PLEXUS =SIMP(statut='o',typ=maillage_sdaster ), + MAILLAGE =SIMP(statut='o',typ=maillage_sdaster ), + MODELE =SIMP(statut='o',typ=modele_sdaster ), + TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster ), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), + b_prec_crit =BLOC(condition = "LIST_INST != None or INST != None", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF", + into=("RELATIF","ABSOLU") ), + ), + TITRE =SIMP(statut='f',typ='TXM',max='**'), +) ; +#& MODIF COMMANDE DATE 13/02/2007 AUTEUR PELLET J.PELLET # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16848,244 +15662,256 @@ MACRO_MATR_AJOU=MACRO(nom="MACRO_MATR_AJOU",op=macro_matr_ajou_ops,sd_prod=macro # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== +# RESPONSABLE VABHHTS J.PELLET -from Macro.macro_matr_asse_ops import macro_matr_asse_ops +def lire_resu_prod(TYPE_RESU,**args): + if TYPE_RESU == "EVOL_CHAR" : return evol_char + if TYPE_RESU == "EVOL_THER" : return evol_ther + if TYPE_RESU == "EVOL_ELAS" : return evol_elas + if TYPE_RESU == "EVOL_NOLI" : return evol_noli + if TYPE_RESU == "DYNA_TRANS" : return dyna_trans + if TYPE_RESU == "DYNA_HARMO" : return dyna_harmo + if TYPE_RESU == "HARM_GENE" : return harm_gene + if TYPE_RESU == "MODE_MECA" : return mode_meca + if TYPE_RESU == "MODE_MECA_C" : return mode_meca_c + raise AsException("type de concept resultat non prevu") -def macro_matr_asse_prod(self,NUME_DDL,MATR_ASSE,**args): - if not MATR_ASSE: raise AsException("Impossible de typer les concepts resultats") - if not NUME_DDL : raise AsException("Impossible de typer les concepts resultats") - if isinstance(NUME_DDL,CO) : - self.type_sdprod(NUME_DDL,nume_ddl_sdaster) - else: - self.type_sdprod(NUME_DDL,NUME_DDL.__class__) - for m in MATR_ASSE: - opti=m['OPTION'] +# pour éviter d'écrire 3 fois cette liste : +def l_nom_cham_pas_elga(): return ( + "ACCE", "ACCE_ABSOLU", "CRIT_ELNO_RUPT", "DCHA_ELNO_SIGM", + "DCHA_NOEU_SIGM", "DEDE_ELNO_DLDE", "DEDE_NOEU_DLDE", "DEGE_ELNO_DEPL", "DEGE_NOEU_DEPL", + "DEPL", "DEPL_ABSOLU", "DESI_ELNO_DLSI", "DESI_NOEU_DLSI", "DETE_ELNO_DLTE", "DETE_NOEU_DLTE", + "DURT_ELNO_META", "DURT_NOEU_META", "ECIN_ELEM_DEPL", "EFGE_ELNO_CART", "EFGE_ELNO_DEPL", + "EFGE_NOEU_CART", "EFGE_NOEU_DEPL", "ENDO_ELNO_SIGA", "ENDO_ELNO_SINO", "ENDO_NOEU_SINO", + "ENEL_ELNO_ELGA", "ENEL_NOEU_ELGA", "EPEQ_ELNO_TUYO", "EPGR_ELNO", "EPME_ELNO_DEPL", + "EPMG_ELNO_DEPL", "EPMG_NOEU_DEPL", "EPOT_ELEM_DEPL", "EPSA_ELNO", "EPSA_NOEU", + "EPSG_ELNO_DEPL", "EPSG_NOEU_DEPL", "EPSI_ELNO_DEPL", "EPSI_ELNO_TUYO", "EPSI_NOEU_DEPL", + "EPSP_ELNO", "EPSP_ELNO_ZAC", "EPSP_NOEU", "EPSP_NOEU_ZAC", "EQUI_ELNO_EPME", "EQUI_ELNO_EPSI", + "EQUI_ELNO_SIGM", "EQUI_NOEU_EPME", "EQUI_NOEU_EPSI", "EQUI_NOEU_SIGM", "ERRE_ELEM_NOZ1", + "ERRE_ELEM_NOZ2", "ERRE_ELNO_ELGA", "ERRE_NOEU_ELGA", "ERTH_ELEM_TEMP", "ERTH_ELNO_ELEM", + "ETOT_ELEM", "ETOT_ELNO_ELGA", "FLUX_ELNO_TEMP", "FLUX_NOEU_TEMP", "FORC_NODA", "FSUR_2D", + "FSUR_3D", "FVOL_2D", "FVOL_3D", "GRAD_NOEU_THETA", "HYDR_ELNO_ELGA", "HYDR_NOEU_ELGA", + "INTE_ELNO_ACTI", "INTE_ELNO_REAC", "INTE_NOEU_ACTI", "INTE_NOEU_REAC", "IRRA", + "META_ELNO_TEMP", "META_NOEU_TEMP", "PMPB_ELNO_SIEF", "PMPB_NOEU_SIEF", + "PRES", "PRES_DBEL_DEPL", "PRES_ELNO_DBEL", "PRES_ELNO_IMAG", "PRES_ELNO_REEL", + "PRES_NOEU_DBEL", "PRES_NOEU_IMAG", "PRES_NOEU_REEL", + "RADI_ELNO_SIGM", "RADI_NOEU_SIGM", "REAC_NODA", + "SIEF_ELNO", "SIEF_ELNO_ELGA", "SIEF_NOEU", "SIEF_NOEU_ELGA", "SIEQ_ELNO_TUYO", + "SIGM_ELNO_CART", "SIGM_ELNO_COQU", "SIGM_ELNO_DEPL", "SIGM_ELNO_SIEF", + "SIGM_ELNO_TUYO", "SIGM_ELNO_ZAC", "SIGM_NOEU_CART", "SIGM_NOEU_COQU", + "SIGM_NOEU_DEPL", "SIGM_NOEU_SIEF", "SIGM_NOEU_ZAC", "SIGM_NOZ1_ELGA", + "SIGM_NOZ2_ELGA", "SIPO_ELNO_DEPL", "SIPO_ELNO_SIEF", "SIPO_NOEU_DEPL", + "SIPO_NOEU_SIEF", "SIRE_ELNO_DEPL", "SIRE_NOEU_DEPL", "TEMP", "THETA", + "VALE_CONT", "VALE_NCOU_MAXI", "VARI_ELNO", "VARI_ELNO_COQU", + "VARI_ELNO_ELGA", "VARI_ELNO_TUYO", "VARI_NOEU", "VARI_NOEU_ELGA", "VARI_NON_LOCAL", + "VITE", "VITE_ABSOLU", "VITE_VENT", + ) - if opti in ( "RIGI_MECA","RIGI_FLUI_STRU","RIGI_MECA_LAGR" , - "MASS_MECA" , "MASS_FLUI_STRU" ,"RIGI_GEOM" ,"RIGI_ROTA", - "AMOR_MECA","IMPE_MECA","MASS_ID_MDEP_R","MASS_ID_MDNS_R", - "ONDE_FLUI","MASS_MECA_DIAG" ) : t=matr_asse_depl_r +LIRE_RESU=OPER(nom="LIRE_RESU",op=150,sd_prod=lire_resu_prod,reentrant='n', + UIinfo={"groupes":("Résultats et champs",)}, + fr="Lire dans un fichier, soit format IDEAS, soit au format ENSIGHT soit au format MED," + +" des champs et les stocker dans une SD résultat", - if opti in ( "RIGI_ACOU","MASS_ACOU","AMOR_ACOU",) : t=matr_asse_pres_c - if opti in ( "RIGI_THER","MASS_THER","RIGI_THER_CONV" , - "RIGI_THER_CONV_D","MASS_ID_MTEM_R","MASS_ID_MTNS_R",) : t=matr_asse_temp_r +# 0) mots clés généraux : +#---------------------- + TYPE_RESU =SIMP(statut='o',typ='TXM',into=("EVOL_THER","EVOL_ELAS","EVOL_NOLI","MODE_MECA", + "MODE_MECA_C","DYNA_TRANS","DYNA_HARMO","HARM_GENE", + "EVOL_CHAR") ), - if opti == "RIGI_MECA_HYST" : t= matr_asse_depl_c + FORMAT =SIMP(statut='o',typ='TXM',into=("IDEAS","IDEAS_DS58","ENSIGHT","MED") ), - self.type_sdprod(m['MATRICE'],t) - return None + INFO =SIMP(statut='f',typ='I',into=(1,2) ), + TITRE =SIMP(statut='f',typ='TXM',max='**'), -MACRO_MATR_ASSE=MACRO(nom="MACRO_MATR_ASSE",op=macro_matr_asse_ops, - UIinfo={"groupes":("Matrices/vecteurs",)}, - sd_prod=macro_matr_asse_prod, - fr="Calcul des matrices assemblées (rigidité, masse, amortissement,...) ", - MODELE =SIMP(statut='o',typ=modele_sdaster), - CHAM_MATER =SIMP(statut='f',typ=cham_mater), - INST =SIMP(statut='f',typ='R',defaut=0.), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - CHARGE =SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**'), - CHAR_CINE =SIMP(statut='f',typ=(char_cine_meca,char_cine_ther,char_cine_acou) ), - NUME_DDL =SIMP(statut='o',typ=(nume_ddl_sdaster,CO)), - SOLVEUR =FACT(statut='d', - METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT", - into=("LDLT","MULT_FRONT","GCPC","MUMPS")), - RENUM =SIMP(statut='f',typ='TXM',into=("SANS","RCMK","MD","MDA","METIS")), + regles=(UN_PARMI('MAILLAGE','MODELE'),), + MAILLAGE =SIMP(statut='f',typ=maillage_sdaster), + MODELE =SIMP(statut='f',typ=modele_sdaster), + + NB_VARI =SIMP(statut='f',typ='I' ), + + CHAM_MATER =SIMP(statut='f',typ=cham_mater,), + + CARA_ELEM =SIMP(statut='f',typ=cara_elem,), + + b_evol_elas = BLOC(condition="TYPE_RESU=='EVOL_ELAS'", + EXCIT =FACT(statut='f',max='**', + CHARGE =SIMP(statut='o',typ=(char_meca,char_cine_meca)), + FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",) ),), + ), + + b_evol_ther = BLOC(condition="TYPE_RESU=='EVOL_THER'", + EXCIT =FACT(statut='f',max='**', + CHARGE =SIMP(statut='o',typ=(char_ther,char_cine_ther)), + FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)),), + ), + + b_evol_noli = BLOC(condition="TYPE_RESU=='EVOL_NOLI'", + EXCIT =FACT(statut='f',max='**', + CHARGE =SIMP(statut='o',typ=(char_meca,char_cine_meca)), + FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE_CSTE", + into=("FIXE_CSTE","FIXE_PILO","SUIV","DIDI")), + DEPL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + ACCE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + VITE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + MULT_APPUI =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + DIRECTION =SIMP(statut='f',typ='R',max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),), ), - MATR_ASSE =FACT(statut='o',max='**', - MATRICE =SIMP(statut='o',typ=CO), - OPTION =SIMP(statut='o',typ='TXM', - into=("RIGI_MECA","MASS_MECA","MASS_MECA_DIAG", - "AMOR_MECA","RIGI_MECA_HYST","IMPE_MECA", - "ONDE_FLUI","RIGI_FLUI_STRU","MASS_FLUI_STRU", - "RIGI_ROTA","RIGI_GEOM","RIGI_MECA_LAGR", - "RIGI_THER","MASS_THER", - "RIGI_ACOU","MASS_ACOU","AMOR_ACOU", - "MASS_ID_MTEM_R","MASS_ID_MTNS_R","MASS_ID_MDEP_R","MASS_ID_MDNS_R",) - ), - b_rigi_meca = BLOC( condition = "OPTION=='RIGI_MECA'", - MODE_FOURIER =SIMP(statut='f',typ='I',defaut= 0), - ), +# 1) blocs selon le format choisi : +#--------------------------------- + +# 1-1 ideas dataset-58 : +# ---------------------- + b_dataset_58 = BLOC(condition="FORMAT=='IDEAS_DS58'", + UNITE =SIMP(statut='f',typ='I',defaut= 19 ), + ), + b_dataset_58_b = BLOC(condition="(FORMAT=='IDEAS_DS58') and ((TYPE_RESU=='DYNA_TRANS') or\ + (TYPE_RESU=='DYNA_HARMO') or (TYPE_RESU=='HARM_GENE'))", + UNITE =SIMP(statut='f',typ='I',defaut= 19 ), + NOM_CHAM=SIMP(statut='o',typ='TXM',into=("DEPL","VITE","ACCE","EPSI_NOEU_DEPL","SIEF_NOEU",) ), + REDEFI_ORIENT=FACT(statut='f',max='**', + regles=(PRESENT_PRESENT('CODE_DIR','DIRECTION','NOEUD',),), + CODE_DIR =SIMP(statut='f',typ='I',into=(1,2,3,) ), + DIRECTION=SIMP(statut='f',typ='R',min=3,max=3,), + NOEUD =SIMP(statut='f',typ=no,validators=NoRepeat(),max='**'),), + ), + +# 1-2 ideas : +# --------- + b_ideas =BLOC(condition="FORMAT=='IDEAS'", + UNITE =SIMP(statut='f',typ='I',defaut= 19 ), +# TEST =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON" ), + NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=l_nom_cham_pas_elga()), + FORMAT_IDEAS =FACT(statut='f',max='**', + regles=(UN_PARMI('POSI_INST','POSI_FREQ'),), + NOM_CHAM =SIMP(statut='o',typ='TXM',into=l_nom_cham_pas_elga()), + NUME_DATASET =SIMP(statut='f',typ='I',into=(55,57,2414) ), + RECORD_3 =SIMP(statut='f',typ='I',max=10), + RECORD_6 =SIMP(statut='f',typ='I',max=10), + RECORD_9 =SIMP(statut='f',typ='I',max=10), + POSI_ORDRE =SIMP(statut='o',typ='I',min=2,max=2), + POSI_NUME_MODE =SIMP(statut='f',typ='I',min=2,max=2), + POSI_MASS_GENE =SIMP(statut='f',typ='I',min=2,max=2), + POSI_AMOR_GENE =SIMP(statut='f',typ='I',min=2,max=2), + POSI_INST =SIMP(statut='f',typ='I',min=2,max=2), + POSI_FREQ =SIMP(statut='f',typ='I',min=2,max=2), + NOM_CMP =SIMP(statut='o',typ='TXM',max='**'),), + ), +# 1-3 ensight : +# ------------- + b_ensight =BLOC(condition="FORMAT=='ENSIGHT'", + NOM_FICHIER =SIMP(statut='f',typ='TXM'), + NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=l_nom_cham_pas_elga()), + ), - b_rigi_geom = BLOC( condition = "OPTION=='RIGI_GEOM'", - SIEF_ELGA =SIMP(statut='o',typ=cham_elem), - MODE_FOURIER =SIMP(statut='f',typ='I',defaut= 0), - ), +# 1-4 med : +# --------- + b_med =BLOC(condition = "FORMAT == 'MED'",fr="Nom du champ dans le fichier MED", + UNITE =SIMP(statut='f',typ='I',defaut= 81, fr="Le fichier est : fort.n.",), + FORMAT_MED =FACT(statut='f',max='**', + regles=(ENSEMBLE('NOM_CMP','NOM_CMP_MED'),), + NOM_CHAM =SIMP(statut='o',typ='TXM',into=l_nom_cham_pas_elga()), + NOM_CHAM_MED =SIMP(statut='o',typ='TXM', fr="Nom du champ dans le fichier MED.", ), + NOM_CMP =SIMP(statut='f',typ='TXM',max='**', fr="Nom des composantes dans ASTER.", ), + NOM_CMP_MED =SIMP(statut='f',typ='TXM',max='**', fr="Nom des composantes dans MED.", ), + ), + ), - b_rigi_meca_lagr = BLOC( condition = "OPTION=='RIGI_MECA_LAGR'", - THETA =SIMP(statut='o',typ=theta_geom), - PROPAGATION =SIMP(statut='f',typ='R'), - ), +# 2) blocs selon le type du résultat : +#--------------------------------- + b_mode_meca =BLOC(condition="(TYPE_RESU=='MODE_MECA')or(TYPE_RESU=='MODE_MECA_C')", + MATR_A =SIMP(statut='f',typ=matr_asse_depl_r,), + MATR_B =SIMP(statut='f',typ=matr_asse_depl_r,), + ), - b_rigi_ther = BLOC( condition = "OPTION=='RIGI_THER'", - MODE_FOURIER =SIMP(statut='f',typ='I',defaut= 0), - ), - ), # fin MATR_ASSE +# 3) autres blocs : +#--------------------------------- + b_extrac =BLOC(condition="1",fr="accès à un champ dans la structure de données résultat", + regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST','FREQ','LIST_FREQ'),), + TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_INST =SIMP(statut='f',typ=listr8_sdaster), + LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), + FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), + b_acce_reel =BLOC(condition="(INST != None)or(LIST_INST != None)or(FREQ != None)or(LIST_FREQ != None)", + PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + ), + ), ) ; -#& MODIF COMMANDE DATE 19/09/2006 AUTEUR ACBHHCD G.DEVESA +#& MODIF COMMANDE DATE 03/04/2006 AUTEUR MCOURTOI M.COURTOIS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -from Macro.macro_miss_3d_ops import macro_miss_3d_ops +from Macro.lire_table_ops import lire_table_ops -MACRO_MISS_3D=MACRO(nom="MACRO_MISS_3D",op=macro_miss_3d_ops, - fr="Préparation des données puis exécution du logiciel MISS3D", - UIinfo={"groupes":("Matrices/vecteurs",)}, - OPTION =FACT(statut='o', - regles=(UN_PARMI('TOUT','MODULE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",)), - MODULE =SIMP(statut='f',typ='TXM',into=("PRE_MISS","MISS_EVOL","MISS_IMPE")), - ), - PROJET =SIMP(statut='o',typ='TXM'), - REPERTOIRE =SIMP(statut='f',typ='TXM'), - VERSION =SIMP(statut='f',typ='TXM',into=("V1_2","V1_3",),defaut="V1_2"), - UNITE_IMPR_ASTER=SIMP(statut='f',typ='I',defaut=25), - UNITE_OPTI_MISS =SIMP(statut='f',typ='I',defaut=26), - UNITE_MODELE_SOL=SIMP(statut='f',typ='I',defaut=27), - UNITE_RESU_IMPE =SIMP(statut='f',typ='I',defaut=30), - UNITE_RESU_FORC =SIMP(statut='f',typ='I',defaut=0), - PARAMETRE =FACT(statut='f', - regles=(PRESENT_PRESENT('FREQ_MIN','FREQ_MAX','FREQ_PAS'), - PRESENT_PRESENT('CONTR_NB','CONTR_LISTE'), - PRESENT_PRESENT('LFREQ_NB','LFREQ_LISTE'), - PRESENT_PRESENT('OFFSET_MAX','OFFSET_NB'), - PRESENT_PRESENT('SPEC_MAX','SPEC_NB'),), - FREQ_MIN =SIMP(statut='f',typ='R'), - FREQ_MAX =SIMP(statut='f',typ='R'), - FREQ_PAS =SIMP(statut='f',typ='R'), - Z0 =SIMP(statut='f',typ='R'), - SURF =SIMP(statut='f',typ='TXM',into=("OUI","NON",),defaut="NON"), - RFIC =SIMP(statut='f',typ='R'), - FICH_RESU_IMPE =SIMP(statut='f',typ='TXM'), - FICH_RESU_FORC =SIMP(statut='f',typ='TXM'), - TYPE =SIMP(statut='f',typ='TXM',into=("BINAIRE","ASCII",),defaut="ASCII"), - DREF =SIMP(statut='f',typ='R'), - ALGO =SIMP(statut='f',typ='TXM',into=("DEPL","REGU")), - OFFSET_MAX =SIMP(statut='f',typ='R'), - OFFSET_NB =SIMP(statut='f',typ='I'), - SPEC_MAX =SIMP(statut='f',typ='R'), - SPEC_NB =SIMP(statut='f',typ='I'), - ISSF =SIMP(statut='f',typ='TXM',into=("OUI","NON",),defaut="NON"), - FICH_POST_TRAI =SIMP(statut='f',typ='TXM'), - CONTR_NB =SIMP(statut='f',typ='I'), - CONTR_LISTE =SIMP(statut='f',typ='R',max='**'), - LFREQ_NB =SIMP(statut='f',typ='I'), - LFREQ_LISTE =SIMP(statut='f',typ='R',max='**'), - ), -) ; -#& MODIF COMMANDE DATE 27/03/2007 AUTEUR BOYERE E.BOYERE +LIRE_TABLE=MACRO(nom="LIRE_TABLE",op=lire_table_ops,sd_prod=table_sdaster, + fr="Lecture d'un fichier contenant une table", + UIinfo={"groupes":("Table",)}, + UNITE =SIMP(statut='o',typ='I' ), + FORMAT =SIMP(statut='f',typ='TXM',into=("ASTER",),defaut="ASTER"), + NUME_TABLE =SIMP(statut='f',typ='I',defaut=1), + SEPARATEUR =SIMP(statut='f',typ='TXM',defaut=' '), + PARA =SIMP(statut='f',typ='TXM',max='**'), + TITRE =SIMP(statut='f',typ='TXM',max='**'), + ) ; + +#& MODIF COMMANDE DATE 13/02/2006 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# COPYRIGHT (C) 1991 - 2005 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== # ====================================================================== -from Macro.macro_mode_meca_ops import macro_mode_meca_ops - -MACRO_MODE_MECA=MACRO(nom="MACRO_MODE_MECA",op=macro_mode_meca_ops,sd_prod=mode_meca, - reentrant='n',fr="Lancer une succession de calculs de modes propres réels", +MAC_MODES=OPER(nom="MAC_MODES",op= 141,sd_prod=table_sdaster, + fr="Normalisation de modes propres", + reentrant='n', UIinfo={"groupes":("Résolution",)}, - MATR_A =SIMP(statut='o',typ=matr_asse_depl_r ), - MATR_B =SIMP(statut='o',typ=matr_asse_depl_r ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), -# ce mot cle ne devrait il pas etre dans calc_freq - METHODE =SIMP(statut='f',typ='TXM',defaut="SORENSEN", - into=("TRI_DIAG","JACOBI","SORENSEN",) ), - b_tri_diag =BLOC(condition = "METHODE == 'TRI_DIAG'", - PREC_ORTHO =SIMP(statut='f',typ='R',defaut= 1.E-12,val_min=0.E+0 ), - NMAX_ITER_ORTHO =SIMP(statut='f',typ='I',defaut= 5,val_min=0 ), - PREC_LANCZOS =SIMP(statut='f',typ='R',defaut= 1.E-8,val_min=0.E+0 ), - NMAX_ITER_QR =SIMP(statut='f',typ='I',defaut= 30,val_min=0 ), - ), - b_jacobi =BLOC(condition = "METHODE == 'JACOBI'", - PREC_BATHE =SIMP(statut='f',typ='R',defaut= 1.E-10,val_min=0.E+0 ), - NMAX_ITER_BATHE =SIMP(statut='f',typ='I',defaut= 40,val_min=0 ), - PREC_JACOBI =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0 ), - NMAX_ITER_JACOBI=SIMP(statut='f',typ='I',defaut= 12,val_min=0 ), - ), - b_sorensen =BLOC(condition = "METHODE == 'SORENSEN'", - PREC_SOREN =SIMP(statut='f',typ='R',defaut= 0.E+0,val_min=0.E+0 ), - NMAX_ITER_SOREN =SIMP(statut='f',typ='I',defaut= 20,val_min=0 ), - PARA_ORTHO_SOREN=SIMP(statut='f',typ='R',defaut= 0.717,val_min=0.E+0 ), - ), - OPTION =SIMP(statut='f',typ='TXM',defaut="SANS", - into=("MODE_RIGIDE","SANS") ), - CALC_FREQ =FACT(statut='d',min=0, - regles=(UN_PARMI('FREQ','FREQ_MAX'), - PRESENT_PRESENT('FREQ_MIN','FREQ_MAX'), - PRESENT_PRESENT('FREQ_MAX','NB_BLOC_FREQ'), - EXCLUS('DIM_SOUS_ESPACE','COEF_DIM_ESPACE'),), - FREQ =SIMP(statut='f',typ='R',min=2,validators=NoRepeat(),max='**', ), - FREQ_MIN =SIMP(statut='f',typ='R' ), - FREQ_MAX =SIMP(statut='f',typ='R' ), - NB_BLOC_FREQ =SIMP(statut='f',typ='I' ), - DIM_SOUS_ESPACE =SIMP(statut='f',typ='I' ), - COEF_DIM_ESPACE =SIMP(statut='f',typ='I' ), - NPREC_SOLVEUR =SIMP(statut='f',typ='I',defaut= 8 ), - NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 5 ), - PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-2 ), - SEUIL_FREQ =SIMP(statut='f',typ='R' ,defaut= 1.E-2 ), - STOP_FREQ_VIDE =SIMP(statut='f',typ='TXM',defaut="NON" ,into=("OUI","NON") ), - ), - VERI_MODE =FACT(statut='d',min=0, - STOP_ERREUR =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - SEUIL =SIMP(statut='f',typ='R',defaut= 1.E-6 ), - PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-3 ), - STURM =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - NORM_MODE =FACT(statut='o',max='**', - MASS_INER =SIMP(statut='o',typ=table_sdaster), - NORME =SIMP(statut='f',typ='TXM',defaut="TRAN_ROTA", - into=("MASS_GENE","RIGI_GENE","EUCL", - "EUCL_TRAN","TRAN","TRAN_ROTA") ), - INFO =SIMP(statut='f',typ='I',defaut= 1 ,into=(1,2) ), - ), - FILTRE_MODE =FACT(statut='f', - CRIT_EXTR =SIMP(statut='f',typ='TXM',defaut="MASS_EFFE_UN", - into=("MASS_EFFE_UN","MASS_GENE") ), - SEUIL =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - ), - IMPRESSION =FACT(statut='d', - TOUT_PARA =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - CUMUL =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - CRIT_EXTR =SIMP(statut='f',typ='TXM',defaut="MASS_EFFE_UN", - into=("MASS_EFFE_UN","MASS_GENE",) ), - ), + BASE_1 =SIMP(statut='o',typ=(mode_meca,mode_flamb,base_modale) ), + BASE_2 =SIMP(statut='o',typ=(mode_meca,mode_flamb,base_modale) ), + MATR_ASSE =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_depl_c) ), + TITRE =SIMP(statut='f',typ='TXM',max='**'), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; -#& MODIF COMMANDE DATE 21/02/2006 AUTEUR REZETTE C.REZETTE +#& MODIF COMMANDE DATE 15/05/2007 AUTEUR GNICOLAS G.NICOLAS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -17094,901 +15920,477 @@ MACRO_MODE_MECA=MACRO(nom="MACRO_MODE_MECA",op=macro_mode_meca_ops,sd_prod=mode_ # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR # (AT YOUR OPTION) ANY LATER VERSION. # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE GNICOLAS G.NICOLAS + + +from Macro.macr_adap_mail_ops import macr_adap_mail_ops + +def macr_adap_mail_prod(self,MAJ_CHAM,ADAPTATION,**args): +# +# 0. Typage des structures produites +# + maillage_np1=args['MAILLAGE_NP1'] + self.type_sdprod(maillage_np1,maillage_sdaster) +# + if ( args['MAILLAGE_NP1_ANNEXE'] is not None ) : + maillage_np1_annexe=args['MAILLAGE_NP1_ANNEXE'] + self.type_sdprod(maillage_np1_annexe,maillage_sdaster) +# + if MAJ_CHAM == None:return None +# Remarque : la liste qui suit doit etre conforme à son homologue de LIRE_CHAMP + for ch in MAJ_CHAM: + t=ch['TYPE_CHAM'] + if t[0:5] == "NOEU_":self.type_sdprod(ch['CHAM_MAJ'],cham_no_sdaster) + if t[0:2] == "EL": self.type_sdprod(ch['CHAM_MAJ'],cham_elem) + return None + + +MACR_ADAP_MAIL=MACRO(nom="MACR_ADAP_MAIL",op=macr_adap_mail_ops,sd_prod=macr_adap_mail_prod, + fr="Adapter un maillage avec le logiciel HOMARD.", + ang="Mesh adaptation with HOMARD software.", + docu="U7.03.01-b",UIinfo={"groupe":("Maillage",)}, +# +# 1. Le niveau d'information +# + INFO = SIMP(statut='f',typ='I',defaut=1,into=(1,2)), +# +# 2. Version de HOMARD +# + VERSION_HOMARD = SIMP(statut='f',typ='TXM',defaut="V8_7", + into=("V8_7", "V8_N", "V8_N_PERSO"), + fr="Version de HOMARD", + ang="HOMARD release"), +# +# 3. Langue des messages produits par HOMARD +# + LANGUE = SIMP(statut='f',typ='TXM',defaut="FRANCAIS", + into=("FRANCAIS","FRENCH","ANGLAIS","ENGLISH",), + fr="Langue des messages produits par HOMARD.", + ang="Language for HOMARD messages." ), +# +# 4. Les maillages +# 4.1. Quel que soit le type de traitement, il faut donner : +# A. Le concept du maillage initial (entree) +# B. Le concept du maillage final (sortie) +# + MAILLAGE_N = SIMP(statut='o',typ=maillage_sdaster, + fr="Maillage avant adaptation", + ang="Mesh before adaptation" ), +# + MAILLAGE_NP1 = SIMP(statut='o',typ=CO, + fr="Maillage apres adaptation", + ang="Mesh after adaptation" ), +# +# 4.2. Eventuellement, on peut produire un maillage annexe +# Actuellement, c'est le maillage n+1, mais de degré différent. +# + MAILLAGE_NP1_ANNEXE = SIMP(statut='f',typ=CO, + fr="Maillage annexe apres adaptation", + ang="Additional mesh after adaptation" ), +# +# 5. Le pilotage de l'adaptation, avec les variantes suivantes : +# . Raffinement et deraffinement, selon un champ d'indicateurs d'erreur +# . Raffinement seul, selon un champ d'indicateurs d'erreur +# . Deraffinement seul, selon un champ d'indicateurs d'erreur +# . Raffinement seul, selon des zones geometriques +# . Raffinement uniforme : toutes les mailles sont divisées +# . Deraffinement uniforme : toutes les mailles sont regroupées +# . Rien : le maillage est le meme a la sortie et a l'entree +# + ADAPTATION = SIMP(statut='o',typ='TXM', + into=("RAFF_DERA","RAFFINEMENT","DERAFFINEMENT","RAFFINEMENT_ZONE", \ + "RAFFINEMENT_UNIFORME","DERAFFINEMENT_UNIFORME","RIEN"), + fr="Pilotage de l'adaptation : selon un indicateur d'erreur ou uniforme.", + ang="Adaptation control : among an error indicator or uniform" ), +# +# 6. Pour de l'adaptation libre, il faut un indicateur d'erreur +# + b_indicateur_d_erreur = BLOC( condition = " (ADAPTATION == 'RAFF_DERA') or \ + (ADAPTATION == 'RAFFINEMENT') or \ + (ADAPTATION == 'DERAFFINEMENT') " , + fr="Pour une adaptation libre, choix de l'indicateur d'erreur ou d'une zone à raffiner", + ang="For free adaptation, selection of error indicator or zone", +# + regles=(UN_PARMI('CHAM_GD','RESULTAT_N')), +# +# 6.1. Repérage de la zone à raffiner à l'aide d'un indicateur +# +# 6.1.1. Sous forme de champ de grandeur +# + CHAM_GD = SIMP(statut='f',typ=cham_gd_sdaster, + fr="Champ de grandeur Code_Aster contenant l'indicateur d'erreur", + ang="Code_Aster champ de grandeur with error indicator" ), +# +# 6.1.2. Sous forme de concept resultat_sdaster +# + RESULTAT_N = SIMP(statut='f',typ=(evol_elas,evol_noli,evol_ther) , + fr="Concept resultat Code_Aster contenant l'indicateur d'erreur", + ang="Code_Aster result with error indicator" ), +# + b_champ_indicateur = BLOC(condition="(RESULTAT_N != None)", + INDICATEUR = SIMP(statut='o',typ='TXM', + fr="Champ de l'indicateur d'erreur dans le résultat", + ang="Error indicator field in the result structure" ), + ), +# +# 6.1.3. Est-ce un champ dérivé +# + b_sensibilite = BLOC(condition=" (RESULTAT_N != None) or (CHAM_GD != None) ", + fr="Est-ce un champ dérivé", + ang="Is the indicator a derivative field", +# + SENSIBILITE = SIMP(statut='f',typ=(para_sensi,theta_geom), + fr="Paramètre de sensibilité.", + ang="Sensitivity parameter") +# + ), +# +# 6.1.4. La composante retenue +# + b_composante = BLOC(condition=" (RESULTAT_N != None) or (CHAM_GD != None) ", + fr="Choix de la composante pour l'indicateur", + ang="Component selection for error indicator", +# + NOM_CMP_INDICA = SIMP(statut='o',typ='TXM', + fr="Composante retenue pour l'indicateur d'erreur", + ang="Selected component for error indicator" ), +# + ), +# +# 6.1.5. Le paramètre temporel pour l'indicateur +# + b_parametre_temporel = BLOC(condition="(RESULTAT_N != None)", + fr="Choix éventuel du paramètre temporel pour l'indicateur", + ang="Time selection for error indicator (option)", +# + regles=(EXCLUS('NUME_ORDRE','INST'),), +# +# 6.1.5.1. Soit le numero d'ordre +# + NUME_ORDRE = SIMP(statut='f',typ='I', + fr="Numero d ordre", + ang="Rank" ), +# +# 6.1.5.2. Soit l'instant +# 6.1.5.2.1. Sa valeur +# + INST = SIMP(statut='f',typ='R', + fr="Instant associé", + ang="Instant" ), +# +# 6.1.5.2.2. La précision du choix de l'instant +# + b_precision = BLOC(condition="(INST != None)", + fr="Choix de la précision du choix de l'instant", + ang="Selection for instant choice", + PRECISION = SIMP(statut='f',typ='R',defaut=1.0E-3, + fr="Précision sur le choix de l'instant associé", + ang="Accuracy over instant choice" ), + CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU"), + fr="Critère de précision sur le choix de l'instant associé", + ang="Accuracy criterium over instant choice" ), + ), +# + ), +# +# 6.1.6. Type de valeur de l'indicateur : absolue ou relative +# + b_valeur_indicateur = BLOC(condition=" (RESULTAT_N != None) or (CHAM_GD != None) ", + fr="Type de valeur pour l'indicateur", + ang="Value type for error indicator", +# + TYPE_VALEUR_INDICA = SIMP(statut='f',typ='TXM',defaut="V_ABSOLUE",into=("V_ABSOLUE","V_RELATIVE"), + fr="Valeur absolue ou relative pour l'indicateur", + ang="Absolute or relative value for error indicator" ), +# + ), +# + ) , +# +# 7. Les criteres pour de l'adaptation libre avec un indicateur d'erreur : +# absolu, relatif, en proportion d'entite +# 7.1. Pour le raffinement : +# + b_critere_de_raffinement = BLOC( condition = " (ADAPTATION == 'RAFF_DERA') or \ + (ADAPTATION == 'RAFFINEMENT') " , + fr="Critère de raffinement.", + ang="Refinement threshold.", +# + regles=(UN_PARMI ( 'CRIT_RAFF_ABS', 'CRIT_RAFF_REL', 'CRIT_RAFF_PE' ),), +# + CRIT_RAFF_ABS = SIMP(statut='f',typ='R', + fr="Critère absolu", + ang="Absolute threshold" ), + CRIT_RAFF_REL = SIMP(statut='f',typ='R', + fr="Critère relatif : fraction réelle entre 0. et 1.", + ang="Relative threshold : ratio between 0. and 1." ), + CRIT_RAFF_PE = SIMP(statut='f',typ='R', + fr="Pourcentage d'éléments : fraction réelle entre 0. et 1.", + ang="Percentage of elements : ratio between 0. and 1." ), + ) , +# +# 7.2. Pour le deraffinement : +# + b_critere_de_deraffinement = BLOC( condition = " (ADAPTATION == 'RAFF_DERA') or \ + (ADAPTATION == 'DERAFFINEMENT') " , + fr="Critère de déraffinement.", + ang="Unrefinement threshold.", +# + regles=(UN_PARMI ( 'CRIT_DERA_ABS', 'CRIT_DERA_REL', 'CRIT_DERA_PE' ),), +# + CRIT_DERA_ABS = SIMP(statut='f',typ='R' , + fr="Critère absolu", + ang="Absolute threshold" ), + CRIT_DERA_REL = SIMP(statut='f',typ='R', + fr="Critère relatif : fraction réelle entre 0. et 1.", + ang="Relative threshold : ratio between 0. and 1." ), + CRIT_DERA_PE = SIMP(statut='f',typ='R', + fr="Pourcentage d'éléments : fraction réelle entre 0. et 1.", + ang="Percentage of elements : ratio between 0. and 1." ), + ) , +# +# 8. Pour de l'adaptation par zone, définitions des zones +# + b_zone = BLOC( condition = " (ADAPTATION == 'RAFFINEMENT_ZONE') " , + fr="Pour une adaptation selon une zone à raffiner", + ang="For adaptation among zone", + ZONE = FACT(statut='f',max='**', + fr="Définition de zones à raffiner.", + ang="Refined zone definition.", +# + regles=(AU_MOINS_UN('X_MINI','X_CENTRE'), + EXCLUS('X_MINI','X_CENTRE',), + EXCLUS('Z_MINI','X_CENTRE',), + EXCLUS('X_MINI','Z_CENTRE',), + EXCLUS('Z_MINI','Z_CENTRE',), + PRESENT_PRESENT('X_MINI','X_MAXI','Y_MINI','Y_MAXI'), + PRESENT_PRESENT('Z_MINI','Z_MAXI'), + PRESENT_PRESENT('X_CENTRE','Y_CENTRE','RAYON'),), +# +# 6.2.1. Une boite parallelepipedique # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== - -from Macro.macro_proj_base_ops import macro_proj_base_ops - -def macro_proj_base_prod(self,MATR_ASSE_GENE,VECT_ASSE_GENE,PROFIL,**args ): - if MATR_ASSE_GENE != None: - for m in MATR_ASSE_GENE: - self.type_sdprod(m['MATRICE'],matr_asse_gene_r) - if VECT_ASSE_GENE != None: - for v in VECT_ASSE_GENE: - self.type_sdprod(v['VECTEUR'],vect_asse_gene) - return None - -MACRO_PROJ_BASE=MACRO(nom="MACRO_PROJ_BASE",op=macro_proj_base_ops, - regles=(AU_MOINS_UN('MATR_ASSE_GENE','VECT_ASSE_GENE')), - UIinfo={"groupes":("Matrices/vecteurs",)}, - sd_prod=macro_proj_base_prod, - fr="Projection des matrices et/ou vecteurs assemblés sur une base (modale ou de RITZ)", - BASE =SIMP(statut='o',typ=(mode_meca,mode_stat,base_modale,mode_gene) ), - NB_VECT =SIMP(statut='f',typ='I',defaut= 9999), - PROFIL =SIMP(statut='f',typ='TXM',defaut="DIAG",into=("PLEIN","DIAG") ), - MATR_ASSE_GENE =FACT(statut='f',max='**', - MATRICE =SIMP(statut='o',typ=CO,), - regles=(UN_PARMI('MATR_ASSE','MATR_ASSE_GENE',),), - MATR_ASSE =SIMP(statut='f',typ=matr_asse_depl_r), - MATR_ASSE_GENE =SIMP(statut='f',typ=matr_asse_gene_r), - ), - VECT_ASSE_GENE =FACT(statut='f',max='**', - VECTEUR =SIMP(statut='o',typ=CO,), - regles=(UN_PARMI('VECT_ASSE','VECT_ASSE_GENE',),), - TYPE_VECT =SIMP(statut='f',typ='TXM',defaut="FORC"), - VECT_ASSE =SIMP(statut='f',typ=cham_no_sdaster), - VECT_ASSE_GENE =SIMP(statut='f',typ=vect_asse_gene), - ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), -) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. + X_MINI = SIMP(statut='f',typ='R', + fr="Abscisse minimum de la boite", + ang="Minimum X for the box"), + X_MAXI = SIMP(statut='f',typ='R', + fr="Abscisse maximum de la boite", + ang="Maximum X for the box"), # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. + Y_MINI = SIMP(statut='f',typ='R', + fr="Orodnnée minimum de la boite", + ang="Minimum Y for the box"), + Y_MAXI = SIMP(statut='f',typ='R', + fr="Abscisse maximum de la boite", + ang="Maximum Y for the box"), # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -MAJ_CATA=PROC(nom="MAJ_CATA",op=20, - UIinfo={"groupes":("Gestion du travail",)}, - fr="Compilation des catalogues de commandes et d'éléments", - - ELEMENT =FACT(statut='f',), - -) ; -#& MODIF COMMANDE DATE 13/12/2006 AUTEUR PELLET J.PELLET -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. + Z_MINI = SIMP(statut='f',typ='R', + fr="Cote minimum de la boite", + ang="Minimum Z for the box"), + Z_MAXI = SIMP(statut='f',typ='R', + fr="Cote maximum de la boite", + ang="Maximum Z for the box"), # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# 6.2.2. Une sphere # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE VABHHTS J.PELLET -MECA_STATIQUE=OPER(nom="MECA_STATIQUE",op=46,sd_prod=evol_elas, - fr="Résoudre un problème de mécanique statique linéaire",reentrant='f', - UIinfo={"groupes":("Résolution",)}, - regles=(EXCLUS("INST","LIST_INST"), - AU_MOINS_UN('CHAM_MATER','CARA_ELEM',), - CONCEPT_SENSIBLE('ENSEMBLE'),), - MODELE =SIMP(statut='o',typ=modele_sdaster), - CHAM_MATER =SIMP(statut='f',typ=cham_mater, - fr="le CHAM_MATER est nécessaire, sauf si le modèle ne contient que des éléments discrets (modélisations DIS_XXX)", - ang="CHAM_MATER is compulsory, except if the model contains only discret elements (modelizations DIS_XXX)"), - CARA_ELEM =SIMP(statut='f',typ=cara_elem, - fr="le CARA_ELEM est nécessaire dès que le modèle contient des éléments de structure : coques, poutres, ...", - ang="CARA_ELEM is compulsory as soon as the model contains structural elements : plates, beams, ..."), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - EXCIT =FACT(statut='o',max='**', - CHARGE =SIMP(statut='o',typ=(char_meca,char_cine_meca)), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",) ), - ), - INST =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - INST_FIN =SIMP(statut='f',typ='R'), - OPTION =SIMP(statut='f',typ='TXM',into=("SIEF_ELGA_DEPL","SANS"),defaut="SIEF_ELGA_DEPL",max=1, - fr="seule option : contraintes aux points de Gauss. Utiliser CALC_ELEM pour les autres.", - ), - SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', - fr="Liste des paramètres de sensibilité.", - ang="List of sensitivity parameters"), - - SOLVEUR =FACT(statut='d', - METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC","FETI","MUMPS") ), - - b_feti =BLOC(condition = "METHODE == 'FETI' ",fr="Paramètres de la méthode FETI 1", - PARTITION =SIMP(statut='o',typ=sd_feti_sdaster), - RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), - RESI_RELA =SIMP(statut='f',typ='R',defaut=1.E-6,val_min=0.), - NMAX_ITER =SIMP(statut='f',typ='I',defaut=0,val_min=0), - TYPE_REORTHO_DD =SIMP(statut='f',typ='TXM',defaut="GSM",into=("SANS","GS","GSM","IGSM") ), - NB_REORTHO_DD =SIMP(statut='f',typ='I',defaut=0,val_min=0), - NB_REORTHO_INST =SIMP(statut='f',typ='I',defaut=0,val_min=0), - PRE_COND =SIMP(statut='f',typ='TXM',defaut="LUMPE",into=("LUMPE","SANS") ), - SCALING =SIMP(statut='f',typ='TXM',defaut="MULT",into=("SANS","MULT") ), - VERIF_SDFETI =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - TEST_CONTINU =SIMP(statut='f',typ='R',defaut=1.E-8,val_min=0.), - INFO_FETI =SIMP(statut='f',typ='TXM',defaut='FFFFFFFFFFFFFFFFFFFFFFFF'), - STOCKAGE_GI =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON","CAL") ), - NB_SD_PROC0 =SIMP(statut='f',typ='I',defaut=0,val_min=0), - ACCELERATION_SM =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - - b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale", - RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), - ), - - b_ldlt =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT", - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), - ), - - b_ldlt_mult =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' or METHODE == 'FETI' ", - fr="Paramètres relatifs à la non inversibilité de la matrice à factorise", - NPREC =SIMP(statut='f',typ='I',defaut=8), - STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - - b_gcpc =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué", - PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ), - NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), - RESI_RELA =SIMP(statut='f',typ='R',defaut=1.E-6), - NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), - ), - - b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", - TYPE_RESOL =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("NONSYM","SYMGEN","SYMDEF","AUTO")), - SCALING =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("SANS","AUTO")), - RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), - ELIM_LAGR2 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=10,), - RESI_RELA =SIMP(statut='f',typ='R',defaut=1.E-6,), - ), - ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), -) ; -#& MODIF COMMANDE DATE 10/06/2004 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. + X_CENTRE = SIMP(statut='f',typ='R', + fr="Abscisse du centre de la sphere", + ang="X for the center of the sphere"), + Y_CENTRE = SIMP(statut='f',typ='R', + fr="Ordonnee du centre de la sphere", + ang="Y for the center of the sphere"), + Z_CENTRE = SIMP(statut='f',typ='R', + fr="Cote du centre de la sphere", + ang="Z for the center of the sphere"), + RAYON = SIMP(statut='f',typ='R', + fr="Rayon de la sphere", + ang="Radius of the sphere"), +# + ) , +# + ) , +# +# 9. Les niveaux extremes pour le maillage adapte +# 9.1. Pour le raffinement : +# + b_niveau_maximum = BLOC( condition = " (ADAPTATION == 'RAFF_DERA') or \ + (ADAPTATION == 'RAFFINEMENT') or \ + (ADAPTATION == 'RAFFINEMENT_UNIFORME') or \ + (ADAPTATION == 'RAFFINEMENT_ZONE') " , + fr="Niveau maximum de profondeur de raffinement", + ang="Maximum level for refinement", + NIVE_MAX = SIMP(statut='f',typ='I', + fr="Niveau maximum de profondeur de raffinement", + ang="Maximum level for refinement"), + ) , +# +# 9.2. Pour le deraffinement : +# + b_niveau_minimum = BLOC( condition = " (ADAPTATION == 'RAFF_DERA') or \ + (ADAPTATION == 'DERAFFINEMENT') or \ + (ADAPTATION == 'DERAFFINEMENT_UNIFORME') " , + fr="Niveau minimum de profondeur de déraffinement", + ang="Minimum level for unrefinement", + NIVE_MIN = SIMP(statut='f',typ='I', + fr="Niveau minimum de profondeur de déraffinement", + ang="Minimum level for unrefinement"), + ) , +# +# 10. Suivi d'une frontiere +# + MAILLAGE_FRONTIERE = SIMP(statut='f',typ=maillage_sdaster, + fr="Maillage de la frontiere à suivre", + ang="Boundary mesh" ), +# + b_frontiere = BLOC( condition = " MAILLAGE_FRONTIERE != None " , + fr="Information complémentaire sur la frontière", + ang="Further information about boundary", +# + GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', + fr="Liste des groupes de mailles définissant la frontière", + ang="Mesh groups which define the boundary" ), +# + ) , +# +# 11. Mise à jour de champs sur le nouveau maillage +# + MAJ_CHAM = FACT(statut='f',max='**', + fr="Mise à jour de champs sur le nouveau maillage.", + ang="Updating of fields over the new mesh.", # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# 11.1. Le nom du champ de grandeur qui contiendra le resultat de la mise a jour # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE GNICOLAS G.NICOLAS -MEMO_NOM_SENSI=PROC(nom="MEMO_NOM_SENSI",op=129, - UIinfo={"groupes":("Fonction",)}, - fr="Mémorisation des noms des concepts dérivés.", - ang="Memorisation of the names of the sensitive concepts.", - - regles=(AU_MOINS_UN('NOM','NOM_ZERO','NOM_UN'),), - - NOM=FACT(statut='f',max='**', - regles=(PRESENT_PRESENT('MOT_CLE','VALEUR','MOT_FACT' ),), - - NOM_SD=SIMP(statut='o',typ='TXM', - fr="Nom de la structure de base", - ang="Name of the basic structure"), - - PARA_SENSI=SIMP(statut='o',typ=(para_sensi,theta_geom), - fr="Nom du paramètre sensible", - ang="Name of the sensitive parameter"), - - NOM_COMPOSE=SIMP(statut='f',typ='TXM',defaut=" ", - fr="Nom de la structure composée", - ang="Name of the built structure"), - - MOT_FACT=SIMP(statut='f',typ='TXM',max='**', - fr="Liste des mots clés facteurs concernés par la dérivation", - ang="Factor keyword list involved in derivation"), - - MOT_CLE=SIMP(statut='f',typ='TXM',max='**', - fr="Liste des mots clés concernés par la dérivation", - ang="Keyword list involved in derivation"), - - VALEUR=SIMP(statut='f',typ='TXM',max='**', - fr="Liste des objets concernés par la dérivation", - ang="Object list involved in derivation"), - - ), - - NOM_ZERO=SIMP(statut='f',typ=fonction_sdaster, - fr="Nom de la fonction nulle", - ang="Name of the zero fonction"), - - NOM_UN =SIMP(statut='f',typ=fonction_sdaster, - fr="Nom de la fonction unité", - ang="Name of the one fonction"), - -) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. + CHAM_MAJ = SIMP(statut='o',typ=CO, + fr="Nom du champ de grandeur qui contiendra le champ mis à jour", + ang="Name of the field for the updated field"), # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# 11.2. Le type du champ qui contiendra le resultat de la mise a jour # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -MODE_ITER_CYCL=OPER(nom="MODE_ITER_CYCL",op= 80,sd_prod=mode_cycl, - fr="Calcul des modes propres d'une structure à répétitivité cyclique à partir" - +" d'une base de modes propres réels", - reentrant='n', - UIinfo={"groupes":("Résolution",)}, - BASE_MODALE =SIMP(statut='o',typ=base_modale ), - NB_MODE =SIMP(statut='f',typ='I',defaut= 999 ), - NB_SECTEUR =SIMP(statut='o',typ='I' ), - LIAISON =FACT(statut='o', - DROITE =SIMP(statut='o',typ='TXM' ), - GAUCHE =SIMP(statut='o',typ='TXM' ), - AXE =SIMP(statut='f',typ='TXM' ), - ), - VERI_CYCL =FACT(statut='f', - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF",) ), - DIST_REFE =SIMP(statut='f',typ='R' ), - ), - CALCUL =FACT(statut='o', - TOUT_DIAM =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NB_DIAM =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - OPTION =SIMP(statut='f',typ='TXM',defaut="PLUS_PETITE" - ,into=("PLUS_PETITE","CENTRE","BANDE") ), - b_centre =BLOC(condition = "OPTION == 'CENTRE'", - FREQ =SIMP(statut='o',typ='R',), - ), - b_bande =BLOC(condition = "OPTION == 'BANDE'", - FREQ =SIMP(statut='o',typ='R',min=2,validators=NoRepeat(),max=2), - ), -# NMAX_FREQ n a-t-il pas un sens qu avec OPTION CENTRE - NMAX_FREQ =SIMP(statut='f',typ='I',defaut= 10 ), - PREC_SEPARE =SIMP(statut='f',typ='R',defaut= 100. ), - PREC_AJUSTE =SIMP(statut='f',typ='R',defaut= 1.E-6 ), - NMAX_ITER =SIMP(statut='f',typ='I',defaut= 50 ), - ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), -) ; -#& MODIF COMMANDE DATE 10/05/2006 AUTEUR MCOURTOI M.COURTOIS -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. + TYPE_CHAM = SIMP(statut='o',typ='TXM',into=C_TYPE_CHAM_INTO(), + fr="Type du champ qui contiendra le champ mis à jour", + ang="Type of the field for the updated field" ), # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# 11.3. Le champ a interpoler # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -def mode_iter_inv_prod(MATR_A,MATR_C,TYPE_RESU,**args ): - if TYPE_RESU == "MODE_FLAMB" : return mode_flamb - if AsType(MATR_C) == matr_asse_depl_r : return mode_meca_c - if AsType(MATR_A) == matr_asse_depl_r : return mode_meca - if AsType(MATR_A) == matr_asse_pres_r : return mode_acou - if AsType(MATR_A) == matr_asse_gene_r : return mode_gene - raise AsException("type de concept resultat non prevu") - -MODE_ITER_INV=OPER(nom="MODE_ITER_INV",op= 44,sd_prod=mode_iter_inv_prod - ,fr="Calcul des modes propres par itérations inverses ; valeurs propres et modes réels ou complexes", - reentrant='n', - UIinfo={"groupes":("Résolution",)}, - regles=(CONCEPT_SENSIBLE('ENSEMBLE'),), - MATR_A =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ) ), - MATR_B =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ) ), - MATR_C =SIMP(statut='f',typ=matr_asse_depl_r ), - TYPE_RESU =SIMP(statut='f',typ='TXM',defaut="DYNAMIQUE", - into=("MODE_FLAMB","DYNAMIQUE"),fr="Type d analyse" ), - b_dynam =BLOC(condition = "TYPE_RESU == 'DYNAMIQUE'", - CALC_FREQ =FACT(statut='o',fr="Choix des paramètres pour le calcul des valeurs propres", - - OPTION =SIMP(statut='f',typ='TXM',defaut="AJUSTE",into=("SEPARE","AJUSTE","PROCHE"), - fr="Choix de l option pour estimer les valeurs propres" ), - FREQ =SIMP(statut='o',typ='R',max='**'), - AMOR_REDUIT =SIMP(statut='f',typ='R',max='**'), - NMAX_FREQ =SIMP(statut='f',typ='I',defaut= 0,val_min=0 ), - NMAX_ITER_SEPARE=SIMP(statut='f',typ='I' ,defaut= 30,val_min=0 ), - PREC_SEPARE =SIMP(statut='f',typ='R',defaut= 1.E-4,val_min=0.E+0 ), - NMAX_ITER_AJUSTE=SIMP(statut='f',typ='I',defaut= 15,val_min=0 ), - PREC_AJUSTE =SIMP(statut='f',typ='R',defaut= 1.E-4,val_min=0.E+0 ), - - NPREC_SOLVEUR =SIMP(statut='f',typ='I',defaut= 8,val_min=0 ), - NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 5,val_min=0 ), - PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-2,val_min=0.E+0, ), - SEUIL_FREQ =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0, ), - ), - ), - b_flamb =BLOC(condition = "TYPE_RESU == 'MODE_FLAMB'", - CALC_FREQ =FACT(statut='o',fr="Choix des paramètres pour le calcul des valeurs propres", - - OPTION =SIMP(statut='f',typ='TXM',defaut="AJUSTE",into=("SEPARE","AJUSTE","PROCHE"), - fr="Choix de l option pour estimer les valeurs propres" ), - CHAR_CRIT =SIMP(statut='o',typ='R',validators=NoRepeat(),max='**' ), - NMAX_FREQ =SIMP(statut='f',typ='I',defaut= 0,val_min=0 ), - NMAX_ITER_SEPARE=SIMP(statut='f',typ='I' ,defaut= 30,val_min=0 ), - PREC_SEPARE =SIMP(statut='f',typ='R',defaut= 1.E-4,val_min=0.E+0, ), - NMAX_ITER_AJUSTE=SIMP(statut='f',typ='I',defaut= 15 ), - PREC_AJUSTE =SIMP(statut='f',typ='R',defaut= 1.E-4,val_min=0.E+0, ), - - NPREC_SOLVEUR =SIMP(statut='f',typ='I',defaut= 8,val_min=0 ), - NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 5,val_min=0 ), - PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-2,val_min=0.E+0, ), - SEUIL_FREQ =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0, ), - ), - ), - CALC_MODE =FACT(statut='d',min=0,fr="Choix des paramètres pour le calcul des vecteurs propres", - OPTION =SIMP(statut='f',typ='TXM',defaut="DIRECT",into=("DIRECT","RAYLEIGH") ), - PREC =SIMP(statut='f',typ='R',defaut= 1.E-5,val_min=0.E+0,fr="Précision de convergence" ), - NMAX_ITER =SIMP(statut='f',typ='I',defaut= 30,val_min=0 ), - ), - VERI_MODE =FACT(statut='d',min=0, - STOP_ERREUR =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - SEUIL =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0, - fr="Valeur limite admise pour l ereur a posteriori des modes" ), - ), - SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', - fr="Liste des param\350tres de sensibilit\351.", - ang="List of sensitivity parameters", - ), - b_sensibilite =BLOC(condition = "SENSIBILITE != None", - CHAM_MATER =SIMP(statut='f',typ=cham_mater ), - CARA_ELEM =SIMP(statut='f',typ=cara_elem ), - EXCIT =FACT(statut='f',max='**',), # que pour NMDOME - ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), - TITRE =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), -) ; -#& MODIF COMMANDE DATE 13/03/2007 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. + regles=(UN_PARMI('CHAM_GD','RESULTAT')), +# +# 11.3.1. Sous forme de champ de grandeur +# + CHAM_GD = SIMP(statut='f',typ=cham_gd_sdaster, + fr="Champ de grandeur Code_Aster contenant le champ à mettre à jour", + ang="Champ de grandeur with field to be updated" ), +# +# 11.3.2. Sous forme de champ dans un resultat +# + RESULTAT = SIMP(statut='f',typ=(evol_elas,evol_noli,evol_ther), + fr="Resultat contenant le champ à mettre à jour", + ang="Result with field to be updated" ), +# + b_nom_du_champ = BLOC(condition="(RESULTAT != None)", + fr="Choix éventuel du nom du champ à interpoler", + ang="Selection for the name of the field (option)", +# + NOM_CHAM = SIMP(statut='o',typ='TXM', + fr="Nom du champ à mettre à jour", + ang="Name of the field to be updated" ), +# + ), +# +# 11.4. Est-ce un champ dérivé +# + SENSIBILITE = SIMP(statut='f',typ=(para_sensi,theta_geom), + fr="Paramètre de sensibilité.", + ang="Sensitivity parameter"), +# +# 11.5. Le paramètre temporel pour le champ a interpoler +# + b_parametre_temporel = BLOC(condition="(RESULTAT != None)", + fr="Choix éventuel du paramètre temporel pour le champ à interpoler", + ang="Time selection for the field (option)", +# + regles=(EXCLUS('NUME_ORDRE','INST'),), +# +# 11.5.1. Soit le numero d'ordre +# + NUME_ORDRE = SIMP(statut='f',typ='I', + fr="Numero d ordre du champ à mettre à jour", + ang="Rank of the field to be updated" ), +# +# 11.5.2. Soit l'instant +# 11.5.2.1. Sa valeur # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. + INST = SIMP(statut='f',typ='R', + fr="Instant associé", + ang="Instant" ), # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -def mode_iter_simult_prod(MATR_A,MATR_C,TYPE_RESU,**args ): - if TYPE_RESU == "MODE_FLAMB" : return mode_flamb - if AsType(MATR_C) == matr_asse_depl_r : return mode_meca_c - if AsType(MATR_A) == matr_asse_depl_r : return mode_meca - if AsType(MATR_A) == matr_asse_depl_c : return mode_meca_c - if AsType(MATR_A) == matr_asse_pres_r : return mode_acou - if AsType(MATR_A) == matr_asse_gene_r : return mode_gene - if AsType(MATR_A) == matr_asse_gene_c : return mode_gene - - raise AsException("type de concept resultat non prevu") - -MODE_ITER_SIMULT=OPER(nom="MODE_ITER_SIMULT",op= 45,sd_prod=mode_iter_simult_prod, - fr="Calcul des modes propres par itérations simultanées ; valeurs propres et" - +" modes propres réels ou complexes", - reentrant='n', - UIinfo={"groupes":("Résolution",)}, - regles=(CONCEPT_SENSIBLE('ENSEMBLE'),), - MATR_A =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c, - matr_asse_gene_r,matr_asse_gene_c,matr_asse_pres_r ) ), - MATR_B =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ) ), - MATR_C =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_gene_r) ), - METHODE =SIMP(statut='f',typ='TXM',defaut="SORENSEN", - into=("TRI_DIAG","JACOBI","SORENSEN") ), - b_tri_diag =BLOC(condition = "METHODE == 'TRI_DIAG'", - PREC_ORTHO =SIMP(statut='f',typ='R',defaut= 1.E-12,val_min=0.E+0 ), - NMAX_ITER_ORTHO =SIMP(statut='f',typ='I',defaut= 5,val_min=0 ), - PREC_LANCZOS =SIMP(statut='f',typ='R',defaut= 1.E-8,val_min=0.E+0 ), - NMAX_ITER_QR =SIMP(statut='f',typ='I',defaut= 30,val_min=0 ), - ), - b_jacobi =BLOC(condition = "METHODE == 'JACOBI'", - PREC_BATHE =SIMP(statut='f',typ='R',defaut= 1.E-10,val_min=0.E+0 ), - NMAX_ITER_BATHE =SIMP(statut='f',typ='I',defaut= 40,val_min=0 ), - PREC_JACOBI =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0 ), - NMAX_ITER_JACOBI=SIMP(statut='f',typ='I',defaut= 12,val_min=0 ), - ), - b_sorensen =BLOC(condition = "METHODE == 'SORENSEN'", - PREC_SOREN =SIMP(statut='f',typ='R',defaut= 0.E+0,val_min=0.E+0 ), - NMAX_ITER_SOREN =SIMP(statut='f',typ='I',defaut= 20,val_min=0 ), - PARA_ORTHO_SOREN=SIMP(statut='f',typ='R',defaut= 0.717,val_min=0.E+0 ), - ), - TYPE_RESU =SIMP(statut='f',typ='TXM',defaut="DYNAMIQUE", - into=("MODE_FLAMB","DYNAMIQUE"), - fr="Type d analyse" ), - OPTION =SIMP(statut='f',typ='TXM',defaut="SANS",into=("MODE_RIGIDE","SANS"), - fr="Calcul des modes de corps rigide, uniquement pour la méthode TRI_DIAG" ), - - b_flamb =BLOC(condition = "TYPE_RESU == 'MODE_FLAMB'", - CALC_FREQ =FACT(statut='d',min=0, - OPTION =SIMP(statut='f',typ='TXM',defaut="PLUS_PETITE",into=("PLUS_PETITE","BANDE","CENTRE"), - fr="Choix de l option et par conséquent du shift du problème modal" ), - b_plus_petite =BLOC(condition = "OPTION == 'PLUS_PETITE'",fr="Recherche des plus petites valeurs propres", - NMAX_FREQ =SIMP(statut='f',typ='I',defaut= 10,val_min=0 ), - ), - b_centre =BLOC(condition = "OPTION == 'CENTRE'", - fr="Recherche des valeurs propres les plus proches d une valeur donnée", - CHAR_CRIT =SIMP(statut='o',typ='R', - fr="Charge critique autour de laquelle on cherche les charges critiques propres"), - NMAX_FREQ =SIMP(statut='f',typ='I',defaut= 10,val_min=0 ), - ), - b_bande =BLOC(condition = "(OPTION == 'BANDE')", - fr="Recherche des valeurs propres dans une bande donnée", - CHAR_CRIT =SIMP(statut='o',typ='R',min=2,validators=NoRepeat(),max=2, - fr="Valeur des deux charges critiques délimitant la bande de recherche"), - ), - APPROCHE =SIMP(statut='f',typ='TXM',defaut="REEL",into=("REEL","IMAG"), - fr="Choix du pseudo-produit scalaire pour la résolution du problème quadratique" ), - regles=(EXCLUS('DIM_SOUS_ESPACE','COEF_DIM_ESPACE'),), - DIM_SOUS_ESPACE =SIMP(statut='f',typ='I' ), - COEF_DIM_ESPACE =SIMP(statut='f',typ='I' ), - NPREC_SOLVEUR =SIMP(statut='f',typ='I',defaut= 8,val_min=0 ), - NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 5,val_min=0 ), - PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-2,val_min=0.E+0 ), - SEUIL_FREQ =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0 ), - ), - ), - - b_dynam =BLOC(condition = "TYPE_RESU == 'DYNAMIQUE'", - CALC_FREQ =FACT(statut='d',min=0, - OPTION =SIMP(statut='f',typ='TXM',defaut="PLUS_PETITE",into=("PLUS_PETITE","BANDE","CENTRE"), - fr="Choix de l option et par conséquent du shift du problème modal" ), - b_plus_petite =BLOC(condition = "OPTION == 'PLUS_PETITE'",fr="Recherche des plus petites valeurs propres", - NMAX_FREQ =SIMP(statut='f',typ='I',defaut= 10,val_min=0 ), - ), - b_centre =BLOC(condition = "OPTION == 'CENTRE'", - fr="Recherche des valeurs propres les plus proches d une valeur donnée", - FREQ =SIMP(statut='o',typ='R', - fr="Fréquence autour de laquelle on cherche les fréquences propres"), - AMOR_REDUIT =SIMP(statut='f',typ='R',), - NMAX_FREQ =SIMP(statut='f',typ='I',defaut= 10,val_min=0 ), - ), - b_bande =BLOC(condition = "(OPTION == 'BANDE')", - fr="Recherche des valeurs propres dans une bande donnée", - FREQ =SIMP(statut='o',typ='R',min=2,validators=NoRepeat(),max=2, - fr="Valeur des deux fréquences délimitant la bande de recherche"), - ), - APPROCHE =SIMP(statut='f',typ='TXM',defaut="REEL",into=("REEL","IMAG","COMPLEXE"), - fr="Choix du pseudo-produit scalaire pour la résolution du problème quadratique" ), - regles=(EXCLUS('DIM_SOUS_ESPACE','COEF_DIM_ESPACE'),), - DIM_SOUS_ESPACE =SIMP(statut='f',typ='I' ), - COEF_DIM_ESPACE =SIMP(statut='f',typ='I' ), - NPREC_SOLVEUR =SIMP(statut='f',typ='I',defaut= 8,val_min=0 ), - NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 5,val_min=0 ), - PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-2,val_min=0.E+0 ), - SEUIL_FREQ =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0 ), - ), - ), - - VERI_MODE =FACT(statut='d',min=0, - STOP_ERREUR =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-3,val_min=0.E+0 ), - SEUIL =SIMP(statut='f',typ='R',defaut= 1.E-6,val_min=0.E+0, - fr="Valeur limite admise pour l ereur a posteriori des modes" ), - STURM =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', - fr="Liste des param\350tres de sensibilit\351.", - ang="List of sensitivity parameters", - ), - b_sensibilite =BLOC(condition = "SENSIBILITE != None", - CHAM_MATER =SIMP(statut='f',typ=cham_mater ), - CARA_ELEM =SIMP(statut='f',typ=cara_elem ), - EXCIT =FACT(statut='f',max='**',), # que pour NMDOME - ), - STOP_FREQ_VIDE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. +# 11.5.2.2. La précision du choix de l'instant # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. + b_precision = BLOC(condition="(INST != None)", + fr="Choix de la précision du choix de l'instant", + ang="Selection for instant choice", # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -def mode_stat_prod(MODE_STAT,FORCE_NODALE,PSEUDO_MODE,**args): - if (MODE_STAT != None) : return mode_stat_depl - if (PSEUDO_MODE !=None) : return mode_stat_acce - if (FORCE_NODALE != None) : return mode_stat_forc - raise AsException("type de concept resultat non prevu") -MODE_STATIQUE=OPER(nom="MODE_STATIQUE",op= 93,sd_prod=mode_stat_prod, - fr="Calcul de modes statiques pour un déplacement, une force ou une accélération unitaire imposé", - reentrant='n', - UIinfo={"groupes":("Résolution",)}, - MATR_RIGI =SIMP(statut='o',typ=matr_asse_depl_r ), - MATR_MASS =SIMP(statut='f',typ=matr_asse_depl_r ), - regles=(UN_PARMI('MODE_STAT','FORCE_NODALE','PSEUDO_MODE'),), - MODE_STAT =FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','NOEUD','GROUP_NO'), - UN_PARMI('TOUT_CMP','AVEC_CMP','SANS_CMP'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ,), - NOEUD =SIMP(statut='f',typ=no ,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno ,max='**'), - TOUT_CMP =SIMP(statut='f',typ='TXM',into=("OUI",) ,), - AVEC_CMP =SIMP(statut='f',typ='TXM',max='**'), - SANS_CMP =SIMP(statut='f',typ='TXM',max='**'), - ), - FORCE_NODALE =FACT(statut='f',max='**', - regles=(UN_PARMI('TOUT','NOEUD','GROUP_NO'), - UN_PARMI('TOUT_CMP','AVEC_CMP','SANS_CMP'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",), ), - NOEUD =SIMP(statut='f',typ=no ,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno ,max='**'), - TOUT_CMP =SIMP(statut='f',typ='TXM',into=("OUI",), ), - AVEC_CMP =SIMP(statut='f',typ='TXM',max='**'), - SANS_CMP =SIMP(statut='f',typ='TXM',max='**'), - ), - PSEUDO_MODE =FACT(statut='f',max='**', - regles=(UN_PARMI('AXE','DIRECTION','TOUT','NOEUD','GROUP_NO' ),), - AXE =SIMP(statut='f',typ='TXM',into=("X","Y","Z"),max=3), - DIRECTION =SIMP(statut='f',typ='R',min=3,max=3), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",)), - NOEUD =SIMP(statut='f',typ=no ,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno ,max='**'), - b_dir =BLOC(condition = "DIRECTION != None", - NOM_DIR =SIMP(statut='f',typ='TXM' ),), - b_cmp =BLOC(condition="TOUT!= None or NOEUD!=None or GROUP_NO!=None", - regles=(UN_PARMI('TOUT_CMP','AVEC_CMP','SANS_CMP'),), - TOUT_CMP =SIMP(statut='f',typ='TXM',into=("OUI",) ), - AVEC_CMP =SIMP(statut='f',typ='TXM',max='**'), - SANS_CMP =SIMP(statut='f',typ='TXM',max='**'), - ), - ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ,) ), -) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. + PRECISION = SIMP(statut='f',typ='R',defaut=1.0E-3, + fr="Précision sur le choix de l'instant associé", + ang="Accuracy over instant choice" ), # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. + CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU"), + fr="Critère de précision sur le choix de l'instant associé", + ang="Accuracy criterium over instant choice" ), # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -MODI_BASE_MODALE=OPER(nom="MODI_BASE_MODALE",op= 149,sd_prod=mode_meca, - reentrant='f', - fr="Définir la base modale d'une structure sous écoulement", - UIinfo={"groupes":("Matrices/vecteurs",)}, -# la commande modi_base _modale : reentrant = f ou o - regles=(EXCLUS('AMOR_UNIF','AMOR_REDUIT', ),), - BASE =SIMP(statut='o',typ=mode_meca ), - BASE_ELAS_FLUI =SIMP(statut='o',typ=melasflu_sdaster ), - NUME_VITE_FLUI =SIMP(statut='o',typ='I' ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - AMOR_REDUIT =SIMP(statut='f',typ='R',max='**'), - AMOR_UNIF =SIMP(statut='f',typ='R' ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; -#& MODIF COMMANDE DATE 10/07/2006 AUTEUR LEBOUVIE F.LEBOUVIER -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. + ), +# + ), + ), # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# 12. Les options d'analyse de maillage ; par defaut, on ne fait que les nombres +# 12.1. Nombre de noeuds et éléments # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE G8BHHXD X.DESROCHES -MODI_MAILLAGE=OPER(nom="MODI_MAILLAGE",op= 154,sd_prod=maillage_sdaster, - fr="Effectuer des modifications sur un maillage existant: réorienter des mailles servant," - +" à l'application d'une pression, à la modélisation du contact,...", - reentrant='o', - UIinfo={"groupes":("Maillage",)}, - regles=(AU_MOINS_UN('ORIE_FISSURE','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D', - 'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE','MODI_MAILLE', - 'TRANSLATION','ROTATION','MODI_BASE','ECHELLE','ORIE_SHB8','SYMETRIE', - ), - PRESENT_ABSENT('ORIE_FISSURE','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D', - 'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE','MODI_MAILLE',), - PRESENT_ABSENT('DEFORME','ORIE_FISSURE','EQUE_PIQUA','ORIE_PEAU_2D', - 'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE','MODI_MAILLE',), - PRESENT_ABSENT('EQUE_PIQUA','ORIE_FISSURE','DEFORME','ORIE_PEAU_2D', - 'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE','MODI_MAILLE',), - PRESENT_ABSENT('ORIE_PEAU_2D','ORIE_FISSURE','DEFORME','EQUE_PIQUA', - 'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE','MODI_MAILLE',), - PRESENT_ABSENT('ORIE_PEAU_3D','ORIE_FISSURE','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D', - 'PLAQ_TUBE','MODI_MAILLE',), - PRESENT_ABSENT('ORIE_NORM_COQUE','ORIE_FISSURE','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D', - 'PLAQ_TUBE','MODI_MAILLE',), - PRESENT_ABSENT('PLAQ_TUBE','ORIE_FISSURE','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D', - 'ORIE_PEAU_3D','ORIE_NORM_COQUE','MODI_MAILLE',), - PRESENT_ABSENT('MODI_MAILLE','ORIE_FISSURE','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D', - 'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE',), - EXCLUS('EQUE_PIQUA','PLAQ_TUBE'), - EXCLUS('EQUE_PIQUA','TUBE_COUDE'), - EXCLUS('ROTATION','MODI_BASE'), - EXCLUS('SYMETRIE','ROTATION'), - EXCLUS('SYMETRIE','TRANSLATION'), - EXCLUS('SYMETRIE','MODI_BASE'), - EXCLUS('SYMETRIE','ECHELLE'), - ), - MAILLAGE =SIMP(statut='o',typ=maillage_sdaster ), - - ORIE_FISSURE =FACT(statut='f', - GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), - ), - - DEFORME =FACT(statut='f', - OPTION =SIMP(statut='o',typ='TXM',into=("TRAN","TRAN_APPUI") ), - DEPL =SIMP(statut='o',typ=cham_no_sdaster ), - b_deform =BLOC(condition = "OPTION=='TRAN_APPUI'", - GROUP_NO_APPUI = SIMP(statut='o',typ=grno,validators=NoRepeat(),max='**' ), - GROUP_NO_STRU = SIMP(statut='o',typ=grno,validators=NoRepeat(),max='**' ),), - ), - - EQUE_PIQUA =FACT(statut='f', - GROUP_NO =SIMP(statut='o',typ=grno), - E_BASE =SIMP(statut='o',typ='R' ), - DEXT_BASE =SIMP(statut='o',typ='R' ), - L_BASE =SIMP(statut='o',typ='R' ), - L_CHANF =SIMP(statut='o',typ='R' ), - TYPE =SIMP(statut='o',typ='TXM',into=("TYPE_1","TYPE_2")), - H_SOUD =SIMP(statut='o',typ='R' ), - ANGL_SOUD =SIMP(statut='o',typ='R' ), - JEU_SOUD =SIMP(statut='o',typ='R' ), - E_CORP =SIMP(statut='o',typ='R' ), - DEXT_CORP =SIMP(statut='o',typ='R' ), - AZIMUT =SIMP(statut='o',typ='R' ), - RAFF_MAIL =SIMP(statut='o',typ='TXM' ), - X_MAX =SIMP(statut='o',typ='R' ), - ), - ORIE_PEAU_2D =FACT(statut='f',max='**', - GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), - ), - ORIE_PEAU_3D =FACT(statut='f',max='**', - GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), - ), - ORIE_SHB8 =FACT(statut='f',max=1, - GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), - ), - ORIE_NORM_COQUE =FACT(statut='f',max='**', - regles=(EXCLUS('NOEUD','GROUP_NO'), - PRESENT_PRESENT('NOEUD','VECT_NORM'), - PRESENT_PRESENT('GROUP_NO','VECT_NORM'),), - GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), - VECT_NORM =SIMP(statut='f',typ='R',max=3), - NOEUD =SIMP(statut='f',typ=no), - GROUP_NO =SIMP(statut='f',typ=grno), - ), - PLAQ_TUBE =FACT(statut='f', - DEXT =SIMP(statut='o',typ='R' ), - EPAIS =SIMP(statut='o',typ='R' ), - L_TUBE_P1 =SIMP(statut='o',typ='R' ), - AZIMUT =SIMP(statut='f',typ='R',defaut= 90. ), - COUTURE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON",) ), - ), - TUBE_COUDE =FACT(statut='f', - ANGLE =SIMP(statut='o',typ='R' ), - R_CINTR =SIMP(statut='o',typ='R' ), - L_TUBE_P1 =SIMP(statut='o',typ='R' ), - ), - MODI_MAILLE =FACT(statut='f',max=1, - regles=(AU_MOINS_UN('GROUP_MA_FOND','MAILLE_FOND','GROUP_NO_FOND','NOEUD_FOND'),), - OPTION =SIMP(statut='o',typ='TXM',into=("NOEUD_QUART",) ), - GROUP_MA_FOND =SIMP(statut='f',typ=grma,validators=NoRepeat(),max=1), - MAILLE_FOND =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max=1), - GROUP_NO_FOND =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=1), - NOEUD_FOND =SIMP(statut='f',typ=no ,validators=NoRepeat(),max=1), - ), - MODI_BASE =FACT(statut='f', - VECT_X =SIMP(statut='o',typ='R',min=2,max=3), - VECT_Y =SIMP(statut='f',typ='R',min=2,max=3), - ), - ECHELLE =SIMP(statut='f',typ='R',), - TRANSLATION =SIMP(statut='f',typ='R',min=2,max=3), - ROTATION =FACT(statut='f',max='**', - POIN_1 =SIMP(statut='o',typ='R',min=2,max=3), - ANGL =SIMP(statut='o',typ='R',defaut= 0.E+0 ), - regles=(EXCLUS('DIR','POIN_2'),), - POIN_2 =SIMP(statut='f',typ='R',min=2,max=3), - DIR =SIMP(statut='f',typ='R',min=2,max=3), - ), - SYMETRIE =FACT(statut='f',max='**', - fr = "Symétrie du maillage par rapport à un plan en 3D ou à une droite en 2D.", - POINT =SIMP(statut='o',typ='R',min=2,max=3, - fr="Point appartenant à la droite ou au plan."), - AXE_1 =SIMP(statut='o',typ='R',min=2,max=3, - fr="Vecteur directeur de la droite ou 1er vecteur appartenant au plan."), - AXE_2 =SIMP(statut='f',typ='R',min=3,max=3, - fr="2nd vecteur appartenant du plan."), - ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), -) ; -#& MODIF COMMANDE DATE 10/10/2006 AUTEUR MCOURTOI M.COURTOIS -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. + NOMBRE = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"), + fr="Nombre de noeuds et éléments du maillage", + ang="Number of nodes and éléments in the mesh" ), # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# 12.2. Determination de la qualité des éléments du maillage # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -MODI_OBSTACLE=OPER(nom="MODI_OBSTACLE",op=182,sd_prod=table_fonction, - fr="Calculer les obstacles dans les systèmes guidage-tube après usure", - reentrant='f', - UIinfo={"groupes":("Modélisation",)}, - regles=(PRESENT_ABSENT('R_MOBILE','CRAYON'), - PRESENT_PRESENT('V_USUR_TUBE','V_USUR_OBST'),), - OBSTACLE =SIMP(statut='f',typ=table_fonction), - GUIDE =SIMP(statut='o',typ=table_sdaster), - CRAYON =SIMP(statut='f',typ=table_sdaster), - TABL_USURE =SIMP(statut='f',typ=table_sdaster), - INST =SIMP(statut='f',typ='R'), - R_MOBILE =SIMP(statut='f',typ='R'), - PERCEMENT =SIMP(statut='f',typ='R',defaut=1), - V_USUR_TUBE =SIMP(statut='f',typ='R',max='**'), - V_USUR_OBST =SIMP(statut='f',typ='R',max='**'), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), -) ; -#& MODIF COMMANDE DATE 12/09/2005 AUTEUR CIBHHLV L.VIVAN -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. + QUALITE = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"), + fr="Qualité du maillage", + ang="Mesh quality" ), # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# 12.3. Connexite du maillage # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE JMBHH01 J.M.PROIX -def modi_repere_prod(RESULTAT,**args): - if AsType(RESULTAT) == evol_elas : return evol_elas - if AsType(RESULTAT) == evol_noli : return evol_noli - if AsType(RESULTAT) == evol_ther : return evol_ther - if AsType(RESULTAT) == dyna_trans : return dyna_trans - if AsType(RESULTAT) == dyna_harmo : return dyna_harmo - if AsType(RESULTAT) == mode_meca : return mode_meca - if AsType(RESULTAT) == mode_flamb : return mode_flamb - if AsType(RESULTAT) == mult_elas : return mult_elas - if AsType(RESULTAT) == base_modale : return base_modale - raise AsException("type de concept resultat non prevu") - -MODI_REPERE=OPER(nom="MODI_REPERE",op=191,sd_prod=modi_repere_prod,reentrant='n', - UIinfo={"groupes":("Résultats et champs",)}, - fr="Calcule des résultats dans le repère cylindrique", - RESULTAT =SIMP(statut='o',typ=(evol_elas,dyna_trans,dyna_harmo,mode_meca, - evol_noli,mult_elas, - evol_ther,base_modale,mode_flamb) ), - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE', - 'NOEUD_CMP','LIST_INST','LIST_FREQ','NOM_CAS'),), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - NOEUD_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - NOM_CAS =SIMP(statut='f',typ='TXM' ), - - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), - - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), - - MODI_CHAM =FACT(statut='o',max='**', - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - TYPE_CHAM =SIMP(statut='o',typ='TXM', - into=("VECT_2D","VECT_3D","TORS_3D","TENS_2D","TENS_3D"),), - NOM_CHAM =SIMP(statut='o',typ='TXM',into=C_NOM_CHAM_INTO()), - b_vect_2d =BLOC(condition = "TYPE_CHAM=='VECT_2D'", - NOM_CMP =SIMP(statut='o',typ='TXM',min=2,max=2 ),), - b_vect_3d =BLOC(condition = "TYPE_CHAM=='VECT_3D'", - NOM_CMP =SIMP(statut='o',typ='TXM',min=3,max=3 ),), - b_tors_3d =BLOC(condition = "TYPE_CHAM=='TORS_3D'", - NOM_CMP =SIMP(statut='o',typ='TXM',min=6,max=6 ),), - b_tens_2d =BLOC(condition = "TYPE_CHAM=='TENS_2D'", - NOM_CMP =SIMP(statut='o',typ='TXM',min=4,max=4 ),), - b_tens_3d =BLOC(condition = "TYPE_CHAM=='TENS_3D'", - NOM_CMP =SIMP(statut='o',typ='TXM',min=6,max=6 ),), - ), - DEFI_REPERE =FACT(statut='o', - regles=(UN_PARMI('ANGL_NAUT','ORIGINE'),), - REPERE =SIMP(statut='f',typ='TXM',defaut="UTILISATEUR", - into=("UTILISATEUR","CYLINDRIQUE"),), - ANGL_NAUT =SIMP(statut='f',typ='R',max=3), - ORIGINE =SIMP(statut='f',typ='R',min=2,max=3), - AXE_Z =SIMP(statut='f',typ='R',min=3,max=3), - ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), -) ; -#& MODIF COMMANDE DATE 31/10/2006 AUTEUR A3BHHAE H.ANDRIAMBOLOLONA + CONNEXITE = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"), + fr="Connexité du maillage.", + ang="Mesh connexity." ), +# +# 12.4. Taille des sous-domaines du maillage +# + TAILLE = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"), + fr="Tailles des sous-domaines du maillage.", + ang="Sizes of mesh sub-domains." ), +# +# 12.5. Controle de la non-interpenetration des éléments +# + INTERPENETRATION= SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"), + fr="Controle de la non interpénétration des éléments.", + ang="Overlapping checking." ), +# +# 13. Gestion des éléments autres que ceux compatibles avec HOMARD +# "REFUSER" : ils sont refuses (defaut) +# "IGNORER" : ils sont ignorés +# + ELEMENTS_NON_HOMARD = SIMP(statut='f',typ='TXM',defaut="REFUSER",into=("REFUSER","IGNORER"), + fr="Acceptation d'éléments incompatibles avec HOMARD", + ang="Incompatible elements for HOMARD" ), +# +) ; +#& MODIF COMMANDE DATE 25/09/2006 AUTEUR MJBHHPE J.L.FLEJOU # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -18006,171 +16408,234 @@ MODI_REPERE=OPER(nom="MODI_REPERE",op=191,sd_prod=modi_repere_prod,reentrant='n' # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -def norm_mode_prod(MODE,**args ): - if AsType(MODE) == mode_meca : return mode_meca - if AsType(MODE) == mode_meca_c : return mode_meca_c - if AsType(MODE) == mode_flamb : return mode_flamb - if AsType(MODE) == base_modale : return base_modale - raise AsException("type de concept resultat non prevu") +# RESPONSABLE F1BHHAJ J.ANGLES +from Macro.macr_ascouf_calc_ops import macr_ascouf_calc_ops +def macr_ascouf_calc_prod(self,MODELE,CHAM_MATER,CARA_ELEM,FOND_FISS,CHARGE,RESU_THER,**args): + self.type_sdprod(MODELE,modele_sdaster) + if CHAM_MATER != None:self.type_sdprod(CHAM_MATER,cham_mater) + if CARA_ELEM != None:self.type_sdprod(CARA_ELEM,cara_elem) + if FOND_FISS != None:self.type_sdprod(FOND_FISS,fond_fiss) + if CHARGE != None:self.type_sdprod(CHARGE,char_meca) + if RESU_THER != None:self.type_sdprod(RESU_THER,evol_ther) + return evol_noli -NORM_MODE=OPER(nom="NORM_MODE",op= 37,sd_prod=norm_mode_prod, - fr="Normer des modes propres en fonction d'un critère choisi par l'utilisateur", - reentrant='f', - UIinfo={"groupes":("Résolution",)}, - regles=(UN_PARMI('NORME','NOEUD','AVEC_CMP','SANS_CMP'), - CONCEPT_SENSIBLE('SEPARE'), - DERIVABLE('MODE'),), - MODE =SIMP(statut='o',typ=(mode_meca,mode_flamb,base_modale) ), - NORME =SIMP(statut='f',typ='TXM',fr="Norme prédéfinie : masse généralisée, euclidienne,...", - into=("MASS_GENE","RIGI_GENE","EUCL","EUCL_TRAN","TRAN","TRAN_ROTA") ), - NOEUD =SIMP(statut='f',typ=no, fr="Composante donnée d un noeud spécifié égale à 1"), - b_noeud =BLOC(condition = "NOEUD != None", - NOM_CMP =SIMP(statut='o',typ='TXM' ), +MACR_ASCOUF_CALC=MACRO(nom="MACR_ASCOUF_CALC",op=macr_ascouf_calc_ops,sd_prod=macr_ascouf_calc_prod, + fr="Réalise l'analyse thermomécanique du coude dont le maillage a été concu par MACR_ASCOUF_MAIL", + reentrant='n', + UIinfo={"groupes":("Outils métier",)}, + regles=(UN_PARMI('COMP_INCR','COMP_ELAS'),), + + TYPE_MAILLAGE =SIMP(statut='o',typ='TXM', + into=("SAIN", + "FISS_COUDE", + "FISS_AXIS_DEB", + "SOUS_EPAIS_COUDE" + ) ), + + CL_BOL_P2_GV =FACT(statut='f', + ANGLE =SIMP(statut='o',typ='R' ), + AZIMUT =SIMP(statut='f',typ='R',defaut= 90. ), ), - AVEC_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - SANS_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - MASS_INER =SIMP(statut='f',typ=table_sdaster), - MODE_SIGNE =FACT(statut='f',fr="Imposer un signe sur une des composantes des modes", - NOEUD =SIMP(statut='o',typ=no,fr="Noeud ou sera imposé le signe"), - NOM_CMP =SIMP(statut='o',typ='TXM',fr="Composante du noeud ou sera imposé le signe" ), - SIGNE =SIMP(statut='f',typ='TXM',defaut="POSITIF",into=("NEGATIF","POSITIF"), - fr="Choix du signe" ), + + MAILLAGE =SIMP(statut='o',typ=maillage_sdaster ), + MODELE =SIMP(statut='o',typ=CO,), + CHAM_MATER =SIMP(statut='f',typ=CO,), + CARA_ELEM =SIMP(statut='f',typ=CO,), + FOND_FISS =SIMP(statut='f',typ=CO,), + CHARGE =SIMP(statut='f',typ=CO,), + RESU_THER =SIMP(statut='f',typ=CO,), + + AFFE_MATERIAU =FACT(statut='o',max=3, + regles=(UN_PARMI('TOUT','GROUP_MA'),), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_MA =SIMP(statut='f',typ='TXM',into=("COUDE","BOL") ), + MATER =SIMP(statut='o',typ=mater_sdaster ), + TEMP_REF =SIMP(statut='f',typ='R',defaut= 0.E+0 ), ), - SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', - fr="Liste des param\350tres de sensibilit\351.", - ang="List of sensitivity parameters", + + PRES_REP =FACT(statut='f', + PRES =SIMP(statut='o',typ='R' ), + EFFE_FOND_P1 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + PRES_LEVRE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), ), - b_base =BLOC(condition = "AsType(MODE) == base_modale", - MASSE = SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ), ), - RAIDE = SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_gene_r,matr_asse_pres_r ), ), - AMOR = SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_gene_r) ), + + ECHANGE =FACT(statut='f', + COEF_H =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + TEMP_EXT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), -) ; -#& MODIF COMMANDE DATE 13/12/2006 AUTEUR PELLET J.PELLET -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE VABHHTS J.PELLET -NUME_DDL=OPER(nom="NUME_DDL",op=11,sd_prod=nume_ddl_sdaster,reentrant='n', - UIinfo={"groupes":("Matrices/vecteurs",)}, - fr="Etablissement de la numérotation des ddl avec ou sans renumérotation et du stockage de la matrice", - regles=(UN_PARMI('MATR_RIGI','MODELE'),), - MATR_RIGI =SIMP(statut='f',validators=NoRepeat(),max=100, - typ=(matr_elem_depl_r ,matr_elem_depl_c,matr_elem_temp_r ,matr_elem_pres_c) ), - MODELE =SIMP(statut='f',typ=modele_sdaster ), - b_modele =BLOC(condition = "MODELE != None", - CHARGE =SIMP(statut='f',validators=NoRepeat(),max='**',typ=(char_meca,char_ther,char_acou, ),), + + TORS_P1 =FACT(statut='f',max=6, + regles=(AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),), + FX =SIMP(statut='f',typ='R' ), + FY =SIMP(statut='f',typ='R' ), + FZ =SIMP(statut='f',typ='R' ), + MX =SIMP(statut='f',typ='R' ), + MY =SIMP(statut='f',typ='R' ), + MZ =SIMP(statut='f',typ='R' ), + FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), ), - METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC","MUMPS") ), - b_mult_front =BLOC(condition="METHODE=='MULT_FRONT'",fr="paramètres associés à la méthode multifrontale", - RENUM =SIMP(statut='f',typ='TXM',into=("MD","MDA","METIS"),defaut="METIS" ), + + COMP_INCR =FACT(statut='f', + RELATION =SIMP(statut='o',typ='TXM',into=("VMIS_ISOT_TRAC",) ), + VMIS_ISOT_TRAC =SIMP(statut='c',typ='I',defaut= 2,into=( 2 ,) ), + RESI_INTE_RELA =SIMP(statut='f',typ='R' + ,defaut= 1.0E-6), + ITER_INTE_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), + ITER_INTE_PAS =SIMP(statut='f',typ='I',defaut= 0 ), + RESO_INTE =SIMP(statut='f',typ='TXM',defaut="IMPLICITE", + into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")), + ), + + COMP_ELAS =FACT(statut='f', + RELATION =SIMP(statut='o',typ='TXM',into=("ELAS","ELAS_VMIS_TRAC") ), + ELAS =SIMP(statut='c',typ='I',defaut= 1,into=( 1 ,) ), + ELAS_VMIS_TRAC =SIMP(statut='c',typ='I',defaut= 1,into=( 1 ,) ), + RESI_INTE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-6), + ITER_INTE_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), + ITER_INTE_PAS =SIMP(statut='f',typ='I',defaut= 0 ), + RESO_INTE =SIMP(statut='f',typ='TXM',defaut="IMPLICITE", + into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")), + ), + + SOLVEUR =FACT(statut='d', + METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ), + b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale", + RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), + ), + b_ldlt =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT", + RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), + ), + b_ldlt_mult =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ", + fr="Paramètres relatifs à la non inversibilité de la matrice à factorise", + NPREC =SIMP(statut='f',typ='I',defaut= 8 ), + STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + ), + b_gcpc =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué", + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ), + NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), + RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), + RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), + NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), + ), + SYME =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + ), + + CONVERGENCE =FACT(statut='d', + RESI_GLOB_MAXI =SIMP(statut='f',typ='R'), + RESI_GLOB_RELA =SIMP(statut='f',typ='R'), + ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut=10), + ARRET =SIMP(statut='f',typ='TXM',defaut="OUI"), + ), + + NEWTON =FACT(statut='d', + REAC_INCR =SIMP(statut='f',typ='I',defaut= 1 ), + PREDICTION =SIMP(statut='f',typ='TXM',into=("DEPL_CALCULE","TANGENTE","ELASTIQUE","EXTRAPOL") ), + MATRICE =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE") ), + REAC_ITER =SIMP(statut='f',typ='I',defaut=0), + EVOL_NOLI =SIMP(statut='f',typ=evol_noli), + ), + + RECH_LINEAIRE =FACT(statut='d', + RESI_LINE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), + ITER_LINE_MAXI =SIMP(statut='f',typ='I',defaut= 3), + ), + + INCREMENT =FACT(statut='o', + regles=(EXCLUS('NUME_INST_INIT','INST_INIT'), + EXCLUS('NUME_INST_FIN','INST_FIN'),), + LIST_INST =SIMP(statut='o',typ=listr8_sdaster), + EVOLUTION =SIMP(statut='f',typ='TXM',defaut="CHRONOLOGIQUE", + into=("CHRONOLOGIQUE","RETROGRADE","SANS",) ), + NUME_INST_INIT =SIMP(statut='f',typ='I'), + INST_INIT =SIMP(statut='f',typ='R'), + NUME_INST_FIN =SIMP(statut='f',typ='I'), + INST_FIN =SIMP(statut='f',typ='R'), + PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), + # DEBUT DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS + SUBD_METHODE =SIMP( statut='f',typ='TXM', + into =("AUCUNE","UNIFORME","EXTRAPOLE"), + defaut="AUCUNE", + fr="Méthode de subdivision des pas de temps en cas de non-convergence" + ), + b_subd_unif=BLOC(condition = "SUBD_METHODE == 'UNIFORME'", + regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), + SUBD_COEF_PAS_1=SIMP(statut='f',typ='R',defaut=1.0,val_min=0.0, + fr="Coefficient multiplicateur de la 1ère subdivision"), + SUBD_PAS =SIMP(statut='f',typ='I',defaut=4,val_min=2, + fr="Nombre de subdivision d'un pas de temps"), + SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, + fr="Nombre maximum de niveau de subdivision d'un pas de temps"), + SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, + fr="Pas de temps en dessous duquel on ne subdivise plus"), + ), + b_subd_extr=BLOC(condition = "SUBD_METHODE == 'EXTRAPOLE'", + regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), + SUBD_OPTION =SIMP(statut='f',typ='TXM', + into =("IGNORE_PREMIERES","GARDE_DERNIERES",), + defaut="IGNORE_PREMIERES", + fr="Technique d'extrapolation : les 1ere itérations sont ignorées ou les dernières sont gardées"), + SUBD_ITER_IGNO =SIMP(statut='c',typ='I',defaut=3,val_min=0, + fr="Les n premières itérations sont ignorées pour l'extrapolation"), + SUBD_ITER_FIN =SIMP(statut='c',typ='I',defaut=8,val_min=3, + fr="Seules les n dernières itérations sont prises pour l'extrapolation"), + SUBD_PAS =SIMP(statut='c',typ='I',defaut=4,val_min=2, + fr="Nombre de subdivision d'un pas de temps en cas divergence"), + SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, + fr="Nombre maximum de niveau de subdivision d'un pas de temps"), + SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, + fr="Pas de temps en dessous duquel on ne subdivise plus"), + SUBD_ITER_PLUS =SIMP(statut='c',typ='I',defaut=50,val_min=20, + fr="% itération autorisée en plus"), + ), + # FIN DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS ), - b_ldlt =BLOC(condition="METHODE=='LDLT'",fr="paramètres associés à la méthode LDLT", - RENUM =SIMP(statut='f',typ='TXM',into=("RCMK","SANS"),defaut="RCMK" ), + + THETA_3D =FACT(statut='f',max='**', + R_INF =SIMP(statut='o',typ='R' ), + R_SUP =SIMP(statut='o',typ='R' ), ), - b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", - RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), - ELIM_LAGR2 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), + + IMPR_TABLE =FACT(statut='f', + regles=(UN_PARMI('TOUT_PARA','NOM_PARA', ), + PRESENT_PRESENT('TOUT_PARA','ANGLE', ), + PRESENT_PRESENT('TOUT_PARA','R_CINTR', ), + UN_PARMI('POSI_CURV_LONGI','POSI_ANGUL',),), + NOM_PARA =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=4, + into=("TRESCA_MEMBRANE", + "TRESCA_MFLE", + "TRESCA", + "SI_LONG" + "SI_RADI" + "SI_CIRC" + ) ), + TOUT_PARA =SIMP(statut='f',typ='TXM',into=("OUI",) ), + ANGLE =SIMP(statut='f',typ='R',max='**' ), + R_CINTR =SIMP(statut='f',typ='R',max='**' ), + POSI_CURV_LONGI =SIMP(statut='f',typ='R',max='**' ), + POSI_ANGUL =SIMP(statut='f',typ='R',max='**' ), + TRANSFORMEE =SIMP(statut='f',typ='TXM',defaut="COUDE",into=("COUDE","TUBE") ), ), - b_gcpc =BLOC(condition="METHODE=='GCPC'",fr="paramètres associés à la méthode gradient conjugué", - RENUM =SIMP(statut='f',typ='TXM',into=("RCMK","SANS"),defaut="RCMK" ), + + IMPRESSION =FACT(statut='f', + FORMAT =SIMP(statut='f',typ='TXM',defaut="RESULTAT", + into=("RESULTAT","ASTER","IDEAS","CASTEM") ), + + b_format_ideas =BLOC(condition="FORMAT=='IDEAS'",fr="version Ideas", + VERSION =SIMP(statut='f',typ='I',defaut=5,into=(4,5)), + ), + + b_format_castem =BLOC(condition="FORMAT=='CASTEM'",fr="version Castem", + NIVE_GIBI =SIMP(statut='f',typ='I',defaut=10,into=(3,10)), + ), + ), - INFO =SIMP(statut='f',typ='I',into=(1,2)), -) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -NUME_DDL_GENE=OPER(nom="NUME_DDL_GENE",op= 127,sd_prod=nume_ddl_gene, - fr="Etablissement de la numérotation des ddl d'un modèle établi en coordonnées généralisées", - reentrant='n', - UIinfo={"groupes":("Matrices/vecteurs",)}, - regles=UN_PARMI('MODELE_GENE','BASE'), - MODELE_GENE =SIMP(statut='f',typ=modele_gene ), - b_modele_gene =BLOC(condition = "MODELE_GENE != None", - STOCKAGE =SIMP(statut='f',typ='TXM',defaut="LIGN_CIEL",into=("LIGN_CIEL","PLEIN") ), - METHODE =SIMP(statut='f',typ='TXM',defaut="CLASSIQUE",into=("INITIAL","CLASSIQUE") ), - ), - BASE =SIMP(statut='f',typ=(mode_meca,mode_stat,base_modale,mode_gene ) ), - b_base =BLOC(condition = "BASE != None", - STOCKAGE =SIMP(statut='f',typ='TXM',defaut="DIAG",into=("DIAG","PLEIN") ), - NB_VECT =SIMP(statut='f',typ='I',defaut= 9999 ), - ), -) ; -#& MODIF COMMANDE DATE 10/10/2006 AUTEUR MCOURTOI M.COURTOIS -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -from Macro.post_dyna_alea_ops import post_dyna_alea_ops -POST_DYNA_ALEA=MACRO(nom="POST_DYNA_ALEA",op= post_dyna_alea_ops,sd_prod=table_sdaster, - fr="Traitements statistiques de résultats de type interspectre et impression sur fichiers", - reentrant='n', - UIinfo={"groupes":("Post traitements",)}, - regles=(UN_PARMI('NOEUD_I','NUME_ORDRE_I','OPTION'),), - INTE_SPEC =SIMP(statut='o',typ=table_fonction), - NUME_VITE_FLUI =SIMP(statut='f',typ='I' ), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE_I =SIMP(statut='f',typ='I',max='**' ), - NOEUD_I =SIMP(statut='f',typ=no,max='**'), - OPTION =SIMP(statut='f',typ='TXM',into=("DIAG",) ), - b_nume_ordre_i =BLOC(condition = "NUME_ORDRE_I != None", - NUME_ORDRE_J =SIMP(statut='o',typ='I',max='**' ), - ), - b_noeud_i =BLOC(condition = "NOEUD_I != None", - NOEUD_J =SIMP(statut='o',typ=no,max='**'), - NOM_CMP_I =SIMP(statut='o',typ='TXM',max='**' ), - NOM_CMP_J =SIMP(statut='o',typ='TXM',max='**' ), - ), - MOMENT =SIMP(statut='f',typ='I',max='**',fr="Moments spectraux en complément des cinq premiers" ), - TITRE =SIMP(statut='f',typ='TXM',max='**' ), + TITRE =SIMP(statut='f',typ='TXM' ), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 03/01/2006 AUTEUR REZETTE C.REZETTE +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -18188,31 +16653,137 @@ POST_DYNA_ALEA=MACRO(nom="POST_DYNA_ALEA",op= post_dyna_alea_ops,sd_prod=table_s # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -POST_DYNA_MODA_T=OPER(nom="POST_DYNA_MODA_T",op= 130,sd_prod=table_sdaster, - fr="Post-traiter les résultats en coordonnées généralisées produit par DYNA_TRAN_MODAL", - reentrant='n', - UIinfo={"groupes":("Post traitements",)}, - regles=(UN_PARMI('CHOC','RELA_EFFO_DEPL', ),), - RESU_GENE =SIMP(statut='o',typ=tran_gene ), - CHOC =FACT(statut='f',max='**', - fr="Analyse des non linéarités de choc", - INST_INIT =SIMP(statut='f',typ='R',defaut= -1. ), - INST_FIN =SIMP(statut='f',typ='R',defaut= 999. ), - NB_BLOC =SIMP(statut='f',typ='I',defaut= 1 ), - SEUIL_FORCE =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - DUREE_REPOS =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - OPTION =SIMP(statut='f',typ='TXM',defaut="USURE",into=("IMPACT","USURE") ), - NB_CLASSE =SIMP(statut='f',typ='I',defaut= 10 ), +# RESPONSABLE F1BHHAJ J.ANGLES +from Macro.macr_ascouf_mail_ops import macr_ascouf_mail_ops +MACR_ASCOUF_MAIL=MACRO(nom="MACR_ASCOUF_MAIL",op=macr_ascouf_mail_ops,sd_prod=maillage_sdaster, + fr="Engendre le maillage d'un coude sain ou comportant une fissure ou une (ou plusieurs) sous-épaisseur(s)", + UIinfo={"groupes":("Outils métier",)},reentrant='n', + + regles=(EXCLUS('SOUS_EPAIS_COUDE','FISS_COUDE','SOUS_EPAIS_MULTI'),), + + EXEC_MAILLAGE =FACT(statut='o', + LOGICIEL =SIMP(statut='o',typ='TXM',defaut="GIBI2000",into=("GIBI98","GIBI2000") ), + UNITE_DATG =SIMP(statut='f',typ='I',defaut=70), + UNITE_MGIB =SIMP(statut='f',typ='I',defaut=19), + NIVE_GIBI =SIMP(statut='f',typ='I',defaut=10,into=(3,4,5,6,7,8,9,10,11)), + ), + + TYPE_ELEM =SIMP(statut='f',typ='TXM',defaut="CU20",into=("CU20","CUB8") ), + + COUDE =FACT(statut='o', + ANGLE =SIMP(statut='o',typ='R' ), + R_CINTR =SIMP(statut='o',typ='R' ), + L_TUBE_P1 =SIMP(statut='o',typ='R' ), + L_TUBE_P2 =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + NB_ELEM_EPAIS =SIMP(statut='f',typ='I',defaut= 3 ), + SYME =SIMP(statut='f',typ='TXM',defaut="ENTIER",into=("ENTIER","QUART","DEMI") ), + TRANSFORMEE =SIMP(statut='o',typ='TXM',defaut="COUDE",into=("COUDE","TUBE") ), + b_transf_coude =BLOC(condition = "TRANSFORMEE == 'COUDE' ", + DEXT =SIMP(statut='o',typ='R' ), + EPAIS =SIMP(statut='o',typ='R' ), + SUR_EPAIS =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + BOL_P2 =SIMP(statut='f',typ='TXM',into=("ASP_MPP","CUVE","GV") ), + ), + b_transf_tube =BLOC(condition = "TRANSFORMEE == 'TUBE' ", + TRAN_EPAIS =SIMP(statut='o',typ='TXM',defaut="NON",into=("OUI","NON") ), + b_trans_epais_oui =BLOC(condition = "TRAN_EPAIS == 'OUI' ", + regles=(ENSEMBLE('ANGL_TETA2','EPAIS_TI'), + UN_PARMI('ABSC_CURV_TRAN','POSI_ANGU_TRAN'),), + DEXT_T1 =SIMP(statut='o',typ='R' ), + EPAIS_T1 =SIMP(statut='o',typ='R' ), + EPAIS_T2 =SIMP(statut='o',typ='R' ), + EPAIS_TI =SIMP(statut='f',typ='R' ), + ANGL_TETA1 =SIMP(statut='o',typ='R' ), + ANGL_TETA2 =SIMP(statut='f',typ='R' ), + ABSC_CURV_TRAN =SIMP(statut='f',typ='R' ), + POSI_ANGU_TRAN =SIMP(statut='f',typ='R' ), + ), + b_trans_epais_non =BLOC(condition = "TRAN_EPAIS == 'NON' ", + DEXT =SIMP(statut='o',typ='R' ), + EPAIS =SIMP(statut='o',typ='R' ), + SUR_EPAIS =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + BOL_P2 =SIMP(statut='f',typ='TXM',into=("ASP_MPP","CUVE","GV") ), + ), + ), + ), + + SOUS_EPAIS_COUDE=FACT(statut='f', + regles=(UN_PARMI('POSI_CURV_LONGI','POSI_ANGUL'), + UN_PARMI('POSI_CURV_CIRC','AZIMUT'),), + TYPE =SIMP(statut='o',typ='TXM',into=("AXIS","ELLI") ), + AXE_CIRC =SIMP(statut='f',typ='R' ), + AXE_LONGI =SIMP(statut='o',typ='R' ), + PROFONDEUR =SIMP(statut='o',typ='R' ), + POSI_CURV_LONGI =SIMP(statut='f',typ='R' ), + POSI_ANGUL =SIMP(statut='f',typ='R' ), + POSI_CURV_CIRC =SIMP(statut='f',typ='R' ), + AZIMUT =SIMP(statut='f',typ='R' ), + SOUS_EPAIS =SIMP(statut='o',typ='TXM',into=("INTERNE","EXTERNE") ), + NB_ELEM_LONGI =SIMP(statut='o',typ='I' ), + NB_ELEM_CIRC =SIMP(statut='o',typ='I' ), + NB_ELEM_RADI =SIMP(statut='f',typ='I',defaut= 3 ), + EMPREINTE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + ), + + SOUS_EPAIS_MULTI=FACT(statut='f',max='**', + regles=(UN_PARMI('POSI_CURV_LONGI','POSI_ANGUL'), + UN_PARMI('POSI_CURV_CIRC','AZIMUT'),), + TYPE =SIMP(statut='o',typ='TXM',into=("AXIS","ELLI") ), + AXE_CIRC =SIMP(statut='f',typ='R' ), + AXE_LONGI =SIMP(statut='o',typ='R' ), + PROFONDEUR =SIMP(statut='o',typ='R' ), + POSI_CURV_LONGI =SIMP(statut='f',typ='R' ), + POSI_ANGUL =SIMP(statut='f',typ='R' ), + POSI_CURV_CIRC =SIMP(statut='f',typ='R' ), + AZIMUT =SIMP(statut='f',typ='R' ), + SOUS_EPAIS =SIMP(statut='o',typ='TXM',into=("INTERNE","EXTERNE") ), + NB_ELEM_LONGI =SIMP(statut='o',typ='I' ), + NB_ELEM_CIRC =SIMP(statut='o',typ='I' ), + EMPREINTE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + ), + + FISS_COUDE =FACT(statut='f', + regles=(UN_PARMI('ABSC_CURV','POSI_ANGUL'),), + AXIS =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON" ), + b_axis_non =BLOC(condition = "AXIS == 'NON' ", + LONGUEUR =SIMP(statut='o',typ='R' ), + ), + b_axis_oui =BLOC(condition = "AXIS == 'OUI' ", + LONGUEUR =SIMP(statut='f',typ='R' ), + ), + PROFONDEUR =SIMP(statut='o',typ='R' ), + ABSC_CURV =SIMP(statut='f',typ='R' ), + POSI_ANGUL =SIMP(statut='f',typ='R' ), + FISSURE =SIMP(statut='o',typ='TXM',into=("DEB_INT","DEB_EXT") ), + AZIMUT =SIMP(statut='f',typ='R',defaut= 90. ), + ORIEN =SIMP(statut='o',typ='R', + into=(45.,-45.,90.,0.E+0) ), + NB_TRANCHE =SIMP(statut='o',typ='I' ), + NB_SECTEUR =SIMP(statut='o',typ='I' ), + NB_COURONNE =SIMP(statut='o',typ='I' ), + RAYON_TORE =SIMP(statut='f',typ='R' ), + COEF_MULT_RC2 =SIMP(statut='f',typ='R',defaut= 1. ), + COEF_MULT_RC3 =SIMP(statut='f',typ='R' ), + ANGL_OUVERTURE =SIMP(statut='f',typ='R',defaut= 0.5 ), ), - RELA_EFFO_DEPL =FACT(statut='f', - fr="Analyse des relationsnon linéaires effort-déplacement", - NOEUD =SIMP(statut='o',typ=no), - NOM_CMP =SIMP(statut='o',typ='TXM' ), + + IMPRESSION =FACT(statut='f',max='**', + regles=(PRESENT_PRESENT('FICHIER','UNITE'),), + FORMAT =SIMP(statut='f',typ='TXM',defaut="ASTER", + into=("ASTER","IDEAS","CASTEM") ), + b_format_ideas =BLOC(condition="FORMAT=='IDEAS'",fr="version Ideas", + VERSION =SIMP(statut='f',typ='I',defaut=5,into=(4,5)), + ), + b_format_castem =BLOC(condition="FORMAT=='CASTEM'",fr="version Castem", + NIVE_GIBI =SIMP(statut='f',typ='I',defaut=10,into=(3,10)), + ), + FICHIER =SIMP(statut='f',typ='TXM' ), + UNITE =SIMP(statut='f',typ='I' ), ), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), - TITRE =SIMP(statut='f',typ='TXM',max='**' ), ) ; -#& MODIF COMMANDE DATE 12/09/2006 AUTEUR REZETTE C.REZETTE +#& MODIF COMMANDE DATE 25/09/2006 AUTEUR MJBHHPE J.L.FLEJOU # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -18230,435 +16801,687 @@ POST_DYNA_MODA_T=OPER(nom="POST_DYNA_MODA_T",op= 130,sd_prod=table_sdaster, # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE G8BHHXD X.DESROCHES -POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=table_sdaster,reentrant='n', - UIinfo={"groupes":("Post traitements",)}, - fr="Calcul de quantités globales (masse, inerties, énergie, ...) sur tout ou partie du modèle", +# RESPONSABLE F1BHHAJ J.ANGLES +from Macro.macr_aspic_calc_ops import macr_aspic_calc_ops - regles=(UN_PARMI('MASS_INER', 'ENER_POT', 'ENER_CIN','TRAV_EXT', - 'WEIBULL', 'RICE_TRACEY', 'CARA_GEOM','CHAR_LIMITE', - 'CARA_POUTRE', 'INDIC_ENER', 'INDIC_SEUIL', - 'AIRE_INTERNE','ENER_ELAS','ENER_TOTALE','INTEGRALE'), - ), +def macr_aspic_calc_prod(self,MODELE,CHAM_MATER,CARA_ELEM,FOND_FISS_1,FOND_FISS_2,CHARGE,RESU_THER,**args): + if MODELE != None:self.type_sdprod(MODELE,modele_sdaster) + if CHAM_MATER != None:self.type_sdprod(CHAM_MATER,cham_mater) + if CARA_ELEM != None:self.type_sdprod(CARA_ELEM,cara_elem) + if FOND_FISS_1 != None:self.type_sdprod(FOND_FISS_1,fond_fiss) + if FOND_FISS_2 != None:self.type_sdprod(FOND_FISS_2,fond_fiss) + if CHARGE != None:self.type_sdprod(CHARGE,char_meca) + if RESU_THER != None:self.type_sdprod(RESU_THER,evol_ther) + return evol_noli - MASS_INER = FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ORIG_INER = SIMP(statut='f',typ='R',min=3,max=3 ), - ), - b_mass_iner = BLOC(condition = "( MASS_INER != None )", - fr="calcul de la masse, les inerties et le centre de gravité", - regles=(EXCLUS('CHAM_GD','RESULTAT'), - EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE', - 'NOEUD_CMP','LIST_ORDRE','LIST_INST','LIST_FREQ','NOM_CAS'),), - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CARA_ELEM = SIMP(statut='f',typ=cara_elem), - CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ), - NUME_COUCHE = SIMP(statut='f',typ='I',defaut=1), - NIVE_COUCHE = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),), - MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), - GEOMETRIE = SIMP(statut='f',typ='TXM',defaut="INITIALE",into=("INITIALE","DEFORMEE")), - CHAM_GD = SIMP(statut='f',typ=(cham_no_sdaster,cham_elem) ), - RESULTAT = SIMP(statut='f',typ=(mode_meca,evol_elas,evol_noli,mult_elas, - fourier_elas,dyna_trans) ), - PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - INST = SIMP(statut='f',typ='R',), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), - FREQ = SIMP(statut='f',typ='R',), - LIST_FREQ = SIMP(statut='f',typ=listr8_sdaster), - NUME_MODE = SIMP(statut='f',typ='I',), - NOEUD_CMP = SIMP(statut='f',typ='TXM',min=2,validators=NoRepeat(),max=2), - NOM_CAS = SIMP(statut='f',typ='TXM',), +MACR_ASPIC_CALC=MACRO(nom="MACR_ASPIC_CALC",op=macr_aspic_calc_ops,sd_prod=macr_aspic_calc_prod, + fr="Réalise un calcul prédéfini de piquages sains ou fissurés ainsi que les post-traitements associés ", + UIinfo={"groupes":("Outils métier",)},reentrant='n', + regles=(UN_PARMI('COMP_INCR','COMP_ELAS'),), + + TYPE_MAILLAGE =SIMP(statut='o',typ='TXM', + into=("SAIN_FIN","SAIN_GROS","FISS_COUR_DEB","FISS_COUR_NONDEB","FISS_LONG_DEB", + "FISS_LONG_NONDEB","FISS_AXIS_DEB","FISS_AXIS_NONDEB") ), + + TUBULURE =FACT(statut='o', + TYPE =SIMP(statut='o',typ='TXM',into=("TYPE_1","TYPE_2") ), ), + MAILLAGE =SIMP(statut='o',typ=maillage_sdaster), + MODELE =SIMP(statut='f',typ=CO,), + CHAM_MATER =SIMP(statut='f',typ=CO,), + CARA_ELEM =SIMP(statut='f',typ=CO,), + FOND_FISS_1 =SIMP(statut='f',typ=CO,), + FOND_FISS_2 =SIMP(statut='f',typ=CO,), + CHARGE =SIMP(statut='f',typ=CO,), + RESU_THER =SIMP(statut='f',typ=CO,), - ENER_POT = FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ), - b_ener_pot = BLOC(condition = "( ENER_POT != None )", - fr="calcul de l'énergie potentielle de déformation", - regles=(UN_PARMI('CHAM_GD','RESULTAT'), - EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE', - 'NOEUD_CMP','LIST_ORDRE','LIST_INST','LIST_FREQ','NOM_CAS'),), - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CARA_ELEM = SIMP(statut='f',typ=cara_elem), - CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ), - NUME_COUCHE = SIMP(statut='f',typ='I',defaut=1), - NIVE_COUCHE = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),), - ANGLE = SIMP(statut='f',typ='I',defaut=0), - MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), - CHAM_GD = SIMP(statut='f',typ=(cham_no_sdaster,cham_elem) ), - RESULTAT = SIMP(statut='f',typ=(mode_meca,evol_elas,evol_ther,evol_noli,dyna_trans,mult_elas) ), - PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), - FREQ = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_FREQ = SIMP(statut='f',typ=listr8_sdaster), - NUME_MODE = SIMP(statut='f',typ='I' ,validators=NoRepeat(),max='**'), - NOEUD_CMP = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - NOM_CAS = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), + AFFE_MATERIAU =FACT(statut='o',max=3, + regles=(UN_PARMI('TOUT','GROUP_MA'),), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",)), + GROUP_MA =SIMP(statut='f',typ='TXM',into=("TUBU","CORP","SOUD","SOUDCORP","SOUDTUBU") ), + MATER =SIMP(statut='o',typ=mater_sdaster), + TEMP_REF =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + RCCM =SIMP(statut='o',typ='TXM',into=("OUI","NON")), ), - ENER_CIN = FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), - OPTION = SIMP(statut='f',typ='TXM', - into=("MASS_MECA","MASS_MECA_DIAG"), - defaut="MASS_MECA" ), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ), - b_ener_cin = BLOC(condition = "( ENER_CIN != None )", - fr="calcul de l'énergie cinétique", - regles=(UN_PARMI('CHAM_GD','RESULTAT'), - EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE', - 'NOEUD_CMP','LIST_ORDRE','LIST_INST','LIST_FREQ','NOM_CAS'),), - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CARA_ELEM = SIMP(statut='f',typ=cara_elem), - CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ), - NUME_COUCHE = SIMP(statut='f',typ='I',defaut=1), - NIVE_COUCHE = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),), - ANGLE = SIMP(statut='f',typ='I',defaut=0), - MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), - CHAM_GD = SIMP(statut='f',typ=(cham_no_sdaster,cham_elem) ), - RESULTAT = SIMP(statut='f',typ=(mode_meca,evol_elas,evol_ther,evol_noli,dyna_trans) ), - PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), - FREQ = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_FREQ = SIMP(statut='f',typ=listr8_sdaster), - NUME_MODE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - NOEUD_CMP = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - NOM_CAS = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), + EQUILIBRE =FACT(statut='o', + NOEUD =SIMP(statut='o',typ=no), + ), + + PRES_REP =FACT(statut='o', + PRES =SIMP(statut='o',typ='R'), + NOEUD =SIMP(statut='f',typ=no), + EFFE_FOND =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), + PRES_LEVRE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + ), + + ECHANGE =FACT(statut='f', + COEF_H_TUBU =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + COEF_H_CORP =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + TEMP_EXT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + ), + + TORS_CORP =FACT(statut='f',max=6, + regles=(AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),), + NOEUD =SIMP(statut='o',typ=no), + FX =SIMP(statut='f',typ='R'), + FY =SIMP(statut='f',typ='R'), + FZ =SIMP(statut='f',typ='R'), + MX =SIMP(statut='f',typ='R'), + MY =SIMP(statut='f',typ='R'), + MZ =SIMP(statut='f',typ='R'), + FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + ), + + TORS_TUBU =FACT(statut='f',max=6, + regles=(AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),), + FX =SIMP(statut='f',typ='R'), + FY =SIMP(statut='f',typ='R'), + FZ =SIMP(statut='f',typ='R'), + MX =SIMP(statut='f',typ='R'), + MY =SIMP(statut='f',typ='R'), + MZ =SIMP(statut='f',typ='R'), + FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + ), + + COMP_INCR =FACT(statut='f', + RELATION =SIMP(statut='o',typ='TXM',into=("VMIS_ISOT_TRAC",) ), + VMIS_ISOT_TRAC =SIMP(statut='c',typ='I',defaut= 2,into=( 2 ,) ), + RESI_INTE_RELA =SIMP(statut='f',typ='R',defaut=1.0E-6), + ITER_INTE_MAXI =SIMP(statut='f',typ='I',defaut=10), + ITER_INTE_PAS =SIMP(statut='f',typ='I',defaut=0), + RESO_INTE =SIMP(statut='f',typ='TXM',defaut="IMPLICITE", + into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")), + ), + + COMP_ELAS =FACT(statut='f', + RELATION =SIMP(statut='o',typ='TXM',into=("ELAS","ELAS_VMIS_TRAC") ), + ELAS =SIMP(statut='c',typ='I',defaut= 1,into=( 1 ,) ), + ELAS_VMIS_TRAC =SIMP(statut='c',typ='I',defaut= 1,into=( 1 ,) ), + RESI_INTE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-6), + ITER_INTE_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), + ITER_INTE_PAS =SIMP(statut='f',typ='I',defaut= 0 ), + RESO_INTE =SIMP(statut='f',typ='TXM',defaut="IMPLICITE", + into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")), + ), + + THETA_3D =FACT(statut='f',max='**', + R_INF =SIMP(statut='o',typ='R'), + R_SUP =SIMP(statut='o',typ='R'), + ), + + OPTION =SIMP(statut='f',typ='TXM',into=("CALC_G_MAX","CALC_G_MAX_LOCAL") ), + BORNES =FACT(statut='f',max='**', + NUME_ORDRE =SIMP(statut='o',typ='I'), + VALE_MIN =SIMP(statut='o',typ='R'), + VALE_MAX =SIMP(statut='o',typ='R'), + ), + + SOLVEUR =FACT(statut='d', + METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ), + b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale", + RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), + ), + b_ldlt =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT", + RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), + ), + b_ldlt_mult =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ", + fr="Paramètres relatifs à la non iversibilité de la matrice à factorise", + NPREC =SIMP(statut='f',typ='I',defaut= 8 ), + STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + ), + b_gcpc =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué", + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ), + NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), + RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), + RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), + NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), + ), + SYME =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), ), - ENER_ELAS = FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ), - b_ener_elas = BLOC(condition = "( ENER_ELAS != None )", - fr="calcul de l'énergie de déformation élastique", - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CARA_ELEM = SIMP(statut='f',typ=cara_elem), - CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ), - NUME_COUCHE = SIMP(statut='f',typ='I',defaut=1), - NIVE_COUCHE = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),), - MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), - RESULTAT = SIMP(statut='o',typ=(evol_noli) ), - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), - PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), + CONVERGENCE =FACT(statut='d', + RESI_GLOB_MAXI =SIMP(statut='f',typ='R'), + RESI_GLOB_RELA =SIMP(statut='f',typ='R'), + ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut=10), + ARRET =SIMP(statut='f',typ='TXM',defaut="OUI"), ), - ENER_TOTALE = FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ), - b_ener_totale = BLOC(condition = "( ENER_TOTALE != None )", - fr="calcul de l'énergie de déformation totale", - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CARA_ELEM = SIMP(statut='f',typ=cara_elem), - CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ), - NUME_COUCHE = SIMP(statut='f',typ='I',defaut=1), - NIVE_COUCHE = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),), - MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), - RESULTAT = SIMP(statut='o',typ=(evol_noli) ), - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), - PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), + NEWTON =FACT(statut='d', + REAC_INCR =SIMP(statut='f',typ='I',defaut=1), + PREDICTION =SIMP(statut='f',typ='TXM',into=("TANGENTE","ELASTIQUE","EXTRAPOL","DEPL_CALCULE")), + MATRICE =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE")), + REAC_ITER =SIMP(statut='f',typ='I',defaut= 0), ), - INTEGRALE = FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - NOM_CHAM = SIMP(statut='o',typ='TXM',into=C_NOM_CHAM_INTO()), - NOM_CMP = SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**'), - ), - b_integrale = BLOC(condition = "( INTEGRALE != None )", - fr="calcul de la moyenne d'une composante", - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), - MODELE = SIMP(statut='f',typ=modele_sdaster), - RESULTAT = SIMP(statut='o',typ=(evol_noli,evol_ther,evol_elas) ), - PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), + RECH_LINEAIRE =FACT(statut='d', + RESI_LINE_RELA =SIMP(statut='f',typ='R',defaut=1.0E-3), + ITER_LINE_MAXI =SIMP(statut='f',typ='I',defaut=3), ), - WEIBULL = FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - OPTION = SIMP(statut='f',typ='TXM', - into=("SIGM_ELGA","SIGM_ELMOY"), - defaut="SIGM_ELGA"), - CORR_PLAST = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), - COEF_MULT = SIMP(statut='f',typ='R',defaut=1.), - ), - b_weibull = BLOC(condition = "( WEIBULL != None )", - fr="calcul du champ élémentaire de la puissance m-ième de la contrainte de Weibull", - regles=(UN_PARMI('CHAM_GD','RESULTAT'), - EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CARA_ELEM = SIMP(statut='f',typ=cara_elem), - CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ), - NUME_COUCHE = SIMP(statut='f',typ='I',defaut=1), - NIVE_COUCHE = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),), - MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), - CHAM_GD = SIMP(statut='f',typ=(cham_no_sdaster,cham_elem) ), - RESULTAT = SIMP(statut='f',typ=(evol_noli) ), - PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), + INCREMENT =FACT(statut='o', + regles=(EXCLUS('NUME_INST_INIT','INST_INIT'), + EXCLUS('NUME_INST_FIN','INST_FIN'),), + LIST_INST =SIMP(statut='o',typ=listr8_sdaster), + EVOLUTION =SIMP(statut='f',typ='TXM',defaut="CHRONOLOGIQUE", + into=("CHRONOLOGIQUE","RETROGRADE","SANS",) ), + NUME_INST_INIT =SIMP(statut='f',typ='I'), + INST_INIT =SIMP(statut='f',typ='R'), + NUME_INST_FIN =SIMP(statut='f',typ='I'), + INST_FIN =SIMP(statut='f',typ='R'), + PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), + # DEBUT DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS + SUBD_METHODE =SIMP( statut='f',typ='TXM', + into =("AUCUNE","UNIFORME","EXTRAPOLE"), + defaut="AUCUNE", + fr="Méthode de subdivision des pas de temps en cas de non-convergence" + ), + b_subd_unif=BLOC(condition = "SUBD_METHODE == 'UNIFORME'", + regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), + SUBD_COEF_PAS_1=SIMP(statut='f',typ='R',defaut=1.0,val_min=0.0, + fr="Coefficient multiplicateur de la 1ère subdivision"), + SUBD_PAS =SIMP(statut='f',typ='I',defaut=4,val_min=2, + fr="Nombre de subdivision d'un pas de temps"), + SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, + fr="Nombre maximum de niveau de subdivision d'un pas de temps"), + SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, + fr="Pas de temps en dessous duquel on ne subdivise plus"), + ), + b_subd_extr=BLOC(condition = "SUBD_METHODE == 'EXTRAPOLE'", + regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), + SUBD_OPTION =SIMP(statut='f',typ='TXM', + into =("IGNORE_PREMIERES","GARDE_DERNIERES",), + defaut="IGNORE_PREMIERES", + fr="Technique d'extrapolation : les 1ere itérations sont ignorées ou les dernières sont gardées"), + SUBD_ITER_IGNO =SIMP(statut='c',typ='I',defaut=3,val_min=0, + fr="Les n premières itérations sont ignorées pour l'extrapolation"), + SUBD_ITER_FIN =SIMP(statut='c',typ='I',defaut=8,val_min=3, + fr="Seules les n dernières itérations sont prises pour l'extrapolation"), + SUBD_PAS =SIMP(statut='c',typ='I',defaut=4,val_min=2, + fr="Nombre de subdivision d'un pas de temps en cas divergence"), + SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, + fr="Nombre maximum de niveau de subdivision d'un pas de temps"), + SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, + fr="Pas de temps en dessous duquel on ne subdivise plus"), + SUBD_ITER_PLUS =SIMP(statut='c',typ='I',defaut=50,val_min=20, + fr="% itération autorisée en plus"), + ), + # FIN DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS ), - RICE_TRACEY = FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - OPTION = SIMP(statut='f',typ='TXM', - into=("SIGM_ELGA","SIGM_ELMOY"), - defaut="SIGM_ELGA"), - LOCAL = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - ), - b_rice_tracey = BLOC(condition = "( RICE_TRACEY != None )", - fr="calcul du taux de croissance d'une cavité sphérique par rapport à un domaine", - regles=(UN_PARMI('CHAM_GD','RESULTAT'), - EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CARA_ELEM = SIMP(statut='f',typ=cara_elem), - CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ), - NUME_COUCHE = SIMP(statut='f',typ='I',defaut=1), - NIVE_COUCHE = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),), - MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), - CHAM_GD = SIMP(statut='f',typ=(cham_no_sdaster,cham_elem) ), - RESULTAT = SIMP(statut='f',typ=(evol_noli) ), - PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), + PAS_AZIMUT =SIMP(statut='f',typ='I',defaut=1), + + IMPRESSION =FACT(statut='f', + FORMAT =SIMP(statut='f',typ='TXM',defaut="RESULTAT", + into=("RESULTAT","ASTER","CASTEM","IDEAS")), + + b_format_ideas =BLOC(condition="FORMAT=='IDEAS'",fr="version Ideas", + VERSION =SIMP(statut='f',typ='I',defaut=5,into=(4,5)), + ), + + b_format_castem =BLOC(condition="FORMAT=='CASTEM'",fr="version Castem", + NIVE_GIBI =SIMP(statut='f',typ='I',defaut=10,into=(3,10)), + ), + + b_extrac =BLOC(condition="((FORMAT=='IDEAS')or(FORMAT=='CASTEM'))", + fr="extraction d un champ de grandeur", + regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST'),), + NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=3, + into=("DEPL","EQUI_ELNO_SIGM","TEMP")), + + TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + ), + ), + + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), + + TITRE =SIMP(statut='f',typ='TXM'), +) +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE F1BHHAJ J.ANGLES + +from Macro.macr_aspic_mail_ops import macr_aspic_mail_ops + +MACR_ASPIC_MAIL=MACRO(nom="MACR_ASPIC_MAIL",op= macr_aspic_mail_ops,sd_prod=maillage_sdaster,reentrant='n', + fr="Engendre le maillage d'un piquage sain ou avec fissure (longue ou courte)", + UIinfo={"groupes":("Outils métier",)}, + + EXEC_MAILLAGE =FACT(statut='o', + LOGICIEL =SIMP(statut='o',typ='TXM',defaut="GIBI2000",into=("GIBI98","GIBI2000")), + UNITE_DATG =SIMP(statut='f',typ='I',defaut=70), + UNITE_MGIB =SIMP(statut='f',typ='I',defaut=19), + NIVE_GIBI =SIMP(statut='f',typ='I',defaut=10,into=(3,4,5,6,7,8,9,10,11)), ), - INDIC_ENER = FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ), - b_indic_ener = BLOC(condition = "( INDIC_ENER != None )", - fr="calcul un indicateur global de perte de proportionnalité du chargement", - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ), - MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), - RESULTAT = SIMP(statut='o',typ=(evol_noli) ), - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), - PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), + TYPE_ELEM =SIMP(statut='f',typ='TXM',defaut="CU20",into=("CU20","CUB8")), + + RAFF_MAIL =SIMP(statut='f',typ='TXM',defaut="GROS",into=("GROS","FIN")), + + TUBULURE =FACT(statut='o', + E_BASE =SIMP(statut='o',typ='R'), + DEXT_BASE =SIMP(statut='o',typ='R'), + L_BASE =SIMP(statut='o',typ='R'), + L_CHANF =SIMP(statut='o',typ='R'), + E_TUBU =SIMP(statut='o',typ='R'), + DEXT_TUBU =SIMP(statut='o',typ='R'), + Z_MAX =SIMP(statut='o',typ='R'), + TYPE =SIMP(statut='o',typ='TXM',into=("TYPE_1","TYPE_2")), + L_PENETR =SIMP(statut='f',typ='R',defaut= 0.0E+0), ), - INDIC_SEUIL = FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ), - b_indic_seuil = BLOC(condition = "( INDIC_SEUIL != None )", - fr="calcul un indicateur global de perte de proportionnalité du chargement", - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ), - MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), - RESULTAT = SIMP(statut='o',typ=(evol_noli) ), - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), - PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), + SOUDURE =FACT(statut='o', + H_SOUD =SIMP(statut='o',typ='R'), + ANGL_SOUD =SIMP(statut='o',typ='R'), + JEU_SOUD =SIMP(statut='o',typ='R'), ), - CHAR_LIMITE = FACT(statut='f',min=0, - CHAR_CSTE = SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON") - ), - b_char_limite = BLOC(condition = "( CHAR_LIMITE != None )", - fr="post-traitement du calcul de la charge limite", - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CARA_ELEM = SIMP(statut='f',typ=cara_elem), - CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ), - MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), - RESULTAT = SIMP(statut='o',typ=(evol_noli) ), - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), - PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), - INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), + CORPS =FACT(statut='o', + E_CORP =SIMP(statut='o',typ='R'), + DEXT_CORP =SIMP(statut='o',typ='R'), + X_MAX =SIMP(statut='o',typ='R'), ), - CARA_GEOM = FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - SYME_X = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - SYME_Y = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - ORIG_INER = SIMP(statut='f',typ='R',min=2,max=2), - ), - b_cara_geom = BLOC(condition = "( CARA_GEOM != None )", - fr="calcul des caractéristiques géométriques d'un section de poutre", - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ), - MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), + FISS_SOUDURE =FACT(statut='f', + TYPE =SIMP(statut='o',typ='TXM',into=("LONGUE","COURTE")), + AXIS =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), + PROFONDEUR =SIMP(statut='o',typ='R'), + LONGUEUR =SIMP(statut='f',typ='R'), + AZIMUT =SIMP(statut='o',typ='R'), + RAYON_TORE =SIMP(statut='f',typ='R'), + POSITION =SIMP(statut='o',typ='TXM',into=("DROIT","INCLINE")), + FISSURE =SIMP(statut='o',typ='TXM',into=("DEB_INT","DEB_EXT","NON_DEB","TRAVERS")), + LIGA_INT =SIMP(statut='f',typ='R'), + ANGL_OUVERTURE =SIMP(statut='f',typ='R',defaut= 0.0E+0), + COEF_MULT_RC1 =SIMP(statut='f',typ='R'), + COEF_MULT_RC2 =SIMP(statut='f',typ='R'), + COEF_MULT_RC3 =SIMP(statut='f',typ='R'), + NB_TRANCHE =SIMP(statut='f',typ='I'), + NB_SECTEUR =SIMP(statut='f',typ='I'), + NB_COURONNE =SIMP(statut='f',typ='I'), ), - CARA_POUTRE = FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT','GROUP_MA'), - ENSEMBLE('LONGUEUR','LIAISON','MATERIAU'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_MA_INTE = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - CARA_GEOM = SIMP(statut='o',typ=table_sdaster), - RT = SIMP(statut='f',typ='R'), - LAPL_PHI = SIMP(statut='f',typ=evol_ther), - LAPL_PHI_Y = SIMP(statut='f',typ=evol_ther), - LAPL_PHI_Z = SIMP(statut='f',typ=evol_ther), - LIAISON = SIMP(statut='f',typ='TXM',into=("ROTULE","ENCASTREMENT")), - LONGUEUR = SIMP(statut='f',typ='R'), - MATERIAU = SIMP(statut='f',typ=mater_sdaster), - OPTION = SIMP(statut='f',typ='TXM', - into=("CARA_TORSION","CARA_CISAILLEMENT","CARA_GAUCHI") ), - ), - b_cara_poutre = BLOC(condition = "( CARA_POUTRE != None )", - fr="calcul des caractéristiques mécaniques d'un section de poutre", - MODELE = SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ), - MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), + IMPRESSION =FACT(statut='f',max='**', + regles=(PRESENT_PRESENT('FICHIER','UNITE'),), + FORMAT =SIMP(statut='f',typ='TXM',defaut="ASTER",into=("ASTER","IDEAS","CASTEM")), + + b_format_ideas =BLOC(condition="FORMAT=='IDEAS'",fr="version Ideas", + VERSION =SIMP(statut='f',typ='I',defaut=5,into=(4,5)), + ), + + b_format_castem =BLOC(condition="FORMAT=='CASTEM'",fr="version Castem", + NIVE_GIBI =SIMP(statut='f',typ='I',defaut=10,into=(3,10)), + ), + FICHIER =SIMP(statut='f',typ='TXM'), + UNITE =SIMP(statut='f',typ='I'), ), - AIRE_INTERNE = FACT(statut='f',max='**', - GROUP_MA_BORD = SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), - ), - b_aire_interne = BLOC(condition = "( AIRE_INTERNE != None )", - fr="calcul de l'aire d'un trou dans un maillage 2D", - MODELE = SIMP(statut='f',typ=modele_sdaster), - ), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), +) ; +#& MODIF COMMANDE DATE 25/09/2006 AUTEUR MJBHHPE J.L.FLEJOU +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== + +from Macro.macr_cabri_calc_ops import macr_cabri_calc_ops + +def macr_cabri_calc_prod(self,MODELE_THER,MODELE_MECA,CHAM_MATER, + CHAR_THER,CHAR_MECA,RESU_THER,**args): + if MODELE_THER != None: + self.type_sdprod(MODELE_THER,modele_sdaster) + if MODELE_MECA != None: + self.type_sdprod(MODELE_MECA,modele_sdaster) + if RESU_THER != None: + self.type_sdprod(RESU_THER,evol_ther) + if CHAM_MATER != None: + self.type_sdprod(CHAM_MATER,cham_mater) + if CHAR_THER != None: + for m in CHAR_THER: + self.type_sdprod(m['CHARGE'],char_ther) + if CHAR_MECA != None: + for m in CHAR_MECA: + self.type_sdprod(m['CHARGE'],char_meca) + return evol_noli + + +MACR_CABRI_CALC=MACRO(nom="MACR_CABRI_CALC", + op=macr_cabri_calc_ops, + sd_prod=macr_cabri_calc_prod, + fr="Calcul thermo-mécanique d'une jonction boulonnée de tuyauterie", + reentrant='n', + UIinfo={"groupes":("Outils métier",)}, + MAILLAGE = SIMP(statut='o',typ=maillage_sdaster,), + AFFE_MATERIAU = FACT(statut='o',max='**', + regles=(UN_PARMI('TOUT','GROUP_MA',),), + TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_MA = SIMP(statut='f',typ='TXM',into=( + "BRIDE", + "GOUJON", + "ROND", + "ECROU", + "JOINT",) ), + MATER = SIMP(statut='o',typ=mater_sdaster), + TEMP_REF = SIMP(statut='d',typ='R',defaut= 25. ), + ), + CHAM_MATER = SIMP(statut = 'f',typ=CO,), + MODELE_THER= SIMP(statut = 'f',typ=CO,), + + DEFI_CHAR_THER = FACT(statut ='d', + TEMP_INIT = SIMP(statut='d',typ='R',defaut= 25.,), + COEF_H_FLUI = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster),), + TEMP_EXT_FLUI = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster),), + COEF_H_AIR = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster),), + TEMP_EXT_AIR = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster),), + LIST_INST = SIMP(statut='f',typ=listr8_sdaster), + ), + + CHAR_THER = FACT(statut = 'f',max=4, + CHARGE = SIMP(statut='o',typ=CO), + TYPE = SIMP(statut='o',typ='TXM', + into=("BRIDE_FLUIDE","BRIDE_AIR","ECROU_GOUJON", + "BRIDE_JOINT"),) + ), + + RESU_THER = SIMP(statut = 'f',typ=CO,), + + + MODELE_MECA= SIMP(statut = 'f',typ=CO,), + + DEFI_CHAR_MECA = FACT(statut='o', + PRETENS = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster),), + PRES_REP = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster),), + EFFE_FOND = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster),), + ), + + CHAR_MECA = FACT(statut = 'f',max=11, + CHARGE = SIMP(statut='o',typ=CO), + TYPE = SIMP(statut='o',typ='TXM', + into=("BLOC_BAS_GOUJ","BLOC_BAS_JOINT", + "BLOC_LAT_ALES","BLOC_LAT_NALES", + "PLAN_TUBE", + "PRES_FLU","EFFET_FOND", + "CONT_JOINT", + "DEFO_THER", + "SERR_ECROU_1","SERR_ECROU_2",),) + ), + + RELATION = SIMP(statut='f',typ='TXM', + into=('VMIS_ISOT_TRAC','ELAS','ELAS_VMIS_TRAC',),), + + SOLVEUR = FACT(statut='d', + METHODE = SIMP(statut='d',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT",) ), + b_mult_front = BLOC(condition = "METHODE == 'MULT_FRONT' ", + fr="Paramètres de la méthode multi frontale", + RENUM = SIMP(statut='d',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), + NPREC = SIMP(statut='d',typ='I',defaut=8), + STOP_SINGULIER = SIMP(statut='d',typ='TXM',defaut="OUI",into=("OUI","NON") ), + ), + ), + INCREMENT = FACT(statut='f', + regles=(EXCLUS('NUME_INST_INIT','INST_INIT'), + EXCLUS('NUME_INST_FIN','INST_FIN'),), + LIST_INST =SIMP(statut='f',typ=listr8_sdaster), + EVOLUTION =SIMP(statut='f',typ='TXM',defaut="CHRONOLOGIQUE", + into=("CHRONOLOGIQUE",) ), + NUME_INST_INIT =SIMP(statut='f',typ='I'), + INST_INIT =SIMP(statut='f',typ='R'), + NUME_INST_FIN =SIMP(statut='f',typ='I'), + INST_FIN =SIMP(statut='f',typ='R'), + PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), + # DEBUT DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS + SUBD_METHODE =SIMP( statut='f',typ='TXM', + into =("AUCUNE","UNIFORME","EXTRAPOLE"), + defaut="AUCUNE", + fr="Méthode de subdivision des pas de temps en cas de non-convergence" + ), + b_subd_unif=BLOC(condition = "SUBD_METHODE == 'UNIFORME'", + regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), + SUBD_COEF_PAS_1=SIMP(statut='f',typ='R',defaut=1.0,val_min=0.0, + fr="Coefficient multiplicateur de la 1ère subdivision"), + SUBD_PAS =SIMP(statut='f',typ='I',defaut=4,val_min=2, + fr="Nombre de subdivision d'un pas de temps"), + SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, + fr="Nombre maximum de niveau de subdivision d'un pas de temps"), + SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, + fr="Pas de temps en dessous duquel on ne subdivise plus"), + ), + b_subd_extr=BLOC(condition = "SUBD_METHODE == 'EXTRAPOLE'", + regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), + SUBD_OPTION =SIMP(statut='f',typ='TXM', + into =("IGNORE_PREMIERES","GARDE_DERNIERES",), + defaut="IGNORE_PREMIERES", + fr="Technique d'extrapolation : les 1ere itérations sont ignorées ou les dernières sont gardées"), + SUBD_ITER_IGNO =SIMP(statut='c',typ='I',defaut=3,val_min=0, + fr="Les n premières itérations sont ignorées pour l'extrapolation"), + SUBD_ITER_FIN =SIMP(statut='c',typ='I',defaut=8,val_min=3, + fr="Seules les n dernières itérations sont prises pour l'extrapolation"), + SUBD_PAS =SIMP(statut='c',typ='I',defaut=4,val_min=2, + fr="Nombre de subdivision d'un pas de temps en cas divergence"), + SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, + fr="Nombre maximum de niveau de subdivision d'un pas de temps"), + SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, + fr="Pas de temps en dessous duquel on ne subdivise plus"), + SUBD_ITER_PLUS =SIMP(statut='c',typ='I',defaut=50,val_min=20, + fr="% itération autorisée en plus"), + ), + # FIN DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS + OPTI_LIST_INST =SIMP(statut='f',typ='TXM',into=("INCR_MAXI",),), + NOM_CHAM =SIMP(statut='f',typ='TXM',), + NOM_CMP =SIMP(statut='f',typ='TXM',), + VALE =SIMP(statut='f',typ='R'), + ), + NEWTON =FACT(statut='d', + REAC_INCR =SIMP(statut='f',typ='I',defaut= 1 ), + PREDICTION =SIMP(statut='f',typ='TXM',into=("TANGENTE","ELASTIQUE","EXTRAPOL") ), + MATRICE =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE") ), + PAS_MINI_ELAS =SIMP(statut='f',typ='R',defaut=0.0E+0), + REAC_ITER =SIMP(statut='f',typ='I',defaut=0), + EVOL_NOLI =SIMP(statut='f',typ=evol_noli), + ), + RESO_INTE =SIMP(statut='f',typ='TXM',defaut="IMPLICITE", + into=("IMPLICITE",)), + CONVERGENCE =FACT(statut='d', + regles=(PRESENT_ABSENT('RESI_REFE_RELA','RESI_GLOB_MAXI','RESI_GLOB_RELA'),), + SIGM_REFE =SIMP(statut='f',typ='R'), + EPSI_REFE =SIMP(statut='f',typ='R'), + FLUX_THER_REFE =SIMP(statut='f',typ='R'), + RESI_REFE_RELA =SIMP(statut='f',typ='R'), + RESI_GLOB_MAXI =SIMP(statut='f',typ='R'), + RESI_GLOB_RELA =SIMP(statut='f',typ='R'), + ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut=10), + ITER_GLOB_ELAS =SIMP(statut='f',typ='I',defaut=25), + ), + ); + +#& MODIF COMMANDE DATE 07/02/2005 AUTEUR MABBAS M.ABBAS +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== - TRAV_EXT = FACT(statut='f',), - b_trav_ext = BLOC(condition = "( TRAV_EXT != None )", - fr="calcul du travail des efforts extérieurs", - RESULTAT = SIMP(statut='o',typ=(evol_elas,evol_noli,dyna_trans) ), - PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), - TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), - ), +from Macro.macr_cabri_mail_ops import macr_cabri_mail_ops - TITRE =SIMP(statut='f',typ='TXM',max='**' ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), +MACR_CABRI_MAIL=MACRO(nom="MACR_CABRI_MAIL", + op=macr_cabri_mail_ops, + sd_prod=maillage_sdaster, + fr="maillage d'une jonction boulonnée de tuyauterie", + reentrant='n', + UIinfo={"groupes":("Outils métier",)}, + EXEC_MAILLAGE = FACT(statut='o', + LOGICIEL = SIMP(statut = 'o',typ='TXM',into=("GIBI2000",),), + UNITE_DATG = SIMP(statut = 'f',typ='I',defaut=70,), + UNITE_MGIB = SIMP(statut = 'f',typ='I',defaut=19,), + NIVE_GIBI = SIMP(statut = 'f',typ='I',defaut=10, + into = (3,4,5,6,7,8,9,10,11), + ), + ), + RAFF_MAILLAGE = FACT(statut = 'd', + NB_RADIAL = SIMP(statut = 'f',typ='I',defaut=2,), + NB_CIRCONF = SIMP(statut = 'f',typ='I',defaut=3,), + NB_VERTICAL = SIMP(statut = 'f',typ='I',defaut=6,), + NB_ALESAGE = SIMP(statut = 'f',typ='I',defaut=5,), + ), + VERI_MAIL = FACT(statut='d', + VERIF = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + APLAT = SIMP(statut='f',typ='R',defaut= 1.0E-3 ), + ), + GEOM_BRID = FACT(statut = 'o', + NORME = SIMP(statut = 'o',typ='TXM',into=("OUI","NON"),), + b_bride_iso = BLOC(condition = "NORME == 'OUI'", + TYPE = SIMP(statut='o',typ='TXM', + into=('A','AA','B','B1','C','D','D1','E','F', + 'FF','G','GG','H','H1','I','J','J1', + 'K','L','L1','M','N','O','P','S','T','W'), + ), + ), + b_bride_niso = BLOC(condition = "NORME == 'NON'", + TUBU_D_EXT = SIMP(statut='o',typ='R',), + TUBU_H = SIMP(statut='o',typ='R',), + BRID_D_EXT = SIMP(statut='o',typ='R',), + BRID_D_INT = SIMP(statut='o',typ='R',), + BRID_H = SIMP(statut='o',typ='R',), + BRID_D_CONGE = SIMP(statut='o',typ='R',), + BRID_R_CONGE = SIMP(statut='o',typ='R',), + BRID_D_EPAUL = SIMP(statut='o',typ='R',), + BRID_H_EPAUL = SIMP(statut='o',typ='R',), + BRID_D_ALESAG = SIMP(statut='o',typ='R',), + BRID_P_ALESAG = SIMP(statut='o',typ='R',), + BRID_H_ALESAG = SIMP(statut='o',typ='R',), + GOUJ_N_GOUJON = SIMP(statut='o',typ='I',), + GOUJ_D_GOUJON = SIMP(statut='o',typ='R',), + GOUJ_E_FILET = SIMP(statut='o',typ='R',), + GOUJ_D_RONDEL = SIMP(statut='o',typ='R',), + GOUJ_E_RONDEL = SIMP(statut='o',typ='R',), + GOUJ_D_ECROU = SIMP(statut='o',typ='R',), + GOUJ_E_ECROU = SIMP(statut='o',typ='R',), + ETAN_E_JOINT = SIMP(statut='o',typ='R',), + ), + ), + IMPRESSION = FACT(statut='d', + UNITE = SIMP(statut='f',typ='I'), + FORMAT = SIMP(statut='f',typ='TXM',defaut="ASTER", + into=("ASTER","CASTEM","IDEAS"), + ), + b_impr_castem = BLOC(condition = "FORMAT == 'CASTEM'", + NIVE_GIBI = SIMP(statut='f',typ='I',defaut=10,into=(3,10),), + ), + b_impr_ideas = BLOC(condition = "FORMAT == 'IDEAS'", + VERSION = SIMP(statut='f',typ='I',defaut=5,into=(4,5),), + ), + ), + ); - ) ; #& MODIF COMMANDE DATE 03/01/2006 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -POST_FATI_ALEA=OPER(nom="POST_FATI_ALEA",op=170,sd_prod=table_sdaster,reentrant='n', - UIinfo={"groupes":("Post traitements",)}, - fr="Calculer le dommage de fatigue subi par une structure soumise à une sollicitation de type aléatoire", - regles=(ENSEMBLE('MOMENT_SPEC_0','MOMENT_SPEC_2'), - PRESENT_PRESENT( 'MOMENT_SPEC_4','MOMENT_SPEC_0'), - UN_PARMI('TABL_POST_ALEA','MOMENT_SPEC_0'), ), - MOMENT_SPEC_0 =SIMP(statut='f',typ='R'), - MOMENT_SPEC_2 =SIMP(statut='f',typ='R'), - MOMENT_SPEC_4 =SIMP(statut='f',typ='R'), - TABL_POST_ALEA =SIMP(statut='f',typ=table_sdaster), - COMPTAGE =SIMP(statut='o',typ='TXM',into=("PIC","NIVEAU")), - DUREE =SIMP(statut='f',typ='R',defaut= 1.), - CORR_KE =SIMP(statut='f',typ='TXM',into=("RCCM",)), - DOMMAGE =SIMP(statut='o',typ='TXM',into=("WOHLER",)), - MATER =SIMP(statut='o',typ=mater_sdaster), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; -#& MODIF COMMANDE DATE 03/01/2006 AUTEUR REZETTE C.REZETTE +# RESPONSABLE JMBHH01 J.M.PROIX + +from Macro.macr_cara_poutre_ops import macr_cara_poutre_ops + +MACR_CARA_POUTRE=MACRO(nom="MACR_CARA_POUTRE",op=macr_cara_poutre_ops,sd_prod=table_sdaster, + reentrant='n', + UIinfo={"groupes":("Modélisation",)}, + fr="Calculer les caractéristiques d'une section transversale de poutre à partir d'un maillage 2D de la section", + regles=(EXCLUS('SYME_X','GROUP_MA_BORD'), + EXCLUS('SYME_Y','GROUP_MA_BORD'),), + + UNITE_MAILLAGE =SIMP(statut='f',typ='I',defaut= 20 ), + ORIG_INER =SIMP(statut='f',typ='R',max=3,defaut=(0.E+0,0.E+0), + fr="Point par rapport auquel sont calculées les inerties"), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), + + SYME_X =SIMP(statut='f',typ='TXM',into=("OUI",),fr="demi maillage par rapport a x=0"), + SYME_Y =SIMP(statut='f',typ='TXM',into=("OUI",),fr="demi maillage par rapport a y=0"), + + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', + fr="Calcul des caractéristiques équivalentes a plusieurs sections disjointes"), + + GROUP_MA_BORD =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', + fr="Groupe(s) de mailles linéiques, bord(s) de(s) section(s)"), + + b_gma_bord = BLOC( condition = "GROUP_MA_BORD != None", + fr=" calcul des carac. mecaniques", + + NOEUD =SIMP(statut='f',typ=no,max='**', + fr="Simplement pour empecher des pivots nuls le cas echeant. Fournir un noeud quelconque"), + GROUP_MA_INTE =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', + fr="groupes de mailles linéiques bordant des trous dans la section"), + ), + + b_reseau = BLOC( condition ="""(GROUP_MA_BORD != None) and (GROUP_MA != None)""", + fr=" calcul des coef de cisaillement équivalents a un reseau de poutres", + regles=(ENSEMBLE('LONGUEUR','LIAISON','MATERIAU') ,), + LONGUEUR =SIMP(statut='f',typ='R',fr="Longueur du réseau de poutres"), + MATERIAU =SIMP(statut='f',typ=mater_sdaster,fr="Materiau elastique lineaire du reseau"), + LIAISON =SIMP(statut='f',typ='TXM',into=("ROTULE","ENCASTREMENT"), + fr="type de conditions aux limites sur le plancher supérieur" ), + ), + ) +#& MODIF COMMANDE DATE 13/12/2006 AUTEUR PELLET J.PELLET # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR @@ -18673,149 +17496,53 @@ POST_FATI_ALEA=OPER(nom="POST_FATI_ALEA",op=170,sd_prod=table_sdaster,reentrant= # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -POST_FATIGUE=OPER(nom="POST_FATIGUE",op=136,sd_prod=table_sdaster,reentrant='n', - UIinfo={"groupes":("Post traitements",)}, - fr="Calculer en un point, le dommage de fatigue subi par une structure soumise à une histoire de chargement", - CHARGEMENT = SIMP(statut='o',typ='TXM',into=("UNIAXIAL","PERIODIQUE","QUELCONQUE")), - b_uniaxial = BLOC( condition = "CHARGEMENT=='UNIAXIAL'", - regles=(PRESENT_PRESENT('CORR_KE','MATER'), - PRESENT_PRESENT('CORR_SIGM_MOYE','MATER'), - PRESENT_PRESENT('DOMMAGE','MATER'),), - HISTOIRE = FACT(statut='o', - regles=(UN_PARMI('SIGM','EPSI'),), - SIGM = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - EPSI = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)),), - COMPTAGE = SIMP(statut='o',typ='TXM',into=("RAINFLOW","RCCM","NATUREL")), - DELTA_OSCI = SIMP(statut='f',typ='R',defaut= 0.0E+0), - COEF_MULT = FACT(statut='f', - KT = SIMP(statut='o',typ='R'),), - CORR_KE = SIMP(statut='f',typ='TXM',into=("RCCM",)), - DOMMAGE = SIMP(statut='f',typ='TXM',into=("WOHLER","MANSON_COFFIN", - "TAHERI_MANSON","TAHERI_MIXTE")), - MATER = SIMP(statut='f',typ=mater_sdaster), - CORR_SIGM_MOYE = SIMP(statut='f',typ='TXM',into=("GOODMAN","GERBER")), - TAHERI_NAPPE = SIMP(statut='f',typ=(nappe_sdaster,formule)), - TAHERI_FONC = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - CUMUL = SIMP(statut='f',typ='TXM',into=("LINEAIRE",)), - ), +from Macro.macr_ecla_pg_ops import macr_ecla_pg_ops - b_periodique = BLOC( condition = "CHARGEMENT=='PERIODIQUE'", - HISTOIRE = FACT(statut='o', - SIGM_XX = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_YY = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_ZZ = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_XY = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_XZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_YZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)),), - CRITERE = SIMP(statut='o',typ='TXM',into=("CROSSLAND","PAPADOPOULOS")), - DOMMAGE = SIMP(statut='f',typ='TXM',into=("WOHLER",)), - MATER = SIMP(statut='o',typ=mater_sdaster), - COEF_CORR = SIMP(statut='f',typ='R'), - ), +def macr_ecla_pg_prod(self,RESULTAT,MAILLAGE,RESU_INIT,**args): + self.type_sdprod(RESULTAT,AsType(RESU_INIT)) + self.type_sdprod(MAILLAGE,maillage_sdaster) + return None - b_quelconque = BLOC( condition = "CHARGEMENT=='QUELCONQUE'", - HISTOIRE = FACT(statut='o', - SIGM_XX = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_YY = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_ZZ = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_XY = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_XZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - SIGM_YZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - EPSP = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - TEMP = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)),), - DOMMAGE = SIMP(statut='f',typ='TXM',into=("LEMAITRE",),), - MATER = SIMP(statut='o',typ=mater_sdaster), - CUMUL = SIMP(statut='f',typ='TXM',into=("LINEAIRE",)), - ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; -#& MODIF COMMANDE DATE 05/03/2007 AUTEUR GALENNE E.GALENNE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE GALENNE E.GALENNE -from Macro.post_k1_k2_k3_ops import post_k1_k2_k3_ops -POST_K1_K2_K3=MACRO(nom="POST_K1_K2_K3",op=post_k1_k2_k3_ops,sd_prod=table_sdaster, - fr="Calcul des facteurs d'intensité de contraintes en 2D et en 3D par extrapolation des sauts de déplacements" - +" sur les lèvres de la fissure", - reentrant='n', - UIinfo={"groupes":("Post traitements",)}, +MACR_ECLA_PG=MACRO(nom="MACR_ECLA_PG",op=macr_ecla_pg_ops,sd_prod=macr_ecla_pg_prod, reentrant='n', + UIinfo={"groupes":("Post traitements",)}, + fr="Permettre la visualisation des champs aux points de Gauss d'une SD_RESULTAT sans lissage ni interpolation", - regles=(UN_PARMI('RESULTAT','TABL_DEPL_SUP'), - EXCLUS('FISSURE','FOND_FISS'), - PRESENT_PRESENT('FISSURE','RESULTAT'), - #PRESENT_PRESENT('RESULTAT','FOND_FISS'), - ), - MODELISATION =SIMP(statut='o',typ='TXM', - into=("3D","AXIS","D_PLAN","C_PLAN"), - fr="Modélisation cohérente avec celle utilisée pour le calcul des déplacements"), - FOND_FISS =SIMP(statut='f',typ=fond_fiss), - FISSURE =SIMP(statut='f',typ=fiss_xfem), - b_fond_fiss =BLOC (condition="(FOND_FISS!= None)", - MAILLAGE = SIMP(statut='o',typ=maillage_sdaster), - TYPE_MAILLAGE = SIMP(statut='f',typ='TXM',into=("LIBRE","REGLE"),defaut="REGLE"), - NB_NOEUD_COUPE= SIMP(statut='f',typ='I'), - NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ) - ), - b_fissure =BLOC (condition="(FISSURE!= None)", - MAILLAGE = SIMP(statut='o',typ=maillage_sdaster), - NB_NOEUD_COUPE = SIMP(statut='f',typ='I' ,defaut=5 ), - DTAN_ORIG = SIMP(statut='f',typ='R',max='**'), - DTAN_EXTR = SIMP(statut='f',typ='R',max='**'), - ), - MATER =SIMP(statut='o',typ=mater_sdaster, - fr="Matériau homogène et isotrope cohérent avec celui utilisé pour le calcul des déplacements"), - RESULTAT =SIMP(statut='f',typ=(evol_elas,evol_noli), - fr="Déplacement des noeuds de la lèvre supérieure et inférieure"), - TABL_DEPL_SUP =SIMP(statut='f',typ=table_sdaster, - fr="Table issue de post_releve_t sur les noeuds de la lèvre supérieure"), - TABL_DEPL_INF =SIMP(statut='f',typ=table_sdaster, - fr="Table issue de post_releve_t sur les noeuds de la lèvre inférieure"), - ABSC_CURV_MAXI=SIMP(statut='f',typ='R', - fr="Distance maximum à partir du fond de fissure à utiliser pour le calcul"), - PREC_VIS_A_VIS= SIMP(statut='f',typ='R',defaut=0.1), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - b_acce_reel =BLOC(condition="(INST != None)or(LIST_INST != None)", - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-6), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - ), - SYME_CHAR =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SYME","SANS") ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), - VECT_K1 =SIMP(statut='o',typ='R',max=3, - fr="Vecteur normal au plan de fissure, orienté de la lèvre inférieure vers la lèvre supérieure"), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; -#& MODIF COMMANDE DATE 03/01/2006 AUTEUR REZETTE C.REZETTE + # SD résultat ,modèle et champs à "éclater" : + RESU_INIT =SIMP(statut='o',typ=resultat_sdaster,fr="RESULTAT à éclater",), + MODELE_INIT =SIMP(statut='o',typ=modele_sdaster,fr="MODELE à éclater"), + NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**'), + + # paramètres numériques de la commande : + SHRINK =SIMP(statut='f',typ='R',defaut= 0.9, fr="Facteur de réduction" ), + TAILLE_MIN =SIMP(statut='f',typ='R',defaut= 0.0, fr="Taille minimale d'un coté" ), + + # concepts produits par la commande : + RESULTAT =SIMP(statut='o',typ=CO,fr="SD_RESULTAT résultat de la commande"), + MAILLAGE =SIMP(statut='o',typ=CO,fr="MAILLAGE associé aux cham_no de la SD_RESULTAT"), + + # Sélection éventuelle d'un sous-ensemble des éléments à visualiser : + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + + # Sélection des numéros d'ordre : + regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST','LIST_ORDRE'),), + TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_INST =SIMP(statut='f',typ=listr8_sdaster), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ), + ) +#& MODIF COMMANDE DATE 12/03/2007 AUTEUR DEVESA G.DEVESA # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR @@ -18829,33 +17556,31 @@ POST_K1_K2_K3=MACRO(nom="POST_K1_K2_K3",op=post_k1_k2_k3_ops,sd_prod=table_sdast # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# # ====================================================================== -# -POST_K_BETA=OPER(nom="POST_K_BETA",op=198,sd_prod=table_sdaster, - fr="Calcul des facteurs d'intensité de contraintes par la méthode K_BETA", - reentrant='n', - UIinfo={"groupes":("Post traitements",)}, - MAILLAGE = SIMP(statut='o',typ=maillage_sdaster), - MATER_REV = SIMP(statut='o',typ=mater_sdaster), - EPAIS_REV = SIMP(statut='o',typ='R'), - FISSURE = FACT(statut='o', - DECALAGE = SIMP(statut='f',typ='R',defaut=-2.e-04), - PROFONDEUR = SIMP(statut='o',typ='R'), - LONGUEUR = SIMP(statut='o',typ='R'), - ORIENTATION = SIMP(statut='o',typ='TXM', - into=("CIRC","LONGI"),), - ), - K1D = FACT(statut='o',max='**', - TABL_MECA_REV = SIMP(statut='o',typ=(table_sdaster)), - TABL_MECA_MDB = SIMP(statut='o',typ=(table_sdaster)), - TABL_THER = SIMP(statut='o',typ=(table_sdaster)), - INTITULE = SIMP(statut='o',typ='TXM' ), +MACR_ELEM_DYNA=OPER(nom="MACR_ELEM_DYNA",op= 81,sd_prod=macr_elem_dyna, + fr="Définition d'un macro élément pour analyse modale ou harmonique par sous structuration dynamique", + reentrant='n', + UIinfo={"groupes":("Matrices/vecteurs",)}, + regles=(EXCLUS('MATR_AMOR','AMOR_REDUIT' ), + PRESENT_ABSENT('MATR_IMPE','MATR_RIGI','MATR_MASS'),), + BASE_MODALE =SIMP(statut='o',typ=base_modale ), + MATR_RIGI =SIMP(statut='f',typ=matr_asse_depl_r ), + MATR_MASS =SIMP(statut='f',typ=matr_asse_depl_r ), + MATR_AMOR =SIMP(statut='f',typ=matr_asse_depl_r ), + AMOR_REDUIT =SIMP(statut='f',typ='R',max='**'), + OPTION =SIMP(statut='f',typ='TXM',defaut="CLASSIQUE",into=("CLASSIQUE","RITZ", + "DIAG_MASS") ), + MATR_IMPE =SIMP(statut='f',typ=matr_asse_gene_c ), + b_matr_impe =BLOC(condition = "MATR_IMPE != None", + FREQ_EXTR =SIMP(statut='o',typ='R' ), + AMOR_SOL =SIMP(statut='f',typ='R',defaut=0.E+0 ), + ), + CAS_CHARGE =FACT(statut='f',max='**', + NOM_CAS =SIMP(statut='o',typ='TXM'), + VECT_ASSE_GENE =SIMP(statut='o',typ=vect_asse_gene ), ), - TITRE = SIMP(statut='f',typ='TXM',max='**'), -); -#& MODIF COMMANDE DATE 03/04/2007 AUTEUR VIVAN L.VIVAN +) ; +#& MODIF COMMANDE DATE 31/10/2006 AUTEUR A3BHHAE H.ANDRIAMBOLOLONA # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -18866,768 +17591,427 @@ POST_K_BETA=OPER(nom="POST_K_BETA",op=198,sd_prod=table_sdaster, # # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTIC +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE JMBHH01 J.M.PROIX -POST_RCCM=OPER(nom="POST_RCCM",op= 165,sd_prod=table_sdaster, - fr="Vérification des critères de niveau 0 et certains critères de niveau A du RCC-M-B3200 (Edition 1991)", - reentrant='n', - UIinfo={"groupes":("Post traitements",)}, - TYPE_RESU =SIMP(statut='f',typ='TXM',defaut="VALE_MAX",into=("VALE_MAX","DETAILS") ), - INFO =SIMP(statut='f',typ='I',into=(1,2) ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - TYPE_RESU_MECA =SIMP(statut='o',typ='TXM',into=("EVOLUTION","UNITAIRE","TUYAUTERIE") ), - -# ====================================================================== - b_evolution =BLOC(condition="(TYPE_RESU_MECA == 'EVOLUTION')", - - OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', - into=("PM_PB","SN","FATIGUE_ZH210","AMORCAGE") ), - MATER =SIMP(statut='o',typ=mater_sdaster ), - SY_MAX =SIMP(statut='f',typ='R', - fr="limite élastique utilisée pour le calcul du rochet thermique" ), - - TRANSITOIRE =FACT(statut='o',max='**',fr="transitoire à dépouiller", - regles=(EXCLUS('TOUT_ORDRE','INST','LIST_INST'), - UN_PARMI('TABL_RESU_MECA','TABL_SIGM_THETA'),), - NB_OCCUR =SIMP(statut='f',typ='I',defaut= 1, - fr="nombre d occurences réelles de ce transitoire" ), - TABL_RESU_MECA =SIMP(statut='f',typ=table_sdaster, - fr="relevé des contraintes sur le chemin"), - TABL_SIGM_THER =SIMP(statut='f',typ=table_sdaster, - fr="résultat sous chargement thermique seul" ), - TABL_RESU_PRES =SIMP(statut='f',typ=table_sdaster, - fr="table relevé des contraintes sous chargement de pression" ), - TABL_SIGM_THETA =SIMP(statut='f',typ=table_sdaster, - fr="table relevé des contraintes a la distance d de la singularité pour chacun des angles THETA" ), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), - b_inst =BLOC(condition = "(INST != None) or (LIST_INST != None)" , - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("ABSOLU","RELATIF") ), - ), - ), +MACR_ELEM_STAT=OPER(nom="MACR_ELEM_STAT",op=86,sd_prod=macr_elem_stat,reentrant='f', + UIinfo={"groupes":("Matrices/vecteurs",)}, + fr="Définition d'un macro-élément pour l'analyse statique par sous-structuration", + regles=(AU_MOINS_UN('DEFINITION','RIGI_MECA','MASS_MECA','CAS_CHARGE'), + ENSEMBLE('DEFINITION','EXTERIEUR'),), + DEFINITION =FACT(statut='f', + regles=(PRESENT_PRESENT('PROJ_MESU','MODE_MESURE'),), + MODELE =SIMP(statut='o',typ=modele_sdaster), + CHAM_MATER =SIMP(statut='f',typ=cham_mater), + CARA_ELEM =SIMP(statut='f',typ=cara_elem), + CHAR_MACR_ELEM =SIMP(statut='f',typ=char_meca), + INST =SIMP(statut='f',typ='R',defaut=0.0E+0 ), + NMAX_CAS =SIMP(statut='f',typ='I',defaut=10), + NMAX_CHAR =SIMP(statut='f',typ='I',defaut=10), + PROJ_MESU =SIMP(statut='f',typ=(mode_gene,tran_gene,harm_gene),max=1), + MODE_MESURE =SIMP(statut='f',typ=( mode_meca,base_modale) ), ), - -# ====================================================================== - b_unitaire =BLOC(condition="(TYPE_RESU_MECA == 'UNITAIRE')", - - OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', - into=("PM_PB","SN","FATIGUE") ), - MATER =SIMP(statut='o',typ=mater_sdaster ), - SY_MAX =SIMP(statut='f',typ='R', - fr="limite élastique utilisée pourle calcul du rochet thermique" ), - TYPE_KE =SIMP(statut='f',typ='TXM',defaut="KE_MECA",into=("KE_MECA","KE_MIXTE"), - fr="Ke meca seul ou partition mecanique + thermique" ), - CHAR_MECA =FACT(statut='o',max='**',fr="Chargements mécaniques", - regles=(UN_PARMI('MX','MX_TUBU'),), - NUME_CHAR =SIMP(statut='o',typ='I',fr="numéro du chargement" ), - NOM_CHAR =SIMP(statut='f',typ='TXM',fr="nom du chargement" ), - TYPE_CHAR =SIMP(statut='f',typ='TXM',fr="nature du chargement",into=( "SEISME","AUTRE"),defaut="AUTRE",), - MX =SIMP(statut='f',typ='R',fr="moment suivant x", ), - MX_TUBU =SIMP(statut='f',typ='R',fr="moment suivant x, tubulure", ), - b_1_tenseur =BLOC( condition = "MX != None", - FX =SIMP(statut='f',typ='R',fr="effort suivant x", ), - FY =SIMP(statut='f',typ='R',fr="effort suivant y", ), - FZ =SIMP(statut='f',typ='R',fr="effort suivant z", ), - MY =SIMP(statut='o',typ='R',fr="moment suivant y", ), - MZ =SIMP(statut='o',typ='R',fr="moment suivant z", ), - ), - b_2_tenseurs =BLOC( condition = "MX_TUBU != None", - FX_TUBU =SIMP(statut='f',typ='R',fr="effort suivant x, tubulure", ), - FY_TUBU =SIMP(statut='f',typ='R',fr="effort suivant y, tubulure", ), - FZ_TUBU =SIMP(statut='f',typ='R',fr="effort suivant z, tubulure", ), - MY_TUBU =SIMP(statut='o',typ='R',fr="moment suivant y, tubulure", ), - MZ_TUBU =SIMP(statut='o',typ='R',fr="moment suivant z, tubulure", ), - FX_CORP =SIMP(statut='f',typ='R',fr="effort suivant x, corps du piquage", ), - FY_CORP =SIMP(statut='f',typ='R',fr="effort suivant y, corps du piquage", ), - FZ_CORP =SIMP(statut='f',typ='R',fr="effort suivant z, corps du piquage", ), - MX_CORP =SIMP(statut='o',typ='R',fr="moment suivant x, corps du piquage", ), - MY_CORP =SIMP(statut='o',typ='R',fr="moment suivant y, corps du piquage", ), - MZ_CORP =SIMP(statut='o',typ='R',fr="moment suivant z, corps du piquage", ), - ), - - ), - RESU_MECA_UNIT =FACT(statut='o',fr="resultats mécaniques unitaires", - regles=(UN_PARMI('TABL_MX','TABL_MX_TUBU'),), - TABL_MX =SIMP(statut='f',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire MX"), - TABL_MX_TUBU =SIMP(statut='f',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire MX_TUBU"), - b_1_tenseur =BLOC( condition = "TABL_MX != None", - TABL_FX =SIMP(statut='f',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire FX"), - TABL_FY =SIMP(statut='f',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire FY"), - TABL_FZ =SIMP(statut='f',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire FZ"), - TABL_MY =SIMP(statut='o',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire MY"), - TABL_MZ =SIMP(statut='o',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire MZ"), - ), - b_2_tenseurs =BLOC( condition = "TABL_MX_TUBU != None", - TABL_FX_TUBU =SIMP(statut='f',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire FX_TUBU"), - TABL_FY_TUBU =SIMP(statut='f',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire FY_TUBU"), - TABL_FZ_TUBU =SIMP(statut='f',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire FZ_TUBU"), - TABL_MY_TUBU =SIMP(statut='o',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire MY_TUBU"), - TABL_MZ_TUBU =SIMP(statut='o',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire MZ_TUBU"), - TABL_FX_CORP =SIMP(statut='f',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire FX_CORP"), - TABL_FY_CORP =SIMP(statut='f',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire FY_CORP"), - TABL_FZ_CORP =SIMP(statut='f',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire FZ_CORP"), - TABL_MX_CORP =SIMP(statut='o',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire MX_CORP"), - TABL_MY_CORP =SIMP(statut='o',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire MY_CORP"), - TABL_MZ_CORP =SIMP(statut='o',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire MZ_CORP"), - ), - TABL_PRES =SIMP(statut='o',typ=table_sdaster, - fr="table relevé des contraintes pour chargement unitaire de pression"), - ), - - RESU_THER =FACT(statut='f',max='**',fr="resultats thermiques", - NUME_RESU_THER =SIMP(statut='o',typ='I',fr="numéro de la table de résultat thermique" ), - TABL_RESU_THER =SIMP(statut='o',typ=table_sdaster, - fr="table relevé des contraintes sous chargement thermique seul" ), - ), - SITUATION =FACT(statut='o',max='**',fr="Situation",ang="situation_ang", - NB_OCCUR =SIMP(statut='o',typ='I',fr="nombre d'occurences de la situation" ), - NB_CYCL_SEISME =SIMP(statut='f',typ='I',fr="nombre de cycles associé au séisme" ), - NUME_SITU =SIMP(statut='o',typ='I',fr="numéro de la situation" ), - NOM_SITU =SIMP(statut='f',typ='TXM',fr="nom de la situation" ), - COMBINABLE =SIMP(statut='f',typ='TXM',defaut= "OUI",into=("OUI","NON"),fr="non = sous-cycle" ), - NUME_GROUPE =SIMP(statut='o',typ='I',fr="numéro du groupe de la situation" ), - NUME_PASSAGE =SIMP(statut='f',typ='I',max=2,fr="numéro des deux groupes en relation" ), - NUME_RESU_THER =SIMP(statut='f',typ='I',max='**',fr="numeros de transitoires thermiques" ), - CHAR_ETAT_A =SIMP(statut='o',typ='I',max='**',fr="numeros de chargements etat A" ), - CHAR_ETAT_B =SIMP(statut='o',typ='I',max='**',fr="numeros de chargements etat B" ), - PRES_A =SIMP(statut='o',typ='R',fr="pression etat A"), - PRES_B =SIMP(statut='o',typ='R',fr="pression etat B"), - TEMP_REF_A =SIMP(statut='f',typ='R',fr="temperature référence etat A"), - TEMP_REF_B =SIMP(statut='f',typ='R',fr="temperature référence etat B"), - ), - ), -# ====================================================================== - b_tuyauterie =BLOC(condition="(TYPE_RESU_MECA == 'TUYAUTERIE')", - - OPTION =SIMP(statut='o',typ='TXM',into=("FATIGUE",) ), - CHAM_MATER =SIMP(statut='o',typ=cham_mater ), - TYPE_KE =SIMP(statut='f',typ='TXM',defaut="KE_MECA",into=("KE_MECA","KE_MIXTE"), - fr="Ke meca seul ou partition mecanique + thermique" ), - MODELE =SIMP(statut='o',typ=modele_sdaster), - CARA_ELEM =SIMP(statut='o',typ=cara_elem), - ZONE_ANALYSE =FACT(statut='o',fr="liste des mailles ou des noeuds analysés", - regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - ), - RESU_MECA =FACT(statut='o',max='**',fr="Chargements mécaniques", - regles=(UN_PARMI('CHAM_GD','RESULTAT'),), - NUME_CHAR =SIMP(statut='o',typ='I',fr="numéro du chargement" ), - NOM_CHAR =SIMP(statut='f',typ='TXM',fr="nom du chargement" ), - TYPE_CHAR =SIMP(statut='f',typ='TXM',fr="nature du chargement",into=( "SEISME","AUTRE"),defaut="AUTRE",), - CHAM_GD =SIMP(statut='f',typ=cham_gd_sdaster), - RESULTAT =SIMP(statut='f',typ=resultat_sdaster), - b_extrac =BLOC(condition="RESULTAT != None", - fr="extraction d un champ de grandeur", - regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE','INST','NOEUD_CMP'),), - NOM_CHAM =SIMP(statut='o',typ='TXM',into=("EFGE_ELNO_DEPL","SIEF_ELNO_ELGA"),), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',), - INST =SIMP(statut='f',typ='R',), - NOEUD_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - b_acce_reel =BLOC(condition="(INST != None)", - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU"), ), - ), - ), - ), - INDI_SIGM =FACT(statut='o',max='**',fr="indices de contraintes", - regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), - C1 =SIMP(statut='f',typ='R',defaut=1.0,fr="indice de contraintes C1 du RCCM"), - K1 =SIMP(statut='f',typ='R',defaut=1.0,fr="indice de contraintes K1 du RCCM"), - C2 =SIMP(statut='f',typ='R',defaut=1.0,fr="indice de contraintes C2 du RCCM"), - K2 =SIMP(statut='f',typ='R',defaut=1.0,fr="indice de contraintes K2 du RCCM"), - C3 =SIMP(statut='f',typ='R',defaut=0.5,fr="indice de contraintes C3 du RCCM"), - K3 =SIMP(statut='f',typ='R',defaut=1.0,fr="indice de contraintes K3 du RCCM"), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",),), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', - fr="groupe(s) de mailles ou sont affectés les indices de contraintes"), - MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**', - fr="liste des mailles ou sont affectés les indices de contraintes"), - b_grma =BLOC(condition="(GROUP_MA != None)or(MAILLE != None)", - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - ), - TYPE_ELEM_STANDARD =SIMP(statut='f',typ='TXM',into=("DRO","COU","TRN","TEE"), - fr="type d'élément de tuyauterie ou sont affectés les indices de contraintes"), - ), - RESU_THER =FACT(statut='f',max='**',fr="resultats thermiques", - regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), - NUME_RESU_THER =SIMP(statut='o',typ='I',fr="numéro de la table de résultat thermique" ), - TABL_RESU_THER =SIMP(statut='o',typ=table_sdaster, - fr="table relevé des températures sur la section"), - TABL_MOYE_THER =SIMP(statut='o',typ=table_sdaster, - fr="table relevé des moyennes sur la section"), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - b_grma =BLOC(condition="(GROUP_MA != None)or(MAILLE != None)", - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - ), - ), - SITUATION =FACT(statut='o',max='**',fr="Situation",ang="situation_ang", - NB_OCCUR =SIMP(statut='o',typ='I',fr="nombre d'occurences de la situation" ), - NB_CYCL_SEISME =SIMP(statut='f',typ='I',fr="nombre de cycles associé au séisme" ), - NUME_SITU =SIMP(statut='o',typ='I',fr="numéro de la situation" ), - NOM_SITU =SIMP(statut='f',typ='TXM',fr="nom de la situation" ), - COMBINABLE =SIMP(statut='f',typ='TXM',defaut= "OUI",into=("OUI","NON"),fr="non = sous-cycle" ), - NUME_GROUPE =SIMP(statut='o',typ='I',fr="numéro du groupe de la situation" ), - NUME_PASSAGE =SIMP(statut='f',typ='I',max=2,fr="numéro des deux groupes en relation" ), - NUME_RESU_THER =SIMP(statut='f',typ='I',max='**',fr="numeros de transitoires thermiques" ), - CHAR_ETAT_A =SIMP(statut='o',typ='I',max='**',fr="numeros de chargements etat A" ), - CHAR_ETAT_B =SIMP(statut='o',typ='I',max='**',fr="numeros de chargements etat B" ), - PRES_A =SIMP(statut='o',typ='R',fr="pression etat A"), - PRES_B =SIMP(statut='o',typ='R',fr="pression etat B"), - TEMP_REF_A =SIMP(statut='f',typ='R',fr="temperature référence etat A"), - TEMP_REF_B =SIMP(statut='f',typ='R',fr="temperature référence etat B"), - ), - ), + EXTERIEUR =FACT(statut='f', + regles=(AU_MOINS_UN('NOEUD','GROUP_NO'),), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + ), + RIGI_MECA =FACT(statut='f', + ), + MASS_MECA =FACT(statut='f', + ), + CAS_CHARGE =FACT(statut='f',max='**', + NOM_CAS =SIMP(statut='o',typ='TXM'), + SUIV =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), + CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), + INST =SIMP(statut='f',typ='R',defaut=0.E+0), + ), + ) ; #& MODIF COMMANDE DATE 27/11/2006 AUTEUR GNICOLAS G.NICOLAS -# ====================================================================== # CONFIGURATION MANAGEMENT OF EDF VERSION -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE G8BHHXD X.DESROCHES -POST_RELEVE_T=OPER(nom="POST_RELEVE_T",op=51,sd_prod=table_sdaster,reentrant='f', - fr="Extraire des valeurs de composantes de champs de grandeurs pour y effectuer des calculs (moyenne,invariants,..)" - +" ou pour les exprimer dans d'autres repères", - docu="U4.81.21",UIinfo={"groupes":("Post traitements",)}, - - ACTION =FACT(statut='o',max='**', - regles=(UN_PARMI('RESULTAT','CHAM_GD'),), +# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE GNICOLAS G.NICOLAS - OPERATION =SIMP(statut='o',typ='TXM',into=("EXTRACTION","MOYENNE","EXTREMA"),validators=NoRepeat(),max=2), - INTITULE =SIMP(statut='o',typ='TXM'), +from Macro.macr_fiabilite_ops import macr_fiabilite_ops - CHAM_GD =SIMP(statut='f',typ=(cham_no_sdaster, - cham_elem,),), - RESULTAT =SIMP(statut='f',typ=(evol_elas,evol_ther,evol_noli,dyna_trans, - mode_meca,mode_flamb,mode_acou,base_modale,mode_stat, - mult_elas,fourier_elas,fourier_ther,dyna_harmo,acou_harmo)), # -# 1. Sensibilité -# 1.1. Cas d'un résultat réel -# Cas d'un résultat harmonique dont on veut partie réelle ou imaginaire +#==== +# 1. Le retour : une liste de rééls. +#==== +# +def macr_fiabilite_prod ( self , **args ): + return listr8_sdaster +# +#==== +# 2. L'entete +#==== +# +MACR_FIABILITE = MACRO ( nom="MACR_FIABILITE",op=macr_fiabilite_ops, + docu="U7.03.31",UIinfo={"groupe":("Post traitements",)}, + sd_prod=macr_fiabilite_prod, + fr="Calcule les probabiltés de dépassement de seuil (mécanique de fiabilité).", + ang="Fiability mechanics.", +# +#==== +# 3. Le niveau d'information +#==== +# + INFO = SIMP(statut="f",typ="I",defaut=1,into=(1,2)), +# +#==== +# 4. Nom et Version du logiciel de fiabilité +#==== +# + LOGICIEL = SIMP(statut="f",typ="TXM",defaut="MEFISTO", + into=("MEFISTO",), + fr="Nom du logiciel de fiabilité.", + ang="Fiability software name."), +# + VERSION = SIMP(statut="f",typ="TXM",defaut="V3_2", + into=("V3_2", "V3_N"), + fr="Version du logiciel de fiabilité.", + ang="Fiability software release."), +# +#==== +# 5. Les entrees-sorties du calcul ASTER déterministe +#==== +# +# 5.1. ==> Le jeu de commandes déterministe +# + UNITE_ESCL = SIMP(statut="o",typ="I", + fr="Unité logique associée aux commandes du calcul ASTER déterministe.", + ang="Logical unit for the commands of the ASTER deterministic calculation."), +# +# 5.2. ==> Le destin des messages produits par ASTER +# + MESS_ASTER = SIMP(statut="f",typ="TXM",defaut="DERNIER", + into=("AUCUN", "DERNIER", "TOUS"), + fr="Quels messages ASTER récupérer.", + ang="Which ASTER messages must be kept."), +# +#==== +# 6. Options +#==== +# 6.1. ==> Générales +# +# 6.1.1. ==> La valeur du seuil +# + SEUIL = SIMP(statut="o",typ="R",max=1, + fr="Le seuil de défaillance.", + ang="Failure threshold."), +# +# 6.1.2. ==> Le type du seuil : on a deux cas de figure selon que +# la défaillance a lieu au dessus d'un seuil maximum ou +# en dessous d'un seuil minimum +# + SEUIL_TYPE = SIMP(statut="o",typ="TXM",max=1, + into=("MINIMUM","MAXIMUM"), + fr="Que faut-il ne pas dépasser : un maximum ou un minimum.", + ang="What is the failure threshold : maximum or minimum."), +# +# 6.2. ==> Pour MEFISTO +# +### en attente de résolution de AL 2004-006 (1/2) b_mefisto=BLOC( condition = "LOGICIEL=='MEFISTO'", +# +# 6.2.1. ==> Pilotage de la recherche du point de conception +# + RECH_PT_CONCEPT = SIMP(statut="f",typ="TXM",defaut="OUI", + into=("OUI","NON"), + fr="Pour trouver le point de conception.", + ang="To find the design point."), +# + b_rech_pt_concept=BLOC( condition = "RECH_PT_CONCEPT=='OUI'", +# + EPSILON_U = SIMP(statut="f",typ="R",defaut=1.0E-2, + fr="Précision du test d'arret sur les points itératifs dans l'espace standard.", + ang="Precision of stop test for iterative points in standard space."), +# + EPSILON_G = SIMP(statut="f",typ="R",defaut=1.0E-2, + fr="Précision du test d'arret sur la proximité de la surface d'état limite.", + ang="Precision of stop test for limit state surface."), +# + TAU = SIMP(statut="f",typ="R",defaut=5.0E-1, + fr="Paramètre de la méthode de minimisation.", + ang="Parameter for the minimization method."), +# + OMEGA = SIMP(statut="f",typ="R",defaut=1.0E-4, + fr="Paramètre de la méthode de minimisation.", + ang="Parameter for the minimization method."), +# + ITER_MAX = SIMP(statut="f",typ="I",defaut=50, + fr="Nombre maximum d'itérations.", + ang="Maximum number of iterations."), + ), +# +# 6.2.2. ==> Méthode(s) employée(s) pour la probabilité de défaillance +# + METHODE_FORM = SIMP(statut="f",typ="TXM",defaut="OUI", + into=("OUI","NON"), + fr="Recherche de la probabilité de défaillance avec la méthode FORM.", + ang="Research of failure probability with FORM method."), +# + METHODE_SORM = SIMP(statut="f",typ="TXM",defaut="NON", + into=("OUI","NON"), + fr="Recherche de la probabilité de défaillance avec la méthode SORM.", + ang="Research of failure probability with SORM method."), +# + TIRAGE_IMPORTANCE = SIMP(statut="f",typ="TXM",defaut="NON", + into=("OUI","NON"), + fr="Recherche de la probabilité de défaillance avec le tirage d'importance.", + ang="Research of failure probability with ."), +# + b_tirage_importance=BLOC( condition = "TIRAGE_IMPORTANCE=='OUI'", +# + NB_SIMULATION = SIMP(statut="f",typ="I",defaut=3, + fr="Nombre de simulations pour le tirage d'importance.", + ang="Number of simulation for."), +# + ), +# +# 6.2.3. ==> Création d'une surface de réponse polynomiale +# + POLYNOME_TAYLOR = SIMP(statut="f",typ="TXM",defaut="NON",into=("OUI","NON"),), + HGRAD = SIMP(statut="f",typ="R",defaut=1.0E-2, + fr="Pas incrémental pour le calcul des gradients.", + ang="Step for calculation of gradients."), + HHESS = SIMP(statut="f",typ="R",defaut=1.0E-2, + fr="Pas incrémental pour le calcul des dérivées secondes.", + ang="Step for calculation of second derivatives."), +# +# 6.2.4. ==> Recherche d'un plan d'expérience +# + PLAN_EXPERIENCE = SIMP(statut="f",typ="TXM",defaut="NON",into=("OUI","NON"), + fr="Construction d'un plan d'expérience.", + ang="Construction of an experiment plan."), +# + b_plan_experience=BLOC( condition = "PLAN_EXPERIENCE=='OUI'", +# + ALPHA = SIMP(statut="f",typ="R",defaut=2.0E-1, + fr="Plan d'expérience : maille du plan de type composite centré.", + ang="Experiment plane : mesh centered composite."), +# + BETA = SIMP(statut="f",typ="R",defaut=4.0E-1, + fr="Plan d'expérience : maille du plan de type factoriel.", + ang="Experiment plane : mesh factor."), +# + ), +# +# 6.2.5. ==> Les tests +# 6.2.5.1. ==> Test de la sphere +# + T_SPHERE = SIMP(statut="f",typ="TXM",defaut="NON",into=("OUI","NON"), + fr="Test de la sphère.", + ang="Sphere test."), +# + b_test_de_la_sphere=BLOC( condition = "T_SPHERE=='OUI'", +# + METHODE_TEST = SIMP(statut="f",typ="TXM",defaut="GAUSSIENNE", + into=("GAUSSIENNE","PARAMETRIQUE","REJECTION"), + fr="Type de méthode.", + ang="Method."), +# + NB_POINT = SIMP(statut="f",typ="I",max=1,defaut=60, + fr="Nombre de points de la sphere.", + ang="Number of points over the sphere.") + ), +# +# 6.2.5.2. ==> Test du maximum fort +# + T_MAXIMUM_FORT = SIMP(statut="f",typ="TXM",defaut="NON",into=("OUI","NON"), + fr="Test du maximum fort.", + ang="Strong maximum test."), +# + b_test_du_maximum_fort=BLOC( condition = "T_MAXIMUM_FORT=='OUI'", +# + COS_LIM = SIMP(statut="f",typ="R",max=1,defaut=1.0, + fr="Cosinus de l'angle d'exclusion.", + ang="Cosine of angle of exclusion."), +# + DPROB = SIMP(statut="f",typ="R",max=1,defaut=4.3E-1, + fr="Fraction d'iso-densité de probabilité de défaillance.", + ang="Fraction.") +# + ), +# +# 6.2.5.3. ==> Test du hessien +# + T_HESSIEN = SIMP(statut="f",typ="TXM",defaut="NON",into=("OUI","NON"), + fr="Test du hessien.", + ang="Hessian test."), # - b_sensibilite =BLOC(condition=" (RESULTAT != None) and \ - ( AsType(RESULTAT) in (evol_elas,evol_ther,evol_noli,dyna_trans, \ - mode_meca,mode_flamb,mode_acou,base_modale,mode_stat, \ - mult_elas,fourier_elas,fourier_ther) or \ - ( AsType(RESULTAT) in (dyna_harmo,acou_harmo) and FORMAT_C != 'MODULE' ) )", - fr="Définition des paramètres de sensibilité", - ang="Definition of sensitivity parameters", - regles=(CONCEPT_SENSIBLE("SEPARE"), REUSE_SENSIBLE(), - DERIVABLE('RESULTAT'),), - SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', - fr="Liste des paramètres de sensibilité.", - ang="List of sensitivity parameters"), - - ), +# 6.2.6. ==> Les correlations entre les variables # -# 1.2. Cas d'un résultat harmonique dont on veut le module + MATRICE = SIMP(statut="f",typ="R",max="**", + fr="Matrice de corrélation entre les variables.", + ang="Correlation matrix."), # - b_sensibilite_harmo =BLOC(condition=" (RESULTAT != None) and \ - ( AsType(RESULTAT) in (dyna_harmo,acou_harmo) and FORMAT_C == 'MODULE' )", - fr="Définition des paramètres de sensibilité", - ang="Definition of sensitivity parameters", - regles=(CONCEPT_SENSIBLE("SEPARE"), REUSE_SENSIBLE(), - DERIVABLE('RESULTAT'),), - SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', - fr="Liste des paramètres de sensibilité.", - ang="List of sensitivity parameters"), - b_sensibilite_harmo =BLOC(condition=" SENSIBILITE != None", - fr="Option pour la sensibilite", - ang="Option for sensitivity", - SENSIBILITE_OPTION =SIMP(statut='o',typ='TXM',into=("MODULE_SENSIBILITE","SENSIBILITE_MODULE",), - fr="Option : module de la dérivée ou dérivée du module", - ang="Option : modulus of derivative or derivative of modulus"), - ), - ), - - b_extrac =BLOC(condition = "RESULTAT != None",fr="extraction des résultats", - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','NUME_MODE','LIST_MODE', - 'INST','LIST_INST','FREQ','LIST_FREQ','NOEUD_CMP','NOM_CAS'), ), - NOM_CHAM =SIMP(statut='o',typ='TXM' ), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_MODE =SIMP(statut='f',typ=listis_sdaster), - NOEUD_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - NOM_CAS =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-6), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), - ), - - b_extrema =BLOC(condition="OPERATION == 'EXTREMA'", - fr="recherche de MIN MAX", - regles=(EXCLUS('TOUT_CMP','NOM_CMP'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - TOUT_CMP =SIMP(statut='f',typ='TXM',into=("OUI",)), - NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), - ), - - b_autre =BLOC(condition="OPERATION != 'EXTREMA'", - fr="extraction et moyenne", - regles=(AU_MOINS_UN('CHEMIN','GROUP_NO','NOEUD'), - EXCLUS('CHEMIN','GROUP_NO'), - EXCLUS('CHEMIN','NOEUD'), - PRESENT_ABSENT('CHEMIN','GROUP_MA','MAILLE'), - UN_PARMI('TOUT_CMP','NOM_CMP','INVARIANT','ELEM_PRINCIPAUX','RESULTANTE'), - PRESENT_PRESENT('TRAC_DIR','DIRECTION'), - ENSEMBLE('MOMENT','POINT'), - PRESENT_PRESENT('MOMENT','RESULTANTE'), - PRESENT_ABSENT('TOUT_CMP','TRAC_DIR','TRAC_NOR'), - EXCLUS('TRAC_DIR','TRAC_NOR'), - PRESENT_PRESENT('ORIGINE','AXE_Z'),), - - CHEMIN =SIMP(statut='f',typ=(courbe_sdaster,surface_sdaster) ), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - - TOUT_CMP =SIMP(statut='f',typ='TXM',into=("OUI",)), - NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), - INVARIANT =SIMP(statut='f',typ='TXM',into=("OUI",)), - ELEM_PRINCIPAUX =SIMP(statut='f',typ='TXM',into=("OUI",) ), - RESULTANTE =SIMP(statut='f',typ='TXM',max='**'), - - MOMENT =SIMP(statut='f',typ='TXM',max='**'), - POINT =SIMP(statut='f',typ='R',max='**'), - - REPERE =SIMP(statut='f',typ='TXM',defaut="GLOBAL", - into=("GLOBAL","LOCAL","POLAIRE","UTILISATEUR","CYLINDRIQUE"),), - ANGL_NAUT =SIMP(statut='f',typ='R',min=3,max=3), - ORIGINE =SIMP(statut='f',typ='R',min=3,max=3), - AXE_Z =SIMP(statut='f',typ='R',min=3,max=3), - - TRAC_NOR =SIMP(statut='f',typ='TXM',into=("OUI",)), - TRAC_DIR =SIMP(statut='f',typ='TXM',into=("OUI",)), - DIRECTION =SIMP(statut='f',typ='R',max='**'), - - VECT_Y =SIMP(statut='f',typ='R',max='**'), - MOYE_NOEUD =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - ), - - FORMAT_C =SIMP(statut='f',typ='TXM',defaut="MODULE",into=("MODULE","REEL","IMAG")), - - ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; -#& MODIF COMMANDE DATE 03/01/2006 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. +### en attente de résolution de AL 2004-006 (2/2) ), # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +#==== +# 7. Definition des paramètres +#==== # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -POST_USURE=OPER(nom="POST_USURE",op=153,sd_prod=table_sdaster,reentrant='f', - UIinfo={"groupes":("Post traitements",)}, - fr="Calcul des volumes d'usure et des profondeurs d'usure d'après la puissance d'usure", - regles=(UN_PARMI('TUBE_NEUF','RESU_GENE','PUIS_USURE'), - PRESENT_PRESENT('RESU_GENE','NOEUD','LOI_USURE'), - PRESENT_PRESENT('PUIS_USURE','LOI_USURE'),), - TUBE_NEUF =SIMP(statut='f',typ='TXM',into=("OUI",) ), - ETAT_INIT =FACT(statut='f', - TABL_USURE =SIMP(statut='f',typ=table_sdaster), - INST_INIT =SIMP(statut='f',typ='R'), - ), - RESU_GENE =SIMP(statut='f',typ=tran_gene), - NOEUD =SIMP(statut='f',typ=no,), - INST_INIT =SIMP(statut='f',typ='R',defaut=-1.0E+0), - INST_FIN =SIMP(statut='f',typ='R'), - NB_BLOC =SIMP(statut='f',typ='I',defaut= 1 ), - PUIS_USURE =SIMP(statut='f',typ='R'), - LOI_USURE =SIMP(statut='f',typ='TXM',into=("ARCHARD","KWU_EPRI","EDF_MZ")), - b_archard =BLOC(condition = "LOI_USURE == 'ARCHARD'", - regles=(UN_PARMI('MOBILE','MATER_USURE','SECTEUR'), - EXCLUS('MATER_USURE','OBSTACLE'), - EXCLUS('MOBILE','USURE_OBST'),), - MOBILE =FACT(statut='f', - COEF_USURE =SIMP(statut='o',typ='R'), - ), - OBSTACLE =FACT(statut='f', - COEF_USURE =SIMP(statut='o',typ='R'), - ), - SECTEUR =FACT(statut='f',max='**', - CONTACT =SIMP(statut='f',typ='TXM',into=("TUBE_BAV","TUBE_ALESAGE","TUBE_4_ENCO", - "GRAPPE_ALESAGE","TUBE_3_ENCO","TUBE_TUBE", - "GRAPPE_1_ENCO","GRAPPE_2_ENCO")), - COEF_USUR_MOBILE=SIMP(statut='f',typ='R'), - COEF_USUR_OBST =SIMP(statut='f',typ='R'), - ANGL_INIT =SIMP(statut='f',typ='R'), - ANGL_FIN =SIMP(statut='f',typ='R'), - ), - MATER_USURE =SIMP(statut='f',typ='TXM'), - USURE_OBST =SIMP(statut='f',typ='TXM',into=("OUI",)), - ), - b_kwu_epri =BLOC(condition = "LOI_USURE == 'KWU_EPRI'", - regles=(UN_PARMI('MOBILE','MATER_USURE'), - EXCLUS('MATER_USURE','OBSTACLE'), - EXCLUS('MOBILE','USURE_OBST'),), - MOBILE =FACT(statut='f', - COEF_FNOR =SIMP(statut='f',typ='R'), - COEF_VTAN =SIMP(statut='f',typ='R'), - COEF_USURE =SIMP(statut='f',typ='R'), - COEF_K =SIMP(statut='f',typ='R',defaut=5.0E+0), - COEF_C =SIMP(statut='f',typ='R',defaut=10.0E+0), - ), - OBSTACLE =FACT(statut='f', - COEF_FNOR =SIMP(statut='f',typ='R' ), - COEF_VTAN =SIMP(statut='f',typ='R' ), - COEF_USURE =SIMP(statut='o',typ='R'), - COEF_K =SIMP(statut='f',typ='R',defaut=5.0E+0), - COEF_C =SIMP(statut='f',typ='R',defaut=10.0E+0), - ), - MATER_USURE =SIMP(statut='f',typ='TXM'), - USURE_OBST =SIMP(statut='f',typ='TXM',into=("OUI",)), - FNOR_MAXI =SIMP(statut='f',typ='R' ), - VTAN_MAXI =SIMP(statut='f',typ='R' ), - ), - b_edf_mz =BLOC(condition = "LOI_USURE == 'EDF_MZ'", - regles=(UN_PARMI('MOBILE','MATER_USURE'), - EXCLUS('MATER_USURE','OBSTACLE'), - EXCLUS('MOBILE','USURE_OBST'),), - MOBILE =FACT(statut='f', - COEF_USURE =SIMP(statut='f',typ='R',defaut=1.0E-13), - COEF_B =SIMP(statut='f',typ='R',defaut=1.2E+0), - COEF_N =SIMP(statut='f',typ='R',defaut=2.44E-8), - COEF_S =SIMP(statut='f',typ='R',defaut=1.14E-16), - ), - OBSTACLE =FACT(statut='f', - COEF_USURE =SIMP(statut='o',typ='R',defaut=1.0E-13), - COEF_B =SIMP(statut='f',typ='R',defaut=1.2E+0), - COEF_N =SIMP(statut='f',typ='R',defaut=2.44E-8), - COEF_S =SIMP(statut='f',typ='R',defaut=1.14E-16), - ), - MATER_USURE =SIMP(statut='f',typ='TXM'), - USURE_OBST =SIMP(statut='f',typ='TXM',into=("OUI",)), - ), - b_tube_neuf =BLOC(condition = "TUBE_NEUF == 'OUI'", - TABL_USURE =SIMP(statut='o',typ=table_sdaster), - INST =SIMP(statut='f',typ='R'), - ), - CONTACT =SIMP(statut='f',typ='TXM',into=("TUBE_BAV","TUBE_ALESAGE","TUBE_4_ENCO", - "GRAPPE_ALESAGE","TUBE_3_ENCO","TUBE_TUBE", - "GRAPPE_1_ENCO","GRAPPE_2_ENCO")), - RAYON_MOBILE =SIMP(statut='f',typ='R'), - RAYON_OBST =SIMP(statut='f',typ='R'), - LARGEUR_OBST =SIMP(statut='f',typ='R'), - ANGL_INCLI =SIMP(statut='f',typ='R'), - ANGL_ISTHME =SIMP(statut='f',typ='R'), - ANGL_IMPACT =SIMP(statut='f',typ='R'), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - COEF_INST =SIMP(statut='f',typ='R',defaut=1.0E+0), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), - TITRE =SIMP(statut='f',typ='TXM',max='**' ), -) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. + VARIABLE = FACT(statut="o",min=1,max="**", +# +# 7.1. ==> Nom de la variable # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. + NOM = SIMP(statut="o",typ="TXM", + fr="Nom de la variable, identique au nom de concept PARA_SENSI.", + ang="Name of the variable, identical to the name of the PARA_SENSI conceipt."), # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -POST_ZAC=OPER(nom="POST_ZAC",op= 175,sd_prod=mult_elas,reentrant='n', - UIinfo={"groupes":("Post traitements",)}, - fr="Déterminer l'état adapté ou accommodé par la méthode de Zarka-Casier d'une structure sous" - +" chargement cyclique élastique affine ou non", - MODELE =SIMP(statut='o',typ=modele_sdaster), - CHAM_MATER =SIMP(statut='o',typ=cham_mater), - EXCIT =FACT(statut='o',max='**', - CHARGE =SIMP(statut='o',typ=char_meca), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE_CSTE",into=("FIXE_CSTE",)), - ), - EVOL_ELAS =SIMP(statut='o',typ=evol_elas), - b_evol_elas =BLOC(condition="EVOL_ELAS != None", - regles=(UN_PARMI('NUME_ORDRE','LIST_INST','INST'),), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - ), - TEMP_ZAC =SIMP(statut='f',typ='R',defaut=0.0E+0), - EVOL_NOLI =SIMP(statut='f',typ=evol_noli), - b_evol_noli =BLOC(condition="EVOL_NOLI != None", - INST_MAX =SIMP(statut='o',typ='R'), - ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), - -) ; -#& MODIF COMMANDE DATE 19/02/2007 AUTEUR LEFEBVRE J-P.LEFEBVRE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. +# 7.2. ==> Loi de distribution # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. + LOI = SIMP(statut="o",typ="TXM", + into=("UNIFORME","NORMALE","LOGNORMALE","NORMALE_TRONQUEE"), + fr="Choix de la loi", + ang="Law."), # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -POURSUITE=MACRO(nom="POURSUITE",op=ops.build_poursuite,repetable='n', - fr="Poursuite d'une étude à partir de la sauvegarde au format JEVEUX ou HDF de sa base globale", - sd_prod = ops.POURSUITE, - UIinfo={"groupes":("Gestion du travail",)}, - op_init = ops.POURSUITE_context,fichier_ini = 1, - FORMAT_HDF =SIMP(fr="sauvegarde de la base GLOBALE au format HDF",statut='f', - typ='TXM',defaut="NON",into=("OUI","NON",) ), - PAR_LOT =SIMP(fr="mode de traitement des commandes",statut='f',typ='TXM', - into=("OUI","NON"),defaut="OUI"), - IMPR_MACRO =SIMP(fr="affichage des sous-commandes produites par les macros dans le fichier mess", - statut='f',typ='TXM',into=("OUI","NON"),defaut="NON"), - BASE =FACT(fr="définition des paramètres associés aux bases JEVEUX", - statut='f',min=1,max=2, - FICHIER =SIMP(fr="nom de la base",statut='o',typ='TXM'), - TITRE =SIMP(statut='f',typ='TXM'), - CAS =SIMP(statut='f',typ='TXM'), - NMAX_ENRE =SIMP(fr="nombre maximum d enregistrements",statut='f',typ='I'), - LONG_ENRE =SIMP(fr="longueur des enregistrements",statut='f',typ='I'), - LONG_REPE =SIMP(fr="longueur du répertoire",statut='f',typ='I'), - ), - IMPRESSION =FACT(statut='f',min=1,max=3, - FICHIER =SIMP(statut='o',typ='TXM'), - UNITE =SIMP(statut='o',typ='I'), - ), - CATALOGUE =FACT(statut='f',min=1,max=10, - FICHIER =SIMP(statut='o',typ='TXM'), - TITRE =SIMP(statut='f',typ='TXM'), - UNITE =SIMP(statut='f',typ='I'), - ), - ERREUR =FACT(fr="comportement en cas d'erreur",statut='f',min=1,max=1, - ERREUR_F =SIMP(statut='f',typ='TXM',into=('ABORT','EXCEPTION'),defaut='ABORT'), - ), - DEBUG =FACT(fr="option de déboggage reservée aux développeurs", - statut='f',min=1,max=1, - JXVERI =SIMP(fr="vérifie l intégrité de la segmentation mémoire", - statut='f',typ='TXM',into=('OUI','NON'),defaut='NON'), - SDVERI =SIMP(fr="vérifie la conformité des SD produites par les commandes", - statut='f',typ='TXM',into=('OUI','NON')), - JEVEUX =SIMP(fr="force les déchargement sur disque", - statut='f',typ='TXM',into=('OUI','NON'),defaut='NON'), - ENVIMA =SIMP(fr="imprime les valeurs définies dans ENVIMA", - statut='f',typ='TXM',into=('TEST',)), - ), - MEMOIRE =FACT(fr="mode de gestion mémoire utilisé",statut='f',min=1,max=1, - GESTION =SIMP(statut='f',typ='TXM',into=('COMPACTE','RAPIDE'),defaut='RAPIDE'), - TYPE_ALLOCATION =SIMP(statut='f',typ='I',into=(1,2,3,4),defaut=1), - TAILLE =SIMP(statut='f',typ='I'), - TAILLE_BLOC =SIMP(statut='f',typ='R',defaut=800.), - PARTITION =SIMP(statut='f',typ='R' ), - DYNAMIQUE =SIMP(statut='f',typ='I'), - ), - RESERVE_CPU =FACT(fr="reserve de temps pour terminer une execution",statut='f',max=1, - regles=(EXCLUS('VALE','POURCENTAGE'),), - VALE =SIMP(statut='f',typ='I',val_min=0), - POURCENTAGE =SIMP(statut='f',typ='R',val_min=0.,val_max=1.0), -# valeur en pourcentage du temps maximum bornée à 180 secondes - BORNE =SIMP(statut='f',typ='I',val_min=0,defaut=180) - ), - CODE =FACT("définition d un nom pour l'esemble d'une étude", - statut='f',min=1,max=1, - NOM =SIMP(statut='o',typ='TXM'), - UNITE =SIMP(statut='f',typ='I',defaut=15), - ), -) ; -#& MODIF COMMANDE DATE 22/05/2006 AUTEUR MCOURTOI M.COURTOIS -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== - -# RESPONSABLE MCOURTOI M.COURTOIS - -from Macro.test_fichier_ops import test_fichier_ops - -TEST_FICHIER=MACRO(nom="TEST_FICHIER", op=test_fichier_ops, - UIinfo={"groupes":("Impression",)}, - fr="Tester la non régression de fichiers produits par des commandes aster", - FICHIER =SIMP(statut='o',typ='TXM',validators=LongStr(1,255)), - NB_CHIFFRE =SIMP(statut='o',typ='I',), # defaut=6 pas de defaut, il faut - EPSILON =SIMP(statut='o',typ='R',), # defaut=1.E-12 se poser la question ! - EXPR_IGNORE =SIMP(statut='f',typ='TXM',max='**', - fr="Liste d'expressions régulières permettant d'ignorer certaines lignes"), - VALE_K =SIMP(statut='o',typ='TXM' ), - REFERENCE =SIMP(statut='f',typ='TXM', - into=("ANALYTIQUE","SOURCE_EXTERNE","NON_REGRESSION","AUTRE_ASTER") ), - - b_version =BLOC(condition = "REFERENCE == 'NON_REGRESSION'", - VERSION =SIMP(statut='f',typ='TXM' ), - ), - - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), -) -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. +# 7.2.1. ==> Loi normale +# + b_normale=BLOC(condition="LOI=='NORMALE'", +# + VALE_MOY = SIMP(statut="o",typ="R",max=1, + fr="Valeur moyenne.", + ang="Mean value."), +# + ECART_TYPE = SIMP(statut="o",typ="R",max=1, + fr="Ecart type.", + ang="Standard deviation."), +# + ), +# +# 7.2.2. ==> Loi lognormale +# + b_lognormale=BLOC(condition="LOI=='LOGNORMALE'", +# + VALE_MIN = SIMP(statut="o",typ="R",max=1, + fr="Valeur minimale.", + ang="Minimal value."), +# + VALE_MOY = SIMP(statut="f",typ="R",max=1, + fr="Valeur moyenne dans l'espace de la loi normale.", + ang="Mean value in the space of the normal law."), +# + ECART_TYPE = SIMP(statut="f",typ="R",max=1, + fr="Ecart type dans l'espace de la loi normale.", + ang="Standard deviation in the space of the normal law."), +# + VALE_MOY_PHY = SIMP(statut="f",typ="R",max=1, + fr="Valeur moyenne dans l'espace physique.", + ang="Mean value in the physical space."), +# + ECART_TYPE_PHY = SIMP(statut="f",typ="R",max=1, + fr="Ecart type dans l'espace physique.", + ang="Standard deviation in the physical space."), +# + regles=(AU_MOINS_UN("VALE_MOY" ,"VALE_MOY_PHY"), + AU_MOINS_UN("ECART_TYPE","ECART_TYPE_PHY"), + EXCLUS ("VALE_MOY" ,"VALE_MOY_PHY"), + EXCLUS ("VALE_MOY" ,"ECART_TYPE_PHY"), + EXCLUS ("ECART_TYPE","VALE_MOY_PHY"), + EXCLUS ("ECART_TYPE","ECART_TYPE_PHY")), +# + ), +# +# 7.2.3. ==> Loi uniforme +# + b_uniforme=BLOC(condition="LOI=='UNIFORME'", +# + VALE_MIN = SIMP(statut="o",typ="R",max=1, + fr="Valeur minimale.", + ang="Minimal value."), +# + VALE_MAX = SIMP(statut="o",typ="R",max=1, + fr="Valeur maximale.", + ang="Maximal value."), +# + ), +# +# 7.2.4. ==> Loi normale tronquée +# + b_normale_tronquee=BLOC(condition="LOI=='NORMALE_TRONQUEE'", +# + VALE_MOY = SIMP(statut="o",typ="R",max=1, + fr="Valeur moyenne de la loi normale complète.", + ang="Mean value for the entire normal law."), +# + ECART_TYPE = SIMP(statut="o",typ="R",max=1, + fr="Ecart type de la loi normale complète.", + ang="Standard deviation for the entire normal law."), +# + VALE_MIN = SIMP(statut="o",typ="R",max=1, + fr="Valeur minimale.", + ang="Minimal value."), +# + VALE_MAX = SIMP(statut="o",typ="R",max=1, + fr="Valeur maximale.", + ang="Maximal value."), +# + ), +# +# 7.3. ==> Paramètres de calcul +# 7.3.1. ==> Soit on cherche le point de conception, soit on le connait deja # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. + regles=(EXCLUS("POINT_INI","POINT_CONCEPT"), + EXCLUS("POINT_REF","POINT_CONCEPT"),), # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -PRE_GIBI=PROC(nom="PRE_GIBI",op=49, - UIinfo={"groupes":("Gestion du travail",)}, - fr="Conversion d'un fichier de maillage GIBI au format Aster", - UNITE_GIBI =SIMP(statut='f',typ='I',defaut=19), - UNITE_MAILLAGE =SIMP(statut='f',typ='I',defaut=20), -) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. +# 7.3.2. ==> Quand on cherche le point de conception, on peut préciser le départ de l'algorithme. +# Si on ne le fait pas, le programme prendra la valeur moyenne. # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. + POINT_INI = SIMP(statut="f",typ="R",max=1, + fr="Point de démarrage de l'algorithme itératif.", + ang="Initial point for iterative process."), # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== - -PRE_GMSH=PROC(nom="PRE_GMSH",op=47, - UIinfo={"groupes":("Gestion du travail",)}, - fr="Conversion d'un fichier de maillage GMSH au format Aster", - UNITE_GMSH =SIMP(statut='f',typ='I',defaut=19), - UNITE_MAILLAGE =SIMP(statut='f',typ='I',defaut=20), -) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. +# 7.3.3. ==> Quand on cherche le point de conception, on peut préciser un point de référence pour normaliser. +# Si on ne le fait pas, le programme prendra la valeur moyenne. # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. + POINT_REF = SIMP(statut="f",typ="R",max=1, + fr="Point de référence de l'algorithme itératif.", + ang="Reference point for iterative process."), # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -PRE_IDEAS=PROC(nom="PRE_IDEAS",op=47, - UIinfo={"groupes":("Gestion du travail",)}, - fr="Conversion d'un fichier universel IDEAS-SUPERTAB au format Aster", - UNITE_IDEAS =SIMP(statut='f',typ='I',defaut=19), - UNITE_MAILLAGE =SIMP(statut='f',typ='I',defaut=20), - CREA_GROUP_COUL =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), -) ; -#& MODIF COMMANDE DATE 15/05/2006 AUTEUR ASSIRE A.ASSIRE +# 7.3.4. ==> Quand on cherche uniquement la probabilité de défaillance, il faut donner le point de conception +# + POINT_CONCEPT = SIMP(statut="f",typ="R",max=1, + fr="Point de conception.", + ang="Design point."), +# +# 7.4. ==> Mode d'obtention du gradient par rapport à ce paramètre +# + GRADIENT = SIMP(statut="o",typ="TXM",max=1, + into=("OUI","NON"), + fr="ASTER calcule directement le gradient.", + ang="ASTER computes the gradient for this parameter."), + + b_gradient=BLOC(condition="GRADIENT=='NON'", + INCREMENT = SIMP(statut="o",typ="R",max=1, + fr="Incrément dans la direction.", + ang="Direction increment."), + ), + + ), +# +); +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG @@ -19645,168 +18029,59 @@ PRE_IDEAS=PROC(nom="PRE_IDEAS",op=47, # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== +# RESPONSABLE GNICOLAS G.NICOLAS -from Macro.stanley_ops import stanley_ops - -STANLEY=MACRO(nom="STANLEY",op=stanley_ops,sd_prod=None, - reentrant='n', - UIinfo={"groupes":("Outils métier",)}, - fr="Outil de post-traitement interactif Stanley ", - RESULTAT =SIMP(statut='f',typ=(evol_elas,evol_noli,evol_ther,mode_meca,mode_stat,dyna_harmo,dyna_trans) ), - MODELE =SIMP(statut='f',typ=modele_sdaster), - CHAM_MATER =SIMP(statut='f',typ=cham_mater), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - DISPLAY =SIMP(statut='f',typ='TXM'), - UNITE_VALIDATION=SIMP(statut='c',typ='I',val_min=10,val_max=90, - fr="Unité logique définissant le fichier (fort.N) dans lequel on écrit les md5"), +from Macro.macr_fiab_impr_ops import macr_fiab_impr_ops -) ; -#& MODIF COMMANDE DATE 21/02/2006 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. +MACR_FIAB_IMPR=MACRO(nom="MACR_FIAB_IMPR",op=macr_fiab_impr_ops, + docu="U7.04.41",UIinfo={"groupe":("Impression",)}, + fr="Imprimer les valeurs à transmettre au logiciel de fiabilité.", + ang="Print values for the fiability software", # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# 1. Le niveau d'information # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== - -PROD_MATR_CHAM=OPER(nom="PROD_MATR_CHAM",op= 156,sd_prod=cham_no_sdaster, - fr="Effectuer le produit d'une matrice par un vecteur", - reentrant='n', - UIinfo={"groupes":("Résultats et champs",)}, - MATR_ASSE =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_temp_r,matr_asse_pres_c ) ), - CHAM_NO =SIMP(statut='o',typ=cham_no_sdaster), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; -#& MODIF COMMANDE DATE 12/09/2006 AUTEUR VABHHTS J.PELLET -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. + INFO = SIMP(statut='f',typ='I',defaut=1,into=(1,2)), # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# 2. Impression de la valeur de la cible # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE VABHHTS J.PELLET -def proj_champ_prod(RESULTAT=None,CHAM_NO_REFE=None,**args ): - if AsType(RESULTAT) == evol_ther : return evol_ther - if AsType(RESULTAT) == evol_elas : return evol_elas - if AsType(RESULTAT) == evol_noli : return evol_noli - if AsType(RESULTAT) == evol_char : return evol_char - if AsType(RESULTAT) == dyna_trans : return dyna_trans - if AsType(RESULTAT) == dyna_harmo : return dyna_harmo - if AsType(RESULTAT) == mode_meca : return mode_meca - if AsType(RESULTAT) == mode_stat_depl : return mode_stat_depl - if AsType(RESULTAT) == base_modale : return base_modale - if CHAM_NO_REFE != None : return cham_no_sdaster - raise AsException("type de concept resultat non prevu") - -PROJ_CHAMP=OPER(nom="PROJ_CHAMP",op= 166,sd_prod=proj_champ_prod,reentrant='f', - UIinfo={"groupes":("Résultats et champs",)}, - fr="Projeter les champs aux noeuds d'une SD résultat de type evol_xxx sur un autre maillage", +# 2.1. ==> La table contenant la valeur à imprimer +# + TABLE_CIBLE = SIMP(statut='o',typ=table_sdaster, + fr="Table contenant la valeur cible.", + ang="Table which includes the target value."), +# +# 2.2. ==> Le nom du paramètre associé à la valeur cible dans cette table +# + NOM_PARA_CIBLE = SIMP(statut='o',typ='TXM', + fr="Nom du paramètre associé à la valeur cible.", + ang="Name of the parameter connected to the target value."), +# +# 3. Impressions des valeurs des éventuels gradients +# + GRADIENTS = FACT(statut='f',min=1,max='**', +# +# 3.1. ==> La table contenant la valeur à imprimer +# + TABLE = SIMP(statut='o',typ=table_sdaster, + fr="Table contenant le gradient.", + ang="Table which includes the gradient."), +# +# 3.2. ==> Le paramètre sensible +# + PARA_SENSI = SIMP(statut='o',typ=(para_sensi,theta_geom), + fr="Paramètre sensible associé au gradient.", + ang="Sensitivity parameter connected to the gradient."), +# +# 3.3. ==> Le nom du paramètre associé au gradient dans cette table +# + NOM_PARA = SIMP(statut='o',typ='TXM', + fr="Nom du paramètre associé au gradient.", + ang="Name of the parameter connected to the gradient."), # - METHODE =SIMP(statut='f',typ='TXM',defaut="ELEM", - into=("NUAGE_DEG_0","NUAGE_DEG_1","ELEM",) ), - b_nuage =BLOC(condition="(METHODE=='NUAGE_DEG_1') or (METHODE=='NUAGE_DEG_0')", - fr="Lissage d'un nuage de points", - CHAM_NO =SIMP(statut='o',typ=cham_no_sdaster), - CHAM_NO_REFE =SIMP(statut='o',typ=cham_no_sdaster), - ), - b_elem =BLOC(condition="METHODE=='ELEM'", - fr="Utilisation des fonctions de forme du maillage initial", - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','LIST_INST','LIST_FREQ','LIST_ORDRE'), - EXCLUS('TOUT_CHAM','NOM_CHAM',), - CONCEPT_SENSIBLE('SEPARE'), - REUSE_SENSIBLE(), - DERIVABLE('RESULTAT'),), - RESULTAT =SIMP(statut='o',typ=(evol_ther,evol_elas,evol_noli,dyna_trans,evol_char,dyna_harmo, - mode_meca,mode_stat_depl,base_modale) ), - SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', - fr="Liste des paramètres de sensibilité.", - ang="List of sensitivity parameters",), - MODELE_1 =SIMP(statut='o',typ=modele_sdaster), - MODELE_2 =SIMP(statut='o',typ=modele_sdaster), - - NOM_PARA =SIMP(statut='f',typ='TXM', max='**'), - TOUT_CHAM =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - -# POUR IMPOSER LA NUMEROTATION DES DDLS : -# ------------------------------------------------------------------ - NUME_DDL =SIMP(statut='f',typ=(nume_ddl_sdaster) ), - - - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), - NOEUD_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), - - - CAS_FIGURE =SIMP(statut='f',typ='TXM',into=("2D","3D","2.5D","1.5D",) ), - DISTANCE_MAX =SIMP(statut='f',typ='R', - fr="Distance maximale entre le noeud et l'élément le plus proche, lorsque le noeud n'est dans aucun élément."), - TRANSF_GEOM_2 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule),min=2,max=3, - fr="2 (ou 3) fonctions fx,fy,fz définissant la transformation géométrique à appliquer"+ - " aux noeuds du MODELE_2 avant la projection."), - - ALARME =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - - TYPE_CHAM =SIMP(statut='f',typ='TXM',into=("NOEU",), - fr="Pour forcer le type des champs projetés. NOEU -> cham_no"), - - PROL_ZERO =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON", - fr="Si le résultat est un mode_xxx ou une base_xxx, on peut prolonger" - +" les champs par zéro la ou la projection ne donne pas de valeurs."), - - ), - - VIS_A_VIS =FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT_1','GROUP_MA_1','MAILLE_1','GROUP_NO_1','NOEUD_1'), - AU_MOINS_UN('TOUT_2','GROUP_MA_2','MAILLE_2','GROUP_NO_2','NOEUD_2'),), - TOUT_1 =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA_1 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_1 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO_1 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_1 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - TOUT_2 =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA_2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_2 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_NO_2 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD_2 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - CAS_FIGURE =SIMP(statut='f',typ='TXM',into=("2D","3D","2.5D","1.5D",) ), - TRANSF_GEOM_2 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule),min=2,max=3, - fr="2 (ou 3) fonctions fx,fy,fz définissant la transformation géométrique à appliquer"+ - " aux noeuds du MODELE_2 avant la projection."), ), - - TITRE =SIMP(statut='f',typ='TXM',max='**' ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), -) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +# +); +#& MODIF COMMANDE DATE 15/05/2007 AUTEUR GNICOLAS G.NICOLAS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -19824,434 +18099,210 @@ PROJ_CHAMP=OPER(nom="PROJ_CHAMP",op= 166,sd_prod=proj_champ_prod,reentrant='f', # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -def matr_asse_gene_prod(MATR_ASSE,MATR_ASSE_GENE,**args): - if AsType(MATR_ASSE) == matr_asse_depl_r : return matr_asse_gene_r - if AsType(MATR_ASSE_GENE) == matr_asse_gene_r : return matr_asse_gene_r - if AsType(MATR_ASSE) == matr_asse_depl_c : return matr_asse_gene_c - if AsType(MATR_ASSE_GENE) == matr_asse_gene_c : return matr_asse_gene_c - raise AsException("type de concept resultat non prevu") +# RESPONSABLE GNICOLAS G.NICOLAS -PROJ_MATR_BASE=OPER(nom="PROJ_MATR_BASE",op= 71,sd_prod=matr_asse_gene_prod, - fr="Projection d'une matrice assemblée sur une base (modale ou de RITZ)", - reentrant='n', - UIinfo={"groupes":("Matrices/vecteurs",)}, - regles=(UN_PARMI('MATR_ASSE','MATR_ASSE_GENE'),), - BASE =SIMP(statut='o',typ=(mode_meca,base_modale,mode_gene,mode_stat ) ), - NUME_DDL_GENE =SIMP(statut='o',typ=nume_ddl_gene ), - MATR_ASSE =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_depl_c) ), - MATR_ASSE_GENE =SIMP(statut='f',typ=(matr_asse_gene_r,matr_asse_gene_c) ), -) ; +from Macro.macr_adap_mail_ops import macr_adap_mail_ops -#& MODIF COMMANDE DATE 19/06/2006 AUTEUR VABHHTS J.PELLET -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. +MACR_INFO_MAIL=MACRO(nom="MACR_INFO_MAIL",op=macr_adap_mail_ops, + docu="U7.03.02-b",UIinfo={"groupe":("Maillage",)}, + fr="Donner des informations sur un maillage.", + ang="To give information about a mesh.", # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# 1. Le niveau d'information # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -def proj_mesu_modal_prod(MODELE_MESURE,**args): - vale=MODELE_MESURE['MESURE'] - if AsType(vale) == dyna_trans : return tran_gene - if AsType(vale) == dyna_harmo : return harm_gene - if AsType(vale) == mode_meca : return mode_gene -# if AsType(vale) == mode_meca_c : return mode_gene_c - if AsType(vale) == base_modale : return mode_gene - raise AsException("type de concept resultat non prevu") - -PROJ_MESU_MODAL=OPER(nom="PROJ_MESU_MODAL",op= 193, - sd_prod=proj_mesu_modal_prod, - reentrant='n', - UIinfo={"groupes":("Résultats et champs",)}, - fr="Calcul des coordonnees généralisees de mesure experimentale relatives a une base de projection", - - MODELE_CALCUL =FACT(statut='o', - MODELE =SIMP(statut='o',typ=(modele_sdaster) ), - BASE =SIMP(statut='o',typ=(mode_meca,base_modale,) ), - ), - MODELE_MESURE =FACT(statut='o', - MODELE =SIMP(statut='o',typ=(modele_sdaster) ), - MESURE =SIMP(statut='o',typ=(dyna_trans,dyna_harmo,base_modale,mode_meca,mode_meca_c,) ), - NOM_CHAM =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL","VITE","ACCE","SIEF_NOEU","EPSI_NOEU_DEPL",) ), - ), - CORR_MANU =FACT(statut='f',max='**', - regles=(PRESENT_PRESENT('NOEU_CALCUL','NOEU_MESURE'),), - NOEU_CALCUL =SIMP(statut='f',typ=no), - NOEU_MESURE =SIMP(statut='f',typ=no), - ), - NOM_PARA =SIMP(statut='f',typ='TXM',max='**'), - RESOLUTION =FACT(statut='f', - METHODE =SIMP(statut='f',typ='TXM',defaut="LU",into=("LU","SVD",) ), - b_svd =BLOC(condition="METHODE=='SVD'", - EPS=SIMP(statut='f',typ='R',defaut=0. ), - ), - REGUL =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","NORM_MIN","TIK_RELA",) ), - b_regul =BLOC(condition="REGUL!='NON'", - regles=(PRESENT_ABSENT('COEF_PONDER','COEF_PONDER_F', ),), - COEF_PONDER =SIMP(statut='f',typ='R',defaut=0. ,max='**' ), - COEF_PONDER_F =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule),max='**' ), - ), - ), - - ); -#& MODIF COMMANDE DATE 10/10/2006 AUTEUR MCOURTOI M.COURTOIS -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. + INFO = SIMP(statut='f',typ='I',defaut=1,into=(1,2)), # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# 2. Version de HOMARD # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -PROJ_SPEC_BASE=OPER(nom="PROJ_SPEC_BASE",op= 146,sd_prod=table_fonction,reentrant='n', - UIinfo={"groupes":("Matrices/vecteurs",)}, - fr="Projecter un ou plusieurs spectres de turbulence sur une (ou plusieurs) base(s) modale(s) ", - regles=(UN_PARMI('BASE_ELAS_FLUI','MODE_MECA','CHAM_NO'), - ENSEMBLE('FREQ_INIT','FREQ_FIN','NB_POIN'),), - SPEC_TURB =SIMP(statut='o',typ=spectre_sdaster,validators=NoRepeat(),max='**' ), - TOUT_CMP =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - BASE_ELAS_FLUI =SIMP(statut='f',typ=melasflu_sdaster ), - MODE_MECA =SIMP(statut='f',typ=mode_meca ), - CHAM_NO =SIMP(statut='f',typ=cham_no_sdaster), - FREQ_INIT =SIMP(statut='f',typ='R',val_min=0.E+0 ), - FREQ_FIN =SIMP(statut='f',typ='R',val_min=0.E+0 ), - NB_POIN =SIMP(statut='f',typ='I' ), - OPTION =SIMP(statut='f',typ='TXM',defaut="TOUT",into=("TOUT","DIAG")), - GROUP_MA =SIMP(statut='f',typ=grma), -# Quel est le type attendu derriere MODELE_INTERFACE - MODELE_INTERFACE=SIMP(statut='f',typ=modele_sdaster), - VECT_X =SIMP(statut='f',typ='R',min=3,max=3 ), - VECT_Y =SIMP(statut='f',typ='R',min=3,max=3 ), - ORIG_AXE =SIMP(statut='f',typ='R',min=3,max=3 ), - TITRE =SIMP(statut='f',typ='TXM',max='**' ), -) ; -#& MODIF COMMANDE DATE 21/02/2006 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. + VERSION_HOMARD = SIMP(statut='f',typ='TXM',defaut="V8_7", + into=("V8_7", "V8_N", "V8_N_PERSO"), + fr="Version de HOMARD", + ang="HOMARD release"), # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# 3. Langue des messages issus de HOMARD # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== - -PROJ_VECT_BASE=OPER(nom="PROJ_VECT_BASE",op= 72,sd_prod=vect_asse_gene, - fr="Projection d'un vecteur assemblé sur une base (modale ou de RITZ)", - reentrant='n', - UIinfo={"groupes":("Matrices/vecteurs",)}, - regles=(UN_PARMI('VECT_ASSE','VECT_ASSE_GENE'),), - BASE =SIMP(statut='o',typ=(mode_meca,base_modale,mode_gene,mode_stat ) ), - NUME_DDL_GENE =SIMP(statut='o',typ=nume_ddl_gene ), - TYPE_VECT =SIMP(statut='f',typ='TXM',defaut="FORC"), - VECT_ASSE =SIMP(statut='f',typ=cham_no_sdaster), - VECT_ASSE_GENE =SIMP(statut='f',typ=vect_asse_gene ), -) ; -#& MODIF COMMANDE DATE 03/01/2006 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. + LANGUE = SIMP(statut='f',typ='TXM',defaut="FRANCAIS", + into=("FRANCAIS","FRENCH","ANGLAIS","ENGLISH",), + fr="Langue des messages issus de HOMARD.", + ang="Language for HOMARD messages." ), # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# 4. Le nom du maillage a analyser # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -RECA_WEIBULL=OPER(nom="RECA_WEIBULL",op= 197,sd_prod=table_sdaster, - fr="Recaler les paramètres du modèle de WEIBULL sur des données expérimentales",reentrant='n', - UIinfo={"groupes":("Post traitements",)}, - LIST_PARA =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=2,into=("SIGM_REFE","M",) ), - RESU =FACT(statut='o',max='**', - regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST',), - AU_MOINS_UN('TOUT','GROUP_MA','MAILLE', ),), - EVOL_NOLI =SIMP(statut='o',typ=(evol_noli) ), - MODELE =SIMP(statut='o',typ=(modele_sdaster) ), - CHAM_MATER =SIMP(statut='o',typ=(cham_mater) ), - TEMPE =SIMP(statut='f',typ='R' ), - LIST_INST_RUPT =SIMP(statut='o',typ='R',validators=NoRepeat(),max='**' ), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - LIST_INST =SIMP(statut='f',typ=(listr8_sdaster) ), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - COEF_MULT =SIMP(statut='f',typ='R',defaut= 1.E0 ), - ), - OPTION =SIMP(statut='f',typ='TXM',defaut="SIGM_ELGA",into=("SIGM_ELGA","SIGM_ELMOY",) ), - CORR_PLAST =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ), - METHODE =SIMP(statut='f',typ='TXM',defaut="MAXI_VRAI",into=("MAXI_VRAI","REGR_LINE",) ), - INCO_GLOB_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ,) ), - ) ; -#& MODIF COMMANDE DATE 07/11/2006 AUTEUR DURAND C.DURAND -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. + MAILLAGE = SIMP(statut='o',typ=maillage_sdaster, + fr="Maillage à analyser.", + ang="Mesh to be checked." ), +# +# 5. Suivi d'une frontiere +# + MAILLAGE_FRONTIERE = SIMP(statut='f',typ=maillage_sdaster, + fr="Maillage de la frontiere à suivre", + ang="Boundary mesh" ), +# + b_frontiere = BLOC( condition = " MAILLAGE_FRONTIERE != None " , + fr="Information complémentaire sur la frontière", + ang="Further information about boundary", +# + GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', + fr="Groupes de mailles définissant la frontière", + ang="Mesh groups which define the boundary" ), +# + ) , +# +# 6. Les options ; par defaut, on controle tout +# 6.1. Nombre de noeuds et elements +# + NOMBRE = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"), + fr="Nombre de noeuds et éléments du maillage", + ang="Number of nodes and elements in the mesh" ), # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# 6.2. Determination de la qualite des elements du maillage # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. + QUALITE = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"), + fr="Qualité du maillage", + ang="Mesh quality" ), +# +# 6.3. Connexite du maillage +# + CONNEXITE = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"), + fr="Connexité du maillage.", + ang="Mesh connexity." ), +# +# 6.4. Taille des sous-domaines du maillage +# + TAILLE = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"), + fr="Tailles des sous-domaines du maillage.", + ang="Sizes of mesh sub-domains." ), +# +# 6.5. Controle de la non-interpenetration des elements +# + INTERPENETRATION=SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"), + fr="Controle de la non interpénétration des éléments.", + ang="Overlapping checking." ), +# +# 7. Gestion des éléments autres que ceux compatibles avec HOMARD +# "REFUSER" : ils sont refuses (defaut) +# "IGNORER" : ils sont ignorés +# + ELEMENTS_NON_HOMARD = SIMP(statut='f',typ='TXM',defaut="REFUSER",into=("REFUSER","IGNORER"), + fr="Acceptation d'éléments incompatibles avec HOMARD", + ang="Incompatible elements for HOMARD" ), +) ; +#& MODIF COMMANDE DATE 22/05/2007 AUTEUR GALENNE E.GALENNE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE MCOURTOI M.COURTOIS -def recu_fonction_prod(RESULTAT=None,TABLE=None,RESU_GENE=None, - BASE_ELAS_FLUI=None,CHAM_GD=None,NAPPE=None, - NOM_PARA_TABL=None,**args): - if AsType(RESULTAT) == dyna_harmo or \ - AsType(RESU_GENE) == harm_gene or \ - (TABLE != None and NOM_PARA_TABL == "FONCTION_C"): - return fonction_c - else: - return fonction_sdaster - -RECU_FONCTION=OPER(nom="RECU_FONCTION",op=90,sd_prod=recu_fonction_prod, - fr="Extraire sous forme d'une fonction, l'évolution d'une grandeur en fonction d'une autre", - reentrant='f', - UIinfo={"groupes":("Fonction",)}, - regles=(UN_PARMI('CHAM_GD','RESULTAT','RESU_GENE','TABLE','BASE_ELAS_FLUI','NAPPE'),), - - CHAM_GD =SIMP(statut='f',typ=(cham_no_sdaster, - cham_elem,),), - RESULTAT =SIMP(statut='f',typ=(evol_elas,dyna_trans,evol_noli,evol_ther,dyna_harmo ) ), - RESU_GENE =SIMP(statut='f',typ=(tran_gene, mode_gene, harm_gene)), - TABLE =SIMP(statut='f',typ=(table_sdaster,table_fonction)), - BASE_ELAS_FLUI =SIMP(statut='f',typ=melasflu_sdaster), - NAPPE =SIMP(statut='f',typ=nappe_sdaster), - -# ======= SENSIBILITE ================================================= - b_sensibilite =BLOC(condition="RESULTAT != None", - fr="Définition des paramètres de sensibilité", - ang="Definition of sensitivity parameters", - regles=(CONCEPT_SENSIBLE('SEPARE'), REUSE_SENSIBLE(), - DERIVABLE('RESULTAT'),), - SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', - fr="Liste des paramètres de sensibilité.", - ang="List of sensitivity parameters"),), -# ======= ACCES A LA SD RESULTAT ================================================= - b_acces = BLOC ( condition = "(RESULTAT != None) or (RESU_GENE != None)", - fr="acces a une SD résultat", -# on ne peut pas mettre de regles, le défaut TOUT_ORDRE est pris en compte dans le fortran - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster ), - TOUT_INST =SIMP(statut='f',typ='TXM',into=("OUI",) ), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster ), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - b_prec = BLOC ( condition = "(INST != None) or (LIST_INST != None) or (FREQ != None) or (LIST_FREQ != None)", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - INTERP_NUME =SIMP(statut='f',typ='TXM',into=("NON","LIN") ), - ), - ), -# ======= BASE_ELAS_FLUI ================================================= - b_base_elas_flui = BLOC ( condition = "BASE_ELAS_FLUI != None", - fr="Récupération de la fonction à partir d un concept melasflu", - regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE'),), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - NUME_MODE =SIMP(statut='o',typ='I' ), - PARA_X =SIMP(statut='o',typ='TXM',into=("VITE_FLU",) ), - PARA_Y =SIMP(statut='o',typ='TXM',into=("FREQ","AMOR") ), - ), - -# ======= TABLE ================================================= - b_table = BLOC ( condition = "TABLE != None", - fr="Récupération de la fonction à partir d un concept table", - regles=(UN_PARMI('PARA_X','NOM_PARA_TABL'), - PRESENT_PRESENT('PARA_X','PARA_Y'),), - PARA_X = SIMP(statut='f',typ='TXM', - fr="1ère colonne de la table qui définit la fonction à récupérer", ), - PARA_Y = SIMP(statut='f',typ='TXM', - fr="2ème colonne de la table qui définit la fonction à récupérer", ), - #b_tabl_fonc = BLOC(condition = "AsType(TABLE) == table_fonction", - NOM_PARA_TABL = SIMP(statut='f',typ='TXM',into=("FONCTION","FONCTION_C"), - fr="Nom du paramètre de la table contenant la fonction" ), - #), - - FILTRE = FACT(statut='f',max='**', - NOM_PARA =SIMP(statut='o',typ='TXM' ), - CRIT_COMP =SIMP(statut='f',typ='TXM',defaut="EQ", - into=("EQ","LT","GT","NE","LE","GE","VIDE", - "NON_VIDE","MAXI","ABS_MAXI","MINI","ABS_MINI") ), - b_vale =BLOC(condition = "(CRIT_COMP in ('EQ','NE','GT','LT','GE','LE'))", - regles=(UN_PARMI('VALE','VALE_I','VALE_K','VALE_C',),), - VALE =SIMP(statut='f',typ='R' ), - VALE_I =SIMP(statut='f',typ='I' ), - VALE_C =SIMP(statut='f',typ='C' ), - VALE_K =SIMP(statut='f',typ='TXM' ),), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - ), - ), +from Macro.macr_lign_coupe_ops import macr_lign_coupe_ops -# ======= RESULTAT ================================================= - b_resu = BLOC ( condition = "RESULTAT != None", fr="Opérandes en cas de RESULTAT", - regles=(UN_PARMI('NOM_CHAM','NOM_PARA_RESU'),), - NOM_CHAM =SIMP(statut='f',typ='TXM',into=C_NOM_CHAM_INTO()), - NOM_PARA_RESU =SIMP(statut='f',typ='TXM' ), - b_cham = BLOC ( condition = "NOM_CHAM != None", - regles=(AU_MOINS_UN('MAILLE','GROUP_MA','GROUP_NO','NOEUD'), - PRESENT_ABSENT('POINT','NOEUD','GROUP_NO'), - PRESENT_ABSENT('SOUS_POINT','NOEUD','GROUP_NO'), - EXCLUS('GROUP_MA','MAILLE'), - EXCLUS('GROUP_NO','NOEUD'),), - NOM_CMP =SIMP(statut='o',typ='TXM' ), - MAILLE =SIMP(statut='f',typ=ma), - GROUP_MA =SIMP(statut='f',typ=grma), - NOEUD =SIMP(statut='f',typ=no), - GROUP_NO =SIMP(statut='f',typ=grno), - POINT =SIMP(statut='f',typ='I' ), - SOUS_POINT =SIMP(statut='f',typ='I' ), - ), - ), +MACR_LIGN_COUPE=MACRO(nom="MACR_LIGN_COUPE",op=macr_lign_coupe_ops,sd_prod=table_sdaster, + reentrant='n', + UIinfo={"groupes":("Outils métier",)}, + fr="Extraction des valeurs d'un résultat dans une ou plusieurs tables sur des lignes de coupe définies" + +" par deux points et un intervalle", + regles=(UN_PARMI("RESULTAT","CHAM_GD"),), + + RESULTAT =SIMP(statut='f',typ=(evol_elas,evol_noli,evol_ther) ), + CHAM_GD =SIMP(statut='f',typ=(cham_gd_sdaster)), -# ======= RESU_GENE ================================================= - b_tran_gene = BLOC ( condition = "AsType(RESU_GENE) == tran_gene", - fr="Récupération d'une fonction à partir d un concept TRAN_GENE", - regles=(UN_PARMI('NOM_CHAM','NOEUD_CHOC','GROUP_NO_CHOC'),), - NOM_CHAM =SIMP(statut='f',typ='TXM',into=("DEPL","VITE","ACCE","PTEM") ), - NOEUD_CHOC =SIMP(statut='f',typ=no), - GROUP_NO_CHOC =SIMP(statut='f',typ=grno), - b_cham = BLOC ( condition = "(NOM_CHAM=='DEPL') or (NOM_CHAM=='VITE') or (NOM_CHAM=='ACCE')", - regles=(UN_PARMI('GROUP_NO','NOEUD'), - EXCLUS('MULT_APPUI','CORR_STAT'),), - NOM_CMP =SIMP(statut='o',typ='TXM' ), - NOEUD =SIMP(statut='f',typ=no), - GROUP_NO =SIMP(statut='f',typ=grno), - MULT_APPUI =SIMP(statut='f',typ='TXM',into=("OUI",) ), - CORR_STAT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - ACCE_MONO_APPUI =SIMP(statut='f',typ=(fonction_sdaster,formule)), - ), - b_choc = BLOC ( condition = "(NOEUD_CHOC != None) or (GROUP_NO_CHOC != None)", - regles=(PRESENT_PRESENT('SOUS_STRUC','INTITULE'),), - PARA_X =SIMP(statut='o',typ='TXM', - into=("INST","FN","FT1","FT2","VN","VT1","VT2","DXLOC","DYLOC","DZLOC") ), - PARA_Y =SIMP(statut='o',typ='TXM', - into=("INST","FN","FT1","FT2","VN","VT1","VT2","DXLOC","DYLOC","DZLOC") ), - LIST_PARA =SIMP(statut='f',typ=listr8_sdaster ), - INTITULE =SIMP(statut='f',typ='TXM' ), - SOUS_STRUC =SIMP(statut='f',typ='TXM' ), - ), - ), - b_harm_gene = BLOC ( condition = "AsType(RESU_GENE)==harm_gene", - fr="Récupération d'une fonction à partir d un concept HARM_GENE", - regles=(UN_PARMI('NOM_CHAM','NOM_PARA_RESU'),), - NOM_CHAM =SIMP(statut='f',typ='TXM',into=C_NOM_CHAM_INTO()), - NOM_PARA_RESU =SIMP(statut='f',typ='TXM' ), - b_cham = BLOC ( condition = "NOM_CHAM != None", - regles=(UN_PARMI('NUME_CMP_GENE','NOM_CMP'),), - NUME_CMP_GENE =SIMP(statut='f',typ='I' ), - NOM_CMP =SIMP(statut='f',typ='TXM' ), - b_cmp = BLOC ( condition = "NOM_CMP != None", - regles=(UN_PARMI('NOEUD','GROUP_NO'),), - NOEUD =SIMP(statut='f',typ=no), - GROUP_NO =SIMP(statut='f',typ=grno), - ), - ), - ), - b_mode_gene = BLOC ( condition = "AsType(RESU_GENE)==mode_gene", - fr="Récupération d'une fonction à partir d un concept MODE_GENE", - regles=(UN_PARMI('NOM_CHAM','NOM_PARA_RESU'),), - NOM_CHAM =SIMP(statut='f',typ='TXM',into=C_NOM_CHAM_INTO()), - NOM_PARA_RESU =SIMP(statut='f',typ='TXM' ), - b_cham = BLOC ( condition = "NOM_CHAM != None", - regles=(UN_PARMI('NUME_CMP_GENE','NOM_CMP'),), - NUME_CMP_GENE =SIMP(statut='f',typ='I' ), - NOM_CMP =SIMP(statut='f',typ='TXM' ), - b_cmp = BLOC ( condition = "NOM_CMP != None", - regles=(UN_PARMI('NOEUD','GROUP_NO'), - UN_PARMI('SQUELETTE','SOUS_STRUC'),), - NOEUD =SIMP(statut='f',typ=no), - GROUP_NO =SIMP(statut='f',typ=grno), - SQUELETTE =SIMP(statut='f',typ=squelette ), - SOUS_STRUC =SIMP(statut='f',typ='TXM' ), - ), + b_extrac =BLOC(condition = "RESULTAT != None",fr="extraction des résultats", + regles=(EXCLUS('NUME_ORDRE','LIST_ORDRE','INST','LIST_INST',), ), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_INST =SIMP(statut='f',typ=listr8_sdaster), + PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-6), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), ), - ), -# ======= CHAM_GD ================================================= - b_cham_gd = BLOC ( condition = "(CHAM_GD != None)", fr="Opérandes en cas de CHAM_GD", - regles=(AU_MOINS_UN('MAILLE','GROUP_MA','GROUP_NO','NOEUD'), - PRESENT_ABSENT('POINT','NOEUD','GROUP_NO'), - PRESENT_ABSENT('SOUS_POINT','NOEUD','GROUP_NO'), - EXCLUS('GROUP_MA','MAILLE'), - EXCLUS('GROUP_NO','NOEUD'),), - NOM_CMP =SIMP(statut='o',typ='TXM' ), - MAILLE =SIMP(statut='f',typ=ma), - GROUP_MA =SIMP(statut='f',typ=grma), - NOEUD =SIMP(statut='f',typ=no), - GROUP_NO =SIMP(statut='f',typ=grno), - POINT =SIMP(statut='f',typ='I' ), - SOUS_POINT =SIMP(statut='f',typ='I' ), +# extraction des résultats + b_meca =BLOC(condition = "AsType(RESULTAT) in (evol_elas,evol_noli)",fr="résultat mécanique", + NOM_CHAM =SIMP(statut='f',typ='TXM',defaut='SIGM_NOEU_DEPL' ), ), - -# ======= NAPPE ================================================= - b_nappe = BLOC ( condition = "(NAPPE != None)", fr="Opérandes en cas de NAPPE", - VALE_PARA_FONC =SIMP(statut='o',typ='R' ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + b_ther =BLOC(condition = "AsType(RESULTAT) in (evol_ther,)",fr="résultat thermique", + NOM_CHAM =SIMP(statut='f',typ='TXM',defaut='TEMP' ), ), + b_cham =BLOC(condition = "CHAM_GD!=None", + NOM_CHAM =SIMP(statut='f',typ='TXM',),), -# ======= SURCHARGE DES ATTRIBUTS ================================================= - NOM_PARA =SIMP(statut='f',typ='TXM', into=C_PARA_FONCTION() ), - NOM_RESU =SIMP(statut='f',typ='TXM' ), - INTERPOL =SIMP(statut='f',typ='TXM',max=2,into=("NON","LIN","LOG") ), - PROL_DROITE =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ), - PROL_GAUCHE =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ), + UNITE_MAILLAGE =SIMP(statut='f',typ='I',defaut=25), + MODELE =SIMP(statut='f',typ=modele_sdaster ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ), + VIS_A_VIS =FACT(statut='f',max='**', + regles=(EXCLUS('GROUP_MA_1','MAILLE_1'),), + GROUP_MA_1 =SIMP(statut='f',typ=grma), + MAILLE_1 =SIMP(statut='f',typ=ma,max='**'),), + + LIGN_COUPE =FACT(statut='o',max='**', + regles=(EXCLUS("NOM_CMP","INVARIANT","ELEM_PRINCIPAUX","RESULTANTE"), + PRESENT_PRESENT("TRAC_DIR","DIRECTION"), + EXCLUS("TRAC_DIR","TRAC_NOR"), + PRESENT_PRESENT("TRAC_DIR","NOM_CMP"), + PRESENT_PRESENT("TRAC_NOR","NOM_CMP"),), + + INTITULE =SIMP(statut='f',typ='TXM',), + TYPE =SIMP(statut='o',typ='TXM',max=1, + into=("GROUP_NO","SEGMENT","ARC","GROUP_MA"),defaut="SEGMENT"), + REPERE =SIMP(statut='f',typ='TXM',defaut="GLOBAL", + into=("GLOBAL","LOCAL","POLAIRE","UTILISATEUR","CYLINDRIQUE"),), + OPERATION =SIMP(statut='f',typ='TXM',into=("EXTRACTION","MOYENNE",),defaut="EXTRACTION",), + + NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), + INVARIANT =SIMP(statut='f',typ='TXM',into=("OUI",),), + ELEM_PRINCIPAUX =SIMP(statut='f',typ='TXM',into=("OUI",),), + RESULTANTE =SIMP(statut='f',typ='TXM',max='**'), + TRAC_NOR =SIMP(statut='f',typ='TXM',into=("OUI",)), + TRAC_DIR =SIMP(statut='f',typ='TXM',into=("OUI",)), + DIRECTION =SIMP(statut='f',typ='R',max='**'), + + + b_local =BLOC(condition = "REPERE=='LOCAL' ", + VECT_Y =SIMP(statut='o',typ='R',min=2,max=3),), + + b_utili =BLOC(condition = "REPERE=='UTILISATEUR'", + ANGL_NAUT =SIMP(statut='o',typ='R',min=3,max=3),), + + b_grno =BLOC(condition = "TYPE=='GROUP_NO'", + GROUP_NO =SIMP(statut='o',typ=grno, max=1),), + + b_grma =BLOC(condition = "TYPE=='GROUP_MA'", + GROUP_MA =SIMP(statut='o',typ=grma, max=1), + MAILLAGE =SIMP(statut='o',typ=maillage_sdaster),), + + b_segment =BLOC(condition = "TYPE=='SEGMENT'", + NB_POINTS =SIMP(statut='o',typ='I',max=1), + COOR_ORIG =SIMP(statut='o',typ='R',min=2,max=3), + COOR_EXTR =SIMP(statut='o',typ='R',min=2,max=3),), + + b_arc =BLOC(condition = "TYPE=='ARC'", + NB_POINTS =SIMP(statut='o',typ='I',max=1), + COOR_ORIG =SIMP(statut='o',typ='R',min=2,max=3), + CENTRE =SIMP(statut='o',typ='R',min=2,max=3), + ANGLE =SIMP(statut='o',typ='R',max=1), + DNOR =SIMP(statut='f',typ='R',min=2,max=3),), + + b_cylind =BLOC(condition = ("REPERE=='CYLINDRIQUE' and TYPE!='ARC'"), + ORIGINE =SIMP(statut='f',typ='R',min=2,max=3), + AXE_Z =SIMP(statut='f',typ='R',min=3,max=3),), + + ), ) ; -#& MODIF COMMANDE DATE 21/02/2006 AUTEUR REZETTE C.REZETTE + + +#& MODIF COMMANDE DATE 04/04/2006 AUTEUR CIBHHLV L.VIVAN # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -20269,46 +18320,143 @@ RECU_FONCTION=OPER(nom="RECU_FONCTION",op=90,sd_prod=recu_fonction_prod, # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -RECU_GENE=OPER(nom="RECU_GENE",op= 76,sd_prod=vect_asse_gene,reentrant='n', - UIinfo={"groupes":("Résultats et champs",)}, - fr="Extraire d'un champ de grandeur (déplacements, vitesses ou accélérations) à partir de résultats" - +" en coordonnées généralisées", - RESU_GENE =SIMP(statut='o',typ=tran_gene ), - INST =SIMP(statut='o',typ='R' ), - NOM_CHAM =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL","VITE","ACCE") ), - INTERPOL =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","LIN") ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF" ,into=("ABSOLU","RELATIF") ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), +# RESPONSABLE G8BHHXD X.DESROCHES + +from Macro.macro_elas_mult_ops import macro_elas_mult_ops + +def macro_elas_mult_prod(self,NUME_DDL,CAS_CHARGE,**args ): + if isinstance(NUME_DDL,CO) : + self.type_sdprod(NUME_DDL,nume_ddl_sdaster) + else: + self.type_sdprod(NUME_DDL,NUME_DDL.__class__) + if CAS_CHARGE[0]['NOM_CAS'] != None : return mult_elas + if CAS_CHARGE[0]['MODE_FOURIER'] != None : return fourier_elas + raise AsException("type de concept resultat non prevu") + +MACRO_ELAS_MULT=MACRO(nom="MACRO_ELAS_MULT",op=macro_elas_mult_ops,sd_prod=macro_elas_mult_prod,reentrant='f', + UIinfo={"groupes":("Résolution",)}, + fr="Calculer les réponses statiques linéaires pour différents cas de charges ou modes de Fourier", + regles=(UN_PARMI('CHAR_MECA_GLOBAL','CHAR_CINE_GLOBAL','LIAISON_DISCRET', ),), + MODELE =SIMP(statut='o',typ=modele_sdaster), + CHAM_MATER =SIMP(statut='f',typ=cham_mater), + CARA_ELEM =SIMP(statut='f',typ=cara_elem), + NUME_DDL =SIMP(statut='f',typ=(nume_ddl_sdaster,CO)), + CHAR_MECA_GLOBAL=SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), + CHAR_CINE_GLOBAL=SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), + LIAISON_DISCRET =SIMP(statut='f',typ='TXM',into=("OUI",)), + CAS_CHARGE =FACT(statut='o',max='**', + regles=(UN_PARMI('NOM_CAS','MODE_FOURIER'), + UN_PARMI('CHAR_MECA','CHAR_CINE','VECT_ASSE'),), + NOM_CAS =SIMP(statut='f',typ='TXM' ), + MODE_FOURIER =SIMP(statut='f',typ='I' ), + TYPE_MODE =SIMP(statut='f',typ='TXM',defaut="SYME",into=("SYME","ANTI","TOUS") ), + CHAR_MECA =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), + CHAR_CINE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), + OPTION =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**', + into=("EFGE_ELNO_DEPL","EPOT_ELEM_DEPL","SIGM_ELNO_DEPL","SIEF_ELGA_DEPL", + "SIGM_ELNO_CART","EFGE_ELNO_CART","DEGE_ELNO_DEPL","EPSI_ELNO_DEPL", + "EPSI_ELGA_DEPL","EPSG_ELNO_DEPL","EPSG_ELGA_DEPL","EPSP_ELNO","EPSP_ELGA", + "ECIN_ELEM_DEPL","FLUX_ELGA_TEMP","FLUX_ELNO_TEMP","SOUR_ELGA_ELEC", + "PRES_ELNO_DBEL","PRES_ELNO_REEL","PRES_ELNO_IMAG","INTE_ELNO_ACTI", + "INTE_ELNO_REAC","SIGM_NOZ1_ELGA","ERZ1_ELEM_SIGM","SIGM_NOZ2_ELGA", + "ERZ2_ELEM_SIGM","VNOR_ELEM_DEPL","ERRE_ELNO_ELEM","SIRE_ELNO_DEPL", + "ERRE_ELEM_SIGM","EQUI_ELNO_SIGM","EQUI_ELGA_SIGM","EQUI_ELNO_EPSI", + "QIRE_ELEM_SIGM","QIRE_ELNO_ELEM","QIZ1_ELEM_SIGM","QIZ2_ELEM_SIGM", + "EQUI_ELGA_EPSI","FORC_NODA","REAC_NODA","EPSI_NOEU_DEPL","SIGM_NOEU_DEPL", + "EFGE_NOEU_DEPL","EQUI_NOEU_SIGM","EQUI_NOEU_EPSI","FLUX_NOEU_TEMP") ), + NUME_COUCHE =SIMP(statut='f',typ='I',defaut=1), + NIVE_COUCHE =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY")), + SOUS_TITRE =SIMP(statut='f',typ='TXM',max='**'), + VECT_ASSE =SIMP(statut='f',typ=cham_no_sdaster), + ), + SOLVEUR =FACT(statut='d', + METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT") ), + b_mult_front = BLOC ( condition = "METHODE == 'MULT_FRONT' ", + fr="Paramètres de la méthode multi frontale", + RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), + ), + b_ldlt =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT", + RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), + ), + b_ldlt_mult =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ", + fr="Paramètres relatifs à la non inversibilité de la matrice à factorise", + NPREC =SIMP(statut='f',typ='I',defaut= 8 ), + STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + ), + ), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2)), + TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +#& MODIF COMMANDE DATE 22/12/2006 AUTEUR BODEL C.BODEL # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# COPYRIGHT (C) 1991 - 2006 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE VABHHTS J.PELLET -RECU_TABLE=OPER(nom="RECU_TABLE",op= 174,sd_prod=table_sdaster, - fr="Récupérer dans une table les valeurs d'un paramètre d'une SD Résultat ou d'extraire une table contenue" - +" dans une autre SD pour celles qui le permettent", - UIinfo={"groupes":("Résultats et champs",)},reentrant='n', - CO =SIMP(statut='o',typ=assd), - regles=(UN_PARMI('NOM_TABLE','NOM_PARA')), - NOM_TABLE =SIMP(statut='f',typ='TXM' ), - NOM_PARA =SIMP(statut='f',typ='TXM',max='**'), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; + + +from Macro.macro_expans_ops import macro_expans_ops + +def macro_expans_prod(self, MODELE_MESURE, RESU_NX, RESU_EX, RESU_ET, RESU_RD, **args): + RESU_EXP = MODELE_MESURE['MESURE'] + for res in (RESU_NX, RESU_EX, RESU_ET, RESU_RD): + if isinstance(res, CO): + if AsType(RESU_EXP) == mode_meca: + self.type_sdprod(res, mode_meca) + else: + self.type_sdprod(res, dyna_harmo) + else: + self.type_sdprod(res,res.__class__) + return None + +MACRO_EXPANS=MACRO(nom="MACRO_EXPANS", + op=macro_expans_ops, + sd_prod=macro_expans_prod, + reentrant='n', + UIinfo={"groupes":("Outils métier",)}, + fr="Outil d'expansion de resultats exprimentaux sur une base definie sur un modele numerique", + MODELE_CALCUL = FACT(statut='o', + MODELE = SIMP(statut='o',typ=(modele_sdaster) ), + BASE = SIMP(statut='o',typ=(mode_meca,base_modale,) ), + NUME_MODE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**',defaut=0), + ), + MODELE_MESURE = FACT(statut='o', + MODELE = SIMP(statut='o',typ=(modele_sdaster) ), + MESURE = SIMP(statut='o',typ=(dyna_trans,dyna_harmo,base_modale,mode_meca,mode_meca_c,) ), + NOM_CHAM = SIMP(statut='f',typ='TXM',defaut="DEPL", + into=("DEPL","VITE","ACCE","SIEF_NOEU","EPSI_NOEU_DEPL",) ), + NUME_MODE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**',defaut=0), + ), + NUME_DDL = SIMP(statut='f',typ=(nume_ddl_sdaster)), + RESU_NX = SIMP(statut='f',typ=(mode_meca,dyna_harmo, CO)), + RESU_EX = SIMP(statut='f',typ=(mode_meca,dyna_harmo, CO)), + RESU_ET = SIMP(statut='f',typ=(mode_meca,dyna_harmo, CO)), + RESU_RD = SIMP(statut='f',typ=(mode_meca,dyna_harmo, CO)), + RESOLUTION = FACT(statut='f', + METHODE =SIMP(statut='f',typ='TXM',defaut="LU",into=("LU","SVD",) ), + b_svd =BLOC(condition="METHODE=='SVD'", + EPS=SIMP(statut='f',typ='R',defaut=0. ), + ), + REGUL =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","NORM_MIN","TIK_RELA",) ), + b_regul =BLOC(condition="REGUL!='NON'", + regles=(PRESENT_ABSENT('COEF_PONDER','COEF_PONDER_F', ),), + COEF_PONDER =SIMP(statut='f',typ='R',defaut=0. ,max='**' ), + COEF_PONDER_F =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule),max='**' ), + ), + ), + ) #& MODIF COMMANDE DATE 21/02/2006 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -20328,20 +18476,94 @@ RECU_TABLE=OPER(nom="RECU_TABLE",op= 174,sd_prod=table_sdaster, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -RESO_GRAD=OPER(nom="RESO_GRAD",op= 84,sd_prod=cham_no_sdaster, - fr="Résolution d'un système linéaire par la méthode du gradient conjugué préconditionné", - reentrant='f', - UIinfo={"groupes":("Résolution",)}, - MATR_ASSE =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r ) ), - CHAM_NO =SIMP(statut='o',typ=cham_no_sdaster), - CHAM_CINE =SIMP(statut='f',typ=cham_no_sdaster), - MATR_FACT =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r ) ), - NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), - REPRISE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - RESI_RELA =SIMP(statut='f',typ='R',defaut= 1E-6 ), - INFO =SIMP(statut='f',typ='I',into=(1,2) ), -) ; -#& MODIF COMMANDE DATE 21/02/2006 AUTEUR REZETTE C.REZETTE +from Macro.macro_matr_ajou_ops import macro_matr_ajou_ops + +def macro_matr_ajou_prod(self,MATR_AMOR_AJOU,MATR_MASS_AJOU,MATR_RIGI_AJOU,FORC_AJOU,**args): + self.type_sdprod(MATR_AMOR_AJOU,matr_asse_gene_r) + self.type_sdprod(MATR_MASS_AJOU,matr_asse_gene_r) + self.type_sdprod(MATR_RIGI_AJOU,matr_asse_gene_r) + if FORC_AJOU != None: + for m in FORC_AJOU: + self.type_sdprod(m['VECTEUR'],vect_asse_gene) + + return None + +MACRO_MATR_AJOU=MACRO(nom="MACRO_MATR_AJOU",op=macro_matr_ajou_ops,sd_prod=macro_matr_ajou_prod, + UIinfo={"groupes":("Matrices/vecteurs",)}, + fr="Calculer de facon plus condensée qu'avec CALC_MATR_AJOU des matrices de masse, d'amortissement" + +" ou de rigidité ajoutés", + regles=(AU_MOINS_UN('MODE_MECA','DEPL_IMPO','MODELE_GENE'), + AU_MOINS_UN('MATR_MASS_AJOU','MATR_AMOR_AJOU','MATR_RIGI_AJOU'), + EXCLUS('MODE_MECA','DEPL_IMPO','MODELE_GENE'), + EXCLUS('MONO_APPUI','MODE_STAT',), + ), + MAILLAGE =SIMP(statut='o',typ=maillage_sdaster), + GROUP_MA_FLUIDE =SIMP(statut='o',typ=grma), + GROUP_MA_INTERF =SIMP(statut='o',typ=grma), + MODELISATION =SIMP(statut='o',typ='TXM',into=("PLAN","AXIS","3D")), + FLUIDE =FACT(statut='o',max='**', + RHO =SIMP(statut='o',typ='R'), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",)), + GROUP_MA =SIMP(statut='f',typ=grma), + MAILLE =SIMP(statut='f',typ=ma), + ), + DDL_IMPO =FACT(statut='o',max='**', + regles=(UN_PARMI('NOEUD','GROUP_NO'), + UN_PARMI('PRES_FLUIDE','PRES_SORTIE'),), + NOEUD =SIMP(statut='f',typ=no), + GROUP_NO =SIMP(statut='f',typ=grno), + PRES_FLUIDE =SIMP(statut='f',typ='R'), + PRES_SORTIE =SIMP(statut='f',typ='R'), + ), + ECOULEMENT =FACT(statut='f', + GROUP_MA_1 =SIMP(statut='o',typ=grma), + GROUP_MA_2 =SIMP(statut='o',typ=grma), + VNOR_1 =SIMP(statut='o',typ='R'), + VNOR_2 =SIMP(statut='f',typ='R'), + POTENTIEL =SIMP(statut='f',typ=evol_ther), + ), + MODE_MECA =SIMP(statut='f',typ=mode_meca), + DEPL_IMPO =SIMP(statut='f',typ=cham_no_sdaster), + MODELE_GENE =SIMP(statut='f',typ=modele_gene), + NUME_DDL_GENE =SIMP(statut='f',typ=nume_ddl_gene), + DIST_REFE =SIMP(statut='f',typ='R',defaut= 1.0E-2), + MATR_MASS_AJOU =SIMP(statut='f',typ=CO,), + MATR_RIGI_AJOU =SIMP(statut='f',typ=CO,), + MATR_AMOR_AJOU =SIMP(statut='f',typ=CO,), + MONO_APPUI =SIMP(statut='f',typ='TXM',into=("OUI",),), + MODE_STAT =SIMP(statut='f',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc,),), + FORC_AJOU =FACT(statut='f',max='**', + DIRECTION =SIMP(statut='o',typ='R',max=3), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + VECTEUR =SIMP(statut='o',typ=CO), + ), + SOLVEUR =FACT(statut='d', + METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ), + b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale", + RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), + ), + b_ldlt =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT", + RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), + ), + b_ldlt_mult =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ", + fr="Paramètres relatifs à la non iversibilité de la matrice à factorise", + NPREC =SIMP(statut='f',typ='I',defaut= 8 ), + STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + ), + b_gcpc =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué", + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ), + NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), + RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), + RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), + NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), + ), + ), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), + NOEUD_DOUBLE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), + AVEC_MODE_STAT =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), +) +#& MODIF COMMANDE DATE 12/06/2006 AUTEUR CIBHHLV L.VIVAN # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -20359,21 +18581,87 @@ RESO_GRAD=OPER(nom="RESO_GRAD",op= 84,sd_prod=cham_no_sdaster, # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE VABHHTS J.PELLET -RESO_LDLT=OPER(nom="RESO_LDLT",op=15,sd_prod=cham_no_sdaster,reentrant='f', - fr="Résoudre par méthode directe un système d'équations linéaires préalablement factorisé par FACT_LDLT", - UIinfo={"groupes":("Résolution",)}, - MATR_FACT =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_temp_r, - matr_asse_temp_c,matr_asse_pres_r,matr_asse_pres_c) ), - CHAM_NO =SIMP(statut='o',typ=cham_no_sdaster), - CHAM_CINE =SIMP(statut='f',typ=cham_no_sdaster), - # RESI_RELA : précision utilisée si SOLVEUR=MUMPS - RESI_RELA =SIMP(statut='f',typ='R',defaut=1.e-6), +from Macro.macro_matr_asse_ops import macro_matr_asse_ops + +def macro_matr_asse_prod(self,NUME_DDL,MATR_ASSE,**args): + if not MATR_ASSE: raise AsException("Impossible de typer les concepts resultats") + if not NUME_DDL : raise AsException("Impossible de typer les concepts resultats") + if isinstance(NUME_DDL,CO) : + self.type_sdprod(NUME_DDL,nume_ddl_sdaster) + else: + self.type_sdprod(NUME_DDL,NUME_DDL.__class__) + for m in MATR_ASSE: + opti=m['OPTION'] + + if opti in ( "RIGI_MECA","RIGI_FLUI_STRU","RIGI_MECA_LAGR" , + "MASS_MECA" , "MASS_FLUI_STRU" ,"RIGI_GEOM" ,"RIGI_ROTA", + "AMOR_MECA","IMPE_MECA","MASS_ID_MDEP_R","MASS_ID_MDNS_R", + "ONDE_FLUI","MASS_MECA_DIAG" ) : t=matr_asse_depl_r + + if opti in ( "RIGI_ACOU","MASS_ACOU","AMOR_ACOU",) : t=matr_asse_pres_c + + if opti in ( "RIGI_THER","MASS_THER","RIGI_THER_CONV" , + "RIGI_THER_CONV_D","MASS_ID_MTEM_R","MASS_ID_MTNS_R",) : t=matr_asse_temp_r + + if opti == "RIGI_MECA_HYST" : t= matr_asse_depl_c + + self.type_sdprod(m['MATRICE'],t) + return None + +MACRO_MATR_ASSE=MACRO(nom="MACRO_MATR_ASSE",op=macro_matr_asse_ops, + UIinfo={"groupes":("Matrices/vecteurs",)}, + sd_prod=macro_matr_asse_prod, + fr="Calcul des matrices assemblées (rigidité, masse, amortissement,...) ", + MODELE =SIMP(statut='o',typ=modele_sdaster), + CHAM_MATER =SIMP(statut='f',typ=cham_mater), + INST =SIMP(statut='f',typ='R',defaut=0.), + CARA_ELEM =SIMP(statut='f',typ=cara_elem), + CHARGE =SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**'), + CHAR_CINE =SIMP(statut='f',typ=(char_cine_meca,char_cine_ther,char_cine_acou) ), + NUME_DDL =SIMP(statut='o',typ=(nume_ddl_sdaster,CO)), + SOLVEUR =FACT(statut='d', + METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT", + into=("LDLT","MULT_FRONT","GCPC","MUMPS")), + RENUM =SIMP(statut='f',typ='TXM',into=("SANS","RCMK","MD","MDA","METIS")), + ), + + MATR_ASSE =FACT(statut='o',max='**', + MATRICE =SIMP(statut='o',typ=CO), + OPTION =SIMP(statut='o',typ='TXM', + into=("RIGI_MECA","MASS_MECA","MASS_MECA_DIAG", + "AMOR_MECA","RIGI_MECA_HYST","IMPE_MECA", + "ONDE_FLUI","RIGI_FLUI_STRU","MASS_FLUI_STRU", + "RIGI_ROTA","RIGI_GEOM","RIGI_MECA_LAGR", + "RIGI_THER","MASS_THER", + "RIGI_ACOU","MASS_ACOU","AMOR_ACOU", + "MASS_ID_MTEM_R","MASS_ID_MTNS_R","MASS_ID_MDEP_R","MASS_ID_MDNS_R",) + ), + + b_rigi_meca = BLOC( condition = "OPTION=='RIGI_MECA'", + MODE_FOURIER =SIMP(statut='f',typ='I',defaut= 0), + ), + + b_rigi_geom = BLOC( condition = "OPTION=='RIGI_GEOM'", + SIEF_ELGA =SIMP(statut='o',typ=cham_elem), + MODE_FOURIER =SIMP(statut='f',typ='I',defaut= 0), + ), + + b_rigi_meca_lagr = BLOC( condition = "OPTION=='RIGI_MECA_LAGR'", + THETA =SIMP(statut='o',typ=theta_geom), + PROPAGATION =SIMP(statut='f',typ='R'), + ), + + b_rigi_ther = BLOC( condition = "OPTION=='RIGI_THER'", + MODE_FOURIER =SIMP(statut='f',typ='I',defaut= 0), + ), + + ), # fin MATR_ASSE + TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',into=(1,2) ), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), ) ; -#& MODIF COMMANDE DATE 12/03/2007 AUTEUR DEVESA G.DEVESA +#& MODIF COMMANDE DATE 29/05/2007 AUTEUR VOLDOIRE F.VOLDOIRE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -20391,84 +18679,55 @@ RESO_LDLT=OPER(nom="RESO_LDLT",op=15,sd_prod=cham_no_sdaster,reentrant='f', # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE BOYERE E.BOYERE -def rest_base_phys_prod(RESU_GENE,RESU_PHYS,RESULTAT,**args ): - if AsType(RESU_GENE) == tran_gene : return dyna_trans - if AsType(RESU_GENE) == mode_gene : return mode_meca - if AsType(RESU_GENE) == mode_cycl : return mode_meca - if AsType(RESU_GENE) == harm_gene : return dyna_harmo - if AsType(RESU_PHYS) == evol_noli : return dyna_trans - if AsType(RESULTAT) == evol_elas : return evol_elas - if AsType(RESULTAT) == evol_noli : return evol_noli - if AsType(RESULTAT) == evol_char : return evol_char - if AsType(RESULTAT) == dyna_trans : return dyna_trans - if AsType(RESULTAT) == mode_meca : return mode_meca - if AsType(RESULTAT) == mode_stat_depl : return mode_stat_depl - if AsType(RESULTAT) == base_modale : return base_modale - raise AsException("type de concept resultat non prevu") -REST_BASE_PHYS=OPER(nom="REST_BASE_PHYS",op= 75,sd_prod=rest_base_phys_prod, - fr="Restituer dans la base physique des résultats en coordonnées généralisées", - reentrant='n', - UIinfo={"groupes":("Matrices/vecteurs",)}, - regles=(UN_PARMI('RESU_GENE','RESU_PHYS','RESULTAT'), - EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST','TOUT_INST'), - EXCLUS('TOUT_INST','NUME_ORDRE','INST','LIST_INST','TOUT_ORDRE'), -# Doc U à revoir - EXCLUS('MULT_APPUI','CORR_STAT'), - EXCLUS('MULT_APPUI','NOEUD','GROUP_NO'), - EXCLUS('CORR_STAT','NOEUD','GROUP_NO'), - EXCLUS('NOEUD','GROUP_NO'), - EXCLUS('MACR_ELEM_DYNA','BASE_MODALE'), - PRESENT_PRESENT('RESULTAT','SQUELETTE'), - PRESENT_PRESENT('ACCE_MONO_APPUI','DIRECTION'),), - RESULTAT =SIMP(statut='f',typ=(evol_elas,evol_noli,dyna_trans,evol_char, - mode_meca,mode_stat_depl,base_modale) ), - - RESU_GENE =SIMP(statut='f',typ=(tran_gene,mode_gene,mode_cycl,harm_gene) ), - RESU_PHYS =SIMP(statut='f',typ=evol_noli ), - BASE_MODALE =SIMP(statut='f',typ=(base_modale,mode_meca) ), - NUME_DDL =SIMP(statut='f',typ=nume_ddl_sdaster ), - MACR_ELEM_DYNA =SIMP(statut='f',typ=macr_elem_dyna), - MODE_MECA =SIMP(statut='f',typ=mode_meca ), - TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), - NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), - TOUT_INST =SIMP(statut='f',typ='TXM',into=("OUI",) ), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), - FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("ABSOLU","RELATIF") ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - INTERPOL =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","LIN") ), - MULT_APPUI =SIMP(statut='f',typ='TXM',into=("OUI",) ), - CORR_STAT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=8,defaut="ACCE", - into=("DEPL","VITE","ACCE","ACCE_ABSOLU","EFGE_ELNO_DEPL","SIPO_ELNO_DEPL", - "SIGM_ELNO_DEPL","FORC_NODA",) ), - TOUT_CHAM =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - - ACCE_MONO_APPUI =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - DIRECTION =SIMP(statut='f',typ='R',min=3,max=3 ), +from Macro.macro_miss_3d_ops import macro_miss_3d_ops - CYCLIQUE =FACT(statut='f',max='**', - NB_SECTEUR =SIMP(statut='f',typ='I',validators=NoRepeat(),max=1 ), - NUME_DIAMETRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max=1 ), - RESULTAT2 =SIMP(statut='f',typ=(evol_elas,evol_noli,dyna_trans,evol_char, - mode_meca,mode_stat_depl,base_modale) ), +MACRO_MISS_3D=MACRO(nom="MACRO_MISS_3D",op=macro_miss_3d_ops, + fr="Préparation des données puis exécution du logiciel MISS3D", + UIinfo={"groupes":("Matrices/vecteurs",)}, + OPTION =FACT(statut='o', + regles=(UN_PARMI('TOUT','MODULE'),), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",)), + MODULE =SIMP(statut='f',typ='TXM',into=("PRE_MISS","MISS_EVOL","MISS_IMPE")), + ), + PROJET =SIMP(statut='o',typ='TXM'), + REPERTOIRE =SIMP(statut='f',typ='TXM'), + VERSION =SIMP(statut='f',typ='TXM',into=("V1_3","V1_4",),defaut="V1_3"), + UNITE_IMPR_ASTER=SIMP(statut='f',typ='I',defaut=25), + UNITE_OPTI_MISS =SIMP(statut='f',typ='I',defaut=26), + UNITE_MODELE_SOL=SIMP(statut='f',typ='I',defaut=27), + UNITE_RESU_IMPE =SIMP(statut='f',typ='I',defaut=30), + UNITE_RESU_FORC =SIMP(statut='f',typ='I',defaut=0), + PARAMETRE =FACT(statut='f', + regles=(PRESENT_PRESENT('FREQ_MIN','FREQ_MAX','FREQ_PAS'), + PRESENT_PRESENT('CONTR_NB','CONTR_LISTE'), + PRESENT_PRESENT('LFREQ_NB','LFREQ_LISTE'), + PRESENT_PRESENT('OFFSET_MAX','OFFSET_NB'), + PRESENT_PRESENT('SPEC_MAX','SPEC_NB'),), + FREQ_MIN =SIMP(statut='f',typ='R'), + FREQ_MAX =SIMP(statut='f',typ='R'), + FREQ_PAS =SIMP(statut='f',typ='R'), + Z0 =SIMP(statut='f',typ='R'), + SURF =SIMP(statut='f',typ='TXM',into=("OUI","NON",),defaut="NON"), + RFIC =SIMP(statut='f',typ='R'), + FICH_RESU_IMPE =SIMP(statut='f',typ='TXM'), + FICH_RESU_FORC =SIMP(statut='f',typ='TXM'), + TYPE =SIMP(statut='f',typ='TXM',into=("BINAIRE","ASCII",),defaut="ASCII"), + DREF =SIMP(statut='f',typ='R'), + ALGO =SIMP(statut='f',typ='TXM',into=("DEPL","REGU")), + OFFSET_MAX =SIMP(statut='f',typ='R'), + OFFSET_NB =SIMP(statut='f',typ='I'), + SPEC_MAX =SIMP(statut='f',typ='R'), + SPEC_NB =SIMP(statut='f',typ='I'), + ISSF =SIMP(statut='f',typ='TXM',into=("OUI","NON",),defaut="NON"), + FICH_POST_TRAI =SIMP(statut='f',typ='TXM'), + CONTR_NB =SIMP(statut='f',typ='I'), + CONTR_LISTE =SIMP(statut='f',typ='R',max='**'), + LFREQ_NB =SIMP(statut='f',typ='I'), + LFREQ_LISTE =SIMP(statut='f',typ='R',max='**'), ), - - SQUELETTE =SIMP(statut='f',typ=squelette ), - SOUS_STRUC =SIMP(statut='f',typ='TXM' ), - SECTEUR =SIMP(statut='f',typ='I',defaut= 1 ), - TITRE =SIMP(statut='f',typ='TXM',max='**' ), ) ; -#& MODIF COMMANDE DATE 10/10/2006 AUTEUR MCOURTOI M.COURTOIS +#& MODIF COMMANDE DATE 27/03/2007 AUTEUR BOYERE E.BOYERE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -20486,507 +18745,379 @@ REST_BASE_PHYS=OPER(nom="REST_BASE_PHYS",op= 75,sd_prod=rest_base_phys_prod, # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -REST_SPEC_PHYS=OPER(nom="REST_SPEC_PHYS",op= 148,sd_prod=table_fonction, - reentrant='n', - fr="Calculer la réponse d'une structure dans la base physique", - UIinfo={"groupes":("Matrices/vecteurs",)}, - regles=(AU_MOINS_UN('BASE_ELAS_FLUI','MODE_MECA'),), - BASE_ELAS_FLUI =SIMP(statut='f',typ=melasflu_sdaster ), - MODE_MECA =SIMP(statut='f',typ=mode_meca ), - BANDE =SIMP(statut='f',typ='R',min=2,validators=NoRepeat(),max=2 ), - NUME_ORDRE =SIMP(statut='f',typ='I' ,validators=NoRepeat(),max='**' ), - INTE_SPEC_GENE =SIMP(statut='o',typ=table_fonction), - NOEUD =SIMP(statut='o',typ=no ,max='**'), - MAILLE =SIMP(statut='f',typ=ma ,max='**'), - NOM_CMP =SIMP(statut='o',typ='TXM',max='**'), - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=7, - into=("DEPL","VITE","ACCE","EFGE_ELNO_DEPL", - "SIPO_ELNO_DEPL","SIGM_ELNO_DEPL","FORC_NODA") ), - MODE_STAT =SIMP(statut='f',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc), ), - EXCIT =FACT(statut='f', - NOEUD =SIMP(statut='o',typ=no ,max='**'), - NOM_CMP =SIMP(statut='o',typ='TXM',max='**'), - ), - MOUVEMENT =SIMP(statut='f',typ='TXM',defaut="ABSOLU",into=("RELATIF","ABSOLU","DIFFERENTIEL") ), - OPTION =SIMP(statut='f',typ='TXM',defaut="DIAG_DIAG", - into=("DIAG_TOUT","DIAG_DIAG","TOUT_TOUT","TOUT_DIAG") ), - TITRE =SIMP(statut='f',typ='TXM',max='**' ), -) ; -#& MODIF COMMANDE DATE 12/03/2007 AUTEUR DEVESA G.DEVESA -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE MABBAS M.ABBAS -STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, - fr="Calcul de l'évolution mécanique ou thermo-hydro-mécanique couplée, en quasi-statique," - +" d'une structure en non linéaire", - reentrant='f', + +from Macro.macro_mode_meca_ops import macro_mode_meca_ops + +MACRO_MODE_MECA=MACRO(nom="MACRO_MODE_MECA",op=macro_mode_meca_ops,sd_prod=mode_meca, + reentrant='n',fr="Lancer une succession de calculs de modes propres réels", UIinfo={"groupes":("Résolution",)}, - regles=(AU_MOINS_UN('COMP_INCR','COMP_ELAS'), - CONCEPT_SENSIBLE('ENSEMBLE'),), - MODELE =SIMP(statut='o',typ=modele_sdaster), - CHAM_MATER =SIMP(statut='o',typ=cham_mater), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - EXCIT =FACT(statut='o',max='**', - CHARGE =SIMP(statut='o',typ=(char_meca,char_cine_meca)), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE_CSTE", - into=("FIXE_CSTE","FIXE_PILO","SUIV","DIDI")), + MATR_A =SIMP(statut='o',typ=matr_asse_depl_r ), + MATR_B =SIMP(statut='o',typ=matr_asse_depl_r ), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), +# ce mot cle ne devrait il pas etre dans calc_freq + METHODE =SIMP(statut='f',typ='TXM',defaut="SORENSEN", + into=("TRI_DIAG","JACOBI","SORENSEN",) ), + b_tri_diag =BLOC(condition = "METHODE == 'TRI_DIAG'", + PREC_ORTHO =SIMP(statut='f',typ='R',defaut= 1.E-12,val_min=0.E+0 ), + NMAX_ITER_ORTHO =SIMP(statut='f',typ='I',defaut= 5,val_min=0 ), + PREC_LANCZOS =SIMP(statut='f',typ='R',defaut= 1.E-8,val_min=0.E+0 ), + NMAX_ITER_QR =SIMP(statut='f',typ='I',defaut= 30,val_min=0 ), ), - SOUS_STRUC =FACT(statut='f',min=01,max='**', - regles=(UN_PARMI('TOUT','SUPER_MAILLE'),), - CAS_CHARGE =SIMP(statut='o',typ='TXM' ), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - SUPER_MAILLE=SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**',), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - COMP_INCR =C_COMP_INCR(), - COMP_ELAS =FACT(statut='f',max='**', - RESI_INTE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-6), - ITER_INTE_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), - ITER_INTE_PAS =SIMP(statut='f',typ='I',defaut= 0 ), - RESO_INTE =SIMP(statut='f',typ='TXM',defaut="IMPLICITE", - into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")), - RELATION =SIMP(statut='o',typ='TXM',defaut="ELAS", - into=("ELAS","ELAS_VMIS_LINE","ELAS_VMIS_TRAC", - "ELAS_POUTRE_GR","CABLE","ELAS_HYPER")), - ELAS =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_VMIS_TRAC =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_VMIS_LINE =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_HYPER =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_POUTRE_GR =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - CABLE =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - DEFORMATION =SIMP(statut='f',typ='TXM',defaut="PETIT" ,into=("PETIT","GREEN","GREEN_GR",) ), - regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + b_jacobi =BLOC(condition = "METHODE == 'JACOBI'", + PREC_BATHE =SIMP(statut='f',typ='R',defaut= 1.E-10,val_min=0.E+0 ), + NMAX_ITER_BATHE =SIMP(statut='f',typ='I',defaut= 40,val_min=0 ), + PREC_JACOBI =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0 ), + NMAX_ITER_JACOBI=SIMP(statut='f',typ='I',defaut= 12,val_min=0 ), ), - b_reuse =BLOC(condition = "reuse",fr="en mode concept reentrant : ETAT_INIT obligatoire", - ETAT_INIT =FACT(statut='o', - regles=(AU_MOINS_UN('EVOL_NOLI','DEPL','SIGM','VARI','VARI_NON_LOCAL',), - EXCLUS('EVOL_NOLI','DEPL',), - EXCLUS('EVOL_NOLI','SIGM',), - EXCLUS('EVOL_NOLI','VARI',), - EXCLUS('EVOL_NOLI','VARI_NON_LOCAL',), - EXCLUS('NUME_ORDRE','INST'), ), - DEPL =SIMP(statut='f',typ=cham_no_sdaster), - SIGM =SIMP(statut='f',typ=(cham_elem,carte_sdaster)), - VARI =SIMP(statut='f',typ=cham_elem), - VARI_NON_LOCAL =SIMP(statut='f',typ=cham_no_sdaster), - EVOL_NOLI =SIMP(statut='f',typ=evol_noli), - NUME_ORDRE =SIMP(statut='f',typ='I'), - INST =SIMP(statut='f',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - NUME_DIDI =SIMP(statut='f',typ='I'), - INST_ETAT_INIT =SIMP(statut='f',typ='R'), - ),), - b_not_reuse =BLOC(condition = "not reuse",fr="en mode concept non reentrant : ETAT_INIT facultatif", - ETAT_INIT =FACT(statut='f', - regles=(AU_MOINS_UN('EVOL_NOLI','DEPL','SIGM','VARI','VARI_NON_LOCAL',), - EXCLUS('EVOL_NOLI','DEPL',), - EXCLUS('EVOL_NOLI','SIGM',), - EXCLUS('EVOL_NOLI','VARI',), - EXCLUS('EVOL_NOLI','VARI_NON_LOCAL',), - EXCLUS('NUME_ORDRE','INST'), ), - DEPL =SIMP(statut='f',typ=cham_no_sdaster), - SIGM =SIMP(statut='f',typ=(cham_elem,carte_sdaster)), - VARI =SIMP(statut='f',typ=cham_elem), - VARI_NON_LOCAL =SIMP(statut='f',typ=cham_no_sdaster), - EVOL_NOLI =SIMP(statut='f',typ=evol_noli), - NUME_ORDRE =SIMP(statut='f',typ='I'), - INST =SIMP(statut='f',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - NUME_DIDI =SIMP(statut='f',typ='I'), - INST_ETAT_INIT =SIMP(statut='f',typ='R'), - ),), - INCREMENT =FACT(statut='o', - regles=(EXCLUS('NUME_INST_INIT','INST_INIT'), - EXCLUS('NUME_INST_FIN','INST_FIN'),), - LIST_INST =SIMP(statut='o',typ=listr8_sdaster), - EVOLUTION =SIMP(statut='f',typ='TXM',defaut="CHRONOLOGIQUE", - into=("CHRONOLOGIQUE","RETROGRADE","SANS",) ), - NUME_INST_INIT =SIMP(statut='f',typ='I'), - INST_INIT =SIMP(statut='f',typ='R'), - NUME_INST_FIN =SIMP(statut='f',typ='I'), - INST_FIN =SIMP(statut='f',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), - # DEBUT DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS - SUBD_METHODE =SIMP( statut='f',typ='TXM', - into =("AUCUNE","UNIFORME","EXTRAPOLE"), - defaut="AUCUNE", - fr="Méthode de subdivision des pas de temps en cas de non-convergence" - ), - b_subd_unif=BLOC(condition = "SUBD_METHODE == 'UNIFORME'", - regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), - SUBD_COEF_PAS_1=SIMP(statut='f',typ='R',defaut=1.0,val_min=0.0, - fr="Coefficient multiplicateur de la 1ère subdivision"), - SUBD_PAS =SIMP(statut='f',typ='I',defaut=4,val_min=2, - fr="Nombre de subdivision d'un pas de temps"), - SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, - fr="Nombre maximum de niveau de subdivision d'un pas de temps"), - SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, - fr="Pas de temps en dessous duquel on ne subdivise plus"), - ), - b_subd_extr=BLOC(condition = "SUBD_METHODE == 'EXTRAPOLE'", - regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), - SUBD_OPTION =SIMP(statut='f',typ='TXM', - into =("IGNORE_PREMIERES","GARDE_DERNIERES",), - defaut="IGNORE_PREMIERES", - fr="Technique d'extrapolation : les 1ere itérations sont ignorées ou les dernières sont gardées"), - SUBD_ITER_IGNO =SIMP(statut='c',typ='I',defaut=3,val_min=0, - fr="Les n premières itérations sont ignorées pour l'extrapolation"), - SUBD_ITER_FIN =SIMP(statut='c',typ='I',defaut=8,val_min=3, - fr="Seules les n dernières itérations sont prises pour l'extrapolation"), - SUBD_PAS =SIMP(statut='c',typ='I',defaut=4,val_min=2, - fr="Nombre de subdivision d'un pas de temps en cas divergence"), - SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, - fr="Nombre maximum de niveau de subdivision d'un pas de temps"), - SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, - fr="Pas de temps en dessous duquel on ne subdivise plus"), - SUBD_ITER_PLUS =SIMP(statut='c',typ='I',defaut=50,val_min=20, - fr="% itération autorisée en plus"), - ), - # FIN DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS - OPTI_LIST_INST =SIMP(statut='f',typ='TXM',into=("INCR_MAXI",),), - NOM_CHAM =SIMP(statut='f',typ='TXM',), - NOM_CMP =SIMP(statut='f',typ='TXM',), - VALE =SIMP(statut='f',typ='R'), + b_sorensen =BLOC(condition = "METHODE == 'SORENSEN'", + PREC_SOREN =SIMP(statut='f',typ='R',defaut= 0.E+0,val_min=0.E+0 ), + NMAX_ITER_SOREN =SIMP(statut='f',typ='I',defaut= 20,val_min=0 ), + PARA_ORTHO_SOREN=SIMP(statut='f',typ='R',defaut= 0.717,val_min=0.E+0 ), ), - NEWTON =FACT(statut='d', - REAC_INCR =SIMP(statut='f',typ='I',defaut= 1 ), - PREDICTION =SIMP(statut='f',typ='TXM',into=("DEPL_CALCULE","TANGENTE","ELASTIQUE","EXTRAPOL") ), - MATRICE =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE") ), - PAS_MINI_ELAS =SIMP(statut='f',typ='R',defaut=0.0E+0), - REAC_ITER =SIMP(statut='f',typ='I',defaut=0), - REAC_ITER_ELAS =SIMP(statut='f',typ='I',defaut=0), - EVOL_NOLI =SIMP(statut='f',typ=evol_noli), + OPTION =SIMP(statut='f',typ='TXM',defaut="SANS", + into=("MODE_RIGIDE","SANS") ), + CALC_FREQ =FACT(statut='d',min=0, + regles=(UN_PARMI('FREQ','FREQ_MAX'), + PRESENT_PRESENT('FREQ_MIN','FREQ_MAX'), + PRESENT_PRESENT('FREQ_MAX','NB_BLOC_FREQ'), + EXCLUS('DIM_SOUS_ESPACE','COEF_DIM_ESPACE'),), + FREQ =SIMP(statut='f',typ='R',min=2,validators=NoRepeat(),max='**', ), + FREQ_MIN =SIMP(statut='f',typ='R' ), + FREQ_MAX =SIMP(statut='f',typ='R' ), + NB_BLOC_FREQ =SIMP(statut='f',typ='I' ), + DIM_SOUS_ESPACE =SIMP(statut='f',typ='I' ), + COEF_DIM_ESPACE =SIMP(statut='f',typ='I' ), + NPREC_SOLVEUR =SIMP(statut='f',typ='I',defaut= 8 ), + NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 5 ), + PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-2 ), + SEUIL_FREQ =SIMP(statut='f',typ='R' ,defaut= 1.E-2 ), + STOP_FREQ_VIDE =SIMP(statut='f',typ='TXM',defaut="NON" ,into=("OUI","NON") ), ), - RECH_LINEAIRE =FACT(statut='f', - RESI_LINE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-1 ), - ITER_LINE_MAXI =SIMP(statut='f',typ='I',defaut= 3), - ITER_LINE_CRIT =SIMP(statut='f',typ='I',defaut= 20), - PAS_MINI_CRIT =SIMP(statut='f',typ='R',defaut=0.0E+0), - RHO_MIN =SIMP(statut='f',typ='R',defaut=1.0E-2), - RHO_MAX =SIMP(statut='f',typ='R',defaut=1.0E+1), - RHO_EXCL =SIMP(statut='f',typ='R',defaut=0.9E-2,val_min=0.), + VERI_MODE =FACT(statut='d',min=0, + STOP_ERREUR =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + SEUIL =SIMP(statut='f',typ='R',defaut= 1.E-6 ), + PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-3 ), + STURM =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), ), - PILOTAGE =FACT(statut='f', - regles=(EXCLUS('NOEUD','GROUP_NO'),PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), - TYPE =SIMP(statut='o',typ='TXM',into=("DDL_IMPO","LONG_ARC","PRED_ELAS","PRED_ELAS_INCR","DEFORMATION","ANA_LIM") ), - COEF_MULT =SIMP(statut='f',typ='R',defaut= 1.0E+0), - ETA_PILO_MAX =SIMP(statut='f',typ='R'), - ETA_PILO_MIN =SIMP(statut='f',typ='R'), - ETA_PILO_R_MAX =SIMP(statut='f',typ='R'), - ETA_PILO_R_MIN =SIMP(statut='f',typ='R'), - PROJ_BORNES =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - SELECTION =SIMP(statut='f',typ='TXM',defaut="NORM_INCR_DEPL", into=("RESIDU","ANGL_INCR_DEPL","NORM_INCR_DEPL") ), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno ,validators=NoRepeat(),max='**'), - NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), - ), - CONVERGENCE =FACT(statut='d', - regles=(PRESENT_ABSENT('RESI_REFE_RELA','RESI_GLOB_MAXI','RESI_GLOB_RELA'),), - SIGM_REFE =SIMP(statut='f',typ='R'), - EPSI_REFE =SIMP(statut='f',typ='R'), - FLUX_THER_REFE =SIMP(statut='f',typ='R'), - FLUX_HYD1_REFE =SIMP(statut='f',typ='R'), - FLUX_HYD2_REFE =SIMP(statut='f',typ='R'), - RESI_REFE_RELA =SIMP(statut='f',typ='R'), - RESI_GLOB_MAXI =SIMP(statut='f',typ='R'), - RESI_GLOB_RELA =SIMP(statut='f',typ='R'), - ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut=10), - ITER_GLOB_ELAS =SIMP(statut='f',typ='I',defaut=25), - ARRET =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), + NORM_MODE =FACT(statut='o',max='**', + MASS_INER =SIMP(statut='o',typ=table_sdaster), + NORME =SIMP(statut='f',typ='TXM',defaut="TRAN_ROTA", + into=("MASS_GENE","RIGI_GENE","EUCL", + "EUCL_TRAN","TRAN","TRAN_ROTA") ), + INFO =SIMP(statut='f',typ='I',defaut= 1 ,into=(1,2) ), ), - SOLVEUR =FACT(statut='d', - METHODE=SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC","MUMPS","FETI") ), - b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale", - RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), - ), - b_ldlt =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT", - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), - ), - b_ldlt_mult =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ", - fr="Paramètres relatifs à la non inversibilité de la matrice à factorise", - NPREC =SIMP(statut='f',typ='I',defaut= 8 ), - STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON","DECOUPE") ), - ), - b_gcpc =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué", - PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ), - NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), - RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), - NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), - ), - b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", - TYPE_RESOL =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("NONSYM","SYMGEN","SYMDEF","AUTO")), - SCALING =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("SANS","AUTO")), - RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), - ELIM_LAGR2 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=10,), - RESI_RELA =SIMP(statut='f',typ='R',defaut=-1.0,), - ), - b_feti =BLOC(condition = "METHODE == 'FETI' ",fr="Paramètres de la méthode FETI 1", - PARTITION =SIMP(statut='o',typ=sd_feti_sdaster), - RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), - RESI_RELA =SIMP(statut='f',typ='R',defaut=1.E-6,val_min=0.), - NMAX_ITER =SIMP(statut='f',typ='I',defaut=0,val_min=0), - TYPE_REORTHO_DD =SIMP(statut='f',typ='TXM',defaut="GSM",into=("SANS","GS","GSM","IGSM") ), - NB_REORTHO_DD =SIMP(statut='f',typ='I',defaut=0,val_min=0), - NB_REORTHO_INST =SIMP(statut='f',typ='I',defaut=0,val_min=0), - PRE_COND =SIMP(statut='f',typ='TXM',defaut="LUMPE",into=("LUMPE","SANS") ), - SCALING =SIMP(statut='f',typ='TXM',defaut="MULT",into=("SANS","MULT") ), - VERIF_SDFETI =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - TEST_CONTINU =SIMP(statut='f',typ='R',defaut=1.E-8,val_min=0.), - INFO_FETI =SIMP(statut='f',typ='TXM',defaut='FFFFFFFFFFFFFFFFFFFFFFFF'), - STOCKAGE_GI =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON","CAL") ), - NB_SD_PROC0 =SIMP(statut='f',typ='I',defaut=0,val_min=0), - ACCELERATION_SM =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - SYME =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + FILTRE_MODE =FACT(statut='f', + CRIT_EXTR =SIMP(statut='f',typ='TXM',defaut="MASS_EFFE_UN", + into=("MASS_EFFE_UN","MASS_GENE") ), + SEUIL =SIMP(statut='f',typ='R',defaut= 1.E-3 ), ), - ARCHIVAGE =FACT(statut='f', - regles=(EXCLUS('PAS_ARCH','LIST_INST','INST'), - EXCLUS('ARCH_ETAT_INIT','NUME_INIT'), ), - LIST_INST =SIMP(statut='f',typ=(listr8_sdaster) ), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - PAS_ARCH =SIMP(statut='f',typ='I' ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3), - ARCH_ETAT_INIT =SIMP(statut='f',typ='TXM',into=("OUI",)), - NUME_INIT =SIMP(statut='f',typ='I'), - DETR_NUME_SUIV =SIMP(statut='f',typ='TXM',into=("OUI",)), - CHAM_EXCLU =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',into=("DEPL","SIEF_ELGA","VARI_ELGA", - "VARI_NON_LOCAL","LANL_ELGA")), + IMPRESSION =FACT(statut='d', + TOUT_PARA =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + CUMUL =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + CRIT_EXTR =SIMP(statut='f',typ='TXM',defaut="MASS_EFFE_UN", + into=("MASS_EFFE_UN","MASS_GENE",) ), ), - OBSERVATION =FACT(statut='f',max='**', - NOM_CMP =SIMP(statut='o',typ='TXM',max='**' ), - SUIVI_DDL =SIMP(statut='f',typ='TXM',defaut="NON",max=1,into=("OUI","NON")), - b_suivi =BLOC(condition = "SUIVI_DDL == 'OUI' ", - regles=(UN_PARMI('NOEUD','MAILLE','GROUP_NO','GROUP_MA','VALE_MIN','VALE_MAX'), - PRESENT_PRESENT('MAILLE','POINT'),), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - POINT =SIMP(statut='f',typ='I' ,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=1, - into=("DEPL","VITE","ACCE","SIEF_ELGA", - "VARI_ELGA","FORC_NODA","DEPL_ABSOLU","VITE_ABSOLU","ACCE_ABSOLU",)), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - NUME_SUIVI =SIMP(statut='o',typ='I' ,min=1,max=4), - VALE_MAX =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=1,into=("OUI",) ), - VALE_MIN =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=1,into=("OUI",) ),), - b_non_suivi =BLOC(condition = "SUIVI_DDL == 'NON' ", - regles=(UN_PARMI('NOEUD','GROUP_NO','MAILLE'),PRESENT_PRESENT('MAILLE','POINT'),), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - POINT =SIMP(statut='f',typ='I' ,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=("DEPL","VITE","ACCE","SIEF_ELGA", - "VARI_ELGA","DEPL_ABSOLU","VITE_ABSOLU","ACCE_ABSOLU","VALE_CONT")), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - PAS_OBSE =SIMP(statut='f',typ='I'), - LIST_ARCH =SIMP(statut='f',typ=listis_sdaster), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),), +) ; +#& MODIF COMMANDE DATE 21/02/2006 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== + +from Macro.macro_proj_base_ops import macro_proj_base_ops + +def macro_proj_base_prod(self,MATR_ASSE_GENE,VECT_ASSE_GENE,PROFIL,**args ): + if MATR_ASSE_GENE != None: + for m in MATR_ASSE_GENE: + self.type_sdprod(m['MATRICE'],matr_asse_gene_r) + if VECT_ASSE_GENE != None: + for v in VECT_ASSE_GENE: + self.type_sdprod(v['VECTEUR'],vect_asse_gene) + return None + +MACRO_PROJ_BASE=MACRO(nom="MACRO_PROJ_BASE",op=macro_proj_base_ops, + regles=(AU_MOINS_UN('MATR_ASSE_GENE','VECT_ASSE_GENE')), + UIinfo={"groupes":("Matrices/vecteurs",)}, + sd_prod=macro_proj_base_prod, + fr="Projection des matrices et/ou vecteurs assemblés sur une base (modale ou de RITZ)", + BASE =SIMP(statut='o',typ=(mode_meca,mode_stat,base_modale,mode_gene) ), + NB_VECT =SIMP(statut='f',typ='I',defaut= 9999), + PROFIL =SIMP(statut='f',typ='TXM',defaut="DIAG",into=("PLEIN","DIAG") ), + MATR_ASSE_GENE =FACT(statut='f',max='**', + MATRICE =SIMP(statut='o',typ=CO,), + regles=(UN_PARMI('MATR_ASSE','MATR_ASSE_GENE',),), + MATR_ASSE =SIMP(statut='f',typ=matr_asse_depl_r), + MATR_ASSE_GENE =SIMP(statut='f',typ=matr_asse_gene_r), ), + VECT_ASSE_GENE =FACT(statut='f',max='**', + VECTEUR =SIMP(statut='o',typ=CO,), + regles=(UN_PARMI('VECT_ASSE','VECT_ASSE_GENE',),), + TYPE_VECT =SIMP(statut='f',typ='TXM',defaut="FORC"), + VECT_ASSE =SIMP(statut='f',typ=cham_no_sdaster), + VECT_ASSE_GENE =SIMP(statut='f',typ=vect_asse_gene), + ), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), +) ; +#& MODIF COMMANDE DATE 02/04/2007 AUTEUR BODEL C.BODEL +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2006 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== - AFFICHAGE = FACT(statut='f',max=16, +from Macro.macro_visu_meidee_ops import macro_visu_meidee_ops + +def macro_visu_meidee_prod(self,RESULTATS,**args): + if RESULTATS != None: + for res in RESULTATS: + if isinstance(res['TABLE'],CO) : + if res['TYPE_TABLE'] == 'TABLE': + self.type_sdprod(res['TABLE'],table_sdaster) + else: + self.type_sdprod(res['TABLE'],table_fonction) + + return None + +MACRO_VISU_MEIDEE=MACRO(nom = 'MACRO_VISU_MEIDEE', + op = macro_visu_meidee_ops, + sd_prod = macro_visu_meidee_prod, + reentrant = 'n', + UIinfo = {"groupes":("Outils métier",)}, + fr = "Outil de post-traitement interactif pour Meidee ", + UNITE_FIMEN = SIMP( statut='f',typ='I',max='**' ), + INTERACTIF = SIMP( statut='f',typ='TXM',into=('OUI','NON'),defaut='OUI' ), + RESULTATS = FACT( statut='f',max='**', + TABLE = SIMP(statut='o',typ=(table_sdaster,table_fonction,CO)), + TYPE_TABLE = SIMP(statut='f',typ='TXM',defaut='TABLE', into=('TABLE','TABLE_FONCTION')), + ), + UNITE_RESU = SIMP( statut='f',typ='I',defaut=6), + + b_inter = BLOC( condition="INTERACTIF=='NON'", + + EXPANSION = FACT( statut='f',max='**', + CALCUL = SIMP(statut='o',typ=mode_meca), + MESURE = SIMP(statut='o',typ=mode_meca), + RESOLUTION = SIMP(statut='f',typ='TXM',defaut='SVD',into=('SVD','LU')), + b_reso = BLOC(condition = "RESOLUTION=='SVD'", + EPS = SIMP(statut='f',typ='R', defaut = 0.) + ) + ), + FLUIDE_ELASTIQUE = FACT( statut='f', max='**', + MESURE1 = SIMP(statut='o',typ=mode_meca), + MESURE2 = SIMP(statut='o',typ=mode_meca), + MESURE3 = SIMP(statut='o',typ=mode_meca), + RESU_EXPANSION = SIMP(statut='f',typ='TXM',defaut='NON',into=('OUI','NON')), + b_base = BLOC(condition = "RESU_EXPANSION=='NON'", + BASE = SIMP(statut='o',typ=mode_meca), + ) + ), + TURBULENT = FACT( statut='f',max='**', + ALPHA = SIMP(statut='f',typ='R', defaut = 0.), + EPS = SIMP(statut='f',typ='R', defaut = 0.), + IDENTIFICATION_MOMENTS = SIMP(statut='f',typ='TXM',defaut='NON', + into=('OUI','NON')), + OBSERVABILITE = SIMP(statut='o',typ=mode_meca), + COMMANDABILITE = SIMP(statut='o',typ=mode_meca), + INTE_SPEC = SIMP(statut='o',typ=table_sdaster), + RESU_EXPANSION = SIMP(statut='f',typ='TXM',defaut='NON',into=('OUI','NON')), + b_base = BLOC(condition = "RESU_EXPANSION=='NON'", + BASE = SIMP(statut='o',typ=mode_meca), + ), + ) + ) + ) - UNITE = SIMP(statut='f',typ='I',val_min=1), +#& MODIF COMMANDE DATE 15/05/2007 AUTEUR ASSIRE A.ASSIRE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== + +from Macro.macr_recal_ops import macr_recal_ops - LONG_R = SIMP(statut='f',typ='I',defaut=12,val_min=1,val_max=12), - PREC_R = SIMP(statut='f',typ='I',defaut=5, val_min=1,val_max=8), - LONG_I = SIMP(statut='f',typ='I',defaut=6, val_min=1,val_max=12), +def macr_recal_prod(self,**args ): + return listr8_sdaster - NOM_COLONNE = SIMP(statut='o',typ='TXM',defaut="STANDARD", - into=("STANDARD","MINIMUM", - "ITER_NEWT", - "INCR_TPS", - "RESI_RELA","RELA_NOEU", - "RESI_MAXI","MAXI_NOEU", - "RESI_REFE","REFE_NOEU", - "RELI_ITER","RELI_COEF", - "PILO_PARA", - "LAGR_ECAR","LAGR_INCR","LAGR_ITER", - "MATR_ASSE", - "ITER_DEBO", - "CTCD_ITER","CTCD_INFO","CTCD_GEOM","CTCD_NOEU", - "CTCC_GEOM","CTCC_FROT","CTCC_CONT", - "SUIV_1","SUIV_2","SUIV_3","SUIV_4","ITER_FETI", - ), - ), - b_residu = BLOC(condition = " NOM_COLONNE == 'RESI_RELA' or \ - NOM_COLONNE == 'RESI_MAXI' or\ - NOM_COLONNE == 'RESI_REFE' or\ - NOM_COLONNE == 'CTCD_GEOM' or\ - NOM_COLONNE == 'STANDARD' ", - INFO_RESIDU = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), - ), +MACR_RECAL = MACRO(nom="MACR_RECAL",op=macr_recal_ops, + UIinfo={"groupes":("Résultats et champs",)}, + sd_prod=macr_recal_prod, + fr="Réalise le recalage des calculs Aster sur des résultats expérimentaux" + +" ou sur d'autres résultats de calculs", + UNITE_ESCL =SIMP(statut='o',typ='I'), + RESU_EXP =SIMP(statut='o',typ=assd,max='**'), + POIDS =SIMP(statut='f',typ=assd,max='**'), + RESU_CALC =SIMP(statut='o',typ=assd,max='**'), + LIST_PARA =SIMP(statut='o',typ=assd,max='**'), + LIST_DERIV =SIMP(statut='f',typ=assd,max='**'), + ITER_MAXI =SIMP(statut='f',typ='I',defaut=10), + ITER_FONC_MAXI =SIMP(statut='f',typ='I',defaut=100), + RESI_GLOB_RELA =SIMP(statut='f',typ='R',defaut=1.E-3), + UNITE_RESU =SIMP(statut='f',typ='I',defaut=91), + PARA_DIFF_FINI =SIMP(statut='f',typ='R',defaut=0.001), + GRAPHIQUE =FACT(statut='f', + FORMAT =SIMP(statut='f',typ='TXM',defaut='XMGRACE',into=("XMGRACE","GNUPLOT")), + b_pilote = BLOC(condition = "FORMAT == 'XMGRACE'", + fr="Mots-clés propres à XMGRACE", + PILOTE =SIMP(statut='f',typ='TXM',defaut='', + into=('','POSTSCRIPT','EPS','MIF','SVG','PNM','PNG','JPEG','PDF','INTERACTIF'), + fr="Pilote de sortie, PNG/JPEG/PDF ne sont pas disponibles sur toutes les installations de xmgrace"), + UNITE =SIMP(statut='f',typ='I',val_min=10,val_max=90,defaut=29, + fr="Unité logique définissant le fichier (fort.N) dans lequel on écrit"), ), + AFFICHAGE =SIMP(statut='f',typ='TXM',defaut='TOUTE_ITERATION',into=("TOUTE_ITERATION","ITERATION_FINALE")),), + SUIVI_ESCLAVE =SIMP(statut='f',typ='TXM',defaut='NON',into=("OUI","NON"),), + METHODE =SIMP(statut='f',typ='TXM',defaut='LEVENBERG',into=("LEVENBERG","FMIN","FMINBFGS","FMINNCG","EXTERNE")), - CRIT_FLAMB =FACT(statut='f',min=1,max=1, - NB_FREQ =SIMP(statut='f',typ='I',max=1,defaut=3), - CHAR_CRIT =SIMP(statut='f',typ='R',min=2,max=2,defaut=(-10.0,10), - fr="Valeur des deux charges critiques délimitant la bande de recherche en HPP"), + b_gradient =BLOC(condition = "METHODE == 'FMINBFGS' or METHODE == 'FMINNCG'" , + GRADIENT =SIMP(statut='f',typ='TXM',defaut='NON_CALCULE', into=("NON_CALCULE", "NORMAL", "ADIMENSIONNE" )), ), - SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', - fr="Liste des paramètres de sensibilité", - ang="List of sensitivity parameters"), - SOLV_NON_LOCAL =FACT(statut='f', - METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC","MUMPS") ), - b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale", - RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), - ), - b_ldlt =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT", - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), - ), - b_ldlt_mult =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ", - fr="Paramètres relatifs à la non inversibilité de la matrice à factorise", - NPREC =SIMP(statut='f',typ='I',defaut= 8 ), - STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", - TYPE_RESOL =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("NONSYM","SYMGEN","SYMDEF","AUTO")), - SCALING =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("SANS","AUTO")), - RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), - ELIM_LAGR2 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=10,), - RESI_RELA =SIMP(statut='f',typ='R',defaut=-1.0,), - ), - b_gcpc =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué", - PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ), - NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), - RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), - NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), - ), - EPS =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - ), - LAGR_NON_LOCAL =FACT(statut='f', - ITER_DUAL_MAXI =SIMP(statut='f',typ='I',defaut= 50), - RESI_DUAL_ABSO =SIMP(statut='o',typ='R'), - RESI_PRIM_ABSO =SIMP(statut='o',typ='R'), - R =SIMP(statut='f',typ='R',defaut= 1000.), - ITER_PRIM_MAXI =SIMP(statut='f',typ='I',defaut= 10), - ), - INFO =SIMP(statut='f',typ='I',into=(1,2) ), - TITRE =SIMP(statut='f',typ='TXM',max='**' ), - ) -#& MODIF COMMANDE DATE 17/10/2006 AUTEUR MCOURTOI M.COURTOIS + b_gradient_externe =BLOC(condition = "METHODE == 'EXTERNE'" , + GRADIENT =SIMP(statut='f',typ='TXM',defaut='NON_CALCULE', into=("NON_CALCULE", "NORMAL", "ADIMENSIONNE" )), + ), + + b_type_fonctionnelle =BLOC(condition = "METHODE == 'EXTERNE'" , + FONCTIONNELLE =SIMP(statut='f',typ='TXM',defaut='SCALAIRE',into=("SCALAIRE","VECTORIELLE")), + ), + + INFO =SIMP(statut='f',typ='I',defaut=2,into=( 1, 2 ) ), +); +#& MODIF COMMANDE DATE 09/01/2007 AUTEUR ABBAS M.ABBAS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# COPYRIGHT (C) 1991 - 2006 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE MCOURTOI M.COURTOIS -TEST_FONCTION=PROC(nom="TEST_FONCTION",op= 135, - fr="Extraction d'une valeur numérique ou d'un attribut de fonction pour comparaison à une valeur de référence", - UIinfo={"groupes":("Impression",)}, - TEST_NOOK =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - VALEUR =FACT(statut='f',max='**', - fr="Tester la valeur d une fonction ou d une nappe", - regles=(UN_PARMI('VALE_REFE','VALE_REFE_C',), - DERIVABLE('FONCTION'),), - FONCTION =SIMP(statut='o',typ=(fonction_sdaster,fonction_c,nappe_sdaster,formule) ), - SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom), - fr="Paramètre de sensibilité.", - ang="Sensitivity parameter"), - NOM_PARA =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=2), - VALE_PARA =SIMP(statut='o',typ='R' ,validators=NoRepeat(),max=2), - VALE_REFE =SIMP(statut='f',typ='R',max='**' ), - VALE_REFE_C =SIMP(statut='f',typ='C',max='**' ), - VALE_ABS =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - CRITERE =SIMP(statut='f',typ='TXM',fr="Critère de comparaison avec la solution de référence", - defaut="RELATIF",into=("RELATIF","ABSOLU") ), - PRECISION =SIMP(statut='f',typ='R',fr="Ecart maximal autorisé avec la solution de référence", - defaut= 1.E-3 ), - REFERENCE =SIMP(statut='f',typ='TXM', - into=("ANALYTIQUE","SOURCE_EXTERNE","NON_REGRESSION","AUTRE_ASTER") ), - b_version = BLOC (condition = "REFERENCE == 'NON_REGRESSION'", - VERSION =SIMP(statut='f',typ='TXM' ), - ), - ), - ATTRIBUT =FACT(statut='f',max='**', - fr="Tester la valeur d un attribut d une fonction ou d''une nappe", - FONCTION =SIMP(statut='o',typ=(fonction_sdaster,fonction_c,nappe_sdaster,formule) ), - PARA =SIMP(statut='f',typ='R' ), - CRIT_PARA =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - PREC_PARA =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - ATTR =SIMP(statut='o',typ='TXM', - into=("NOM_PARA","NOM_RESU","PROL_DROITE","PROL_GAUCHE","INTERPOL", - "PROL_GAUCHE_FONC","PROL_DROITE_FONC","INTERPOL_FONC","NOM_PARA_FONC") ), - ATTR_REFE =SIMP(statut='o',typ='TXM' ), - REFERENCE =SIMP(statut='f',typ='TXM', - into=("ANALYTIQUE","SOURCE_EXTERNE","NON_REGRESSION","AUTRE_ASTER") ), - b_version =BLOC(condition = "REFERENCE == 'NON_REGRESSION'", - VERSION =SIMP(statut='f',typ='TXM' ), - ), - ), - TABL_INTSP =FACT(statut='f',max='**', - fr="Tester la valeur d une fonction contenue dans une table interspectrale", - regles=(UN_PARMI('NUME_ORDRE_I','NOEUD_I'),), - INTE_SPEC =SIMP(statut='o',typ=table_fonction), - NOEUD_I =SIMP(statut='f',typ=no), - NUME_ORDRE_I =SIMP(statut='f',typ='I' ), - b_nume_ordre_i = BLOC (condition = "NUME_ORDRE_I != None", - NUME_ORDRE_J =SIMP(statut='o',typ='I' ), - ), - b_noeud_i = BLOC (condition = "NOEUD_I != None", - NOEUD_J =SIMP(statut='o',typ=no), - NOM_CMP_I =SIMP(statut='o',typ='TXM' ), - NOM_CMP_J =SIMP(statut='o',typ='TXM' ), - ), - NUME_VITE_FLUI =SIMP(statut='f',typ='I' ), - VALE_PARA =SIMP(statut='o',typ='R' ), - VALE_REFE_C =SIMP(statut='o',typ='C',max='**' ), - CRITERE =SIMP(statut='f',typ='TXM',fr="Critère de comparaison avec la solution de référence", - defaut="RELATIF",into=("RELATIF","ABSOLU") ), - PRECISION =SIMP(statut='f',typ='R',fr="Ecart maximal autorisé avec la solution de référence", - defaut= 1.E-3 ), - REFERENCE =SIMP(statut='f',typ='TXM', - into=("ANALYTIQUE","SOURCE_EXTERNE","NON_REGRESSION","AUTRE_ASTER") ), - b_version =BLOC(condition = "REFERENCE == 'NON_REGRESSION'", - VERSION =SIMP(statut='f',typ='TXM' ), - ), + +from Macro.macr_spectre_ops import macr_spectre_ops + +MACR_SPECTRE=MACRO(nom="MACR_SPECTRE",op=macr_spectre_ops,sd_prod=table_sdaster, + reentrant='n', UIinfo={"groupes":("Outils métier",)}, + fr="calcul de spectre, post-traitement de séisme", + MAILLAGE =SIMP(statut='o',typ=maillage_sdaster,), + PLANCHER =FACT(statut='o',max='**', + regles=(AU_MOINS_UN('NOEUD','GROUP_NO' ),), + NOM =SIMP(statut='o',typ='TXM',), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), ), + NOM_CHAM =SIMP(statut='o',typ='TXM' ,into=('ACCE','DEPL')), + CALCUL =SIMP(statut='o',typ='TXM' ,into=('ABSOLU','RELATIF'),position='global'), + b_acce =BLOC( condition = "NOM_CHAM=='ACCE'", + regles=(UN_PARMI('LIST_FREQ','FREQ'),), + AMOR_SPEC =SIMP(statut='o',typ='R',max='**'), + LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), + LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster ), + FREQ =SIMP(statut='f',typ='R',max='**'), + NORME =SIMP(statut='o',typ='R'), + RESU =FACT(statut='o',max='**', + regles=(UN_PARMI('RESU_GENE','RESULTAT'),), + RESU_GENE =SIMP(statut='f',typ=tran_gene), + RESULTAT =SIMP(statut='f',typ=(dyna_trans,evol_noli)), + b_calc =BLOC( condition = "CALCUL=='RELATIF'", + ACCE_X =SIMP(statut='o',typ=fonction_sdaster), + ACCE_Y =SIMP(statut='o',typ=fonction_sdaster), + ACCE_Z =SIMP(statut='o',typ=fonction_sdaster),), ), + IMPRESSION =FACT(statut='f', + TRI =SIMP(statut='f',typ='TXM',defaut='AMOR_SPEC',into=("AMOR_SPEC","DIRECTION",),), + FORMAT =SIMP(statut='f',typ='TXM',defaut='TABLEAU',into=("TABLEAU","XMGRACE",),), + UNITE =SIMP(statut='f',typ='I',val_min=10,val_max=90,defaut=29, + fr="Unité logique définissant le fichier (fort.N) dans lequel on écrit"), + b_pilote = BLOC(condition = "FORMAT == 'XMGRACE'", + PILOTE =SIMP(statut='f',typ='TXM',defaut='', + into=('','POSTSCRIPT','EPS','MIF','SVG','PNM','PNG','JPEG','PDF','INTERACTIF'),),), + TOUT =SIMP(statut='f',typ='TXM',defaut='NON',into=("OUI","NON",),), + ), + ), + b_depl =BLOC( condition = "NOM_CHAM=='DEPL'", + LIST_INST =SIMP(statut='f',typ=listr8_sdaster), + RESU =FACT(statut='o',max=3, + regles=(UN_PARMI('RESU_GENE','RESULTAT'),), + RESU_GENE =SIMP(statut='f',typ=tran_gene), + RESULTAT =SIMP(statut='f',typ=(dyna_trans,evol_noli)), + b_calc =BLOC( condition = "CALCUL=='ABSOLU'", + DEPL_X =SIMP(statut='o',typ=fonction_sdaster), + DEPL_Y =SIMP(statut='o',typ=fonction_sdaster), + DEPL_Z =SIMP(statut='o',typ=fonction_sdaster),),), ), +) +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +MAJ_CATA=PROC(nom="MAJ_CATA",op=20, + UIinfo={"groupes":("Gestion du travail",)}, + fr="Compilation des catalogues de commandes et d'éléments", + + ELEMENT =FACT(statut='f',), + ) ; -#& MODIF COMMANDE DATE 10/10/2006 AUTEUR REZETTE C.REZETTE -# RESPONSABLE VABHHTS J.PELLET +#& MODIF COMMANDE DATE 04/04/2007 AUTEUR ABBAS M.ABBAS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -21003,158 +19134,93 @@ TEST_FONCTION=PROC(nom="TEST_FONCTION",op= 135, # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# -# # ====================================================================== -TEST_RESU=PROC(nom="TEST_RESU",op=23, - UIinfo={"groupes":("Impression",)}, - fr="Extraction d'une valeur d'une structure de donnée et comparaison à une valeur de référence", - regles=(AU_MOINS_UN('CHAM_NO','CHAM_ELEM','RESU','GENE','OBJET')), - - CHAM_NO =FACT(statut='f',max='**', - regles=(UN_PARMI('NOEUD','GROUP_NO','TYPE_TEST'), - EXCLUS('NOEUD','GROUP_NO'), - PRESENT_PRESENT('NOEUD','NOM_CMP'), - PRESENT_PRESENT( 'GROUP_NO','NOM_CMP'), - UN_PARMI('VALE','VALE_I','VALE_C'),), - CHAM_GD =SIMP(statut='o',typ=cham_no_sdaster), - NOEUD =SIMP(statut='f',typ=no ), - GROUP_NO =SIMP(statut='f',typ=grno ), - NOM_CMP =SIMP(statut='f',typ='TXM'), - TYPE_TEST =SIMP(statut='f',typ='TXM',into=("SOMM_ABS","SOMM","MAX","MIN")), - VALE =SIMP(statut='f',typ='R',max='**'), - VALE_I =SIMP(statut='f',typ='I',max='**'), - VALE_C =SIMP(statut='f',typ='C',max='**'), - VALE_ABS =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3), - REFERENCE =SIMP(statut='f',typ='TXM',into=("ANALYTIQUE","SOURCE_EXTERNE", - "NON_REGRESSION","AUTRE_ASTER")), - VERSION =SIMP(statut='f',typ='TXM'), - ), - - CHAM_ELEM =FACT(statut='f',max='**', - regles=(UN_PARMI('MAILLE','TYPE_TEST',), - EXCLUS('NOEUD','GROUP_NO','POINT'), - PRESENT_PRESENT('NOEUD','NOM_CMP'), - PRESENT_PRESENT('GROUP_NO','NOM_CMP'), - PRESENT_PRESENT('POINT','NOM_CMP'), - UN_PARMI('VALE','VALE_I','VALE_C'), ), - CHAM_GD =SIMP(statut='o',typ=cham_elem), - MAILLE =SIMP(statut='f',typ=ma), - POINT =SIMP(statut='f',typ='I' ), - SOUS_POINT =SIMP(statut='f',typ='I'), - NOEUD =SIMP(statut='f',typ=no), - GROUP_NO =SIMP(statut='f',typ=grno), - NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), - TYPE_TEST =SIMP(statut='f',typ='TXM',into=("SOMM_ABS","SOMM","MAX","MIN") ), - VALE =SIMP(statut='f',typ='R',max='**' ), - VALE_I =SIMP(statut='f',typ='I',max='**' ), - VALE_C =SIMP(statut='f',typ='C',max='**' ), - VALE_ABS =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - REFERENCE =SIMP(statut='f',typ='TXM',into=("ANALYTIQUE","SOURCE_EXTERNE", - "NON_REGRESSION","AUTRE_ASTER") ), - VERSION =SIMP(statut='f',typ='TXM' ), +# RESPONSABLE VABHHTS J.PELLET +MECA_STATIQUE=OPER(nom="MECA_STATIQUE",op=46,sd_prod=evol_elas, + fr="Résoudre un problème de mécanique statique linéaire",reentrant='f', + UIinfo={"groupes":("Résolution",)}, + regles=(EXCLUS("INST","LIST_INST"), + AU_MOINS_UN('CHAM_MATER','CARA_ELEM',), + CONCEPT_SENSIBLE('ENSEMBLE'),), + MODELE =SIMP(statut='o',typ=modele_sdaster), + CHAM_MATER =SIMP(statut='f',typ=cham_mater, + fr="le CHAM_MATER est nécessaire, sauf si le modèle ne contient que des éléments discrets (modélisations DIS_XXX)", + ang="CHAM_MATER is compulsory, except if the model contains only discret elements (modelizations DIS_XXX)"), + CARA_ELEM =SIMP(statut='f',typ=cara_elem, + fr="le CARA_ELEM est nécessaire dès que le modèle contient des éléments de structure : coques, poutres, ...", + ang="CARA_ELEM is compulsory as soon as the model contains structural elements : plates, beams, ..."), + TITRE =SIMP(statut='f',typ='TXM',max='**'), + EXCIT =FACT(statut='o',max='**', + CHARGE =SIMP(statut='o',typ=(char_meca,char_cine_meca)), + FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",) ), ), + INST =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + LIST_INST =SIMP(statut='f',typ=listr8_sdaster), + INST_FIN =SIMP(statut='f',typ='R'), + OPTION =SIMP(statut='f',typ='TXM',into=("SIEF_ELGA_DEPL","SANS"),defaut="SIEF_ELGA_DEPL",max=1, + fr="seule option : contraintes aux points de Gauss. Utiliser CALC_ELEM pour les autres.", + ), + SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', + fr="Liste des paramètres de sensibilité.", + ang="List of sensitivity parameters"), - RESU =FACT(statut='f',max='**', - regles=(UN_PARMI('NUME_ORDRE','INST','FREQ','NUME_MODE','NOEUD_CMP','NOM_CAS','ANGL'), - UN_PARMI('NOM_CHAM','PARA'), - PRESENT_ABSENT('PARA','NOEUD','GROUP_NO','POINT','NOM_CMP','TYPE_TEST'), - PRESENT_PRESENT('NOM_CMP','NOM_CHAM'), - EXCLUS('NOEUD','GROUP_NO','POINT','TYPE_TEST'), - PRESENT_PRESENT('NOEUD','NOM_CMP'), - PRESENT_PRESENT('GROUP_NO','NOM_CMP'), - PRESENT_PRESENT('POINT','NOM_CMP'), - UN_PARMI('VALE','VALE_I','VALE_C'), - DERIVABLE('RESULTAT'),), - RESULTAT =SIMP(statut='o',typ=resultat_sdaster), - SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom), - fr="Paramètre de sensibilité.", - ang="Sensitivity parameter"), - NUME_ORDRE =SIMP(statut='f',typ='I'), - INST =SIMP(statut='f',typ='R'), - FREQ =SIMP(statut='f',typ='R'), - NUME_MODE =SIMP(statut='f',typ='I'), - NOEUD_CMP =SIMP(statut='f',typ='TXM',min=2,max=2), - NOM_CAS =SIMP(statut='f',typ='TXM'), - ANGL =SIMP(statut='f',typ='R'), - PARA =SIMP(statut='f',typ='TXM'), - NOM_CHAM =SIMP(statut='f',typ='TXM',into=C_NOM_CHAM_INTO()), - NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), - MAILLE =SIMP(statut='f',typ=ma ,max='**'), - NOEUD =SIMP(statut='f',typ=no ,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno ,max='**'), - POINT =SIMP(statut='f',typ='I'), - SOUS_POINT =SIMP(statut='f',typ='I'), - TYPE_TEST =SIMP(statut='f',typ='TXM',into=("SOMM_ABS","SOMM","MAX","MIN")), - VALE =SIMP(statut='f',typ='R',max='**'), - VALE_I =SIMP(statut='f',typ='I',max='**'), - VALE_C =SIMP(statut='f',typ='C',max='**'), - VALE_ABS =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - CRITERE =SIMP(statut='f',typ='TXM',into=("RELATIF","ABSOLU"),max=2), - PRECISION =SIMP(statut='f',typ='R',max=2), - REFERENCE =SIMP(statut='f',typ='TXM',into=("ANALYTIQUE","SOURCE_EXTERNE", - "NON_REGRESSION","AUTRE_ASTER",) ), - VERSION =SIMP(statut='f',typ='TXM' ), - ), + SOLVEUR =FACT(statut='d', + METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC","FETI","MUMPS") ), - GENE =FACT(statut='f',max='**', - regles=(UN_PARMI('VALE','VALE_I','VALE_C') ,), - RESU_GENE =SIMP(statut='o',typ=(vect_asse_gene, tran_gene, mode_gene, harm_gene)), - b_vect_asse =BLOC(condition = "AsType(RESU_GENE) == vect_asse_gene", - NUME_CMP_GENE =SIMP(statut='o',typ='I'), + b_feti =BLOC(condition = "METHODE == 'FETI' ",fr="Paramètres de la méthode FETI 1", + PARTITION =SIMP(statut='o',typ=sd_feti_sdaster), + RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), + RESI_RELA =SIMP(statut='f',typ='R',defaut=1.E-6,val_min=0.), + NMAX_ITER =SIMP(statut='f',typ='I',defaut=0,val_min=0), + REAC_RESI =SIMP(statut='f',typ='I',defaut=0,val_min=0), + TYPE_REORTHO_DD =SIMP(statut='f',typ='TXM',defaut="GSM",into=("SANS","GS","GSM","IGSM") ), + NB_REORTHO_DD =SIMP(statut='f',typ='I',defaut=0,val_min=0), + NB_REORTHO_INST =SIMP(statut='f',typ='I',defaut=0,val_min=0), + PRE_COND =SIMP(statut='f',typ='TXM',defaut="LUMPE",into=("LUMPE","SANS") ), + SCALING =SIMP(statut='f',typ='TXM',defaut="MULT",into=("SANS","MULT") ), + VERIF_SDFETI =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + TEST_CONTINU =SIMP(statut='f',typ='R',defaut=1.E-8,val_min=0.), + INFO_FETI =SIMP(statut='f',typ='TXM',defaut='FFFFFFFFFFFFFFFFFFFFFFFF'), + STOCKAGE_GI =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON","CAL") ), + NB_SD_PROC0 =SIMP(statut='f',typ='I',defaut=0,val_min=0), + ACCELERATION_SM =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), ), - b_mode =BLOC(condition = "(AsType(RESU_GENE) == harm_gene) or (AsType(RESU_GENE) == mode_gene)", - regles=(UN_PARMI('NUME_ORDRE','FREQ','NUME_MODE'), - UN_PARMI('NOM_CHAM','PARA'), - PRESENT_PRESENT('NOM_CHAM','NUME_CMP_GENE'),), - NOM_CHAM =SIMP(statut='f',typ='TXM',into=C_NOM_CHAM_INTO()), - NUME_CMP_GENE =SIMP(statut='f',typ='I'), - PARA =SIMP(statut='f',typ='TXM'), - NUME_ORDRE =SIMP(statut='f',typ='I'), - NUME_MODE =SIMP(statut='f',typ='I'), - FREQ =SIMP(statut='f',typ='R'), + + b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale", + RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), ), - b_tran =BLOC(condition = "AsType(RESU_GENE) == tran_gene", - regles=(UN_PARMI('NUME_ORDRE','INST') ,), - NOM_CHAM =SIMP(statut='o',typ='TXM',into=C_NOM_CHAM_INTO()), - NUME_CMP_GENE =SIMP(statut='o',typ='I'), - NUME_ORDRE =SIMP(statut='f',typ='I'), - INST =SIMP(statut='f',typ='R'), + + b_ldlt =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT", + RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), ), - VALE =SIMP(statut='f',typ='R',max='**'), - VALE_I =SIMP(statut='f',typ='I',max='**'), - VALE_C =SIMP(statut='f',typ='C',max='**'), - VALE_ABS =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - CRITERE =SIMP(statut='f',typ='TXM',into=("RELATIF","ABSOLU"),max=2), - PRECISION =SIMP(statut='f',typ='R',max=2), - REFERENCE =SIMP(statut='f',typ='TXM',into=("ANALYTIQUE","SOURCE_EXTERNE", - "NON_REGRESSION","AUTRE_ASTER",) ), - VERSION =SIMP(statut='f',typ='TXM' ), - ), - OBJET =FACT(statut='f',max='**', - regles=(UN_PARMI('S_I','S_R','RESUME',), - UN_PARMI('VALE','VALE_I','VALE_C','RESUME','S_R','S_I'),), - NOM =SIMP(statut='o',typ='TXM'), - S_R =SIMP(statut='f',typ='R'), - S_I =SIMP(statut='f',typ='I'), - RESUME =SIMP(statut='f',typ='I'), - VALE =SIMP(statut='f',typ='R'), - VALE_I =SIMP(statut='f',typ='I'), - VALE_C =SIMP(statut='f',typ='C'), - VALE_ABS =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), - REFERENCE =SIMP(statut='f',typ='TXM',into=("ANALYTIQUE","SOURCE_EXTERNE", - "NON_REGRESSION","AUTRE_ASTER",) ), - VERSION =SIMP(statut='f',typ='TXM' ), + b_ldlt_mult =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' or METHODE == 'FETI' ", + fr="Paramètres relatifs à la non inversibilité de la matrice à factorise", + NPREC =SIMP(statut='f',typ='I',defaut=8), + STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + ), + + b_gcpc =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué", + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ), + NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), + RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), + RESI_RELA =SIMP(statut='f',typ='R',defaut=1.E-6), + NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), + ), + + b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", + TYPE_RESOL =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("NONSYM","SYMGEN","SYMDEF","AUTO")), + SCALING =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("SANS","AUTO")), + RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), + ELIM_LAGR2 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), + PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=10,), + RESI_RELA =SIMP(statut='f',typ='R',defaut=1.E-6,), + ), ), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 10/10/2006 AUTEUR REZETTE C.REZETTE +#& MODIF COMMANDE DATE 16/05/2007 AUTEUR COURTOIS M.COURTOIS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -21172,262 +19238,337 @@ TEST_RESU=PROC(nom="TEST_RESU",op=23, # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE VABHHTS J.PELLET -TEST_TABLE=PROC(nom="TEST_TABLE",op= 177, - UIinfo={"groupes":("Impression",)}, - fr="Tester une cellule ou une colonne d'une table", - regles=(UN_PARMI('VALE','VALE_I','VALE_C', ), - DERIVABLE('TABLE'),), -# concept table_sdaster à tester - TABLE =SIMP(statut='o',typ=table_sdaster), +# RESPONSABLE GNICOLAS G.NICOLAS +from Utilitai.Sensibilite import memo_nom_sensi_ops - SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom), - fr="Paramètre de sensibilité.", - ang="Sensitivity parameter"), - FILTRE =FACT(statut='f',max='**', - NOM_PARA =SIMP(statut='o',typ='TXM' ), - CRIT_COMP =SIMP(statut='f',typ='TXM',defaut="EQ", - into=("EQ","LT","GT","NE","LE","GE","VIDE", - "NON_VIDE","MAXI","ABS_MAXI","MINI","ABS_MINI") ), - b_vale =BLOC(condition = "(CRIT_COMP in ('EQ','NE','GT','LT','GE','LE'))", - regles=(UN_PARMI('VALE','VALE_I','VALE_K','VALE_C',),), - VALE =SIMP(statut='f',typ='R',), - VALE_I =SIMP(statut='f',typ='I',), - VALE_C =SIMP(statut='f',typ='C',), - VALE_K =SIMP(statut='f',typ='TXM' ),), +MEMO_NOM_SENSI=MACRO(nom="MEMO_NOM_SENSI",op=memo_nom_sensi_ops, + UIinfo={"groupes":("Fonction",)}, + fr="Mémorisation des noms des concepts dérivés.", + ang="Memorisation of the names of the sensitive concepts.", + + NOM=FACT(statut='o',max='**', + regles=(PRESENT_PRESENT('MOT_CLE','VALEUR','MOT_FACT' ),), + + NOM_SD=SIMP(statut='o',typ='TXM', + fr="Nom de la structure de base", + ang="Name of the basic structure"), + + PARA_SENSI=SIMP(statut='o',typ=(para_sensi,theta_geom), + fr="Nom du paramètre sensible", + ang="Name of the sensitive parameter"), + + NOM_COMPOSE=SIMP(statut='f',typ='TXM',defaut=" ", + fr="Nom de la structure composée", + ang="Name of the built structure"), + + MOT_FACT=SIMP(statut='f',typ='TXM',max='**', + fr="Liste des mots clés facteurs concernés par la dérivation", + ang="Factor keyword list involved in derivation"), + + MOT_CLE=SIMP(statut='f',typ='TXM',max='**', + fr="Liste des mots clés concernés par la dérivation", + ang="Keyword list involved in derivation"), + + VALEUR=SIMP(statut='f',typ='TXM',max='**', + fr="Liste des objets concernés par la dérivation", + ang="Object list involved in derivation"), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - ), - TYPE_TEST =SIMP(statut='f',typ='TXM',into=("SOMM_ABS","SOMM","MAX","MIN") ), - NOM_PARA =SIMP(statut='o',typ='TXM' ), - VALE =SIMP(statut='f',typ='R',max='**' ), - VALE_I =SIMP(statut='f',typ='I',max='**' ), - VALE_C =SIMP(statut='f',typ='C',max='**' ), - VALE_ABS =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.2E-3 ), - REFERENCE =SIMP(statut='f',typ='TXM', - into=("ANALYTIQUE","SOURCE_EXTERNE","NON_REGRESSION","AUTRE_ASTER") ), - b_version =BLOC(condition = "REFERENCE == 'NON_REGRESSION'", - VERSION =SIMP(statut='f',typ='TXM' ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), ), -) ; -#& MODIF COMMANDE DATE 13/12/2006 AUTEUR PELLET J.PELLET +) +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -THER_LINEAIRE=OPER(nom="THER_LINEAIRE",op=25,sd_prod=evol_ther,reentrant='f', +MODE_ITER_CYCL=OPER(nom="MODE_ITER_CYCL",op= 80,sd_prod=mode_cycl, + fr="Calcul des modes propres d'une structure à répétitivité cyclique à partir" + +" d'une base de modes propres réels", + reentrant='n', UIinfo={"groupes":("Résolution",)}, - fr="Résoudre un problème thermique linéaire stationnaire ou transitoire", - regles=(CONCEPT_SENSIBLE('ENSEMBLE'),), - MODELE =SIMP(statut='o',typ=modele_sdaster), - CHAM_MATER =SIMP(statut='o',typ=cham_mater), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - EXCIT =FACT(statut='o',max='**', - CHARGE =SIMP(statut='o',typ=(char_ther,char_cine_ther)), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), - INCREMENT =FACT(statut='f', - LIST_INST =SIMP(statut='o',typ=listr8_sdaster ), - NUME_INIT =SIMP(statut='f',typ='I'), - NUME_FIN =SIMP(statut='f',typ='I'), - ), - TEMP_INIT =FACT(statut='f', - regles=(EXCLUS('STATIONNAIRE','EVOL_THER','CHAM_NO','VALE'),), - STATIONNAIRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - EVOL_THER =SIMP(statut='f',typ=evol_ther), - CHAM_NO =SIMP(statut='f',typ=cham_no_sdaster), - VALE =SIMP(statut='f',typ='R'), - NUME_INIT =SIMP(statut='f',typ='I'), + BASE_MODALE =SIMP(statut='o',typ=base_modale ), + NB_MODE =SIMP(statut='f',typ='I',defaut= 999 ), + NB_SECTEUR =SIMP(statut='o',typ='I' ), + LIAISON =FACT(statut='o', + DROITE =SIMP(statut='o',typ='TXM' ), + GAUCHE =SIMP(statut='o',typ='TXM' ), + AXE =SIMP(statut='f',typ='TXM' ), ), - SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', - fr="Liste des paramètres de sensibilité.", - ang="List of sensitivity parameters", + VERI_CYCL =FACT(statut='f', + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF",) ), + DIST_REFE =SIMP(statut='f',typ='R' ), ), - SENS_INIT =FACT(statut='f', - regles=(EXCLUS('STATIONNAIRE','EVOL_THER', ),), - STATIONNAIRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - EVOL_THER =SIMP(statut='f',typ=evol_ther), - NUME_INIT =SIMP(statut='f',typ='I'), - ), - SOLVEUR =FACT(statut='d', - METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC","MUMPS") ), - b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale", - RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), + CALCUL =FACT(statut='o', + TOUT_DIAM =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NB_DIAM =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + OPTION =SIMP(statut='f',typ='TXM',defaut="PLUS_PETITE" + ,into=("PLUS_PETITE","CENTRE","BANDE") ), + b_centre =BLOC(condition = "OPTION == 'CENTRE'", + FREQ =SIMP(statut='o',typ='R',), ), - b_ldlt =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT", - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), + b_bande =BLOC(condition = "OPTION == 'BANDE'", + FREQ =SIMP(statut='o',typ='R',min=2,validators=NoRepeat(),max=2), ), - b_ldlt_mult =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ", - fr="Paramètres relatifs à la non inversibilité de la matrice à factorise", - NPREC =SIMP(statut='f',typ='I',defaut= 8 ), - STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), +# NMAX_FREQ n a-t-il pas un sens qu avec OPTION CENTRE + NMAX_FREQ =SIMP(statut='f',typ='I',defaut= 10 ), + PREC_SEPARE =SIMP(statut='f',typ='R',defaut= 100. ), + PREC_AJUSTE =SIMP(statut='f',typ='R',defaut= 1.E-6 ), + NMAX_ITER =SIMP(statut='f',typ='I',defaut= 50 ), + ), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), +) ; +#& MODIF COMMANDE DATE 10/05/2006 AUTEUR MCOURTOI M.COURTOIS +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +def mode_iter_inv_prod(MATR_A,MATR_C,TYPE_RESU,**args ): + if TYPE_RESU == "MODE_FLAMB" : return mode_flamb + if AsType(MATR_C) == matr_asse_depl_r : return mode_meca_c + if AsType(MATR_A) == matr_asse_depl_r : return mode_meca + if AsType(MATR_A) == matr_asse_pres_r : return mode_acou + if AsType(MATR_A) == matr_asse_gene_r : return mode_gene + raise AsException("type de concept resultat non prevu") + +MODE_ITER_INV=OPER(nom="MODE_ITER_INV",op= 44,sd_prod=mode_iter_inv_prod + ,fr="Calcul des modes propres par itérations inverses ; valeurs propres et modes réels ou complexes", + reentrant='n', + UIinfo={"groupes":("Résolution",)}, + regles=(CONCEPT_SENSIBLE('ENSEMBLE'),), + MATR_A =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ) ), + MATR_B =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ) ), + MATR_C =SIMP(statut='f',typ=matr_asse_depl_r ), + TYPE_RESU =SIMP(statut='f',typ='TXM',defaut="DYNAMIQUE", + into=("MODE_FLAMB","DYNAMIQUE"),fr="Type d analyse" ), + b_dynam =BLOC(condition = "TYPE_RESU == 'DYNAMIQUE'", + CALC_FREQ =FACT(statut='o',fr="Choix des paramètres pour le calcul des valeurs propres", + + OPTION =SIMP(statut='f',typ='TXM',defaut="AJUSTE",into=("SEPARE","AJUSTE","PROCHE"), + fr="Choix de l option pour estimer les valeurs propres" ), + FREQ =SIMP(statut='o',typ='R',max='**'), + AMOR_REDUIT =SIMP(statut='f',typ='R',max='**'), + NMAX_FREQ =SIMP(statut='f',typ='I',defaut= 0,val_min=0 ), + NMAX_ITER_SEPARE=SIMP(statut='f',typ='I' ,defaut= 30,val_min=0 ), + PREC_SEPARE =SIMP(statut='f',typ='R',defaut= 1.E-4,val_min=0.E+0 ), + NMAX_ITER_AJUSTE=SIMP(statut='f',typ='I',defaut= 15,val_min=0 ), + PREC_AJUSTE =SIMP(statut='f',typ='R',defaut= 1.E-4,val_min=0.E+0 ), + + NPREC_SOLVEUR =SIMP(statut='f',typ='I',defaut= 8,val_min=0 ), + NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 5,val_min=0 ), + PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-2,val_min=0.E+0, ), + SEUIL_FREQ =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0, ), ), - b_gcpc =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué", - PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ), - NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), - RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), - NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), + ), + b_flamb =BLOC(condition = "TYPE_RESU == 'MODE_FLAMB'", + CALC_FREQ =FACT(statut='o',fr="Choix des paramètres pour le calcul des valeurs propres", + + OPTION =SIMP(statut='f',typ='TXM',defaut="AJUSTE",into=("SEPARE","AJUSTE","PROCHE"), + fr="Choix de l option pour estimer les valeurs propres" ), + CHAR_CRIT =SIMP(statut='o',typ='R',validators=NoRepeat(),max='**' ), + NMAX_FREQ =SIMP(statut='f',typ='I',defaut= 0,val_min=0 ), + NMAX_ITER_SEPARE=SIMP(statut='f',typ='I' ,defaut= 30,val_min=0 ), + PREC_SEPARE =SIMP(statut='f',typ='R',defaut= 1.E-4,val_min=0.E+0, ), + NMAX_ITER_AJUSTE=SIMP(statut='f',typ='I',defaut= 15 ), + PREC_AJUSTE =SIMP(statut='f',typ='R',defaut= 1.E-4,val_min=0.E+0, ), + + NPREC_SOLVEUR =SIMP(statut='f',typ='I',defaut= 8,val_min=0 ), + NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 5,val_min=0 ), + PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-2,val_min=0.E+0, ), + SEUIL_FREQ =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0, ), ), - b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", - TYPE_RESOL =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("NONSYM","SYMGEN","SYMDEF","AUTO")), - SCALING =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("SANS","AUTO")), - RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), - ELIM_LAGR2 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=10,), - RESI_RELA =SIMP(statut='f',typ='R',defaut=1.E-6,), - ), ), - PARM_THETA =SIMP(statut='f',typ='R',defaut= 0.57), - ARCHIVAGE =FACT(statut='f', - regles=(UN_PARMI('LIST_ARCH','PAS_ARCH','LIST_INST','INST'),), - LIST_ARCH =SIMP(statut='f',typ=listis_sdaster), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF", - into=("RELATIF","ABSOLU")), - PAS_ARCH =SIMP(statut='f',typ='I'), - CHAM_EXCLU =SIMP(statut='f',typ='TXM',into=("VARI",)), + CALC_MODE =FACT(statut='d',min=0,fr="Choix des paramètres pour le calcul des vecteurs propres", + OPTION =SIMP(statut='f',typ='TXM',defaut="DIRECT",into=("DIRECT","RAYLEIGH") ), + PREC =SIMP(statut='f',typ='R',defaut= 1.E-5,val_min=0.E+0,fr="Précision de convergence" ), + NMAX_ITER =SIMP(statut='f',typ='I',defaut= 30,val_min=0 ), ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',into=(1,2)), + VERI_MODE =FACT(statut='d',min=0, + STOP_ERREUR =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + SEUIL =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0, + fr="Valeur limite admise pour l ereur a posteriori des modes" ), + ), + SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', + fr="Liste des param\350tres de sensibilit\351.", + ang="List of sensitivity parameters", + ), + b_sensibilite =BLOC(condition = "SENSIBILITE != None", + CHAM_MATER =SIMP(statut='f',typ=cham_mater ), + CARA_ELEM =SIMP(statut='f',typ=cara_elem ), + EXCIT =FACT(statut='f',max='**',), # que pour NMDOME + ), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), + TITRE =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), ) ; -#& MODIF COMMANDE DATE 13/12/2006 AUTEUR PELLET J.PELLET +#& MODIF COMMANDE DATE 13/03/2007 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -THER_NON_LINE=OPER(nom="THER_NON_LINE",op= 186,sd_prod=evol_ther,reentrant='f', +def mode_iter_simult_prod(MATR_A,MATR_C,TYPE_RESU,**args ): + if TYPE_RESU == "MODE_FLAMB" : return mode_flamb + if AsType(MATR_C) == matr_asse_depl_r : return mode_meca_c + if AsType(MATR_A) == matr_asse_depl_r : return mode_meca + if AsType(MATR_A) == matr_asse_depl_c : return mode_meca_c + if AsType(MATR_A) == matr_asse_pres_r : return mode_acou + if AsType(MATR_A) == matr_asse_gene_r : return mode_gene + if AsType(MATR_A) == matr_asse_gene_c : return mode_gene + + raise AsException("type de concept resultat non prevu") + +MODE_ITER_SIMULT=OPER(nom="MODE_ITER_SIMULT",op= 45,sd_prod=mode_iter_simult_prod, + fr="Calcul des modes propres par itérations simultanées ; valeurs propres et" + +" modes propres réels ou complexes", + reentrant='n', UIinfo={"groupes":("Résolution",)}, - fr="Résoudre un problème thermique non linéaire (conditions limites ou comportement matériau)" - +" stationnaire ou transitoire" , regles=(CONCEPT_SENSIBLE('ENSEMBLE'),), - MODELE =SIMP(statut='o',typ=(modele_sdaster) ), - CHAM_MATER =SIMP(statut='o',typ=(cham_mater) ), - CARA_ELEM =SIMP(statut='c',typ=(cara_elem) ), - COMP_THER_NL =FACT(statut='d',max='**', - RELATION =SIMP(statut='f',typ='TXM',defaut="THER_NL", - into=("THER_NL", - "THER_HYDR", - "SECH_GRANGER", - "SECH_MENSI", - "SECH_BAZANT", - "SECH_NAPPE" - ) ), - regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + MATR_A =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c, + matr_asse_gene_r,matr_asse_gene_c,matr_asse_pres_r ) ), + MATR_B =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ) ), + MATR_C =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_gene_r) ), + METHODE =SIMP(statut='f',typ='TXM',defaut="SORENSEN", + into=("TRI_DIAG","JACOBI","SORENSEN") ), + b_tri_diag =BLOC(condition = "METHODE == 'TRI_DIAG'", + PREC_ORTHO =SIMP(statut='f',typ='R',defaut= 1.E-12,val_min=0.E+0 ), + NMAX_ITER_ORTHO =SIMP(statut='f',typ='I',defaut= 5,val_min=0 ), + PREC_LANCZOS =SIMP(statut='f',typ='R',defaut= 1.E-8,val_min=0.E+0 ), + NMAX_ITER_QR =SIMP(statut='f',typ='I',defaut= 30,val_min=0 ), ), - EVOL_THER_SECH =SIMP(statut='f',typ=evol_ther), - EXCIT =FACT(statut='o',max='**', - CHARGE =SIMP(statut='o',typ=char_ther), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + b_jacobi =BLOC(condition = "METHODE == 'JACOBI'", + PREC_BATHE =SIMP(statut='f',typ='R',defaut= 1.E-10,val_min=0.E+0 ), + NMAX_ITER_BATHE =SIMP(statut='f',typ='I',defaut= 40,val_min=0 ), + PREC_JACOBI =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0 ), + NMAX_ITER_JACOBI=SIMP(statut='f',typ='I',defaut= 12,val_min=0 ), ), - INCREMENT =FACT(statut='f', - LIST_INST =SIMP(statut='o',typ=listr8_sdaster), - NUME_INIT =SIMP(statut='f',typ='I'), - NUME_FIN =SIMP(statut='f',typ='I'), + b_sorensen =BLOC(condition = "METHODE == 'SORENSEN'", + PREC_SOREN =SIMP(statut='f',typ='R',defaut= 0.E+0,val_min=0.E+0 ), + NMAX_ITER_SOREN =SIMP(statut='f',typ='I',defaut= 20,val_min=0 ), + PARA_ORTHO_SOREN=SIMP(statut='f',typ='R',defaut= 0.717,val_min=0.E+0 ), ), - TEMP_INIT =FACT(statut='f', - regles=(EXCLUS('STATIONNAIRE','EVOL_THER','CHAM_NO','VALE'),), - STATIONNAIRE =SIMP(statut='f',typ='TXM',into=("OUI",)), - EVOL_THER =SIMP(statut='f',typ=evol_ther), - CHAM_NO =SIMP(statut='f',typ=cham_no_sdaster), - VALE =SIMP(statut='f',typ='R'), - NUME_INIT =SIMP(statut='f',typ='I'), + TYPE_RESU =SIMP(statut='f',typ='TXM',defaut="DYNAMIQUE", + into=("MODE_FLAMB","DYNAMIQUE"), + fr="Type d analyse" ), + OPTION =SIMP(statut='f',typ='TXM',defaut="SANS",into=("MODE_RIGIDE","SANS"), + fr="Calcul des modes de corps rigide, uniquement pour la méthode TRI_DIAG" ), + + b_flamb =BLOC(condition = "TYPE_RESU == 'MODE_FLAMB'", + CALC_FREQ =FACT(statut='d',min=0, + OPTION =SIMP(statut='f',typ='TXM',defaut="PLUS_PETITE",into=("PLUS_PETITE","BANDE","CENTRE"), + fr="Choix de l option et par conséquent du shift du problème modal" ), + b_plus_petite =BLOC(condition = "OPTION == 'PLUS_PETITE'",fr="Recherche des plus petites valeurs propres", + NMAX_FREQ =SIMP(statut='f',typ='I',defaut= 10,val_min=0 ), + ), + b_centre =BLOC(condition = "OPTION == 'CENTRE'", + fr="Recherche des valeurs propres les plus proches d une valeur donnée", + CHAR_CRIT =SIMP(statut='o',typ='R', + fr="Charge critique autour de laquelle on cherche les charges critiques propres"), + NMAX_FREQ =SIMP(statut='f',typ='I',defaut= 10,val_min=0 ), + ), + b_bande =BLOC(condition = "(OPTION == 'BANDE')", + fr="Recherche des valeurs propres dans une bande donnée", + CHAR_CRIT =SIMP(statut='o',typ='R',min=2,validators=NoRepeat(),max=2, + fr="Valeur des deux charges critiques délimitant la bande de recherche"), + ), + APPROCHE =SIMP(statut='f',typ='TXM',defaut="REEL",into=("REEL","IMAG"), + fr="Choix du pseudo-produit scalaire pour la résolution du problème quadratique" ), + regles=(EXCLUS('DIM_SOUS_ESPACE','COEF_DIM_ESPACE'),), + DIM_SOUS_ESPACE =SIMP(statut='f',typ='I' ), + COEF_DIM_ESPACE =SIMP(statut='f',typ='I' ), + NPREC_SOLVEUR =SIMP(statut='f',typ='I',defaut= 8,val_min=0 ), + NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 5,val_min=0 ), + PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-2,val_min=0.E+0 ), + SEUIL_FREQ =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0 ), + ), ), - NEWTON =FACT(statut='d', - REAC_ITER =SIMP(statut='f',typ='I',defaut= 0 ), - RESI_LINE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - ITER_LINE_MAXI =SIMP(statut='f',typ='I',defaut= 0 ), + + b_dynam =BLOC(condition = "TYPE_RESU == 'DYNAMIQUE'", + CALC_FREQ =FACT(statut='d',min=0, + OPTION =SIMP(statut='f',typ='TXM',defaut="PLUS_PETITE",into=("PLUS_PETITE","BANDE","CENTRE"), + fr="Choix de l option et par conséquent du shift du problème modal" ), + b_plus_petite =BLOC(condition = "OPTION == 'PLUS_PETITE'",fr="Recherche des plus petites valeurs propres", + NMAX_FREQ =SIMP(statut='f',typ='I',defaut= 10,val_min=0 ), + ), + b_centre =BLOC(condition = "OPTION == 'CENTRE'", + fr="Recherche des valeurs propres les plus proches d une valeur donnée", + FREQ =SIMP(statut='o',typ='R', + fr="Fréquence autour de laquelle on cherche les fréquences propres"), + AMOR_REDUIT =SIMP(statut='f',typ='R',), + NMAX_FREQ =SIMP(statut='f',typ='I',defaut= 10,val_min=0 ), + ), + b_bande =BLOC(condition = "(OPTION == 'BANDE')", + fr="Recherche des valeurs propres dans une bande donnée", + FREQ =SIMP(statut='o',typ='R',min=2,validators=NoRepeat(),max=2, + fr="Valeur des deux fréquences délimitant la bande de recherche"), + ), + APPROCHE =SIMP(statut='f',typ='TXM',defaut="REEL",into=("REEL","IMAG","COMPLEXE"), + fr="Choix du pseudo-produit scalaire pour la résolution du problème quadratique" ), + regles=(EXCLUS('DIM_SOUS_ESPACE','COEF_DIM_ESPACE'),), + DIM_SOUS_ESPACE =SIMP(statut='f',typ='I' ), + COEF_DIM_ESPACE =SIMP(statut='f',typ='I' ), + NPREC_SOLVEUR =SIMP(statut='f',typ='I',defaut= 8,val_min=0 ), + NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 5,val_min=0 ), + PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-2,val_min=0.E+0 ), + SEUIL_FREQ =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0 ), + ), ), - CONVERGENCE =FACT(statut='d', - RESI_GLOB_MAXI =SIMP(statut='f',typ='R'), - RESI_GLOB_RELA =SIMP(statut='f',typ='R'), - ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), + + VERI_MODE =FACT(statut='d',min=0, + STOP_ERREUR =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-3,val_min=0.E+0 ), + SEUIL =SIMP(statut='f',typ='R',defaut= 1.E-6,val_min=0.E+0, + fr="Valeur limite admise pour l ereur a posteriori des modes" ), + STURM =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), ), SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', - fr="Liste des paramètres de sensibilité.", - ang="List of sensitivity parameters", - ), - SOLVEUR =FACT(statut='d', - METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC","MUMPS") ), - b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Parametres de la méthode multi frontale", - RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), - ), - b_ldlt =BLOC(condition = "METHODE == 'LDLT' ",fr="Parametres de la méthode LDLT", - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), - ), - b_ldlt_mult =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ", - fr="Parametres relatifs a la non inversibilité de la matrice a factorise", - NPREC =SIMP(statut='f',typ='I',defaut= 8 ), - STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - b_gcpc =BLOC(condition = "METHODE == 'GCPC' ", fr="Parametres de la méthode du gradient conjugué", - PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ), - NIVE_REMPLISSAGE=SIMP(statut='f',typ='I' ,defaut= 0 ), - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), - RESI_RELA =SIMP(statut='f',typ='R' ,defaut= 1.E-6 ), - NMAX_ITER =SIMP(statut='f',typ='I' ,defaut= 0 ), - ), - b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", - TYPE_RESOL =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("NONSYM","SYMGEN","SYMDEF","AUTO")), - SCALING =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("SANS","AUTO")), - RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), - ELIM_LAGR2 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=10,), - RESI_RELA =SIMP(statut='f',typ='R',defaut=-1.0,), - ), - SYME =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ), - ), - PARM_THETA =SIMP(statut='f',typ='R',defaut= 0.57 ), - ARCHIVAGE =FACT(statut='f', - regles=(UN_PARMI('LIST_ARCH','PAS_ARCH','LIST_INST','INST', ),), - LIST_ARCH =SIMP(statut='f',typ=(listis_sdaster) ), - LIST_INST =SIMP(statut='f',typ=(listr8_sdaster) ), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ), - PAS_ARCH =SIMP(statut='f',typ='I'), - CHAM_EXCLU =SIMP(statut='f',typ='TXM',into=("VARI",)), + fr="Liste des param\350tres de sensibilit\351.", + ang="List of sensitivity parameters", ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - OPTION =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=2, - into=("FLUX_ELGA_TEMP","FLUX_ELNO_TEMP") ), - INFO =SIMP(statut='f',typ='I',into=(1,2) ), - + b_sensibilite =BLOC(condition = "SENSIBILITE != None", + CHAM_MATER =SIMP(statut='f',typ=cham_mater ), + CARA_ELEM =SIMP(statut='f',typ=cara_elem ), + EXCIT =FACT(statut='f',max='**',), # que pour NMDOME + ), + STOP_FREQ_VIDE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), + TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; #& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION @@ -21435,563 +19576,314 @@ THER_NON_LINE=OPER(nom="THER_NON_LINE",op= 186,sd_prod=evol_ther,reentrant='f', # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -THER_NON_LINE_MO=OPER(nom="THER_NON_LINE_MO",op= 171,sd_prod=evol_ther, - fr="Résoudre un problème thermique non linéaire (conditions limites ou comportement matériau)" - +" stationnaire avec chargement mobile", - reentrant='n', +def mode_stat_prod(MODE_STAT,FORCE_NODALE,PSEUDO_MODE,**args): + if (MODE_STAT != None) : return mode_stat_depl + if (PSEUDO_MODE !=None) : return mode_stat_acce + if (FORCE_NODALE != None) : return mode_stat_forc + raise AsException("type de concept resultat non prevu") +MODE_STATIQUE=OPER(nom="MODE_STATIQUE",op= 93,sd_prod=mode_stat_prod, + fr="Calcul de modes statiques pour un déplacement, une force ou une accélération unitaire imposé", + reentrant='n', UIinfo={"groupes":("Résolution",)}, - MODELE =SIMP(statut='o',typ=modele_sdaster ), - CHAM_MATER =SIMP(statut='o',typ=cham_mater ), - CARA_ELEM =SIMP(statut='c',typ=cara_elem ), - EXCIT =FACT(statut='o',max='**', - CHARGE =SIMP(statut='o',typ=char_ther ), - FONC_MULT =SIMP(statut='c',typ=(fonction_sdaster,nappe_sdaster,formule) ), - ), - TEMP_INIT =FACT(statut='f', - EVOL_THER =SIMP(statut='f',typ=evol_ther ), - NUME_INIT =SIMP(statut='f',typ='I',defaut= 0 ), - ), - CONVERGENCE =FACT(statut='d', - CRIT_TEMP_RELA =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - CRIT_ENTH_RELA =SIMP(statut='f',typ='R',defaut= 1.E-2 ), - ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), - ARRET =SIMP(statut='c',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - SOLVEUR =FACT(statut='d', - METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ), - b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale", - RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), - ), - b_ldlt =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT", - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), - ), - b_ldlt_mult =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ", - fr="Paramètres relatifs à la non inversibilité de la matrice à factorise", - NPREC =SIMP(statut='f',typ='I',defaut= 8 ), - STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - b_gcpc =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué", - PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ), - NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), - RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), - NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), - ), - SYME =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + MATR_RIGI =SIMP(statut='o',typ=matr_asse_depl_r ), + MATR_MASS =SIMP(statut='f',typ=matr_asse_depl_r ), + regles=(UN_PARMI('MODE_STAT','FORCE_NODALE','PSEUDO_MODE'),), + MODE_STAT =FACT(statut='f',max='**', + regles=(UN_PARMI('TOUT','NOEUD','GROUP_NO'), + UN_PARMI('TOUT_CMP','AVEC_CMP','SANS_CMP'),), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ,), + NOEUD =SIMP(statut='f',typ=no ,max='**'), + GROUP_NO =SIMP(statut='f',typ=grno ,max='**'), + TOUT_CMP =SIMP(statut='f',typ='TXM',into=("OUI",) ,), + AVEC_CMP =SIMP(statut='f',typ='TXM',max='**'), + SANS_CMP =SIMP(statut='f',typ='TXM',max='**'), ), - TITRE =SIMP(statut='f',typ='TXM',max='**' ), - INFO =SIMP(statut='f',typ='I',into=(1,2) ), -) ; - - - -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -def extr_table_prod(TYPE_RESU,**args): - if TYPE_RESU == "MATR_ASSE_GENE_R" : return matr_asse_gene_r - raise AsException("type de concept resultat non prevu") - -EXTR_TABLE=OPER(nom="EXTR_TABLE",op=173,sd_prod=extr_table_prod,reentrant='n', - UIinfo={"groupes":("Résultats et champs",)}, - fr="Extraire d'une table la matrice de masse généralisée assemblée", - TYPE_RESU =SIMP(statut='o',typ='TXM',into=("MATR_ASSE_GENE_R",) ), - - TABLE =SIMP(statut='o',typ=table_sdaster), - - NOM_PARA =SIMP(statut='o',typ='TXM'), - - FILTRE =FACT(statut='f',min=1,max='**', - NOM_PARA =SIMP(statut='o',typ='TXM'), - CRIT_COMP =SIMP(statut='f',typ='TXM',defaut="EQ", - into=("EQ","LT","GT","NE","LE","GE","VIDE", - "NON_VIDE","MAXI","ABS_MAXI","MINI","ABS_MINI") ), - b_vale =BLOC(condition = "(CRIT_COMP in ('EQ','NE','GT','LT','GE','LE'))", - regles=(UN_PARMI('VALE','VALE_I','VALE_K','VALE_C',),), - VALE =SIMP(statut='f',typ='R'), - VALE_I =SIMP(statut='f',typ='I'), - VALE_C =SIMP(statut='f',typ='C'), - VALE_K =SIMP(statut='f',typ='TXM'),), - - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), + FORCE_NODALE =FACT(statut='f',max='**', + regles=(UN_PARMI('TOUT','NOEUD','GROUP_NO'), + UN_PARMI('TOUT_CMP','AVEC_CMP','SANS_CMP'),), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",), ), + NOEUD =SIMP(statut='f',typ=no ,max='**'), + GROUP_NO =SIMP(statut='f',typ=grno ,max='**'), + TOUT_CMP =SIMP(statut='f',typ='TXM',into=("OUI",), ), + AVEC_CMP =SIMP(statut='f',typ='TXM',max='**'), + SANS_CMP =SIMP(statut='f',typ='TXM',max='**'), ), - - TITRE =SIMP(statut='f',typ='TXM',max='**' ), -) ; -#& MODIF COMMANDE DATE 05/02/2007 AUTEUR ZENTNER I.ZENTNER -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE CAMBIER S.CAMBIER -from Macro.gene_vari_alea_ops import gene_vari_alea_ops,gene_vari_alea_init -GENE_VARI_ALEA=MACRO(nom="GENE_VARI_ALEA", - op_init=gene_vari_alea_init,op=gene_vari_alea_ops, - sd_prod=reel,reentrant='n', - fr="Générer une réalisation d'une variable aléatoire réelle de loi de probabilité donnée (Gamma ou Exponentielle)", - UIinfo={"groupes":("Fonction",)}, - TYPE = SIMP(statut='f', typ='TXM', into=("EXP_TRONQUEE", "EXPONENTIELLE", "GAMMA"), defaut="GAMMA"), - b_gamma =BLOC(condition = "TYPE == 'GAMMA' ",fr="Parametres loi gamma", - VALE_MOY = SIMP(statut='f', typ='R', defaut=1.), - BORNE_INF = SIMP(statut='f', typ='R', defaut=0.), - COEF_VAR = SIMP(statut='f', typ='R', defaut=0.1), - ), - b_expo =BLOC(condition = "TYPE == 'EXPONENTIELLE' ",fr="Parametres loi exponentielle", - VALE_MOY = SIMP(statut='f', typ='R', defaut=0.), - BORNE_INF = SIMP(statut='f', typ='R', defaut=-1.), - ), - b_expo_tronq =BLOC(condition = "TYPE == 'EXP_TRONQUEE' ",fr="Parametres loi exponentielle tronquee", - VALE_MOY = SIMP(statut='f', typ='R', defaut=0.), - BORNE_INF = SIMP(statut='f', typ='R', defaut=-1.), - BORNE_SUP = SIMP(statut='f', typ='R', defaut=1.), - ), - INIT_ALEA =SIMP(statut='f',typ='I'), -) -#& MODIF COMMANDE DATE 11/07/2005 AUTEUR CAMBIER S.CAMBIER -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE CAMBIER S.CAMBIER -def gene_matr_alea_prod(MATR_MOYEN,**args ): - if (AsType(MATR_MOYEN) == matr_asse_gene_r ) : return matr_asse_gene_r - if (AsType(MATR_MOYEN) == macr_elem_dyna) : return macr_elem_dyna - raise AsException("type de concept resultat non prevu") - -GENE_MATR_ALEA=OPER(nom="GENE_MATR_ALEA",op= 27, -#sd_prod=matr_asse_gene_r, -sd_prod=gene_matr_alea_prod, - fr="Générer une réalisation d'une matrice aléatoire réelle sym. déf. positive ou d'un macro élément dynamique", - reentrant='n', - UIinfo={"groupes":("Matrice",)}, - MATR_MOYEN = SIMP(statut='o', typ=(matr_asse_gene_r,macr_elem_dyna)), - -# cas matrice generalisee - b_matr =BLOC( condition = "AsType(MATR_MOYEN) in (matr_asse_gene_r,)", - COEF_VAR = SIMP(statut='f', typ='R', defaut=0.1, val_min=0.E+0 , - fr="coefficient de variation de la matrice a generer" ), - ), -# cas macr_elem_dyna - b_macr =BLOC( condition = "AsType(MATR_MOYEN) in (macr_elem_dyna,)", - fr="cas macr_elem_dyna (sous-structuratio)", - COEF_VAR_RIGI = SIMP(statut='f', typ='R', defaut=0.1, val_min=0.E+0 , - fr="coefficient de variation de la matrice de raideur" ), - COEF_VAR_MASS = SIMP(statut='f', typ='R', defaut=0., val_min=0.E+0 , - fr="coefficient de variation de la matrice de masse" ), - COEF_VAR_AMOR = SIMP(statut='f', typ='R', defaut=0., val_min=0.E+0 , - fr="coefficient de variation de la matrice d'amortissement" ),), - - INIT_ALEA =SIMP(statut='f',typ='I'), -) ; - -#& MODIF COMMANDE DATE 03/04/2006 AUTEUR MCOURTOI M.COURTOIS + PSEUDO_MODE =FACT(statut='f',max='**', + regles=(UN_PARMI('AXE','DIRECTION','TOUT','NOEUD','GROUP_NO' ),), + AXE =SIMP(statut='f',typ='TXM',into=("X","Y","Z"),max=3), + DIRECTION =SIMP(statut='f',typ='R',min=3,max=3), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",)), + NOEUD =SIMP(statut='f',typ=no ,max='**'), + GROUP_NO =SIMP(statut='f',typ=grno ,max='**'), + b_dir =BLOC(condition = "DIRECTION != None", + NOM_DIR =SIMP(statut='f',typ='TXM' ),), + b_cmp =BLOC(condition="TOUT!= None or NOEUD!=None or GROUP_NO!=None", + regles=(UN_PARMI('TOUT_CMP','AVEC_CMP','SANS_CMP'),), + TOUT_CMP =SIMP(statut='f',typ='TXM',into=("OUI",) ), + AVEC_CMP =SIMP(statut='f',typ='TXM',max='**'), + SANS_CMP =SIMP(statut='f',typ='TXM',max='**'), + ), + ), + TITRE =SIMP(statut='f',typ='TXM',max='**'), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ,) ), +) ; +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== - -from Macro.lire_table_ops import lire_table_ops - -LIRE_TABLE=MACRO(nom="LIRE_TABLE",op=lire_table_ops,sd_prod=table_sdaster, - fr="Lecture d'un fichier contenant une table", - UIinfo={"groupes":("Table",)}, - UNITE =SIMP(statut='o',typ='I' ), - FORMAT =SIMP(statut='f',typ='TXM',into=("ASTER",),defaut="ASTER"), - NUME_TABLE =SIMP(statut='f',typ='I',defaut=1), - SEPARATEUR =SIMP(statut='f',typ='TXM',defaut=' '), - PARA =SIMP(statut='f',typ='TXM',max='**'), +MODI_BASE_MODALE=OPER(nom="MODI_BASE_MODALE",op= 149,sd_prod=mode_meca, + reentrant='f', + fr="Définir la base modale d'une structure sous écoulement", + UIinfo={"groupes":("Matrices/vecteurs",)}, +# la commande modi_base _modale : reentrant = f ou o + regles=(EXCLUS('AMOR_UNIF','AMOR_REDUIT', ),), + BASE =SIMP(statut='o',typ=mode_meca ), + BASE_ELAS_FLUI =SIMP(statut='o',typ=melasflu_sdaster ), + NUME_VITE_FLUI =SIMP(statut='o',typ='I' ), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + AMOR_REDUIT =SIMP(statut='f',typ='R',max='**'), + AMOR_UNIF =SIMP(statut='f',typ='R' ), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), TITRE =SIMP(statut='f',typ='TXM',max='**'), - ) ; - -#& MODIF COMMANDE DATE 05/03/2007 AUTEUR GALENNE E.GALENNE +) ; +#& MODIF COMMANDE DATE 10/07/2006 AUTEUR LEBOUVIE F.LEBOUVIER # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== +# RESPONSABLE G8BHHXD X.DESROCHES +MODI_MAILLAGE=OPER(nom="MODI_MAILLAGE",op= 154,sd_prod=maillage_sdaster, + fr="Effectuer des modifications sur un maillage existant: réorienter des mailles servant," + +" à l'application d'une pression, à la modélisation du contact,...", + reentrant='o', + UIinfo={"groupes":("Maillage",)}, + regles=(AU_MOINS_UN('ORIE_FISSURE','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D', + 'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE','MODI_MAILLE', + 'TRANSLATION','ROTATION','MODI_BASE','ECHELLE','ORIE_SHB8','SYMETRIE', + ), + PRESENT_ABSENT('ORIE_FISSURE','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D', + 'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE','MODI_MAILLE',), + PRESENT_ABSENT('DEFORME','ORIE_FISSURE','EQUE_PIQUA','ORIE_PEAU_2D', + 'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE','MODI_MAILLE',), + PRESENT_ABSENT('EQUE_PIQUA','ORIE_FISSURE','DEFORME','ORIE_PEAU_2D', + 'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE','MODI_MAILLE',), + PRESENT_ABSENT('ORIE_PEAU_2D','ORIE_FISSURE','DEFORME','EQUE_PIQUA', + 'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE','MODI_MAILLE',), + PRESENT_ABSENT('ORIE_PEAU_3D','ORIE_FISSURE','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D', + 'PLAQ_TUBE','MODI_MAILLE',), + PRESENT_ABSENT('ORIE_NORM_COQUE','ORIE_FISSURE','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D', + 'PLAQ_TUBE','MODI_MAILLE',), + PRESENT_ABSENT('PLAQ_TUBE','ORIE_FISSURE','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D', + 'ORIE_PEAU_3D','ORIE_NORM_COQUE','MODI_MAILLE',), + PRESENT_ABSENT('MODI_MAILLE','ORIE_FISSURE','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D', + 'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE',), + EXCLUS('EQUE_PIQUA','PLAQ_TUBE'), + EXCLUS('EQUE_PIQUA','TUBE_COUDE'), + EXCLUS('ROTATION','MODI_BASE'), + EXCLUS('SYMETRIE','ROTATION'), + EXCLUS('SYMETRIE','TRANSLATION'), + EXCLUS('SYMETRIE','MODI_BASE'), + EXCLUS('SYMETRIE','ECHELLE'), + ), + MAILLAGE =SIMP(statut='o',typ=maillage_sdaster ), -from Macro.macr_lign_coupe_ops import macr_lign_coupe_ops - -MACR_LIGN_COUPE=MACRO(nom="MACR_LIGN_COUPE",op=macr_lign_coupe_ops,sd_prod=table_sdaster, - reentrant='n', - UIinfo={"groupes":("Outils métier",)}, - fr="Extraction des valeurs d'un résultat dans une ou plusieurs tables sur des lignes de coupe définies" - +" par deux points et un intervalle", - RESULTAT =SIMP(statut='o',typ=(evol_elas,evol_noli,evol_ther) ), -# extraction des résultats - b_meca =BLOC(condition = "AsType(RESULTAT) in (evol_elas,evol_noli)",fr="résultat mécanique", - NOM_CHAM =SIMP(statut='f',typ='TXM',defaut='SIGM_NOEU_DEPL' ), - ), - b_ther =BLOC(condition = "AsType(RESULTAT) in (evol_ther,)",fr="résultat thermique", - NOM_CHAM =SIMP(statut='f',typ='TXM',defaut='TEMP' ), + ORIE_FISSURE =FACT(statut='f', + GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), ), - UNITE_MAILLAGE =SIMP(statut='f',typ='I',defaut=25), - - MODELE =SIMP(statut='f',typ=modele_sdaster ), - GROUP_MA =SIMP(statut='f',typ=grma), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - regles=(EXCLUS('GROUP_MA','MAILLE'),), - - LIGN_COUPE =FACT(statut='o',max='**', - TYPE =SIMP(statut='o',typ='TXM',max=1,into=("GROUP_NO","SEGMENT","ARC"),defaut='SEGMENT' ), - INTITULE =SIMP(statut='f',typ='TXM',), - - b_grno =BLOC(condition = "TYPE=='GROUP_NO'", - GROUP_NO =SIMP(statut='f',typ=grno),), - - b_segment =BLOC(condition = "TYPE=='SEGMENT'", - NB_POINTS =SIMP(statut='o',typ='I',max=1), - COOR_ORIG =SIMP(statut='o',typ='R',min=2,max=3), - COOR_EXTR =SIMP(statut='o',typ='R',min=2,max=3), - VECT_Y =SIMP(statut='f',typ='R',min=2,max=3),), - b_arc =BLOC(condition = "TYPE=='ARC'", - NB_POINTS =SIMP(statut='o',typ='I',max=1), - COOR_ORIG =SIMP(statut='o',typ='R',min=2,max=3), - CENTRE =SIMP(statut='o',typ='R',min=2,max=3), - ANGLE =SIMP(statut='o',typ='R',max=1), - DNOR =SIMP(statut='f',typ='R',min=2,max=3), - VECT_Y =SIMP(statut='f',typ='R',min=2,max=3),), + DEFORME =FACT(statut='f', + OPTION =SIMP(statut='o',typ='TXM',into=("TRAN","TRAN_APPUI") ), + DEPL =SIMP(statut='o',typ=cham_no_sdaster ), + b_deform =BLOC(condition = "OPTION=='TRAN_APPUI'", + GROUP_NO_APPUI = SIMP(statut='o',typ=grno,validators=NoRepeat(),max='**' ), + GROUP_NO_STRU = SIMP(statut='o',typ=grno,validators=NoRepeat(),max='**' ),), ), -) ; - - -#& MODIF COMMANDE DATE 31/10/2006 AUTEUR ASSIRE A.ASSIRE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== - -from Macro.macr_recal_ops import macr_recal_ops - -def macr_recal_prod(self,**args ): - return listr8_sdaster - -MACR_RECAL = MACRO(nom="MACR_RECAL",op=macr_recal_ops, - UIinfo={"groupes":("Résultats et champs",)}, - sd_prod=macr_recal_prod, - fr="Réalise le recalage des calculs Aster sur des résultats expérimentaux" - +" ou sur d'autres résultats de calculs", - UNITE_ESCL =SIMP(statut='o',typ='I'), - RESU_EXP =SIMP(statut='o',typ=assd,max='**'), - POIDS =SIMP(statut='f',typ=assd,max='**'), - RESU_CALC =SIMP(statut='o',typ=assd,max='**'), - LIST_PARA =SIMP(statut='o',typ=assd,max='**'), - LIST_DERIV =SIMP(statut='f',typ=assd,max='**'), - ITER_MAXI =SIMP(statut='f',typ='I',defaut=10), - ITER_FONC_MAXI =SIMP(statut='f',typ='I',defaut=100), - RESI_GLOB_RELA =SIMP(statut='f',typ='R',defaut=1.E-3), - UNITE_RESU =SIMP(statut='f',typ='I',defaut=91), - PARA_DIFF_FINI =SIMP(statut='f',typ='R',defaut=0.001), -# GRAPHIQUE =FACT(statut='d', - GRAPHIQUE =FACT(statut='f', - UNITE =SIMP(statut='f',typ='I',defaut=90), - FORMAT =SIMP(statut='f',typ='TXM',defaut='XMGRACE',into=("XMGRACE","GNUPLOT")), - INTERACTIF =SIMP(statut='f',typ='TXM',defaut='NON',into=("OUI","NON")), - AFFICHAGE =SIMP(statut='f',typ='TXM',defaut='TOUTE_ITERATION',into=("TOUTE_ITERATION","ITERATION_FINALE")),), - SUIVI_ESCLAVE =SIMP(statut='f',typ='TXM',defaut='NON',into=("OUI","NON"),), - - METHODE =SIMP(statut='f',typ='TXM',defaut='LEVENBERG',into=("LEVENBERG","FMIN","FMINBFGS","FMINNCG","EXTERNE")), - b_gradient =BLOC(condition = "METHODE == 'FMINBFGS' or METHODE == 'FMINNCG'" , - GRADIENT =SIMP(statut='f',typ='TXM',defaut='NON_CALCULE', into=("NON_CALCULE", "NORMAL", "ADIMENSIONNE" )), + EQUE_PIQUA =FACT(statut='f', + GROUP_NO =SIMP(statut='o',typ=grno), + E_BASE =SIMP(statut='o',typ='R' ), + DEXT_BASE =SIMP(statut='o',typ='R' ), + L_BASE =SIMP(statut='o',typ='R' ), + L_CHANF =SIMP(statut='o',typ='R' ), + TYPE =SIMP(statut='o',typ='TXM',into=("TYPE_1","TYPE_2")), + H_SOUD =SIMP(statut='o',typ='R' ), + ANGL_SOUD =SIMP(statut='o',typ='R' ), + JEU_SOUD =SIMP(statut='o',typ='R' ), + E_CORP =SIMP(statut='o',typ='R' ), + DEXT_CORP =SIMP(statut='o',typ='R' ), + AZIMUT =SIMP(statut='o',typ='R' ), + RAFF_MAIL =SIMP(statut='o',typ='TXM' ), + X_MAX =SIMP(statut='o',typ='R' ), + ), + ORIE_PEAU_2D =FACT(statut='f',max='**', + GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), + ), + ORIE_PEAU_3D =FACT(statut='f',max='**', + GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), + ), + ORIE_SHB8 =FACT(statut='f',max=1, + GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), + ), + ORIE_NORM_COQUE =FACT(statut='f',max='**', + regles=(EXCLUS('NOEUD','GROUP_NO'), + PRESENT_PRESENT('NOEUD','VECT_NORM'), + PRESENT_PRESENT('GROUP_NO','VECT_NORM'),), + GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), + VECT_NORM =SIMP(statut='f',typ='R',max=3), + NOEUD =SIMP(statut='f',typ=no), + GROUP_NO =SIMP(statut='f',typ=grno), + ), + PLAQ_TUBE =FACT(statut='f', + DEXT =SIMP(statut='o',typ='R' ), + EPAIS =SIMP(statut='o',typ='R' ), + L_TUBE_P1 =SIMP(statut='o',typ='R' ), + AZIMUT =SIMP(statut='f',typ='R',defaut= 90. ), + COUTURE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON",) ), ), - - b_gradient_externe =BLOC(condition = "METHODE == 'EXTERNE'" , - GRADIENT =SIMP(statut='f',typ='TXM',defaut='NON_CALCULE', into=("NON_CALCULE", "NORMAL", "ADIMENSIONNE" )), + TUBE_COUDE =FACT(statut='f', + ANGLE =SIMP(statut='o',typ='R' ), + R_CINTR =SIMP(statut='o',typ='R' ), + L_TUBE_P1 =SIMP(statut='o',typ='R' ), ), - - b_type_fonctionnelle =BLOC(condition = "METHODE == 'EXTERNE'" , - FONCTIONNELLE =SIMP(statut='f',typ='TXM',defaut='SCALAIRE',into=("SCALAIRE","VECTORIELLE")), + MODI_MAILLE =FACT(statut='f',max=1, + regles=(AU_MOINS_UN('GROUP_MA_FOND','MAILLE_FOND','GROUP_NO_FOND','NOEUD_FOND'),), + OPTION =SIMP(statut='o',typ='TXM',into=("NOEUD_QUART",) ), + GROUP_MA_FOND =SIMP(statut='f',typ=grma,validators=NoRepeat(),max=1), + MAILLE_FOND =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max=1), + GROUP_NO_FOND =SIMP(statut='f',typ=grno,validators=NoRepeat(),max=1), + NOEUD_FOND =SIMP(statut='f',typ=no ,validators=NoRepeat(),max=1), ), - - INFO =SIMP(statut='f',typ='I',defaut=2,into=( 1, 2 ) ), -); -#& MODIF COMMANDE DATE 14/09/2004 AUTEUR MCOURTOI M.COURTOIS -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE D6BHHJP J.P.LEFEBVRE -INFO_EXEC_ASTER=OPER(nom="INFO_EXEC_ASTER",op=35,sd_prod=table_sdaster, - fr="Récupère différentes informations propres à l'exécution en cours", - reentrant='n', - UIinfo={"groupes":("Gestion du travail",)}, - - regles=(), - LISTE_INFO =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=3, - into=("CPU_RESTANT","UNITE_LIBRE","ETAT_UNITE"),), - b_etat_unite =BLOC(condition = "'ETAT_UNITE' in LISTE_INFO", - regles=(UN_PARMI('UNITE','FICHIER'),), - UNITE =SIMP(statut='f',typ='I',val_min=1,val_max=99,max=1, - fr="Unité logique dont on veut obtenir l'état",), - FICHIER =SIMP(statut='f',typ='TXM',validators=LongStr(1,255), - fr="Nom du fichier dont on veut obtenir l'état",), + MODI_BASE =FACT(statut='f', + VECT_X =SIMP(statut='o',typ='R',min=2,max=3), + VECT_Y =SIMP(statut='f',typ='R',min=2,max=3), ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), + ECHELLE =SIMP(statut='f',typ='R',), + TRANSLATION =SIMP(statut='f',typ='R',min=2,max=3), + ROTATION =FACT(statut='f',max='**', + POIN_1 =SIMP(statut='o',typ='R',min=2,max=3), + ANGL =SIMP(statut='o',typ='R',defaut= 0.E+0 ), + regles=(EXCLUS('DIR','POIN_2'),), + POIN_2 =SIMP(statut='f',typ='R',min=2,max=3), + DIR =SIMP(statut='f',typ='R',min=2,max=3), + ), + SYMETRIE =FACT(statut='f',max='**', + fr = "Symétrie du maillage par rapport à un plan en 3D ou à une droite en 2D.", + POINT =SIMP(statut='o',typ='R',min=2,max=3, + fr="Point appartenant à la droite ou au plan."), + AXE_1 =SIMP(statut='o',typ='R',min=2,max=3, + fr="Vecteur directeur de la droite ou 1er vecteur appartenant au plan."), + AXE_2 =SIMP(statut='f',typ='R',min=3,max=3, + fr="2nd vecteur appartenant du plan."), + ), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; -#& MODIF COMMANDE DATE 03/01/2006 AUTEUR REZETTE C.REZETTE +#& MODIF COMMANDE DATE 30/04/2007 AUTEUR ABBAS M.ABBAS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG +# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE JMBHH01 J.M.PROIX - -from Macro.macr_cara_poutre_ops import macr_cara_poutre_ops - -MACR_CARA_POUTRE=MACRO(nom="MACR_CARA_POUTRE",op=macr_cara_poutre_ops,sd_prod=table_sdaster, - reentrant='n', - UIinfo={"groupes":("Modélisation",)}, - fr="Calculer les caractéristiques d'une section transversale de poutre à partir d'un maillage 2D de la section", - regles=(EXCLUS('SYME_X','GROUP_MA_BORD'), - EXCLUS('SYME_Y','GROUP_MA_BORD'),), - - UNITE_MAILLAGE =SIMP(statut='f',typ='I',defaut= 20 ), - ORIG_INER =SIMP(statut='f',typ='R',max=3,defaut=(0.E+0,0.E+0), - fr="Point par rapport auquel sont calculées les inerties"), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), - - SYME_X =SIMP(statut='f',typ='TXM',into=("OUI",),fr="demi maillage par rapport a x=0"), - SYME_Y =SIMP(statut='f',typ='TXM',into=("OUI",),fr="demi maillage par rapport a y=0"), - - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', - fr="Calcul des caractéristiques équivalentes a plusieurs sections disjointes"), - - GROUP_MA_BORD =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', - fr="Groupe(s) de mailles linéiques, bord(s) de(s) section(s)"), - - b_gma_bord = BLOC( condition = "GROUP_MA_BORD != None", - fr=" calcul des carac. mecaniques", - NOEUD =SIMP(statut='f',typ=no,max='**', - fr="Simplement pour empecher des pivots nuls le cas echeant. Fournir un noeud quelconque"), - GROUP_MA_INTE =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', - fr="groupes de mailles linéiques bordant des trous dans la section"), - ), - - b_reseau = BLOC( condition ="""(GROUP_MA_BORD != None) and (GROUP_MA != None)""", - fr=" calcul des coef de cisaillement équivalents a un reseau de poutres", - regles=(ENSEMBLE('LONGUEUR','LIAISON','MATERIAU') ,), - LONGUEUR =SIMP(statut='f',typ='R',fr="Longueur du réseau de poutres"), - MATERIAU =SIMP(statut='f',typ=mater_sdaster,fr="Materiau elastique lineaire du reseau"), - LIAISON =SIMP(statut='f',typ='TXM',into=("ROTULE","ENCASTREMENT"), - fr="type de conditions aux limites sur le plancher supérieur" ), - ), - ) -#& MODIF COMMANDE DATE 07/02/2005 AUTEUR MABBAS M.ABBAS +MODI_MODELE_XFEM=OPER(nom="MODI_MODELE_XFEM",op= 113,sd_prod=modele_sdaster,docu="U4.44.12-e",reentrant='f', + UIinfo={"groupes":("Modélisation",)}, + fr="Engendrer ou enrichir une structure de donnees en affectant les cham_gd associes", + + MODELE_IN =SIMP(statut='o',typ=modele_sdaster,min=1,max=1,), + FISSURE =SIMP(statut='o',typ=fiss_xfem,min=1,max=100,), + CRITERE =SIMP(statut='f',typ='R',defaut=1.67E-8), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2,)), + CONTACT =SIMP(statut='f',typ=char_meca,min=1,max=1,), +) ; +#& MODIF COMMANDE DATE 10/10/2006 AUTEUR MCOURTOI M.COURTOIS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== - -from Macro.macr_cabri_mail_ops import macr_cabri_mail_ops - -MACR_CABRI_MAIL=MACRO(nom="MACR_CABRI_MAIL", - op=macr_cabri_mail_ops, - sd_prod=maillage_sdaster, - fr="maillage d'une jonction boulonnée de tuyauterie", - reentrant='n', - UIinfo={"groupes":("Outils métier",)}, - EXEC_MAILLAGE = FACT(statut='o', - LOGICIEL = SIMP(statut = 'o',typ='TXM',into=("GIBI2000",),), - UNITE_DATG = SIMP(statut = 'f',typ='I',defaut=70,), - UNITE_MGIB = SIMP(statut = 'f',typ='I',defaut=19,), - NIVE_GIBI = SIMP(statut = 'f',typ='I',defaut=10, - into = (3,4,5,6,7,8,9,10,11), - ), - ), - RAFF_MAILLAGE = FACT(statut = 'd', - NB_RADIAL = SIMP(statut = 'f',typ='I',defaut=2,), - NB_CIRCONF = SIMP(statut = 'f',typ='I',defaut=3,), - NB_VERTICAL = SIMP(statut = 'f',typ='I',defaut=6,), - NB_ALESAGE = SIMP(statut = 'f',typ='I',defaut=5,), - ), - VERI_MAIL = FACT(statut='d', - VERIF = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - APLAT = SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - ), - GEOM_BRID = FACT(statut = 'o', - NORME = SIMP(statut = 'o',typ='TXM',into=("OUI","NON"),), - b_bride_iso = BLOC(condition = "NORME == 'OUI'", - TYPE = SIMP(statut='o',typ='TXM', - into=('A','AA','B','B1','C','D','D1','E','F', - 'FF','G','GG','H','H1','I','J','J1', - 'K','L','L1','M','N','O','P','S','T','W'), - ), - ), - b_bride_niso = BLOC(condition = "NORME == 'NON'", - TUBU_D_EXT = SIMP(statut='o',typ='R',), - TUBU_H = SIMP(statut='o',typ='R',), - BRID_D_EXT = SIMP(statut='o',typ='R',), - BRID_D_INT = SIMP(statut='o',typ='R',), - BRID_H = SIMP(statut='o',typ='R',), - BRID_D_CONGE = SIMP(statut='o',typ='R',), - BRID_R_CONGE = SIMP(statut='o',typ='R',), - BRID_D_EPAUL = SIMP(statut='o',typ='R',), - BRID_H_EPAUL = SIMP(statut='o',typ='R',), - BRID_D_ALESAG = SIMP(statut='o',typ='R',), - BRID_P_ALESAG = SIMP(statut='o',typ='R',), - BRID_H_ALESAG = SIMP(statut='o',typ='R',), - GOUJ_N_GOUJON = SIMP(statut='o',typ='I',), - GOUJ_D_GOUJON = SIMP(statut='o',typ='R',), - GOUJ_E_FILET = SIMP(statut='o',typ='R',), - GOUJ_D_RONDEL = SIMP(statut='o',typ='R',), - GOUJ_E_RONDEL = SIMP(statut='o',typ='R',), - GOUJ_D_ECROU = SIMP(statut='o',typ='R',), - GOUJ_E_ECROU = SIMP(statut='o',typ='R',), - ETAN_E_JOINT = SIMP(statut='o',typ='R',), - ), - ), - IMPRESSION = FACT(statut='d', - UNITE = SIMP(statut='f',typ='I'), - FORMAT = SIMP(statut='f',typ='TXM',defaut="ASTER", - into=("ASTER","CASTEM","IDEAS"), - ), - b_impr_castem = BLOC(condition = "FORMAT == 'CASTEM'", - NIVE_GIBI = SIMP(statut='f',typ='I',defaut=10,into=(3,10),), - ), - b_impr_ideas = BLOC(condition = "FORMAT == 'IDEAS'", - VERSION = SIMP(statut='f',typ='I',defaut=5,into=(4,5),), - ), - ), - ); - -#& MODIF COMMANDE DATE 27/11/2006 AUTEUR PELLET J.PELLET +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +MODI_OBSTACLE=OPER(nom="MODI_OBSTACLE",op=182,sd_prod=table_fonction, + fr="Calculer les obstacles dans les systèmes guidage-tube après usure", + reentrant='f', + UIinfo={"groupes":("Modélisation",)}, + regles=(PRESENT_ABSENT('R_MOBILE','CRAYON'), + PRESENT_PRESENT('V_USUR_TUBE','V_USUR_OBST'),), + OBSTACLE =SIMP(statut='f',typ=table_fonction), + GUIDE =SIMP(statut='o',typ=table_sdaster), + CRAYON =SIMP(statut='f',typ=table_sdaster), + TABL_USURE =SIMP(statut='f',typ=table_sdaster), + INST =SIMP(statut='f',typ='R'), + R_MOBILE =SIMP(statut='f',typ='R'), + PERCEMENT =SIMP(statut='f',typ='R',defaut=1), + V_USUR_TUBE =SIMP(statut='f',typ='R',max='**'), + V_USUR_OBST =SIMP(statut='f',typ='R',max='**'), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), +) ; +#& MODIF COMMANDE DATE 09/05/2007 AUTEUR VIVAN L.VIVAN # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR @@ -22006,337 +19898,353 @@ MACR_CABRI_MAIL=MACRO(nom="MACR_CABRI_MAIL", # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -#& RESPONSABLE -DYNA_TRAN_EXPLI=OPER(nom="DYNA_TRAN_EXPLI",op= 70,sd_prod=evol_noli,reentrant='f',UIinfo={"groupe":("Résolution",)}, - fr="Calcul de l'évolution dynamique d'une structure dont la géométrie ou le matériau ont un comportement" - +" non linéaire, par une méthode explicite sur les accélérations ", - regles=(AU_MOINS_UN('COMP_INCR','COMP_ELAS',),UN_PARMI('DIFF_CENT','TCHAMWA'),), - MODELE =SIMP(statut='o',typ=modele_sdaster), - CHAM_MATER =SIMP(statut='o',typ=cham_mater), - MODE_STAT =SIMP(statut='f',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc,)), - CARA_ELEM =SIMP(statut='f',typ=cara_elem), - MASS_DIAG =SIMP(statut='f',typ='TXM',into=("OUI","NON",) ), - EXCIT =FACT(statut='o',max='**', - regles=(PRESENT_ABSENT('FONC_MULT','ACCE'), - PRESENT_PRESENT('ACCE','VITE','DEPL'), - # PRESENT_ABSENT('MULT_APPUI','FONC_MULT'), - ), - TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE_CSTE", - into=("FIXE_CSTE","FIXE_PILO","SUIV","DIDI")), - CHARGE =SIMP(statut='o',typ=char_meca), - FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - DEPL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - ACCE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - VITE =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - MULT_APPUI =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - DIRECTION =SIMP(statut='f',typ='R',max=3), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), +# RESPONSABLE JMBHH01 J.M.PROIX +def modi_repere_prod(RESULTAT,**args): + if AsType(RESULTAT) != None : return AsType(RESULTAT) + +MODI_REPERE=OPER(nom="MODI_REPERE",op=191,sd_prod=modi_repere_prod,reentrant='n', + UIinfo={"groupes":("Résultats et champs",)}, + fr="Calcule des résultats dans le repère cylindrique", + RESULTAT =SIMP(statut='o',typ=resultat_sdaster), + + regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE', + 'NOEUD_CMP','LIST_INST','LIST_FREQ','NOM_CAS'),), + TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + NOEUD_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), + NOM_CAS =SIMP(statut='f',typ='TXM' ), + + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_INST =SIMP(statut='f',typ=listr8_sdaster), + LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), + + PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + + MODI_CHAM =FACT(statut='o',max='**', + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + TYPE_CHAM =SIMP(statut='o',typ='TXM', + into=("VECT_2D","VECT_3D","TORS_3D","TENS_2D","TENS_3D"),), + NOM_CHAM =SIMP(statut='o',typ='TXM',into=C_NOM_CHAM_INTO()), + b_vect_2d =BLOC(condition = "TYPE_CHAM=='VECT_2D'", + NOM_CMP =SIMP(statut='o',typ='TXM',min=2,max=2 ),), + b_vect_3d =BLOC(condition = "TYPE_CHAM=='VECT_3D'", + NOM_CMP =SIMP(statut='o',typ='TXM',min=3,max=3 ),), + b_tors_3d =BLOC(condition = "TYPE_CHAM=='TORS_3D'", + NOM_CMP =SIMP(statut='o',typ='TXM',min=6,max=6 ),), + b_tens_2d =BLOC(condition = "TYPE_CHAM=='TENS_2D'", + NOM_CMP =SIMP(statut='o',typ='TXM',min=4,max=4 ),), + b_tens_3d =BLOC(condition = "TYPE_CHAM=='TENS_3D'", + NOM_CMP =SIMP(statut='o',typ='TXM',min=6,max=6 ),), ), - AMOR_MODAL =FACT(statut='f', - MODE_MECA =SIMP(statut='o',typ=mode_meca), - AMOR_REDUIT =SIMP(statut='f',typ='R',max='**' ), - NB_MODE =SIMP(statut='f',typ='I',defaut= 9999 ), - REAC_VITE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - PROJ_MODAL =FACT(statut='f',max='**', - MODE_MECA =SIMP(statut='o',typ=mode_meca), - NB_MODE =SIMP(statut='f',typ='I',defaut= 9999 ), - regles=(PRESENT_PRESENT('MASS_GENE','RIGI_GENE'),), - MASS_GENE =SIMP(statut='f',typ=matr_asse_gene_r), - RIGI_GENE =SIMP(statut='f',typ=matr_asse_gene_r), - AMOR_GENE =SIMP(statut='f',typ=matr_asse_gene_r), - ), - EXCIT_GENE =FACT(statut='f',max='**', - FONC_MULT =SIMP(statut='f',typ=fonction_sdaster,max='**' ), - VECT_GENE =SIMP(statut='f',typ=vect_asse_gene,max='**' ), + DEFI_REPERE =FACT(statut='o', + regles=(UN_PARMI('ANGL_NAUT','ORIGINE'),), + REPERE =SIMP(statut='f',typ='TXM',defaut="UTILISATEUR", + into=("UTILISATEUR","CYLINDRIQUE"),), + ANGL_NAUT =SIMP(statut='f',typ='R',max=3), + ORIGINE =SIMP(statut='f',typ='R',min=2,max=3), + AXE_Z =SIMP(statut='f',typ='R',min=3,max=3), ), - COMP_INCR =C_COMP_INCR(), - COMP_ELAS =FACT(statut='f',max='**', - RELATION =SIMP(statut='o',typ='TXM',defaut="ELAS", - into=("ELAS","ELAS_VMIS_LINE","ELAS_VMIS_TRAC", - "ELAS_POUTRE_GR","CABLE","ELAS_HYPER")), - ELAS =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_VMIS_TRAC =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_VMIS_LINE =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_HYPER =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_POUTRE_GR =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - CABLE =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - DEFORMATION =SIMP(statut='f',typ='TXM',defaut="PETIT" ,into=("PETIT","GREEN","GREEN_GR",) ), - regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - RESI_INTE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-6), - ITER_INTE_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), - ITER_INTE_PAS =SIMP(statut='f',typ='I',defaut= 0 ), - RESO_INTE =SIMP(statut='f',typ='TXM',defaut="IMPLICITE", - into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")), + TITRE =SIMP(statut='f',typ='TXM',max='**'), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), +) ; +#& MODIF COMMANDE DATE 31/10/2006 AUTEUR A3BHHAE H.ANDRIAMBOLOLONA +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +def norm_mode_prod(MODE,**args ): + if AsType(MODE) == mode_meca : return mode_meca + if AsType(MODE) == mode_meca_c : return mode_meca_c + if AsType(MODE) == mode_flamb : return mode_flamb + if AsType(MODE) == base_modale : return base_modale + raise AsException("type de concept resultat non prevu") + +NORM_MODE=OPER(nom="NORM_MODE",op= 37,sd_prod=norm_mode_prod, + fr="Normer des modes propres en fonction d'un critère choisi par l'utilisateur", + reentrant='f', + UIinfo={"groupes":("Résolution",)}, + regles=(UN_PARMI('NORME','NOEUD','AVEC_CMP','SANS_CMP'), + CONCEPT_SENSIBLE('SEPARE'), + DERIVABLE('MODE'),), + MODE =SIMP(statut='o',typ=(mode_meca,mode_flamb,base_modale) ), + NORME =SIMP(statut='f',typ='TXM',fr="Norme prédéfinie : masse généralisée, euclidienne,...", + into=("MASS_GENE","RIGI_GENE","EUCL","EUCL_TRAN","TRAN","TRAN_ROTA") ), + NOEUD =SIMP(statut='f',typ=no, fr="Composante donnée d un noeud spécifié égale à 1"), + b_noeud =BLOC(condition = "NOEUD != None", + NOM_CMP =SIMP(statut='o',typ='TXM' ), ), -#------------------------------------------------------------------- - ETAT_INIT =FACT(statut='f', - regles=(AU_MOINS_UN('EVOL_NOLI','DEPL','VITE','ACCE','SIGM','VARI','VARI_NON_LOCAL',), - EXCLUS('EVOL_NOLI','DEPL',), - EXCLUS('EVOL_NOLI','VITE'), - EXCLUS('EVOL_NOLI','ACCE'), - EXCLUS('EVOL_NOLI','SIGM',), - EXCLUS('EVOL_NOLI','VARI',), - EXCLUS('EVOL_NOLI','VARI_NON_LOCAL',), - EXCLUS('NUME_ORDRE','INST'), ), - DEPL =SIMP(statut='f',typ=cham_no_sdaster), - VITE =SIMP(statut='f',typ=cham_no_sdaster), - ACCE =SIMP(statut='f',typ=cham_no_sdaster), - SIGM =SIMP(statut='f',typ=(cham_elem,carte_sdaster)), - VARI =SIMP(statut='f',typ=cham_elem), - VARI_NON_LOCAL =SIMP(statut='f',typ=cham_no_sdaster), - EVOL_NOLI =SIMP(statut='f',typ=evol_noli), - NUME_ORDRE =SIMP(statut='f',typ='I'), - INST =SIMP(statut='f',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - NUME_DIDI =SIMP(statut='f',typ='I'), - INST_ETAT_INIT =SIMP(statut='f',typ='R'), + AVEC_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), + SANS_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), + MASS_INER =SIMP(statut='f',typ=table_sdaster), + MODE_SIGNE =FACT(statut='f',fr="Imposer un signe sur une des composantes des modes", + NOEUD =SIMP(statut='o',typ=no,fr="Noeud ou sera imposé le signe"), + NOM_CMP =SIMP(statut='o',typ='TXM',fr="Composante du noeud ou sera imposé le signe" ), + SIGNE =SIMP(statut='f',typ='TXM',defaut="POSITIF",into=("NEGATIF","POSITIF"), + fr="Choix du signe" ), ), -#------------------------------------------------------------------- - INCREMENT =FACT(statut='o', - regles=(EXCLUS('NUME_INST_INIT','INST_INIT'), - EXCLUS('NUME_INST_FIN','INST_FIN'),), - LIST_INST =SIMP(statut='o',typ=listr8_sdaster), - EVOLUTION =SIMP(statut='f',typ='TXM',defaut="CHRONOLOGIQUE", - into=("CHRONOLOGIQUE","RETROGRADE","SANS",) ), - NUME_INST_INIT =SIMP(statut='f',typ='I'), - INST_INIT =SIMP(statut='f',typ='R'), - NUME_INST_FIN =SIMP(statut='f',typ='I'), - INST_FIN =SIMP(statut='f',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), - # DEBUT DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS - SUBD_METHODE =SIMP( statut='f',typ='TXM', - into =("AUCUNE","UNIFORME","EXTRAPOLE"), - defaut="AUCUNE", - fr="Méthode de subdivision des pas de temps en cas de non-convergence" - ), - b_subd_unif=BLOC(condition = "SUBD_METHODE == 'UNIFORME'", - regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), - SUBD_COEF_PAS_1=SIMP(statut='f',typ='R',defaut=1.0,val_min=0.0, - fr="Coefficient multiplicateur de la 1ère subdivision"), - SUBD_PAS =SIMP(statut='f',typ='I',defaut=4,val_min=2, - fr="Nombre de subdivision d'un pas de temps"), - SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, - fr="Nombre maximum de niveau de subdivision d'un pas de temps"), - SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, - fr="Pas de temps en dessous duquel on ne subdivise plus"), - ), - b_subd_extr=BLOC(condition = "SUBD_METHODE == 'EXTRAPOLE'", - regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), - SUBD_OPTION =SIMP(statut='f',typ='TXM', - into =("IGNORE_PREMIERES","GARDE_DERNIERES",), - defaut="IGNORE_PREMIERES", - fr="Technique d'extrapolation : les 1ere itérations sont ignorées ou les dernières sont gardées"), - SUBD_ITER_IGNO =SIMP(statut='c',typ='I',defaut=3,val_min=0, - fr="Les n premières itérations sont ignorées pour l'extrapolation"), - SUBD_ITER_FIN =SIMP(statut='c',typ='I',defaut=8,val_min=3, - fr="Seules les n dernières itérations sont prises pour l'extrapolation"), - SUBD_PAS =SIMP(statut='c',typ='I',defaut=4,val_min=2, - fr="Nombre de subdivision d'un pas de temps en cas divergence"), - SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, - fr="Nombre maximum de niveau de subdivision d'un pas de temps"), - SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, - fr="Pas de temps en dessous duquel on ne subdivise plus"), - SUBD_ITER_PLUS =SIMP(statut='c',typ='I',defaut=50,val_min=20, - fr="% itération autorisée en plus"), - ), - # FIN DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS - OPTI_LIST_INST =SIMP(statut='f',typ='TXM',into=("INCR_MAXI",),), - NOM_CHAM =SIMP(statut='f',typ='TXM',), - NOM_CMP =SIMP(statut='f',typ='TXM',), - VALE =SIMP(statut='f',typ='R'), + SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', + fr="Liste des param\350tres de sensibilit\351.", + ang="List of sensitivity parameters", ), -#------------------------------------------------------------------- - DIFF_CENT =FACT(statut='f', + b_base =BLOC(condition = "AsType(MODE) == base_modale", + MASSE = SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_gene_r,matr_asse_pres_r ), ), + RAIDE = SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_gene_r,matr_asse_pres_r ), ), + AMOR = SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_gene_r) ), ), - TCHAMWA =FACT(statut='f', - PHI =SIMP(statut='f',typ='R',defaut= 1.05), + TITRE =SIMP(statut='f',typ='TXM',max='**'), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), +) ; +#& MODIF COMMANDE DATE 13/12/2006 AUTEUR PELLET J.PELLET +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE VABHHTS J.PELLET +NUME_DDL=OPER(nom="NUME_DDL",op=11,sd_prod=nume_ddl_sdaster,reentrant='n', + UIinfo={"groupes":("Matrices/vecteurs",)}, + fr="Etablissement de la numérotation des ddl avec ou sans renumérotation et du stockage de la matrice", + regles=(UN_PARMI('MATR_RIGI','MODELE'),), + MATR_RIGI =SIMP(statut='f',validators=NoRepeat(),max=100, + typ=(matr_elem_depl_r ,matr_elem_depl_c,matr_elem_temp_r ,matr_elem_pres_c) ), + MODELE =SIMP(statut='f',typ=modele_sdaster ), + b_modele =BLOC(condition = "MODELE != None", + CHARGE =SIMP(statut='f',validators=NoRepeat(),max='**',typ=(char_meca,char_ther,char_acou, ),), ), - STOP_CFL =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - NEWTON =FACT(statut='c', - REAC_INCR =SIMP(statut='f',typ='I',defaut= 1 ), - PREDICTION =SIMP(statut='f',typ='TXM',into=("TANGENTE","ELASTIQUE") ), - MATRICE =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE") ), - REAC_ITER =SIMP(statut='f',typ='I',defaut= 0), - REAC_ITER_ELAS =SIMP(statut='f',typ='I',defaut=0), - PAS_MINI_ELAS =SIMP(statut='f',typ='R',defaut=0.0E+0), + METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC","MUMPS") ), + b_mult_front =BLOC(condition="METHODE=='MULT_FRONT'",fr="paramètres associés à la méthode multifrontale", + RENUM =SIMP(statut='f',typ='TXM',into=("MD","MDA","METIS"),defaut="METIS" ), ), - SOLVEUR =FACT(statut='d', - METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ), - b_mult_front =BLOC(condition= "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale", - RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), - ), - b_ldlt =BLOC(condition= "METHODE == 'LDLT'",fr="Paramètres de la méthode LDLT", - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), - ), - b_ldlt_mult =BLOC(condition="METHODE == 'LDLT' or METHODE == 'MULT_FRONT'", - fr="Paramètres relatifs à la non inversibilité de la matrice à factorise", - NPREC =SIMP(statut='f',typ='I',defaut= 8 ), - STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON","DECOUPE") ), - ), - b_gcpc =BLOC(condition="METHODE == 'GCPC'",fr="Paramètres de la méthode du gradient conjugué", - PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ), - NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut=0), - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), - RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), - NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), - ), - SYME =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + b_ldlt =BLOC(condition="METHODE=='LDLT'",fr="paramètres associés à la méthode LDLT", + RENUM =SIMP(statut='f',typ='TXM',into=("RCMK","SANS"),defaut="RCMK" ), ), -#------------------------------------------------------------------- - RECH_LINEAIRE =FACT(statut='c', - RESI_LINE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-1 ), - ITER_LINE_MAXI =SIMP(statut='f',typ='I',defaut= 3), - ITER_LINE_CRIT =SIMP(statut='f',typ='I',defaut= 20), - PAS_MINI_CRIT =SIMP(statut='f',typ='R',defaut=0.0E+0), - RHO_MIN =SIMP(statut='f',typ='R',defaut=1.0E-2), - RHO_MAX =SIMP(statut='f',typ='R',defaut=1.0E+1), - RHO_EXCL =SIMP(statut='f',typ='R',defaut=0.9E-2), + b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", + RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), + ELIM_LAGR2 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), ), - PILOTAGE =FACT(statut='c', - regles=(EXCLUS('NOEUD','GROUP_NO'),PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), - TYPE =SIMP(statut='o',typ='TXM',into=("DDL_IMPO","LONG_ARC","PRED_ELAS","PRED_ELAS_INCR","DEFORMATION","ANA_LIM") ), - COEF_MULT =SIMP(statut='f',typ='R',defaut= 1.0E+0), - ETA_PILO_MAX =SIMP(statut='f',typ='R'), - ETA_PILO_MIN =SIMP(statut='f',typ='R'), - ETA_PILO_R_MAX =SIMP(statut='f',typ='R'), - ETA_PILO_R_MIN =SIMP(statut='f',typ='R'), - PROJ_BORNES =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - SELECTION =SIMP(statut='f',typ='TXM',defaut="NORM_INCR_DEPL", into=("RESIDU","ANGL_INCR_DEPL","NORM_INCR_DEPL") ), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO =SIMP(statut='f',typ=grno ,validators=NoRepeat(),max='**'), - NOM_CMP =SIMP(statut='f',typ='TXM',max='**' ), - ), - CONVERGENCE =FACT(statut='d', - regles=(PRESENT_ABSENT('RESI_REFE_RELA','RESI_GLOB_MAXI','RESI_GLOB_RELA'),), - SIGM_REFE =SIMP(statut='f',typ='R'), - EPSI_REFE =SIMP(statut='f',typ='R'), - FLUX_THER_REFE =SIMP(statut='f',typ='R'), - FLUX_HYD1_REFE =SIMP(statut='f',typ='R'), - FLUX_HYD2_REFE =SIMP(statut='f',typ='R'), - RESI_REFE_RELA =SIMP(statut='f',typ='R'), - RESI_GLOB_MAXI =SIMP(statut='f',typ='R'), - RESI_GLOB_RELA =SIMP(statut='f',typ='R'), - ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut=10), - ITER_GLOB_ELAS =SIMP(statut='f',typ='I',defaut=25), - ARRET =SIMP(statut='f',typ='TXM',defaut="OUI"), - RESI_INTE_RELA =SIMP(statut='f',typ='R' - ,defaut= 1.0E-6), - ITER_INTE_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), - ITER_INTE_PAS =SIMP(statut='f',typ='I',defaut= 0 ), - RESO_INTE =SIMP(statut='f',typ='TXM',defaut="IMPLICITE", - into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")), + b_gcpc =BLOC(condition="METHODE=='GCPC'",fr="paramètres associés à la méthode gradient conjugué", + RENUM =SIMP(statut='f',typ='TXM',into=("RCMK","SANS"),defaut="RCMK" ), ), -#------------------------------------------------------------------- - AFFICHAGE = FACT(statut='f',max=16, + INFO =SIMP(statut='f',typ='I',into=(1,2)), +) ; +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +NUME_DDL_GENE=OPER(nom="NUME_DDL_GENE",op= 127,sd_prod=nume_ddl_gene, + fr="Etablissement de la numérotation des ddl d'un modèle établi en coordonnées généralisées", + reentrant='n', + UIinfo={"groupes":("Matrices/vecteurs",)}, + regles=UN_PARMI('MODELE_GENE','BASE'), + MODELE_GENE =SIMP(statut='f',typ=modele_gene ), + b_modele_gene =BLOC(condition = "MODELE_GENE != None", + STOCKAGE =SIMP(statut='f',typ='TXM',defaut="LIGN_CIEL",into=("LIGN_CIEL","PLEIN") ), + METHODE =SIMP(statut='f',typ='TXM',defaut="CLASSIQUE",into=("INITIAL","CLASSIQUE") ), + ), + BASE =SIMP(statut='f',typ=(mode_meca,mode_stat,base_modale,mode_gene ) ), + b_base =BLOC(condition = "BASE != None", + STOCKAGE =SIMP(statut='f',typ='TXM',defaut="DIAG",into=("DIAG","PLEIN") ), + NB_VECT =SIMP(statut='f',typ='I',defaut= 9999 ), + ), +) ; +#& MODIF COMMANDE DATE 22/05/2007 AUTEUR BODEL C.BODEL +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2007 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== - UNITE = SIMP(statut='f',typ='I',val_min=1), +from Macro.observation_ops import observation_ops - LONG_R = SIMP(statut='f',typ='I',defaut=12,val_min=1,val_max=12), - PREC_R = SIMP(statut='f',typ='I',defaut=5, val_min=1,val_max=8), - LONG_I = SIMP(statut='f',typ='I',defaut=6, val_min=1,val_max=12), - NOM_COLONNE = SIMP(statut='o',typ='TXM',defaut="STANDARD", - into=("STANDARD","MINIMUM", - "ITER_NEWT", - "INCR_TPS", - "RESI_RELA","RELA_NOEU", - "RESI_MAXI","MAXI_NOEU", - "RESI_REFE","REFE_NOEU", - "RELI_ITER","RELI_COEF", - "PILO_PARA", - "LAGR_ECAR","LAGR_INCR","LAGR_ITER", - "MATR_ASSE", - "ITER_DEBO", - "CTCD_ITER","CTCD_INFO","CTCD_GEOM","CTCD_NOEU", - "CTCC_GEOM","CTCC_FROT","CTCC_CONT", - "SUIV_1","SUIV_2","SUIV_3","SUIV_4", - ), - ), - b_residu = BLOC(condition = " NOM_COLONNE == 'RESI_RELA' or \ - NOM_COLONNE == 'RESI_MAXI' or\ - NOM_COLONNE == 'RESI_REFE' or\ - NOM_COLONNE == 'CTCD_GEOM' or\ - NOM_COLONNE == 'STANDARD' ", - INFO_RESIDU = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), - ), - ), -#------------------------------------------------------------------- - ARCHIVAGE =FACT(statut='f', - regles=(EXCLUS('PAS_ARCH','LIST_INST','INST'), - EXCLUS('ARCH_ETAT_INIT','NUME_INIT'), ), - LIST_INST =SIMP(statut='f',typ=(listr8_sdaster) ), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - PAS_ARCH =SIMP(statut='f',typ='I' ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3), - ARCH_ETAT_INIT =SIMP(statut='f',typ='TXM',into=("OUI",)), - NUME_INIT =SIMP(statut='f',typ='I'), - DETR_NUME_SUIV =SIMP(statut='f',typ='TXM',into=("OUI",)), - CHAM_EXCLU =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**', - into=("DEPL","SIEF_ELGA","VARI_ELGA","ACCE","VITE","VARI_NON_LOCAL","LANL_ELGA")), +def observation_prod(self, RESULTAT, **args): + if AsType(RESULTAT) == base_modale or AsType(RESULTAT) == mode_meca : + return base_modale + elif AsType(RESULTAT) == evol_elas : + return evol_elas + elif AsType(RESULTAT) == dyna_harmo : + return dyna_harmo + else : + return None + +OBSERVATION=MACRO(nom="OBSERVATION",op=observation_ops, + UIinfo={"groupes":("Matrices/vecteurs",)}, + sd_prod=observation_prod, + fr="Calcul de l'observabilite d'un champ aux noeuds ", +# + MODELE_1 =SIMP(statut='o',typ=modele_sdaster), + MODELE_2 =SIMP(statut='o',typ=modele_sdaster), + RESULTAT =SIMP(statut='o',typ=(mode_meca,base_modale) ), + NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=1), + +# ------------------------------------------------------------------ + + regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE','FREQ','LIST_FREQ','NUME_MODE' ),), + TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), + FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), + LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), + NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), + LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), + LIST_INST =SIMP(statut='f',typ=listr8_sdaster), + NOEUD_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), + +# ------------------------------------------------------------------ +# OPTIONS DE PROJ_CHAMP (SANS MC FACTEUR PARTICULIER) +# ------------------------------------------------------------------ + PROJECTION =SIMP(statut='f',max=1,typ='TXM',into=("OUI","NON"),defaut="NON"), + CAS_FIGURE =SIMP(statut='f',typ='TXM',into=("2D","3D","2.5D","1.5D",) ), + DISTANCE_MAX =SIMP(statut='f',typ='R', + fr="Distance maximale entre le noeud et l'élément le plus proche, lorsque le noeud n'est dans aucun élément."), + ALARME =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + + TYPE_CHAM =SIMP(statut='f',typ='TXM',into=("NOEU",), + fr="Pour forcer le type des champs projetés. NOEU -> cham_no"), + +# PROL_ZERO =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON", +# fr="Si le résultat est un mode_xxx ou une base_xxx, on peut prolonger" +# +" les champs par zéro la ou la projection ne donne pas de valeurs."), + + NUME_DDL =SIMP(statut='f',typ=(nume_ddl_sdaster) ), + VIS_A_VIS =FACT(statut='f',max='**', + regles=(AU_MOINS_UN('TOUT_1','GROUP_MA_1','MAILLE_1','GROUP_NO_1','NOEUD_1'), + AU_MOINS_UN('TOUT_2','GROUP_MA_2','MAILLE_2','GROUP_NO_2','NOEUD_2'),), + TOUT_1 =SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_MA_1 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE_1 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_NO_1 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD_1 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + TOUT_2 =SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_MA_2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE_2 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_NO_2 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD_2 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + CAS_FIGURE =SIMP(statut='f',typ='TXM',into=("2D","3D","2.5D","1.5D",) ), + ), + +# ------------------------------------------------------------------ +# MODI_REPERE +# ------------------------------------------------------------------ + MODI_REPERE =FACT(statut='f',max='**', + regles=(UN_PARMI('REPERE'), + AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'),), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), +# + TYPE_CHAM =SIMP(statut='f',typ='TXM', + into=("VECT_2D","VECT_3D","TORS_3D","TENS_2D","TENS_3D"), + defaut="VECT_3D"), + b_vect_2d =BLOC(condition = "TYPE_CHAM=='VECT_2D'", + NOM_CMP =SIMP(statut='o',typ='TXM',min=2,max=2 ),), + b_vect_3d =BLOC(condition = "TYPE_CHAM=='VECT_3D'", + NOM_CMP =SIMP(statut='f',typ='TXM',min=3,max=3,defaut=('DX','DY','DZ') ),), + b_tors_3d =BLOC(condition = "TYPE_CHAM=='TORS_3D'", + NOM_CMP =SIMP(statut='o',typ='TXM',min=6,max=6 ),), + b_tens_2d =BLOC(condition = "TYPE_CHAM=='TENS_2D'", + NOM_CMP =SIMP(statut='o',typ='TXM',min=4,max=4 ),), + b_tens_3d =BLOC(condition = "TYPE_CHAM=='TENS_3D'", + NOM_CMP =SIMP(statut='o',typ='TXM',min=6,max=6 ),), + + REPERE =SIMP(statut='o',typ='TXM', + into=("UTILISATEUR","CYLINDRIQUE","NORMALE"),), + b_normale =BLOC(condition = "REPERE=='NORMALE'", + regles=(UN_PARMI('VECT_X','VECT_Y')), + VECT_X =SIMP(statut='f',typ='R',min=3,max=3), + VECT_Y =SIMP(statut='f',typ='R',min=3,max=3), ), + b_utilisateur =BLOC(condition = "REPERE=='UTILISATEUR'", + ANGL_NAUT =SIMP(statut='o',typ='R',max=3)), + b_cylindrique =BLOC(condition = "REPERE=='CYLINDRIQUE'", + ORIGINE =SIMP(statut='o',typ='R',min=2,max=3), + AXE_Z =SIMP(statut='o',typ='R',min=3,max=3)), ), - OBSERVATION =FACT(statut='f',max='**', - regles=(UN_PARMI('NOEUD','GROUP_NO','MAILLE'), - PRESENT_PRESENT('MAILLE','POINT'),), - NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', -into=("DEPL","VITE","ACCE","SIEF_ELGA","VARI_ELGA","DEPL_ABSOLU","VITE_ABSOLU","ACCE_ABSOLU") ), - NOM_CMP =SIMP(statut='o',typ='TXM',max='**' ), - LIST_ARCH =SIMP(statut='f',typ=listis_sdaster), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - PAS_OBSE =SIMP(statut='f',typ='I'), - NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), +# ------------------------------------------------------------------ +# FILTRE DES DDL +# ------------------------------------------------------------------ + FILTRE =FACT(statut='f',max='**', + regles=(UN_PARMI('DDL_ACTIF'), +# 'MASQUE'), + AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'),), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - POINT =SIMP(statut='f',typ='I' ,max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), +# + DDL_ACTIF =SIMP(statut='f',typ='TXM',max=6), +# TODO : mettre en place le systeme de masques +# MASQUE =SIMP(statut='f',typ='TXM',max=6), ), -#------------------------------------------------------------------- - SOLV_NON_LOCAL =FACT(statut='f', - METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ), - b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale", - RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), - ), - b_ldlt =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT", - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), - ), - b_ldlt_mult =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ", - fr="Paramètres relatifs à la non inversibilité de la matrice à factorise", - NPREC =SIMP(statut='f',typ='I',defaut= 8 ), - STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - b_gcpc =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué", - PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ), - NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), - RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), - NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), - ), - ), - LAGR_NON_LOCAL =FACT(statut='f', - ITER_DUAL_MAXI =SIMP(statut='f',typ='I',defaut= 50), - RESI_DUAL_ABSO =SIMP(statut='o',typ='R'), - RESI_PRIM_ABSO =SIMP(statut='o',typ='R'), - R =SIMP(statut='f',typ='R',defaut= 1000.), - ITER_PRIM_MAXI =SIMP(statut='f',typ='I',defaut= 10), - ), -#------------------------------------------------------------------- - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), -) ; -#& MODIF COMMANDE DATE 25/09/2006 AUTEUR MJBHHPE J.L.FLEJOU +# ------------------------------------------------------------------ + + TITRE =SIMP(statut='f',typ='TXM',max='**' ), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), + ) ; +#& MODIF COMMANDE DATE 15/05/2007 AUTEUR GENIAUT S.GENIAUT # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG +# COPYRIGHT (C) 1991 - 2005 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR @@ -22351,1099 +20259,2752 @@ into=("DEPL","VITE","ACCE","SIEF_ELGA","VARI_ELGA","DEPL_ABSOLU","VITE_ABSOLU"," # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== +POST_CHAM_XFEM=OPER(nom="POST_CHAM_XFEM",op= 196,sd_prod=evol_noli, + reentrant='n',UIinfo={"groupes":("Post traitements",)}, + fr="Calcul des champs DEPL et SIEF_ELGA sur le maillage fissuré", + MAILLAGE_SAIN = SIMP(statut='o',typ=maillage_sdaster), + MAILLAGE_FISS = SIMP(statut='o',typ=maillage_sdaster), + NOM_CHAM = SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=("DEPL","SIEF_ELGA"),), + MODELE = SIMP(statut='o',typ=modele_sdaster,), + RESULTAT = SIMP(statut='o',typ=resultat_sdaster), + b_elga = BLOC(condition = "NOM_CHAM == 'SIEF_ELGA' or \ + (type(NOM_CHAM)==type(()) and 'SIEF_ELGA' in NOM_CHAM)", + MODELE_VISU = SIMP(statut='o',typ=modele_sdaster,), + ), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2,) ), +); +#& MODIF COMMANDE DATE 10/10/2006 AUTEUR MCOURTOI M.COURTOIS +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +from Macro.post_dyna_alea_ops import post_dyna_alea_ops -from Macro.macr_cabri_calc_ops import macr_cabri_calc_ops - -def macr_cabri_calc_prod(self,MODELE_THER,MODELE_MECA,CHAM_MATER, - CHAR_THER,CHAR_MECA,RESU_THER,**args): - if MODELE_THER != None: - self.type_sdprod(MODELE_THER,modele_sdaster) - if MODELE_MECA != None: - self.type_sdprod(MODELE_MECA,modele_sdaster) - if RESU_THER != None: - self.type_sdprod(RESU_THER,evol_ther) - if CHAM_MATER != None: - self.type_sdprod(CHAM_MATER,cham_mater) - if CHAR_THER != None: - for m in CHAR_THER: - self.type_sdprod(m['CHARGE'],char_ther) - if CHAR_MECA != None: - for m in CHAR_MECA: - self.type_sdprod(m['CHARGE'],char_meca) - return evol_noli +POST_DYNA_ALEA=MACRO(nom="POST_DYNA_ALEA",op= post_dyna_alea_ops,sd_prod=table_sdaster, + fr="Traitements statistiques de résultats de type interspectre et impression sur fichiers", + reentrant='n', + UIinfo={"groupes":("Post traitements",)}, + regles=(UN_PARMI('NOEUD_I','NUME_ORDRE_I','OPTION'),), + INTE_SPEC =SIMP(statut='o',typ=table_fonction), + NUME_VITE_FLUI =SIMP(statut='f',typ='I' ), + TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE_I =SIMP(statut='f',typ='I',max='**' ), + NOEUD_I =SIMP(statut='f',typ=no,max='**'), + OPTION =SIMP(statut='f',typ='TXM',into=("DIAG",) ), + b_nume_ordre_i =BLOC(condition = "NUME_ORDRE_I != None", + NUME_ORDRE_J =SIMP(statut='o',typ='I',max='**' ), + ), + b_noeud_i =BLOC(condition = "NOEUD_I != None", + NOEUD_J =SIMP(statut='o',typ=no,max='**'), + NOM_CMP_I =SIMP(statut='o',typ='TXM',max='**' ), + NOM_CMP_J =SIMP(statut='o',typ='TXM',max='**' ), + ), + MOMENT =SIMP(statut='f',typ='I',max='**',fr="Moments spectraux en complément des cinq premiers" ), + TITRE =SIMP(statut='f',typ='TXM',max='**' ), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), +) ; +#& MODIF COMMANDE DATE 03/01/2006 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +POST_DYNA_MODA_T=OPER(nom="POST_DYNA_MODA_T",op= 130,sd_prod=table_sdaster, + fr="Post-traiter les résultats en coordonnées généralisées produit par DYNA_TRAN_MODAL", + reentrant='n', + UIinfo={"groupes":("Post traitements",)}, + regles=(UN_PARMI('CHOC','RELA_EFFO_DEPL', ),), + RESU_GENE =SIMP(statut='o',typ=tran_gene ), + CHOC =FACT(statut='f',max='**', + fr="Analyse des non linéarités de choc", + INST_INIT =SIMP(statut='f',typ='R',defaut= -1. ), + INST_FIN =SIMP(statut='f',typ='R',defaut= 999. ), + NB_BLOC =SIMP(statut='f',typ='I',defaut= 1 ), + SEUIL_FORCE =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + DUREE_REPOS =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + OPTION =SIMP(statut='f',typ='TXM',defaut="USURE",into=("IMPACT","USURE") ), + NB_CLASSE =SIMP(statut='f',typ='I',defaut= 10 ), + ), + RELA_EFFO_DEPL =FACT(statut='f', + fr="Analyse des relationsnon linéaires effort-déplacement", + NOEUD =SIMP(statut='o',typ=no), + NOM_CMP =SIMP(statut='o',typ='TXM' ), + ), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), + TITRE =SIMP(statut='f',typ='TXM',max='**' ), +) ; +#& MODIF COMMANDE DATE 12/09/2006 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE G8BHHXD X.DESROCHES +POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=table_sdaster,reentrant='n', + UIinfo={"groupes":("Post traitements",)}, + fr="Calcul de quantités globales (masse, inerties, énergie, ...) sur tout ou partie du modèle", + regles=(UN_PARMI('MASS_INER', 'ENER_POT', 'ENER_CIN','TRAV_EXT', + 'WEIBULL', 'RICE_TRACEY', 'CARA_GEOM','CHAR_LIMITE', + 'CARA_POUTRE', 'INDIC_ENER', 'INDIC_SEUIL', + 'AIRE_INTERNE','ENER_ELAS','ENER_TOTALE','INTEGRALE'), + ), -MACR_CABRI_CALC=MACRO(nom="MACR_CABRI_CALC", - op=macr_cabri_calc_ops, - sd_prod=macr_cabri_calc_prod, - fr="Calcul thermo-mécanique d'une jonction boulonnée de tuyauterie", - reentrant='n', - UIinfo={"groupes":("Outils métier",)}, - MAILLAGE = SIMP(statut='o',typ=maillage_sdaster,), - AFFE_MATERIAU = FACT(statut='o',max='**', - regles=(UN_PARMI('TOUT','GROUP_MA',),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA = SIMP(statut='f',typ='TXM',into=( - "BRIDE", - "GOUJON", - "ROND", - "ECROU", - "JOINT",) ), - MATER = SIMP(statut='o',typ=mater_sdaster), - TEMP_REF = SIMP(statut='d',typ='R',defaut= 25. ), - ), - CHAM_MATER = SIMP(statut = 'f',typ=CO,), - MODELE_THER= SIMP(statut = 'f',typ=CO,), - - DEFI_CHAR_THER = FACT(statut ='d', - TEMP_INIT = SIMP(statut='d',typ='R',defaut= 25.,), - COEF_H_FLUI = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster),), - TEMP_EXT_FLUI = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster),), - COEF_H_AIR = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster),), - TEMP_EXT_AIR = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster),), - LIST_INST = SIMP(statut='f',typ=listr8_sdaster), - ), - - CHAR_THER = FACT(statut = 'f',max=4, - CHARGE = SIMP(statut='o',typ=CO), - TYPE = SIMP(statut='o',typ='TXM', - into=("BRIDE_FLUIDE","BRIDE_AIR","ECROU_GOUJON", - "BRIDE_JOINT"),) - ), + MASS_INER = FACT(statut='f',max='**', + regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), + TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), + MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + ORIG_INER = SIMP(statut='f',typ='R',min=3,max=3 ), + ), + b_mass_iner = BLOC(condition = "( MASS_INER != None )", + fr="calcul de la masse, les inerties et le centre de gravité", + regles=(EXCLUS('CHAM_GD','RESULTAT'), + EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE', + 'NOEUD_CMP','LIST_ORDRE','LIST_INST','LIST_FREQ','NOM_CAS'),), + MODELE = SIMP(statut='f',typ=modele_sdaster), + CHAM_MATER = SIMP(statut='f',typ=cham_mater), + CARA_ELEM = SIMP(statut='f',typ=cara_elem), + CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ), + NUME_COUCHE = SIMP(statut='f',typ='I',defaut=1), + NIVE_COUCHE = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),), + MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), + GEOMETRIE = SIMP(statut='f',typ='TXM',defaut="INITIALE",into=("INITIALE","DEFORMEE")), + CHAM_GD = SIMP(statut='f',typ=(cham_no_sdaster,cham_elem) ), + RESULTAT = SIMP(statut='f',typ=(mode_meca,evol_elas,evol_noli,mult_elas, + fourier_elas,dyna_trans) ), + PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), + CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), + TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE = SIMP(statut='f',typ='I',), + LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), + INST = SIMP(statut='f',typ='R',), + LIST_INST = SIMP(statut='f',typ=listr8_sdaster), + FREQ = SIMP(statut='f',typ='R',), + LIST_FREQ = SIMP(statut='f',typ=listr8_sdaster), + NUME_MODE = SIMP(statut='f',typ='I',), + NOEUD_CMP = SIMP(statut='f',typ='TXM',min=2,validators=NoRepeat(),max=2), + NOM_CAS = SIMP(statut='f',typ='TXM',), + ), - RESU_THER = SIMP(statut = 'f',typ=CO,), + ENER_POT = FACT(statut='f',max='**', + regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), + TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), + MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + ), + b_ener_pot = BLOC(condition = "( ENER_POT != None )", + fr="calcul de l'énergie potentielle de déformation", + regles=(UN_PARMI('CHAM_GD','RESULTAT'), + EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE', + 'NOEUD_CMP','LIST_ORDRE','LIST_INST','LIST_FREQ','NOM_CAS'),), + MODELE = SIMP(statut='f',typ=modele_sdaster), + CHAM_MATER = SIMP(statut='f',typ=cham_mater), + CARA_ELEM = SIMP(statut='f',typ=cara_elem), + CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ), + NUME_COUCHE = SIMP(statut='f',typ='I',defaut=1), + NIVE_COUCHE = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),), + ANGLE = SIMP(statut='f',typ='I',defaut=0), + MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), + CHAM_GD = SIMP(statut='f',typ=(cham_no_sdaster,cham_elem) ), + RESULTAT = SIMP(statut='f',typ=(mode_meca,evol_elas,evol_ther,evol_noli,dyna_trans,mult_elas) ), + PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), + CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), + TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), + INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_INST = SIMP(statut='f',typ=listr8_sdaster), + FREQ = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_FREQ = SIMP(statut='f',typ=listr8_sdaster), + NUME_MODE = SIMP(statut='f',typ='I' ,validators=NoRepeat(),max='**'), + NOEUD_CMP = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), + NOM_CAS = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), + ), - - MODELE_MECA= SIMP(statut = 'f',typ=CO,), + ENER_CIN = FACT(statut='f',max='**', + regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), + OPTION = SIMP(statut='f',typ='TXM', + into=("MASS_MECA","MASS_MECA_DIAG"), + defaut="MASS_MECA" ), + TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), + MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + ), + b_ener_cin = BLOC(condition = "( ENER_CIN != None )", + fr="calcul de l'énergie cinétique", + regles=(UN_PARMI('CHAM_GD','RESULTAT'), + EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE', + 'NOEUD_CMP','LIST_ORDRE','LIST_INST','LIST_FREQ','NOM_CAS'),), + MODELE = SIMP(statut='f',typ=modele_sdaster), + CHAM_MATER = SIMP(statut='f',typ=cham_mater), + CARA_ELEM = SIMP(statut='f',typ=cara_elem), + CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ), + NUME_COUCHE = SIMP(statut='f',typ='I',defaut=1), + NIVE_COUCHE = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),), + ANGLE = SIMP(statut='f',typ='I',defaut=0), + MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), + CHAM_GD = SIMP(statut='f',typ=(cham_no_sdaster,cham_elem) ), + RESULTAT = SIMP(statut='f',typ=(mode_meca,evol_elas,evol_ther,evol_noli,dyna_trans) ), + PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), + CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), + TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), + INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_INST = SIMP(statut='f',typ=listr8_sdaster), + FREQ = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_FREQ = SIMP(statut='f',typ=listr8_sdaster), + NUME_MODE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + NOEUD_CMP = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), + NOM_CAS = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), + ), - DEFI_CHAR_MECA = FACT(statut='o', - PRETENS = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster),), - PRES_REP = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster),), - EFFE_FOND = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster),), - ), + ENER_ELAS = FACT(statut='f',max='**', + regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), + TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), + MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + ), + b_ener_elas = BLOC(condition = "( ENER_ELAS != None )", + fr="calcul de l'énergie de déformation élastique", + MODELE = SIMP(statut='f',typ=modele_sdaster), + CHAM_MATER = SIMP(statut='f',typ=cham_mater), + CARA_ELEM = SIMP(statut='f',typ=cara_elem), + CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ), + NUME_COUCHE = SIMP(statut='f',typ='I',defaut=1), + NIVE_COUCHE = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),), + MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), + RESULTAT = SIMP(statut='o',typ=(evol_noli) ), + regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), + PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), + CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), + TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), + INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_INST = SIMP(statut='f',typ=listr8_sdaster), + ), - CHAR_MECA = FACT(statut = 'f',max=11, - CHARGE = SIMP(statut='o',typ=CO), - TYPE = SIMP(statut='o',typ='TXM', - into=("BLOC_BAS_GOUJ","BLOC_BAS_JOINT", - "BLOC_LAT_ALES","BLOC_LAT_NALES", - "PLAN_TUBE", - "PRES_FLU","EFFET_FOND", - "CONT_JOINT", - "DEFO_THER", - "SERR_ECROU_1","SERR_ECROU_2",),) - ), - - RELATION = SIMP(statut='f',typ='TXM', - into=('VMIS_ISOT_TRAC','ELAS','ELAS_VMIS_TRAC',),), - - SOLVEUR = FACT(statut='d', - METHODE = SIMP(statut='d',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT",) ), - b_mult_front = BLOC(condition = "METHODE == 'MULT_FRONT' ", - fr="Paramètres de la méthode multi frontale", - RENUM = SIMP(statut='d',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), - NPREC = SIMP(statut='d',typ='I',defaut=8), - STOP_SINGULIER = SIMP(statut='d',typ='TXM',defaut="OUI",into=("OUI","NON") ), - ), - ), - INCREMENT = FACT(statut='f', - regles=(EXCLUS('NUME_INST_INIT','INST_INIT'), - EXCLUS('NUME_INST_FIN','INST_FIN'),), - LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - EVOLUTION =SIMP(statut='f',typ='TXM',defaut="CHRONOLOGIQUE", - into=("CHRONOLOGIQUE",) ), - NUME_INST_INIT =SIMP(statut='f',typ='I'), - INST_INIT =SIMP(statut='f',typ='R'), - NUME_INST_FIN =SIMP(statut='f',typ='I'), - INST_FIN =SIMP(statut='f',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), - # DEBUT DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS - SUBD_METHODE =SIMP( statut='f',typ='TXM', - into =("AUCUNE","UNIFORME","EXTRAPOLE"), - defaut="AUCUNE", - fr="Méthode de subdivision des pas de temps en cas de non-convergence" - ), - b_subd_unif=BLOC(condition = "SUBD_METHODE == 'UNIFORME'", - regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), - SUBD_COEF_PAS_1=SIMP(statut='f',typ='R',defaut=1.0,val_min=0.0, - fr="Coefficient multiplicateur de la 1ère subdivision"), - SUBD_PAS =SIMP(statut='f',typ='I',defaut=4,val_min=2, - fr="Nombre de subdivision d'un pas de temps"), - SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, - fr="Nombre maximum de niveau de subdivision d'un pas de temps"), - SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, - fr="Pas de temps en dessous duquel on ne subdivise plus"), - ), - b_subd_extr=BLOC(condition = "SUBD_METHODE == 'EXTRAPOLE'", - regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), - SUBD_OPTION =SIMP(statut='f',typ='TXM', - into =("IGNORE_PREMIERES","GARDE_DERNIERES",), - defaut="IGNORE_PREMIERES", - fr="Technique d'extrapolation : les 1ere itérations sont ignorées ou les dernières sont gardées"), - SUBD_ITER_IGNO =SIMP(statut='c',typ='I',defaut=3,val_min=0, - fr="Les n premières itérations sont ignorées pour l'extrapolation"), - SUBD_ITER_FIN =SIMP(statut='c',typ='I',defaut=8,val_min=3, - fr="Seules les n dernières itérations sont prises pour l'extrapolation"), - SUBD_PAS =SIMP(statut='c',typ='I',defaut=4,val_min=2, - fr="Nombre de subdivision d'un pas de temps en cas divergence"), - SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, - fr="Nombre maximum de niveau de subdivision d'un pas de temps"), - SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, - fr="Pas de temps en dessous duquel on ne subdivise plus"), - SUBD_ITER_PLUS =SIMP(statut='c',typ='I',defaut=50,val_min=20, - fr="% itération autorisée en plus"), - ), - # FIN DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS - OPTI_LIST_INST =SIMP(statut='f',typ='TXM',into=("INCR_MAXI",),), - NOM_CHAM =SIMP(statut='f',typ='TXM',), - NOM_CMP =SIMP(statut='f',typ='TXM',), - VALE =SIMP(statut='f',typ='R'), - ), - NEWTON =FACT(statut='d', - REAC_INCR =SIMP(statut='f',typ='I',defaut= 1 ), - PREDICTION =SIMP(statut='f',typ='TXM',into=("TANGENTE","ELASTIQUE","EXTRAPOL") ), - MATRICE =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE") ), - PAS_MINI_ELAS =SIMP(statut='f',typ='R',defaut=0.0E+0), - REAC_ITER =SIMP(statut='f',typ='I',defaut=0), - EVOL_NOLI =SIMP(statut='f',typ=evol_noli), - ), - RESO_INTE =SIMP(statut='f',typ='TXM',defaut="IMPLICITE", - into=("IMPLICITE",)), - CONVERGENCE =FACT(statut='d', - regles=(PRESENT_ABSENT('RESI_REFE_RELA','RESI_GLOB_MAXI','RESI_GLOB_RELA'),), - SIGM_REFE =SIMP(statut='f',typ='R'), - EPSI_REFE =SIMP(statut='f',typ='R'), - FLUX_THER_REFE =SIMP(statut='f',typ='R'), - RESI_REFE_RELA =SIMP(statut='f',typ='R'), - RESI_GLOB_MAXI =SIMP(statut='f',typ='R'), - RESI_GLOB_RELA =SIMP(statut='f',typ='R'), - ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut=10), - ITER_GLOB_ELAS =SIMP(statut='f',typ='I',defaut=25), - ), - ); + ENER_TOTALE = FACT(statut='f',max='**', + regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), + TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), + MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + ), + b_ener_totale = BLOC(condition = "( ENER_TOTALE != None )", + fr="calcul de l'énergie de déformation totale", + MODELE = SIMP(statut='f',typ=modele_sdaster), + CHAM_MATER = SIMP(statut='f',typ=cham_mater), + CARA_ELEM = SIMP(statut='f',typ=cara_elem), + CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ), + NUME_COUCHE = SIMP(statut='f',typ='I',defaut=1), + NIVE_COUCHE = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),), + MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), + RESULTAT = SIMP(statut='o',typ=(evol_noli) ), + regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), + PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), + CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), + TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), + INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_INST = SIMP(statut='f',typ=listr8_sdaster), + ), + + INTEGRALE = FACT(statut='f',max='**', + regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), + TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), + MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + NOM_CHAM = SIMP(statut='o',typ='TXM',into=C_NOM_CHAM_INTO()), + NOM_CMP = SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**'), + ), + b_integrale = BLOC(condition = "( INTEGRALE != None )", + fr="calcul de la moyenne d'une composante", + regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), + MODELE = SIMP(statut='f',typ=modele_sdaster), + RESULTAT = SIMP(statut='o',typ=(evol_noli,evol_ther,evol_elas) ), + PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), + CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), + TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), + INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_INST = SIMP(statut='f',typ=listr8_sdaster), + ), -#& MODIF COMMANDE DATE 10/10/2006 AUTEUR MCOURTOI M.COURTOIS -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== + WEIBULL = FACT(statut='f',max='**', + regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), + TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), + MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + OPTION = SIMP(statut='f',typ='TXM', + into=("SIGM_ELGA","SIGM_ELMOY"), + defaut="SIGM_ELGA"), + CORR_PLAST = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), + COEF_MULT = SIMP(statut='f',typ='R',defaut=1.), + ), + b_weibull = BLOC(condition = "( WEIBULL != None )", + fr="calcul du champ élémentaire de la puissance m-ième de la contrainte de Weibull", + regles=(UN_PARMI('CHAM_GD','RESULTAT'), + EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), + MODELE = SIMP(statut='f',typ=modele_sdaster), + CHAM_MATER = SIMP(statut='f',typ=cham_mater), + CARA_ELEM = SIMP(statut='f',typ=cara_elem), + CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ), + NUME_COUCHE = SIMP(statut='f',typ='I',defaut=1), + NIVE_COUCHE = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),), + MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), + CHAM_GD = SIMP(statut='f',typ=(cham_no_sdaster,cham_elem) ), + RESULTAT = SIMP(statut='f',typ=(evol_noli) ), + PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), + CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), + TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), + INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_INST = SIMP(statut='f',typ=listr8_sdaster), + ), -def crea_table_prod(TYPE_TABLE, **args): - """Typage du concept résultat - """ - if TYPE_TABLE == 'TABLE_FONCTION': - return table_fonction - else: - return table_sdaster + RICE_TRACEY = FACT(statut='f',max='**', + regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), + TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), + MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + OPTION = SIMP(statut='f',typ='TXM', + into=("SIGM_ELGA","SIGM_ELMOY"), + defaut="SIGM_ELGA"), + LOCAL = SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), + ), + b_rice_tracey = BLOC(condition = "( RICE_TRACEY != None )", + fr="calcul du taux de croissance d'une cavité sphérique par rapport à un domaine", + regles=(UN_PARMI('CHAM_GD','RESULTAT'), + EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), + MODELE = SIMP(statut='f',typ=modele_sdaster), + CHAM_MATER = SIMP(statut='f',typ=cham_mater), + CARA_ELEM = SIMP(statut='f',typ=cara_elem), + CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ), + NUME_COUCHE = SIMP(statut='f',typ='I',defaut=1), + NIVE_COUCHE = SIMP(statut='f',typ='TXM',defaut="MOY",into=("INF","SUP","MOY"),), + MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), + CHAM_GD = SIMP(statut='f',typ=(cham_no_sdaster,cham_elem) ), + RESULTAT = SIMP(statut='f',typ=(evol_noli) ), + PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), + CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), + TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), + INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_INST = SIMP(statut='f',typ=listr8_sdaster), + ), -CREA_TABLE=OPER(nom="CREA_TABLE",op=36,sd_prod=crea_table_prod, - fr="Création d'une table à partir d'une fonction ou de deux listes", - reentrant='f',UIinfo={"groupes":("Table",)}, + INDIC_ENER = FACT(statut='f',max='**', + regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), + TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), + MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + ), + b_indic_ener = BLOC(condition = "( INDIC_ENER != None )", + fr="calcul un indicateur global de perte de proportionnalité du chargement", + MODELE = SIMP(statut='f',typ=modele_sdaster), + CHAM_MATER = SIMP(statut='f',typ=cham_mater), + CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ), + MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), + RESULTAT = SIMP(statut='o',typ=(evol_noli) ), + regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), + PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), + CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), + TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), + INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_INST = SIMP(statut='f',typ=listr8_sdaster), + ), - regles=(EXCLUS('FONCTION','LISTE'),), + INDIC_SEUIL = FACT(statut='f',max='**', + regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), + TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), + MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + ), + b_indic_seuil = BLOC(condition = "( INDIC_SEUIL != None )", + fr="calcul un indicateur global de perte de proportionnalité du chargement", + MODELE = SIMP(statut='f',typ=modele_sdaster), + CHAM_MATER = SIMP(statut='f',typ=cham_mater), + CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ), + MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), + RESULTAT = SIMP(statut='o',typ=(evol_noli) ), + regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), + PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), + CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), + TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), + INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_INST = SIMP(statut='f',typ=listr8_sdaster), + ), - LISTE=FACT(statut='f',max='**', - fr="Creation d'une table a partir de listes", - regles=(UN_PARMI('LISTE_I','LISTE_R','LISTE_K')), - PARA =SIMP(statut='o',typ='TXM'), - TYPE_K =SIMP(statut='f',typ='TXM',defaut='K8', - into=('K8','K16','K24')), - NUME_LIGN=SIMP(statut='f',typ='I',max='**'), - LISTE_I =SIMP(statut='f',typ='I',max='**'), - LISTE_R =SIMP(statut='f',typ='R',max='**'), - LISTE_K =SIMP(statut='f',typ='TXM', max='**'), - ), - FONCTION=FACT(statut='f', - fr="Creation d'une table a partir d'une fonction", - FONCTION=SIMP(statut='o',typ=(fonction_c,fonction_sdaster)), - PARA=SIMP(statut='f',typ='TXM',min=2,max=2), - ), - b_fonction = BLOC(condition='FONCTION != None', - regles=(CONCEPT_SENSIBLE('SEPARE'), REUSE_SENSIBLE(), - DERIVABLE('FONCTION'),), - SENSIBILITE = SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', - fr="Liste des paramètres de sensibilité.", - ang="List of sensitivity parameters"), - ), - TYPE_TABLE = SIMP(statut='f', typ='TXM', defaut="TABLE", - into=('TABLE', 'TABLE_FONCTION'),), - - TITRE=SIMP(statut='f',typ='TXM',max='**'), -) ; + CHAR_LIMITE = FACT(statut='f',min=0, + CHAR_CSTE = SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON") + ), + b_char_limite = BLOC(condition = "( CHAR_LIMITE != None )", + fr="post-traitement du calcul de la charge limite", + MODELE = SIMP(statut='f',typ=modele_sdaster), + CHAM_MATER = SIMP(statut='f',typ=cham_mater), + CARA_ELEM = SIMP(statut='f',typ=cara_elem), + CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ), + MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), + RESULTAT = SIMP(statut='o',typ=(evol_noli) ), + regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), + PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), + CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), + TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), + INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_INST = SIMP(statut='f',typ=listr8_sdaster), + ), + + CARA_GEOM = FACT(statut='f',max='**', + regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), + TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), + MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + SYME_X = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + SYME_Y = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + ORIG_INER = SIMP(statut='f',typ='R',min=2,max=2), + ), + b_cara_geom = BLOC(condition = "( CARA_GEOM != None )", + fr="calcul des caractéristiques géométriques d'un section de poutre", + MODELE = SIMP(statut='f',typ=modele_sdaster), + CHAM_MATER = SIMP(statut='f',typ=cham_mater), + CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ), + MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), + ), + CARA_POUTRE = FACT(statut='f',max='**', + regles=(AU_MOINS_UN('TOUT','GROUP_MA'), + ENSEMBLE('LONGUEUR','LIAISON','MATERIAU'),), + TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + GROUP_MA_INTE = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + CARA_GEOM = SIMP(statut='o',typ=table_sdaster), + RT = SIMP(statut='f',typ='R'), + LAPL_PHI = SIMP(statut='f',typ=evol_ther), + LAPL_PHI_Y = SIMP(statut='f',typ=evol_ther), + LAPL_PHI_Z = SIMP(statut='f',typ=evol_ther), + LIAISON = SIMP(statut='f',typ='TXM',into=("ROTULE","ENCASTREMENT")), + LONGUEUR = SIMP(statut='f',typ='R'), + MATERIAU = SIMP(statut='f',typ=mater_sdaster), + OPTION = SIMP(statut='f',typ='TXM', + into=("CARA_TORSION","CARA_CISAILLEMENT","CARA_GAUCHI") ), + ), + b_cara_poutre = BLOC(condition = "( CARA_POUTRE != None )", + fr="calcul des caractéristiques mécaniques d'un section de poutre", + MODELE = SIMP(statut='f',typ=modele_sdaster), + CHAM_MATER = SIMP(statut='f',typ=cham_mater), + CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**' ), + MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), + ), + AIRE_INTERNE = FACT(statut='f',max='**', + GROUP_MA_BORD = SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), + ), + b_aire_interne = BLOC(condition = "( AIRE_INTERNE != None )", + fr="calcul de l'aire d'un trou dans un maillage 2D", + MODELE = SIMP(statut='f',typ=modele_sdaster), + ), -#& MODIF COMMANDE DATE 27/11/2006 AUTEUR GNICOLAS G.NICOLAS -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE GNICOLAS G.NICOLAS + TRAV_EXT = FACT(statut='f',), + b_trav_ext = BLOC(condition = "( TRAV_EXT != None )", + fr="calcul du travail des efforts extérieurs", + RESULTAT = SIMP(statut='o',typ=(evol_elas,evol_noli,dyna_trans) ), + PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), + CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), + TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), + ), -from Macro.macr_fiabilite_ops import macr_fiabilite_ops + TITRE =SIMP(statut='f',typ='TXM',max='**' ), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), + ) ; +#& MODIF COMMANDE DATE 03/01/2006 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # -#==== -# 1. Le retour : une liste de rééls. -#==== -# -def macr_fiabilite_prod ( self , **args ): - return listr8_sdaster -# -#==== -# 2. L'entete -#==== -# -MACR_FIABILITE = MACRO ( nom="MACR_FIABILITE",op=macr_fiabilite_ops, - docu="U7.03.31",UIinfo={"groupe":("Post traitements",)}, - sd_prod=macr_fiabilite_prod, - fr="Calcule les probabiltés de dépassement de seuil (mécanique de fiabilité).", - ang="Fiability mechanics.", -# -#==== -# 3. Le niveau d'information -#==== -# - INFO = SIMP(statut="f",typ="I",defaut=1,into=(1,2)), -# -#==== -# 4. Nom et Version du logiciel de fiabilité -#==== -# - LOGICIEL = SIMP(statut="f",typ="TXM",defaut="MEFISTO", - into=("MEFISTO",), - fr="Nom du logiciel de fiabilité.", - ang="Fiability software name."), -# - VERSION = SIMP(statut="f",typ="TXM",defaut="V3_2", - into=("V3_2", "V3_N"), - fr="Version du logiciel de fiabilité.", - ang="Fiability software release."), -# -#==== -# 5. Les entrees-sorties du calcul ASTER déterministe -#==== -# -# 5.1. ==> Le jeu de commandes déterministe -# - UNITE_ESCL = SIMP(statut="o",typ="I", - fr="Unité logique associée aux commandes du calcul ASTER déterministe.", - ang="Logical unit for the commands of the ASTER deterministic calculation."), -# -# 5.2. ==> Le destin des messages produits par ASTER -# - MESS_ASTER = SIMP(statut="f",typ="TXM",defaut="DERNIER", - into=("AUCUN", "DERNIER", "TOUS"), - fr="Quels messages ASTER récupérer.", - ang="Which ASTER messages must be kept."), -# -#==== -# 6. Options -#==== -# 6.1. ==> Générales -# -# 6.1.1. ==> La valeur du seuil -# - SEUIL = SIMP(statut="o",typ="R",max=1, - fr="Le seuil de défaillance.", - ang="Failure threshold."), -# -# 6.1.2. ==> Le type du seuil : on a deux cas de figure selon que -# la défaillance a lieu au dessus d'un seuil maximum ou -# en dessous d'un seuil minimum -# - SEUIL_TYPE = SIMP(statut="o",typ="TXM",max=1, - into=("MINIMUM","MAXIMUM"), - fr="Que faut-il ne pas dépasser : un maximum ou un minimum.", - ang="What is the failure threshold : maximum or minimum."), -# -# 6.2. ==> Pour MEFISTO -# -### en attente de résolution de AL 2004-006 (1/2) b_mefisto=BLOC( condition = "LOGICIEL=='MEFISTO'", -# -# 6.2.1. ==> Pilotage de la recherche du point de conception -# - RECH_PT_CONCEPT = SIMP(statut="f",typ="TXM",defaut="OUI", - into=("OUI","NON"), - fr="Pour trouver le point de conception.", - ang="To find the design point."), -# - b_rech_pt_concept=BLOC( condition = "RECH_PT_CONCEPT=='OUI'", -# - EPSILON_U = SIMP(statut="f",typ="R",defaut=1.0E-2, - fr="Précision du test d'arret sur les points itératifs dans l'espace standard.", - ang="Precision of stop test for iterative points in standard space."), -# - EPSILON_G = SIMP(statut="f",typ="R",defaut=1.0E-2, - fr="Précision du test d'arret sur la proximité de la surface d'état limite.", - ang="Precision of stop test for limit state surface."), -# - TAU = SIMP(statut="f",typ="R",defaut=5.0E-1, - fr="Paramètre de la méthode de minimisation.", - ang="Parameter for the minimization method."), -# - OMEGA = SIMP(statut="f",typ="R",defaut=1.0E-4, - fr="Paramètre de la méthode de minimisation.", - ang="Parameter for the minimization method."), -# - ITER_MAX = SIMP(statut="f",typ="I",defaut=50, - fr="Nombre maximum d'itérations.", - ang="Maximum number of iterations."), - ), -# -# 6.2.2. ==> Méthode(s) employée(s) pour la probabilité de défaillance -# - METHODE_FORM = SIMP(statut="f",typ="TXM",defaut="OUI", - into=("OUI","NON"), - fr="Recherche de la probabilité de défaillance avec la méthode FORM.", - ang="Research of failure probability with FORM method."), -# - METHODE_SORM = SIMP(statut="f",typ="TXM",defaut="NON", - into=("OUI","NON"), - fr="Recherche de la probabilité de défaillance avec la méthode SORM.", - ang="Research of failure probability with SORM method."), -# - TIRAGE_IMPORTANCE = SIMP(statut="f",typ="TXM",defaut="NON", - into=("OUI","NON"), - fr="Recherche de la probabilité de défaillance avec le tirage d'importance.", - ang="Research of failure probability with ."), -# - b_tirage_importance=BLOC( condition = "TIRAGE_IMPORTANCE=='OUI'", -# - NB_SIMULATION = SIMP(statut="f",typ="I",defaut=3, - fr="Nombre de simulations pour le tirage d'importance.", - ang="Number of simulation for."), -# - ), -# -# 6.2.3. ==> Création d'une surface de réponse polynomiale -# - POLYNOME_TAYLOR = SIMP(statut="f",typ="TXM",defaut="NON",into=("OUI","NON"),), - HGRAD = SIMP(statut="f",typ="R",defaut=1.0E-2, - fr="Pas incrémental pour le calcul des gradients.", - ang="Step for calculation of gradients."), - HHESS = SIMP(statut="f",typ="R",defaut=1.0E-2, - fr="Pas incrémental pour le calcul des dérivées secondes.", - ang="Step for calculation of second derivatives."), -# -# 6.2.4. ==> Recherche d'un plan d'expérience -# - PLAN_EXPERIENCE = SIMP(statut="f",typ="TXM",defaut="NON",into=("OUI","NON"), - fr="Construction d'un plan d'expérience.", - ang="Construction of an experiment plan."), -# - b_plan_experience=BLOC( condition = "PLAN_EXPERIENCE=='OUI'", -# - ALPHA = SIMP(statut="f",typ="R",defaut=2.0E-1, - fr="Plan d'expérience : maille du plan de type composite centré.", - ang="Experiment plane : mesh centered composite."), -# - BETA = SIMP(statut="f",typ="R",defaut=4.0E-1, - fr="Plan d'expérience : maille du plan de type factoriel.", - ang="Experiment plane : mesh factor."), -# - ), -# -# 6.2.5. ==> Les tests -# 6.2.5.1. ==> Test de la sphere -# - T_SPHERE = SIMP(statut="f",typ="TXM",defaut="NON",into=("OUI","NON"), - fr="Test de la sphère.", - ang="Sphere test."), -# - b_test_de_la_sphere=BLOC( condition = "T_SPHERE=='OUI'", -# - METHODE_TEST = SIMP(statut="f",typ="TXM",defaut="GAUSSIENNE", - into=("GAUSSIENNE","PARAMETRIQUE","REJECTION"), - fr="Type de méthode.", - ang="Method."), -# - NB_POINT = SIMP(statut="f",typ="I",max=1,defaut=60, - fr="Nombre de points de la sphere.", - ang="Number of points over the sphere.") - ), -# -# 6.2.5.2. ==> Test du maximum fort -# - T_MAXIMUM_FORT = SIMP(statut="f",typ="TXM",defaut="NON",into=("OUI","NON"), - fr="Test du maximum fort.", - ang="Strong maximum test."), -# - b_test_du_maximum_fort=BLOC( condition = "T_MAXIMUM_FORT=='OUI'", -# - COS_LIM = SIMP(statut="f",typ="R",max=1,defaut=1.0, - fr="Cosinus de l'angle d'exclusion.", - ang="Cosine of angle of exclusion."), -# - DPROB = SIMP(statut="f",typ="R",max=1,defaut=4.3E-1, - fr="Fraction d'iso-densité de probabilité de défaillance.", - ang="Fraction.") -# - ), -# -# 6.2.5.3. ==> Test du hessien -# - T_HESSIEN = SIMP(statut="f",typ="TXM",defaut="NON",into=("OUI","NON"), - fr="Test du hessien.", - ang="Hessian test."), -# -# 6.2.6. ==> Les correlations entre les variables -# - MATRICE = SIMP(statut="f",typ="R",max="**", - fr="Matrice de corrélation entre les variables.", - ang="Correlation matrix."), -# -### en attente de résolution de AL 2004-006 (2/2) ), -# -#==== -# 7. Definition des paramètres -#==== +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # - VARIABLE = FACT(statut="o",min=1,max="**", +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +POST_FATI_ALEA=OPER(nom="POST_FATI_ALEA",op=170,sd_prod=table_sdaster,reentrant='n', + UIinfo={"groupes":("Post traitements",)}, + fr="Calculer le dommage de fatigue subi par une structure soumise à une sollicitation de type aléatoire", + regles=(ENSEMBLE('MOMENT_SPEC_0','MOMENT_SPEC_2'), + PRESENT_PRESENT( 'MOMENT_SPEC_4','MOMENT_SPEC_0'), + UN_PARMI('TABL_POST_ALEA','MOMENT_SPEC_0'), ), + MOMENT_SPEC_0 =SIMP(statut='f',typ='R'), + MOMENT_SPEC_2 =SIMP(statut='f',typ='R'), + MOMENT_SPEC_4 =SIMP(statut='f',typ='R'), + TABL_POST_ALEA =SIMP(statut='f',typ=table_sdaster), + COMPTAGE =SIMP(statut='o',typ='TXM',into=("PIC","NIVEAU")), + DUREE =SIMP(statut='f',typ='R',defaut= 1.), + CORR_KE =SIMP(statut='f',typ='TXM',into=("RCCM",)), + DOMMAGE =SIMP(statut='o',typ='TXM',into=("WOHLER",)), + MATER =SIMP(statut='o',typ=mater_sdaster), + TITRE =SIMP(statut='f',typ='TXM',max='**'), +) ; +#& MODIF COMMANDE DATE 03/01/2006 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # -# 7.1. ==> Nom de la variable +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # - NOM = SIMP(statut="o",typ="TXM", - fr="Nom de la variable, identique au nom de concept PARA_SENSI.", - ang="Name of the variable, identical to the name of the PARA_SENSI conceipt."), +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +POST_FATIGUE=OPER(nom="POST_FATIGUE",op=136,sd_prod=table_sdaster,reentrant='n', + UIinfo={"groupes":("Post traitements",)}, + fr="Calculer en un point, le dommage de fatigue subi par une structure soumise à une histoire de chargement", + + CHARGEMENT = SIMP(statut='o',typ='TXM',into=("UNIAXIAL","PERIODIQUE","QUELCONQUE")), + + b_uniaxial = BLOC( condition = "CHARGEMENT=='UNIAXIAL'", + regles=(PRESENT_PRESENT('CORR_KE','MATER'), + PRESENT_PRESENT('CORR_SIGM_MOYE','MATER'), + PRESENT_PRESENT('DOMMAGE','MATER'),), + HISTOIRE = FACT(statut='o', + regles=(UN_PARMI('SIGM','EPSI'),), + SIGM = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + EPSI = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)),), + COMPTAGE = SIMP(statut='o',typ='TXM',into=("RAINFLOW","RCCM","NATUREL")), + DELTA_OSCI = SIMP(statut='f',typ='R',defaut= 0.0E+0), + COEF_MULT = FACT(statut='f', + KT = SIMP(statut='o',typ='R'),), + CORR_KE = SIMP(statut='f',typ='TXM',into=("RCCM",)), + DOMMAGE = SIMP(statut='f',typ='TXM',into=("WOHLER","MANSON_COFFIN", + "TAHERI_MANSON","TAHERI_MIXTE")), + MATER = SIMP(statut='f',typ=mater_sdaster), + CORR_SIGM_MOYE = SIMP(statut='f',typ='TXM',into=("GOODMAN","GERBER")), + TAHERI_NAPPE = SIMP(statut='f',typ=(nappe_sdaster,formule)), + TAHERI_FONC = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + CUMUL = SIMP(statut='f',typ='TXM',into=("LINEAIRE",)), + ), + + b_periodique = BLOC( condition = "CHARGEMENT=='PERIODIQUE'", + HISTOIRE = FACT(statut='o', + SIGM_XX = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + SIGM_YY = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + SIGM_ZZ = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + SIGM_XY = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + SIGM_XZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + SIGM_YZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)),), + CRITERE = SIMP(statut='o',typ='TXM',into=("CROSSLAND","PAPADOPOULOS")), + DOMMAGE = SIMP(statut='f',typ='TXM',into=("WOHLER",)), + MATER = SIMP(statut='o',typ=mater_sdaster), + COEF_CORR = SIMP(statut='f',typ='R'), + ), + + b_quelconque = BLOC( condition = "CHARGEMENT=='QUELCONQUE'", + HISTOIRE = FACT(statut='o', + SIGM_XX = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + SIGM_YY = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + SIGM_ZZ = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + SIGM_XY = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + SIGM_XZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + SIGM_YZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + EPSP = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + TEMP = SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)),), + DOMMAGE = SIMP(statut='f',typ='TXM',into=("LEMAITRE",),), + MATER = SIMP(statut='o',typ=mater_sdaster), + CUMUL = SIMP(statut='f',typ='TXM',into=("LINEAIRE",)), + ), + + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), + TITRE =SIMP(statut='f',typ='TXM',max='**'), +) ; +#& MODIF COMMANDE DATE 31/10/2006 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2006 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== + +from Macro.post_gp_ops import post_gp_ops +def post_gp_prod(self, TABL_RESU, **kargs): + """Typage des sd_prod + """ + if TABL_RESU != None: + self.type_sdprod(TABL_RESU, table_sdaster) + return table_sdaster + +POST_GP=MACRO(nom="POST_GP", op=post_gp_ops, sd_prod=post_gp_prod, + fr="Calcul du critère énergétique Gp suite à un calcul thermo-mécanique", + reentrant='n', + UIinfo={"groupes":("Post traitements",)}, + regles=(AU_MOINS_UN('IDENTIFICATION', 'PREDICTION'),), + + # Résultat, modèle, comportement, chargement + RESULTAT = SIMP(statut='o',typ=(evol_elas,evol_noli,dyna_trans,mode_meca),), + RESU_THER = SIMP(statut='f',typ=evol_ther,), + MODELE = SIMP(statut='o',typ=modele_sdaster), + MATER = SIMP(statut='o',typ=mater_sdaster), + + COMP_ELAS = FACT(statut='o', + RELATION = SIMP(statut='f',typ='TXM',defaut="ELAS", + into=("ELAS","ELAS_VMIS_LINE","ELAS_VMIS_TRAC"),), + DEFORMATION = SIMP(statut='f',typ='TXM',defaut="PETIT",into=("PETIT","GREEN"),), + ), + + EXCIT = FACT(statut='f', max='**', + CHARGE = SIMP(statut='o', typ=(char_meca,char_cine_meca)), + FONC_MULT = SIMP(statut='f', typ=(fonction_sdaster,nappe_sdaster,formule)), + TYPE_CHARGE = SIMP(statut='f', typ='TXM', defaut="FIXE", into=("FIXE",)), + ), + SYME_CHAR = SIMP(statut='f',typ='TXM',defaut="SANS",into=("SYME","ANTI","SANS")), + + DIRECTION = SIMP(statut='o', typ='R', max=3), + THETA_2D = FACT(statut='o', max='**', + fr="paramètres de définition des champs theta", + GROUP_NO = SIMP(statut='o', typ=grno, validators=NoRepeat(), max='**'), + R_INF = SIMP(statut='o', typ='R'), + R_SUP = SIMP(statut='o', typ='R'), + ), + + # copeaux + GROUP_MA = SIMP(statut='o', typ=grma, validators=NoRepeat(), max='**'), + PAS_ENTAILLE = SIMP(statut='o', typ='R', val_min=0.), + + # critère sur Gp + CRIT_MAXI_GP = SIMP(statut='f', typ='TXM', defaut="ABSOLU", + into=("RELATIF","ABSOLU")), + + # correction axisymétrie + RAYON_AXIS = SIMP(statut='f', typ='R', val_min=0., defaut=1.), + + # identification + IDENTIFICATION = FACT(statut='f', max=1, + KJ_CRIT = SIMP(statut='o', typ='R', val_min=0., max='**'), + TEMP = SIMP(statut='o', typ='R', val_min=0., max='**'), + ), + + # prédiction + PREDICTION = FACT(statut='f', max=1, + GP_CRIT = SIMP(statut='o', typ='R', val_min=0., max='**'), + TEMP = SIMP(statut='o', typ='R', val_min=0., max='**'), + ), + + # table résultat + TABL_RESU = SIMP(statut='o', typ=CO,), + + INFO = SIMP(statut='f', typ='I', defaut=1, into=(1, 2),), +) +#& MODIF COMMANDE DATE 05/03/2007 AUTEUR GALENNE E.GALENNE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # -# 7.2. ==> Loi de distribution +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # - LOI = SIMP(statut="o",typ="TXM", - into=("UNIFORME","NORMALE","LOGNORMALE","NORMALE_TRONQUEE"), - fr="Choix de la loi", - ang="Law."), +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE GALENNE E.GALENNE +from Macro.post_k1_k2_k3_ops import post_k1_k2_k3_ops +POST_K1_K2_K3=MACRO(nom="POST_K1_K2_K3",op=post_k1_k2_k3_ops,sd_prod=table_sdaster, + fr="Calcul des facteurs d'intensité de contraintes en 2D et en 3D par extrapolation des sauts de déplacements" + +" sur les lèvres de la fissure", + reentrant='n', + UIinfo={"groupes":("Post traitements",)}, + + regles=(UN_PARMI('RESULTAT','TABL_DEPL_SUP'), + EXCLUS('FISSURE','FOND_FISS'), + PRESENT_PRESENT('FISSURE','RESULTAT'), + #PRESENT_PRESENT('RESULTAT','FOND_FISS'), + ), + + MODELISATION =SIMP(statut='o',typ='TXM', + into=("3D","AXIS","D_PLAN","C_PLAN"), + fr="Modélisation cohérente avec celle utilisée pour le calcul des déplacements"), + FOND_FISS =SIMP(statut='f',typ=fond_fiss), + FISSURE =SIMP(statut='f',typ=fiss_xfem), + b_fond_fiss =BLOC (condition="(FOND_FISS!= None)", + MAILLAGE = SIMP(statut='o',typ=maillage_sdaster), + TYPE_MAILLAGE = SIMP(statut='f',typ='TXM',into=("LIBRE","REGLE"),defaut="REGLE"), + NB_NOEUD_COUPE= SIMP(statut='f',typ='I'), + NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + SANS_NOEUD = SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + SANS_GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ) + ), + b_fissure =BLOC (condition="(FISSURE!= None)", + MAILLAGE = SIMP(statut='o',typ=maillage_sdaster), + NB_NOEUD_COUPE = SIMP(statut='f',typ='I' ,defaut=5 ), + DTAN_ORIG = SIMP(statut='f',typ='R',max='**'), + DTAN_EXTR = SIMP(statut='f',typ='R',max='**'), + ), + MATER =SIMP(statut='o',typ=mater_sdaster, + fr="Matériau homogène et isotrope cohérent avec celui utilisé pour le calcul des déplacements"), + RESULTAT =SIMP(statut='f',typ=(evol_elas,evol_noli), + fr="Déplacement des noeuds de la lèvre supérieure et inférieure"), + TABL_DEPL_SUP =SIMP(statut='f',typ=table_sdaster, + fr="Table issue de post_releve_t sur les noeuds de la lèvre supérieure"), + TABL_DEPL_INF =SIMP(statut='f',typ=table_sdaster, + fr="Table issue de post_releve_t sur les noeuds de la lèvre inférieure"), + ABSC_CURV_MAXI=SIMP(statut='f',typ='R', + fr="Distance maximum à partir du fond de fissure à utiliser pour le calcul"), + PREC_VIS_A_VIS= SIMP(statut='f',typ='R',defaut=0.1), + TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_INST =SIMP(statut='f',typ=listr8_sdaster), + b_acce_reel =BLOC(condition="(INST != None)or(LIST_INST != None)", + PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-6), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + ), + SYME_CHAR =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SYME","SANS") ), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), + VECT_K1 =SIMP(statut='o',typ='R',max=3, + fr="Vecteur normal au plan de fissure, orienté de la lèvre inférieure vers la lèvre supérieure"), + TITRE =SIMP(statut='f',typ='TXM',max='**'), +) ; +#& MODIF COMMANDE DATE 03/01/2006 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # -# 7.2.1. ==> Loi normale +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # - b_normale=BLOC(condition="LOI=='NORMALE'", +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# +# +# ====================================================================== # - VALE_MOY = SIMP(statut="o",typ="R",max=1, - fr="Valeur moyenne.", - ang="Mean value."), +POST_K_BETA=OPER(nom="POST_K_BETA",op=198,sd_prod=table_sdaster, + fr="Calcul des facteurs d'intensité de contraintes par la méthode K_BETA", + reentrant='n', + UIinfo={"groupes":("Post traitements",)}, + MAILLAGE = SIMP(statut='o',typ=maillage_sdaster), + MATER_REV = SIMP(statut='o',typ=mater_sdaster), + EPAIS_REV = SIMP(statut='o',typ='R'), + FISSURE = FACT(statut='o', + DECALAGE = SIMP(statut='f',typ='R',defaut=-2.e-04), + PROFONDEUR = SIMP(statut='o',typ='R'), + LONGUEUR = SIMP(statut='o',typ='R'), + ORIENTATION = SIMP(statut='o',typ='TXM', + into=("CIRC","LONGI"),), + ), + K1D = FACT(statut='o',max='**', + TABL_MECA_REV = SIMP(statut='o',typ=(table_sdaster)), + TABL_MECA_MDB = SIMP(statut='o',typ=(table_sdaster)), + TABL_THER = SIMP(statut='o',typ=(table_sdaster)), + INTITULE = SIMP(statut='o',typ='TXM' ), + ), + TITRE = SIMP(statut='f',typ='TXM',max='**'), +); +#& MODIF COMMANDE DATE 31/10/2006 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2006 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== + +from Macro.post_k_trans_ops import post_k_trans_ops + +POST_K_TRANS=MACRO(nom="POST_K_TRANS",op=post_k_trans_ops,sd_prod=table_sdaster, + fr="Calcul des facteurs d intensite des contrainte par recombinaison modale",reentrant='n', + UIinfo={"groupes":("Post traitements",)}, + RESU_TRANS =SIMP(statut='o',typ=tran_gene), + K_MODAL =FACT(statut='o', + TABL_K_MODA =SIMP(statut='f',typ=table_sdaster,), + RESU_MODA =SIMP(statut='f',typ=mode_meca,), + FOND_FISS =SIMP(statut='f',typ=fond_fiss,), + FISSURE =SIMP(statut='f',typ=fiss_xfem,), + THETA =SIMP(statut='f',typ=(theta_geom,cham_no_sdaster)), + R_INF =SIMP(statut='f',typ='R'), + R_SUP =SIMP(statut='f',typ='R'), + MODULE =SIMP(statut='f',typ='R'), + DIRE_THETA =SIMP(statut='f',typ=cham_no_sdaster ), + DIRECTION =SIMP(statut='f',typ='R',max='**'), + R_INF_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + R_SUP_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + MODULE_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + DEGRE =SIMP(statut='f',typ='I',into=(0,1,2,3,4,5,6,7) ), + LISSAGE_THETA =SIMP(statut='f',typ='TXM',into=("LEGENDRE","LAGRANGE","LAGRANGE_REGU"),), + LISSAGE_G =SIMP(statut='f',typ='TXM',into=("LEGENDRE","LAGRANGE","LAGRANGE_NO_NO","LAGRANGE_REGU"),), + + + regles=(UN_PARMI('TABL_K_MODA','RESU_MODA'), + UN_PARMI('FISSURE','FOND_FISS'), + EXCLUS('MODULE','MODULE_FO'), + PRESENT_PRESENT('R_INF','R_SUP'), + PRESENT_PRESENT('R_INF_FO','R_SUP_FO'), ), + ), + regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST','LIST_ORDRE'),), + TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_INST =SIMP(statut='f',typ=listr8_sdaster), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ), + + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), + TITRE =SIMP(statut='f',typ='TXM'), +) + +#& MODIF COMMANDE DATE 15/05/2007 AUTEUR GENIAUT S.GENIAUT +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2005 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +POST_MAIL_XFEM=OPER(nom="POST_MAIL_XFEM",op= 187,sd_prod=maillage_sdaster, + reentrant='n',UIinfo={"groupes":("Maillage",)}, + fr="Crée un maillage se conformant à la fissure pour le post-traitement des éléments XFEM", + MODELE = SIMP(statut='o',typ=modele_sdaster), + MAILLAGE_SAIN = SIMP(statut='o',typ=maillage_sdaster), + TITRE = SIMP(statut='f',typ='TXM',max='**'), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2,) ), + +); +#& MODIF COMMANDE DATE 03/04/2007 AUTEUR VIVAN L.VIVAN +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # - ECART_TYPE = SIMP(statut="o",typ="R",max=1, - fr="Ecart type.", - ang="Standard deviation."), +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTIC # - ), +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE JMBHH01 J.M.PROIX +POST_RCCM=OPER(nom="POST_RCCM",op= 165,sd_prod=table_sdaster, + fr="Vérification des critères de niveau 0 et certains critères de niveau A du RCC-M-B3200 (Edition 1991)", + reentrant='n', + UIinfo={"groupes":("Post traitements",)}, + TYPE_RESU =SIMP(statut='f',typ='TXM',defaut="VALE_MAX",into=("VALE_MAX","DETAILS") ), + INFO =SIMP(statut='f',typ='I',into=(1,2) ), + TITRE =SIMP(statut='f',typ='TXM',max='**'), + TYPE_RESU_MECA =SIMP(statut='o',typ='TXM',into=("EVOLUTION","UNITAIRE","TUYAUTERIE") ), + +# ====================================================================== + b_evolution =BLOC(condition="(TYPE_RESU_MECA == 'EVOLUTION')", + + OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', + into=("PM_PB","SN","FATIGUE_ZH210","AMORCAGE") ), + MATER =SIMP(statut='o',typ=mater_sdaster ), + SY_MAX =SIMP(statut='f',typ='R', + fr="limite élastique utilisée pour le calcul du rochet thermique" ), + + TRANSITOIRE =FACT(statut='o',max='**',fr="transitoire à dépouiller", + regles=(EXCLUS('TOUT_ORDRE','INST','LIST_INST'), + UN_PARMI('TABL_RESU_MECA','TABL_SIGM_THETA'),), + NB_OCCUR =SIMP(statut='f',typ='I',defaut= 1, + fr="nombre d occurences réelles de ce transitoire" ), + TABL_RESU_MECA =SIMP(statut='f',typ=table_sdaster, + fr="relevé des contraintes sur le chemin"), + TABL_SIGM_THER =SIMP(statut='f',typ=table_sdaster, + fr="résultat sous chargement thermique seul" ), + TABL_RESU_PRES =SIMP(statut='f',typ=table_sdaster, + fr="table relevé des contraintes sous chargement de pression" ), + TABL_SIGM_THETA =SIMP(statut='f',typ=table_sdaster, + fr="table relevé des contraintes a la distance d de la singularité pour chacun des angles THETA" ), + TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), + b_inst =BLOC(condition = "(INST != None) or (LIST_INST != None)" , + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6 ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("ABSOLU","RELATIF") ), + ), + ), + ), + +# ====================================================================== + b_unitaire =BLOC(condition="(TYPE_RESU_MECA == 'UNITAIRE')", + + OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', + into=("PM_PB","SN","FATIGUE") ), + MATER =SIMP(statut='o',typ=mater_sdaster ), + SY_MAX =SIMP(statut='f',typ='R', + fr="limite élastique utilisée pourle calcul du rochet thermique" ), + TYPE_KE =SIMP(statut='f',typ='TXM',defaut="KE_MECA",into=("KE_MECA","KE_MIXTE"), + fr="Ke meca seul ou partition mecanique + thermique" ), + CHAR_MECA =FACT(statut='o',max='**',fr="Chargements mécaniques", + regles=(UN_PARMI('MX','MX_TUBU'),), + NUME_CHAR =SIMP(statut='o',typ='I',fr="numéro du chargement" ), + NOM_CHAR =SIMP(statut='f',typ='TXM',fr="nom du chargement" ), + TYPE_CHAR =SIMP(statut='f',typ='TXM',fr="nature du chargement",into=( "SEISME","AUTRE"),defaut="AUTRE",), + MX =SIMP(statut='f',typ='R',fr="moment suivant x", ), + MX_TUBU =SIMP(statut='f',typ='R',fr="moment suivant x, tubulure", ), + b_1_tenseur =BLOC( condition = "MX != None", + FX =SIMP(statut='f',typ='R',fr="effort suivant x", ), + FY =SIMP(statut='f',typ='R',fr="effort suivant y", ), + FZ =SIMP(statut='f',typ='R',fr="effort suivant z", ), + MY =SIMP(statut='o',typ='R',fr="moment suivant y", ), + MZ =SIMP(statut='o',typ='R',fr="moment suivant z", ), + ), + b_2_tenseurs =BLOC( condition = "MX_TUBU != None", + FX_TUBU =SIMP(statut='f',typ='R',fr="effort suivant x, tubulure", ), + FY_TUBU =SIMP(statut='f',typ='R',fr="effort suivant y, tubulure", ), + FZ_TUBU =SIMP(statut='f',typ='R',fr="effort suivant z, tubulure", ), + MY_TUBU =SIMP(statut='o',typ='R',fr="moment suivant y, tubulure", ), + MZ_TUBU =SIMP(statut='o',typ='R',fr="moment suivant z, tubulure", ), + FX_CORP =SIMP(statut='f',typ='R',fr="effort suivant x, corps du piquage", ), + FY_CORP =SIMP(statut='f',typ='R',fr="effort suivant y, corps du piquage", ), + FZ_CORP =SIMP(statut='f',typ='R',fr="effort suivant z, corps du piquage", ), + MX_CORP =SIMP(statut='o',typ='R',fr="moment suivant x, corps du piquage", ), + MY_CORP =SIMP(statut='o',typ='R',fr="moment suivant y, corps du piquage", ), + MZ_CORP =SIMP(statut='o',typ='R',fr="moment suivant z, corps du piquage", ), + ), + + ), + RESU_MECA_UNIT =FACT(statut='o',fr="resultats mécaniques unitaires", + regles=(UN_PARMI('TABL_MX','TABL_MX_TUBU'),), + TABL_MX =SIMP(statut='f',typ=table_sdaster, + fr="table relevé des contraintes pour chargement unitaire MX"), + TABL_MX_TUBU =SIMP(statut='f',typ=table_sdaster, + fr="table relevé des contraintes pour chargement unitaire MX_TUBU"), + b_1_tenseur =BLOC( condition = "TABL_MX != None", + TABL_FX =SIMP(statut='f',typ=table_sdaster, + fr="table relevé des contraintes pour chargement unitaire FX"), + TABL_FY =SIMP(statut='f',typ=table_sdaster, + fr="table relevé des contraintes pour chargement unitaire FY"), + TABL_FZ =SIMP(statut='f',typ=table_sdaster, + fr="table relevé des contraintes pour chargement unitaire FZ"), + TABL_MY =SIMP(statut='o',typ=table_sdaster, + fr="table relevé des contraintes pour chargement unitaire MY"), + TABL_MZ =SIMP(statut='o',typ=table_sdaster, + fr="table relevé des contraintes pour chargement unitaire MZ"), + ), + b_2_tenseurs =BLOC( condition = "TABL_MX_TUBU != None", + TABL_FX_TUBU =SIMP(statut='f',typ=table_sdaster, + fr="table relevé des contraintes pour chargement unitaire FX_TUBU"), + TABL_FY_TUBU =SIMP(statut='f',typ=table_sdaster, + fr="table relevé des contraintes pour chargement unitaire FY_TUBU"), + TABL_FZ_TUBU =SIMP(statut='f',typ=table_sdaster, + fr="table relevé des contraintes pour chargement unitaire FZ_TUBU"), + TABL_MY_TUBU =SIMP(statut='o',typ=table_sdaster, + fr="table relevé des contraintes pour chargement unitaire MY_TUBU"), + TABL_MZ_TUBU =SIMP(statut='o',typ=table_sdaster, + fr="table relevé des contraintes pour chargement unitaire MZ_TUBU"), + TABL_FX_CORP =SIMP(statut='f',typ=table_sdaster, + fr="table relevé des contraintes pour chargement unitaire FX_CORP"), + TABL_FY_CORP =SIMP(statut='f',typ=table_sdaster, + fr="table relevé des contraintes pour chargement unitaire FY_CORP"), + TABL_FZ_CORP =SIMP(statut='f',typ=table_sdaster, + fr="table relevé des contraintes pour chargement unitaire FZ_CORP"), + TABL_MX_CORP =SIMP(statut='o',typ=table_sdaster, + fr="table relevé des contraintes pour chargement unitaire MX_CORP"), + TABL_MY_CORP =SIMP(statut='o',typ=table_sdaster, + fr="table relevé des contraintes pour chargement unitaire MY_CORP"), + TABL_MZ_CORP =SIMP(statut='o',typ=table_sdaster, + fr="table relevé des contraintes pour chargement unitaire MZ_CORP"), + ), + TABL_PRES =SIMP(statut='o',typ=table_sdaster, + fr="table relevé des contraintes pour chargement unitaire de pression"), + ), + + RESU_THER =FACT(statut='f',max='**',fr="resultats thermiques", + NUME_RESU_THER =SIMP(statut='o',typ='I',fr="numéro de la table de résultat thermique" ), + TABL_RESU_THER =SIMP(statut='o',typ=table_sdaster, + fr="table relevé des contraintes sous chargement thermique seul" ), + ), + SITUATION =FACT(statut='o',max='**',fr="Situation",ang="situation_ang", + NB_OCCUR =SIMP(statut='o',typ='I',fr="nombre d'occurences de la situation" ), + NB_CYCL_SEISME =SIMP(statut='f',typ='I',fr="nombre de cycles associé au séisme" ), + NUME_SITU =SIMP(statut='o',typ='I',fr="numéro de la situation" ), + NOM_SITU =SIMP(statut='f',typ='TXM',fr="nom de la situation" ), + COMBINABLE =SIMP(statut='f',typ='TXM',defaut= "OUI",into=("OUI","NON"),fr="non = sous-cycle" ), + NUME_GROUPE =SIMP(statut='o',typ='I',fr="numéro du groupe de la situation" ), + NUME_PASSAGE =SIMP(statut='f',typ='I',max=2,fr="numéro des deux groupes en relation" ), + NUME_RESU_THER =SIMP(statut='f',typ='I',max='**',fr="numeros de transitoires thermiques" ), + CHAR_ETAT_A =SIMP(statut='o',typ='I',max='**',fr="numeros de chargements etat A" ), + CHAR_ETAT_B =SIMP(statut='o',typ='I',max='**',fr="numeros de chargements etat B" ), + PRES_A =SIMP(statut='o',typ='R',fr="pression etat A"), + PRES_B =SIMP(statut='o',typ='R',fr="pression etat B"), + TEMP_REF_A =SIMP(statut='f',typ='R',fr="temperature référence etat A"), + TEMP_REF_B =SIMP(statut='f',typ='R',fr="temperature référence etat B"), + ), + ), +# ====================================================================== + b_tuyauterie =BLOC(condition="(TYPE_RESU_MECA == 'TUYAUTERIE')", + + OPTION =SIMP(statut='o',typ='TXM',into=("FATIGUE",) ), + CHAM_MATER =SIMP(statut='o',typ=cham_mater ), + TYPE_KE =SIMP(statut='f',typ='TXM',defaut="KE_MECA",into=("KE_MECA","KE_MIXTE"), + fr="Ke meca seul ou partition mecanique + thermique" ), + MODELE =SIMP(statut='o',typ=modele_sdaster), + CARA_ELEM =SIMP(statut='o',typ=cara_elem), + ZONE_ANALYSE =FACT(statut='o',fr="liste des mailles ou des noeuds analysés", + regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + ), + RESU_MECA =FACT(statut='o',max='**',fr="Chargements mécaniques", + regles=(UN_PARMI('CHAM_GD','RESULTAT'),), + NUME_CHAR =SIMP(statut='o',typ='I',fr="numéro du chargement" ), + NOM_CHAR =SIMP(statut='f',typ='TXM',fr="nom du chargement" ), + TYPE_CHAR =SIMP(statut='f',typ='TXM',fr="nature du chargement",into=( "SEISME","AUTRE"),defaut="AUTRE",), + CHAM_GD =SIMP(statut='f',typ=cham_gd_sdaster), + RESULTAT =SIMP(statut='f',typ=resultat_sdaster), + b_extrac =BLOC(condition="RESULTAT != None", + fr="extraction d un champ de grandeur", + regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE','INST','NOEUD_CMP'),), + NOM_CHAM =SIMP(statut='o',typ='TXM',into=("EFGE_ELNO_DEPL","SIEF_ELNO_ELGA"),), + TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE =SIMP(statut='f',typ='I',), + INST =SIMP(statut='f',typ='R',), + NOEUD_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), + b_acce_reel =BLOC(condition="(INST != None)", + PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU"), ), + ), + ), + ), + INDI_SIGM =FACT(statut='o',max='**',fr="indices de contraintes", + regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), + C1 =SIMP(statut='f',typ='R',defaut=1.0,fr="indice de contraintes C1 du RCCM"), + K1 =SIMP(statut='f',typ='R',defaut=1.0,fr="indice de contraintes K1 du RCCM"), + C2 =SIMP(statut='f',typ='R',defaut=1.0,fr="indice de contraintes C2 du RCCM"), + K2 =SIMP(statut='f',typ='R',defaut=1.0,fr="indice de contraintes K2 du RCCM"), + C3 =SIMP(statut='f',typ='R',defaut=0.5,fr="indice de contraintes C3 du RCCM"), + K3 =SIMP(statut='f',typ='R',defaut=1.0,fr="indice de contraintes K3 du RCCM"), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",),), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', + fr="groupe(s) de mailles ou sont affectés les indices de contraintes"), + MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**', + fr="liste des mailles ou sont affectés les indices de contraintes"), + b_grma =BLOC(condition="(GROUP_MA != None)or(MAILLE != None)", + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + ), + TYPE_ELEM_STANDARD =SIMP(statut='f',typ='TXM',into=("DRO","COU","TRN","TEE"), + fr="type d'élément de tuyauterie ou sont affectés les indices de contraintes"), + ), + RESU_THER =FACT(statut='f',max='**',fr="resultats thermiques", + regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'),), + NUME_RESU_THER =SIMP(statut='o',typ='I',fr="numéro de la table de résultat thermique" ), + TABL_RESU_THER =SIMP(statut='o',typ=table_sdaster, + fr="table relevé des températures sur la section"), + TABL_MOYE_THER =SIMP(statut='o',typ=table_sdaster, + fr="table relevé des moyennes sur la section"), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + b_grma =BLOC(condition="(GROUP_MA != None)or(MAILLE != None)", + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + ), + ), + SITUATION =FACT(statut='o',max='**',fr="Situation",ang="situation_ang", + NB_OCCUR =SIMP(statut='o',typ='I',fr="nombre d'occurences de la situation" ), + NB_CYCL_SEISME =SIMP(statut='f',typ='I',fr="nombre de cycles associé au séisme" ), + NUME_SITU =SIMP(statut='o',typ='I',fr="numéro de la situation" ), + NOM_SITU =SIMP(statut='f',typ='TXM',fr="nom de la situation" ), + COMBINABLE =SIMP(statut='f',typ='TXM',defaut= "OUI",into=("OUI","NON"),fr="non = sous-cycle" ), + NUME_GROUPE =SIMP(statut='o',typ='I',fr="numéro du groupe de la situation" ), + NUME_PASSAGE =SIMP(statut='f',typ='I',max=2,fr="numéro des deux groupes en relation" ), + NUME_RESU_THER =SIMP(statut='f',typ='I',max='**',fr="numeros de transitoires thermiques" ), + CHAR_ETAT_A =SIMP(statut='o',typ='I',max='**',fr="numeros de chargements etat A" ), + CHAR_ETAT_B =SIMP(statut='o',typ='I',max='**',fr="numeros de chargements etat B" ), + PRES_A =SIMP(statut='o',typ='R',fr="pression etat A"), + PRES_B =SIMP(statut='o',typ='R',fr="pression etat B"), + TEMP_REF_A =SIMP(statut='f',typ='R',fr="temperature référence etat A"), + TEMP_REF_B =SIMP(statut='f',typ='R',fr="temperature référence etat B"), + ), + ), +) ; +#& MODIF COMMANDE DATE 09/05/2007 AUTEUR VIVAN L.VIVAN +# ====================================================================== +# CONFIGURATION MANAGEMENT OF EDF VERSION +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # -# 7.2.2. ==> Loi lognormale +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # - b_lognormale=BLOC(condition="LOI=='LOGNORMALE'", +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE G8BHHXD X.DESROCHES +POST_RELEVE_T=OPER(nom="POST_RELEVE_T",op=51,sd_prod=table_sdaster,reentrant='f', + fr="Extraire des valeurs de composantes de champs de grandeurs pour y effectuer des calculs (moyenne,invariants,..)" + +" ou pour les exprimer dans d'autres repères", + docu="U4.81.21",UIinfo={"groupes":("Post traitements",)}, + + ACTION =FACT(statut='o',max='**', + regles=(UN_PARMI('RESULTAT','CHAM_GD'),), + + OPERATION =SIMP(statut='o',typ='TXM',into=("EXTRACTION","MOYENNE","EXTREMA"),validators=NoRepeat(),max=2), + INTITULE =SIMP(statut='o',typ='TXM'), + + CHAM_GD =SIMP(statut='f',typ=(cham_no_sdaster, + cham_elem,),), + RESULTAT =SIMP(statut='f',typ=resultat_sdaster), # - VALE_MIN = SIMP(statut="o",typ="R",max=1, - fr="Valeur minimale.", - ang="Minimal value."), +# 1. Sensibilité +# 1.1. Cas d'un résultat réel +# Cas d'un résultat harmonique dont on veut partie réelle ou imaginaire # - VALE_MOY = SIMP(statut="f",typ="R",max=1, - fr="Valeur moyenne dans l'espace de la loi normale.", - ang="Mean value in the space of the normal law."), + b_sensibilite =BLOC(condition=" (RESULTAT != None) and \ + ( AsType(RESULTAT) in (evol_elas,evol_ther,evol_noli,dyna_trans, \ + mode_meca,mode_flamb,mode_acou,base_modale,mode_stat, \ + mult_elas,fourier_elas,fourier_ther) or \ + ( AsType(RESULTAT) in (dyna_harmo,acou_harmo) and FORMAT_C != 'MODULE' ) )", + fr="Définition des paramètres de sensibilité", + ang="Definition of sensitivity parameters", + regles=(CONCEPT_SENSIBLE("SEPARE"), REUSE_SENSIBLE(), + DERIVABLE('RESULTAT'),), + SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', + fr="Liste des paramètres de sensibilité.", + ang="List of sensitivity parameters"), + + ), # - ECART_TYPE = SIMP(statut="f",typ="R",max=1, - fr="Ecart type dans l'espace de la loi normale.", - ang="Standard deviation in the space of the normal law."), +# 1.2. Cas d'un résultat harmonique dont on veut le module # - VALE_MOY_PHY = SIMP(statut="f",typ="R",max=1, - fr="Valeur moyenne dans l'espace physique.", - ang="Mean value in the physical space."), + b_sensibilite_harmo =BLOC(condition=" (RESULTAT != None) and \ + ( AsType(RESULTAT) in (dyna_harmo,acou_harmo) and FORMAT_C == 'MODULE' )", + fr="Définition des paramètres de sensibilité", + ang="Definition of sensitivity parameters", + regles=(CONCEPT_SENSIBLE("SEPARE"), REUSE_SENSIBLE(), + DERIVABLE('RESULTAT'),), + SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', + fr="Liste des paramètres de sensibilité.", + ang="List of sensitivity parameters"), + b_sensibilite_harmo =BLOC(condition=" SENSIBILITE != None", + fr="Option pour la sensibilite", + ang="Option for sensitivity", + SENSIBILITE_OPTION =SIMP(statut='o',typ='TXM',into=("MODULE_SENSIBILITE","SENSIBILITE_MODULE",), + fr="Option : module de la dérivée ou dérivée du module", + ang="Option : modulus of derivative or derivative of modulus"), + ), + ), + + b_extrac =BLOC(condition = "RESULTAT != None",fr="extraction des résultats", + regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','NUME_MODE','LIST_MODE', + 'INST','LIST_INST','FREQ','LIST_FREQ','NOEUD_CMP','NOM_CAS'), ), + NOM_CHAM =SIMP(statut='o',typ='TXM' ), + TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), + NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + LIST_MODE =SIMP(statut='f',typ=listis_sdaster), + NOEUD_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), + NOM_CAS =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), + FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_INST =SIMP(statut='f',typ=listr8_sdaster), + PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-6), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), + ), + + b_extrema =BLOC(condition="OPERATION == 'EXTREMA'", + fr="recherche de MIN MAX", + regles=(EXCLUS('TOUT_CMP','NOM_CMP'),), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + TOUT_CMP =SIMP(statut='f',typ='TXM',into=("OUI",)), + NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), + ), + + b_autre =BLOC(condition="OPERATION != 'EXTREMA'", + fr="extraction et moyenne", + regles=(AU_MOINS_UN('CHEMIN','GROUP_NO','NOEUD'), + EXCLUS('CHEMIN','GROUP_NO'), + EXCLUS('CHEMIN','NOEUD'), + PRESENT_ABSENT('CHEMIN','GROUP_MA','MAILLE'), + UN_PARMI('TOUT_CMP','NOM_CMP','INVARIANT','ELEM_PRINCIPAUX','RESULTANTE'), + PRESENT_PRESENT('TRAC_DIR','DIRECTION'), + ENSEMBLE('MOMENT','POINT'), + PRESENT_PRESENT('MOMENT','RESULTANTE'), + PRESENT_ABSENT('TOUT_CMP','TRAC_DIR','TRAC_NOR'), + EXCLUS('TRAC_DIR','TRAC_NOR'), + PRESENT_PRESENT('ORIGINE','AXE_Z'),), + + CHEMIN =SIMP(statut='f',typ=(courbe_sdaster,surface_sdaster) ), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + + TOUT_CMP =SIMP(statut='f',typ='TXM',into=("OUI",)), + NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), + INVARIANT =SIMP(statut='f',typ='TXM',into=("OUI",)), + ELEM_PRINCIPAUX =SIMP(statut='f',typ='TXM',into=("OUI",) ), + RESULTANTE =SIMP(statut='f',typ='TXM',max='**'), + + MOMENT =SIMP(statut='f',typ='TXM',max='**'), + POINT =SIMP(statut='f',typ='R',max='**'), + + REPERE =SIMP(statut='f',typ='TXM',defaut="GLOBAL", + into=("GLOBAL","LOCAL","POLAIRE","UTILISATEUR","CYLINDRIQUE"),), + ANGL_NAUT =SIMP(statut='f',typ='R',min=3,max=3), + ORIGINE =SIMP(statut='f',typ='R',min=3,max=3), + AXE_Z =SIMP(statut='f',typ='R',min=3,max=3), + + TRAC_NOR =SIMP(statut='f',typ='TXM',into=("OUI",)), + TRAC_DIR =SIMP(statut='f',typ='TXM',into=("OUI",)), + DIRECTION =SIMP(statut='f',typ='R',max='**'), + + VECT_Y =SIMP(statut='f',typ='R',max='**'), + MOYE_NOEUD =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), + ), + + FORMAT_C =SIMP(statut='f',typ='TXM',defaut="MODULE",into=("MODULE","REEL","IMAG")), + + ), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), + TITRE =SIMP(statut='f',typ='TXM',max='**'), +) ; +#& MODIF COMMANDE DATE 03/01/2006 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # - ECART_TYPE_PHY = SIMP(statut="f",typ="R",max=1, - fr="Ecart type dans l'espace physique.", - ang="Standard deviation in the physical space."), +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # - regles=(AU_MOINS_UN("VALE_MOY" ,"VALE_MOY_PHY"), - AU_MOINS_UN("ECART_TYPE","ECART_TYPE_PHY"), - EXCLUS ("VALE_MOY" ,"VALE_MOY_PHY"), - EXCLUS ("VALE_MOY" ,"ECART_TYPE_PHY"), - EXCLUS ("ECART_TYPE","VALE_MOY_PHY"), - EXCLUS ("ECART_TYPE","ECART_TYPE_PHY")), +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +POST_USURE=OPER(nom="POST_USURE",op=153,sd_prod=table_sdaster,reentrant='f', + UIinfo={"groupes":("Post traitements",)}, + fr="Calcul des volumes d'usure et des profondeurs d'usure d'après la puissance d'usure", + regles=(UN_PARMI('TUBE_NEUF','RESU_GENE','PUIS_USURE'), + PRESENT_PRESENT('RESU_GENE','NOEUD','LOI_USURE'), + PRESENT_PRESENT('PUIS_USURE','LOI_USURE'),), + TUBE_NEUF =SIMP(statut='f',typ='TXM',into=("OUI",) ), + ETAT_INIT =FACT(statut='f', + TABL_USURE =SIMP(statut='f',typ=table_sdaster), + INST_INIT =SIMP(statut='f',typ='R'), + ), + RESU_GENE =SIMP(statut='f',typ=tran_gene), + NOEUD =SIMP(statut='f',typ=no,), + INST_INIT =SIMP(statut='f',typ='R',defaut=-1.0E+0), + INST_FIN =SIMP(statut='f',typ='R'), + NB_BLOC =SIMP(statut='f',typ='I',defaut= 1 ), + PUIS_USURE =SIMP(statut='f',typ='R'), + LOI_USURE =SIMP(statut='f',typ='TXM',into=("ARCHARD","KWU_EPRI","EDF_MZ")), + b_archard =BLOC(condition = "LOI_USURE == 'ARCHARD'", + regles=(UN_PARMI('MOBILE','MATER_USURE','SECTEUR'), + EXCLUS('MATER_USURE','OBSTACLE'), + EXCLUS('MOBILE','USURE_OBST'),), + MOBILE =FACT(statut='f', + COEF_USURE =SIMP(statut='o',typ='R'), + ), + OBSTACLE =FACT(statut='f', + COEF_USURE =SIMP(statut='o',typ='R'), + ), + SECTEUR =FACT(statut='f',max='**', + CONTACT =SIMP(statut='f',typ='TXM',into=("TUBE_BAV","TUBE_ALESAGE","TUBE_4_ENCO", + "GRAPPE_ALESAGE","TUBE_3_ENCO","TUBE_TUBE", + "GRAPPE_1_ENCO","GRAPPE_2_ENCO")), + COEF_USUR_MOBILE=SIMP(statut='f',typ='R'), + COEF_USUR_OBST =SIMP(statut='f',typ='R'), + ANGL_INIT =SIMP(statut='f',typ='R'), + ANGL_FIN =SIMP(statut='f',typ='R'), + ), + MATER_USURE =SIMP(statut='f',typ='TXM'), + USURE_OBST =SIMP(statut='f',typ='TXM',into=("OUI",)), + ), + b_kwu_epri =BLOC(condition = "LOI_USURE == 'KWU_EPRI'", + regles=(UN_PARMI('MOBILE','MATER_USURE'), + EXCLUS('MATER_USURE','OBSTACLE'), + EXCLUS('MOBILE','USURE_OBST'),), + MOBILE =FACT(statut='f', + COEF_FNOR =SIMP(statut='f',typ='R'), + COEF_VTAN =SIMP(statut='f',typ='R'), + COEF_USURE =SIMP(statut='f',typ='R'), + COEF_K =SIMP(statut='f',typ='R',defaut=5.0E+0), + COEF_C =SIMP(statut='f',typ='R',defaut=10.0E+0), + ), + OBSTACLE =FACT(statut='f', + COEF_FNOR =SIMP(statut='f',typ='R' ), + COEF_VTAN =SIMP(statut='f',typ='R' ), + COEF_USURE =SIMP(statut='o',typ='R'), + COEF_K =SIMP(statut='f',typ='R',defaut=5.0E+0), + COEF_C =SIMP(statut='f',typ='R',defaut=10.0E+0), + ), + MATER_USURE =SIMP(statut='f',typ='TXM'), + USURE_OBST =SIMP(statut='f',typ='TXM',into=("OUI",)), + FNOR_MAXI =SIMP(statut='f',typ='R' ), + VTAN_MAXI =SIMP(statut='f',typ='R' ), + ), + b_edf_mz =BLOC(condition = "LOI_USURE == 'EDF_MZ'", + regles=(UN_PARMI('MOBILE','MATER_USURE'), + EXCLUS('MATER_USURE','OBSTACLE'), + EXCLUS('MOBILE','USURE_OBST'),), + MOBILE =FACT(statut='f', + COEF_USURE =SIMP(statut='f',typ='R',defaut=1.0E-13), + COEF_B =SIMP(statut='f',typ='R',defaut=1.2E+0), + COEF_N =SIMP(statut='f',typ='R',defaut=2.44E-8), + COEF_S =SIMP(statut='f',typ='R',defaut=1.14E-16), + ), + OBSTACLE =FACT(statut='f', + COEF_USURE =SIMP(statut='o',typ='R',defaut=1.0E-13), + COEF_B =SIMP(statut='f',typ='R',defaut=1.2E+0), + COEF_N =SIMP(statut='f',typ='R',defaut=2.44E-8), + COEF_S =SIMP(statut='f',typ='R',defaut=1.14E-16), + ), + MATER_USURE =SIMP(statut='f',typ='TXM'), + USURE_OBST =SIMP(statut='f',typ='TXM',into=("OUI",)), + ), + b_tube_neuf =BLOC(condition = "TUBE_NEUF == 'OUI'", + TABL_USURE =SIMP(statut='o',typ=table_sdaster), + INST =SIMP(statut='f',typ='R'), + ), + CONTACT =SIMP(statut='f',typ='TXM',into=("TUBE_BAV","TUBE_ALESAGE","TUBE_4_ENCO", + "GRAPPE_ALESAGE","TUBE_3_ENCO","TUBE_TUBE", + "GRAPPE_1_ENCO","GRAPPE_2_ENCO")), + RAYON_MOBILE =SIMP(statut='f',typ='R'), + RAYON_OBST =SIMP(statut='f',typ='R'), + LARGEUR_OBST =SIMP(statut='f',typ='R'), + ANGL_INCLI =SIMP(statut='f',typ='R'), + ANGL_ISTHME =SIMP(statut='f',typ='R'), + ANGL_IMPACT =SIMP(statut='f',typ='R'), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_INST =SIMP(statut='f',typ=listr8_sdaster), + COEF_INST =SIMP(statut='f',typ='R',defaut=1.0E+0), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), + TITRE =SIMP(statut='f',typ='TXM',max='**' ), +) ; +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # - ), +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # -# 7.2.3. ==> Loi uniforme +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +POST_ZAC=OPER(nom="POST_ZAC",op= 175,sd_prod=mult_elas,reentrant='n', + UIinfo={"groupes":("Post traitements",)}, + fr="Déterminer l'état adapté ou accommodé par la méthode de Zarka-Casier d'une structure sous" + +" chargement cyclique élastique affine ou non", + MODELE =SIMP(statut='o',typ=modele_sdaster), + CHAM_MATER =SIMP(statut='o',typ=cham_mater), + EXCIT =FACT(statut='o',max='**', + CHARGE =SIMP(statut='o',typ=char_meca), + FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE_CSTE",into=("FIXE_CSTE",)), + ), + EVOL_ELAS =SIMP(statut='o',typ=evol_elas), + b_evol_elas =BLOC(condition="EVOL_ELAS != None", + regles=(UN_PARMI('NUME_ORDRE','LIST_INST','INST'),), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + LIST_INST =SIMP(statut='f',typ=listr8_sdaster), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + ), + TEMP_ZAC =SIMP(statut='f',typ='R',defaut=0.0E+0), + EVOL_NOLI =SIMP(statut='f',typ=evol_noli), + b_evol_noli =BLOC(condition="EVOL_NOLI != None", + INST_MAX =SIMP(statut='o',typ='R'), + ), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), + +) ; +#& MODIF COMMANDE DATE 19/02/2007 AUTEUR LEFEBVRE J-P.LEFEBVRE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # - b_uniforme=BLOC(condition="LOI=='UNIFORME'", +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # - VALE_MIN = SIMP(statut="o",typ="R",max=1, - fr="Valeur minimale.", - ang="Minimal value."), +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +POURSUITE=MACRO(nom="POURSUITE",op=ops.build_poursuite,repetable='n', + fr="Poursuite d'une étude à partir de la sauvegarde au format JEVEUX ou HDF de sa base globale", + sd_prod = ops.POURSUITE, + UIinfo={"groupes":("Gestion du travail",)}, + op_init = ops.POURSUITE_context,fichier_ini = 1, + FORMAT_HDF =SIMP(fr="sauvegarde de la base GLOBALE au format HDF",statut='f', + typ='TXM',defaut="NON",into=("OUI","NON",) ), + PAR_LOT =SIMP(fr="mode de traitement des commandes",statut='f',typ='TXM', + into=("OUI","NON"),defaut="OUI"), + IMPR_MACRO =SIMP(fr="affichage des sous-commandes produites par les macros dans le fichier mess", + statut='f',typ='TXM',into=("OUI","NON"),defaut="NON"), + BASE =FACT(fr="définition des paramètres associés aux bases JEVEUX", + statut='f',min=1,max=2, + FICHIER =SIMP(fr="nom de la base",statut='o',typ='TXM'), + TITRE =SIMP(statut='f',typ='TXM'), + CAS =SIMP(statut='f',typ='TXM'), + NMAX_ENRE =SIMP(fr="nombre maximum d enregistrements",statut='f',typ='I'), + LONG_ENRE =SIMP(fr="longueur des enregistrements",statut='f',typ='I'), + LONG_REPE =SIMP(fr="longueur du répertoire",statut='f',typ='I'), + ), + IMPRESSION =FACT(statut='f',min=1,max=3, + FICHIER =SIMP(statut='o',typ='TXM'), + UNITE =SIMP(statut='o',typ='I'), + ), + CATALOGUE =FACT(statut='f',min=1,max=10, + FICHIER =SIMP(statut='o',typ='TXM'), + TITRE =SIMP(statut='f',typ='TXM'), + UNITE =SIMP(statut='f',typ='I'), + ), + ERREUR =FACT(fr="comportement en cas d'erreur",statut='f',min=1,max=1, + ERREUR_F =SIMP(statut='f',typ='TXM',into=('ABORT','EXCEPTION'),defaut='ABORT'), + ), + DEBUG =FACT(fr="option de déboggage reservée aux développeurs", + statut='f',min=1,max=1, + JXVERI =SIMP(fr="vérifie l intégrité de la segmentation mémoire", + statut='f',typ='TXM',into=('OUI','NON'),defaut='NON'), + SDVERI =SIMP(fr="vérifie la conformité des SD produites par les commandes", + statut='f',typ='TXM',into=('OUI','NON')), + JEVEUX =SIMP(fr="force les déchargement sur disque", + statut='f',typ='TXM',into=('OUI','NON'),defaut='NON'), + ENVIMA =SIMP(fr="imprime les valeurs définies dans ENVIMA", + statut='f',typ='TXM',into=('TEST',)), + ), + MEMOIRE =FACT(fr="mode de gestion mémoire utilisé",statut='f',min=1,max=1, + GESTION =SIMP(statut='f',typ='TXM',into=('COMPACTE','RAPIDE'),defaut='RAPIDE'), + TYPE_ALLOCATION =SIMP(statut='f',typ='I',into=(1,2,3,4),defaut=1), + TAILLE =SIMP(statut='f',typ='I'), + TAILLE_BLOC =SIMP(statut='f',typ='R',defaut=800.), + PARTITION =SIMP(statut='f',typ='R' ), + DYNAMIQUE =SIMP(statut='f',typ='I'), + ), + RESERVE_CPU =FACT(fr="reserve de temps pour terminer une execution",statut='f',max=1, + regles=(EXCLUS('VALE','POURCENTAGE'),), + VALE =SIMP(statut='f',typ='I',val_min=0), + POURCENTAGE =SIMP(statut='f',typ='R',val_min=0.,val_max=1.0), +# valeur en pourcentage du temps maximum bornée à 180 secondes + BORNE =SIMP(statut='f',typ='I',val_min=0,defaut=180) + ), + CODE =FACT("définition d un nom pour l'esemble d'une étude", + statut='f',min=1,max=1, + NOM =SIMP(statut='o',typ='TXM'), + UNITE =SIMP(statut='f',typ='I',defaut=15), + ), +) ; +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # - VALE_MAX = SIMP(statut="o",typ="R",max=1, - fr="Valeur maximale.", - ang="Maximal value."), +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # - ), +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +PRE_GIBI=PROC(nom="PRE_GIBI",op=49, + UIinfo={"groupes":("Gestion du travail",)}, + fr="Conversion d'un fichier de maillage GIBI au format Aster", + UNITE_GIBI =SIMP(statut='f',typ='I',defaut=19), + UNITE_MAILLAGE =SIMP(statut='f',typ='I',defaut=20), +) ; +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # -# 7.2.4. ==> Loi normale tronquée +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # - b_normale_tronquee=BLOC(condition="LOI=='NORMALE_TRONQUEE'", +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== + +PRE_GMSH=PROC(nom="PRE_GMSH",op=47, + UIinfo={"groupes":("Gestion du travail",)}, + fr="Conversion d'un fichier de maillage GMSH au format Aster", + UNITE_GMSH =SIMP(statut='f',typ='I',defaut=19), + UNITE_MAILLAGE =SIMP(statut='f',typ='I',defaut=20), +) ; +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # - VALE_MOY = SIMP(statut="o",typ="R",max=1, - fr="Valeur moyenne de la loi normale complète.", - ang="Mean value for the entire normal law."), +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # - ECART_TYPE = SIMP(statut="o",typ="R",max=1, - fr="Ecart type de la loi normale complète.", - ang="Standard deviation for the entire normal law."), +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +PRE_IDEAS=PROC(nom="PRE_IDEAS",op=47, + UIinfo={"groupes":("Gestion du travail",)}, + fr="Conversion d'un fichier universel IDEAS-SUPERTAB au format Aster", + UNITE_IDEAS =SIMP(statut='f',typ='I',defaut=19), + UNITE_MAILLAGE =SIMP(statut='f',typ='I',defaut=20), + CREA_GROUP_COUL =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), +) ; +#& MODIF COMMANDE DATE 21/02/2006 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # - VALE_MIN = SIMP(statut="o",typ="R",max=1, - fr="Valeur minimale.", - ang="Minimal value."), +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # - VALE_MAX = SIMP(statut="o",typ="R",max=1, - fr="Valeur maximale.", - ang="Maximal value."), +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== + +PROD_MATR_CHAM=OPER(nom="PROD_MATR_CHAM",op= 156,sd_prod=cham_no_sdaster, + fr="Effectuer le produit d'une matrice par un vecteur", + reentrant='n', + UIinfo={"groupes":("Résultats et champs",)}, + MATR_ASSE =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_temp_r,matr_asse_pres_c ) ), + CHAM_NO =SIMP(statut='o',typ=cham_no_sdaster), + TITRE =SIMP(statut='f',typ='TXM',max='**'), +) ; +#& MODIF COMMANDE DATE 09/05/2007 AUTEUR VIVAN L.VIVAN +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # - ), +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # -# 7.3. ==> Paramètres de calcul -# 7.3.1. ==> Soit on cherche le point de conception, soit on le connait deja +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE VABHHTS J.PELLET +def proj_champ_prod(RESULTAT=None,CHAM_NO_REFE=None,**args ): + if AsType(RESULTAT) != None : return AsType(RESULTAT) + if CHAM_NO_REFE != None : return cham_no_sdaster + raise AsException("type de concept resultat non prevu") + +PROJ_CHAMP=OPER(nom="PROJ_CHAMP",op= 166,sd_prod=proj_champ_prod,reentrant='f', + UIinfo={"groupes":("Résultats et champs",)}, + fr="Projeter les champs aux noeuds d'une SD résultat de type evol_xxx sur un autre maillage", # - regles=(EXCLUS("POINT_INI","POINT_CONCEPT"), - EXCLUS("POINT_REF","POINT_CONCEPT"),), + METHODE =SIMP(statut='f',typ='TXM',defaut="ELEM", + into=("NUAGE_DEG_0","NUAGE_DEG_1","ELEM",) ), + b_nuage =BLOC(condition="(METHODE=='NUAGE_DEG_1') or (METHODE=='NUAGE_DEG_0')", + fr="Lissage d'un nuage de points", + CHAM_NO =SIMP(statut='o',typ=cham_no_sdaster), + CHAM_NO_REFE =SIMP(statut='o',typ=cham_no_sdaster), + ), + b_elem =BLOC(condition="METHODE=='ELEM'", + fr="Utilisation des fonctions de forme du maillage initial", + regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','LIST_INST','LIST_FREQ','LIST_ORDRE'), + EXCLUS('TOUT_CHAM','NOM_CHAM',), + CONCEPT_SENSIBLE('SEPARE'), + REUSE_SENSIBLE(), + DERIVABLE('RESULTAT'),), + RESULTAT =SIMP(statut='o',typ=resultat_sdaster), + SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', + fr="Liste des paramètres de sensibilité.", + ang="List of sensitivity parameters",), + MODELE_1 =SIMP(statut='o',typ=modele_sdaster), + MODELE_2 =SIMP(statut='o',typ=modele_sdaster), + + NOM_PARA =SIMP(statut='f',typ='TXM', max='**'), + TOUT_CHAM =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), + +# POUR IMPOSER LA NUMEROTATION DES DDLS : +# ------------------------------------------------------------------ + NUME_DDL =SIMP(statut='f',typ=(nume_ddl_sdaster) ), + + + TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), + LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), + LIST_INST =SIMP(statut='f',typ=listr8_sdaster), + FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), + LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), + NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), + NOEUD_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), + + + CAS_FIGURE =SIMP(statut='f',typ='TXM',into=("2D","3D","2.5D","1.5D",) ), + DISTANCE_MAX =SIMP(statut='f',typ='R', + fr="Distance maximale entre le noeud et l'élément le plus proche, lorsque le noeud n'est dans aucun élément."), + TRANSF_GEOM_2 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule),min=2,max=3, + fr="2 (ou 3) fonctions fx,fy,fz définissant la transformation géométrique à appliquer"+ + " aux noeuds du MODELE_2 avant la projection."), + + ALARME =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + + TYPE_CHAM =SIMP(statut='f',typ='TXM',into=("NOEU",), + fr="Pour forcer le type des champs projetés. NOEU -> cham_no"), + + PROL_ZERO =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON", + fr="Si le résultat est un mode_xxx ou une base_xxx, on peut prolonger" + +" les champs par zéro la ou la projection ne donne pas de valeurs."), + + ), + + VIS_A_VIS =FACT(statut='f',max='**', + regles=(AU_MOINS_UN('TOUT_1','GROUP_MA_1','MAILLE_1','GROUP_NO_1','NOEUD_1'), + AU_MOINS_UN('TOUT_2','GROUP_MA_2','MAILLE_2','GROUP_NO_2','NOEUD_2'),), + TOUT_1 =SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_MA_1 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE_1 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_NO_1 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD_1 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + TOUT_2 =SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_MA_2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE_2 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_NO_2 =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD_2 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + CAS_FIGURE =SIMP(statut='f',typ='TXM',into=("2D","3D","2.5D","1.5D",) ), + TRANSF_GEOM_2 =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule),min=2,max=3, + fr="2 (ou 3) fonctions fx,fy,fz définissant la transformation géométrique à appliquer"+ + " aux noeuds du MODELE_2 avant la projection."), + ), + + TITRE =SIMP(statut='f',typ='TXM',max='**' ), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), +) ; +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # -# 7.3.2. ==> Quand on cherche le point de conception, on peut préciser le départ de l'algorithme. -# Si on ne le fait pas, le programme prendra la valeur moyenne. +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # - POINT_INI = SIMP(statut="f",typ="R",max=1, - fr="Point de démarrage de l'algorithme itératif.", - ang="Initial point for iterative process."), +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +def matr_asse_gene_prod(MATR_ASSE,MATR_ASSE_GENE,**args): + if AsType(MATR_ASSE) == matr_asse_depl_r : return matr_asse_gene_r + if AsType(MATR_ASSE_GENE) == matr_asse_gene_r : return matr_asse_gene_r + if AsType(MATR_ASSE) == matr_asse_depl_c : return matr_asse_gene_c + if AsType(MATR_ASSE_GENE) == matr_asse_gene_c : return matr_asse_gene_c + raise AsException("type de concept resultat non prevu") + +PROJ_MATR_BASE=OPER(nom="PROJ_MATR_BASE",op= 71,sd_prod=matr_asse_gene_prod, + fr="Projection d'une matrice assemblée sur une base (modale ou de RITZ)", + reentrant='n', + UIinfo={"groupes":("Matrices/vecteurs",)}, + regles=(UN_PARMI('MATR_ASSE','MATR_ASSE_GENE'),), + BASE =SIMP(statut='o',typ=(mode_meca,base_modale,mode_gene,mode_stat ) ), + NUME_DDL_GENE =SIMP(statut='o',typ=nume_ddl_gene ), + MATR_ASSE =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_depl_c) ), + MATR_ASSE_GENE =SIMP(statut='f',typ=(matr_asse_gene_r,matr_asse_gene_c) ), +) ; + +#& MODIF COMMANDE DATE 19/06/2006 AUTEUR VABHHTS J.PELLET +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # -# 7.3.3. ==> Quand on cherche le point de conception, on peut préciser un point de référence pour normaliser. -# Si on ne le fait pas, le programme prendra la valeur moyenne. +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # - POINT_REF = SIMP(statut="f",typ="R",max=1, - fr="Point de référence de l'algorithme itératif.", - ang="Reference point for iterative process."), +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +def proj_mesu_modal_prod(MODELE_MESURE,**args): + vale=MODELE_MESURE['MESURE'] + if AsType(vale) == dyna_trans : return tran_gene + if AsType(vale) == dyna_harmo : return harm_gene + if AsType(vale) == mode_meca : return mode_gene +# if AsType(vale) == mode_meca_c : return mode_gene_c + if AsType(vale) == base_modale : return mode_gene + raise AsException("type de concept resultat non prevu") + +PROJ_MESU_MODAL=OPER(nom="PROJ_MESU_MODAL",op= 193, + sd_prod=proj_mesu_modal_prod, + reentrant='n', + UIinfo={"groupes":("Résultats et champs",)}, + fr="Calcul des coordonnees généralisees de mesure experimentale relatives a une base de projection", + + MODELE_CALCUL =FACT(statut='o', + MODELE =SIMP(statut='o',typ=(modele_sdaster) ), + BASE =SIMP(statut='o',typ=(mode_meca,base_modale,) ), + ), + MODELE_MESURE =FACT(statut='o', + MODELE =SIMP(statut='o',typ=(modele_sdaster) ), + MESURE =SIMP(statut='o',typ=(dyna_trans,dyna_harmo,base_modale,mode_meca,mode_meca_c,) ), + NOM_CHAM =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL","VITE","ACCE","SIEF_NOEU","EPSI_NOEU_DEPL",) ), + ), + CORR_MANU =FACT(statut='f',max='**', + regles=(PRESENT_PRESENT('NOEU_CALCUL','NOEU_MESURE'),), + NOEU_CALCUL =SIMP(statut='f',typ=no), + NOEU_MESURE =SIMP(statut='f',typ=no), + ), + NOM_PARA =SIMP(statut='f',typ='TXM',max='**'), + RESOLUTION =FACT(statut='f', + METHODE =SIMP(statut='f',typ='TXM',defaut="LU",into=("LU","SVD",) ), + b_svd =BLOC(condition="METHODE=='SVD'", + EPS=SIMP(statut='f',typ='R',defaut=0. ), + ), + REGUL =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","NORM_MIN","TIK_RELA",) ), + b_regul =BLOC(condition="REGUL!='NON'", + regles=(PRESENT_ABSENT('COEF_PONDER','COEF_PONDER_F', ),), + COEF_PONDER =SIMP(statut='f',typ='R',defaut=0. ,max='**' ), + COEF_PONDER_F =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule),max='**' ), + ), + ), + + ); +#& MODIF COMMANDE DATE 30/05/2007 AUTEUR ADOBES A.ADOBES +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # -# 7.3.4. ==> Quand on cherche uniquement la probabilité de défaillance, il faut donner le point de conception +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # - POINT_CONCEPT = SIMP(statut="f",typ="R",max=1, - fr="Point de conception.", - ang="Design point."), +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +PROJ_SPEC_BASE=OPER(nom="PROJ_SPEC_BASE",op= 146,sd_prod=table_fonction,reentrant='n', + UIinfo={"groupes":("Matrices/vecteurs",)}, + fr="Projecter un ou plusieurs spectres de turbulence sur une (ou plusieurs) base(s) modale(s) ", + regles=(UN_PARMI('BASE_ELAS_FLUI','MODE_MECA','CHAM_NO'),), + SPEC_TURB =SIMP(statut='o',typ=spectre_sdaster,validators=NoRepeat(),max='**' ), + TOUT_CMP =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), + BASE_ELAS_FLUI =SIMP(statut='f',typ=melasflu_sdaster ), + MODE_MECA =SIMP(statut='f',typ=mode_meca ), + CHAM_NO =SIMP(statut='f',typ=cham_no_sdaster), + FREQ_INIT =SIMP(statut='o',typ='R',val_min=0.E+0 ), + FREQ_FIN =SIMP(statut='o',typ='R',val_min=0.E+0 ), + NB_POIN =SIMP(statut='o',typ='I' ), + OPTION =SIMP(statut='f',typ='TXM',defaut="TOUT",into=("TOUT","DIAG")), + GROUP_MA =SIMP(statut='f',typ=grma), +# Quel est le type attendu derriere MODELE_INTERFACE + MODELE_INTERFACE=SIMP(statut='f',typ=modele_sdaster), + VECT_X =SIMP(statut='f',typ='R',min=3,max=3 ), + VECT_Y =SIMP(statut='f',typ='R',min=3,max=3 ), + ORIG_AXE =SIMP(statut='f',typ='R',min=3,max=3 ), + TITRE =SIMP(statut='f',typ='TXM',max='**' ), +) ; +#& MODIF COMMANDE DATE 21/02/2006 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # -# 7.4. ==> Mode d'obtention du gradient par rapport à ce paramètre +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # - GRADIENT = SIMP(statut="o",typ="TXM",max=1, - into=("OUI","NON"), - fr="ASTER calcule directement le gradient.", - ang="ASTER computes the gradient for this parameter."), +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== - b_gradient=BLOC(condition="GRADIENT=='NON'", - INCREMENT = SIMP(statut="o",typ="R",max=1, - fr="Incrément dans la direction.", - ang="Direction increment."), - ), +PROJ_VECT_BASE=OPER(nom="PROJ_VECT_BASE",op= 72,sd_prod=vect_asse_gene, + fr="Projection d'un vecteur assemblé sur une base (modale ou de RITZ)", + reentrant='n', + UIinfo={"groupes":("Matrices/vecteurs",)}, + regles=(UN_PARMI('VECT_ASSE','VECT_ASSE_GENE'),), + BASE =SIMP(statut='o',typ=(mode_meca,base_modale,mode_gene,mode_stat ) ), + NUME_DDL_GENE =SIMP(statut='o',typ=nume_ddl_gene ), + TYPE_VECT =SIMP(statut='f',typ='TXM',defaut="FORC"), + VECT_ASSE =SIMP(statut='f',typ=cham_no_sdaster), + VECT_ASSE_GENE =SIMP(statut='f',typ=vect_asse_gene ), +) ; +#& MODIF COMMANDE DATE 30/04/2007 AUTEUR ABBAS M.ABBAS +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2006 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== - ), +PROPA_XFEM=OPER(nom="PROPA_XFEM",op=10,sd_prod=fiss_xfem,reentrant='n', + UIinfo={"groupes":("Modélisation",)}, + fr="Propagation de fissure avec X-FEM", + + MODELE =SIMP(statut='o',typ=modele_sdaster), + + TABLE =SIMP(statut='o',typ=table_sdaster), + + LOI_PROPA =FACT(statut='o',max=1, + LOI =SIMP(statut='o',typ='TXM',into=("PARIS",),defaut="PARIS"), + b_paris =BLOC( condition = "LOI=='PARIS'", + C =SIMP(statut='o',typ='R',), + M =SIMP(statut='o',typ='R',),), + ), + + RAYON =SIMP(statut='o',typ='R',), + + METHODE =SIMP(statut='f',typ='TXM',into=("SIMPLEXE","UPWIND",),defaut="SIMPLEXE"), + +# RUNGE_KUTTA =SIMP(statut='f',typ='I',into=("1","2",),defaut=1), + + INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), +) ; +#& MODIF COMMANDE DATE 03/01/2006 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # -); -#& MODIF COMMANDE DATE 13/02/2007 AUTEUR PELLET J.PELLET -# RESPONSABLE JMBHH01 J.M.PROIX +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +RECA_WEIBULL=OPER(nom="RECA_WEIBULL",op= 197,sd_prod=table_sdaster, + fr="Recaler les paramètres du modèle de WEIBULL sur des données expérimentales",reentrant='n', + UIinfo={"groupes":("Post traitements",)}, + LIST_PARA =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=2,into=("SIGM_REFE","M",) ), + RESU =FACT(statut='o',max='**', + regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST',), + AU_MOINS_UN('TOUT','GROUP_MA','MAILLE', ),), + EVOL_NOLI =SIMP(statut='o',typ=(evol_noli) ), + MODELE =SIMP(statut='o',typ=(modele_sdaster) ), + CHAM_MATER =SIMP(statut='o',typ=(cham_mater) ), + TEMPE =SIMP(statut='f',typ='R' ), + LIST_INST_RUPT =SIMP(statut='o',typ='R',validators=NoRepeat(),max='**' ), + TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), + LIST_INST =SIMP(statut='f',typ=(listr8_sdaster) ), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + COEF_MULT =SIMP(statut='f',typ='R',defaut= 1.E0 ), + ), + OPTION =SIMP(statut='f',typ='TXM',defaut="SIGM_ELGA",into=("SIGM_ELGA","SIGM_ELMOY",) ), + CORR_PLAST =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ), + METHODE =SIMP(statut='f',typ='TXM',defaut="MAXI_VRAI",into=("MAXI_VRAI","REGR_LINE",) ), + INCO_GLOB_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), + ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ,) ), + ) ; +#& MODIF COMMANDE DATE 09/05/2007 AUTEUR VIVAN L.VIVAN # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -DEFI_COMPOR=OPER(nom="DEFI_COMPOR",op=59,sd_prod=compor_sdaster, - fr="Définir le comportement d'un monocristal, d'un polycristal ou de groupes de fibres", - reentrant='n', - UIinfo={"groupes":("Modélisation",)}, -# on exclut MULTIFBRE de MONOCRISTAL ou POLYCRISTAL car la structure de données n'est pas organisée pareil pour ces cas - regles=(EXCLUS('MONOCRISTAL','POLYCRISTAL','MULTIFIBRE'), - PRESENT_PRESENT('MULTIFIBRE','GEOM_FIBRE','MATER_SECT'), - ), - MONOCRISTAL =FACT(statut='f', max='**', - MATER =SIMP(statut='o', typ=mater_sdaster, max=1), - ECOULEMENT =SIMP(statut='o', typ='TXM', max=1, - fr="Donner le nom du mot-clé facteur de DEFI_MATERIAU précisant le type d'écoulement viscoplastique"), - ECRO_ISOT =SIMP(statut='o', typ='TXM', max=1, - fr="Donner le nom du mot-clé facteur de DEFI_MATERIAU précisant le type d'écrouissage isotrope"), - ECRO_CINE =SIMP(statut='o', typ='TXM', max=1, - fr="Donner le nom du mot-clé facteur de DEFI_MATERIAU précisant le type d'écrouissage cinématique"), - ELAS =SIMP(statut='f', typ='TXM', max=1, - fr="Donner le nom du mot-clé facteur de DEFI_MATERIAU précisant le comportement élastique (un et un seul)"), - FAMI_SYST_GLIS =SIMP(statut='o',typ='TXM', max=1, - into=('BASAL', 'PRISMATIQUE', 'OCTAEDRIQUE', 'PYRAMIDAL1', - 'PYRAMIDAL2', 'CUBIQUE1', 'CUBIQUE2', 'MACLAGE', 'JOINT_GRAIN', 'RL', 'UNIAXIAL','BCC24'),), - ), - - - POLYCRISTAL =FACT(statut='f', max='**', - regles=(UN_PARMI('ANGL_REP','ANGL_EULER'),), - MONOCRISTAL =SIMP(statut='o', typ=compor_sdaster, max=1), - FRAC_VOL =SIMP(statut='o', typ='R', max=1,fr="fraction volumique de la phase correspondant au monocristal"), - ANGL_REP =SIMP(statut='f',typ='R',max=3,fr="orientation du monocristal : 3 angles nautiques en degrés"), - ANGL_EULER=SIMP(statut='f',typ='R',max=3,fr="orientation du monocristal : 3 angles d'Euler en degrés"), - ), - - - b_poly =BLOC( condition = "POLYCRISTAL!='None'", - LOCALISATION =SIMP(statut='f', typ='TXM', max=1, into=('BZ', 'BETA', 'RL',), - fr="Donner le nom de la règle de localisation"), - - b_beta =BLOC( condition = "LOCALISATION=='BETA'", - DL =SIMP(statut='o',typ='R',max=1), - DA =SIMP(statut='o',typ='R',max=1), - ), - ), - -##################################################################################### - GEOM_FIBRE = SIMP(statut='f',max=1,typ=gfibre_sdaster, - fr="Donner le nom du concept regroupant tous les groupes de fibres (issu de DEFI_GEOM_FIBRE)"), - MATER_SECT = SIMP(statut='f',max=1,typ=mater_sdaster, - fr="Donner le nom du materiau pour les caracteristiques homogeneisees sur la section"), - MULTIFIBRE = FACT(statut='f',max='**', - GROUP_FIBRE =SIMP(statut='o', typ='TXM', max='**'), - MATER =SIMP(statut='o', typ=mater_sdaster, max=1, - fr="Donner le nom du materiau pour le groupe de fibres"), - ALGO_1D =SIMP(statut='f',typ='TXM',defaut="ANALYTIQUE",into=("DEBORST","ANALYTIQUE",)), - DEFORMATION =SIMP(statut='f',typ='TXM',defaut="PETIT", - into=("PETIT","PETIT_REAC","REAC_GEOM")), - RELATION =SIMP(statut='f', typ='TXM', max=1,defaut="ELAS", -# into=c_relation_into, - fr="Donner le nom de la relation incrementale pour le groupe de fibres", - into=( - "ELAS", - "ELAS_HYPER", - "VMIS_ISOT_TRAC", - "VISC_ISOT_TRAC", - "VMIS_ISOT_LINE", - "VISC_ISOT_LINE", - "VMIS_ISOT_PUIS", - "VMIS_ECMI_TRAC", - "VMIS_ECMI_LINE", - "LABORD_1D", - "ENDO_FRAGILE", - "ENDO_ISOT_BETON", - "ENDO_ORTH_BETON", - "BETON_REGLE_PR", - "MAZARS", - "RUPT_FRAG", - "VMIS_CINE_LINE", - "VISC_TAHERI", - "VISCOCHAB", - "VMIS_CIN1_CHAB", - "VMIS_CIN2_CHAB", - "VISC_CIN1_CHAB", - "VISC_CIN2_CHAB", - "ROUSSELIER", - "ROUSS_PR", - "ROUSS_VISC", - "NORTON_HOFF", - "LEMAITRE", - "VENDOCHAB", - "DRUCKER_PRAGER", - "GRANGER_FP", - "GRANGER_FP_INDT", - "GRANGER_FP_V", - "BAZANT_FD", - "BETON_UMLV_FP", - "BETON_DOUBLE_DP", - "KIT_DDI", - "SANS", - "CORR_ACIER", - "ZMAT", - "GRAN_IRRA_LOG", - ) ), - ELAS =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_HYPER =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - SANS =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - CORR_ACIER =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - VMIS_ISOT_TRAC =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - VISC_ISOT_TRAC =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - VMIS_ISOT_LINE =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - VISC_ISOT_LINE =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - VMIS_ISOT_PUIS =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - VMIS_ECMI_TRAC =SIMP(statut='c',typ='I',defaut=8,into=(8,)), - VMIS_ECMI_LINE =SIMP(statut='c',typ='I',defaut=8,into=(8,)), - LABORD_1D =SIMP(statut='c',typ='I',defaut=5,into=(5,)), - ENDO_FRAGILE =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - ENDO_ISOT_BETON =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - ENDO_ORTH_BETON =SIMP(statut='c',typ='I',defaut=7,into=(7,)), - BETON_REGLE_PR =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - MAZARS =SIMP(statut='c',typ='I',defaut=4,into=(4,)), - RUPT_FRAG =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - VMIS_CINE_LINE =SIMP(statut='c',typ='I',defaut=7,into=(7,)), - VISCOCHAB =SIMP(statut='c',typ='I',defaut=28,into=(28,)), - VMIS_CIN1_CHAB =SIMP(statut='c',typ='I',defaut=8,into=(8,)), - VMIS_CIN2_CHAB =SIMP(statut='c',typ='I',defaut=14,into=(14,)), - VISC_CIN1_CHAB =SIMP(statut='c',typ='I',defaut=8,into=(8,)), - VISC_CIN2_CHAB =SIMP(statut='c',typ='I',defaut=14,into=(14,)), - VISC_TAHERI =SIMP(statut='c',typ='I',defaut=9,into=(9,)), - ROUSSELIER =SIMP(statut='c',typ='I',defaut=9,into=(9,)), - ROUSS_PR =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - ROUSS_VISC =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - VMIS_POU_LINE =SIMP(statut='c',typ='I',defaut=9,into=(9,)), - VMIS_POU_FLEJOU =SIMP(statut='c',typ='I',defaut=9 ,into=(9,)), - ASSE_CORN =SIMP(statut='c',typ='I',defaut=7,into=(7,)), - ARME =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - NORTON_HOFF =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - LEMAITRE =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - VENDOCHAB =SIMP(statut='c',typ='I',defaut=10,into=(10,)), - GRILLE_ISOT_LINE=SIMP(statut='c',typ='I',defaut=4,into=(4,)), - DRUCKER_PRAGER =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - HOEK_BROWN =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - HOEK_BROWN_EFF =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - HOEK_BROWN_TOT =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - GRANGER_FP =SIMP(statut='c',typ='I',defaut=55,into=(55,)), - GRANGER_FP_INDT =SIMP(statut='c',typ='I',defaut=55,into=(55,)), - GRANGER_FP_V =SIMP(statut='c',typ='I',defaut=55,into=(55,)), - BAZANT_FD =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - BETON_DOUBLE_DP =SIMP(statut='c',typ='I',defaut=4,into=(4,)), - BETON_UMLV_FP =SIMP(statut='c',typ='I',defaut=21,into=(21,)), - GRAN_IRRA_LOG =SIMP(statut='c',typ='I',defaut=4,into=(4,)), - - RELATION_KIT =SIMP(statut='f',typ='TXM',max='**',validators=NoRepeat(), - into=( -# MECA KIT_DDI - "VMIS_ISOT_TRAC", - "VMIS_ISOT_LINE", - "VMIS_ISOT_CINE", - "VMIS_ISOT_PUIS", - "GRANGER_FP", - "GRANGER_FP_INDT", - "GRANGER_FP_V", - "BETON_UMLV_FP", - "ROUSS_PR", - "NADAI_B", - "BETON_DOUBLE_DP", - ),), +# RESPONSABLE MCOURTOI M.COURTOIS +def recu_fonction_prod(RESULTAT=None,TABLE=None,RESU_GENE=None, + BASE_ELAS_FLUI=None,CHAM_GD=None,NAPPE=None, + NOM_PARA_TABL=None,**args): + if AsType(RESULTAT) == dyna_harmo or \ + AsType(RESU_GENE) == harm_gene or \ + (TABLE != None and NOM_PARA_TABL == "FONCTION_C"): + return fonction_c + else: + return fonction_sdaster -# on pourrait ajouter TOUT_GROUP_FIBRE +RECU_FONCTION=OPER(nom="RECU_FONCTION",op=90,sd_prod=recu_fonction_prod, + fr="Extraire sous forme d'une fonction, l'évolution d'une grandeur en fonction d'une autre", + reentrant='f', + UIinfo={"groupes":("Fonction",)}, + regles=(UN_PARMI('CHAM_GD','RESULTAT','RESU_GENE','TABLE','BASE_ELAS_FLUI','NAPPE'),), + + CHAM_GD =SIMP(statut='f',typ=(cham_no_sdaster,cham_elem,),), + RESULTAT =SIMP(statut='f',typ=resultat_sdaster), + RESU_GENE =SIMP(statut='f',typ=(tran_gene, mode_gene, harm_gene)), + TABLE =SIMP(statut='f',typ=(table_sdaster,table_fonction)), + BASE_ELAS_FLUI =SIMP(statut='f',typ=melasflu_sdaster), + NAPPE =SIMP(statut='f',typ=nappe_sdaster), + +# ======= SENSIBILITE ================================================= + b_sensibilite =BLOC(condition="RESULTAT != None", + fr="Définition des paramètres de sensibilité", + ang="Definition of sensitivity parameters", + regles=(CONCEPT_SENSIBLE('SEPARE'), REUSE_SENSIBLE(), + DERIVABLE('RESULTAT'),), + SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', + fr="Liste des paramètres de sensibilité.", + ang="List of sensitivity parameters"),), +# ======= ACCES A LA SD RESULTAT ================================================= + b_acces = BLOC ( condition = "(RESULTAT != None) or (RESU_GENE != None)", + fr="acces a une SD résultat", +# on ne peut pas mettre de regles, le défaut TOUT_ORDRE est pris en compte dans le fortran + TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster ), + TOUT_INST =SIMP(statut='f',typ='TXM',into=("OUI",) ), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), + FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster ), + NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + b_prec = BLOC ( condition = "(INST != None) or (LIST_INST != None) or (FREQ != None) or (LIST_FREQ != None)", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + INTERP_NUME =SIMP(statut='f',typ='TXM',into=("NON","LIN") ), + ), + ), +# ======= BASE_ELAS_FLUI ================================================= + b_base_elas_flui = BLOC ( condition = "BASE_ELAS_FLUI != None", + fr="Récupération de la fonction à partir d un concept melasflu", + regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE'),), + TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + NUME_MODE =SIMP(statut='o',typ='I' ), + PARA_X =SIMP(statut='o',typ='TXM',into=("VITE_FLU",) ), + PARA_Y =SIMP(statut='o',typ='TXM',into=("FREQ","AMOR") ), + ), + +# ======= TABLE ================================================= + b_table = BLOC ( condition = "TABLE != None", + fr="Récupération de la fonction à partir d un concept table", + regles=(UN_PARMI('PARA_X','NOM_PARA_TABL'), + PRESENT_PRESENT('PARA_X','PARA_Y'),), + PARA_X = SIMP(statut='f',typ='TXM', + fr="1ère colonne de la table qui définit la fonction à récupérer", ), + PARA_Y = SIMP(statut='f',typ='TXM', + fr="2ème colonne de la table qui définit la fonction à récupérer", ), + #b_tabl_fonc = BLOC(condition = "AsType(TABLE) == table_fonction", + NOM_PARA_TABL = SIMP(statut='f',typ='TXM',into=("FONCTION","FONCTION_C"), + fr="Nom du paramètre de la table contenant la fonction" ), + #), - ) ); - -#& MODIF COMMANDE DATE 30/08/2005 AUTEUR ASSIRE A.ASSIRE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE ASSIRE A.ASSIRE + FILTRE = FACT(statut='f',max='**', + NOM_PARA =SIMP(statut='o',typ='TXM' ), + CRIT_COMP =SIMP(statut='f',typ='TXM',defaut="EQ", + into=("EQ","LT","GT","NE","LE","GE","VIDE", + "NON_VIDE","MAXI","ABS_MAXI","MINI","ABS_MINI") ), + b_vale =BLOC(condition = "(CRIT_COMP in ('EQ','NE','GT','LT','GE','LE'))", + regles=(UN_PARMI('VALE','VALE_I','VALE_K','VALE_C',),), + VALE =SIMP(statut='f',typ='R' ), + VALE_I =SIMP(statut='f',typ='I' ), + VALE_C =SIMP(statut='f',typ='C' ), + VALE_K =SIMP(statut='f',typ='TXM' ),), -from Macro.defi_part_feti_ops import defi_part_feti_ops + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), + ), + ), -DEFI_PART_FETI=MACRO(nom="DEFI_PART_FETI",op=defi_part_feti_ops,sd_prod=sd_feti_sdaster, - reentrant='n',UIinfo={"groupe":("Maillage",)}, - fr="Creation partitionnement en sous-domaines pour FETI", - regles=(UN_PARMI('MAILLAGE','MODELE'),), - MAILLAGE =SIMP(statut='f',typ=maillage_sdaster), - MODELE =SIMP(statut='f',typ=modele_sdaster), - NB_PART =SIMP(statut='o',typ='I',val_min=2), - EXCIT =FACT(statut='f',max='**', - CHARGE =SIMP(statut='f',typ=(char_meca,char_cine_meca)),), +# ======= RESULTAT ================================================= + b_resu = BLOC ( condition = "RESULTAT != None", fr="Opérandes en cas de RESULTAT", + regles=(UN_PARMI('NOM_CHAM','NOM_PARA_RESU'),), + NOM_CHAM =SIMP(statut='f',typ='TXM',into=C_NOM_CHAM_INTO()), + NOM_PARA_RESU =SIMP(statut='f',typ='TXM' ), + b_cham = BLOC ( condition = "NOM_CHAM != None", + regles=(AU_MOINS_UN('MAILLE','GROUP_MA','GROUP_NO','NOEUD'), + PRESENT_ABSENT('POINT','NOEUD','GROUP_NO'), + PRESENT_ABSENT('SOUS_POINT','NOEUD','GROUP_NO'), + EXCLUS('GROUP_MA','MAILLE'), + EXCLUS('GROUP_NO','NOEUD'),), + NOM_CMP =SIMP(statut='o',typ='TXM' ), + MAILLE =SIMP(statut='f',typ=ma), + GROUP_MA =SIMP(statut='f',typ=grma), + NOEUD =SIMP(statut='f',typ=no), + GROUP_NO =SIMP(statut='f',typ=grno), + POINT =SIMP(statut='f',typ='I' ), + SOUS_POINT =SIMP(statut='f',typ='I' ), + ), + ), - # Methode de partitionnement - METHODE =SIMP(statut='f',typ='TXM',into=("PMETIS","SCOTCH","KMETIS",), defaut="SCOTCH" ), - - LOGICIEL =SIMP(statut='f',typ='TXM'), +# ======= RESU_GENE ================================================= + b_tran_gene = BLOC ( condition = "AsType(RESU_GENE) == tran_gene", + fr="Récupération d'une fonction à partir d un concept TRAN_GENE", + regles=(UN_PARMI('NOM_CHAM','NOEUD_CHOC','GROUP_NO_CHOC'),), + NOM_CHAM =SIMP(statut='f',typ='TXM',into=("DEPL","VITE","ACCE","PTEM") ), + NOEUD_CHOC =SIMP(statut='f',typ=no), + GROUP_NO_CHOC =SIMP(statut='f',typ=grno), + b_cham = BLOC ( condition = "(NOM_CHAM=='DEPL') or (NOM_CHAM=='VITE') or (NOM_CHAM=='ACCE')", + regles=(UN_PARMI('GROUP_NO','NOEUD'), + EXCLUS('MULT_APPUI','CORR_STAT'),), + NOM_CMP =SIMP(statut='o',typ='TXM' ), + NOEUD =SIMP(statut='f',typ=no), + GROUP_NO =SIMP(statut='f',typ=grno), + MULT_APPUI =SIMP(statut='f',typ='TXM',into=("OUI",) ), + CORR_STAT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + ACCE_MONO_APPUI =SIMP(statut='f',typ=(fonction_sdaster,formule)), + ), + b_choc = BLOC ( condition = "(NOEUD_CHOC != None) or (GROUP_NO_CHOC != None)", + regles=(PRESENT_PRESENT('SOUS_STRUC','INTITULE'),), + PARA_X =SIMP(statut='o',typ='TXM', + into=("INST","FN","FT1","FT2","VN","VT1","VT2","DXLOC","DYLOC","DZLOC") ), + PARA_Y =SIMP(statut='o',typ='TXM', + into=("INST","FN","FT1","FT2","VN","VT1","VT2","DXLOC","DYLOC","DZLOC") ), + LIST_PARA =SIMP(statut='f',typ=listr8_sdaster ), + INTITULE =SIMP(statut='f',typ='TXM' ), + SOUS_STRUC =SIMP(statut='f',typ='TXM' ), + ), + ), + b_harm_gene = BLOC ( condition = "AsType(RESU_GENE)==harm_gene", + fr="Récupération d'une fonction à partir d un concept HARM_GENE", + regles=(UN_PARMI('NOM_CHAM','NOM_PARA_RESU'),), + NOM_CHAM =SIMP(statut='f',typ='TXM',into=C_NOM_CHAM_INTO()), + NOM_PARA_RESU =SIMP(statut='f',typ='TXM' ), + b_cham = BLOC ( condition = "NOM_CHAM != None", + regles=(UN_PARMI('NUME_CMP_GENE','NOM_CMP'),), + NUME_CMP_GENE =SIMP(statut='f',typ='I' ), + NOM_CMP =SIMP(statut='f',typ='TXM' ), + b_cmp = BLOC ( condition = "NOM_CMP != None", + regles=(UN_PARMI('NOEUD','GROUP_NO'),), + NOEUD =SIMP(statut='f',typ=no), + GROUP_NO =SIMP(statut='f',typ=grno), + ), + ), + ), + b_mode_gene = BLOC ( condition = "AsType(RESU_GENE)==mode_gene", + fr="Récupération d'une fonction à partir d un concept MODE_GENE", + regles=(UN_PARMI('NOM_CHAM','NOM_PARA_RESU'),), + NOM_CHAM =SIMP(statut='f',typ='TXM',into=C_NOM_CHAM_INTO()), + NOM_PARA_RESU =SIMP(statut='f',typ='TXM' ), + b_cham = BLOC ( condition = "NOM_CHAM != None", + regles=(UN_PARMI('NUME_CMP_GENE','NOM_CMP'),), + NUME_CMP_GENE =SIMP(statut='f',typ='I' ), + NOM_CMP =SIMP(statut='f',typ='TXM' ), + b_cmp = BLOC ( condition = "NOM_CMP != None", + regles=(UN_PARMI('NOEUD','GROUP_NO'), + UN_PARMI('SQUELETTE','SOUS_STRUC'),), + NOEUD =SIMP(statut='f',typ=no), + GROUP_NO =SIMP(statut='f',typ=grno), + SQUELETTE =SIMP(statut='f',typ=squelette ), + SOUS_STRUC =SIMP(statut='f',typ='TXM' ), + ), + ), + ), - # Corrige les problemes possibles de non-connexite des sous-domaines - CORRECTION_CONNEX =SIMP(statut='f',typ='TXM',defaut='NON',into=('OUI','NON')), +# ======= CHAM_GD ================================================= + b_cham_gd = BLOC ( condition = "(CHAM_GD != None)", fr="Opérandes en cas de CHAM_GD", + regles=(AU_MOINS_UN('MAILLE','GROUP_MA','GROUP_NO','NOEUD'), + PRESENT_ABSENT('POINT','NOEUD','GROUP_NO'), + PRESENT_ABSENT('SOUS_POINT','NOEUD','GROUP_NO'), + EXCLUS('GROUP_MA','MAILLE'), + EXCLUS('GROUP_NO','NOEUD'),), + NOM_CMP =SIMP(statut='o',typ='TXM' ), + MAILLE =SIMP(statut='f',typ=ma), + GROUP_MA =SIMP(statut='f',typ=grma), + NOEUD =SIMP(statut='f',typ=no), + GROUP_NO =SIMP(statut='f',typ=grno), + POINT =SIMP(statut='f',typ='I' ), + SOUS_POINT =SIMP(statut='f',typ='I' ), + ), - # Permet de grouper des mailles dans un meme sous-doamine - GROUPAGE =FACT(statut='f',max='**', - GROUP_MA =SIMP(statut='o',typ=grma,), - ), - # Permet d'appliquer des poids sur certaines mailles - POIDS_MAILLES =FACT(statut='f',max='**', - GROUP_MA =SIMP(statut='o',typ=grma,), - POIDS =SIMP(statut='f',typ='I',val_min=2), - ), - # Prefixe pour le nom des group_ma definissant les sous-domaines - NOM_GROUP_MA =SIMP(statut='f',typ='TXM',defaut='SD' ), +# ======= NAPPE ================================================= + b_nappe = BLOC ( condition = "(NAPPE != None)", fr="Opérandes en cas de NAPPE", + VALE_PARA_FONC =SIMP(statut='o',typ='R' ), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + ), - # Traiter les mailles de bords (elles sont enlevees du graphe puis reinjectees) - TRAITER_BORDS =SIMP(statut='f',typ='TXM',defaut='OUI',into=('OUI','NON') ), - - # Si le mot-clé suivant est renseigné, crée de nouveau group_ma a partir des bords - # Note : le calcul FETI sera impossible - b_traiter_bords =BLOC(condition="TRAITER_BORDS == 'OUI'", fr="Crée t on des nouveaux group_ma", - NOM_GROUP_MA_BORD =SIMP(statut='f',typ='TXM'), - ), +# ======= SURCHARGE DES ATTRIBUTS ================================================= + NOM_PARA =SIMP(statut='f',typ='TXM', into=C_PARA_FONCTION() ), + NOM_RESU =SIMP(statut='f',typ='TXM' ), + INTERPOL =SIMP(statut='f',typ='TXM',max=2,into=("NON","LIN","LOG") ), + PROL_DROITE =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ), + PROL_GAUCHE =SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ), - INFO =SIMP(statut='f',typ='I',into=(1, 2), defaut=1), -); -#& MODIF COMMANDE DATE 22/02/2005 AUTEUR DURAND C.DURAND + TITRE =SIMP(statut='f',typ='TXM',max='**'), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ), +) ; +#& MODIF COMMANDE DATE 21/02/2006 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +RECU_GENE=OPER(nom="RECU_GENE",op= 76,sd_prod=vect_asse_gene,reentrant='n', + UIinfo={"groupes":("Résultats et champs",)}, + fr="Extraire d'un champ de grandeur (déplacements, vitesses ou accélérations) à partir de résultats" + +" en coordonnées généralisées", + RESU_GENE =SIMP(statut='o',typ=tran_gene ), + INST =SIMP(statut='o',typ='R' ), + NOM_CHAM =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL","VITE","ACCE") ), + INTERPOL =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","LIN") ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF" ,into=("ABSOLU","RELATIF") ), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), +) ; +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE VABHHTS J.PELLET +RECU_TABLE=OPER(nom="RECU_TABLE",op= 174,sd_prod=table_sdaster, + fr="Récupérer dans une table les valeurs d'un paramètre d'une SD Résultat ou d'extraire une table contenue" + +" dans une autre SD pour celles qui le permettent", + UIinfo={"groupes":("Résultats et champs",)},reentrant='n', + CO =SIMP(statut='o',typ=assd), + regles=(UN_PARMI('NOM_TABLE','NOM_PARA')), + NOM_TABLE =SIMP(statut='f',typ='TXM' ), + NOM_PARA =SIMP(statut='f',typ='TXM',max='**'), + TITRE =SIMP(statut='f',typ='TXM',max='**'), +) ; +#& MODIF COMMANDE DATE 21/02/2006 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE ASSIRE A.ASSIRE -DEFI_PART_OPS=OPER(nom="DEFI_PART_OPS",op=21,sd_prod=sd_feti_sdaster, - fr="Creation partitionnement en sous-domaines pour FETI", - docu="U4.23.05",reentrant='n', - UIinfo={"groupes":("Résolution",)}, - MODELE =SIMP(statut='o',typ=(modele_sdaster) ), - MAILLAGE =SIMP(statut='f',typ=(maillage_sdaster) ), - NOM =SIMP(statut='f',typ='TXM',defaut='SD'), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2,3,4) ), - DEFI =FACT(statut='f',max='**', - GROUP_MA =SIMP(statut='o',typ=grma), - GROUP_MA_BORD =SIMP(statut='f',typ=grma), - ), - EXCIT =FACT(statut='f',max='**', - CHARGE =SIMP(statut='f',typ=(char_meca,char_cine_meca)), - ), -); -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +RESO_GRAD=OPER(nom="RESO_GRAD",op= 84,sd_prod=cham_no_sdaster, + fr="Résolution d'un système linéaire par la méthode du gradient conjugué préconditionné", + reentrant='f', + UIinfo={"groupes":("Résolution",)}, + MATR_ASSE =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r ) ), + CHAM_NO =SIMP(statut='o',typ=cham_no_sdaster), + CHAM_CINE =SIMP(statut='f',typ=cham_no_sdaster), + MATR_FACT =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r ) ), + NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), + REPRISE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + RESI_RELA =SIMP(statut='f',typ='R',defaut= 1E-6 ), + INFO =SIMP(statut='f',typ='I',into=(1,2) ), +) ; +#& MODIF COMMANDE DATE 21/02/2006 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE MCOURTOI M.COURTOIS -from Macro.impr_fonction_ops import impr_fonction_ops - -IMPR_FONCTION=MACRO(nom="IMPR_FONCTION",op=impr_fonction_ops,sd_prod=None, - fr="Imprime le contenu d'objets de type fonction ou liste de réels dans un fichier destiné à un traceur de courbe", - UIinfo={"groupes":("Fonction",)}, - FORMAT =SIMP(statut='o',typ='TXM',position='global',defaut='TABLEAU', - into=("TABLEAU","AGRAF","XMGRACE",),), - b_pilote = BLOC(condition = "FORMAT == 'XMGRACE'", - fr="Mots-clés propres à XMGRACE", - PILOTE =SIMP(statut='f',typ='TXM',defaut='', - into=('','POSTSCRIPT','EPS','MIF','SVG','PNM','PNG','JPEG','PDF','INTERACTIF'), - fr="Pilote de sortie, PNG/JPEG/PDF ne sont pas disponibles sur toutes les installations de xmgrace"), - UNITE =SIMP(statut='f',typ='I',val_min=10,val_max=90,defaut=29, - fr="Unité logique définissant le fichier (fort.N) dans lequel on écrit"), - ), - b_agraf = BLOC(condition = "FORMAT == 'AGRAF'", - fr="Mots-clés propres à AGRAF", - UNITE =SIMP(statut='o',typ='I',defaut=25, - fr="Unité logique définissant le fichier (fort.N) dans lequel on écrit"), - UNITE_DIGR =SIMP(statut='o',typ='I',defaut=26, - fr="Unité logique définissant le fichier dans lequel on écrit les directives Agraf"), - ), - # unite pour TABLEAU dans le bloc de mise en forme spécifique +# RESPONSABLE VABHHTS J.PELLET - COURBE =FACT(statut='o',max='**',fr="Définition de la fonction à tracer", - regles=(UN_PARMI('FONCTION','LIST_RESU','FONC_X','ABSCISSE'),), - FONCTION =SIMP(statut='f',typ=(fonction_sdaster, formule, fonction_c, nappe_sdaster), - fr="Fonction réelle ou complexe", ), - LIST_RESU =SIMP(statut='f',typ=listr8_sdaster, - fr="Liste des ordonnees d'une fonction réelle définie par deux listes", ), - FONC_X =SIMP(statut='f',typ=(fonction_sdaster,formule), - fr="Fonction abscisses d'une fonction paramétrique",), - ABSCISSE =SIMP(statut='f',typ='R',max='**', - fr="Valeurs des abscisses", ), - b_fonction =BLOC(condition = "FONCTION != None", - LIST_PARA =SIMP(statut='f',typ=listr8_sdaster ), - ), - b_fonction_c =BLOC(condition = "AsType(FONCTION) == fonction_c", - fr="Fonction complexe définie par le mot-clé fonction", - PARTIE =SIMP(statut='f',typ='TXM',into=("REEL","IMAG") ), - ), - b_list_resu =BLOC(condition = "LIST_RESU != None", - LIST_PARA =SIMP(statut='o',typ=listr8_sdaster ), - ), - b_fonc_x =BLOC(condition = "FONC_X != None", - FONC_Y =SIMP(statut='o',typ=(fonction_sdaster,formule),fr="Fonction ordonnées d une fonction paramétrique" ), - LIST_PARA =SIMP(statut='f',typ=listr8_sdaster ), - ), - b_vale_resu =BLOC(condition = "ABSCISSE != None", - ORDONNEE =SIMP(statut='o',typ='R',max='**', - fr="Valeurs des ordonnées"), - ), +RESO_LDLT=OPER(nom="RESO_LDLT",op=15,sd_prod=cham_no_sdaster,reentrant='f', + fr="Résoudre par méthode directe un système d'équations linéaires préalablement factorisé par FACT_LDLT", + UIinfo={"groupes":("Résolution",)}, + MATR_FACT =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_temp_r, + matr_asse_temp_c,matr_asse_pres_r,matr_asse_pres_c) ), + CHAM_NO =SIMP(statut='o',typ=cham_no_sdaster), + CHAM_CINE =SIMP(statut='f',typ=cham_no_sdaster), + # RESI_RELA : précision utilisée si SOLVEUR=MUMPS + RESI_RELA =SIMP(statut='f',typ='R',defaut=1.e-6), + TITRE =SIMP(statut='f',typ='TXM',max='**'), + INFO =SIMP(statut='f',typ='I',into=(1,2) ), +) ; +#& MODIF COMMANDE DATE 12/03/2007 AUTEUR DEVESA G.DEVESA +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE BOYERE E.BOYERE +def rest_base_phys_prod(RESU_GENE,RESU_PHYS,RESULTAT,**args ): + if AsType(RESU_GENE) == tran_gene : return dyna_trans + if AsType(RESU_GENE) == mode_gene : return mode_meca + if AsType(RESU_GENE) == mode_cycl : return mode_meca + if AsType(RESU_GENE) == harm_gene : return dyna_harmo + if AsType(RESU_PHYS) == evol_noli : return dyna_trans + if AsType(RESULTAT) == evol_elas : return evol_elas + if AsType(RESULTAT) == evol_noli : return evol_noli + if AsType(RESULTAT) == evol_char : return evol_char + if AsType(RESULTAT) == dyna_trans : return dyna_trans + if AsType(RESULTAT) == mode_meca : return mode_meca + if AsType(RESULTAT) == mode_stat_depl : return mode_stat_depl + if AsType(RESULTAT) == base_modale : return base_modale + raise AsException("type de concept resultat non prevu") - # le bloc n'est pas activé (vide) car position n'est pas pris en compte - b_forme =BLOC(condition = "FORMAT != 'TABLEAU'", - fr="Données de mise en forme de la fonction (cf. doc)", - ), - LEGENDE =SIMP(statut='f',typ='TXM', - fr="Légende associée à la fonction" ), - STYLE =SIMP(statut='f',typ='I',val_min=0, - fr="Style de la ligne représentant la fonction",), - COULEUR =SIMP(statut='f',typ='I',val_min=0, - fr="Couleur associée à la fonction",), - MARQUEUR =SIMP(statut='f',typ='I',val_min=0, - fr="Type du marqueur associé à la fonction",), - FREQ_MARQUEUR =SIMP(statut='f',typ='I',defaut=0, - fr="Fréquence d impression du marqueur associé à la fonction", ), - # fin bloc b_forme - TRI =SIMP(statut='f',typ='TXM',defaut="N", - fr="Choix du tri effectué sur les abscisses ou sur les ordonnées", - into=("N","X","Y","XY","YX") ), - ), - # Mise en page du tableau ou du graphique - b_tableau = BLOC(condition = "FORMAT == 'TABLEAU'", - fr="Mots-clés propres au format Tableau", - UNITE =SIMP(statut='o',typ='I',defaut=8, - fr="Unité logique définissant le fichier (fort.N) dans lequel on écrit"), - TITRE =SIMP(statut='f',typ='TXM', - fr="Titre associé au graphique" ), - SOUS_TITRE =SIMP(statut='f',typ='TXM', - fr="Sous-titre du graphique" ), - SEPARATEUR =SIMP(statut='f',typ='TXM',defaut=' ', - fr="Séparateur des colonnes du tableau (ex : ' ', ';'...)"), - COMMENTAIRE =SIMP(statut='f',typ='TXM',defaut='#', - fr="Caractère indiquant au traceur de fonction que la ligne peut etre ignorée"), - DEBUT_LIGNE =SIMP(statut='f',typ='TXM',defaut='', - fr="Caractère de debut de ligne"), - FIN_LIGNE =SIMP(statut='f',typ='TXM',defaut='\n', - fr="Caractère de fin de ligne"), - ), - b_graphique = BLOC(condition = "FORMAT != 'TABLEAU'", - fr="Mise en page du graphique", - TITRE =SIMP(statut='f',typ='TXM', - fr="Titre associé au graphique" ), - SOUS_TITRE =SIMP(statut='f',typ='TXM', - fr="Sous-titre du graphique" ), - BORNE_X =SIMP(statut='f',typ='R',min=2,max=2, - fr="Intervalles de variation des abscisses"), - BORNE_Y =SIMP(statut='f',typ='R',min=2,max=2, - fr="Intervalles de variation des ordonnées"), - ECHELLE_X =SIMP(statut='f',typ='TXM',defaut="LIN",into=("LIN","LOG"), - fr="Type d'échelle pour les abscisses" ), - ECHELLE_Y =SIMP(statut='f',typ='TXM',defaut="LIN",into=("LIN","LOG"), - fr="Type d'échelle pour les ordonnées" ), - GRILLE_X =SIMP(statut='f',typ='R',max=1,val_min=0., - fr="Pas du quadrillage vertical" ), - GRILLE_Y =SIMP(statut='f',typ='R',max=1,val_min=0., - fr="Pas du quadrillage horizontal" ), - LEGENDE_X =SIMP(statut='f',typ='TXM', - fr="Légende associée à l'axe des abscisses" ), - LEGENDE_Y =SIMP(statut='f',typ='TXM', - fr="Légende associée à l'axe des ordonnées" ), +REST_BASE_PHYS=OPER(nom="REST_BASE_PHYS",op= 75,sd_prod=rest_base_phys_prod, + fr="Restituer dans la base physique des résultats en coordonnées généralisées", + reentrant='n', + UIinfo={"groupes":("Matrices/vecteurs",)}, + regles=(UN_PARMI('RESU_GENE','RESU_PHYS','RESULTAT'), + EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST','TOUT_INST'), + EXCLUS('TOUT_INST','NUME_ORDRE','INST','LIST_INST','TOUT_ORDRE'), +# Doc U à revoir + EXCLUS('MULT_APPUI','CORR_STAT'), + EXCLUS('MULT_APPUI','NOEUD','GROUP_NO'), + EXCLUS('CORR_STAT','NOEUD','GROUP_NO'), + EXCLUS('NOEUD','GROUP_NO'), + EXCLUS('MACR_ELEM_DYNA','BASE_MODALE'), + PRESENT_PRESENT('RESULTAT','SQUELETTE'), + PRESENT_PRESENT('ACCE_MONO_APPUI','DIRECTION'),), + RESULTAT =SIMP(statut='f',typ=(evol_elas,evol_noli,dyna_trans,evol_char, + mode_meca,mode_stat_depl,base_modale) ), + + RESU_GENE =SIMP(statut='f',typ=(tran_gene,mode_gene,mode_cycl,harm_gene) ), + RESU_PHYS =SIMP(statut='f',typ=evol_noli ), + BASE_MODALE =SIMP(statut='f',typ=(base_modale,mode_meca) ), + NUME_DDL =SIMP(statut='f',typ=nume_ddl_sdaster ), + MACR_ELEM_DYNA =SIMP(statut='f',typ=macr_elem_dyna), + MODE_MECA =SIMP(statut='f',typ=mode_meca ), + TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), + NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), + TOUT_INST =SIMP(statut='f',typ='TXM',into=("OUI",) ), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), + LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), + FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), + LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("ABSOLU","RELATIF") ), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), + INTERPOL =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","LIN") ), + MULT_APPUI =SIMP(statut='f',typ='TXM',into=("OUI",) ), + CORR_STAT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=8,defaut="ACCE", + into=("DEPL","VITE","ACCE","ACCE_ABSOLU","EFGE_ELNO_DEPL","SIPO_ELNO_DEPL", + "SIGM_ELNO_DEPL","FORC_NODA",) ), + TOUT_CHAM =SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + + ACCE_MONO_APPUI =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + DIRECTION =SIMP(statut='f',typ='R',min=3,max=3 ), + + CYCLIQUE =FACT(statut='f',max='**', + NB_SECTEUR =SIMP(statut='f',typ='I',validators=NoRepeat(),max=1 ), + NUME_DIAMETRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max=1 ), + RESULTAT2 =SIMP(statut='f',typ=(evol_elas,evol_noli,dyna_trans,evol_char, + mode_meca,mode_stat_depl,base_modale) ), ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), + + SQUELETTE =SIMP(statut='f',typ=squelette ), + SOUS_STRUC =SIMP(statut='f',typ='TXM' ), + SECTEUR =SIMP(statut='f',typ='I',defaut= 1 ), + TITRE =SIMP(statut='f',typ='TXM',max='**' ), ) ; -#& MODIF COMMANDE DATE 09/02/2007 AUTEUR MARKOVIC D.MARKOVIC +#& MODIF COMMANDE DATE 10/10/2006 AUTEUR MCOURTOI M.COURTOIS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== +REST_SPEC_PHYS=OPER(nom="REST_SPEC_PHYS",op= 148,sd_prod=table_fonction, + reentrant='n', + fr="Calculer la réponse d'une structure dans la base physique", + UIinfo={"groupes":("Matrices/vecteurs",)}, + regles=(AU_MOINS_UN('BASE_ELAS_FLUI','MODE_MECA'),), + BASE_ELAS_FLUI =SIMP(statut='f',typ=melasflu_sdaster ), + MODE_MECA =SIMP(statut='f',typ=mode_meca ), + BANDE =SIMP(statut='f',typ='R',min=2,validators=NoRepeat(),max=2 ), + NUME_ORDRE =SIMP(statut='f',typ='I' ,validators=NoRepeat(),max='**' ), + INTE_SPEC_GENE =SIMP(statut='o',typ=table_fonction), + NOEUD =SIMP(statut='o',typ=no ,max='**'), + MAILLE =SIMP(statut='f',typ=ma ,max='**'), + NOM_CMP =SIMP(statut='o',typ='TXM',max='**'), + NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=7, + into=("DEPL","VITE","ACCE","EFGE_ELNO_DEPL", + "SIPO_ELNO_DEPL","SIGM_ELNO_DEPL","FORC_NODA") ), + MODE_STAT =SIMP(statut='f',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc), ), + EXCIT =FACT(statut='f', + NOEUD =SIMP(statut='o',typ=no ,max='**'), + NOM_CMP =SIMP(statut='o',typ='TXM',max='**'), + ), + MOUVEMENT =SIMP(statut='f',typ='TXM',defaut="ABSOLU",into=("RELATIF","ABSOLU","DIFFERENTIEL") ), + OPTION =SIMP(statut='f',typ='TXM',defaut="DIAG_DIAG", + into=("DIAG_TOUT","DIAG_DIAG","TOUT_TOUT","TOUT_DIAG") ), + TITRE =SIMP(statut='f',typ='TXM',max='**' ), +) ; +#& MODIF COMMANDE DATE 23/04/2007 AUTEUR PROIX J-M.PROIX +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2006 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# -*- coding: iso-8859-1 -*- + +from Macro.simu_point_mat_ops import simu_point_mat_ops + +SIMU_POINT_MAT=MACRO(nom="SIMU_POINT_MAT", op=simu_point_mat_ops,sd_prod=table_sdaster, + UIinfo={"groupes":("Résolution",)}, + fr="Calcul de l'évolution mécanique, en quasi-statique," + +" d'un point matériel en non linéaire", + COMP_INCR =C_COMP_INCR(), + COMP_ELAS =FACT(statut='f',max='**', + RESI_INTE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-6), + ITER_INTE_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), + RELATION =SIMP(statut='o',typ='TXM',defaut="ELAS", + into=("ELAS","ELAS_VMIS_LINE","ELAS_VMIS_TRAC", + "ELAS_POUTRE_GR","CABLE","ELAS_HYPER")), + ELAS =SIMP(statut='c',typ='I',defaut=1,into=(1,)), + ELAS_VMIS_TRAC =SIMP(statut='c',typ='I',defaut=1,into=(1,)), + ELAS_VMIS_LINE =SIMP(statut='c',typ='I',defaut=1,into=(1,)), + ELAS_HYPER =SIMP(statut='c',typ='I',defaut=1,into=(1,)), + DEFORMATION =SIMP(statut='f',typ='TXM',defaut="PETIT" ,into=("PETIT","GREEN","GREEN_GR",) ), + ), + MATER =SIMP(statut='o',typ=mater_sdaster,max=30), + INCREMENT =FACT(statut='o', + LIST_INST =SIMP(statut='o',typ=listr8_sdaster), + NUME_INST_INIT =SIMP(statut='f',typ='I'), + INST_INIT =SIMP(statut='f',typ='R'), + NUME_INST_FIN =SIMP(statut='f',typ='I'), + INST_FIN =SIMP(statut='f',typ='R'), + PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), + # DEBUT DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS + SUBD_METHODE =SIMP( statut='f',typ='TXM', + into =("AUCUNE","UNIFORME","EXTRAPOLE"), + defaut="AUCUNE", + fr="Méthode de subdivision des pas de temps en cas de non-convergence" + ), + b_subd_unif=BLOC(condition = "SUBD_METHODE == 'UNIFORME'", + regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), + SUBD_COEF_PAS_1=SIMP(statut='f',typ='R',defaut=1.0,val_min=0.0, + fr="Coefficient multiplicateur de la 1ère subdivision"), + SUBD_PAS =SIMP(statut='f',typ='I',defaut=4,val_min=2, + fr="Nombre de subdivision d'un pas de temps"), + SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, + fr="Nombre maximum de niveau de subdivision d'un pas de temps"), + SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, + fr="Pas de temps en dessous duquel on ne subdivise plus"), + ), + b_subd_extr=BLOC(condition = "SUBD_METHODE == 'EXTRAPOLE'", + regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), + SUBD_OPTION =SIMP(statut='f',typ='TXM', + into =("IGNORE_PREMIERES","GARDE_DERNIERES",), + defaut="IGNORE_PREMIERES", + fr="Technique d'extrapolation : les 1ere itérations sont ignorées ou les dernières sont gardées"), + SUBD_ITER_IGNO =SIMP(statut='c',typ='I',defaut=3,val_min=0, + fr="Les n premières itérations sont ignorées pour l'extrapolation"), + SUBD_ITER_FIN =SIMP(statut='c',typ='I',defaut=8,val_min=3, + fr="Seules les n dernières itérations sont prises pour l'extrapolation"), + SUBD_PAS =SIMP(statut='c',typ='I',defaut=4,val_min=2, + fr="Nombre de subdivision d'un pas de temps en cas divergence"), + SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, + fr="Nombre maximum de niveau de subdivision d'un pas de temps"), + SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, + fr="Pas de temps en dessous duquel on ne subdivise plus"), + SUBD_ITER_PLUS =SIMP(statut='c',typ='I',defaut=50,val_min=20, + fr="% itération autorisée en plus"), + ), + # FIN DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS + ), + NEWTON =FACT(statut='d', + PREDICTION =SIMP(statut='f',typ='TXM',into=("TANGENTE","ELASTIQUE","EXTRAPOL") ), + MATRICE =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE") ), + PAS_MINI_ELAS =SIMP(statut='f',typ='R',defaut=0.0E+0), + REAC_ITER =SIMP(statut='f',typ='I',defaut=1), + REAC_ITER_ELAS =SIMP(statut='f',typ='I',defaut=0), + ), + RECH_LINEAIRE =FACT(statut='f', + RESI_LINE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-1 ), + ITER_LINE_MAXI =SIMP(statut='f',typ='I',defaut= 3), + ITER_LINE_CRIT =SIMP(statut='f',typ='I',defaut= 20), + PAS_MINI_CRIT =SIMP(statut='f',typ='R',defaut=0.0E+0), + RHO_MIN =SIMP(statut='f',typ='R',defaut=1.0E-2), + RHO_MAX =SIMP(statut='f',typ='R',defaut=1.0E+1), + RHO_EXCL =SIMP(statut='f',typ='R',defaut=0.9E-2,val_min=0.), + ), + CONVERGENCE =FACT(statut='d', + regles=(PRESENT_ABSENT('RESI_REFE_RELA','RESI_GLOB_MAXI','RESI_GLOB_RELA'),), + SIGM_REFE =SIMP(statut='f',typ='R'), + EPSI_REFE =SIMP(statut='f',typ='R'), + RESI_REFE_RELA =SIMP(statut='f',typ='R'), + RESI_GLOB_MAXI =SIMP(statut='f',typ='R'), + RESI_GLOB_RELA =SIMP(statut='f',typ='R'), + ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut=50), + ITER_GLOB_ELAS =SIMP(statut='f',typ='I',defaut=25), + ARRET =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), + ), + SUIVI_DDL = FACT(statut='f',max=4, + NUME_SUIVI =SIMP(statut='o',typ='I' ,min=1,max=4), + NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=1, + into=("DEPL","SIEF_ELGA","VARI_ELGA",)), + NOM_CMP =SIMP(statut='o',typ='TXM',max=1 ), + ), + ARCHIVAGE =FACT(statut='f', + regles=(EXCLUS('PAS_ARCH','LIST_INST','INST'), + EXCLUS('ARCH_ETAT_INIT','NUME_INIT'), ), + LIST_INST =SIMP(statut='f',typ=(listr8_sdaster) ), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), + PAS_ARCH =SIMP(statut='f',typ='I' ), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3), + ARCH_ETAT_INIT =SIMP(statut='f',typ='TXM',into=("OUI",)), + NUME_INIT =SIMP(statut='f',typ='I'), + DETR_NUME_SUIV =SIMP(statut='f',typ='TXM',into=("OUI",)), + CHAM_EXCLU =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**', + into=("DEPL","SIEF_ELGA","VARI_ELGA","VARI_NON_LOCAL","LANL_ELGA")), + ), + MODELISATION =SIMP(statut='f',typ='TXM',defaut="3D",validators=NoRepeat(),max=1, + into=("3D","C_PLAN","D_PLAN",)), + b_3D = BLOC(condition="MODELISATION == '3D'", + fr="Trajets de chargement en 3D", + SIGM_IMPOSE=FACT(statut='f', + SIXX = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + SIYY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + SIZZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + SIXY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + SIXZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + SIYZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + ), + EPSI_IMPOSE=FACT(statut='f', + EPXX = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + EPYY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + EPZZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + EPXY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + EPXZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + EPYZ = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + ), + ), + + b_2D = BLOC(condition="MODELISATION != '3D'", + fr="Trajets de chargement en 2D", + + SIGM_IMPOSE=FACT(statut='f', + SIXX = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + SIYY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + SIXY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + ), + EPSI_IMPOSE=FACT(statut='f', + EPXX = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + EPYY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + EPXY = SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), + ), + ), + + b_3Dini = BLOC(condition="MODELISATION == '3D'", + fr="Etat initial en 3D", + SIGM_INIT=FACT(statut='f', + SIXX = SIMP(statut='f',typ='R',max=1,defaut=0.0E+0), + SIYY = SIMP(statut='f',typ='R',max=1,defaut=0.0E+0), + SIZZ = SIMP(statut='f',typ='R',max=1,defaut=0.0E+0), + SIXY = SIMP(statut='f',typ='R',max=1,defaut=0.0E+0), + SIXZ = SIMP(statut='f',typ='R',max=1,defaut=0.0E+0), + SIYZ = SIMP(statut='f',typ='R',max=1,defaut=0.0E+0), + ), + EPSI_INIT=FACT(statut='f', + EPXX = SIMP(statut='o',typ='R',max=1), + EPYY = SIMP(statut='o',typ='R',max=1), + EPZZ = SIMP(statut='o',typ='R',max=1), + EPXY = SIMP(statut='o',typ='R',max=1), + EPXZ = SIMP(statut='o',typ='R',max=1), + EPYZ = SIMP(statut='o',typ='R',max=1), + ), + VARI_INIT=FACT(statut='f', + VALE = SIMP(statut='o',typ='R',max='**'), + ), + ), + + b_2Dini = BLOC(condition="MODELISATION != '3D'", + fr="Etat initial en 2D", + + SIGM_INIT=FACT(statut='f', + SIXX = SIMP(statut='f',typ='R',max=1,defaut=0.0E+0), + SIYY = SIMP(statut='f',typ='R',max=1,defaut=0.0E+0), + SIXY = SIMP(statut='f',typ='R',max=1,defaut=0.0E+0), + ), + EPSI_INIT=FACT(statut='f', + EPXX = SIMP(statut='o',typ='R',max=1), + EPYY = SIMP(statut='o',typ='R',max=1), + EPXY = SIMP(statut='o',typ='R',max=1), + ), + VARI_INIT=FACT(statut='f', + VALE = SIMP(statut='o',typ='R',max='**'), + ), + ), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), +) -MODI_MODELE_XFEM=OPER(nom="MODI_MODELE_XFEM",op= 113,sd_prod=modele_sdaster,docu="U4.44.12-e",reentrant='f', - UIinfo={"groupes":("Modélisation",)}, - fr="Engendrer ou enrichir une structure de donnees en affectant les cham_gd associes", - - MODELE_IN =SIMP(statut='o',typ=modele_sdaster,min=1,max=1,), - FISSURE =SIMP(statut='o',typ=fiss_xfem,min=1,max=100,), - CRITERE =SIMP(statut='f',typ='R',defaut=1.67E-8), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2,)), -) ; -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2005 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -POST_CHAM_XFEM=OPER(nom="POST_CHAM_XFEM",op= 196,sd_prod=resultat_sdaster, - reentrant='n',UIinfo={"groupes":("Post traitements",)}, - fr="Calcul des champs DEPL et SIEF_ELGA sur le maillage fissuré", - MAILLAGE = SIMP(statut='o',typ=maillage_sdaster), - MODELE = SIMP(statut='o',typ=modele_sdaster,), - RESULTAT = SIMP(statut='o',typ=resultat_sdaster), - NOM_CHAM = SIMP(statut='o',typ='TXM',into=("DEPL","SIEF_ELGA"),) -); -#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +#& MODIF COMMANDE DATE 15/05/2006 AUTEUR ASSIRE A.ASSIRE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2005 EDF R&D WWW.CODE-ASTER.ORG +# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR @@ -23458,277 +23019,419 @@ POST_CHAM_XFEM=OPER(nom="POST_CHAM_XFEM",op= 196,sd_prod=resultat_sdaster, # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -POST_MAIL_XFEM=OPER(nom="POST_MAIL_XFEM",op= 187,sd_prod=maillage_sdaster, - reentrant='n',UIinfo={"groupes":("Maillage",)}, - fr="Crée un maillage se conformant à la fissure pour le post-traitement des éléments XFEM", - MODELE = SIMP(statut='o',typ=modele_sdaster), - TITRE = SIMP(statut='f',typ='TXM',max='**'), -); -#& MODIF COMMANDE DATE 24/10/2006 AUTEUR DURAND C.DURAND + +from Macro.stanley_ops import stanley_ops + +STANLEY=MACRO(nom="STANLEY",op=stanley_ops,sd_prod=None, + reentrant='n', + UIinfo={"groupes":("Outils métier",)}, + fr="Outil de post-traitement interactif Stanley ", + RESULTAT =SIMP(statut='f',typ=(evol_elas,evol_noli,evol_ther,mode_meca,mode_stat,dyna_harmo,dyna_trans) ), + MODELE =SIMP(statut='f',typ=modele_sdaster), + CHAM_MATER =SIMP(statut='f',typ=cham_mater), + CARA_ELEM =SIMP(statut='f',typ=cara_elem), + DISPLAY =SIMP(statut='f',typ='TXM'), + UNITE_VALIDATION=SIMP(statut='c',typ='I',val_min=10,val_max=90, + fr="Unité logique définissant le fichier (fort.N) dans lequel on écrit les md5"), + +) ; +#& MODIF COMMANDE DATE 30/05/2007 AUTEUR ABBAS M.ABBAS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2005 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -from Macro.info_fonction_ops import info_fonction_ops -def info_fonction_prod(self,ECART_TYPE,RMS,NOCI_SEISME,MAX,NORME, **args): - if (RMS != None): return table_sdaster - if (MAX != None): return table_sdaster - if (NOCI_SEISME != None): return table_sdaster - if (ECART_TYPE != None): return table_sdaster - if (NORME != None): return table_sdaster - raise AsException("type de concept resultat non prevu") - -INFO_FONCTION=MACRO(nom="INFO_FONCTION",op=info_fonction_ops,sd_prod=info_fonction_prod - ,fr="Opérations mathématiques sur des concepts de type fonction, fonction_c ou nappe", - reentrant='n', - UIinfo={"groupes":("Fonction",)}, - regles=(UN_PARMI('MAX','RMS','NOCI_SEISME','NORME','ECART_TYPE',),), - RMS =FACT(statut='f',fr="Valeur RMS d'une fonction",max='**', - METHODE =SIMP(statut='f',typ='TXM',defaut="TRAPEZE",into=("SIMPSON","TRAPEZE") ), - FONCTION =SIMP(statut='o',typ=fonction_sdaster ), - INST_INIT =SIMP(statut='f',typ='R',fr="Instant initial définissant le début du signal" ), - INST_FIN =SIMP(statut='f',typ='R',fr="Instant final définissant la fin du signal" ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3,val_min=0.E+0 ), +# RESPONSABLE MABBAS M.ABBAS +STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, + fr="Calcul de l'évolution mécanique ou thermo-hydro-mécanique couplée, en quasi-statique," + +" d'une structure en non linéaire", + reentrant='f', + UIinfo={"groupes":("Résolution",)}, + regles=(AU_MOINS_UN('COMP_INCR','COMP_ELAS'), + CONCEPT_SENSIBLE('ENSEMBLE'),), + MODELE =SIMP(statut='o',typ=modele_sdaster), + CHAM_MATER =SIMP(statut='o',typ=cham_mater), + CARA_ELEM =SIMP(statut='f',typ=cara_elem), + EXCIT =FACT(statut='o',max='**', + CHARGE =SIMP(statut='o',typ=(char_meca,char_cine_meca)), + FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE_CSTE", + into=("FIXE_CSTE","FIXE_PILO","SUIV","DIDI")), ), - NOCI_SEISME =FACT(statut='f', - regles=(UN_PARMI('FONCTION','SPEC_OSCI',),), - FONCTION =SIMP(statut='f',typ=fonction_sdaster ), - SPEC_OSCI =SIMP(statut='f',typ=nappe_sdaster ), - b_option_f =BLOC(condition="""FONCTION !=None""", - OPTION =SIMP(statut='f',typ='TXM',defaut="TOUT",validators=NoRepeat(),max='**', - into=("INTE_ARIAS","POUV_DEST","INTE_SPEC","VITE_ABSO_CUMU", - "DUREE_PHAS_FORT","MAXI","ACCE_SUR_VITE","TOUT",), ), - b_amor =BLOC(condition="""OPTION=="TOUT" or OPTION=="INTE_SPEC" """, - AMOR_REDUIT =SIMP(statut='o',typ='R'), ),), - b_option_n =BLOC(condition="""SPEC_OSCI !=None""", - OPTION =SIMP(statut='f',typ='TXM',defaut="INTE_SPEC",into=("INTE_SPEC",), ), - NATURE =SIMP(statut='o',typ='TXM',into=("DEPL","VITE","ACCE") ), - AMOR_REDUIT =SIMP(statut='o',typ='R'), ), + SOUS_STRUC =FACT(statut='f',min=01,max='**', + regles=(UN_PARMI('TOUT','SUPER_MAILLE'),), + CAS_CHARGE =SIMP(statut='o',typ='TXM' ), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + SUPER_MAILLE=SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**',), + FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + ), + COMP_INCR =C_COMP_INCR(), + COMP_ELAS =FACT(statut='f',max='**', + RESI_INTE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-6), + ITER_INTE_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), + ITER_INTE_PAS =SIMP(statut='f',typ='I',defaut= 0 ), + RESO_INTE =SIMP(statut='f',typ='TXM',defaut="IMPLICITE", + into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")), + RELATION =SIMP(statut='o',typ='TXM',defaut="ELAS", + into=("ELAS","ELAS_VMIS_LINE","ELAS_VMIS_TRAC", + "ELAS_POUTRE_GR","CABLE","ELAS_HYPER")), + ELAS =SIMP(statut='c',typ='I',defaut=1,into=(1,)), + ELAS_VMIS_TRAC =SIMP(statut='c',typ='I',defaut=1,into=(1,)), + ELAS_VMIS_LINE =SIMP(statut='c',typ='I',defaut=1,into=(1,)), + ELAS_HYPER =SIMP(statut='c',typ='I',defaut=1,into=(1,)), + ELAS_POUTRE_GR =SIMP(statut='c',typ='I',defaut=3,into=(3,)), + CABLE =SIMP(statut='c',typ='I',defaut=1,into=(1,)), + DEFORMATION =SIMP(statut='f',typ='TXM',defaut="PETIT" ,into=("PETIT","GREEN","GREEN_GR",) ), + regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + ), + b_reuse =BLOC(condition = "reuse",fr="en mode concept reentrant : ETAT_INIT obligatoire", + ETAT_INIT =FACT(statut='o', + regles=(AU_MOINS_UN('EVOL_NOLI','DEPL','SIGM','VARI','VARI_NON_LOCAL',), + EXCLUS('EVOL_NOLI','DEPL',), + EXCLUS('EVOL_NOLI','SIGM',), + EXCLUS('EVOL_NOLI','VARI',), + EXCLUS('EVOL_NOLI','VARI_NON_LOCAL',), + EXCLUS('NUME_ORDRE','INST'), ), + DEPL =SIMP(statut='f',typ=cham_no_sdaster), + SIGM =SIMP(statut='f',typ=(cham_elem,carte_sdaster)), + VARI =SIMP(statut='f',typ=cham_elem), + VARI_NON_LOCAL =SIMP(statut='f',typ=cham_no_sdaster), + EVOL_NOLI =SIMP(statut='f',typ=evol_noli), + NUME_ORDRE =SIMP(statut='f',typ='I'), + INST =SIMP(statut='f',typ='R'), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + NUME_DIDI =SIMP(statut='f',typ='I'), + INST_ETAT_INIT =SIMP(statut='f',typ='R'), + ),), + b_not_reuse =BLOC(condition = "not reuse",fr="en mode concept non reentrant : ETAT_INIT facultatif", + ETAT_INIT =FACT(statut='f', + regles=(AU_MOINS_UN('EVOL_NOLI','DEPL','SIGM','VARI','VARI_NON_LOCAL',), + EXCLUS('EVOL_NOLI','DEPL',), + EXCLUS('EVOL_NOLI','SIGM',), + EXCLUS('EVOL_NOLI','VARI',), + EXCLUS('EVOL_NOLI','VARI_NON_LOCAL',), + EXCLUS('NUME_ORDRE','INST'), ), + DEPL =SIMP(statut='f',typ=cham_no_sdaster), + SIGM =SIMP(statut='f',typ=(cham_elem,carte_sdaster)), + VARI =SIMP(statut='f',typ=cham_elem), + VARI_NON_LOCAL =SIMP(statut='f',typ=cham_no_sdaster), + EVOL_NOLI =SIMP(statut='f',typ=evol_noli), + NUME_ORDRE =SIMP(statut='f',typ='I'), + INST =SIMP(statut='f',typ='R'), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + NUME_DIDI =SIMP(statut='f',typ='I'), + INST_ETAT_INIT =SIMP(statut='f',typ='R'), + ),), + INCREMENT =FACT(statut='o', + regles=(EXCLUS('NUME_INST_INIT','INST_INIT'), + EXCLUS('NUME_INST_FIN','INST_FIN'),), + LIST_INST =SIMP(statut='o',typ=listr8_sdaster), + EVOLUTION =SIMP(statut='f',typ='TXM',defaut="CHRONOLOGIQUE", + into=("CHRONOLOGIQUE","RETROGRADE","SANS",) ), + NUME_INST_INIT =SIMP(statut='f',typ='I'), INST_INIT =SIMP(statut='f',typ='R'), + NUME_INST_FIN =SIMP(statut='f',typ='I'), INST_FIN =SIMP(statut='f',typ='R'), - COEF =SIMP(statut='f',typ='R',defaut= 0.E+0 ), - PESANTEUR =SIMP(statut='f',typ='R',defaut= 9.81E+0 ), - FREQ_INIT =SIMP(statut='f',typ='R',defaut= 4.E-1 ), - FREQ_FIN =SIMP(statut='f',typ='R',defaut= 10.E+0 ), - LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster ), - FREQ =SIMP(statut='f',typ='R',max='**'), - NORME =SIMP(statut='f',typ='R',defaut= 1.E+0 ), - BORNE_INF =SIMP(statut='f',typ='R',defaut= 0.05E+0 ), - BORNE_SUP =SIMP(statut='f',typ='R',defaut= 0.95E+0 ), - b_acce_reel =BLOC(condition="(INST_INIT != None)or(INST_FIN != None)or(FREQ_INIT != None)or(FREQ_FIN != None)", - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3,val_min=0.E+0), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), + # DEBUT DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS + SUBD_METHODE =SIMP( statut='f',typ='TXM', + into =("AUCUNE","UNIFORME","EXTRAPOLE"), + defaut="AUCUNE", + fr="Méthode de subdivision des pas de temps en cas de non-convergence" + ), + b_subd_unif=BLOC(condition = "SUBD_METHODE == 'UNIFORME'", + regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), + SUBD_COEF_PAS_1=SIMP(statut='f',typ='R',defaut=1.0,val_min=0.0, + fr="Coefficient multiplicateur de la 1ère subdivision"), + SUBD_PAS =SIMP(statut='f',typ='I',defaut=4,val_min=2, + fr="Nombre de subdivision d'un pas de temps"), + SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, + fr="Nombre maximum de niveau de subdivision d'un pas de temps"), + SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, + fr="Pas de temps en dessous duquel on ne subdivise plus"), + ), + b_subd_extr=BLOC(condition = "SUBD_METHODE == 'EXTRAPOLE'", + regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), + SUBD_OPTION =SIMP(statut='f',typ='TXM', + into =("IGNORE_PREMIERES","GARDE_DERNIERES",), + defaut="IGNORE_PREMIERES", + fr="Technique d'extrapolation : les 1ere itérations sont ignorées ou les dernières sont gardées"), + SUBD_ITER_IGNO =SIMP(statut='c',typ='I',defaut=3,val_min=0, + fr="Les n premières itérations sont ignorées pour l'extrapolation"), + SUBD_ITER_FIN =SIMP(statut='c',typ='I',defaut=8,val_min=3, + fr="Seules les n dernières itérations sont prises pour l'extrapolation"), + SUBD_PAS =SIMP(statut='c',typ='I',defaut=4,val_min=2, + fr="Nombre de subdivision d'un pas de temps en cas divergence"), + SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, + fr="Nombre maximum de niveau de subdivision d'un pas de temps"), + SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, + fr="Pas de temps en dessous duquel on ne subdivise plus"), + SUBD_ITER_PLUS =SIMP(statut='c',typ='I',defaut=50,val_min=20, + fr="% itération autorisée en plus"), ), + # FIN DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS + OPTI_LIST_INST =SIMP(statut='f',typ='TXM',into=("INCR_MAXI",),), + NOM_CHAM =SIMP(statut='f',typ='TXM',), + NOM_CMP =SIMP(statut='f',typ='TXM',), + VALE =SIMP(statut='f',typ='R'), ), - MAX =FACT(statut='f',fr="Extrémas locaux d'une fonction", - FONCTION =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster),max='**' ), + NEWTON =FACT(statut='d', + REAC_INCR =SIMP(statut='f',typ='I',defaut= 1 ), + PREDICTION =SIMP(statut='f',typ='TXM',into=("DEPL_CALCULE","TANGENTE","ELASTIQUE","EXTRAPOL") ), + MATRICE =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE") ), + PAS_MINI_ELAS =SIMP(statut='f',typ='R',defaut=0.0E+0), + REAC_ITER =SIMP(statut='f',typ='I',defaut=0), + REAC_ITER_ELAS =SIMP(statut='f',typ='I',defaut=0), + EVOL_NOLI =SIMP(statut='f',typ=evol_noli), ), - NORME =FACT(statut='f',fr="Norme L2 d'une fonction", - FONCTION =SIMP(statut='o', typ=nappe_sdaster), - ), - ECART_TYPE =FACT(statut='f',fr="Ecart-type d'une fonction", - METHODE =SIMP(statut='f',typ='TXM',defaut="TRAPEZE",into=("SIMPSON","TRAPEZE") ), - FONCTION =SIMP(statut='o',typ=fonction_sdaster), - INST_INIT =SIMP(statut='f',typ='R',fr="Instant initial définissant le début du signal" ), - INST_FIN =SIMP(statut='f',typ='R',fr="Instant final définissant la fin du signal" ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3,val_min=0.E+0 ), - ), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), -) -#& MODIF COMMANDE DATE 10/10/2006 AUTEUR MCOURTOI M.COURTOIS -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2005 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# -*- coding: iso-8859-1 -*- - -# RESPONSABLE MCOURTOI M.COURTOIS - -def calc_table_prod(self, TABLE, ACTION, **kargs): - """Typage du concept produit. - """ - l_typ = [AsType(TABLE),] - for mcf in ACTION: - dmc = mcf.cree_dict_valeurs(mcf.mc_liste) - if dmc.get('TABLE') != None: - l_typ.append(AsType(dmc['TABLE'])) - # une table_fonction étant une table - if table_fonction in l_typ: - return table_fonction - else: - return table_sdaster - - -from Macro.calc_table_ops import calc_table_ops - -CALC_TABLE=MACRO(nom="CALC_TABLE",op=calc_table_ops, sd_prod=calc_table_prod, - fr="Opérations sur une table", - reentrant='f', - regles=(DERIVABLE('TABLE'),), - TABLE = SIMP(statut='o',typ=table_sdaster), - ACTION = FACT(statut='o', max='**', - fr = "Suite des opérations à effectuer sur la table", - OPERATION = SIMP(statut='o', typ='TXM', - into=('FILTRE', 'EXTR', 'RENOMME', 'TRI', 'COMB', 'OPER',)), - - b_filtre = BLOC(condition="OPERATION == 'FILTRE'", - fr="Sélectionne les lignes de la table vérifiant un critère", - NOM_PARA = SIMP(statut='o',typ='TXM'), - CRIT_COMP = SIMP(statut='f',typ='TXM',defaut="EQ", - into=('EQ','NE','GT','LT','GE','LE','REGEXP', - 'VIDE','NON_VIDE','MAXI','ABS_MAXI','MINI','ABS_MINI'),), - b_vale = BLOC(condition = "(CRIT_COMP in ('EQ','NE','GT','LT','GE','LE'))", - regles=(UN_PARMI('VALE','VALE_I','VALE_K','VALE_C',),), - VALE = SIMP(statut='f',typ='R'), - VALE_I = SIMP(statut='f',typ='I'), - VALE_C = SIMP(statut='f',typ='C'), - VALE_K = SIMP(statut='f',typ='TXM'), + RECH_LINEAIRE =FACT(statut='f', + METHODE =SIMP(statut='f',typ='TXM',defaut="CORDE",into=("CORDE","MIXTE") ), + RESI_LINE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-1 ), + ITER_LINE_MAXI =SIMP(statut='f',typ='I',defaut= 3), + ITER_LINE_CRIT =SIMP(statut='f',typ='I',defaut= 20), + PAS_MINI_CRIT =SIMP(statut='f',typ='R',defaut=0.0E+0), + RHO_MIN =SIMP(statut='f',typ='R',defaut=1.0E-2), + RHO_MAX =SIMP(statut='f',typ='R',defaut=1.0E+1), + RHO_EXCL =SIMP(statut='f',typ='R',defaut=0.9E-2,val_min=0.), ), - b_regexp = BLOC(condition = "CRIT_COMP == 'REGEXP'", - VALE_K = SIMP(statut='f',typ='TXM'), + PILOTAGE =FACT(statut='f', + regles=(EXCLUS('NOEUD','GROUP_NO'),PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), + TYPE =SIMP(statut='o',typ='TXM',into=("DDL_IMPO","LONG_ARC","PRED_ELAS","PRED_ELAS_INCR","DEFORMATION","ANA_LIM") ), + COEF_MULT =SIMP(statut='f',typ='R',defaut= 1.0E+0), + ETA_PILO_MAX =SIMP(statut='f',typ='R'), + ETA_PILO_MIN =SIMP(statut='f',typ='R'), + ETA_PILO_R_MAX =SIMP(statut='f',typ='R'), + ETA_PILO_R_MIN =SIMP(statut='f',typ='R'), + PROJ_BORNES =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), + SELECTION =SIMP(statut='f',typ='TXM',defaut="NORM_INCR_DEPL", into=("RESIDU","ANGL_INCR_DEPL","NORM_INCR_DEPL") ), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_MA =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno ,validators=NoRepeat(),max='**'), + NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), + ), + CONVERGENCE =FACT(statut='d', + regles=(PRESENT_ABSENT('RESI_REFE_RELA','RESI_GLOB_MAXI','RESI_GLOB_RELA'),), + b_refe_rela =BLOC(condition = "RESI_REFE_RELA != None", + regles=(AU_MOINS_UN('SIGM_REFE','EPSI_REFE','FLUX_THER_REFE', + 'FLUX_HYD1_REFE','FLUX_HYD2_REFE','VARI_REFE'),), + SIGM_REFE =SIMP(statut='f',typ='R'), + EPSI_REFE =SIMP(statut='f',typ='R'), + FLUX_THER_REFE =SIMP(statut='f',typ='R'), + FLUX_HYD1_REFE =SIMP(statut='f',typ='R'), + FLUX_HYD2_REFE =SIMP(statut='f',typ='R'), + VARI_REFE =SIMP(statut='f',typ='R'), + ), + + + + RESI_REFE_RELA =SIMP(statut='f',typ='R'), + RESI_GLOB_MAXI =SIMP(statut='f',typ='R'), + RESI_GLOB_RELA =SIMP(statut='f',typ='R'), + ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut=10), + ITER_GLOB_ELAS =SIMP(statut='f',typ='I',defaut=25), + ARRET =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), ), - b_crit = BLOC(condition = "CRIT_COMP in ('EQ','NE')", - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3 ), + SOLVEUR =FACT(statut='d', + METHODE=SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC","MUMPS","FETI") ), + b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale", + RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), + ), + b_ldlt =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT", + RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), + ), + b_ldlt_mult =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ", + fr="Paramètres relatifs à la non inversibilité de la matrice à factorise", + NPREC =SIMP(statut='f',typ='I',defaut= 8 ), + STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON","DECOUPE") ), + ), + b_gcpc =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué", + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ), + NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), + RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), + RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), + NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), + ), + b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", + TYPE_RESOL =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("NONSYM","SYMGEN","SYMDEF","AUTO")), + SCALING =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("SANS","AUTO")), + RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), + ELIM_LAGR2 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), + PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=10,), + RESI_RELA =SIMP(statut='f',typ='R',defaut=-1.0,), + ), + b_feti =BLOC(condition = "METHODE == 'FETI' ",fr="Paramètres de la méthode FETI 1", + PARTITION =SIMP(statut='o',typ=sd_feti_sdaster), + RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), + RESI_RELA =SIMP(statut='f',typ='R',defaut=1.E-6,val_min=0.), + NMAX_ITER =SIMP(statut='f',typ='I',defaut=0,val_min=0), + REAC_RESI =SIMP(statut='f',typ='I',defaut=0,val_min=0), + TYPE_REORTHO_DD =SIMP(statut='f',typ='TXM',defaut="GSM",into=("SANS","GS","GSM","IGSM") ), + NB_REORTHO_DD =SIMP(statut='f',typ='I',defaut=0,val_min=0), + NB_REORTHO_INST =SIMP(statut='f',typ='I',defaut=0,val_min=0), + PRE_COND =SIMP(statut='f',typ='TXM',defaut="LUMPE",into=("LUMPE","SANS") ), + SCALING =SIMP(statut='f',typ='TXM',defaut="MULT",into=("SANS","MULT") ), + VERIF_SDFETI =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + TEST_CONTINU =SIMP(statut='f',typ='R',defaut=1.E-8,val_min=0.), + INFO_FETI =SIMP(statut='f',typ='TXM',defaut='FFFFFFFFFFFFFFFFFFFFFFFF'), + STOCKAGE_GI =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON","CAL") ), + NB_SD_PROC0 =SIMP(statut='f',typ='I',defaut=0,val_min=0), + ACCELERATION_SM =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + ), + SYME =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + ), + ARCHIVAGE =FACT(statut='f', + regles=(EXCLUS('PAS_ARCH','LIST_INST','INST'), + EXCLUS('ARCH_ETAT_INIT','NUME_INIT'), ), + LIST_INST =SIMP(statut='f',typ=(listr8_sdaster) ), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), + PAS_ARCH =SIMP(statut='f',typ='I' ), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3), + ARCH_ETAT_INIT =SIMP(statut='f',typ='TXM',into=("OUI",)), + NUME_INIT =SIMP(statut='f',typ='I'), + DETR_NUME_SUIV =SIMP(statut='f',typ='TXM',into=("OUI",)), + CHAM_EXCLU =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',into=("DEPL","SIEF_ELGA","VARI_ELGA", + "VARI_NON_LOCAL","LANL_ELGA")), + ), + OBSERVATION =FACT(statut='f',max='**', + NOM_CMP =SIMP(statut='o',typ='TXM',max='**' ), + SUIVI_DDL =SIMP(statut='f',typ='TXM',defaut="NON",max=1,into=("OUI","NON")), + b_suivi =BLOC(condition = "SUIVI_DDL == 'OUI' ", + regles=(UN_PARMI('NOEUD','MAILLE','GROUP_NO','GROUP_MA','VALE_MIN','VALE_MAX'), + PRESENT_PRESENT('MAILLE','POINT'),), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + POINT =SIMP(statut='f',typ='I' ,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=1, + into=("DEPL","VITE","ACCE","SIEF_ELGA", + "VARI_ELGA","FORC_NODA","DEPL_ABSOLU","VITE_ABSOLU","ACCE_ABSOLU",)), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + NUME_SUIVI =SIMP(statut='o',typ='I' ,min=1,max=4), + VALE_MAX =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=1,into=("OUI",) ), + VALE_MIN =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=1,into=("OUI",) ),), + b_non_suivi =BLOC(condition = "SUIVI_DDL == 'NON' ", + regles=(UN_PARMI('NOEUD','GROUP_NO','MAILLE'),PRESENT_PRESENT('MAILLE','POINT'),), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + POINT =SIMP(statut='f',typ='I' ,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=("DEPL","VITE","ACCE","SIEF_ELGA", + "VARI_ELGA","DEPL_ABSOLU","VITE_ABSOLU","ACCE_ABSOLU","VALE_CONT")), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), + LIST_INST =SIMP(statut='f',typ=listr8_sdaster), + PAS_OBSE =SIMP(statut='f',typ='I'), + LIST_ARCH =SIMP(statut='f',typ=listis_sdaster), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),), ), - ), - - b_extr = BLOC(condition="OPERATION == 'EXTR'", - fr="Extrait une ou plusieurs colonnes de la table", - NOM_PARA = SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', - fr="Noms des colonnes à extraire"), - ), - - b_renomme = BLOC(condition="OPERATION == 'RENOMME'", - fr="Renomme un ou plusieurs paramètres de la table", - NOM_PARA = SIMP(statut='o', typ='TXM', validators=NoRepeat(), min=2, max=2, - fr="Couple (ancien nom du paramètre, nouveau nom du paramètre)",), - ), - - b_tri = BLOC(condition="OPERATION == 'TRI'", - fr="Ordonne les lignes de la table selon les valeurs d'un ou plusieurs paramètres", - NOM_PARA = SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**'), - ORDRE = SIMP(statut='f',typ='TXM',defaut="CROISSANT", - into=("CROISSANT","DECROISSANT") ), - ), - - b_comb = BLOC(condition="OPERATION == 'COMB'", - fr="Combine deux tables ayant éventuellement des paramètres communs", - TABLE = SIMP(statut='o',typ=table_sdaster, - fr="Table dont les colonnes vont venir surcharger la table initiale"), - NOM_PARA = SIMP(statut='f',typ='TXM',max='**', - fr="Noms des paramètres dont les valeurs doivent etre identiques dans les deux tables "\ - "pour que les colonnes soient combinées"), - ), - - b_oper = BLOC(condition="OPERATION == 'OPER'", - fr="Applique une formule dans laquelle les variables sont les paramètres de la table", - FORMULE = SIMP(statut='o',typ=formule, - fr="Formule à appliquer aux colonnes de la table"), - NOM_PARA = SIMP(statut='o',typ='TXM', - fr="Nom de la nouvelle colonne"), - ), - ), - - SENSIBILITE = SIMP(statut='f',typ=(para_sensi,theta_geom),max=1, - fr="Paramètre de sensibilité", - ang="Sensitivity parameter"), - TITRE = SIMP(statut='f',typ='TXM',max='**', - fr="Titre de la table produite"), - INFO = SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), -) -#& MODIF COMMANDE DATE 26/03/2007 AUTEUR ASSIRE A.ASSIRE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2005 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE ASSIRE A.ASSIRE -DEFI_PART_PA_OPS=PROC(nom="DEFI_PART_PA_OPS",op=29, - fr="Creation partitionnement en sous-domaines pour FETI", - docu="U4.00.00", - UIinfo={"groupes":("Résolution",)}, - MAILLAGE =SIMP(statut='o',typ=(maillage_sdaster,squelette) ), - MODELE =SIMP(statut='f',typ=(modele_sdaster)), - NB_PART =SIMP(statut='o',typ='I',), + AFFICHAGE = FACT(statut='f',max=16, - # Methode de partitionnement - METHODE =SIMP(statut='f',typ='TXM',into=("PMETIS","SCOTCH","KMETIS",), defaut="SCOTCH" ), - - LOGICIEL =SIMP(statut='f',typ='TXM'), + UNITE = SIMP(statut='f',typ='I',val_min=1), - # Corrige les problemes possibles de non-connexite des sous-domaines - CORRECTION_CONNEX =SIMP(statut='f',typ='TXM',defaut='NON',into=('OUI','NON')), + LONG_R = SIMP(statut='f',typ='I',defaut=12,val_min=1,val_max=12), + PREC_R = SIMP(statut='f',typ='I',defaut=5, val_min=1,val_max=8), + LONG_I = SIMP(statut='f',typ='I',defaut=6, val_min=1,val_max=12), - # Permet de grouper des mailles dans un meme sous-doamine - GROUPAGE =FACT(statut='f',max='**', - GROUP_MA =SIMP(statut='o',typ=grma,), - ), - # Permet d'appliquer des poids sur certaines mailles - POIDS_MAILLES =FACT(statut='f',max='**', - GROUP_MA =SIMP(statut='o',typ=grma,), - POIDS =SIMP(statut='f',typ='I'), + NOM_COLONNE = SIMP(statut='o',typ='TXM',defaut="STANDARD", + into=("STANDARD","MINIMUM", + "ITER_NEWT", + "INCR_TPS", + "RESI_RELA","RELA_NOEU", + "RESI_MAXI","MAXI_NOEU", + "RESI_REFE","REFE_NOEU", + "RELI_ITER","RELI_COEF", + "PILO_PARA", + "LAGR_ECAR","LAGR_INCR","LAGR_ITER", + "MATR_ASSE", + "ITER_DEBO", + "CTCD_ITER","CTCD_INFO","CTCD_GEOM","CTCD_NOEU", + "CTCC_GEOM","CTCC_FROT","CTCC_CONT", + "SUIV_1","SUIV_2","SUIV_3","SUIV_4","ITER_FETI", + ), + ), + b_residu = BLOC(condition = " NOM_COLONNE == 'RESI_RELA' or \ + NOM_COLONNE == 'RESI_MAXI' or\ + NOM_COLONNE == 'RESI_REFE' or\ + NOM_COLONNE == 'CTCD_GEOM' or\ + NOM_COLONNE == 'STANDARD' ", + INFO_RESIDU = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), ), - # Prefixe pour le nom des group_ma definissant les sous-domaines - NOM_GROUP_MA =SIMP(statut='f',typ='TXM',defaut='SD' ), + ), - # Traiter les mailles de bords (elles sont enlevees du graphe puis reinjectees) - TRAITER_BORDS =SIMP(statut='f',typ='TXM',defaut='OUI',into=('OUI','NON') ), - # Si le mot-clé suivant est renseigné, crée de nouveau group_ma a partir des bords - # Note : le calcul FETI sera impossible - b_traiter_bords =BLOC(condition="TRAITER_BORDS == 'OUI'", fr="Crée t on des nouveaux group_ma", - NOM_GROUP_MA_BORD =SIMP(statut='f',typ='TXM'), - ), - INFO =SIMP(statut='f',typ='I',into=(1, 2), defaut=1), + CRIT_FLAMB =FACT(statut='f',min=1,max=1, + NB_FREQ =SIMP(statut='f',typ='I',max=1,defaut=3), + CHAR_CRIT =SIMP(statut='f',typ='R',min=2,max=2,defaut=(-10.0,10), + fr="Valeur des deux charges critiques délimitant la bande de recherche en HPP"), + ), + SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', + fr="Liste des paramètres de sensibilité", + ang="List of sensitivity parameters"), + SOLV_NON_LOCAL =FACT(statut='f', + METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC","MUMPS") ), + b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale", + RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), + ), + b_ldlt =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT", + RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), + ), + b_ldlt_mult =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ", + fr="Paramètres relatifs à la non inversibilité de la matrice à factorise", + NPREC =SIMP(statut='f',typ='I',defaut= 8 ), + STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + ), + b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", + TYPE_RESOL =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("NONSYM","SYMGEN","SYMDEF","AUTO")), + SCALING =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("SANS","AUTO")), + RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), + ELIM_LAGR2 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), + PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=10,), + RESI_RELA =SIMP(statut='f',typ='R',defaut=-1.0,), + ), + b_gcpc =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué", + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ), + NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), + RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), + NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), + ), + EPS =SIMP(statut='f',typ='R',defaut= 0.E+0 ), + ), + LAGR_NON_LOCAL =FACT(statut='f', + ITER_DUAL_MAXI =SIMP(statut='f',typ='I',defaut= 50), + RESI_DUAL_ABSO =SIMP(statut='o',typ='R'), + RESI_PRIM_ABSO =SIMP(statut='o',typ='R'), + R =SIMP(statut='f',typ='R',defaut= 1000.), + ITER_PRIM_MAXI =SIMP(statut='f',typ='I',defaut= 10), + ), + INFO =SIMP(statut='f',typ='I',into=(1,2) ), + TITRE =SIMP(statut='f',typ='TXM',max='**' ), + ) -); -#& MODIF COMMANDE DATE 13/02/2006 AUTEUR DURAND C.DURAND +#& MODIF COMMANDE DATE 22/05/2006 AUTEUR MCOURTOI M.COURTOIS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2005 EDF R&D WWW.CODE-ASTER.ORG +# COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR @@ -23743,309 +23446,628 @@ DEFI_PART_PA_OPS=PROC(nom="DEFI_PART_PA_OPS",op=29, # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# ====================================================================== -MAC_MODES=OPER(nom="MAC_MODES",op= 141,sd_prod=table_sdaster, - fr="Normalisation de modes propres", - reentrant='n', - UIinfo={"groupes":("Résolution",)}, - BASE_1 =SIMP(statut='o',typ=(mode_meca,mode_flamb,base_modale) ), - BASE_2 =SIMP(statut='o',typ=(mode_meca,mode_flamb,base_modale) ), - MATR_ASSE =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_depl_c) ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), +# RESPONSABLE MCOURTOI M.COURTOIS + +from Macro.test_fichier_ops import test_fichier_ops + +TEST_FICHIER=MACRO(nom="TEST_FICHIER", op=test_fichier_ops, + UIinfo={"groupes":("Impression",)}, + fr="Tester la non régression de fichiers produits par des commandes aster", + FICHIER =SIMP(statut='o',typ='TXM',validators=LongStr(1,255)), + NB_CHIFFRE =SIMP(statut='o',typ='I',), # defaut=6 pas de defaut, il faut + EPSILON =SIMP(statut='o',typ='R',), # defaut=1.E-12 se poser la question ! + EXPR_IGNORE =SIMP(statut='f',typ='TXM',max='**', + fr="Liste d'expressions régulières permettant d'ignorer certaines lignes"), + VALE_K =SIMP(statut='o',typ='TXM' ), + REFERENCE =SIMP(statut='f',typ='TXM', + into=("ANALYTIQUE","SOURCE_EXTERNE","NON_REGRESSION","AUTRE_ASTER") ), + + b_version =BLOC(condition = "REFERENCE == 'NON_REGRESSION'", + VERSION =SIMP(statut='f',typ='TXM' ), + ), + + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), +) +#& MODIF COMMANDE DATE 17/10/2006 AUTEUR MCOURTOI M.COURTOIS +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE MCOURTOI M.COURTOIS +TEST_FONCTION=PROC(nom="TEST_FONCTION",op= 135, + fr="Extraction d'une valeur numérique ou d'un attribut de fonction pour comparaison à une valeur de référence", + UIinfo={"groupes":("Impression",)}, + TEST_NOOK =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + VALEUR =FACT(statut='f',max='**', + fr="Tester la valeur d une fonction ou d une nappe", + regles=(UN_PARMI('VALE_REFE','VALE_REFE_C',), + DERIVABLE('FONCTION'),), + FONCTION =SIMP(statut='o',typ=(fonction_sdaster,fonction_c,nappe_sdaster,formule) ), + SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom), + fr="Paramètre de sensibilité.", + ang="Sensitivity parameter"), + NOM_PARA =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=2), + VALE_PARA =SIMP(statut='o',typ='R' ,validators=NoRepeat(),max=2), + VALE_REFE =SIMP(statut='f',typ='R',max='**' ), + VALE_REFE_C =SIMP(statut='f',typ='C',max='**' ), + VALE_ABS =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + CRITERE =SIMP(statut='f',typ='TXM',fr="Critère de comparaison avec la solution de référence", + defaut="RELATIF",into=("RELATIF","ABSOLU") ), + PRECISION =SIMP(statut='f',typ='R',fr="Ecart maximal autorisé avec la solution de référence", + defaut= 1.E-3 ), + REFERENCE =SIMP(statut='f',typ='TXM', + into=("ANALYTIQUE","SOURCE_EXTERNE","NON_REGRESSION","AUTRE_ASTER") ), + b_version = BLOC (condition = "REFERENCE == 'NON_REGRESSION'", + VERSION =SIMP(statut='f',typ='TXM' ), + ), + ), + ATTRIBUT =FACT(statut='f',max='**', + fr="Tester la valeur d un attribut d une fonction ou d''une nappe", + FONCTION =SIMP(statut='o',typ=(fonction_sdaster,fonction_c,nappe_sdaster,formule) ), + PARA =SIMP(statut='f',typ='R' ), + CRIT_PARA =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + PREC_PARA =SIMP(statut='f',typ='R',defaut= 1.E-3 ), + ATTR =SIMP(statut='o',typ='TXM', + into=("NOM_PARA","NOM_RESU","PROL_DROITE","PROL_GAUCHE","INTERPOL", + "PROL_GAUCHE_FONC","PROL_DROITE_FONC","INTERPOL_FONC","NOM_PARA_FONC") ), + ATTR_REFE =SIMP(statut='o',typ='TXM' ), + REFERENCE =SIMP(statut='f',typ='TXM', + into=("ANALYTIQUE","SOURCE_EXTERNE","NON_REGRESSION","AUTRE_ASTER") ), + b_version =BLOC(condition = "REFERENCE == 'NON_REGRESSION'", + VERSION =SIMP(statut='f',typ='TXM' ), + ), + ), + TABL_INTSP =FACT(statut='f',max='**', + fr="Tester la valeur d une fonction contenue dans une table interspectrale", + regles=(UN_PARMI('NUME_ORDRE_I','NOEUD_I'),), + INTE_SPEC =SIMP(statut='o',typ=table_fonction), + NOEUD_I =SIMP(statut='f',typ=no), + NUME_ORDRE_I =SIMP(statut='f',typ='I' ), + b_nume_ordre_i = BLOC (condition = "NUME_ORDRE_I != None", + NUME_ORDRE_J =SIMP(statut='o',typ='I' ), + ), + b_noeud_i = BLOC (condition = "NOEUD_I != None", + NOEUD_J =SIMP(statut='o',typ=no), + NOM_CMP_I =SIMP(statut='o',typ='TXM' ), + NOM_CMP_J =SIMP(statut='o',typ='TXM' ), + ), + NUME_VITE_FLUI =SIMP(statut='f',typ='I' ), + VALE_PARA =SIMP(statut='o',typ='R' ), + VALE_REFE_C =SIMP(statut='o',typ='C',max='**' ), + CRITERE =SIMP(statut='f',typ='TXM',fr="Critère de comparaison avec la solution de référence", + defaut="RELATIF",into=("RELATIF","ABSOLU") ), + PRECISION =SIMP(statut='f',typ='R',fr="Ecart maximal autorisé avec la solution de référence", + defaut= 1.E-3 ), + REFERENCE =SIMP(statut='f',typ='TXM', + into=("ANALYTIQUE","SOURCE_EXTERNE","NON_REGRESSION","AUTRE_ASTER") ), + b_version =BLOC(condition = "REFERENCE == 'NON_REGRESSION'", + VERSION =SIMP(statut='f',typ='TXM' ), + ), + ), ) ; -#& MODIF COMMANDE DATE 19/09/2006 AUTEUR ACBHHCD G.DEVESA +#& MODIF COMMANDE DATE 10/10/2006 AUTEUR REZETTE C.REZETTE +# RESPONSABLE VABHHTS J.PELLET # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2005 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# +# # ====================================================================== -LIRE_IMPE_MISS=OPER(nom="LIRE_IMPE_MISS",op= 164,sd_prod=matr_asse_gene_c, - fr="Création d une matrice assemblée à partir de base modale", - reentrant='n', - UIinfo={"groupes":("Matrices/vecteurs",)}, - BASE =SIMP(statut='o',typ=base_modale ), - NUME_DDL_GENE =SIMP(statut='o',typ=nume_ddl_gene ), - FREQ_EXTR =SIMP(statut='o',typ='R',max=1), - UNITE_RESU_IMPE =SIMP(statut='f',typ='I',defaut=30), - TYPE =SIMP(statut='f',typ='TXM',defaut="ASCII",into=("BINAIRE","ASCII") ), -) ; +TEST_RESU=PROC(nom="TEST_RESU",op=23, + UIinfo={"groupes":("Impression",)}, + fr="Extraction d'une valeur d'une structure de donnée et comparaison à une valeur de référence", + regles=(AU_MOINS_UN('CHAM_NO','CHAM_ELEM','RESU','GENE','OBJET')), -#& MODIF COMMANDE DATE 21/02/2006 AUTEUR REZETTE C.REZETTE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2005 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -LIRE_FORC_MISS=OPER(nom="LIRE_FORC_MISS",op= 179,sd_prod=vect_asse_gene, - fr="Création d un vecteur assemblé à partir de base modale", - reentrant='n', - UIinfo={"groupes":("Matrices/vecteurs",)}, - BASE =SIMP(statut='o',typ=base_modale ), - NUME_DDL_GENE =SIMP(statut='o',typ=nume_ddl_gene ), - FREQ_EXTR =SIMP(statut='o',typ='R',max=1), - NOM_CMP =SIMP(statut='o',typ='TXM',into=("DX","DY","DZ") ), - NOM_CHAM =SIMP(statut='f',typ='TXM',into=("DEPL","VITE","ACCE"),defaut="DEPL"), - UNITE_RESU_FORC =SIMP(statut='f',typ='I',defaut=30), -) ; + CHAM_NO =FACT(statut='f',max='**', + regles=(UN_PARMI('NOEUD','GROUP_NO','TYPE_TEST'), + EXCLUS('NOEUD','GROUP_NO'), + PRESENT_PRESENT('NOEUD','NOM_CMP'), + PRESENT_PRESENT( 'GROUP_NO','NOM_CMP'), + UN_PARMI('VALE','VALE_I','VALE_C'),), + CHAM_GD =SIMP(statut='o',typ=cham_no_sdaster), + NOEUD =SIMP(statut='f',typ=no ), + GROUP_NO =SIMP(statut='f',typ=grno ), + NOM_CMP =SIMP(statut='f',typ='TXM'), + TYPE_TEST =SIMP(statut='f',typ='TXM',into=("SOMM_ABS","SOMM","MAX","MIN")), + VALE =SIMP(statut='f',typ='R',max='**'), + VALE_I =SIMP(statut='f',typ='I',max='**'), + VALE_C =SIMP(statut='f',typ='C',max='**'), + VALE_ABS =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3), + REFERENCE =SIMP(statut='f',typ='TXM',into=("ANALYTIQUE","SOURCE_EXTERNE", + "NON_REGRESSION","AUTRE_ASTER")), + VERSION =SIMP(statut='f',typ='TXM'), + ), -#& MODIF COMMANDE DATE 05/02/2007 AUTEUR PELLET J.PELLET -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2007 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# ====================================================================== -DEBUG=PROC(nom="DEBUG",op=137, - UIinfo={"groupes":("Utilitaires",)}, - fr="Permettre de changer entre 2 commandes quelques variables globales de debug", + CHAM_ELEM =FACT(statut='f',max='**', + regles=(UN_PARMI('MAILLE','TYPE_TEST',), + EXCLUS('NOEUD','GROUP_NO','POINT'), + PRESENT_PRESENT('NOEUD','NOM_CMP'), + PRESENT_PRESENT('GROUP_NO','NOM_CMP'), + PRESENT_PRESENT('POINT','NOM_CMP'), + UN_PARMI('VALE','VALE_I','VALE_C'), ), + CHAM_GD =SIMP(statut='o',typ=cham_elem), + MAILLE =SIMP(statut='f',typ=ma), + POINT =SIMP(statut='f',typ='I' ), + SOUS_POINT =SIMP(statut='f',typ='I'), + NOEUD =SIMP(statut='f',typ=no), + GROUP_NO =SIMP(statut='f',typ=grno), + NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), + TYPE_TEST =SIMP(statut='f',typ='TXM',into=("SOMM_ABS","SOMM","MAX","MIN") ), + VALE =SIMP(statut='f',typ='R',max='**' ), + VALE_I =SIMP(statut='f',typ='I',max='**' ), + VALE_C =SIMP(statut='f',typ='C',max='**' ), + VALE_ABS =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), + REFERENCE =SIMP(statut='f',typ='TXM',into=("ANALYTIQUE","SOURCE_EXTERNE", + "NON_REGRESSION","AUTRE_ASTER") ), + VERSION =SIMP(statut='f',typ='TXM' ), + ), - SDVERI =SIMP(fr="vérifie la conformité des SD produites par les commandes", - statut='f',typ='TXM',into=('OUI','NON')), - JXVERI =SIMP(fr="vérifie l intégrité de la segmentation mémoire", - statut='f',typ='TXM',into=('OUI','NON')), - JEVEUX =SIMP(fr="force les déchargement sur disque", - statut='f',typ='TXM',into=('OUI','NON')), - IMPR_MACRO =SIMP(fr="affichage des sous-commandes produites par les macros dans le fichier mess", - statut='f',typ='TXM',into=("OUI","NON")), - ); -#& MODIF COMMANDE DATE 22/12/2006 AUTEUR BODEL C.BODEL + RESU =FACT(statut='f',max='**', + regles=(UN_PARMI('NUME_ORDRE','INST','FREQ','NUME_MODE','NOEUD_CMP','NOM_CAS','ANGL'), + UN_PARMI('NOM_CHAM','PARA'), + PRESENT_ABSENT('PARA','NOEUD','GROUP_NO','POINT','NOM_CMP','TYPE_TEST'), + PRESENT_PRESENT('NOM_CMP','NOM_CHAM'), + EXCLUS('NOEUD','GROUP_NO','POINT','TYPE_TEST'), + PRESENT_PRESENT('NOEUD','NOM_CMP'), + PRESENT_PRESENT('GROUP_NO','NOM_CMP'), + PRESENT_PRESENT('POINT','NOM_CMP'), + UN_PARMI('VALE','VALE_I','VALE_C'), + DERIVABLE('RESULTAT'),), + RESULTAT =SIMP(statut='o',typ=resultat_sdaster), + SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom), + fr="Paramètre de sensibilité.", + ang="Sensitivity parameter"), + NUME_ORDRE =SIMP(statut='f',typ='I'), + INST =SIMP(statut='f',typ='R'), + FREQ =SIMP(statut='f',typ='R'), + NUME_MODE =SIMP(statut='f',typ='I'), + NOEUD_CMP =SIMP(statut='f',typ='TXM',min=2,max=2), + NOM_CAS =SIMP(statut='f',typ='TXM'), + ANGL =SIMP(statut='f',typ='R'), + PARA =SIMP(statut='f',typ='TXM'), + NOM_CHAM =SIMP(statut='f',typ='TXM',into=C_NOM_CHAM_INTO()), + NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), + MAILLE =SIMP(statut='f',typ=ma ,max='**'), + NOEUD =SIMP(statut='f',typ=no ,max='**'), + GROUP_NO =SIMP(statut='f',typ=grno ,max='**'), + POINT =SIMP(statut='f',typ='I'), + SOUS_POINT =SIMP(statut='f',typ='I'), + TYPE_TEST =SIMP(statut='f',typ='TXM',into=("SOMM_ABS","SOMM","MAX","MIN")), + VALE =SIMP(statut='f',typ='R',max='**'), + VALE_I =SIMP(statut='f',typ='I',max='**'), + VALE_C =SIMP(statut='f',typ='C',max='**'), + VALE_ABS =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + CRITERE =SIMP(statut='f',typ='TXM',into=("RELATIF","ABSOLU"),max=2), + PRECISION =SIMP(statut='f',typ='R',max=2), + REFERENCE =SIMP(statut='f',typ='TXM',into=("ANALYTIQUE","SOURCE_EXTERNE", + "NON_REGRESSION","AUTRE_ASTER",) ), + VERSION =SIMP(statut='f',typ='TXM' ), + ), + + GENE =FACT(statut='f',max='**', + regles=(UN_PARMI('VALE','VALE_I','VALE_C') ,), + RESU_GENE =SIMP(statut='o',typ=(vect_asse_gene, tran_gene, mode_gene, harm_gene)), + b_vect_asse =BLOC(condition = "AsType(RESU_GENE) == vect_asse_gene", + NUME_CMP_GENE =SIMP(statut='o',typ='I'), + ), + b_mode =BLOC(condition = "(AsType(RESU_GENE) == harm_gene) or (AsType(RESU_GENE) == mode_gene)", + regles=(UN_PARMI('NUME_ORDRE','FREQ','NUME_MODE'), + UN_PARMI('NOM_CHAM','PARA'), + PRESENT_PRESENT('NOM_CHAM','NUME_CMP_GENE'),), + NOM_CHAM =SIMP(statut='f',typ='TXM',into=C_NOM_CHAM_INTO()), + NUME_CMP_GENE =SIMP(statut='f',typ='I'), + PARA =SIMP(statut='f',typ='TXM'), + NUME_ORDRE =SIMP(statut='f',typ='I'), + NUME_MODE =SIMP(statut='f',typ='I'), + FREQ =SIMP(statut='f',typ='R'), + ), + b_tran =BLOC(condition = "AsType(RESU_GENE) == tran_gene", + regles=(UN_PARMI('NUME_ORDRE','INST') ,), + NOM_CHAM =SIMP(statut='o',typ='TXM',into=C_NOM_CHAM_INTO()), + NUME_CMP_GENE =SIMP(statut='o',typ='I'), + NUME_ORDRE =SIMP(statut='f',typ='I'), + INST =SIMP(statut='f',typ='R'), + ), + VALE =SIMP(statut='f',typ='R',max='**'), + VALE_I =SIMP(statut='f',typ='I',max='**'), + VALE_C =SIMP(statut='f',typ='C',max='**'), + VALE_ABS =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + CRITERE =SIMP(statut='f',typ='TXM',into=("RELATIF","ABSOLU"),max=2), + PRECISION =SIMP(statut='f',typ='R',max=2), + REFERENCE =SIMP(statut='f',typ='TXM',into=("ANALYTIQUE","SOURCE_EXTERNE", + "NON_REGRESSION","AUTRE_ASTER",) ), + VERSION =SIMP(statut='f',typ='TXM' ), + ), + + OBJET =FACT(statut='f',max='**', + regles=(UN_PARMI('S_I','S_R','RESUME',), + UN_PARMI('VALE','VALE_I','VALE_C','RESUME','S_R','S_I'),), + NOM =SIMP(statut='o',typ='TXM'), + S_R =SIMP(statut='f',typ='R'), + S_I =SIMP(statut='f',typ='I'), + RESUME =SIMP(statut='f',typ='I'), + VALE =SIMP(statut='f',typ='R'), + VALE_I =SIMP(statut='f',typ='I'), + VALE_C =SIMP(statut='f',typ='C'), + VALE_ABS =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), + PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), + REFERENCE =SIMP(statut='f',typ='TXM',into=("ANALYTIQUE","SOURCE_EXTERNE", + "NON_REGRESSION","AUTRE_ASTER",) ), + VERSION =SIMP(statut='f',typ='TXM' ), + ), +) ; +#& MODIF COMMANDE DATE 17/04/2007 AUTEUR COURTOIS M.COURTOIS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2006 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== +# RESPONSABLE VABHHTS J.PELLET +TEST_TABLE=PROC(nom="TEST_TABLE",op= 177, + UIinfo={"groupes":("Impression",)}, + fr="Tester une cellule ou une colonne d'une table", + regles=(UN_PARMI('VALE','VALE_I','VALE_C', ), + DERIVABLE('TABLE'),), +# concept table_sdaster à tester + TABLE =SIMP(statut='o',typ=table_sdaster), + SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom), + fr="Paramètre de sensibilité.", + ang="Sensitivity parameter"), + FILTRE =FACT(statut='f',max='**', + NOM_PARA =SIMP(statut='o',typ='TXM' ), + CRIT_COMP =SIMP(statut='f',typ='TXM',defaut="EQ", + into=("EQ","LT","GT","NE","LE","GE","VIDE", + "NON_VIDE","MAXI","ABS_MAXI","MINI","ABS_MINI") ), + b_vale =BLOC(condition = "(CRIT_COMP in ('EQ','NE','GT','LT','GE','LE'))", + regles=(UN_PARMI('VALE','VALE_I','VALE_K','VALE_C',),), + VALE =SIMP(statut='f',typ='R',), + VALE_I =SIMP(statut='f',typ='I',), + VALE_C =SIMP(statut='f',typ='C',), + VALE_K =SIMP(statut='f',typ='TXM' ),), -from Macro.macro_expans_ops import macro_expans_ops - -def macro_expans_prod(self, MODELE_MESURE, RESU_NX, RESU_EX, RESU_ET, RESU_RD, **args): - RESU_EXP = MODELE_MESURE['MESURE'] - for res in (RESU_NX, RESU_EX, RESU_ET, RESU_RD): - if isinstance(res, CO): - if AsType(RESU_EXP) == mode_meca: - self.type_sdprod(res, mode_meca) - else: - self.type_sdprod(res, dyna_harmo) - else: - self.type_sdprod(res,res.__class__) - return None - -MACRO_EXPANS=MACRO(nom="MACRO_EXPANS", - op=macro_expans_ops, - sd_prod=macro_expans_prod, - reentrant='n', - UIinfo={"groupes":("Outils métier",)}, - fr="Outil d'expansion de resultats exprimentaux sur une base definie sur un modele numerique", - MODELE_CALCUL = FACT(statut='o', - MODELE = SIMP(statut='o',typ=(modele_sdaster) ), - BASE = SIMP(statut='o',typ=(mode_meca,base_modale,) ), - NUME_MODE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**',defaut=0), - ), - MODELE_MESURE = FACT(statut='o', - MODELE = SIMP(statut='o',typ=(modele_sdaster) ), - MESURE = SIMP(statut='o',typ=(dyna_trans,dyna_harmo,base_modale,mode_meca,mode_meca_c,) ), - NOM_CHAM = SIMP(statut='f',typ='TXM',defaut="DEPL", - into=("DEPL","VITE","ACCE","SIEF_NOEU","EPSI_NOEU_DEPL",) ), - NUME_MODE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**',defaut=0), - ), - NUME_DDL = SIMP(statut='f',typ=(nume_ddl_sdaster)), - RESU_NX = SIMP(statut='f',typ=(mode_meca,dyna_harmo, CO)), - RESU_EX = SIMP(statut='f',typ=(mode_meca,dyna_harmo, CO)), - RESU_ET = SIMP(statut='f',typ=(mode_meca,dyna_harmo, CO)), - RESU_RD = SIMP(statut='f',typ=(mode_meca,dyna_harmo, CO)), - RESOLUTION = FACT(statut='f', - METHODE =SIMP(statut='f',typ='TXM',defaut="LU",into=("LU","SVD",) ), - b_svd =BLOC(condition="METHODE=='SVD'", - EPS=SIMP(statut='f',typ='R',defaut=0. ), - ), - REGUL =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","NORM_MIN","TIK_RELA",) ), - b_regul =BLOC(condition="REGUL!='NON'", - regles=(PRESENT_ABSENT('COEF_PONDER','COEF_PONDER_F', ),), - COEF_PONDER =SIMP(statut='f',typ='R',defaut=0. ,max='**' ), - COEF_PONDER_F =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule),max='**' ), - ), - ), - ) -#& MODIF COMMANDE DATE 02/04/2007 AUTEUR BODEL C.BODEL + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), + ), + TYPE_TEST =SIMP(statut='f',typ='TXM',into=("SOMM_ABS","SOMM","MAX","MIN") ), + NOM_PARA =SIMP(statut='o',typ='TXM' ), + VALE =SIMP(statut='f',typ='R',max='**' ), + VALE_I =SIMP(statut='f',typ='I',max='**' ), + VALE_C =SIMP(statut='f',typ='C',max='**' ), + VALE_ABS =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), + REFERENCE =SIMP(statut='f',typ='TXM', + into=("ANALYTIQUE","SOURCE_EXTERNE","NON_REGRESSION","AUTRE_ASTER") ), + b_version =BLOC(condition = "REFERENCE == 'NON_REGRESSION'", + VERSION =SIMP(statut='f',typ='TXM' ), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), + ), +) ; +#& MODIF COMMANDE DATE 13/12/2006 AUTEUR PELLET J.PELLET # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2006 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== - -from Macro.macro_visu_meidee_ops import macro_visu_meidee_ops - -def macro_visu_meidee_prod(self,RESULTATS,**args): - if RESULTATS != None: - for res in RESULTATS: - if isinstance(res['TABLE'],CO) : - if res['TYPE_TABLE'] == 'TABLE': - self.type_sdprod(res['TABLE'],table_sdaster) - else: - self.type_sdprod(res['TABLE'],table_fonction) - - return None - -MACRO_VISU_MEIDEE=MACRO(nom = 'MACRO_VISU_MEIDEE', - op = macro_visu_meidee_ops, - sd_prod = macro_visu_meidee_prod, - reentrant = 'n', - UIinfo = {"groupes":("Outils métier",)}, - fr = "Outil de post-traitement interactif pour Meidee ", - UNITE_FIMEN = SIMP( statut='f',typ='I',max='**' ), - INTERACTIF = SIMP( statut='f',typ='TXM',into=('OUI','NON'),defaut='OUI' ), - RESULTATS = FACT( statut='f',max='**', - TABLE = SIMP(statut='o',typ=(table_sdaster,table_fonction,CO)), - TYPE_TABLE = SIMP(statut='f',typ='TXM',defaut='TABLE', into=('TABLE','TABLE_FONCTION')), - ), - UNITE_RESU = SIMP( statut='f',typ='I',defaut=6), - - b_inter = BLOC( condition="INTERACTIF=='NON'", - - EXPANSION = FACT( statut='f',max='**', - CALCUL = SIMP(statut='o',typ=mode_meca), - MESURE = SIMP(statut='o',typ=mode_meca), - RESOLUTION = SIMP(statut='f',typ='TXM',defaut='SVD',into=('SVD','LU')), - b_reso = BLOC(condition = "RESOLUTION=='SVD'", - EPS = SIMP(statut='f',typ='R', defaut = 0.) - ) - ), - FLUIDE_ELASTIQUE = FACT( statut='f', max='**', - MESURE1 = SIMP(statut='o',typ=mode_meca), - MESURE2 = SIMP(statut='o',typ=mode_meca), - MESURE3 = SIMP(statut='o',typ=mode_meca), - RESU_EXPANSION = SIMP(statut='f',typ='TXM',defaut='NON',into=('OUI','NON')), - b_base = BLOC(condition = "RESU_EXPANSION=='NON'", - BASE = SIMP(statut='o',typ=mode_meca), - ) - ), - TURBULENT = FACT( statut='f',max='**', - ALPHA = SIMP(statut='f',typ='R', defaut = 0.), - EPS = SIMP(statut='f',typ='R', defaut = 0.), - IDENTIFICATION_MOMENTS = SIMP(statut='f',typ='TXM',defaut='NON', - into=('OUI','NON')), - OBSERVABILITE = SIMP(statut='o',typ=mode_meca), - COMMANDABILITE = SIMP(statut='o',typ=mode_meca), - INTE_SPEC = SIMP(statut='o',typ=table_sdaster), - RESU_EXPANSION = SIMP(statut='f',typ='TXM',defaut='NON',into=('OUI','NON')), - b_base = BLOC(condition = "RESU_EXPANSION=='NON'", - BASE = SIMP(statut='o',typ=mode_meca), - ), - ) - ) - ) - -#& MODIF COMMANDE DATE 13/02/2007 AUTEUR PELLET J.PELLET +THER_LINEAIRE=OPER(nom="THER_LINEAIRE",op=25,sd_prod=evol_ther,reentrant='f', + UIinfo={"groupes":("Résolution",)}, + fr="Résoudre un problème thermique linéaire stationnaire ou transitoire", + regles=(CONCEPT_SENSIBLE('ENSEMBLE'),), + MODELE =SIMP(statut='o',typ=modele_sdaster), + CHAM_MATER =SIMP(statut='o',typ=cham_mater), + CARA_ELEM =SIMP(statut='f',typ=cara_elem), + EXCIT =FACT(statut='o',max='**', + CHARGE =SIMP(statut='o',typ=(char_ther,char_cine_ther)), + FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + ), + INCREMENT =FACT(statut='f', + LIST_INST =SIMP(statut='o',typ=listr8_sdaster ), + NUME_INIT =SIMP(statut='f',typ='I'), + NUME_FIN =SIMP(statut='f',typ='I'), + ), + TEMP_INIT =FACT(statut='f', + regles=(EXCLUS('STATIONNAIRE','EVOL_THER','CHAM_NO','VALE'),), + STATIONNAIRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), + EVOL_THER =SIMP(statut='f',typ=evol_ther), + CHAM_NO =SIMP(statut='f',typ=cham_no_sdaster), + VALE =SIMP(statut='f',typ='R'), + NUME_INIT =SIMP(statut='f',typ='I'), + ), + SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', + fr="Liste des paramètres de sensibilité.", + ang="List of sensitivity parameters", + ), + SENS_INIT =FACT(statut='f', + regles=(EXCLUS('STATIONNAIRE','EVOL_THER', ),), + STATIONNAIRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), + EVOL_THER =SIMP(statut='f',typ=evol_ther), + NUME_INIT =SIMP(statut='f',typ='I'), + ), + SOLVEUR =FACT(statut='d', + METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC","MUMPS") ), + b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale", + RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), + ), + b_ldlt =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT", + RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), + ), + b_ldlt_mult =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ", + fr="Paramètres relatifs à la non inversibilité de la matrice à factorise", + NPREC =SIMP(statut='f',typ='I',defaut= 8 ), + STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + ), + b_gcpc =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué", + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ), + NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), + RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), + RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), + NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), + ), + b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", + TYPE_RESOL =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("NONSYM","SYMGEN","SYMDEF","AUTO")), + SCALING =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("SANS","AUTO")), + RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), + ELIM_LAGR2 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), + PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=10,), + RESI_RELA =SIMP(statut='f',typ='R',defaut=1.E-6,), + ), + ), + PARM_THETA =SIMP(statut='f',typ='R',defaut= 0.57), + ARCHIVAGE =FACT(statut='f', + regles=(UN_PARMI('LIST_ARCH','PAS_ARCH','LIST_INST','INST'),), + LIST_ARCH =SIMP(statut='f',typ=listis_sdaster), + LIST_INST =SIMP(statut='f',typ=listr8_sdaster), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF", + into=("RELATIF","ABSOLU")), + PAS_ARCH =SIMP(statut='f',typ='I'), + CHAM_EXCLU =SIMP(statut='f',typ='TXM',into=("VARI",)), + ), + TITRE =SIMP(statut='f',typ='TXM',max='**'), + INFO =SIMP(statut='f',typ='I',into=(1,2)), +) ; +#& MODIF COMMANDE DATE 13/12/2006 AUTEUR PELLET J.PELLET # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2007 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# -DEFI_GEOM_FIBRE=OPER(nom="DEFI_GEOM_FIBRE",op= 119, sd_prod=gfibre_sdaster, - fr="Definition des groupes de fibres pour les elements multifibres", - reentrant='n', - UIinfo={"groupes":("Modelisation",)}, - regles=(AU_MOINS_UN('SECTION','FIBRE'),), - - INFO =SIMP(statut='f',typ='I', defaut= 1 ,into=(1,2) ), -#============================================================================ - SECTION =FACT(statut='f',max='**', - regles=(AU_MOINS_UN('TOUT_SECT','GROUP_MA_SECT','MAILLE_SECT'), - PRESENT_ABSENT('TOUT_SECT','GROUP_MA_SECT','MAILLE_SECT'),), - - GROUP_FIBRE =SIMP(statut='o',typ='TXM',min=1,max=1), - TOUT_SECT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA_SECT =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE_SECT =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - - MAILLAGE_SECT =SIMP(statut='o',typ=maillage_sdaster), - COOR_AXE_POUTRE =SIMP(statut='o',typ='R',min=2,max=2), +THER_NON_LINE=OPER(nom="THER_NON_LINE",op= 186,sd_prod=evol_ther,reentrant='f', + UIinfo={"groupes":("Résolution",)}, + fr="Résoudre un problème thermique non linéaire (conditions limites ou comportement matériau)" + +" stationnaire ou transitoire" , + regles=(CONCEPT_SENSIBLE('ENSEMBLE'),), + MODELE =SIMP(statut='o',typ=(modele_sdaster) ), + CHAM_MATER =SIMP(statut='o',typ=(cham_mater) ), + CARA_ELEM =SIMP(statut='c',typ=(cara_elem) ), + COMP_THER_NL =FACT(statut='d',max='**', + RELATION =SIMP(statut='f',typ='TXM',defaut="THER_NL", + into=("THER_NL", + "THER_HYDR", + "SECH_GRANGER", + "SECH_MENSI", + "SECH_BAZANT", + "SECH_NAPPE" + ) ), + regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), + TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + ), + EVOL_THER_SECH =SIMP(statut='f',typ=evol_ther), + EXCIT =FACT(statut='o',max='**', + CHARGE =SIMP(statut='o',typ=char_ther), + FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + ), + INCREMENT =FACT(statut='f', + LIST_INST =SIMP(statut='o',typ=listr8_sdaster), + NUME_INIT =SIMP(statut='f',typ='I'), + NUME_FIN =SIMP(statut='f',typ='I'), + ), + TEMP_INIT =FACT(statut='f', + regles=(EXCLUS('STATIONNAIRE','EVOL_THER','CHAM_NO','VALE'),), + STATIONNAIRE =SIMP(statut='f',typ='TXM',into=("OUI",)), + EVOL_THER =SIMP(statut='f',typ=evol_ther), + CHAM_NO =SIMP(statut='f',typ=cham_no_sdaster), + VALE =SIMP(statut='f',typ='R'), + NUME_INIT =SIMP(statut='f',typ='I'), + ), + NEWTON =FACT(statut='d', + REAC_ITER =SIMP(statut='f',typ='I',defaut= 0 ), + RESI_LINE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), + ITER_LINE_MAXI =SIMP(statut='f',typ='I',defaut= 0 ), ), + CONVERGENCE =FACT(statut='d', + RESI_GLOB_MAXI =SIMP(statut='f',typ='R'), + RESI_GLOB_RELA =SIMP(statut='f',typ='R'), + ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), + ), + SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', + fr="Liste des paramètres de sensibilité.", + ang="List of sensitivity parameters", + ), + SOLVEUR =FACT(statut='d', + METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC","MUMPS") ), + b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Parametres de la méthode multi frontale", + RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), + ), + b_ldlt =BLOC(condition = "METHODE == 'LDLT' ",fr="Parametres de la méthode LDLT", + RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), + ), + b_ldlt_mult =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ", + fr="Parametres relatifs a la non inversibilité de la matrice a factorise", + NPREC =SIMP(statut='f',typ='I',defaut= 8 ), + STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + ), + b_gcpc =BLOC(condition = "METHODE == 'GCPC' ", fr="Parametres de la méthode du gradient conjugué", + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ), + NIVE_REMPLISSAGE=SIMP(statut='f',typ='I' ,defaut= 0 ), + RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), + RESI_RELA =SIMP(statut='f',typ='R' ,defaut= 1.E-6 ), + NMAX_ITER =SIMP(statut='f',typ='I' ,defaut= 0 ), + ), + b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", + TYPE_RESOL =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("NONSYM","SYMGEN","SYMDEF","AUTO")), + SCALING =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("SANS","AUTO")), + RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), + ELIM_LAGR2 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), + PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=10,), + RESI_RELA =SIMP(statut='f',typ='R',defaut=-1.0,), + ), + SYME =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ), + ), + PARM_THETA =SIMP(statut='f',typ='R',defaut= 0.57 ), + ARCHIVAGE =FACT(statut='f', + regles=(UN_PARMI('LIST_ARCH','PAS_ARCH','LIST_INST','INST', ),), + LIST_ARCH =SIMP(statut='f',typ=(listis_sdaster) ), + LIST_INST =SIMP(statut='f',typ=(listr8_sdaster) ), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ), + PAS_ARCH =SIMP(statut='f',typ='I'), + CHAM_EXCLU =SIMP(statut='f',typ='TXM',into=("VARI",)), + ), + TITRE =SIMP(statut='f',typ='TXM',max='**'), + OPTION =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=2, + into=("FLUX_ELGA_TEMP","FLUX_ELNO_TEMP") ), + INFO =SIMP(statut='f',typ='I',into=(1,2) ), +) ; +#& MODIF COMMANDE DATE 22/06/2005 AUTEUR REZETTE C.REZETTE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +THER_NON_LINE_MO=OPER(nom="THER_NON_LINE_MO",op= 171,sd_prod=evol_ther, + fr="Résoudre un problème thermique non linéaire (conditions limites ou comportement matériau)" + +" stationnaire avec chargement mobile", + reentrant='n', + UIinfo={"groupes":("Résolution",)}, + MODELE =SIMP(statut='o',typ=modele_sdaster ), + CHAM_MATER =SIMP(statut='o',typ=cham_mater ), + CARA_ELEM =SIMP(statut='c',typ=cara_elem ), + EXCIT =FACT(statut='o',max='**', + CHARGE =SIMP(statut='o',typ=char_ther ), + FONC_MULT =SIMP(statut='c',typ=(fonction_sdaster,nappe_sdaster,formule) ), + ), + TEMP_INIT =FACT(statut='f', + EVOL_THER =SIMP(statut='f',typ=evol_ther ), + NUME_INIT =SIMP(statut='f',typ='I',defaut= 0 ), + ), + CONVERGENCE =FACT(statut='d', + CRIT_TEMP_RELA =SIMP(statut='f',typ='R',defaut= 1.E-3 ), + CRIT_ENTH_RELA =SIMP(statut='f',typ='R',defaut= 1.E-2 ), + ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), + ARRET =SIMP(statut='c',typ='TXM',defaut="OUI",into=("OUI","NON") ), + ), + SOLVEUR =FACT(statut='d', + METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ), + b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale", + RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), + ), + b_ldlt =BLOC(condition = "METHODE == 'LDLT' ",fr="Paramètres de la méthode LDLT", + RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("RCMK","SANS") ), + ), + b_ldlt_mult =BLOC(condition = "METHODE == 'LDLT' or METHODE == 'MULT_FRONT' ", + fr="Paramètres relatifs à la non inversibilité de la matrice à factorise", + NPREC =SIMP(statut='f',typ='I',defaut= 8 ), + STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + ), + b_gcpc =BLOC(condition = "METHODE == 'GCPC' ", fr="Paramètres de la méthode du gradient conjugué", + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC",),defaut="LDLT_INC" ), + NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), + RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), + RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), + NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), + ), + SYME =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + ), + TITRE =SIMP(statut='f',typ='TXM',max='**' ), + INFO =SIMP(statut='f',typ='I',into=(1,2) ), +) ; -#============================================================================ - FIBRE =FACT(statut='f',max='**', - GROUP_FIBRE =SIMP(statut='o',typ='TXM',min=1,max=1), - CARA =SIMP(statut='f',typ='TXM',defaut='SURFACE',into=('SURFACE','DIAMETRE',)), - VALE =SIMP(statut='o',typ='R',max='**'), - COOR_AXE_POUTRE =SIMP(statut='o',typ='R',min=2,max=2), - ), -) ; diff --git a/Aster/Cata/cataSTA9/ops.py b/Aster/Cata/cataSTA9/ops.py index ed128239..8a909c5a 100644 --- a/Aster/Cata/cataSTA9/ops.py +++ b/Aster/Cata/cataSTA9/ops.py @@ -1,4 +1,4 @@ -#@ MODIF ops Cata DATE 02/04/2007 AUTEUR COURTOIS M.COURTOIS +#@ MODIF ops Cata DATE 16/05/2007 AUTEUR COURTOIS M.COURTOIS # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -29,17 +29,16 @@ import Accas from Accas import ASSD from Utilitai.Utmess import UTMESS from Utilitai.as_timer import ASTER_TIMER +from Utilitai.Sensibilite import MEMORISATION_SENSIBILITE +from Noyau.ascheckers import CheckLog try: import aster - from SD.ascheckers import CheckLog # Si le module aster est présent, on le connecte # au JDC import Build.B_CODE Build.B_CODE.CODE.codex=aster except: - def CheckLog(): - pass pass @@ -56,6 +55,9 @@ def commun_DEBUT_POURSUITE(jdc, PAR_LOT, IMPR_MACRO, CODE, DEBUG): if CODE != None: jdc.fico = CODE['NOM'] jdc.timer = ASTER_TIMER(format='aster') + # en POURSUITE, ne pas écraser la mémorisation existante. + if not hasattr(jdc, 'memo_sensi'): + jdc.memo_sensi = MEMORISATION_SENSIBILITE() def DEBUT(self,PAR_LOT,IMPR_MACRO,CODE,DEBUG,**args): @@ -145,6 +147,7 @@ def POURSUITE(self,PAR_LOT,IMPR_MACRO,CODE,DEBUG,**args): # On supprime du pickle_context les concepts valant None, ca peut # etre le cas des concepts non executés, placés après FIN. pickle_context=get_pickled_context() + self.jdc.restore_pickled_attrs(pickle_context) if pickle_context==None : UTMESS('F','Poursuite',"Erreur a la relecture du fichier pick.1 : aucun objet sauvegardé ne sera récupéré") return