From: eficas <> Date: Thu, 18 Sep 2003 10:21:47 +0000 (+0000) Subject: Import dans la branche I26 de la version 7.1.16 modifiée par CCAR (au 18/9/2003) X-Git-Tag: CCARFinMod1809~2^2 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=7f1efd93c8848548cd258b1dda5ec07486cc92b7;p=tools%2Feficas.git Import dans la branche I26 de la version 7.1.16 modifiée par CCAR (au 18/9/2003) des modules communs avec le superviseur de Code_Aster Ces modules sont : Noyau, Validation plus les éléments de catalogue ops.py cata.py qui est renommé cata_STA7.py et le répertoire Macro qui est déplacé dans le répertoire Aster. Ces modules communs devront être mis à jour avec la dernière version stabilisée d'Aster (7.2.0 ou dernière 7.1.x identique avec 7.2.0) Ces modules sont importés dans la branche I26 qui sert pour recevoir les différentes versions du superviseur Aster soit par la commande cvs import soit par import manuel puis commit. Il faut poser un tag associé (ici V7_1_16ModCCAR180903) puis merger dans la branche principale si nécessaire (en cas de modifs dans la branche principale). --- diff --git a/Accas/__init__.py b/Accas/__init__.py index b61776b3..e0663331 100644 --- a/Accas/__init__.py +++ b/Accas/__init__.py @@ -48,6 +48,9 @@ from Noyau.N__F import _F from Noyau.N_Exception import AsException from Noyau.N_utils import AsType + +from Noyau.N_VALIDATOR import Valid,RangeVal,OrdList,NoRepeat,LongStr,EnumVal,CardVal,TypeVal,InstanceVal,OrVal,AndVal + from Extensions.niveau import NIVEAU from Extensions.etape_niveau import ETAPE_NIVEAU from Extensions.commentaire import COMMENTAIRE diff --git a/Aster/Cata/Macro/macr_adap_mail_ops.py b/Aster/Cata/Macro/macr_adap_mail_ops.py new file mode 100644 index 00000000..0561942e --- /dev/null +++ b/Aster/Cata/Macro/macr_adap_mail_ops.py @@ -0,0 +1,642 @@ +#@ MODIF macr_adap_mail_ops Macro DATE 01/07/2003 AUTEUR GNICOLAS G.NICOLAS +# 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. +# ====================================================================== +# RESPONSABLE GNICOLAS G.NICOLAS +# +def macr_adap_mail_ops ( self, + INFO, VERSION_HOMARD, LANGUE, + NOMBRE, QUALITE, CONNEXITE, TAILLE, INTERPENETRATION, + NON_SIMPLEXE, MAILLAGE_FRONTIERE, + **args): + """ + Ecriture de la macro MACR_ADAP_MAIL/MACR_INFO_MAIL + Remarque : on ne mentionne explicitement que les mots-clés communs aux + deux macros. Les autres sont dans le dictionnaire args + """ +# +# 1. args est le dictionnaire des arguments +# args.keys() est la liste des mots-clés +# args.keys()[0] est la premiere valeur de cette liste +# args.keys()[1:] est la liste des valeurs suivantes dans cette liste +# args.keys(mot_cle) représente le contenu de la variable mot_cle dans la macro appelante. +# +### print args +### print args.keys() +### if len (args.keys())>0 : print args.keys()[0] +### print args['MAILLAGE'] +# +# 2. Les caractéristiques d'un passage sont conservées dans un dictionnaire. Il y a autant de +# dictionnaires que de sollicitations pour une série d'adaptation. L'ensemble de ces dictionnaires +# est conservé dans la liste Liste_Passages. Cette liste est nécessairement globale pour pouvoir +# la retrouver à chaque nouveau passage. +# Description du dictionnaire de passages : +# dico['Maillage_0'] = o ; string ; nom du concept du maillage initial de la série d'adaptation +# dico['Maillage_NP1'] = o ; string ; nom du concept du dernier maillage adapté +# dico['Rep_Calc_HOMARD'] = o ; string ; Nom du répertoire de calcul pour HOMARD +# dico['niter'] = o ; entier ; numéro d'itération +# +# 3. Les caractéristiques d'un maillage sont conservées dans un dictionnaire. Il y a autant de +# dictionnaires que de maillages manipulés. L'ensemble de ces dictionnaires est conservé +# dans la liste Liste_Maillages. +# Description du dictionnaire de maillages : +# dico['Type_Maillage'] = o ; string ; 'MAILLAGE_N', 'MAILLAGE_NP1' ou 'MAILLAGE_FRONTIERE' +# dico['Nom_ASTER'] = o ; concept ASTER associé +# dico['Action'] = o ; string ; 'A_ecrire' ou 'A_lire' +# dico['NOM_MED'] = o ; string ; Nom MED du maillage +# +# 4. Les caractéristiques d'un champ sont conservées dans un dictionnaire. Il y a autant de +# dictionnaires que de champs manipulés. L'ensemble de ces dictionnaires est conservé +# dans la liste Liste_Champs. +# Description du dictionnaire de champs : +# dico['Type_Champ'] = o ; string ; 'INDICATEUR' ou 'CHAMP' +# dico['RESULTAT'] = o ; concept ASTER du résutat associé +# dico['NOM_CHAM'] = o ; string ; Nom ASTER du champ +# dico['COMPOSANTE'] = f ; string ; Nom ASTER de la composante +# dico['NUME_ORDRE'] = f ; entier ; Numéro d'ordre du champ +# dico['INST'] = f ; entier ; Instant du champ +# dico['PRECISION'] = f ; entier ; Précision sur l'instant du champ +# dico['CRITERE'] = f ; entier ; Critère de précision sur l'instant du champ +# dico['CHAM_MAJ'] = f ; string ; Nom ASTER du champ interpolé sur le nouveau maillage +# dico['NOM_MED'] = o ; string ; Nom MED du champ +# + from Accas import _F + import aster + import string + import types + import os +# + global Liste_Passages +# +#-------------------------------------------------------------------- +# 1. Préalables +#-------------------------------------------------------------------- +# +# 1.1. ==> La macro compte pour 1 dans la numerotation des commandes +# + self.set_icmd(1) +# +# 1.2. ==> Numéro du passage dans cette macro +# + try : + self.jdc.indice_macro_homard = self.jdc.indice_macro_homard + 1 + except : + self.jdc.indice_macro_homard = 1 + Liste_Passages = [] + Numero_Passage_Fonction = self.jdc.indice_macro_homard +### print "Numero_Passage_Fonction = ",Numero_Passage_Fonction +# +# 1.3. ==> On importe les definitions des commandes a utiliser dans la macro +# + DEFI_FICHIER = self.get_cmd('DEFI_FICHIER') + IMPR_RESU = self.get_cmd('IMPR_RESU') + EXEC_LOGICIEL = self.get_cmd('EXEC_LOGICIEL') + IMPR_FICO_HOMA = self.get_cmd('IMPR_FICO_HOMA') + LIRE_MAILLAGE = self.get_cmd('LIRE_MAILLAGE') + LIRE_CHAMP = self.get_cmd('LIRE_CHAMP') +# +# 1.4. ==> Le nom du programme HOMARD à lancer +# + repertoire_outils = aster.repout() + homard = repertoire_outils + 'homard' +# +# 1.5. ==> Initialisations +# + codret = 0 + codret_partiel = [0] + Rep_Calc_ASTER = os.getcwd() +# + Liste_Maillages = [] + Liste_Champs = [] +# + ADAPTATION = None + MAJ_CHAM = None +# + unite = 71 +# +#-------------------------------------------------------------------- +# 2. Décodage des arguments de la macro-commande +#-------------------------------------------------------------------- +# 2.1. ==> Données de pilotage de l'adaptation +# + if ( self.nom == 'MACR_ADAP_MAIL' ) : +# + modhom = "ADAP" +# + ADAPTATION = args['ADAPTATION'] + if args.has_key('MAJ_CHAM') : + MAJ_CHAM = args['MAJ_CHAM'] +# +# 2.1.1. ==> Les concepts 'maillage' +# + for mot_cle in ['MAILLAGE_N','MAILLAGE_NP1'] : + dico = {} + dico['Type_Maillage'] = mot_cle + dico['Nom_ASTER'] = ADAPTATION[mot_cle] + if ( mot_cle == 'MAILLAGE_N' ) : + dico['Action'] = 'A_ecrire' + else : + dico['Action'] = 'A_lire' + Liste_Maillages.append(dico) +# +# 2.1.2. ==> L'éventuel indicateur d'erreur +# + if ADAPTATION['LIBRE'] != None : + dico = {} + dico['Type_Champ'] = 'INDICATEUR' + dico['RESULTAT'] = ADAPTATION['RESULTAT_N'] + dico['NOM_CHAM'] = ADAPTATION['INDICATEUR'] + dico['COMPOSANTE'] = ADAPTATION['NOM_CMP_INDICA'] + if ( ADAPTATION['NUME_ORDRE'] != None ) : + dico['NUME_ORDRE'] = ADAPTATION['NUME_ORDRE'] + if ( ADAPTATION['INST'] != None ) : + dico['INST'] = ADAPTATION['INST'] + for cle in [ 'PRECISION', 'CRITERE' ] : + if ( ADAPTATION[cle] != None ) : + dico[cle] = ADAPTATION[cle] + dico['NOM_MED'] = aster.mdnoch ( dico['RESULTAT'].nom , dico['NOM_CHAM'] ) + Liste_Champs.append(dico) +### print dico +# +# 2.1.3. ==> Les champs à mettre à jour +# + if ( MAJ_CHAM != None ) : +# + for maj_cham in MAJ_CHAM : +# + dico = {} + dico['Type_Champ'] = 'CHAMP' + for cle in [ 'CHAM_MAJ', 'TYPE_CHAM', 'RESULTAT', 'NOM_CHAM', 'NUME_ORDRE' ] : + dico[cle] = maj_cham[cle] + if ( maj_cham['INST'] != None ) : + dico['INST'] = maj_cham['INST'] + for cle in [ 'PRECISION', 'CRITERE' ] : + if ( maj_cham[cle] != None ) : + dico[cle] = maj_cham[cle] + dico['NOM_MED'] = aster.mdnoch ( dico['RESULTAT'].nom , dico['NOM_CHAM'] ) +# +### print dico + Liste_Champs.append(dico) +# +# 2.2. ==> Données de pilotage de l'information +# + else : +# + modhom = "INFO" +# + dico = {} + dico['Type_Maillage'] = 'MAILLAGE_N' + dico['Nom_ASTER'] = args['MAILLAGE'] + dico['Action'] = 'A_ecrire' + Liste_Maillages.append(dico) +# +# 2.3. ==> Suivi de frontière +# + if ( MAILLAGE_FRONTIERE != None ) : +# + dico = {} + dico['Type_Maillage'] = 'MAILLAGE_FRONTIERE' + dico['Nom_ASTER'] = MAILLAGE_FRONTIERE + dico['Action'] = 'A_ecrire' + Liste_Maillages.append(dico) +# +#-------------------------------------------------------------------- +# 3. Préparation du lancement des commandes +#-------------------------------------------------------------------- +# +# 3.1. ==> . Elaboration des noms MED des concepts de maillage +# . Memorisation des noms ASTER du maillage en entrée et en sortie (sous forme string) +# On crée une nouvelle liste des dictionnaires décrivant les maillages +# et à la fin on écrase l'ancienne liste par cette nouvelle. +# + L = [] + for dico in Liste_Maillages : + dico['NOM_MED'] = aster.mdnoma(dico['Nom_ASTER'].nom) + L.append(dico) + if ( dico['Type_Maillage'] == 'MAILLAGE_N' ) : + Nom_Concept_Maillage_N = dico['Nom_ASTER'].nom + elif ( dico['Type_Maillage'] == 'MAILLAGE_NP1' ) : + Nom_Concept_Maillage_NP1 = dico['Nom_ASTER'].nom + Liste_Maillages = L +# +# 3.2. ==> Recherche du numéro d'itération et du répertoire de travail +# +# 3.2.1. ==> Par défaut : +# . le numéro d'itération est nul +# . le nom du répertoire de lancement de HOMARD est construit sur le nom +# du maillage en entrée et le numéro de passage dans la fonction +# + niter = 0 + Nom_Rep_local = Nom_Concept_Maillage_N + "_" + modhom + "_" + str(Numero_Passage_Fonction) + Rep_Calc_HOMARD = os.path.join(Rep_Calc_ASTER,Nom_Rep_local) +### print "Rep_Calc_HOMARD = ", Rep_Calc_HOMARD +# +# 3.2.2. ==> En adaptation : +# + if ( modhom == "ADAP" ) : +# +# 3.2.2.1. ==> On recherche si dans les passages déjà effectués, il en existe un +# dont le maillage d'arrivée était l'actuel maillage d'entrée. Si c'est +# le cas, cela veut dire que l'adaptation en cours est la suite d'une +# précédente. On doit donc utiliser le meme répertoire. Le numéro +# d'itération est celui de l'adaptation précédente augmenté de 1. +# + for dico in Liste_Passages : + if ( dico['Maillage_NP1'] == Nom_Concept_Maillage_N ) : + niter = dico['niter'] + 1 + Rep_Calc_HOMARD = dico['Rep_Calc_HOMARD'] +# +# 3.2.2.2. ==> Memorisation de ce passage +# +# 3.2.2.2.1. ==> Enregistrement d'un nouveau cas de figure +# + if ( niter == 0 ) : + dico = {} + dico['Maillage_0'] = Nom_Concept_Maillage_N + dico['Maillage_NP1'] = Nom_Concept_Maillage_NP1 + dico['Rep_Calc_HOMARD'] = Rep_Calc_HOMARD + dico['niter'] = niter + Liste_Passages.append(dico) +# +# 3.2.2.2.2. ==> Modification du cas en cours +# + else : + L = [] + for dico in Liste_Passages : + if ( dico['Maillage_NP1'] == Nom_Concept_Maillage_N ) : + dico['Maillage_NP1'] = Nom_Concept_Maillage_NP1 + dico['niter'] = niter + L.append(dico) + Liste_Passages = L +# +### print "niter = ", niter, ", Rep_Calc_HOMARD = ", Rep_Calc_HOMARD +# +#-------------------------------------------------------------------- +# 4. Ecriture des commandes +#-------------------------------------------------------------------- +# +# 4.1. ==> Création du répertoire pour homard +# attention : on ne fait cette creation qu'une seule fois par cas +# d'adaptation ou d'information +# + if ( niter == 0 ) : +# + try : + os.mkdir(Rep_Calc_HOMARD) + except os.error,codret_partiel : + self.cr.warn("Code d'erreur de mkdir : " + str(codret_partiel[0]) + " : " + codret_partiel[1]) + self.cr.fatal("Impossible de créer le répertoire de travail pour HOMARD : "+Rep_Calc_HOMARD) + codret = codret + 1 +# +# 4.2. ==> Ecriture des commandes de creation des donnees MED +# +# On doit écrire : le maillage, +# le champ d'indicateur d'erreur +# les champs à convertir +# Remarque : on met tout dans le meme fichier +# +# Chacune de ces écritures est optionnelle selon le contexte. +# + if ( INFO > 1 ) : infomail='OUI' + else : infomail='NON' +# +# 4.2.1. ==> Noms des fichiers d'ASTER vers HOMARD et éventuellement de HOMARD vers ASTER +# Remarque : aujourd'hui, les écritures ou les lectures au format MED se font obligatoirement sur +# un fichier de nom fort.n, placé dans le répertoire de calcul +# Dans le fichier de configuration, on donne comme nom MAILL.(niter).MED en entrée et +# MAILL.(niter+1).MED en sortie (cf. adhc00) +# Tant que les E/S MED n'ont pas évolué, on fait un lien pour assurer la cohérence. +# +# 4.2.1.1. ==> D'ASTER vers HOMARD +# + Unite_Fichier_ASTER_vers_HOMARD = 1787 + 2*Numero_Passage_Fonction + Fichier_ASTER_vers_HOMARD = os.path.join(Rep_Calc_ASTER,"fort." + str(Unite_Fichier_ASTER_vers_HOMARD)) + Nom_Symbolique_Fichier_ASTER_vers_HOMARD = "ASTER_to_HOMARD" + Fichier_HOMARD_Entree = os.path.join(Rep_Calc_HOMARD,"MAILL."+str(niter)+".MED") +### print "Fichier_ASTER_vers_HOMARD = ",Fichier_ASTER_vers_HOMARD +### print "Fichier_HOMARD_Entree = ",Fichier_HOMARD_Entree + try : + os.symlink(Fichier_ASTER_vers_HOMARD,Fichier_HOMARD_Entree) + except os.error,codret_partiel : + self.cr.warn("Code d'erreur de symlink : " + str(codret_partiel[0]) + " : " + codret_partiel[1]) + self.cr.fatal("Probleme au lien entre " + Fichier_ASTER_vers_HOMARD + " et " + Fichier_HOMARD_Entree) + codret = codret + 1 +# +# 4.2.1.2. ==> De HOMARD vers ASTER +# + if ( modhom == "ADAP" ) : + Unite_Fichier_HOMARD_vers_ASTER = Unite_Fichier_ASTER_vers_HOMARD + 1 + Fichier_HOMARD_vers_ASTER = os.path.join(Rep_Calc_ASTER,"fort." + str(Unite_Fichier_HOMARD_vers_ASTER)) + Fichier_HOMARD_Sortie = os.path.join(Rep_Calc_HOMARD,"MAILL."+str(niter+1)+".MED") +### print "Fichier_HOMARD_vers_ASTER = ",Fichier_HOMARD_vers_ASTER +### print "Fichier_HOMARD_Sortie = ",Fichier_HOMARD_Sortie + try : + os.symlink(Fichier_HOMARD_vers_ASTER,Fichier_HOMARD_Sortie) + except os.error,codret_partiel : + self.cr.warn("Code d'erreur de symlink : " + str(codret_partiel[0]) + " : " + codret_partiel[1]) + self.cr.fatal("Probleme au lien entre " + Fichier_HOMARD_vers_ASTER + " et " + Fichier_HOMARD_Sortie) + codret = codret + 1 +# +# 4.2.2. La définition du fichier de ASTER vers HOMARD +# + DEFI_FICHIER ( ACTION= "ASSOCIER", + FICHIER = Nom_Symbolique_Fichier_ASTER_vers_HOMARD, + UNITE = Unite_Fichier_ASTER_vers_HOMARD, + TYPE = "LIBRE", + INFO = INFO ) +# +# 4.2.3. Le(s) maillage(s) +# Le maillage de calcul et l'éventuel maillage de la frontiere sont écrits +# dans le meme fichier MED +# En fait, on pourrait s'en passer au dela de la 1ère itération +# car HOMARD a mémorisé. Mais dès que l'on écrit un champ, +# les conventions MED imposent la présence du maillage dans le fichier. +# Donc on va toujours écrire. +# + for dico in Liste_Maillages : + if ( dico['Action'] == 'A_ecrire' ) : + motscsi={} + motscsi['MAILLAGE'] = dico['Nom_ASTER'] + motscfa={} + motscfa['RESU']=_F( INFO_MAILLAGE=infomail, + FICHIER=Nom_Symbolique_Fichier_ASTER_vers_HOMARD, + FORMAT ='MED', + **motscsi ) +# + IMPR_RESU ( INFO = INFO, **motscfa ) +# +# 4.2.4. Le(s) champ(s) +# + for dico in Liste_Champs : + motscsi={} + for cle in [ 'RESULTAT', 'NOM_CHAM', 'NUME_ORDRE', 'INST', 'PRECISION', 'CRITERE' ] : + if dico.has_key(cle) : + if ( dico[cle] != None ) : + motscsi[cle] = dico[cle] + if dico.has_key('COMPOSANTE') : + motscsi['NOM_CMP'] = dico['COMPOSANTE'] + motscfa={} + motscfa['RESU']=_F( INFO_MAILLAGE=infomail, + FICHIER=Nom_Symbolique_Fichier_ASTER_vers_HOMARD, + FORMAT ='MED', + **motscsi + ) +# + IMPR_RESU ( INFO = INFO, **motscfa ) +# +# 4.3. ==> Ecriture de la commande d'écriture des fichiers de données pour HOMARD +# + motscfa={} +# +# 4.3.1. ==> Le traitement +# + motscsi={} +# +# 4.3.1.1. ==> Le type de traitement +# + if ( modhom == "ADAP" ) : + if ( ADAPTATION['UNIFORME'] != None ) : + motscsi['UNIFORME'] = ADAPTATION['UNIFORME'] + else : + motscsi['ADAPTATION'] = ADAPTATION['LIBRE'] + else : + motscsi['INFORMATION'] = 'OUI' +# +# 4.3.1.2. ==> Les noms med des maillages +# + for dico in Liste_Maillages : +### print "Nom MED de " + dico['Type_Maillage'] + " = " + dico['NOM_MED'] + motscsi[ 'NOM_MED_'+dico['Type_Maillage'] ] = dico['NOM_MED'] +# +# 4.3.1.3. ==> Les caracteristiques de l'éventuel indicateur d'erreur +# + for dico in Liste_Champs : + if ( dico['Type_Champ'] == 'INDICATEUR' ) : + Liste_aux = [ 'NOM_MED', 'COMPOSANTE' ] + if dico.has_key('NUME_ORDRE') : + Liste_aux.append('NUME_ORDRE') + else : + for cle in [ 'RESULTAT', 'NOM_CHAM', 'INST', 'PRECISION', 'CRITERE' ] : + Liste_aux.append(cle) + for cle in Liste_aux : + if dico.has_key(cle) : + if ( dico[cle] != None ) : + motscsi[cle] = dico[cle] +# +# 4.3.1.4. ==> Les critères de raffinement et les niveaux extremes +# + if ( modhom == "ADAP" ) : + Liste_aux = [ ] + if ( ADAPTATION['LIBRE'] == 'RAFF_DERA' or ADAPTATION['LIBRE'] == 'RAFFINEMENT' ) : + Liste_aux.append('CRIT_RAFF_ABS') + Liste_aux.append('CRIT_RAFF_REL') + Liste_aux.append('CRIT_RAFF_PE') + if ( ADAPTATION['LIBRE'] == 'RAFF_DERA' or ADAPTATION['LIBRE'] == 'DERAFFINEMENT' ) : + Liste_aux.append('CRIT_DERA_ABS') + Liste_aux.append('CRIT_DERA_REL') + Liste_aux.append('CRIT_DERA_PE') + niveau = 0 + if ( ADAPTATION['LIBRE'] == 'RAFF_DERA' or ADAPTATION['LIBRE'] == 'RAFFINEMENT' or ADAPTATION['UNIFORME'] == 'RAFFINEMENT' ) : + Liste_aux.append('NIVE_MAX') + niveau = niveau + 1 + if ( ADAPTATION['LIBRE'] == 'RAFF_DERA' or ADAPTATION['LIBRE'] == 'DERAFFINEMENT' or ADAPTATION['UNIFORME'] == 'DERAFFINEMENT' ) : + Liste_aux.append('NIVE_MIN') + niveau = niveau + 2 + for mot_cle in Liste_aux : + if ( ADAPTATION[mot_cle] != None ) : + motscsi[mot_cle] = ADAPTATION[mot_cle] +# + if ( niveau == 2 ) : + if ( ADAPTATION['NIVE_MIN'] > ADAPTATION['NIVE_MAX'] ) : + self.cr.fatal("Le niveau minimum doit etre inferieur au niveau maximum.") + codret = codret + 1 +# +# 4.3.1.5. ==> Mise à jour de la solution +# + if ( MAJ_CHAM != None ) : + motscsi['MAJ_CHAM'] = 'OUI' +# +# 4.3.1.6. ==> Numéro d'itération +# + if ( modhom == "ADAP" ) : + motscsi['NITER'] = niter +# +# 4.3.1.7. ==> Suivi de la frontiere +# + if args.has_key('GROUP_MA') : + if ( args['GROUP_MA'] != None ) : + motscsi['GROUP_MA'] = args['GROUP_MA'] +# +# 4.3.1.8. ==> Bilan +# + motscfa['TRAITEMENT'] = _F(**motscsi) +# +# 4.3.2. ==> L'analyse +# + motscsi={} + if ( NOMBRE != None ) : motscsi['NOMBRE' ] = NOMBRE + if ( QUALITE != None ) : motscsi['QUALITE' ] = QUALITE + if ( CONNEXITE != None ) : motscsi['CONNEXITE' ] = CONNEXITE + if ( TAILLE != None ) : motscsi['TAILLE' ] = TAILLE + if ( INTERPENETRATION != None ) : motscsi['INTERPENETRATION' ] = INTERPENETRATION +# + motscfa['ANALYSE'] = _F(**motscsi) +# +# 4.3.3. ==> La commande +# +# 4.3.3.1. ==> Les fichiers annexes +# + dico = {} +# + Fichier_Configuration = os.path.join(Rep_Calc_HOMARD,'HOMARD.Configuration') +# 1234567890123456 + dico[Fichier_Configuration] = ('HOMARD_CONFIG','FICHIER_CONF',unite) +# + if ( modhom != "ADAP" ) : + unite = unite + 1 + Fichier_Donnees = os.path.join(Rep_Calc_HOMARD,'HOMARD.Donnees') +# 1234567890123456 + dico[Fichier_Donnees] = ('HOMARD_DONNEES','FICHIER_DONN',unite) +# +# 4.3.3.2. ==> L'ouverture de ces fichiers +# + for fic in dico.keys() : + DEFI_FICHIER ( ACTION= "ASSOCIER", NOM_SYSTEME = fic, FICHIER = dico[fic][0], UNITE = dico[fic][2], + TYPE = "ASCII", ACCES = "NEW", INFO = INFO ) + motscfa[dico[fic][1]] = dico[fic][0] +# +# 4.3.3.3. ==> Ecriture +# +### print motscfa + IMPR_FICO_HOMA ( INFO=INFO, LANGUE = LANGUE, NON_SIMPLEXE = NON_SIMPLEXE, **motscfa ) +# +### for fic in dico.keys() : +### print "\nContenu de ", fic +### fichier = open (fic,'r') +### les_lignes = fichier.readlines() +### fichier.close() +### for ligne in les_lignes : +### print ligne[:-1] +# +# 4.3.3.4. ==> La fermeture des fichiers locaux +# Remarque : il faut le faire ici pour que le gestionnaire de DEFI_FICHIER soit à jour +# Remarque : aujourd'hui on est obligé de passer par le numéro d'unité logique +# + for fic in dico.keys() : + DEFI_FICHIER ( ACTION= "LIBERER", NOM_SYSTEME = fic, UNITE = dico[fic][2], INFO = INFO ) +# +# 4.4. ==> Ecriture de la commande d'exécution de homard +# Remarque : dans la donnée de la version de HOMARD, il faut remplacer +# le _ de la donnee par un ., qui +# est interdit dans la syntaxe du langage de commandes ASTER +# Remarque : il faut remplacer le N majuscule de la donnee par +# un n minuscule, qui est interdit dans la syntaxe du langage +# de commandes ASTER +# Remarque : pour le nommage des fichiers d'échange entre ASTER et HOMARD, on utilise +# la convention implicite du fort.n des entrees/sorties au format MED +# + VERSION_HOMARD=string.replace(VERSION_HOMARD,'_','.') + VERSION_HOMARD=string.replace(VERSION_HOMARD,'N','n') + if ( VERSION_HOMARD[-6:]=='_PERSO' ): +# motscsi['ARGUMENT']=_F('TYPEXE'='-PERSO') + VERSION_HOMARD=VERSION_HOMARD[:-6] +# + if ( modhom == "ADAP" ) : + Fichier_Donnees = '0' +# + EXEC_LOGICIEL ( ARGUMENT = (_F(NOM_PARA=Rep_Calc_HOMARD), # nom du repertoire + _F(NOM_PARA=VERSION_HOMARD), # version de homard + _F(NOM_PARA=str(INFO)), # niveau d information + _F(NOM_PARA=Fichier_Donnees), # fichier de données HOMARD + ), + LOGICIEL = homard + ) +# +# 4.5. ==> Ecriture de la commande de lecture des resultats med +# Remarque : +# La fonction self.DeclareOut(a,b) focntionne ainsi : +# a est une chaine de caracteres +# b est la variable déclarée dans la commande +# le but est de associer le contenu de b à la vaiable locale qui sera désignée par a +# Exemple : +# self.DeclareOut('maillage_np1',ADAPTATION['MAILLAGE_NP1']) +# ==> la variable maillage_np1 est identifiée à l'argument 'MAILLAGE_NP1' du mot-clé ADAPTATION +# + if ( modhom == "ADAP" ) : +# +# 4.5.1. ==> Le maillage +# + self.DeclareOut('maillage_np1',ADAPTATION['MAILLAGE_NP1']) + for dico in Liste_Maillages : + if ( dico['Action'] == 'A_lire' ) : + maillage_np1 = LIRE_MAILLAGE ( UNITE = Unite_Fichier_HOMARD_vers_ASTER, + FORMAT = 'MED', + NOM_MED = dico['NOM_MED'], + VERI_MAIL = _F(VERIF='NON'), INFO_MED = INFO, INFO = INFO ) +# +# 4.5.2. ==> Les champs +# + for dico in Liste_Champs : + if ( dico['Type_Champ'] == 'CHAMP' ) : +### print dico + self.DeclareOut('champ_maj',dico['CHAM_MAJ']) + motscsi={} + for cle in [ 'NUME_ORDRE', 'INST', 'PRECISION', 'CRITERE' ] : + if dico.has_key(cle) : + if ( dico[cle] != None ) : + motscsi[cle] = dico[cle] + if dico.has_key('NUME_ORDRE') : + motscsi['NUME_PT'] = dico['NUME_ORDRE'] + champ_maj = LIRE_CHAMP ( UNITE = Unite_Fichier_HOMARD_vers_ASTER, FORMAT = 'MED', + MAILLAGE = maillage_np1, + NOM_MED = dico['NOM_MED'], NOM_CMP_IDEM = 'OUI', TYPE_CHAM = dico['TYPE_CHAM'], + INFO = INFO, **motscsi ) +# +#-------------------------------------------------------------------- +# 5. Menage des fichiers MED et HOMARD devenus inutiles +#-------------------------------------------------------------------- +# + fic = os.path.join(Rep_Calc_HOMARD,"MAILL."+str(niter)+".HOM") + Liste_aux = [ Fichier_ASTER_vers_HOMARD, Fichier_HOMARD_Entree, fic ] + if ( modhom == "ADAP" ) : + Liste_aux.append(Fichier_HOMARD_vers_ASTER) + Liste_aux.append(Fichier_HOMARD_Sortie) +# + for fic in Liste_aux : + if ( INFO > 1 ) : print "Destruction du fichier ", fic + if os.path.islink(fic) : + try : + os.unlink(fic) + except os.error,codret_partiel : + self.cr.warn("Code d'erreur de unlink : " + str(codret_partiel[0]) + " : " + codret_partiel[1]) + self.cr.warn("Impossible d'enlever le lien sur le fichier : "+fic) + codret = codret + 1 + if os.path.isfile(fic) : + try : + os.remove(fic) + except os.error,codret_partiel : + self.cr.warn("Code d'erreur de remove : " + str(codret_partiel[0]) + " : " + codret_partiel[1]) + self.cr.warn("Impossible de détruire le fichier : "+fic) + codret = codret + 1 +### print os.listdir(Rep_Calc_ASTER) +### print os.listdir(Rep_Calc_HOMARD) +# +#-------------------------------------------------------------------- +# 6. C'est fini ! +#-------------------------------------------------------------------- +# + return codret diff --git a/Aster/Cata/Macro/macr_cabri_calc_ops.py b/Aster/Cata/Macro/macr_cabri_calc_ops.py new file mode 100644 index 00000000..29274170 --- /dev/null +++ b/Aster/Cata/Macro/macr_cabri_calc_ops.py @@ -0,0 +1,539 @@ +#@ MODIF macr_cabri_calc_ops Macro DATE 09/09/2003 AUTEUR DURAND C.DURAND +# 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 macr_cabri_calc_ops(self,MAILLAGE,MODELE_MECA,MODELE_THER,CHAR_THER, + CHAR_MECA,RESU_THER, + AFFE_MATERIAU,DEFI_CHAR_THER,DEFI_CHAR_MECA,RELATION,SOLVEUR,CONVERGENCE,NEWTON, + INCREMENT,CHAM_MATER,**args): + """ + Ecriture de la macro MACR_CABRI_CALC + """ + + ################################################################# + ########## PREPARATION MACRO + ################################################################# + + from Accas import _F + + ier =0 + + # On met certains mots-clefs dans des variables locales pour les proteger + affemateriau = AFFE_MATERIAU + mail = MAILLAGE + + + # On importe les definitions des commandes a utiliser dans la macro + # Le nom de la variable doit etre obligatoirement le nom de la commande + DEFI_GROUP = self.get_cmd('DEFI_GROUP') + AFFE_MATERIAU = self.get_cmd('AFFE_MATERIAU') + AFFE_MODELE = self.get_cmd('AFFE_MODELE') + MODI_MAILLAGE = self.get_cmd('MODI_MAILLAGE') + AFFE_CHAR_THER_F = self.get_cmd('AFFE_CHAR_THER_F') + AFFE_CHAR_THER = self.get_cmd('AFFE_CHAR_THER') + AFFE_CHAR_MECA_F = self.get_cmd('AFFE_CHAR_MECA_F') + AFFE_CHAR_MECA = self.get_cmd('AFFE_CHAR_MECA') + DEFI_FONCTION = self.get_cmd('DEFI_FONCTION') + DEFI_LIST_REEL = self.get_cmd('DEFI_LIST_REEL') + THER_LINEAIRE = self.get_cmd('THER_LINEAIRE') + STAT_NON_LINE = self.get_cmd('STAT_NON_LINE') + + # La macro compte pour 1 dans la numerotation des commandes + self.set_icmd(1) + + # Le concept sortant (de type evol_noli) est nomme 'resumeca' dans + # le contexte de la macro + self.DeclareOut('resumeca',self.sd) + self.DeclareOut('mail',MAILLAGE) + + ################################################################# + ########## PREPARATION DES MODELES + ################################################################# + + # Definition des groupes + mail=DEFI_GROUP(reuse =mail,MAILLAGE=mail, + CREA_GROUP_NO=( + _F(GROUP_MA='M_GOU',NOM='N_M_GOU',), + _F(GROUP_MA='M_JOI',NOM='N_M_JOI',), + _F(GROUP_MA='SCBJ',NOM='N_SCBJ',), + _F(GROUP_MA='SCJB',NOM='N_SCJB',), + _F(GROUP_MA='M_L_AA',NOM='N_M_L_AA',), + _F(GROUP_MA='SCEG',NOM='N_SCEG',), + _F(GROUP_MA='SCGE',NOM='N_SCGE',),),) + + # Creation du modele thermique + if MODELE_THER != None: + self.DeclareOut('modther',MODELE_THER) + + modther=AFFE_MODELE(MAILLAGE=mail, + AFFE=_F(GROUP_MA=('VTOT','M_GOU','M_TUB','M_JOI','SCBJ','SCJB', + 'M_L_AA','M_INT','M_L_SA','M_EXT','SCEG','SCGE',), + PHENOMENE='THERMIQUE', + MODELISATION='3D_DIAG',), + ); + + # Creation du modele mecanique + if MODELE_MECA != None: + self.DeclareOut('modmeca',MODELE_MECA) + + modmeca = AFFE_MODELE(MAILLAGE=mail, + AFFE=_F(GROUP_MA=('VTOT','M_GOU','M_TUB','M_JOI','SCBJ','SCJB', + 'M_L_AA','M_L_SA','SCEG','SCGE','M_INT','M_EXT',), + PHENOMENE='MECANIQUE', + MODELISATION='3D',), + ); + + # Orientation des mailles + mail=MODI_MAILLAGE(reuse =mail, + MAILLAGE=mail, + ORIE_PEAU_3D=(_F(GROUP_MA=('M_INT','M_TUB',),), + _F(GROUP_MA=('M_L_AA','M_JOI','M_L_SA',),),), + MODELE=modmeca,); + + + + # Affectation des materiaux + if CHAM_MATER != None: + self.DeclareOut('_cham',CHAM_MATER) + motscles={} + motscles['AFFE']=[] + for mat in affemateriau: + if mat['TOUT'] == None: + # Creation de mots-cles pour les AFFE_CHAR_MECA + motscles['AFFE'].append(_F(GROUP_MA=mat['GROUP_MA'], + MATER = mat['MATER'], + TEMP_REF = mat['TEMP_REF'],) ) + else: + # Creation de mots-cles pour les AFFE_CHAR_MECA + motscles['AFFE'].append(_F(TOUT='OUI', + MATER = mat['MATER'], + TEMP_REF = mat['TEMP_REF'],) ) + + _cham = AFFE_MATERIAU(MAILLAGE=mail, + MODELE=modther, + AFFE=motscles['AFFE'], + ) + + ################################################################# + ########## CONDITIONS AUX LIMITES THERMIQUES + ################################################################# + # Recuperation des parametres thermiques + + if DEFI_CHAR_THER != None: + temp_ini = DEFI_CHAR_THER['TEMP_INIT'] + if DEFI_CHAR_THER['COEF_H_FLUI']!=None: + coef_int = DEFI_CHAR_THER['COEF_H_FLUI'] + else: + coef_int = DEFI_FONCTION(NOM_PARA='INST', + VALE=(0.0,0.016, + 7200.0,0.016,), + PROL_DROITE='CONSTANT', + PROL_GAUCHE='CONSTANT',); + if DEFI_CHAR_THER['TEMP_EXT_FLUI']!=None: + temp_int = DEFI_CHAR_THER['TEMP_EXT_FLUI'] + else: + temp_int = DEFI_FONCTION(NOM_PARA='INST', + VALE=(0.0,temp_ini,1.0,temp_ini,11.0,60.0, + 600.0,60.0,610.0,280.0,1800.0,280.0,7200.0,280.0,), + PROL_DROITE='CONSTANT', + PROL_GAUCHE='CONSTANT',); + if DEFI_CHAR_THER['COEF_H_AIR']!=None: + coef_ext = DEFI_CHAR_THER['COEF_H_AIR'] + else: + coef_ext = DEFI_FONCTION(NOM_PARA='INST', + VALE=(0.0,1e-05,7200.0,1e-05,), + PROL_DROITE='CONSTANT', + PROL_GAUCHE='CONSTANT',); + + if DEFI_CHAR_THER['TEMP_EXT_AIR']!=None: + temp_ext = DEFI_CHAR_THER['TEMP_EXT_AIR'] + else: + temp_ext = DEFI_FONCTION(NOM_PARA='INST', + VALE=(0.0,20.0,7200.0,20.0,), + PROL_DROITE='CONSTANT', + PROL_GAUCHE='CONSTANT',); + if DEFI_CHAR_THER['LIST_INST']!=None: + transi1 = DEFI_CHAR_THER['LIST_INST'] + else: + transi1 = DEFI_LIST_REEL(DEBUT=0.0, + INTERVALLE=(_F(JUSQU_A=1.0, + NOMBRE=1,), + _F(JUSQU_A=11.0, + NOMBRE=10,), + _F(JUSQU_A=600.0, + NOMBRE=10,), + _F(JUSQU_A=610.0, + NOMBRE=30,), + _F(JUSQU_A=1800.0, + NOMBRE=30,), + _F(JUSQU_A=7200.0, + NOMBRE=10,),),); + else: + temp_ini = DEFI_CHAR_THER['TEMP_INIT'] + coef_int = DEFI_FONCTION(NOM_PARA='INST', + VALE=(0.0,0.016, + 7200.0,0.016,), + PROL_DROITE='CONSTANT', + PROL_GAUCHE='CONSTANT',); + temp_int = DEFI_FONCTION(NOM_PARA='INST', + VALE=(0.0,temp_ini,1.0,temp_ini,11.0,60.0, + 600.0,60.0,610.0,280.0,1800.0,280.0,7200.0,280.0,), + PROL_DROITE='CONSTANT', + PROL_GAUCHE='CONSTANT',); + coef_ext = DEFI_FONCTION(NOM_PARA='INST', + VALE=(0.0,1e-05,7200.0,1e-05,), + PROL_DROITE='CONSTANT', + PROL_GAUCHE='CONSTANT',); + temp_ext = DEFI_FONCTION(NOM_PARA='INST', + VALE=(0.0,20.0,7200.0,20.0,), + PROL_DROITE='CONSTANT', + PROL_GAUCHE='CONSTANT',); + transi1 = DEFI_LIST_REEL(DEBUT=0.0, + INTERVALLE=(_F(JUSQU_A=1.0, + NOMBRE=1,), + _F(JUSQU_A=11.0, + NOMBRE=10,), + _F(JUSQU_A=600.0, + NOMBRE=10,), + _F(JUSQU_A=610.0, + NOMBRE=30,), + _F(JUSQU_A=1800.0, + NOMBRE=30,), + _F(JUSQU_A=7200.0, + NOMBRE=10,),),); + # Que sauver ? + if CHAR_THER != None: + for m in CHAR_THER: + if m['TYPE']=="BRIDE_FLUIDE": + self.DeclareOut('cl_th1',m['CHARGE']) + if m['TYPE']=="BRIDE_AIR": + self.DeclareOut('cl_th2',m['CHARGE']) + if m['TYPE']=="ECROU_GOUJON": + self.DeclareOut('cl_th3',m['CHARGE']) + if m['TYPE']=="BRIDE_JOINT": + self.DeclareOut('cl_th4',m['CHARGE']) + + # Echanges thermiques internes entre le fluide et la bride + cl_th1=AFFE_CHAR_THER_F(MODELE=modther, + ECHANGE=_F(GROUP_MA = 'M_INT', + COEF_H = coef_int, + TEMP_EXT = temp_int,),); + + # Echanges thermiques externes entre bride et air ambiant + cl_th2=AFFE_CHAR_THER_F(MODELE=modther, + ECHANGE=_F(GROUP_MA='M_EXT', + COEF_H=coef_ext, + TEMP_EXT=temp_ext,),); + + # Echanges thermiques entre ecrou et goujon + cl_th3=AFFE_CHAR_THER(MODELE=modther, + LIAISON_GROUP=_F(GROUP_NO_1='N_SCEG', + GROUP_NO_2='N_SCGE', + DDL_1='TEMP', + COEF_MULT_1=1.0, + DDL_2='TEMP', + COEF_MULT_2=-1.0, + COEF_IMPO=0.0,),); + + # Echanges thermiques entre bride et joint + cl_th4=AFFE_CHAR_THER(MODELE=modther, + LIAISON_GROUP=_F(GROUP_NO_1='N_SCBJ', + GROUP_NO_2='N_SCJB', + DDL_1='TEMP', + COEF_MULT_1=1.0, + DDL_2='TEMP', + COEF_MULT_2=-1.0, + COEF_IMPO=0.0,),); + + + + ################################################################# + ########## CALCUL THERMIQUE + ################################################################# + if RESU_THER != None: + self.DeclareOut('resuther',RESU_THER) + + resuther=THER_LINEAIRE(MODELE=modther, + CHAM_MATER=_cham, + EXCIT=(_F(CHARGE=cl_th1,), + _F(CHARGE=cl_th2,), + _F(CHARGE=cl_th3,), + _F(CHARGE=cl_th4,),), + INCREMENT=_F(LIST_INST=transi1,), + TEMP_INIT=_F(VALE=temp_ini,), + TITRE='CABRI THERMIQUE &DATE &HEURE',); + + ################################################################# + ########## CONDITIONS AUX LIMITES MECANIQUES + ################################################################# + # Recuperation des parametres mecaniques + if DEFI_CHAR_MECA != None: + if DEFI_CHAR_MECA['PRETENS']!=None: + f_pret = DEFI_CHAR_MECA['PRETENS'] + else: + f_pret=DEFI_FONCTION(NOM_PARA='INST', + VALE=(0.0,0.0,1.0,-0.02,), + PROL_DROITE='CONSTANT', + PROL_GAUCHE='CONSTANT',); + if DEFI_CHAR_MECA['PRES_REP']!=None: + pre_int = DEFI_CHAR_MECA['PRES_REP'] + else: + pre_int = DEFI_FONCTION(NOM_PARA='INST', + VALE=(0.0,0.0,1.0,0.0,11.0,16.0,), + PROL_DROITE='CONSTANT', + PROL_GAUCHE='CONSTANT',); + if DEFI_CHAR_MECA['EFFE_FOND']!=None: + eff_fond = DEFI_CHAR_MECA['EFFE_FOND'] + else: + eff_fond=DEFI_FONCTION(NOM_PARA='INST', + VALE=(0.0,-0.0,1.0,-0.0,11.0,-20.607059,), + PROL_DROITE='CONSTANT', + PROL_GAUCHE='CONSTANT',); + else: + f_pret=DEFI_FONCTION(NOM_PARA='INST', + VALE=(0.0,0.0,1.0,-0.02,), + PROL_DROITE='CONSTANT', + PROL_GAUCHE='CONSTANT',); + + pre_int = DEFI_FONCTION(NOM_PARA='INST', + VALE=(0.0,0.0,1.0,0.0,11.0,16.0,), + PROL_DROITE='CONSTANT', + PROL_GAUCHE='CONSTANT',); + + eff_fond=DEFI_FONCTION(NOM_PARA='INST', + VALE=(0.0,-0.0,1.0,-0.0,11.0,-20.607059,), + PROL_DROITE='CONSTANT', + PROL_GAUCHE='CONSTANT',); + # Que sauver ? + if CHAR_MECA != None: + for m in CHAR_MECA: + if m['TYPE']=="BLOC_BAS_GOUJ": + self.DeclareOut('cl_me1',m['CHARGE']) + if m['TYPE']=="BLOC_BAS_JOINT": + self.DeclareOut('cl_me2',m['CHARGE']) + if m['TYPE']=="BLOC_LAT_ALES": + self.DeclareOut('cl_me3',m['CHARGE']) + if m['TYPE']=="BLOC_LAT_NALES": + self.DeclareOut('cl_me4',m['CHARGE']) + if m['TYPE']=="PLAN_TUBE": + self.DeclareOut('cl_me5',m['CHARGE']) + if m['TYPE']=="PRES_FLU": + self.DeclareOut('cl_me6',m['CHARGE']) + if m['TYPE']=="EFFET_FOND": + self.DeclareOut('cl_me7',m['CHARGE']) + if m['TYPE']=="CONT_JOINT": + self.DeclareOut('cl_me8',m['CHARGE']) + if m['TYPE']=="DEFO_THER": + self.DeclareOut('cl_me9',m['CHARGE']) + if m['TYPE']=="SERR_ECROU_1": + self.DeclareOut('cl_me10',m['CHARGE']) + if m['TYPE']=="SERR_ECROU_2": + self.DeclareOut('cl_me11',m['CHARGE']) + + + # Blocage bas du goujon + cl_me1=AFFE_CHAR_MECA(MODELE=modmeca, + DDL_IMPO=_F(GROUP_NO='N_M_GOU', + DZ=0.0,), + INFO=2,); + # Blocage bas du joint + cl_me2=AFFE_CHAR_MECA(MODELE=modmeca, + DDL_IMPO=_F(GROUP_NO='N_M_JOI', + DZ=0.0,), + INFO=2,); + + # Blocage lateral, face laterale avec alesage + cl_me3=AFFE_CHAR_MECA(MODELE=modmeca, + DDL_IMPO=_F(GROUP_NO='N_M_L_AA', + DY=0.0,), + INFO=2,); + + # Face laterale sans alesage + cl_me4=AFFE_CHAR_MECA(MODELE=modmeca, + FACE_IMPO=_F(GROUP_MA='M_L_SA', + DNOR=0.0,), + INFO=2,); + + # Condition de planeite de la face de coupe du tube + cl_me5=AFFE_CHAR_MECA(MODELE=modmeca, + LIAISON_UNIF=_F(GROUP_MA='M_TUB', + DDL='DZ',), + INFO=2,); + # Pression due au fluide + cl_me6=AFFE_CHAR_MECA_F(MODELE=modmeca, + PRES_REP=_F(GROUP_MA='M_INT', + PRES=pre_int,), + INFO=2,); + + # Effet de fond + cl_me7=AFFE_CHAR_MECA_F(MODELE=modmeca, + PRES_REP=_F(GROUP_MA='M_TUB', + PRES=eff_fond,), + INFO=2,); + + # Contact zone de joint + cl_me8=AFFE_CHAR_MECA(MODELE=modmeca, + CONTACT=_F(GROUP_MA_1='SCBJ', + GROUP_MA_2='SCJB',), + INFO=2,); + # Deformation thermique + cl_me9=AFFE_CHAR_MECA( MODELE=modmeca, + TEMP_CALCULEE=resuther, + INFO=2,); + + # Serrage ecrou/goujon (pre-tensionnement) + cl_me10=AFFE_CHAR_MECA_F(MODELE=modmeca, + LIAISON_GROUP=_F(GROUP_NO_1='N_SCEG', + GROUP_NO_2='N_SCGE', + DDL_1='DZ', + COEF_MULT_1=1.0, + DDL_2='DZ', + COEF_MULT_2=-1.0, + COEF_IMPO=f_pret,), + INFO=2,); + + cl_me11=AFFE_CHAR_MECA(MODELE=modmeca, + LIAISON_GROUP=_F(GROUP_NO_1='N_SCEG', + GROUP_NO_2='N_SCGE', + DDL_1='DX', + COEF_MULT_1=1.0, + DDL_2='DX', + COEF_MULT_2=-1.0, + COEF_IMPO=0.0,), + INFO=2,); + + + ################################################################# + ########## CALCUL MECANIQUE + ################################################################# + # Options de convergence + solveur=SOLVEUR.cree_dict_valeurs(SOLVEUR.mc_liste) + + # Elimination des valeurs "None" + for i in solveur.keys(): + if solveur[i]==None : del solveur[i] + + + transi2 = DEFI_LIST_REEL(DEBUT=0.0, + INTERVALLE=(_F(JUSQU_A=1.0, + NOMBRE=2,), + _F(JUSQU_A=11.0, + NOMBRE=20,), + _F(JUSQU_A=600.0, + NOMBRE=20,), + _F(JUSQU_A=610.0, + NOMBRE=20,), + _F(JUSQU_A=1800.0, + NOMBRE=20,), + _F(JUSQU_A=7200.0, + NOMBRE=20,),),); + + # Options d'incrementation + if INCREMENT != None: + if INCREMENT['LIST_INST'] != None: + listinst = INCREMENT['LIST_INST'] + else: + listinst = transi2 + + increment=INCREMENT.cree_dict_valeurs(INCREMENT.mc_liste) + + # Elimination des valeurs "None" + for i in increment.keys(): + if increment[i]==None : del increment[i] + + increment['LIST_INST'] = listinst + + else: + listinst = transi2 + increment =_F( + LIST_INST = listinst, + ), + + # Options de Newton + newton=NEWTON.cree_dict_valeurs(NEWTON.mc_liste) + # Elimination des valeurs "None" + for i in newton.keys(): + if newton[i]==None : del newton[i] + + # Options de convergence + convergence=CONVERGENCE.cree_dict_valeurs(CONVERGENCE.mc_liste) + # Elimination des valeurs "None" + for i in convergence.keys(): + if convergence[i]==None : del convergence[i] + + # Options de comportement + # Type incremental (=1) ou elastique (=0) + comp_incr = 0 + if RELATION: + relation=RELATION + if relation == 'VMIS_ISOT_TRAC': + comp_incr = 1 + else: + comp_incr = 0 + else: + relation = 'ELAS' + comp_incr = 0 + + + # Parametres du calcul + if comp_incr == 1: + resumeca=STAT_NON_LINE(MODELE=modmeca, + CHAM_MATER=_cham, + EXCIT=(_F(CHARGE=cl_me1,), + _F(CHARGE=cl_me2,), + _F(CHARGE=cl_me3,), + _F(CHARGE=cl_me4,), + _F(CHARGE=cl_me5,), + _F(CHARGE=cl_me6,), + _F(CHARGE=cl_me7,), + _F(CHARGE=cl_me8,), + _F(CHARGE=cl_me9,), + _F(CHARGE=cl_me10,), + _F(CHARGE=cl_me11,), + ), + SOLVEUR = solveur, + COMP_INCR =_F(RELATION=relation,), + NEWTON = newton, + INCREMENT = increment, + CONVERGENCE = convergence, + TITRE='CABRI THERMOM\xe9CANIQUE &DATE &HEURE',); + else: + resumeca=STAT_NON_LINE(MODELE=modmeca, + CHAM_MATER=_cham, + EXCIT=(_F(CHARGE=cl_me1,), + _F(CHARGE=cl_me2,), + _F(CHARGE=cl_me3,), + _F(CHARGE=cl_me4,), + _F(CHARGE=cl_me5,), + _F(CHARGE=cl_me6,), + _F(CHARGE=cl_me7,), + _F(CHARGE=cl_me8,), + _F(CHARGE=cl_me9,), + _F(CHARGE=cl_me10,), + _F(CHARGE=cl_me11,), + ), + SOLVEUR = solveur, + COMP_ELAS =_F(RELATION=relation,), + NEWTON = newton, + INCREMENT = increment, + CONVERGENCE = convergence, + TITRE='CABRI THERMOM\xe9CANIQUE &DATE &HEURE',); + + return ier + diff --git a/Aster/Cata/Macro/macr_cabri_mail_dat.py b/Aster/Cata/Macro/macr_cabri_mail_dat.py new file mode 100644 index 00000000..bd554574 --- /dev/null +++ b/Aster/Cata/Macro/macr_cabri_mail_dat.py @@ -0,0 +1,627 @@ +#@ MODIF macr_cabri_mail_dat Macro DATE 20/05/2003 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. +# ====================================================================== + +# Données pour les brides standards + + + +# Pour ajouter une bride x: +# Définir un dico_bride_x comme ci-dessous puis ajoutez-le à dico_bride_std + +# dictionnaire pour la description des variables +dico_var_geo = {'nbgouj':'Nombre de goujons de la jonction boulonnée (GOUJ_N_GOUJON)', + 'dint':'Diamètre intérieur de la bride (BRID_D_INT)', + 'dex1':'Diamétre extérieur de la conduite (TUBU_D_EXT)', + 'dex2':'Position (diamètre) du congé de la bride (BRID_D_CONGE)', + 'dex3':'Diamètre de l''épaulement de la bride au niveau de l''interface d''étanchéité (BRID_D_EPAUL)', + 'dtrou':'Position des alésages de la bride permettant l''introduction des goujons (BRID_P_ALESAG)', + 'dext':'Diamètre extérieur de la bride (BRID_D_EXT)', + 'dt':'Diamètre des alésages de la bride permettant l''introduction des goujons (BRID_D_ALESAG)', + 'drd':'Diamètre de la rondelle (GOUJ_D_RONDEL)', + 'dg':'Diamètre des goujons de la jonction boulonnée (GOUJ_D_GOUJON)', + 'dec':'Diamètre de l''écrou (GOUJ_D_ECROU)', + 'rcong':'Rayon du congé de la bride (BRID_R_CONGE)', + 'he':'Epaisseur de la rondelle (GOUJ_E_RONDEL)', + 'e':'Epaisseur de l''écrou (GOUJ_E_ECROU)', + 'hc1':'Hauteur de la bride (BRID_H)', + 'hcg1':'Hauteur de conduite (TUBU_H)', + 'hb':'Hauteur de l''épaulement de la bride au niveau de l''interface d''étanchéité (BRID_H_EPAUL)', + 'htrou':'Hauteur des alésages de la bride permettant l''introduction des goujons (BRID_H_ALESAG)', + 'pf':'Profondeur (épaisseur) des filets des goujons (GOUJ_E_FILET)', + 'j':'Epaisseur du joint au niveau de l''interface d''étanchéité (ETAN_E_JOINT)'} + +dico_var_msh = {'nrad':'Nombre d''éléments radiaux (NBR_RAD)', + 'ncir':'Nombre d''éléments circonférentiels (NBR_CIR)', + 'nver':'Nombre d''éléments verticaux (NBR_VER)', + 'nsect':'Nombre d''éléments de l''alésage (NBR_ALE)', + 'temps':'Temps d''analyse'} + +# dictionnaires des brides standards +dico_bride_A = {'nbgouj': 4, + 'dint': 15.76, + 'dex1': 21.3, + 'dex2': 38., + 'dex3': 48., + 'dtrou': 67., + 'dext': 95., + 'dt': 14., + 'drd': 25., + 'dg': 12., + 'dec': 18., + 'rcong': 3., + 'he': 12., + 'e': 2.5, + 'hc1': 46.5, + 'hcg1': 20, + 'hb': 1.5, + 'htrou': 20., + 'pf': 1.5, + 'j': 2} + +dico_bride_AA = {'nbgouj': 32, + 'dint': 336.5, + 'dex1': 355.6, + 'dex2': 395., + 'dex3': 415., + 'dtrou': 460., + 'dext': 515., + 'dt': 22., + 'drd': 36., + 'dg': 20., + 'dec': 30., + 'rcong': 5., + 'he': 20., + 'e': 3., + 'hc1': 115., + 'hcg1': 115./2., + 'hb': 3., + 'htrou': 47., + 'pf': 2.2, + 'j': 2} + +dico_bride_B = {'nbgouj': 4, + 'dint': 26.64, + 'dex1': 33.4, + 'dex2': 53., + 'dex3': 63., + 'dtrou': 88., + 'dext': 123., + 'dt': 16., + 'drd': 27., + 'dg': 14., + 'dec': 21., + 'rcong': 4., + 'he': 14., + 'e': 2.5, + 'hc1': 59., + 'hcg1': 59./2., + 'hb': 1.5, + 'htrou': 27.5, + 'pf': 1.7, + 'j': 2} +dico_bride_B1 = {'nbgouj': 4, + 'dint': 24.3, + 'dex1': 33.4, + 'dex2': 53., + 'dex3': 63., + 'dtrou': 88., + 'dext': 123., + 'dt': 16., + 'drd': 27., + 'dg': 14., + 'dec': 21., + 'rcong': 4., + 'he': 14., + 'e': 2.5, + 'hc1': 59., + 'hcg1': 59./2., + 'hb': 1.5, + 'htrou': 27.5, + 'pf': 1.7, + 'j': 2} +dico_bride_C = {'nbgouj': 8, + 'dint': 52.48, + 'dex1': 60.3, + 'dex2': 84., + 'dex3': 100., + 'dtrou': 127., + 'dext': 165., + 'dt': 18., + 'drd': 30, + 'dg': 16., + 'dec': 24., + 'rcong': 4., + 'he': 16., + 'e': 3, + 'hc1': 70., + 'hcg1': 70./2., + 'hb': 1.5, + 'htrou': 21., + 'pf': 1.7, + 'j': 2} +dico_bride_D = {'nbgouj': 8, + 'dint': 42.9, + 'dex1': 60.3, + 'dex2': 84., + 'dex3': 100., + 'dtrou': 127., + 'dext': 165., + 'dt': 18., + 'drd': 30, + 'dg': 16., + 'dec': 24., + 'rcong': 5., + 'he': 16., + 'e': 3., + 'hc1': 87.6, + 'hcg1': 87.6/2., + 'hb': 1.5, + 'htrou': 38.5, + 'pf': 1.7, + 'j': 2} +dico_bride_D1 = {'nbgouj': 8, + 'dint': 49.22, + 'dex1': 60.3, + 'dex2': 84., + 'dex3': 100., + 'dtrou': 127., + 'dext': 165., + 'dt': 18., + 'drd': 30, + 'dg': 16., + 'dec': 24., + 'rcong': 5., + 'he': 16., + 'e': 3., + 'hc1': 87.6, + 'hcg1': 87.6/2., + 'hb': 1.5, + 'htrou': 38.5, + 'pf': 1.7, + 'j': 2} +dico_bride_E = {'nbgouj': 8, + 'dint': 83.1, + 'dex1': 88.9, + 'dex2': 117.5, + 'dex3': 135., + 'dtrou': 165., + 'dext': 209., + 'dt': 18., + 'drd': 30., + 'dg': 16., + 'dec': 24., + 'rcong': 5., + 'he': 16., + 'e': 3., + 'hc1': 80., + 'hcg1': 80./2., + 'hb': 2., + 'htrou': 27., + 'pf': 1.7, + 'j': 2} +dico_bride_F = {'nbgouj': 8, + 'dint': 73.66, + 'dex1': 88.9, + 'dex2': 117.5, + 'dex3': 135., + 'dtrou': 165., + 'dext': 209., + 'dt': 18., + 'drd': 30., + 'dg': 16., + 'dec': 24., + 'rcong': 5., + 'he': 16., + 'e': 3., + 'hc1': 89., + 'hcg1': 89./2., + 'hb': 2., + 'htrou': 36., + 'pf': 1.7, + 'j': 2} +dico_bride_FF = {'nbgouj': 32, + 'dint': 396.99, + 'dex1': 406.4, + 'dex2': 440., + 'dex3': 455., + 'dtrou': 485., + 'dext': 535., + 'dt': 18., + 'drd': 30., + 'dg': 16., + 'dec': 24., + 'rcong': 5., + 'he': 16., + 'e': 3., + 'hc1': 99., + 'hcg1': 99./2., + 'hb': 3., + 'htrou': 40., + 'pf': 1.7, + 'j': 2} +dico_bride_G = {'nbgouj': 12, + 'dint': 66.7, + 'dex1': 88.9, + 'dex2': 117.5, + 'dex3': 135., + 'dtrou': 165., + 'dext': 209., + 'dt': 18., + 'drd': 30., + 'dg': 16., + 'dec': 24., + 'rcong': 5., + 'he': 16., + 'e': 3., + 'hc1': 98., + 'hcg1': 98./2., + 'hb': 2., + 'htrou': 45., + 'pf': 1.7, + 'j': 2} +dico_bride_GG = {'nbgouj': 36, + 'dint': 381., + 'dex1': 406.4, + 'dex2': 445., + 'dex3': 460., + 'dtrou': 495., + 'dext': 545., + 'dt': 22., + 'drd': 36, + 'dg': 20., + 'dec': 30., + 'rcong': 5., + 'he': 20., + 'e': 3., + 'hc1': 129., + 'hcg1': 129./2., + 'hb': 3., + 'htrou': 63., + 'pf': 2.2, + 'j': 2} +dico_bride_H = {'nbgouj': 12, + 'dint': 108.2, + 'dex1': 114.3, + 'dex2': 146., + 'dex3': 157., + 'dtrou': 190., + 'dext': 225., + 'dt': 18., + 'drd': 30., + 'dg': 16., + 'dec': 24., + 'rcong': 5., + 'he': 16., + 'e': 3., + 'hc1': 89., + 'hcg1': 89./2., + 'hb': 2., + 'htrou': 33., + 'pf': 1.7, + 'j': 2} +dico_bride_H1 = {'nbgouj': 12, + 'dint': 102.6, + 'dex1': 114.3, + 'dex2': 146., + 'dex3': 157., + 'dtrou': 190., + 'dext': 225., + 'dt': 18., + 'drd': 30., + 'dg': 16., + 'dec': 24., + 'rcong': 5., + 'he': 16., + 'e': 3., + 'hc1': 89., + 'hcg1': 89./2., + 'hb': 2., + 'htrou': 33., + 'pf': 1.7, + 'j': 2} +dico_bride_I = {'nbgouj': 18, + 'dint': 92.1, + 'dex1': 114.3, + 'dex2': 146., + 'dex3': 160., + 'dtrou': 200., + 'dext': 255., + 'dt': 20., + 'drd': 32., + 'dg': 18., + 'dec': 27., + 'rcong': 5., + 'he': 18., + 'e': 3., + 'hc1': 99., + 'hcg1': 99./2., + 'hb': 2., + 'htrou': 43., + 'pf': 2.2, + 'j': 2} +dico_bride_J = {'nbgouj': 18, + 'dint': 87.34, + 'dex1': 114.3, + 'dex2': 146., + 'dex3': 160., + 'dtrou': 200., + 'dext': 255., + 'dt': 20., + 'drd': 32., + 'dg': 18., + 'dec': 27., + 'rcong': 5., + 'he': 18., + 'e': 3., + 'hc1': 111., + 'hcg1': 111./2., + 'hb': 2., + 'htrou': 55., + 'pf': 2.2, + 'j': 2} +dico_bride_J1 = {'nbgouj': 18, + 'dint': 87.3, + 'dex1': 114.3, + 'dex2': 146., + 'dex3': 160., + 'dtrou': 200., + 'dext': 255., + 'dt': 22., + 'drd': 36., + 'dg': 20., + 'dec': 30., + 'rcong': 5., + 'he': 20., + 'e': 3., + 'hc1': 111., + 'hcg1': 111./2., + 'hb': 2., + 'htrou': 55., + 'pf': 2.2, + 'j': 2} +dico_bride_K = {'nbgouj': 8, + 'dint': 161.5, + 'dex1': 168.3, + 'dex2': 192., + 'dex3': 210., + 'dtrou': 235., + 'dext': 280., + 'dt': 18., + 'drd': 30., + 'dg': 16., + 'dec': 24., + 'rcong': 5., + 'he': 16., + 'e': 3., + 'hc1': 84., + 'hcg1': 84./2., + 'hb': 2., + 'htrou': 28., + 'pf': 1.7, + 'j': 2} +dico_bride_L = {'nbgouj': 16, + 'dint': 154.8, + 'dex1': 168.3, + 'dex2': 206., + 'dex3': 220., + 'dtrou': 255., + 'dext': 317., + 'dt': 18., + 'drd': 30., + 'dg': 16., + 'dec': 24., + 'rcong': 5., + 'he': 16., + 'e': 3., + 'hc1': 96., + 'hcg1': 96./2., + 'hb': 2., + 'htrou': 40., + 'pf': 1.7, + 'j': 2} +dico_bride_L1 = {'nbgouj': 16, + 'dint': 154.8, + 'dex1': 168.3, + 'dex2': 206., + 'dex3': 220., + 'dtrou': 255., + 'dext': 317., + 'dt': 20., + 'drd': 32., + 'dg': 18., + 'dec': 27., + 'rcong': 5., + 'he': 18., + 'e': 3., + 'hc1': 96., + 'hcg1': 96./2., + 'hb': 2., + 'htrou': 40., + 'pf': 2.2, + 'j': 2} +dico_bride_M = {'nbgouj': 16, + 'dint': 139.7, + 'dex1': 168.3, + 'dex2': 206., + 'dex3': 220., + 'dtrou': 250., + 'dext': 290., + 'dt': 24., + 'drd': 40., + 'dg': 22., + 'dec': 32., + 'rcong': 5., + 'he': 22., + 'e': 3., + 'hc1': 135., + 'hcg1': 135./2., + 'hb': 3., + 'htrou': 62., + 'pf': 2.2, + 'j': 2} +dico_bride_N = {'nbgouj': 12, + 'dint': 131.9, + 'dex1': 168.3, + 'dex2': 220., + 'dex3': 240., + 'dtrou': 290., + 'dext': 365., + 'dt': 30., + 'drd': 48., + 'dg': 27., + 'dec': 41., + 'rcong': 5., + 'he': 27., + 'e': 4., + 'hc1': 148., + 'hcg1': 148./2., + 'hb': 3., + 'htrou': 75., + 'pf': 2.6, + 'j': 2} +dico_bride_O = {'nbgouj': 12, + 'dint': 211.58, + 'dex1': 219.1, + 'dex2': 248., + 'dex3': 260., + 'dtrou': 292., + 'dext': 335., + 'dt': 20., + 'drd': 32., + 'dg': 18., + 'dec': 27., + 'rcong': 5., + 'he': 18., + 'e': 3., + 'hc1': 87., + 'hcg1': 87./2., + 'hb': 3., + 'htrou': 30., + 'pf': 2.2, + 'j': 2} +dico_bride_P = {'nbgouj': 16, + 'dint': 202.74, + 'dex1': 219.1, + 'dex2': 248., + 'dex3': 260., + 'dtrou': 292., + 'dext': 335., + 'dt': 20., + 'drd': 32, + 'dg': 18., + 'dec': 27., + 'rcong': 5., + 'he': 18., + 'e': 3., + 'hc1': 99., + 'hcg1': 99./2., + 'hb': 3., + 'htrou': 42., + 'pf': 2.2, + 'j': 2} +dico_bride_S = {'nbgouj': 16, + 'dint': 264.62, + 'dex1': 273., + 'dex2': 305., + 'dex3': 315., + 'dtrou': 350., + 'dext': 390., + 'dt': 18., + 'drd': 30., + 'dg': 16., + 'dec': 24., + 'rcong': 5., + 'he': 16., + 'e': 3., + 'hc1': 89., + 'hcg1': 89./2., + 'hb': 3., + 'htrou': 32., + 'pf': 1.7, + 'j': 2} +dico_bride_T = {'nbgouj': 16, + 'dint': 254.56, + 'dex1': 273., + 'dex2': 320., + 'dex3': 340., + 'dtrou': 385., + 'dext': 444., + 'dt': 27., + 'drd': 45., + 'dg': 24., + 'dec': 36., + 'rcong': 5., + 'he': 24., + 'e': 4., + 'hc1': 128., + 'hcg1': 128./2., + 'hb': 3., + 'htrou': 55., + 'pf': 2.6, + 'j': 2} +dico_bride_W = {'nbgouj': 28, + 'dint': 314.76, + 'dex1': 323.9, + 'dex2': 360., + 'dex3': 385., + 'dtrou': 415., + 'dext': 460., + 'dt': 18., + 'drd': 30., + 'dg': 16., + 'dec': 24., + 'rcong': 5., + 'he': 16., + 'e': 3., + 'hc1': 96., + 'hcg1': 96./2., + 'hb': 3., + 'htrou': 37., + 'pf': 1.7, + 'j': 2} + + +# dictionnaire pour faire le lien entre l'option de bride et les valeurs normalisées +dico_bride_std = {'AA':dico_bride_AA, + 'A':dico_bride_A, + 'B':dico_bride_B, + 'B1':dico_bride_B1, + 'C':dico_bride_C, + 'D':dico_bride_D, + 'D1':dico_bride_D1, + 'E':dico_bride_E, + 'F':dico_bride_F, + 'FF':dico_bride_FF, + 'G':dico_bride_G, + 'GG':dico_bride_GG, + 'H':dico_bride_H, + 'H1':dico_bride_H1, + 'I':dico_bride_I, + 'J':dico_bride_J, + 'J1':dico_bride_J1, + 'K':dico_bride_K, + 'L':dico_bride_L, + 'L1':dico_bride_L1, + 'M':dico_bride_M, + 'N':dico_bride_N, + 'O':dico_bride_O, + 'P':dico_bride_P, + 'S':dico_bride_S, + 'T':dico_bride_T, + 'W':dico_bride_W} diff --git a/Aster/Cata/Macro/macr_cabri_mail_ops.py b/Aster/Cata/Macro/macr_cabri_mail_ops.py new file mode 100644 index 00000000..742d2c12 --- /dev/null +++ b/Aster/Cata/Macro/macr_cabri_mail_ops.py @@ -0,0 +1,459 @@ +#@ MODIF macr_cabri_mail_ops Macro DATE 20/05/2003 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. +# ====================================================================== + +# Variable pour préparer la restit (test->0, restit->1) +RESTIT = 1 + +def macr_cabri_mail_ops(self,EXEC_MAILLAGE,RAFF_MAILLAGE,VERI_MAIL,GEOM_BRID, + IMPRESSION,**args): + """ + Ecriture de la macro MACR_CABRI_MAIL + """ + import types + from Accas import _F + + ier=0 + + # On importe les definitions des commandes a utiliser dans la macro + # Le nom de la variable doit etre obligatoirement le nom de la commande + EXEC_LOGICIEL = self.get_cmd('EXEC_LOGICIEL') + LIRE_MAILLAGE = self.get_cmd('LIRE_MAILLAGE') + PRE_GIBI = self.get_cmd('PRE_GIBI') + IMPR_RESU = self.get_cmd('IMPR_RESU') + + # La macro compte pour 1 dans la numerotation des commandes + self.set_icmd(1) + + # Le concept sortant (de type mail) est nommé 'nomres' dans + # le contexte de la macro + + self.DeclareOut('nomres',self.sd) + import aster + + # Chemin de Gibi + loc_gibi=aster.repout() + gibi2000=loc_gibi+'gibi' + + # Unité pour le fichier maillage produit (format GIBI) + unite_mgib = EXEC_MAILLAGE['UNITE_MGIB'] + # Unité pour le fichier de commandes GIBI + unite_datg = EXEC_MAILLAGE['UNITE_DATG'] + # Niveau gibi + niveau_gibi = EXEC_MAILLAGE['NIVE_GIBI'] + + # Verif mail + ver_apla = VERI_MAIL['APLAT'] + ver_veri = VERI_MAIL['VERIF'] + + # Impression + if IMPRESSION['UNITE']!=None: + imp_unit = IMPRESSION['UNITE'] + imp_unitF = 1 + else: + imp_unitF = 0 + if IMPRESSION['FORMAT']!=None: + imp_form = IMPRESSION['FORMAT'] + imp_formF = 1 + else: + imp_formF = 0 + if IMPRESSION['FICHIER']!=None: + imp_fich = IMPRESSION['FICHIER'] + imp_fichF = 1 + else: + imp_fichF = 0 + + # Maillage + nrad = RAFF_MAILLAGE['NB_RADIAL'] + ncir = RAFF_MAILLAGE['NB_CIRCONF'] + nver = RAFF_MAILLAGE['NB_VERTICAL'] + nsect = RAFF_MAILLAGE['NB_ALESAGE'] + temps = 5. + + maillage = {'nrad': nrad, + 'ncir': ncir, + 'nver': nver, + 'nsect': nsect, + 'temps' : temps,} + + # Création du fichier datg + + if GEOM_BRID['NORME'] == 'OUI': + # Bride standard + type_bride = GEOM_BRID['TYPE'] + ### Ecriture du fichier GIBI principal (dgib) - Bride STANDARD + write_file_dgib_STD(unite_mgib,unite_datg,maillage,type_bride) + else: + # Bride quelconque + geo_bride_qqe = {'nbgouj': GEOM_BRID['GOUJ_N_GOUJON'], + 'dint': GEOM_BRID['BRID_D_INT'], + 'dex1': GEOM_BRID['TUBU_D_EXT'], + 'dex2': GEOM_BRID['BRID_D_CONGE'], + 'dex3': GEOM_BRID['BRID_D_EPAUL'], + 'dtrou': GEOM_BRID['BRID_P_ALESAG'], + 'dext': GEOM_BRID['BRID_D_EXT'], + 'dt': GEOM_BRID['BRID_D_ALESAG'], + 'drd': GEOM_BRID['GOUJ_D_RONDEL'], + 'dg': GEOM_BRID['GOUJ_D_GOUJON'], + 'dec': GEOM_BRID['GOUJ_D_ECROU'], + 'rcong': GEOM_BRID['BRID_R_CONGE'], + 'he': GEOM_BRID['GOUJ_E_ECROU'], + 'e': GEOM_BRID['GOUJ_E_RONDEL'], + 'hc1': GEOM_BRID['BRID_H'], + 'hcg1': GEOM_BRID['TUBU_H'], + 'hb': GEOM_BRID['BRID_H_EPAUL'], + 'htrou': GEOM_BRID['BRID_H_ALESAG'], + 'pf': GEOM_BRID['GOUJ_E_FILET'], + 'j': GEOM_BRID['ETAN_E_JOINT']} + ### Ecriture du fichier GIBI principal (dgib) - Bride QUELCONQUE + write_file_dgib_QQE(unite_mgib,unite_datg,maillage,geo_bride_qqe) + + fichier_datg = 'fort.'+str(unite_datg) + fichier_mgib = 'fort.'+str(unite_mgib) + + # Lancement de GIBI + EXEC_LOGICIEL( + LOGICIEL=gibi2000, + ARGUMENT=(_F(NOM_PARA=fichier_datg), + _F(NOM_PARA=fichier_mgib), + ) + ) + # Lecture du maillage GIBI dans ASTER + PRE_GIBI( + UNITE_GIBI = unite_mgib, + ) + + nomres = LIRE_MAILLAGE(VERI_MAIL=_F(APLAT = ver_apla, + VERIF = ver_veri ),) + + if (imp_fichF == 1): + print imp_fich + if (imp_formF == 1): + print imp_form + if (imp_unitF == 1): + print imp_unit + # Impression du fichier maillage + if (imp_formF == 1): + if (imp_form == 'CASTEM'): + imp_ngib = IMPRESSION['NIVE_GIBI'] + IMPR_RESU(RESU = _F(MAILLAGE=nomres, + FORMAT = 'CASTEM', + NIVE_GIBI = imp_ngib,),) + if (imp_form == 'IDEAS'): + imp_nver = IMPRESSION['VERSION'] + IMPR_RESU(RESU = _F(MAILLAGE=nomres, + FORMAT = 'IDEAS', + VERSION = imp_nver,),) + return ier + + +############################################################################################## +# Liste des fonctions +############################################################################################## + +############# +## EXTERNES (appelables depuis l'extérieur) +############# + +### Ecriture du fichier GIBI principal (dgib) - Bride STANDARD +# null = write_file_dgib_STD(unite_mgib,unite_datg,msh_bride,geo_bride) + +### Ecriture du fichier GIBI principal (dgib) - Bride QUELCONQUE +# null = write_file_dgib_QQE(unite_mgib,unite_datg,msh_bride,geo_bride) + +### Imprime tout le catalogue des brides standards disponibles dans un fichier texte +# null = print_bride_std(nom_fichier) + +### Catalogue complet des brides standards disponibles +# txt = bride_std() + +############# +## INTERNES (réservées au travail interne) +############# + +### Génération du nom du fichier pour le fichier maillage résultant (format GIBI) +# NomFichier(txt) = name_file_mgib(unite_mgib): + +### Génération du nom du fichier pour le fichier générant le maillage (commandes GIBI) +# NomFichier(txt) = name_file_datg(unite_datg): + +### Récupère un fichier texte DATG +# Txt = text_datg(fichier_datg): + +### Génération du texte pour les variables +# Txt = para_text(dico_var,var): + + + +#============================================================================================= +# Importation des modules Python +#============================================================================================= + +import os +from Macro.macr_cabri_mail_dat import * + +#============================================================================================= +# Fonctions principales +#============================================================================================= +# Ecriture du fichier GIBI principal (dgib) - Bride STANDARD +def write_file_dgib_STD(unite_mgib,unite_datg,msh_bride,geo_bride): + + # Nom du fichier maillage produit par GIBI + nomFichierMGIB = name_file_mgib(unite_mgib) + + # Nom du fichier de commandes pour GIBI + nomFichierDATG = name_file_datg(unite_datg) + + # Ouverture du fichier d'entrée de commandes + fdgib=open(nomFichierDATG,'w') + + # En-tete + text = "**************************************************************\n" + text = text + "* Fichier GIBI pour le maillage d'une bride \n" + text = text + "**************************************************************\n" + text = text + "\n" + text = text + "* Ce fichier a été généré automatiquement par la macro ASTER MACR_CABRI_MAIL \n" + text = text + "* Ne pas modifier\n" + text = text + "\n" + text = text + "**************************************************************\n" + text = text + "* Type bride: Bride standard \n" + text = text + "**************************************************************\n" + text = text + "titre '"+"Bride standard"+"';\n" + text = text + "** Type bride standard: "+geo_bride+"\n" + + text = text + "\n" + text = text + "opti dime 3 \n" + text = text + " elem cub8 SAUV FORM '"+nomFichierMGIB+"';\n" + text = text + "opti nive 10;\n" + text = text + "dens 1;\n" + text = text + "\n" + fdgib.write(text) + + # Procédures internes supplémentaires + text = "**************************************************************\n" + text = text + "* Procédures supplémentaires \n" + text = text + "**************************************************************\n" + text = text + text_datg_pro() + fdgib.write(text) + + # Début de procédure de création du maillage + text = "**************************************************************\n" + text = text + "**************************************************************\n" + text = text + "********* Début de procédure de création du maillage *********\n" + text = text + "**************************************************************\n" + text = text + "**************************************************************\n" + text = text + "\n debproc constru;\n" + fdgib.write(text) + + # Paramètres géométriques + car_bride = dico_bride_std[geo_bride] + text = "**************************************************************\n" + text = text + "* Paramètres géométriques \n" + text = text + "**************************************************************\n" + text = text + para_text(dico_var_geo,car_bride) + fdgib.write(text) + + # Paramètres du maillage + text = "**************************************************************\n" + text = text + "* Paramètres physiques \n" + text = text + "**************************************************************\n" + text = text + para_text(dico_var_msh,msh_bride) + fdgib.write(text) + + # Algorithme du maillage + text = "**************************************************************\n" + text = text + "* Algorithme de maillage \n" + text = text + "**************************************************************\n" + text = text + text_datg_std() + fdgib.write(text) + + # Fermeture du fichier maillage + fdgib.close() + + +# Ecriture du fichier GIBI principal (dgib) - Bride QUELCONQUE +def write_file_dgib_QQE(unite_mgib,unite_datg,msh_bride,geo_bride): + import aster + + # Nom du fichier maillage produit par GIBI + nomFichierMGIB = name_file_mgib(unite_mgib) + + # Nom du fichier de commandes pour GIBI + nomFichierDATG = name_file_datg(unite_datg) + + # Ouverture du fichier d'entree de commandes + fdgib=open(nomFichierDATG,'w') + + # En-tete + text = "**************************************************************\n" + text = text + "* Fichier GIBI pour le maillage d'une bride \n" + text = text + "**************************************************************\n" + text = text + "\n" + text = text + "* Ce fichier a été généré automatiquement par la macro ASTER MACR_CABRI_MAIL \n" + text = text + "* Ne pas modifier\n" + text = text + "\n" + text = text + "**************************************************************\n" + text = text + "* Type bride: Bride quelconque\n" + text = text + "**************************************************************\n" + text = text + "titre '"+"Bride Quelconque"+"';\n" + text = text + "\n" + text = text + "opti dime 3 \n" + text = text + " elem cub8 SAUV FORM '"+nomFichierMGIB+"';\n" + text = text + "dens 1;\n" + text = text + "\n" + fdgib.write(text) + + # Procédures internes supplémentaires + text = "**************************************************************\n" + text = text + "* Procédures supplémentaires \n" + text = text + "**************************************************************\n" + text = text + text_datg_pro() + fdgib.write(text) + + # Début de procédure de création du maillage + text = "**************************************************************\n" + text = text + "**************************************************************\n" + text = text + "********* Début de procédure de création du maillage *********\n" + text = text + "**************************************************************\n" + text = text + "**************************************************************\n" + text = text + "\n debproc constru;\n" + fdgib.write(text) + + # Paramètres géométriques + text = "**************************************************************\n" + text = text + "* Paramètres géométriques \n" + text = text + "**************************************************************\n" + text = text + para_text(dico_var_geo,geo_bride) + fdgib.write(text) + + # Paramètres du maillage + text = "**************************************************************\n" + text = text + "* Paramètres physiques \n" + text = text + "**************************************************************\n" + text = text + para_text(dico_var_msh,msh_bride) + fdgib.write(text) + + # Algorithme du maillage + text = "**************************************************************\n" + text = text + "* Algorithme de maillage \n" + text = text + "**************************************************************\n" + text = text + text_datg_qqe() + fdgib.write(text) + + # Fermeture du fichier maillage + fdgib.close() + +# Génération du nom du fichier pour le fichier maillage résultant (format GIBI) +def name_file_mgib(unite_mgib): + cur_dir = os.getcwd() + nomFichier = cur_dir+'/fort.'+str(unite_mgib) + return nomFichier + + +# Génération du nom du fichier pour le fichier générant le maillage (commandes GIBI) +def name_file_datg(unite_datg): + cur_dir = os.getcwd() + nomFichier = cur_dir+'/fort.'+str(unite_datg) + return nomFichier + +# Récupère un fichier texte DATG: texte GIBI pour procédures +def text_datg_pro(): + if RESTIT == 1: + import aster + loc_datg = aster.repdex() + datg_bridePro = loc_datg+"macr_cabri_mail_proc.datg" + else: + datg_bridePro = 'fort.'+str(39) + + fproc=open(datg_bridePro,'r') + procText = fproc.read() + fproc.close() + + return procText + +# Récupère un fichier texte DATG: texte GIBI pour bride quelconque +def text_datg_qqe(): + if RESTIT == 1: + import aster + loc_datg = aster.repdex() + datg_brideQqe = loc_datg+"macr_cabri_mail_qqe.datg" + else: + datg_brideQqe = 'fort.'+str(38) + + fproc=open(datg_brideQqe,'r') + procText = fproc.read() + fproc.close() + + return procText + +# Récupère un fichier texte DATG: texte GIBI pour bride standard +def text_datg_std(): + if RESTIT == 1: + import aster + loc_datg = aster.repdex() + datg_brideStd = loc_datg+"macr_cabri_mail_std.datg" + else: + datg_brideStd = 'fort.'+str(37) + + fproc=open(datg_brideStd,'r') + procText = fproc.read() + fproc.close() + + return procText + +# Génération du texte pour les variables +def para_text(dico_var,var): + text = '\n' + for nom_var in var.keys(): + text = text+"* "+dico_var[nom_var]+"\n" + text = text+nom_var+" = "+`var[nom_var]`+";\n" + return text + +#============================================================================================= +# Accès au catalogue des brides standards +# (les brides standards sont décrites dans le fichier Data_Brides.py) +#============================================================================================= + +# Imprime tout le catalogue des brides standards disponibles dans un fichier texte +def print_bride_std(nom_fichier): + text = bride_std() + # Ouverture du fichier + finfo=open(nom_fichier,'w') + # Ecriture des infos + finfo.write(text) + # Fermeture du fichier + finfo.close() + +# Catalogue complet des brides standards disponibles +def bride_std(): + # Ligne d'info + text = "Liste des brides standards avec leurs dimensions\n" + # Première ligne + text = text+"\t" + for nom_variable in dico_var_geo.keys(): + text = text + nom_variable+"\t\t" + text = text + "\n" + # Lignes suivantes + for nom_bride in dico_bride_std.keys(): + bride = dico_bride_std[nom_bride] + text = text + nom_bride + '\t' + for nom_var in dico_var_geo.keys(): + chaine = "%f" % (bride[nom_var]) + text = text+chaine+"\t" + text = text + "\n" + return text diff --git a/Aster/Cata/Macro/macr_lign_coupe_ops.py b/Aster/Cata/Macro/macr_lign_coupe_ops.py index 98e17cfa..7ad07a7b 100644 --- a/Aster/Cata/Macro/macr_lign_coupe_ops.py +++ b/Aster/Cata/Macro/macr_lign_coupe_ops.py @@ -1,4 +1,4 @@ -#@ MODIF macr_lign_coupe_ops Macro DATE 28/08/2002 AUTEUR DURAND C.DURAND +#@ MODIF macr_lign_coupe_ops Macro DATE 20/01/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -76,7 +76,7 @@ def crea_mail_lig_coup(lignes): nbp_lig_coupe = lignes[i][2] for j in range(nbp_lig_coupe-1): nbma=nbma+1 - resu=resu+' M'+str(nbma) + resu=resu+' M'+str(nbma)+'\n' resu=resu+'\n' resu=resu+'FINSF\n' resu=resu+'FIN\n' @@ -105,7 +105,8 @@ def macr_lign_coupe_ops(self,RESULTAT,UNITE_MAILLAGE,LIGN_COUPE,MODELE, POST_RELEVE_T =self.get_cmd('POST_RELEVE_T') # La macro compte pour 1 dans la numerotation des commandes - self.icmd=1 + #self.icmd=1 + self.set_icmd(1) lignes=[] for m in LIGN_COUPE : diff --git a/Aster/Cata/Macro/macro_elas_mult_ops.py b/Aster/Cata/Macro/macro_elas_mult_ops.py index a20c8ae7..a4b2bad6 100644 --- a/Aster/Cata/Macro/macro_elas_mult_ops.py +++ b/Aster/Cata/Macro/macro_elas_mult_ops.py @@ -1,4 +1,4 @@ -#@ MODIF macro_elas_mult_ops Macro DATE 11/06/2002 AUTEUR DURAND C.DURAND +#@ MODIF macro_elas_mult_ops Macro DATE 20/01/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -41,7 +41,8 @@ def macro_elas_mult_ops(self,MODELE,CHAM_MATER,CARA_ELEM,NUME_DDL, CALC_ELEM =self.get_cmd('CALC_ELEM') CALC_NO =self.get_cmd('CALC_NO') # La macro compte pour 1 dans la numerotation des commandes - self.icmd=1 + #self.icmd=1 + self.set_icmd(1) # Le concept sortant (de type mult_elas ou fourier_elas) est nommé # 'nomres' dans le contexte de la macro @@ -211,13 +212,13 @@ def macro_elas_mult_ops(self,MODELE,CHAM_MATER,CARA_ELEM,NUME_DDL, for chargt in m['CHAR_CINE'] : motscles['EXCIT'].append(_F(CHARGE=chargt)) if CHAR_MECA_GLOBAL: motscles['EXCIT'].append(_F(CHARGE=CHAR_MECA_GLOBAL)) elif CHAR_CINE_GLOBAL: motscles['EXCIT'].append(_F(CHARGE=CHAR_CINE_GLOBAL)) - nomres=CALC_ELEM(reuse=nomres, - RESULTAT=nomres, - MODELE=MODELE, - NIVE_COUCHE=m['NIVE_COUCHE'], - NUME_COUCHE=m['NUME_COUCHE'], - OPTION=tuple(liste_el), - **motscles) + CALC_ELEM(reuse=nomres, + RESULTAT=nomres, + MODELE=MODELE, + NIVE_COUCHE=m['NIVE_COUCHE'], + NUME_COUCHE=m['NUME_COUCHE'], + OPTION=tuple(liste_el), + **motscles) if nbno: motscles={} if CHAM_MATER : motscles['CHAM_MATER'] =CHAM_MATER @@ -233,11 +234,11 @@ def macro_elas_mult_ops(self,MODELE,CHAM_MATER,CARA_ELEM,NUME_DDL, for chargt in m['CHAR_CINE'] : motscles['EXCIT'].append(_F(CHARGE=chargt)) if CHAR_MECA_GLOBAL: motscles['EXCIT'].append(_F(CHARGE=CHAR_MECA_GLOBAL)) elif CHAR_CINE_GLOBAL: motscles['EXCIT'].append(_F(CHARGE=CHAR_CINE_GLOBAL)) - nomres=CALC_NO(reuse=nomres, - RESULTAT=nomres, - MODELE=MODELE, - OPTION=tuple(liste_no), - **motscles) + CALC_NO(reuse=nomres, + RESULTAT=nomres, + MODELE=MODELE, + OPTION=tuple(liste_no), + **motscles) # fin de la boucle sur les items de CAS_CHARGE ##################################################################### diff --git a/Aster/Cata/Macro/macro_matr_asse_ops.py b/Aster/Cata/Macro/macro_matr_asse_ops.py index be418be9..ee530505 100644 --- a/Aster/Cata/Macro/macro_matr_asse_ops.py +++ b/Aster/Cata/Macro/macro_matr_asse_ops.py @@ -1,4 +1,4 @@ -#@ MODIF macro_matr_asse_ops Macro DATE 11/06/2002 AUTEUR DURAND C.DURAND +#@ MODIF macro_matr_asse_ops Macro DATE 20/01/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -23,6 +23,7 @@ def macro_matr_asse_ops(self,MODELE,CHAM_MATER,CARA_ELEM,MATR_ASSE, Ecriture de la macro MACRO_MATR_ASSE """ ier=0 + # On met le mot cle NUME_DDL dans une variable locale pour le proteger numeddl=NUME_DDL # On importe les definitions des commandes a utiliser dans la macro @@ -31,7 +32,8 @@ def macro_matr_asse_ops(self,MODELE,CHAM_MATER,CARA_ELEM,MATR_ASSE, NUME_DDL =self.get_cmd('NUME_DDL') ASSE_MATRICE =self.get_cmd('ASSE_MATRICE') # La macro compte pour 1 dans la numerotation des commandes - self.icmd=1 + #self.icmd=1 + self.set_icmd(1) if SOLVEUR: methode=SOLVEUR['METHODE'] @@ -76,6 +78,18 @@ def macro_matr_asse_ops(self,MODELE,CHAM_MATER,CARA_ELEM,MATR_ASSE, lrigel = 0 lmasel = 0 +# decalage eventuel en premiere position dans la liste de l occurence de MATR_ASSE contenant +# l option de rigidite + try : + for m in MATR_ASSE: + option=m['OPTION'] + if option in ('RIGI_MECA','RIGI_MECA_LAGR','RIGI_THER','RIGI_ACOU') : + decal=m + MATR_ASSE.remove(decal) + MATR_ASSE.insert(0,decal) + break + except: pass + iocc=0 for m in MATR_ASSE: iocc=iocc+1 @@ -83,7 +97,7 @@ def macro_matr_asse_ops(self,MODELE,CHAM_MATER,CARA_ELEM,MATR_ASSE, if iocc == 1 and lnume == 1 and option not in ('RIGI_MECA','RIGI_MECA_LAGR', 'RIGI_THER','RIGI_ACOU') : ier=ier+1 - self.cr.fatal("LA PREMIERE OPTION DOIT ETRE RIGI_MECA OU RIGI_THER OU RIGI_ACOU OU RIGI_MECA_LAGR") + self.cr.fatal("UNE DES OPTIONS DOIT ETRE RIGI_MECA OU RIGI_THER OU RIGI_ACOU OU RIGI_MECA_LAGR") return ier if m['SIEF_ELGA']!=None and option!='RIGI_GEOM': diff --git a/Aster/Cata/Macro/macro_miss_3d_ops.py b/Aster/Cata/Macro/macro_miss_3d_ops.py index e6bcfcd0..d3367203 100644 --- a/Aster/Cata/Macro/macro_miss_3d_ops.py +++ b/Aster/Cata/Macro/macro_miss_3d_ops.py @@ -1,4 +1,4 @@ -#@ MODIF macro_miss_3d_ops Macro DATE 11/06/2002 AUTEUR DURAND C.DURAND +#@ MODIF macro_miss_3d_ops Macro DATE 20/01/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -32,7 +32,8 @@ def macro_miss_3d_ops(self,UNITE_IMPR_ASTER,UNITE_OPTI_MISS, FERMER =self.get_cmd('FERMER') EXEC_LOGICIEL =self.get_cmd('EXEC_LOGICIEL') # La macro compte pour 1 dans la numerotation des commandes - self.icmd=1 + #self.icmd=1 + self.set_icmd(1) FERMER(UNITE=UNITE_IMPR_ASTER) @@ -42,8 +43,8 @@ def macro_miss_3d_ops(self,UNITE_IMPR_ASTER,UNITE_OPTI_MISS, if OPTION['TOUT']!=None: MODUL2='COMPLET' - elif OPTION['MODULE']=='CALC_IMPE': - MODUL2='CALC_IMPE' + elif OPTION['MODULE']=='MISS_IMPE': + MODUL2='MISS_IMPE' elif OPTION['MODULE']=='MISS_EVOL': MODUL2='MISS_PTAS' elif OPTION['MODULE']=='PRE_MISS': diff --git a/Aster/Cata/Macro/macro_mode_meca_ops.py b/Aster/Cata/Macro/macro_mode_meca_ops.py index a1d4f709..19756ff7 100644 --- a/Aster/Cata/Macro/macro_mode_meca_ops.py +++ b/Aster/Cata/Macro/macro_mode_meca_ops.py @@ -1,4 +1,4 @@ -#@ MODIF macro_mode_meca_ops Macro DATE 11/06/2002 AUTEUR DURAND C.DURAND +#@ MODIF macro_mode_meca_ops Macro DATE 20/01/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -36,7 +36,8 @@ def macro_mode_meca_ops(self,MATR_A,MATR_B,INFO,METHODE,OPTION,CALC_FREQ, IMPR_RESU =self.get_cmd('IMPR_RESU') EXTR_MODE =self.get_cmd('EXTR_MODE') # La macro compte pour 1 dans la numerotation des commandes - self.icmd=1 + #self.icmd=1 + self.set_icmd(1) nompro=None iocc=0 @@ -60,20 +61,6 @@ def macro_mode_meca_ops(self,MATR_A,MATR_B,INFO,METHODE,OPTION,CALC_FREQ, motscfa['FREQ']=(CALC_FREQ['FREQ'][i],CALC_FREQ['FREQ'][i+1]) else: motscfa['FREQ']=(lborne[i],lborne[i+1]) - if METHODE=='TRI_DIAG': - motscfa['NMAX_ITER_ORTHO'] =CALC_FREQ['NMAX_ITER_ORTHO'] - motscfa['PREC_ORTHO'] =CALC_FREQ['PREC_ORTHO'] - motscfa['PREC_LANCZOS'] =CALC_FREQ['PREC_LANCZOS'] - motscfa['NMAX_ITER_QR'] =CALC_FREQ['NMAX_ITER_QR'] - elif METHODE=='JACOBI': - motscfa['NMAX_ITER_BATHE'] =CALC_FREQ['NMAX_ITER_BATHE'] - motscfa['PREC_BATHE'] =CALC_FREQ['PREC_BATHE'] - motscfa['NMAX_ITER_JACOBI']=CALC_FREQ['NMAX_ITER_JACOBI'] - motscfa['PREC_JACOBI'] =CALC_FREQ['PREC_JACOBI'] - elif METHODE=='SORENSEN': - motscfa['NMAX_ITER_SOREN'] =CALC_FREQ['NMAX_ITER_SOREN'] - motscfa['PARA_ORTHO_SOREN']=CALC_FREQ['PARA_ORTHO_SOREN'] - motscfa['PREC_SOREN'] =CALC_FREQ['PREC_SOREN'] motscit['CALC_FREQ']=_F(OPTION ='BANDE', SEUIL_FREQ =CALC_FREQ['SEUIL_FREQ'], NPREC_SOLVEUR =CALC_FREQ['NPREC_SOLVEUR'], @@ -85,6 +72,33 @@ def macro_mode_meca_ops(self,MATR_A,MATR_B,INFO,METHODE,OPTION,CALC_FREQ, STURM =VERI_MODE['STURM'], PREC_SHIFT =VERI_MODE['PREC_SHIFT']) motscit['STOP_FREQ_VIDE']=CALC_FREQ['STOP_FREQ_VIDE'] + + if METHODE=='TRI_DIAG': + if args.has_key('NMAX_ITER_ORTHO'): + motscit['NMAX_ITER_ORTHO'] =args['NMAX_ITER_ORTHO'] + if args.has_key('PREC_ORTHO'): + motscit['PREC_ORTHO'] =args['PREC_ORTHO'] + if args.has_key('PREC_LANCZOS'): + motscit['PREC_LANCZOS'] =args['PREC_LANCZOS'] + if args.has_key('MAX_ITER_QR'): + motscit['NMAX_ITER_QR'] =args['NMAX_ITER_QR'] + elif METHODE=='JACOBI': + if args.has_key('NMAX_ITER_BATHE'): + motscit['NMAX_ITER_BATHE'] =args['NMAX_ITER_BATHE'] + if args.has_key('PREC_BATHE'): + motscit['PREC_BATHE'] =args['PREC_BATHE'] + if args.has_key('NMAX_ITER_JACOBI'): + motscit['NMAX_ITER_JACOBI']=args['NMAX_ITER_JACOBI'] + if args.has_key('PREC_JACOBI'): + motscit['PREC_JACOBI'] =args['PREC_JACOBI'] + elif METHODE=='SORENSEN': + if args.has_key('NMAX_ITER_SOREN'): + motscit['NMAX_ITER_SOREN'] =args['NMAX_ITER_SOREN'] + if args.has_key('PARA_ORTHO_SOREN'): + motscit['PARA_ORTHO_SOREN']=args['PARA_ORTHO_SOREN'] + if args.has_key('PREC_SOREN'): + motscit['PREC_SOREN'] =args['PREC_SOREN'] + __nomre0=MODE_ITER_SIMULT(MATR_A =MATR_A, MATR_B =MATR_B, INFO =INFO, diff --git a/Aster/Cata/Macro/macro_proj_base_ops.py b/Aster/Cata/Macro/macro_proj_base_ops.py index 4deed416..999a2cf3 100644 --- a/Aster/Cata/Macro/macro_proj_base_ops.py +++ b/Aster/Cata/Macro/macro_proj_base_ops.py @@ -1,4 +1,4 @@ -#@ MODIF macro_proj_base_ops Macro DATE 11/06/2002 AUTEUR DURAND C.DURAND +#@ MODIF macro_proj_base_ops Macro DATE 11/03/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -17,7 +17,7 @@ # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -def macro_proj_base_ops(self,BASE,NB_VECT,MATR_ASSE_GENE,VECT_ASSE_GENE,**args): +def macro_proj_base_ops(self,BASE,NB_VECT,MATR_ASSE_GENE,VECT_ASSE_GENE,PROFIL,**args): """ Ecriture de la macro MACRO_PROJ_BASE """ @@ -27,16 +27,12 @@ def macro_proj_base_ops(self,BASE,NB_VECT,MATR_ASSE_GENE,VECT_ASSE_GENE,**args): PROJ_MATR_BASE =self.get_cmd('PROJ_MATR_BASE') PROJ_VECT_BASE =self.get_cmd('PROJ_VECT_BASE') # La macro compte pour 1 dans la numerotation des commandes - self.icmd=1 + #self.icmd=1 + self.set_icmd(1) - nompro=None - iocc=0 + _num=NUME_DDL_GENE(BASE=BASE,NB_VECT=NB_VECT,STOCKAGE=PROFIL) if MATR_ASSE_GENE: for m in MATR_ASSE_GENE: - iocc=iocc+1 - if (iocc==1 or (m['PROFIL']!=nompro)): - _num=NUME_DDL_GENE(BASE=BASE,NB_VECT=NB_VECT,STOCKAGE=m['PROFIL']) - nompro=m['PROFIL'] motscles={} if m['MATR_ASSE'] : motscles['MATR_ASSE'] =m['MATR_ASSE'] elif m['MATR_ASSE_GENE']: motscles['MATR_ASSE_GENE']=m['MATR_ASSE_GENE'] @@ -47,12 +43,9 @@ def macro_proj_base_ops(self,BASE,NB_VECT,MATR_ASSE_GENE,VECT_ASSE_GENE,**args): self.DeclareOut('mm',m['MATRICE']) mm=PROJ_MATR_BASE(BASE=BASE,NUME_DDL_GENE=_num,**motscles) - iocc=0 if VECT_ASSE_GENE: + _num=NUME_DDL_GENE(BASE=BASE,NB_VECT=NB_VECT,STOCKAGE=PROFIL) for v in VECT_ASSE_GENE: - iocc=iocc+1 - if (iocc==1 and not MATR_ASSE_GENE): - _num=NUME_DDL_GENE(BASE=BASE,NB_VECT=NB_VECT,STOCKAGE='DIAG') motscles={} if v['VECT_ASSE'] : motscles['VECT_ASSE'] =v['VECT_ASSE'] elif v['VECT_ASSE_GENE']: motscles['VECT_ASSE_GENE']=v['VECT_ASSE_GENE'] diff --git a/Aster/Cata/Macro/reca_algo.py b/Aster/Cata/Macro/reca_algo.py index 73b9e246..cfa75007 100644 --- a/Aster/Cata/Macro/reca_algo.py +++ b/Aster/Cata/Macro/reca_algo.py @@ -1,4 +1,4 @@ -#@ MODIF reca_algo Macro DATE 13/01/2003 AUTEUR PABHHHH N.TARDIEU +#@ MODIF reca_algo Macro DATE 04/07/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -22,7 +22,9 @@ from Numeric import take import copy,os import LinearAlgebra from Cata.cata import INFO_EXEC_ASTER +from Cata.cata import DETRUIRE from Macro.recal import EXTRACT +from Accas import _F def calcul_gradient(A,erreur): @@ -107,6 +109,7 @@ def temps_CPU(self,restant_old,temps_iter_old): # Fonction controlant le temps CPU restant CPU=INFO_EXEC_ASTER(LISTE_INFO = ("CPU_RESTANT",)) TEMPS=CPU['CPU_RESTANT',1] + DETRUIRE(CONCEPT=_F(NOM='CPU')) err=0 # Indique une execution interactive if (TEMPS>1.E+9): @@ -210,8 +213,8 @@ def actualise_lambda(l,val,new_val,A,erreur,new_J,old_J): Q=Numeric.matrixmultiply(Numeric.transpose(A),A) +l*id # Second membre du système d=Numeric.matrixmultiply(Numeric.transpose(A),erreur) - old_Q=0.5*Numeric.dot(Numeric.transpose(val),Numeric.dot(Q,val))+Numeric.dot(Numeric.transpose(val),d) - new_Q=0.5*Numeric.dot(Numeric.transpose(new_val),Numeric.dot(Q,new_val))+Numeric.dot(Numeric.transpose(new_val),d) + old_Q=old_J + new_Q=old_J+0.5*Numeric.dot(Numeric.transpose(new_val-val),Numeric.dot(Q,new_val-val))+Numeric.dot(Numeric.transpose(new_val-val),d) # Ratio de la décroissance réelle et de l'approx. quad. try: R=(old_J-new_J)/(old_Q-new_Q) diff --git a/Aster/Cata/Macro/recal.py b/Aster/Cata/Macro/recal.py index 01ee9db0..5129d34b 100644 --- a/Aster/Cata/Macro/recal.py +++ b/Aster/Cata/Macro/recal.py @@ -1,4 +1,4 @@ -#@ MODIF recal Macro DATE 31/01/2003 AUTEUR PABHHHH N.TARDIEU +#@ MODIF recal Macro DATE 10/07/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -53,9 +53,9 @@ def transforme_list_Num(parametres,res_exp): def mes_concepts(list_concepts=[],base=None): # Fonction qui liste les concepts créés for e in base.etapes: - if e.__class__.__name__ == 'MACRO_ETAPE': + if e.nom in ('INCLUDE','MACR_RECAL',) : list_concepts=list(mes_concepts(list_concepts=list_concepts,base=e)) - elif e.sd != None: + elif (e.sd != None) and (e.parent.nom=='INCLUDE') : nom_concept=e.sd.get_name() if not(nom_concept in list_concepts): list_concepts.append( nom_concept ) @@ -140,6 +140,7 @@ def calcul_F(self,UL,para,val,reponses): #on ajoute dans L tous ce qui est avant le premier paramètre Fichier_Resu.append(pre_bloc) + Fichier_Resu.append('\n') #On ajoute la nouvelle valeur des parametres dim_para=len(para) for j in range(dim_para): diff --git a/Aster/Cata/cata_STA7.py b/Aster/Cata/cata_STA7.py index 71982237..5e3dfbc8 100755 --- a/Aster/Cata/cata_STA7.py +++ b/Aster/Cata/cata_STA7.py @@ -1,4 +1,4 @@ -#& MODIF ENTETE DATE 18/03/2003 AUTEUR MCOURTOI M.COURTOIS +#& MODIF ENTETE DATE 02/06/2003 AUTEUR F1BHHAJ J.ANGLES # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -135,7 +135,6 @@ class carte_hydr_r (carte):pass class carte_inst_r (carte):pass class carte_inte_r (carte):pass class carte_irra_r (carte):pass -class carte_meta_r (carte):pass class carte_neut_f (carte):pass class carte_neut_r (carte):pass class carte_pres_r (carte):pass @@ -169,7 +168,6 @@ class cham_elem_hydr_r(cham_elem):pass class cham_elem_inst_r(cham_elem):pass class cham_elem_inte_r(cham_elem):pass class cham_elem_irra_r(cham_elem):pass -class cham_elem_meta_r(cham_elem):pass class cham_elem_neut_f(cham_elem):pass class cham_elem_neut_r(cham_elem):pass class cham_elem_pres_r(cham_elem):pass @@ -194,6 +192,7 @@ class cham_no_durt_r (cham_no):pass class cham_no_ener_r (cham_no):pass class cham_no_epsi_r (cham_no):pass class cham_no_erreur (cham_no):pass +class cham_no_facy_r (cham_no):pass class cham_no_flux_r (cham_no):pass class cham_no_g_depl_r (cham_no):pass class cham_no_geom_r (cham_no):pass @@ -201,7 +200,6 @@ class cham_no_hydr_r (cham_no):pass class cham_no_inst_r (cham_no):pass class cham_no_inte_r (cham_no):pass class cham_no_irra_r (cham_no):pass -class cham_no_meta_r (cham_no):pass class cham_no_neut_f (cham_no):pass class cham_no_neut_r (cham_no):pass class cham_no_pres_c (cham_no):pass @@ -375,7 +373,8 @@ class vect_elem_pres_c(vect_elem):pass class vect_elem_pres_r(vect_elem):pass class vect_elem_temp_r(vect_elem):pass -#& MODIF COMMUN DATE 31/03/2003 AUTEUR ASSIRE A.ASSIRE + +#& MODIF COMMUN DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG @@ -393,7 +392,7 @@ class vect_elem_temp_r(vect_elem):pass # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -def C_COMP_INCR() : return FACT(statut='f',min=1,max='**', +def C_COMP_INCR() : return FACT(statut='f',min=1,max='**', #COMMUN# RELATION =SIMP(statut='o',typ='TXM',defaut="VMIS_ISOT_TRAC", into=( "ELAS", "VMIS_ISOT_TRAC", @@ -495,7 +494,7 @@ def C_COMP_INCR() : return FACT(statut='f',min=1,max='**', ENDO_ISOT_BETON =SIMP(statut='c',typ='I',defaut=2,into=(2,)), MAZARS =SIMP(statut='c',typ='I',defaut=3,into=(3,)), RUPT_FRAG =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - BARENBLATT =SIMP(statut='c',typ='I',defaut=2,into=(2,)), + BARENBLATT =SIMP(statut='c',typ='I',defaut=3,into=(3,)), META_P_IL =SIMP(statut='c',typ='I',defaut=1,into=(1,)), META_P_IL_PT =SIMP(statut='c',typ='I',defaut=1,into=(1,)), META_P_IL_RE =SIMP(statut='c',typ='I',defaut=1,into=(1,)), @@ -568,7 +567,7 @@ def C_COMP_INCR() : return FACT(statut='f',min=1,max='**', VMIS_ASYM_LINE =SIMP(statut='c',typ='I',defaut=4,into=(4,)), BETON_UMLV_FP =SIMP(statut='c',typ='I',defaut=20,into=(20,)), - RELATION_KIT =SIMP(statut='f',typ='TXM',max='**', + RELATION_KIT =SIMP(statut='f',typ='TXM',max='**',validators=NoRepeat(), into=( # MECA "ELAS", @@ -579,6 +578,8 @@ def C_COMP_INCR() : return FACT(statut='f',min=1,max='**', "SURF_ETAT_NSAT", "SURF_ETAT_SATU", "CAM_CLAY_THM", + "MAZARS", + "ENDO_ISOT_BETON", # THMC "GAZ", "LIQU_SATU", @@ -594,6 +595,7 @@ def C_COMP_INCR() : return FACT(statut='f',min=1,max='**', # HYDR "HYDR_UTIL", "HYDR", + "HYDR_ENDO", # MECA_META "ACIER", "ZIRC", @@ -609,7 +611,9 @@ def C_COMP_INCR() : return FACT(statut='f',min=1,max='**', "OHNO", "NADAI_B", "BETON_DOUBLE_DP", - ) ), + ),), + + ELAS_THM =SIMP(statut='c',typ='I',defaut=1,into=(1,)), SURF_ETAT_NSAT =SIMP(statut='c',typ='I',defaut=1,into=(1,)), SURF_ETAT_SATU =SIMP(statut='c',typ='I',defaut=1,into=(1,)), @@ -626,6 +630,7 @@ def C_COMP_INCR() : return FACT(statut='f',min=1,max='**', THER_POLY =SIMP(statut='c',typ='I',defaut=0,into=(0,)), HYDR_UTIL =SIMP(statut='c',typ='I',defaut=0,into=(0,)), HYDR =SIMP(statut='c',typ='I',defaut=0,into=(0,)), + HYDR_ENDO =SIMP(statut='c',typ='I',defaut=0,into=(0,)), ACIER =SIMP(statut='c',typ='I',defaut=5,into=(5,)), ZIRC =SIMP(statut='c',typ='I',defaut=3,into=(3,)), @@ -633,15 +638,204 @@ def C_COMP_INCR() : return FACT(statut='f',min=1,max='**', ALGO_C_PLAN =SIMP(statut='f',typ='TXM',defaut="ANALYTIQUE",into=("DEBORST","ANALYTIQUE",)), regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMUN DATE 17/06/2003 AUTEUR VABHHTS J.PELLET +# 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. +# ====================================================================== +# RESPONSABLE VABHHTS J.PELLET +# ce fichier contient la liste des "into" possibles pour le mot cle NOM_CHAM +# c'est a dire les noms de champs des SD RESULTAT (DATA de la routine RSCRSD) +def C_NOM_CHAM_INTO() : return ("ACCE", #COMMUN# + "ACCE_ABSOLU", + "ALPH0_ELGA_EPSP", + "ALPHP_ELGA_ALPH0", + "COMPORTEMENT", + "COMPORTHER", + "CRIT_ELNO_RUPT", + "DCHA_ELGA_SIGM", + "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_ELGA_META", + "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_ELGA", + "ENEL_ELNO_ELGA", + "ENEL_NOEU_ELGA", + "EPEQ_ELNO_TUYO", + "EPGR_ELGA", + "EPGR_ELNO", + "EPME_ELGA_DEPL", + "EPME_ELNO_DEPL", + "EPMG_ELGA_DEPL", + "EPMG_ELNO_DEPL", + "EPMG_NOEU_DEPL", + "EPOT_ELEM_DEPL", + "EPSA_ELNO", + "EPSA_NOEU", + "EPSG_ELGA_DEPL", + "EPSG_ELNO_DEPL", + "EPSG_NOEU_DEPL", + "EPSI_ELGA_DEPL", + "EPSI_ELNO_DEPL", + "EPSI_ELNO_TUYO", + "EPSI_NOEU_DEPL", + "EPSP_ELGA", + "EPSP_ELNO", + "EPSP_ELNO_ZAC", + "EPSP_NOEU", + "EPSP_NOEU_ZAC", + "EQUI_ELGA_EPME", + "EQUI_ELGA_EPSI", + "EQUI_ELGA_SIGM", + "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_ELGA_NORE", + "ERRE_ELNO_ELGA", + "ERRE_NOEU_ELGA", + "ERTH_ELEM_TEMP", + "ERTH_ELNO_ELEM", + "ETOT_ELEM", + "ETOT_ELGA", + "ETOT_ELNO_ELGA", + "FLUX_ELGA_TEMP", + "FLUX_ELNO_TEMP", + "FLUX_NOEU_TEMP", + "FORC_NODA", + "FSUR_2D", + "FSUR_3D", + "FVOL_2D", + "FVOL_3D", + "GRAD_NOEU_THETA", + "HYDR_ELGA", + "HYDR_ELNO_ELGA", + "HYDR_NOEU_ELGA", + "INTE_ELNO_ACTI", + "INTE_ELNO_REAC", + "INTE_NOEU_ACTI", + "INTE_NOEU_REAC", + "IRRA", + "LANL_ELGA", + "META_ELGA_TEMP", + "META_ELNO_TEMP", + "META_NOEU_TEMP", + "PMPB_ELGA_SIEF", + "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_ELGA_SIGM", + "RADI_ELNO_SIGM", + "RADI_NOEU_SIGM", + "REAC_NODA", + "SIEF_ELGA", + "SIEF_ELGA_DEPL", + "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_ELGA", + "VARI_ELGA_ZAC", + "VARI_ELNO", + "VARI_ELNO_COQU", + "VARI_ELNO_ELGA", + "VARI_ELNO_TUYO", + "VARI_NOEU", + "VARI_NOEU_ELGA", + "VARI_NON_LOCAL", + "VITE", + "VITE_ABSOLU", + "VITE_VENT", + ) + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# SEE THE FILE "LICENSE.TERMS" FOR INFORMATION ON USAGE AND -# REDISTRIBUTION OF THIS FILE. +# 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_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, @@ -652,18 +846,18 @@ AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, 'ASSE_GRIL','GRILLE','AFFE_SECT','AFFE_FIBRE'),), MODELE =SIMP(statut='o',typ=modele ), INFO =SIMP(statut='f',typ='I', defaut= 1 ,into=(1,2) ), - VERIF =SIMP(statut='f',typ='TXM',max='**',into=("MAILLE","NOEUD") ), + VERIF =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',into=("MAILLE","NOEUD") ), - POUTRE =FACT(statut='f',min=1,max='**', + POUTRE =FACT(statut='f',max='**', regles=(UN_PARMI('MAILLE','GROUP_MA'),), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), SECTION =SIMP(statut='o',typ='TXM' ,into=("GENERALE","RECTANGLE","CERCLE") ), CARA_SECT =SIMP(statut='f',typ=(cara_pout) ), - TUYAU_NCOU =SIMP(statut='f',typ='I',min=1,max=10,defaut=3), - TUYAU_NSEC =SIMP(statut='f',typ='I',min=1,max=32,defaut=16), + TUYAU_NCOU =SIMP(statut='f',typ='I',val_max=10,defaut=3), + TUYAU_NSEC =SIMP(statut='f',typ='I',val_max=32,defaut=16), b_generale =BLOC( condition = "SECTION=='GENERALE'", - CARA =SIMP(statut='o',typ='TXM',max='**', + CARA =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', into=("A","IY","IZ","AY","AZ","EY","EZ","JX","RY","RZ","RT", "AI","JG","IYR2","IZR2","A1", "IY1","IZ1","AY1","AZ1","EY1","EZ1","JX1","RY1", @@ -677,7 +871,7 @@ AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, VARI_SECT =SIMP(statut='f',typ='TXM',into=("HOMOTHETIQUE",) ), ), b_rectangle =BLOC( condition = "SECTION=='RECTANGLE'", - CARA =SIMP(statut='o',typ='TXM',max='**', + CARA =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', into=("H","EP","HY","HZ","EPY","EPZ", "H1","HZ1","HY1","EP1","EPY1","EPZ1", "H2","HZ2","HY2","EP2","EPY2","EPZ2") ), @@ -685,7 +879,7 @@ AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, VARI_SECT =SIMP(statut='f',typ='TXM',into=("HOMOTHETIQUE","AFFINE"),defaut="HOMOTHETIQUE"), ), b_cercle =BLOC( condition = "SECTION=='CERCLE'", - CARA =SIMP(statut='o',typ='TXM',max='**', + CARA =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', into=("R","EP","R1","R2","EP1","EP2") ), VALE =SIMP(statut='o',typ='R',max='**'), VARI_SECT =SIMP(statut='f',typ='TXM',into=("HOMOTHETIQUE",) ), @@ -694,31 +888,31 @@ AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, FCX =SIMP(statut='f',typ=(fonction,formule) ), ), - BARRE =FACT(statut='f',min=1,max='**', + BARRE =FACT(statut='f',max='**', regles=(UN_PARMI('MAILLE','GROUP_MA'),), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), SECTION =SIMP(statut='o',typ='TXM',into=("GENERALE","RECTANGLE","CERCLE") ), b_generale =BLOC( condition = "SECTION=='GENERALE'", CARA =SIMP(statut='o',typ='TXM',into=("A",) ), VALE =SIMP(statut='o',typ='R' ), ), b_rectangle =BLOC( condition = "SECTION=='RECTANGLE'", - CARA =SIMP(statut='o',typ='TXM',into=("H","HZ","HY","EPY","EPZ","EP"),max=6 ), + CARA =SIMP(statut='o',typ='TXM',into=("H","HZ","HY","EPY","EPZ","EP"),validators=NoRepeat(),max=6 ), VALE =SIMP(statut='o',typ='R',max=6 ), ), b_cercle =BLOC( condition = "SECTION=='CERCLE'", - CARA =SIMP(statut='o',typ='TXM',max=2,into=("R","EP") ), + CARA =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=2,into=("R","EP") ), VALE =SIMP(statut='o',typ='R',max=2 ), ), FCX =SIMP(statut='f',typ=(fonction,formule) ), ), - COQUE =FACT(statut='f',min=1,max='**', + COQUE =FACT(statut='f',max='**', regles=(UN_PARMI('MAILLE','GROUP_MA' ), PRESENT_PRESENT( 'EXCENTREMENT','INER_ROTA' ),), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), + 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' ), ANGL_REP =SIMP(statut='f',typ='R',min=2,max=2), A_CIS =SIMP(statut='c',typ='R',defaut= 0.8333333E0), @@ -729,24 +923,24 @@ AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, MODI_METRIQUE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), ), - CABLE =FACT(statut='f',min=1,max='**', + CABLE =FACT(statut='f',max='**', regles=(UN_PARMI('MAILLE','GROUP_MA'),), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), N_INIT =SIMP(statut='f',typ='R',defaut= 5000. ), SECTION =SIMP(statut='f',typ='R' ), FCX =SIMP(statut='f',typ=(fonction,formule) ), ), - DISCRET =FACT(statut='f',min=1,max='**', + DISCRET =FACT(statut='f',max='**', regles=(UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'),), - NOEUD =SIMP(statut='f',typ=no,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), REPERE =SIMP(statut='f',typ='TXM',into=("LOCAL","GLOBAL") ), AMOR_HYST =SIMP(statut='f',typ='R' ), - CARA =SIMP(statut='o',typ='TXM',max='**', + CARA =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', into=("K_T_D_N","K_T_D_L","K_TR_D_N","K_TR_D_L", "K_T_N", "K_T_L", "K_TR_N", "K_TR_L", "M_T_D_N","M_TR_D_N","M_T_N", @@ -756,12 +950,12 @@ AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, VALE =SIMP(statut='o',typ='R',max='**'), ), - ORIENTATION =FACT(statut='f',min=1,max='**', + ORIENTATION =FACT(statut='f',max='**', regles=(UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO' ),), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), CARA =SIMP(statut='o',typ='TXM', into=("VECT_Y","ANGL_VRIL","VECT_X_Y","ANGL_NAUT","GENE_TUYAU") ), VALE =SIMP(statut='o',typ='R',max='**'), @@ -769,7 +963,7 @@ AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), ), - DEFI_ARC =FACT(statut='f',min=1,max='**', + DEFI_ARC =FACT(statut='f',max='**', regles=(UN_PARMI('MAILLE','GROUP_MA'), UN_PARMI('ORIE_ARC','CENTRE','NOEUD_CENTRE','GROUP_NO_CENTRE', 'POIN_TANG','NOEUD_POIN_TANG','GROUP_NO_POIN_TG'), @@ -780,15 +974,15 @@ AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, EXCLUS('INDI_SIGM','INDI_SIGM_XZ'), PRESENT_PRESENT('COEF_FLEX_XY','COEF_FLEX_XZ'), PRESENT_PRESENT('INDI_SIGM_XY','INDI_SIGM_XZ'),), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), ORIE_ARC =SIMP(statut='f',typ='R'), CENTRE =SIMP(statut='f',typ='R',max='**'), - NOEUD_CENTRE =SIMP(statut='f',typ=no,max=1), - GROUP_NO_CENTRE =SIMP(statut='f',typ=grno,max=1), + NOEUD_CENTRE =SIMP(statut='f',typ=no), + GROUP_NO_CENTRE =SIMP(statut='f',typ=grno), POIN_TANG =SIMP(statut='f',typ='R',max='**'), - NOEUD_POIN_TANG =SIMP(statut='f',typ=no,max=1), - GROUP_NO_POIN_TG=SIMP(statut='f',typ=grno,max=1), + NOEUD_POIN_TANG =SIMP(statut='f',typ=no), + GROUP_NO_POIN_TG=SIMP(statut='f',typ=grno), RAYON =SIMP(statut='f',typ='R'), COEF_FLEX =SIMP(statut='f',typ='R'), INDI_SIGM =SIMP(statut='f',typ='R'), @@ -800,23 +994,23 @@ AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), ), - MASSIF =FACT(statut='f',min=1,max='**', + MASSIF =FACT(statut='f',max='**', regles=(UN_PARMI('MAILLE','GROUP_MA'), UN_PARMI('ANGL_REP','ANGL_AXE'), EXCLUS('ANGL_REP','ANGL_AXE'), EXCLUS('ANGL_REP','ORIG_AXE'), PRESENT_PRESENT('ANGL_AXE','ORIG_AXE'), ), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), ANGL_REP =SIMP(statut='f',typ='R',max=3), ANGL_AXE =SIMP(statut='f',typ='R',max=2), ORIG_AXE =SIMP(statut='f',typ='R',max=3), ), - POUTRE_FLUI =FACT(statut='f',min=1,max='**', + POUTRE_FLUI =FACT(statut='f',max='**', regles=(UN_PARMI('MAILLE','GROUP_MA'),), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), B_T =SIMP(statut='o',typ='R'), B_N =SIMP(statut='o',typ='R'), B_TN =SIMP(statut='o',typ='R',defaut= 0.E+0 ), @@ -825,12 +1019,12 @@ AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, COEF_ECHELLE =SIMP(statut='o',typ='R'), ), - GRILLE =FACT(statut='f',min=1,max='**', + GRILLE =FACT(statut='f',max='**', regles=(UN_PARMI('MAILLE','GROUP_MA'), EXCLUS('ANGL_REP','ORIG_AXE'), ENSEMBLE('ORIG_AXE','AXE')), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), SECTION_L =SIMP(statut='o',typ='R'), ANGL_REP =SIMP(statut='f',typ='R',max=2), ANGL_L =SIMP(statut='f',typ='R'), @@ -840,29 +1034,29 @@ AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, ORIG_AXE =SIMP(statut='f',typ='R',max='**'), AXE =SIMP(statut='f',typ='R',max='**'), COEF_RIGI_DRZ =SIMP(statut='f',typ='R',defaut= 1.0E-10 ), - GRILLE_NCOU =SIMP(statut='f',typ='I',defaut= 1,min=1,max=1 ), + GRILLE_NCOU =SIMP(statut='f',typ='I',defaut= 1,), ), - RIGI_PARASOL =FACT(statut='f',min=1,max='**', + RIGI_PARASOL =FACT(statut='f',max='**', regles=(UN_PARMI('COEF_GROUP','FONC_GROUP'), UN_PARMI('COOR_CENTRE','NOEUD_CENTRE','GROUP_NO_CENTRE'),), - GROUP_MA =SIMP(statut='o',typ=ma,max='**'), + GROUP_MA =SIMP(statut='o',typ=ma,validators=NoRepeat(),max='**'), GROUP_MA_POI1 =SIMP(statut='f',typ=ma), FONC_GROUP =SIMP(statut='f',typ=(fonction,formule) ), COEF_GROUP =SIMP(statut='f',typ='R',max='**'), REPERE =SIMP(statut='f',typ='TXM',into=("LOCAL","GLOBAL") ), - CARA =SIMP(statut='o',typ='TXM',max='**',into=("K_TR_D_N","A_TR_D_N") ), + CARA =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=("K_TR_D_N","A_TR_D_N") ), VALE =SIMP(statut='o',typ='R',max='**'), GROUP_NO_CENTRE =SIMP(statut='f',typ=grno), NOEUD_CENTRE =SIMP(statut='f',typ=no), COOR_CENTRE =SIMP(statut='f',typ='R',max='**'), ), - ASSE_GRIL =FACT(statut='f',min=1,max='**', + ASSE_GRIL =FACT(statut='f',max='**', regles=(UN_PARMI('MAILLE','GROUP_MA'),), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - CARA =SIMP(statut='o',typ='TXM',max='**', + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + CARA =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', into=("K_TR_D_N","K_TR_D_L_T","K_TR_D_L_N",) ), VALE =SIMP(statut='o',typ='R',max='**'), PAS_T =SIMP(statut='o',typ='R'), @@ -872,32 +1066,32 @@ AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, ), - AFFE_SECT =FACT(statut='f',min=1,max='**', + AFFE_SECT =FACT(statut='f',max='**', regles=(AU_MOINS_UN('GROUP_MA','MAILLE'), AU_MOINS_UN('TOUT_SECT','GROUP_MA_SECT','MAILLE_SECT'), PRESENT_ABSENT('TOUT_SECT','GROUP_MA_SECT','MAILLE_SECT'),), NOM =SIMP(statut='f',typ='TXM'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), TOUT_SECT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA_SECT =SIMP(statut='f',typ=grma,max='**'), - MAILLE_SECT =SIMP(statut='f',typ=ma,max='**'), + 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), COOR_AXE_POUTRE =SIMP(statut='o',typ='R',min=2,max=2), ), - AFFE_FIBRE =FACT(statut='f',min=1,max='**', + AFFE_FIBRE =FACT(statut='f',max='**', regles=(AU_MOINS_UN('GROUP_MA','MAILLE'),), NOM =SIMP(statut='f',typ='TXM'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), CARA =SIMP(statut='f',typ='TXM',defaut='SURFACE',into=('SURFACE','DIAMETRE',)), VALE =SIMP(statut='o',typ='R',max='**'), @@ -906,7 +1100,8 @@ AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -931,41 +1126,42 @@ AFFE_CHAR_ACOU=OPER(nom="AFFE_CHAR_ACOU",op= 68,sd_prod=char_acou, regles=(AU_MOINS_UN('PRES_IMPO','VITE_FACE','IMPE_FACE','LIAISON_UNIF' ),), MODELE =SIMP(statut='o',typ=modele ), VERI_DDL =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - PRES_IMPO =FACT(statut='f',min=1,max='**', + PRES_IMPO =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + 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='**'), PRES =SIMP(statut='o',typ='C' ), ), - VITE_FACE =FACT(statut='f',min=1,max='**', + VITE_FACE =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), VNOR =SIMP(statut='o',typ='C' ), ), - IMPE_FACE =FACT(statut='f',min=1,max='**', + IMPE_FACE =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), IMPE =SIMP(statut='o',typ='C' ), ), - LIAISON_UNIF =FACT(statut='f',min=1,max='**', + LIAISON_UNIF =FACT(statut='f',max='**', regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE' ),), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + 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='**'), DDL =SIMP(statut='o',typ='TXM',max='**'), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -999,12 +1195,12 @@ AFFE_CHAR_CINE=OPER(nom="AFFE_CHAR_CINE",op= 101,sd_prod=affe_char_cine_prod EXCLUS('MECA_IMPO','ACOU_IMPO'), EXCLUS('THER_IMPO','ACOU_IMPO'),), MODELE =SIMP(statut='o',typ=modele ), - MECA_IMPO =FACT(statut='f',min=1,max='**', + MECA_IMPO =FACT(statut='f',max='**', regles=(UN_PARMI('TOUT','GROUP_NO','NOEUD'), AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','TEMP','PHI'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), DX =SIMP(statut='f',typ='R' ), DY =SIMP(statut='f',typ='R' ), DZ =SIMP(statut='f',typ='R' ), @@ -1016,26 +1212,27 @@ AFFE_CHAR_CINE=OPER(nom="AFFE_CHAR_CINE",op= 101,sd_prod=affe_char_cine_prod TEMP =SIMP(statut='f',typ='R' ), PHI =SIMP(statut='f',typ='R' ), ), - THER_IMPO =FACT(statut='f',min=1,max='**', + THER_IMPO =FACT(statut='f',max='**', regles=(UN_PARMI('TOUT','GROUP_NO','NOEUD'), AU_MOINS_UN('TEMP','TEMP_INF','TEMP_SUP'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), TEMP_SUP =SIMP(statut='f',typ='R' ), TEMP =SIMP(statut='f',typ='R' ), TEMP_INF =SIMP(statut='f',typ='R' ), ), - ACOU_IMPO =FACT(statut='f',min=1,max='**', + ACOU_IMPO =FACT(statut='f',max='**', regles=(UN_PARMI('TOUT','GROUP_NO','NOEUD' ),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), PRES =SIMP(statut='o',typ='C' ), ), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -1065,12 +1262,12 @@ AFFE_CHAR_CINE_F=OPER(nom="AFFE_CHAR_CINE_F",op= 108,sd_prod=affe_char_cine_f_pr regles=(AU_MOINS_UN('MECA_IMPO','THER_IMPO'), EXCLUS('MECA_IMPO','THER_IMPO'),), MODELE =SIMP(statut='o',typ=modele ), - MECA_IMPO =FACT(statut='f',min=1,max='**', + MECA_IMPO =FACT(statut='f',max='**', regles=(UN_PARMI('TOUT','GROUP_NO','NOEUD'), AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','TEMP','PHI'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), DX =SIMP(statut='f',typ=(fonction,formule) ), DY =SIMP(statut='f',typ=(fonction,formule) ), DZ =SIMP(statut='f',typ=(fonction,formule) ), @@ -1082,19 +1279,20 @@ AFFE_CHAR_CINE_F=OPER(nom="AFFE_CHAR_CINE_F",op= 108,sd_prod=affe_char_cine_f_pr TEMP =SIMP(statut='f',typ=(fonction,formule) ), PHI =SIMP(statut='f',typ=(fonction,formule) ), ), - THER_IMPO =FACT(statut='f',min=1,max='**', + THER_IMPO =FACT(statut='f',max='**', regles=(UN_PARMI('TOUT','GROUP_NO','NOEUD'), AU_MOINS_UN('TEMP','TEMP_INF','TEMP_SUP' ),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), TEMP_SUP =SIMP(statut='f',typ=(fonction,formule) ), TEMP =SIMP(statut='f',typ=(fonction,formule) ), TEMP_INF =SIMP(statut='f',typ=(fonction,formule) ), ), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -1112,7 +1310,8 @@ AFFE_CHAR_CINE_F=OPER(nom="AFFE_CHAR_CINE_F",op= 108,sd_prod=affe_char_cine_f_pr # 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 +# RESPONSABLE G8BHHXD X.DESROCHES + AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca ,fr="Affectation de charges et conditions aux limites mécaniques constantes", docu="U4.44.01-g",reentrant='n', @@ -1146,22 +1345,23 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca typ=evol_char ), PESANTEUR =SIMP(statut='f',typ='R',fr="Champ de pesanteur",min=4,max=4), - ROTATION =SIMP(statut='f',typ='R',fr="Champ de rotation",min=4,max=4), + ROTATION =SIMP(statut='f',typ='R',fr="Champ de rotation", min=4,max=4), b_rotation =BLOC ( condition = "ROTATION != None", CENTRE =SIMP(statut='f',typ='R',defaut=(0.,0.,0.),max=3),), - DDL_IMPO =FACT(statut='f',min=1,max='**', + DDL_IMPO =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'), AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI', 'TEMP','PRE1','PRE2','UI2','UI3','VI2','VI3','WI2','WI3','UO2', 'UO3','VO2','VO3','WO2','WO3','UI4','UI5','VI4','VI5','WI4', 'WI5','UO4','UO5','VO4','VO5','WO4','WO5','UI6','UO6','VI6', - 'VO6','WI6','WO6','WO','WI1','WO1','GONF'),), + 'VO6','WI6','WO6','WO','WI1','WO1','GONF','LIAISON'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + 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='**'), + LIAISON =SIMP(statut='f',typ='TXM',into=('ENCASTRE',)), DX =SIMP(statut='f',typ='R' ), DY =SIMP(statut='f',typ='R' ), DZ =SIMP(statut='f',typ='R' ), @@ -1212,12 +1412,12 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca - DDL_POUTRE =FACT(statut='f',min=1,max='**', + DDL_POUTRE =FACT(statut='f',max='**', regles=(AU_MOINS_UN('GROUP_NO','NOEUD'), AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ'), UN_PARMI('VECT_Y','ANGL_VRIL'),), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), DX =SIMP(statut='f',typ='R' ), DY =SIMP(statut='f',typ='R' ), DZ =SIMP(statut='f',typ='R' ), @@ -1226,15 +1426,15 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca DRZ =SIMP(statut='f',typ='R' ), # définition du repère local VECT_Y =SIMP(statut='f',typ='R',min=3,max=3), - ANGL_VRIL =SIMP(statut='f',typ='R',max=1), + ANGL_VRIL =SIMP(statut='f',typ='R',), # restriction sur les mailles servant à définir le repère local - GROUP_MA =SIMP(statut='f',typ=grma,max=1), - MAILLE =SIMP(statut='f',typ=ma,max=1), + GROUP_MA =SIMP(statut='f',typ=grma,), + MAILLE =SIMP(statut='f',typ=ma,), ), - FACE_IMPO =FACT(statut='f',min=1,max='**', + FACE_IMPO =FACT(statut='f',max='**', regles=(UN_PARMI('GROUP_MA','MAILLE',), AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI', 'TEMP','PRE1','PRE2','DNOR','DTAN'), @@ -1251,8 +1451,8 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca EXCLUS('DTAN','DRY'), EXCLUS('DTAN','DRZ'),), # rajout d'un mot clé REPERE :/ LOCAL /GLOBAL - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), DX =SIMP(statut='f',typ='R' ), DY =SIMP(statut='f',typ='R' ), DZ =SIMP(statut='f',typ='R' ), @@ -1269,22 +1469,22 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca PRE2 =SIMP(statut='f',typ='R' ), ), - LIAISON_DDL =FACT(statut='f',fr="Définir une relation linéaire entre des ddls de deux ou plusieurs noeuds", - min=1,max='**', + LIAISON_DDL =FACT(statut='f',max='**', + fr="Définir une relation linéaire entre des ddls de deux ou plusieurs noeuds", regles=(UN_PARMI('GROUP_NO','NOEUD'),), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + GROUP_NO =SIMP(statut='f',typ=grno ,max='**'), + NOEUD =SIMP(statut='f',typ=no ,max='**'), DDL =SIMP(statut='o',typ='TXM',max='**'), - COEF_MULT =SIMP(statut='o',typ='R',max='**'), + COEF_MULT =SIMP(statut='o',typ='R' ,max='**'), COEF_IMPO =SIMP(statut='o',typ='R' ), ), - LIAISON_OBLIQUE =FACT(statut='f',fr="Appliquer à des noeuds une valeur de déplacement dans un repere oblique", - min=1,max='**', + LIAISON_OBLIQUE =FACT(statut='f',max='**', + fr="Appliquer à des noeuds une valeur de déplacement dans un repere oblique", regles=(UN_PARMI('GROUP_NO','NOEUD'), UN_PARMI('DX','DY','DZ','DRX','DRY','DRZ'),), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), ANGL_NAUT =SIMP(statut='o',typ='R',max=3), DX =SIMP(statut='f',typ='R' ), DY =SIMP(statut='f',typ='R' ), @@ -1294,8 +1494,8 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca DRZ =SIMP(statut='f',typ='R' ), ), - LIAISON_GROUP =FACT(statut='f',fr="Définir des relations linéaires entre certains ddls de couples de noeuds", - min=1,max='**', + LIAISON_GROUP =FACT(statut='f',max='**', + fr="Définir des relations linéaires entre certains ddls de couples de noeuds", regles=(UN_PARMI('GROUP_MA_1','MAILLE_1','GROUP_NO_1','NOEUD_1'), UN_PARMI('GROUP_MA_2','MAILLE_2','GROUP_NO_2','NOEUD_2'), EXCLUS('GROUP_MA_1','GROUP_NO_2'), @@ -1308,21 +1508,21 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca EXCLUS('NOEUD_1','MAILLE_2'), EXCLUS('SANS_NOEUD','SANS_GROUP_NO'),), - GROUP_MA_1 =SIMP(statut='f',typ=grma,max='**'), - MAILLE_1 =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA_2 =SIMP(statut='f',typ=grma,max='**'), - MAILLE_2 =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO_1 =SIMP(statut='f',typ=grno,max='**'), - NOEUD_1 =SIMP(statut='f',typ=no,max='**'), - GROUP_NO_2 =SIMP(statut='f',typ=no,max='**'), - NOEUD_2 =SIMP(statut='f',typ=no,max='**'), + GROUP_MA_1 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE_1 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA_2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE_2 =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='**'), + GROUP_NO_2 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + NOEUD_2 =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - SANS_NOEUD =SIMP(statut='f',typ=no,max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,max='**'), + SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + SANS_GROUP_NO =SIMP(statut='f',typ=grno ,validators=NoRepeat(),max='**'), DDL_1 =SIMP(statut='o',typ='TXM',max='**'), - COEF_MULT_1 =SIMP(statut='o',typ='R',max='**'), + COEF_MULT_1 =SIMP(statut='o',typ='R' ,max='**'), DDL_2 =SIMP(statut='o',typ='TXM',max='**'), - COEF_MULT_2 =SIMP(statut='o',typ='R',max='**'), + COEF_MULT_2 =SIMP(statut='o',typ='R' ,max='**'), COEF_IMPO =SIMP(statut='o',typ='R' ), SOMMET =SIMP(statut='f',typ='TXM',into=("OUI",) ), TRAN =SIMP(statut='f',typ='R',max=3), @@ -1330,16 +1530,16 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca CENTRE =SIMP(statut='f',typ='R',max=3), ), - LIAISON_MAIL =FACT(statut='f',min=1,max='**', + LIAISON_MAIL =FACT(statut='f',max='**', regles=(AU_MOINS_UN('GROUP_MA_MAIT','MAILLE_MAIT'), AU_MOINS_UN('GROUP_MA_ESCL','MAILLE_ESCL','GROUP_NO_ESCL','NOEUD_ESCL'), PRESENT_PRESENT('DDL_MAIT','DDL_ESCL'),), - GROUP_MA_MAIT =SIMP(statut='f',typ=grma,max='**'), - MAILLE_MAIT =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA_ESCL =SIMP(statut='f',typ=grma,max='**'), - MAILLE_ESCL =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO_ESCL =SIMP(statut='f',typ=grno,max='**'), - NOEUD_ESCL =SIMP(statut='f',typ=no,max='**'), + 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='**'), + GROUP_NO_ESCL =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD_ESCL =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), TRAN =SIMP(statut='f',typ='R',max=3 ), ANGL_NAUT =SIMP(statut='f',typ='R',max=3 ), CENTRE =SIMP(statut='f',typ='R',max=3 ), @@ -1348,41 +1548,41 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca ), - LIAISON_SOLIDE =FACT(statut='f',fr="Modéliser une partie indéformable d'une structure",min=1,max='**', + LIAISON_SOLIDE =FACT(statut='f',fr="Modéliser une partie indéformable d'une structure",max='**', regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + 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='**'), NUME_LAGR =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES") ), ), - LIAISON_ELEM =FACT(statut='f',fr="Raccorder une poutre à une partie massive 3D ou une coque", min=1,max='**', + LIAISON_ELEM =FACT(statut='f',fr="Raccorder une poutre à une partie massive 3D ou une coque",max='**', regles=(UN_PARMI('GROUP_MA_1','MAILLE_1'), UN_PARMI('GROUP_NO_2','NOEUD_2'),), OPTION =SIMP(statut='o',typ='TXM',into=("3D_TUYAU","3D_POU","COQ_POU","COQ_TUYAU") ), - GROUP_MA_1 =SIMP(statut='f',typ=grma,max='**'), - MAILLE_1 =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO_2 =SIMP(statut='f',typ=grno,max='**'), - NOEUD_2 =SIMP(statut='f',typ=no,max='**'), + GROUP_MA_1 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE_1 =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='**'), NUME_LAGR =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES") ), CARA_ELEM =SIMP(statut='f',typ=(cara_elem) ), AXE_POUTRE =SIMP(statut='f',typ='R',max=3), ANGL_MAX =SIMP(statut='f',typ='R',defaut= 1. ), ), - LIAISON_UNIF =FACT(statut='f',fr="Imposer une meme valeur (inconnue) à des ddls d'un emsemble de noeuds", - min=1,max='**', + LIAISON_UNIF =FACT(statut='f',max='**', + fr="Imposer une meme valeur (inconnue) à des ddls d'un emsemble de noeuds", regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + 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='**'), DDL =SIMP(statut='o',typ='TXM',max='**'), ), - LIAISON_CHAMNO =FACT(statut='f',fr="définir une relation linéaire entre tous les ddls d'un concept cham_nno", - min=1,max='**', + LIAISON_CHAMNO =FACT(statut='f',max='**', + fr="définir une relation linéaire entre tous les ddls d'un concept cham_no", # type de cham_no CO() CHAM_NO =SIMP(statut='o',typ=cham_no), #CO() COEF_IMPO =SIMP(statut='o',typ='R' ), @@ -1391,7 +1591,7 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca VECT_ASSE =SIMP(statut='f',typ=cham_no_depl_r ), - CONTACT =FACT(statut='f',fr="Imposer du contact avec ou sans frottement",min=1,max='**', + CONTACT =FACT(statut='f',fr="Imposer du contact avec ou sans frottement",max='**', regles=(UN_PARMI('GROUP_MA_2','MAILLE_2'),), APPARIEMENT =SIMP(statut='f',typ='TXM',defaut="MAIT_ESCL", into=("NON","NODAL","NODAL_SYME","MAIT_ESCL","MAIT_ESCL_SYME")), @@ -1401,10 +1601,10 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca METHODE =SIMP(statut='f',typ='TXM',defaut="CONTRAINTE", into=("CONTRAINTE","LAGRANGIEN","PENALISATION","CONTINUE") ), PROJECTION =SIMP(statut='f',typ='TXM',defaut="LINEAIRE",into=("LINEAIRE","QUADRATIQUE") ), - GROUP_MA_1 =SIMP(statut='f',typ=grma,max='**'), - MAILLE_1 =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA_2 =SIMP(statut='f',typ=grma,max='**'), - MAILLE_2 =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA_1 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE_1 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA_2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE_2 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), b_active =BLOC(condition = "METHODE == 'CONTRAINTE' ", fr="Paramètres de la méthode des contraintes actives (contact uniquement)", regles=(EXCLUS('DIST_2','COEF_IMPO'), @@ -1415,8 +1615,8 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca 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'),), - SANS_NOEUD =SIMP(statut='f',typ=no,max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,max='**'), + SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), COEF_IMPO =SIMP(statut='f',typ='R'), COEF_MULT_2 =SIMP(statut='f',typ='R'), VECT_NORM_2 =SIMP(statut='f',typ='R',max=3), @@ -1432,14 +1632,14 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca 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'),), - SANS_NOEUD =SIMP(statut='f',typ=no,max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,max='**'), + SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), DIST_1 =SIMP(statut='f',typ='R'), DIST_2 =SIMP(statut='f',typ='R'), VECT_Y =SIMP(statut='f',typ='R',min=3,max=3), STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), b_frottement =BLOC(condition = "FROTTEMENT == 'COULOMB' ",fr="Paramètres du frottement de Coulomb", - COULOMB =SIMP(statut='o',typ='R',max=1), + COULOMB =SIMP(statut='o',typ='R',), COEF_MATR_FROT =SIMP(statut='f',typ='R',defaut=0.E+0), ),), b_penalisation =BLOC(condition = "METHODE == 'PENALISATION' ", @@ -1451,14 +1651,14 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca 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'),), - SANS_NOEUD =SIMP(statut='f',typ=no,max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,max='**'), + SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), DIST_1 =SIMP(statut='f',typ='R'), DIST_2 =SIMP(statut='f',typ='R'), VECT_Y =SIMP(statut='f',typ='R',min=3,max=3), STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), b_frottement =BLOC(condition = "FROTTEMENT == 'COULOMB' ",fr="Paramètres du frottement de Coulomb", - COULOMB =SIMP(statut='o',typ='R',max=1), + COULOMB =SIMP(statut='o',typ='R',), E_T =SIMP(statut='f',typ='R', fr="Active la pénalisation sur le frottement et définit le coefficient de pénalisation"), COEF_MATR_FROT =SIMP(statut='f',typ='R',defaut=0.E+0), @@ -1474,17 +1674,17 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca ITER_GEOM_MAXI =SIMP(statut='f',typ='I',defaut=2), ITER_CONT_MAXI =SIMP(statut='f',typ='I',defaut=30), b_frottement =BLOC(condition = "FROTTEMENT == 'COULOMB' ",fr="Paramètres du frottement de Coulomb", - COULOMB =SIMP(statut='o',typ='R',max=1), + 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='I',defaut=0),),), ), - FORCE_NODALE =FACT(statut='f',fr="Imposer des forces nodales en des noeuds",min=1,max='**', + FORCE_NODALE =FACT(statut='f',fr="Imposer des forces nodales en des noeuds",max='**', regles=(AU_MOINS_UN('GROUP_NO','NOEUD'), AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ' ),), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), FX =SIMP(statut='f',typ='R' ), FY =SIMP(statut='f',typ='R' ), FZ =SIMP(statut='f',typ='R' ), @@ -1494,23 +1694,23 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca ANGL_NAUT =SIMP(statut='f',typ='R',max=3), ), - FORCE_FACE =FACT(statut='f',fr="Appliquer des forces surfaciques sur une face d'éléments volumiques", - min=1,max='**', + FORCE_FACE =FACT(statut='f',max='**', + fr="Appliquer des forces surfaciques sur une face d'éléments volumiques", regles=(AU_MOINS_UN('GROUP_MA','MAILLE'), AU_MOINS_UN('FX','FY','FZ'),), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), FX =SIMP(statut='f',typ='R' ), FY =SIMP(statut='f',typ='R' ), FZ =SIMP(statut='f',typ='R' ), ), - FORCE_ARETE =FACT(statut='f',fr="Appliquer des forces linéiques à une arete d élément volumique ou de coque", - min=1,max='**', + FORCE_ARETE =FACT(statut='f',max='**', + fr="Appliquer des forces linéiques à une arete d élément volumique ou de coque", regles=(AU_MOINS_UN('GROUP_MA','MAILLE',), AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ' ),), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), FX =SIMP(statut='f',typ='R' ), FY =SIMP(statut='f',typ='R' ), FZ =SIMP(statut='f',typ='R' ), @@ -1519,12 +1719,12 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca MZ =SIMP(statut='f',typ='R' ), ), - FORCE_CONTOUR =FACT(statut='f',fr="Appliquer des forces linéiques au bord d'un domaine 2D ou AXIS_FOURIER", - min=1,max='**', + FORCE_CONTOUR =FACT(statut='f',max='**', + fr="Appliquer des forces linéiques au bord d'un domaine 2D ou AXIS_FOURIER", regles=(AU_MOINS_UN('GROUP_MA','MAILLE'), AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), FX =SIMP(statut='f',typ='R' ), FY =SIMP(statut='f',typ='R' ), FZ =SIMP(statut='f',typ='R' ), @@ -1533,48 +1733,48 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca MZ =SIMP(statut='f',typ='R' ), ), - FORCE_INTERNE =FACT(statut='f',fr="Appliquer des forces volumiques (2D ou 3D) à un domaine volumique", - min=1,max='**', + FORCE_INTERNE =FACT(statut='f',max='**', + fr="Appliquer des forces volumiques (2D ou 3D) à un domaine volumique", regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), AU_MOINS_UN('FX','FY','FZ' ),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), FX =SIMP(statut='f',typ='R' ), FY =SIMP(statut='f',typ='R' ), FZ =SIMP(statut='f',typ='R' ), ), - PRES_REP =FACT(statut='f',fr="Appliquer une pression à un domaine de milieu continu 2D ou 3D", - min=1,max='**', + PRES_REP =FACT(statut='f',max='**', + fr="Appliquer une pression à un domaine de milieu continu 2D ou 3D", regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), AU_MOINS_UN('PRES','CISA_2D' ),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), PRES =SIMP(statut='f',typ='R' ), CISA_2D =SIMP(statut='f',typ='R' ), ), - EFFE_FOND =FACT(statut='f',fr="Imposer un effet de fond",min=1,max='**', + EFFE_FOND =FACT(statut='f',fr="Imposer un effet de fond",max='**', regles=(AU_MOINS_UN('GROUP_MA','MAILLE'),), - GROUP_MA_INT =SIMP(statut='o',typ=grma,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA_INT =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), PRES =SIMP(statut='o',typ='R' ), ), - EPSI_INIT =FACT(statut='f',fr="Appliquer un chargement de déformation initiale à un volume 3D ou 2D", - min=1,max='**', + EPSI_INIT =FACT(statut='f',max='**', + fr="Appliquer un chargement de déformation initiale à un volume 3D ou 2D", regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), AU_MOINS_UN('EPXX','EPYY','EPZZ','EPXY','EPXZ','EPYZ','EPX', 'KY','KZ','EXX','EYY','EXY','KXX','KYY','KXY'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), EPXX =SIMP(statut='f',typ='R' ), EPYY =SIMP(statut='f',typ='R' ), EPZZ =SIMP(statut='f',typ='R' ), @@ -1592,17 +1792,17 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca KXY =SIMP(statut='f',typ='R' ), ), - ARLEQUIN =FACT(statut='f',min=1,max='**', - GROUP_MA_1 =SIMP(statut='o',typ=grma,max='**'), - GROUP_MA_2 =SIMP(statut='o',typ=grma,max='**'), - GROUP_MA_COLL =SIMP(statut='o',typ=grma,max='**'), + ARLEQUIN =FACT(statut='f',max='**', + GROUP_MA_1 =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), + GROUP_MA_2 =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), + GROUP_MA_COLL =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), CARA_ELEM =SIMP(statut='f',typ=(cara_elem) ), regles =(UN_PARMI('POIDS_1','POIDS_2'),), POIDS_1 =SIMP(statut='f',typ='R'), POIDS_2 =SIMP(statut='f',typ='R'), ), - FORCE_POUTRE =FACT(statut='f',fr="Appliquer des forces linéiques sur des poutres",min=1,max='**', + FORCE_POUTRE =FACT(statut='f',fr="Appliquer des forces linéiques sur des poutres",max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), AU_MOINS_UN('FX','FY','FZ','N','VY','VZ'), @@ -1613,8 +1813,8 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca PRESENT_ABSENT('VY','FX','FY','FZ'), PRESENT_ABSENT('VZ','FX','FY','FZ'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FORCE",into=("VENT","FORCE",) ), # rajour d'un mot clé REPERE :/ LOCAL /GLOBAL FX =SIMP(statut='f',typ='R' ), @@ -1627,16 +1827,16 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca ), - FORCE_TUYAU =FACT(statut='f',fr="imposer une pression dans un élément TUYAU",min=1,max='**', + FORCE_TUYAU =FACT(statut='f',fr="imposer une pression dans un élément TUYAU",max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), PRES =SIMP(statut='f',typ='R' ), ), - FORCE_COQUE =FACT(statut='f',fr="Appliquer des forces surfaciques sur des coques",min=1,max='**', + FORCE_COQUE =FACT(statut='f',fr="Appliquer des forces surfaciques sur des coques",max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ','PRES','F1','F2','F3','MF1','MF2'), @@ -1654,8 +1854,8 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca PRESENT_ABSENT('PRES','FX','FY','FZ','MX','MY','MZ','F1','F2','F3','MF1','MF2'),), # rajour d'un mot clé REPERE :/ LOCAL /GLOBAL TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), FX =SIMP(statut='f',typ='R' ), FY =SIMP(statut='f',typ='R' ), @@ -1675,27 +1875,26 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca ), - LIAISON_COQUE =FACT(statut='f',min=1,max='**', - GROUP_MA_1 =SIMP(statut='f',typ=grma,max='**'), - MAILLE_1 =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO_1 =SIMP(statut='f',typ=grno,max='**'), - NOEUD_1 =SIMP(statut='f',typ=no,max='**'), - GROUP_MA_2 =SIMP(statut='f',typ=grma,max='**'), - MAILLE_2 =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO_2 =SIMP(statut='f',typ=grno,max='**'), - NOEUD_2 =SIMP(statut='f',typ=no,max='**'), + LIAISON_COQUE =FACT(statut='f',max='**', + 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='**'), + 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='**'), NUME_LAGR =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES") ), ), - RELA_CINE_BP =FACT(statut='f',min=1,max='**', + RELA_CINE_BP =FACT(statut='f',max='**', CABLE_BP =SIMP(statut='o',typ=cabl_precont ), SIGM_BPEL =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), RELA_CINE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), ), - FORCE_ELEC =FACT(statut='f', - fr="Force de Laplace due à la présence d'un conducteur rectiligne secondaire non maillé", - min=1,max='**', + FORCE_ELEC =FACT(statut='f',max='**', + fr="Force de Laplace due à la présence d'un conducteur rectiligne secondaire non maillé", regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), AU_MOINS_UN('FX','FY','FZ','POSITION'), @@ -1704,8 +1903,8 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca EXCLUS('FZ','POSITION'),), # trop de regles : les blocs conditionnels permettent d en suprimer TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), FX =SIMP(statut='f',typ='R',defaut= 0.E+0 ), FY =SIMP(statut='f',typ='R',defaut= 0.E+0 ), @@ -1729,52 +1928,52 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca - INTE_ELEC =FACT(statut='f',fr="Force de Laplace due à la présence d'un conducteur non rectiligne secondaire", - min=1,max='**', + INTE_ELEC =FACT(statut='f',max='**', + fr="Force de Laplace due à la présence d'un conducteur non rectiligne secondaire", regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), AU_MOINS_UN('GROUP_MA_2','MAILLE_2','TRANS','SYME'), EXCLUS('TRANS','SYME'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA_2 =SIMP(statut='f',typ=grma,max='**'), - MAILLE_2 =SIMP(statut='f',typ=ma,max='**'), - TRANS =SIMP(statut='f',typ='R',max='**'), - SYME =SIMP(statut='f',typ='R',max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA_2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE_2 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + TRANS =SIMP(statut='f',typ='R' ,max='**'), + SYME =SIMP(statut='f',typ='R' ,max='**'), ), - IMPE_FACE =FACT(statut='f',fr="Appliquer une impédance acoustique à une face",min=1,max='**', + IMPE_FACE =FACT(statut='f',fr="Appliquer une impédance acoustique à une face",max='**', regles=(AU_MOINS_UN('GROUP_MA','MAILLE' ),), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), IMPE =SIMP(statut='o',typ='R' ), ), - VITE_FACE =FACT(statut='f',fr="Imposer des vitesses acoustiquesnormales à une face",min=1,max='**', + VITE_FACE =FACT(statut='f',fr="Imposer des vitesses acoustiquesnormales à une face",max='**', regles=(AU_MOINS_UN('GROUP_MA','MAILLE'),), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), VNOR =SIMP(statut='o',typ='R' ), ), - ONDE_FLUI =FACT(statut='f',fr="Appliquer une amplitude de pression d onde incidente",min=1,max='**', + ONDE_FLUI =FACT(statut='f',fr="Appliquer une amplitude de pression d onde incidente",max='**', regles=(AU_MOINS_UN('GROUP_MA','MAILLE'),), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), PRES =SIMP(statut='o',typ='R' ), ), - FLUX_THM_REP =FACT(statut='f',min=1,max='**', + FLUX_THM_REP =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), AU_MOINS_UN('FLUN','FLUN_HYDR1','FLUN_HYDR2'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), FLUN =SIMP(statut='f',typ='R' ), FLUN_HYDR1 =SIMP(statut='f',typ='R' ), FLUN_HYDR2 =SIMP(statut='f',typ='R' ), @@ -1782,7 +1981,10 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + + + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -1808,14 +2010,15 @@ AFFE_CHAR_MECA_C=OPER(nom="AFFE_CHAR_MECA_C",op= 7,sd_prod=char_meca, regles=(AU_MOINS_UN('DDL_IMPO','FORCE_POUTRE','LIAISON_DDL', ),), MODELE =SIMP(statut='o',typ=modele ), VERI_DDL =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - DDL_IMPO =FACT(statut='f',min=1,max='**', + DDL_IMPO =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD',), - AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI', ),), + AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI','LIAISON', ),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + 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='**'), + LIAISON =SIMP(statut='f',typ='TXM',into=('ENCASTRE',)), DX =SIMP(statut='f',typ='C' ), DY =SIMP(statut='f',typ='C' ), DZ =SIMP(statut='f',typ='C' ), @@ -1826,7 +2029,7 @@ AFFE_CHAR_MECA_C=OPER(nom="AFFE_CHAR_MECA_C",op= 7,sd_prod=char_meca, PRES =SIMP(statut='f',typ='C' ), PHI =SIMP(statut='f',typ='C' ), ), - FORCE_POUTRE =FACT(statut='f',min=1,max='**', + FORCE_POUTRE =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), AU_MOINS_UN('FX','FY','FZ','N','VY','VZ',), @@ -1837,8 +2040,8 @@ AFFE_CHAR_MECA_C=OPER(nom="AFFE_CHAR_MECA_C",op= 7,sd_prod=char_meca, PRESENT_ABSENT('VY', 'FX','FY','FZ',), PRESENT_ABSENT('VZ','FX','FY','FZ', ),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FORCE",into=("VENT","FORCE") ), FX =SIMP(statut='f',typ='C' ), FY =SIMP(statut='f',typ='C' ), @@ -1847,17 +2050,18 @@ AFFE_CHAR_MECA_C=OPER(nom="AFFE_CHAR_MECA_C",op= 7,sd_prod=char_meca, VY =SIMP(statut='f',typ='C' ), VZ =SIMP(statut='f',typ='C' ), ), - LIAISON_DDL =FACT(statut='f',min=1,max='**', + LIAISON_DDL =FACT(statut='f',max='**', regles=(UN_PARMI('GROUP_NO','NOEUD', ),), GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + NOEUD =SIMP(statut='f',typ=no ,max='**'), DDL =SIMP(statut='o',typ='TXM',max='**'), - COEF_MULT =SIMP(statut='o',typ='R',max='**'), + COEF_MULT =SIMP(statut='o',typ='R' ,max='**'), COEF_IMPO =SIMP(statut='o',typ='C' ), ), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -1890,15 +2094,16 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, VERI_NORM =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), MODELE =SIMP(statut='o',typ=modele ), - DDL_IMPO =FACT(statut='f',min=1,max='**', + DDL_IMPO =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'), AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI', - 'TEMP','PRE1','PRE2'),), + 'TEMP','PRE1','PRE2','LIAISON',),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + 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='**'), + LIAISON =SIMP(statut='f',typ='TXM',into=('ENCASTRE',)), DX =SIMP(statut='f',typ=(fonction,formule) ), DY =SIMP(statut='f',typ=(fonction,formule) ), DZ =SIMP(statut='f',typ=(fonction,formule) ), @@ -1913,7 +2118,7 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, PRE2 =SIMP(statut='f',typ=(fonction,formule) ), ), - FACE_IMPO =FACT(statut='f',min=1,max='**', + FACE_IMPO =FACT(statut='f',max='**', regles=(UN_PARMI('GROUP_MA','MAILLE'), AU_MOINS_UN('DX','DY','DZ','DRX','DRY','DRZ','GRX','PRES','PHI','TEMP','PRE1','PRE2','DNOR','DTAN'), EXCLUS('DNOR','DX'), @@ -1929,8 +2134,8 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, EXCLUS('DTAN','DRY'), EXCLUS('DTAN','DRZ'),), # rajout d un mot cle REPERE : / GLOBAL / LOCAL - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), DX =SIMP(statut='f',typ=(fonction,formule) ), DY =SIMP(statut='f',typ=(fonction,formule) ), DZ =SIMP(statut='f',typ=(fonction,formule) ), @@ -1947,22 +2152,22 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, DTAN =SIMP(statut='f',typ=(fonction,formule) ), ), - LIAISON_DDL =FACT(statut='f',min=1,max='**', + LIAISON_DDL =FACT(statut='f',max='**', fr="Définir une relation linéaire entre des ddls de deux ou plusieurs noeuds", regles=(UN_PARMI('GROUP_NO','NOEUD'),), GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + NOEUD =SIMP(statut='f',typ=no ,max='**'), DDL =SIMP(statut='o',typ='TXM',max='**'), COEF_MULT =SIMP(statut='o',typ='R',max='**'), COEF_IMPO =SIMP(statut='o',typ=(fonction,formule) ), ), - LIAISON_OBLIQUE =FACT(statut='f',min=1,max='**', + LIAISON_OBLIQUE =FACT(statut='f',max='**', fr="Définir des relations linéaires entre certains ddls de couples de noeuds", regles=(UN_PARMI('GROUP_NO','NOEUD'), UN_PARMI('DX','DY','DZ','DRX','DRY','DRZ'),), GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + NOEUD =SIMP(statut='f',typ=no ,max='**'), ANGL_NAUT =SIMP(statut='o',typ='R',max=3), DX =SIMP(statut='f',typ=(fonction,formule) ), DY =SIMP(statut='f',typ=(fonction,formule) ), @@ -1972,7 +2177,7 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, DRZ =SIMP(statut='f',typ=(fonction,formule) ), ), - LIAISON_GROUP =FACT(statut='f',min=1,max='**', + LIAISON_GROUP =FACT(statut='f',max='**', fr="Définir des relations linéaires entre certains ddls de couples de noeuds", regles=(UN_PARMI('GROUP_MA_1','MAILLE_1','GROUP_NO_1','NOEUD_1'), UN_PARMI('GROUP_MA_2','MAILLE_2','GROUP_NO_2','NOEUD_2'), @@ -1985,16 +2190,16 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, EXCLUS('NOEUD_1','GROUP_MA_2'), EXCLUS('NOEUD_1','MAILLE_2'), EXCLUS('SANS_NOEUD','SANS_GROUP_NO'),), - GROUP_MA_1 =SIMP(statut='f',typ=grma,max='**'), - MAILLE_1 =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO_1 =SIMP(statut='f',typ=grno,max='**'), - NOEUD_1 =SIMP(statut='f',typ=no,max='**'), - GROUP_MA_2 =SIMP(statut='f',typ=grma,max='**'), - MAILLE_2 =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO_2 =SIMP(statut='f',typ=grno,max='**'), - NOEUD_2 =SIMP(statut='f',typ=no,max='**'), - SANS_NOEUD =SIMP(statut='f',typ=no,max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,max='**'), + 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='**'), + 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='**'), + SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), DDL_1 =SIMP(statut='o',typ='TXM',max='**'), COEF_MULT_1 =SIMP(statut='o',typ='R',max='**'), DDL_2 =SIMP(statut='o',typ='TXM',max='**'), @@ -2006,7 +2211,7 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, CENTRE =SIMP(statut='f',typ='R',max=3), ), - CONTACT =FACT(statut='f',fr="Imposer du contact avec ou sans frottement",min=1,max='**', + CONTACT =FACT(statut='f',fr="Imposer du contact avec ou sans frottement",max='**', regles=(UN_PARMI('GROUP_MA_2','MAILLE_2'),), APPARIEMENT =SIMP(statut='f',typ='TXM',defaut="MAIT_ESCL", into=("NON","NODAL","NODAL_SYME","MAIT_ESCL","MAIT_ESCL_SYME")), @@ -2016,10 +2221,10 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, METHODE =SIMP(statut='f',typ='TXM',defaut="CONTRAINTE", into=("CONTRAINTE","LAGRANGIEN","PENALISATION","CONTINUE") ), PROJECTION =SIMP(statut='f',typ='TXM',defaut="LINEAIRE",into=("LINEAIRE","QUADRATIQUE") ), - GROUP_MA_1 =SIMP(statut='f',typ=grma,max='**'), - MAILLE_1 =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA_2 =SIMP(statut='f',typ=grma,max='**'), - MAILLE_2 =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA_1 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE_1 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA_2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE_2 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), b_active =BLOC(condition = "METHODE == 'CONTRAINTE' ", fr="Paramètres de la méthode des contraintes actives (contact uniquement)", regles=(EXCLUS('DIST_2','COEF_IMPO'), @@ -2030,8 +2235,8 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, 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'),), - SANS_NOEUD =SIMP(statut='f',typ=no,max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,max='**'), + SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), COEF_IMPO =SIMP(statut='f',typ='R'), COEF_MULT_2 =SIMP(statut='f',typ='R'), VECT_NORM_2 =SIMP(statut='f',typ='R',max=3), @@ -2047,14 +2252,14 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, 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'),), - SANS_NOEUD =SIMP(statut='f',typ=no,max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,max='**'), + SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), DIST_1 =SIMP(statut='f',typ=(fonction,formule)), DIST_2 =SIMP(statut='f',typ=(fonction,formule)), VECT_Y =SIMP(statut='f',typ='R',min=3,max=3), STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), b_frottement =BLOC(condition = "FROTTEMENT == 'COULOMB' ",fr="Paramètres du frottement de Coulomb", - COULOMB =SIMP(statut='o',typ='R',max=1), + COULOMB =SIMP(statut='o',typ='R',), COEF_MATR_FROT =SIMP(statut='f',typ='R',defaut=0.E+0), ),), b_penalisation =BLOC(condition = "METHODE == 'PENALISATION' ", @@ -2066,14 +2271,14 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, 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'),), - SANS_NOEUD =SIMP(statut='f',typ=no,max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,max='**'), + SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), DIST_1 =SIMP(statut='f',typ=(fonction,formule)), DIST_2 =SIMP(statut='f',typ=(fonction,formule)), VECT_Y =SIMP(statut='f',typ='R',min=3,max=3), STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), b_frottement =BLOC(condition = "FROTTEMENT == 'COULOMB' ",fr="Paramètres du frottement de Coulomb", - COULOMB =SIMP(statut='o',typ='R',max=1), + COULOMB =SIMP(statut='o',typ='R',), E_T =SIMP(statut='f',typ='R', fr="Active la pénalisation sur le frottement et définit le coefficient de pénalisation"), COEF_MATR_FROT =SIMP(statut='f',typ='R',defaut=0.E+0), @@ -2089,39 +2294,39 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, ITER_GEOM_MAXI =SIMP(statut='f',typ='I',defaut=2), ITER_CONT_MAXI =SIMP(statut='f',typ='I',defaut=30), b_frottement =BLOC(condition = "FROTTEMENT == 'COULOMB' ",fr="Paramètres du frottement de Coulomb", - COULOMB =SIMP(statut='o',typ='R',max=1), + 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='I',defaut=0),),), ), - LIAISON_UNIF =FACT(statut='f',min=1,max='**', + LIAISON_UNIF =FACT(statut='f',max='**', fr="Imposer une meme valeur (inconnue) a des ddls d un emsemble de noeuds", regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + 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='**'), DDL =SIMP(statut='o',typ='TXM',max='**'), ), - LIAISON_SOLIDE =FACT(statut='f',min=1,max='**', + LIAISON_SOLIDE =FACT(statut='f',max='**', fr="Modéliser une partie indéformable d une structure", regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + 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='**'), NUME_LAGR =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES",) ), ), - FORCE_NODALE =FACT(statut='f',min=1,max='**', + FORCE_NODALE =FACT(statut='f',max='**', regles=(UN_PARMI('GROUP_NO','NOEUD'), AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), FX =SIMP(statut='f',typ=(fonction,formule) ), FY =SIMP(statut='f',typ=(fonction,formule) ), FZ =SIMP(statut='f',typ=(fonction,formule) ), @@ -2131,20 +2336,20 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, ANGL_NAUT =SIMP(statut='f',typ=(fonction,formule),max=3 ), ), - FORCE_FACE =FACT(statut='f',min=1,max='**', + FORCE_FACE =FACT(statut='f',max='**', regles=(AU_MOINS_UN('GROUP_MA','MAILLE'), AU_MOINS_UN('FX','FY','FZ'),), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), FX =SIMP(statut='f',typ=(fonction,formule) ), FY =SIMP(statut='f',typ=(fonction,formule) ), FZ =SIMP(statut='f',typ=(fonction,formule) ), ), - FORCE_ARETE =FACT(statut='f',min=1,max='**', + FORCE_ARETE =FACT(statut='f',max='**', regles=(AU_MOINS_UN('GROUP_MA','MAILLE'), AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), FX =SIMP(statut='f',typ=(fonction,formule) ), FY =SIMP(statut='f',typ=(fonction,formule) ), FZ =SIMP(statut='f',typ=(fonction,formule) ), @@ -2152,11 +2357,11 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, MY =SIMP(statut='f',typ=(fonction,formule) ), MZ =SIMP(statut='f',typ=(fonction,formule) ), ), - FORCE_CONTOUR =FACT(statut='f',min=1,max='**', + FORCE_CONTOUR =FACT(statut='f',max='**', regles=(AU_MOINS_UN('GROUP_MA','MAILLE'), AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ'),), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), FX =SIMP(statut='f',typ=(fonction,formule) ), FY =SIMP(statut='f',typ=(fonction,formule) ), FZ =SIMP(statut='f',typ=(fonction,formule) ), @@ -2165,44 +2370,44 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, MZ =SIMP(statut='f',typ=(fonction,formule) ), ), - FORCE_INTERNE =FACT(statut='f',min=1,max='**', + FORCE_INTERNE =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), AU_MOINS_UN('FX','FY','FZ'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), FX =SIMP(statut='f',typ=(fonction,formule) ), FY =SIMP(statut='f',typ=(fonction,formule) ), FZ =SIMP(statut='f',typ=(fonction,formule) ), ), - PRES_REP =FACT(statut='f',min=1,max='**', + PRES_REP =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), AU_MOINS_UN('PRES','CISA_2D'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), PRES =SIMP(statut='f',typ=(fonction,formule) ), CISA_2D =SIMP(statut='f',typ=(fonction,formule) ), ), - EFFE_FOND =FACT(statut='f',fr="Imposer un effet de fond",min=1,max='**', + EFFE_FOND =FACT(statut='f',fr="Imposer un effet de fond",max='**', regles=(AU_MOINS_UN('GROUP_MA','MAILLE'),), - GROUP_MA_INT =SIMP(statut='o',typ=grma,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA_INT =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), PRES =SIMP(statut='o',typ=(fonction,formule) ), ), - EPSI_INIT =FACT(statut='f',min=1,max='**', + EPSI_INIT =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), AU_MOINS_UN('EPXX','EPYY','EPZZ','EPXY','EPXZ','EPYZ'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), EPXX =SIMP(statut='f',typ=(fonction,formule) ), EPYY =SIMP(statut='f',typ=(fonction,formule) ), EPZZ =SIMP(statut='f',typ=(fonction,formule) ), @@ -2211,7 +2416,7 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, EPYZ =SIMP(statut='f',typ=(fonction,formule) ), ), - FORCE_POUTRE =FACT(statut='f',min=1,max='**', + FORCE_POUTRE =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), AU_MOINS_UN('FX','FY','FZ','N','VY','VZ'), @@ -2223,8 +2428,8 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, PRESENT_ABSENT('VZ','FX','FY','FZ'),), # rajout d un mot cle REPERE : / GLOBAL / LOCAL TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FORCE",into=("VENT","FORCE") ), FX =SIMP(statut='f',typ=(fonction,formule) ), FY =SIMP(statut='f',typ=(fonction,formule) ), @@ -2234,16 +2439,16 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, VZ =SIMP(statut='f',typ=(fonction,formule) ), ), - FORCE_TUYAU =FACT(statut='f',min=1,max='**', + FORCE_TUYAU =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), PRES =SIMP(statut='f',typ=(fonction,formule) ), ), - FORCE_COQUE =FACT(statut='f',min=1,max='**', + FORCE_COQUE =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ','PRES','F1','F2','F3','MF1','MF2'), @@ -2261,8 +2466,8 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, PRESENT_ABSENT('PRES','FX','FY','FZ','MX','MY','MZ','F1','F2','F3','MF1','MF2'),), # rajout d un mot cle REPERE : / GLOBAL / LOCAL TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), FX =SIMP(statut='f',typ=(fonction,formule) ), FY =SIMP(statut='f',typ=(fonction,formule) ), FZ =SIMP(statut='f',typ=(fonction,formule) ), @@ -2279,34 +2484,34 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, into=("SUP","INF","MOY","MAIL") ), ), - LIAISON_COQUE =FACT(statut='f',min=1,max='**', - GROUP_MA_1 =SIMP(statut='f',typ=grma,max='**'), - MAILLE_1 =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO_1 =SIMP(statut='f',typ=grno,max='**'), - NOEUD_1 =SIMP(statut='f',typ=no,max='**'), - GROUP_MA_2 =SIMP(statut='f',typ=grma,max='**'), - MAILLE_2 =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO_2 =SIMP(statut='f',typ=grno,max='**'), - NOEUD_2 =SIMP(statut='f',typ=no,max='**'), + LIAISON_COQUE =FACT(statut='f',max='**', + 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='**'), + 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='**'), NUME_LAGR =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES",) ), ), - VITE_FACE =FACT(statut='f',min=1,max='**', + VITE_FACE =FACT(statut='f',max='**', regles=(AU_MOINS_UN('GROUP_MA','MAILLE'), PRESENT_ABSENT('GROUP_MA','MAILLE'),), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), VNOR =SIMP(statut='o',typ=(fonction,formule) ), ), - IMPE_FACE =FACT(statut='f',min=1,max='**', + IMPE_FACE =FACT(statut='f',max='**', regles=(AU_MOINS_UN('GROUP_MA','MAILLE'), PRESENT_ABSENT('GROUP_MA','MAILLE'),), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), IMPE =SIMP(statut='o',typ=(fonction,formule) ), ), - ONDE_PLANE =FACT(statut='f',min=1,max='**', + ONDE_PLANE =FACT(statut='f',max='**', DIRECTION =SIMP(statut='o',typ='R',max='**'), TYPE_ONDE =SIMP(statut='o',typ='TXM' ), FONC_SIGNAL =SIMP(statut='o',typ=(fonction,formule) ), @@ -2315,13 +2520,13 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, - FLUX_THM_REP =FACT(statut='f',min=1,max='**', + FLUX_THM_REP =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), AU_MOINS_UN('FLUN','FLUN_HYDR1','FLUN_HYDR2'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), FLUN =SIMP(statut='f',typ=(fonction,formule) ), FLUN_HYDR1 =SIMP(statut='f',typ=(fonction,formule) ), FLUN_HYDR2 =SIMP(statut='f',typ=(fonction,formule) ), @@ -2329,7 +2534,10 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; -#& MODIF COMMANDE DATE 09/10/2002 AUTEUR DURAND C.DURAND + + + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -2355,14 +2563,15 @@ AFFE_CHAR_OPS011=OPER(nom="AFFE_CHAR_OPS011",op= 190,sd_prod=char_ther, MODELE =SIMP(statut='o',typ=modele ), VERI_DDL =SIMP(statut='f',typ='TXM',defaut="OUI", into=("OUI","NON") ), - CARA_TORSION =FACT(statut='f',min=1,max='**', + CARA_TORSION =FACT(statut='f',max='**', regles=(UN_PARMI('TOUT','GROUP_MA'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), ), INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -2390,26 +2599,26 @@ AFFE_CHAR_THER=OPER(nom="AFFE_CHAR_THER",op=34,sd_prod=char_ther VERI_DDL =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="OUI"), MODELE =SIMP(statut='o',typ=(modele) ), - TEMP_IMPO =FACT(statut='f',min=1,max='**', + TEMP_IMPO =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'), AU_MOINS_UN('TEMP_SUP','TEMP','TEMP_INF'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + 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='**'), TEMP =SIMP(statut='f',typ='R'), TEMP_INF =SIMP(statut='f',typ='R'), TEMP_SUP =SIMP(statut='f',typ='R'), ), - FLUX_REP =FACT(statut='f',min=1,max='**', + FLUX_REP =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), PRESENT_PRESENT('CARA_TORSION','GROUP_MA'), AU_MOINS_UN('FLUN','FLUN_INF','FLUN_SUP','CARA_TORSION') ), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), FLUN =SIMP(statut='f',typ='R'), FLUN_INF =SIMP(statut='f',typ='R'), FLUN_SUP =SIMP(statut='f',typ='R'), @@ -2417,19 +2626,19 @@ AFFE_CHAR_THER=OPER(nom="AFFE_CHAR_THER",op=34,sd_prod=char_ther ), - RAYONNEMENT =FACT(statut='f',min=1,max='**', + RAYONNEMENT =FACT(statut='f',max='**', fr="Attention, exprimer les températures en Celsius si rayonnement", regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), SIGMA =SIMP(statut='o',typ='R'), EPSILON =SIMP(statut='o',typ='R'), TEMP_EXT =SIMP(statut='o',typ='R'), ), - ECHANGE =FACT(statut='f',min=1,max='**', + ECHANGE =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), AU_MOINS_UN('COEF_H','COEF_H_INF','COEF_H_SUP'), @@ -2437,8 +2646,8 @@ AFFE_CHAR_THER=OPER(nom="AFFE_CHAR_THER",op=34,sd_prod=char_ther ENSEMBLE('COEF_H_INF','TEMP_EXT_INF'), ENSEMBLE('COEF_H_SUP','TEMP_EXT_SUP'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), COEF_H =SIMP(statut='f',typ='R'), TEMP_EXT =SIMP(statut='f',typ='R'), COEF_H_INF =SIMP(statut='f',typ='R'), @@ -2447,40 +2656,40 @@ AFFE_CHAR_THER=OPER(nom="AFFE_CHAR_THER",op=34,sd_prod=char_ther TEMP_EXT_SUP =SIMP(statut='f',typ='R'), ), - SOURCE =FACT(statut='f',min=1,max='**', + SOURCE =FACT(statut='f',max='**', regles=(UN_PARMI('SOUR','SOUR_CALCULEE',), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('SOUR_CALCULEE','TOUT','GROUP_MA','MAILLE'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), SOUR =SIMP(statut='f',typ='R'), SOUR_CALCULEE =SIMP(statut='f',typ=(cham_elem_sour_r) ), ), - GRAD_TEMP_INIT =FACT(statut='f',min=1,max='**', + GRAD_TEMP_INIT =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), AU_MOINS_UN('FLUX_X','FLUX_Y','FLUX_Z'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), FLUX_X =SIMP(statut='f',typ='R' ), FLUX_Y =SIMP(statut='f',typ='R' ), FLUX_Z =SIMP(statut='f',typ='R' ), ), - LIAISON_DDL =FACT(statut='f',min=1,max='**', + LIAISON_DDL =FACT(statut='f',max='**', regles=(UN_PARMI('GROUP_NO','NOEUD', ),), GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + NOEUD =SIMP(statut='f',typ=no ,max='**'), DDL =SIMP(statut='f',typ='TXM',max='**', into=("TEMP","TEMP_INF","TEMP_SUP") ), COEF_MULT =SIMP(statut='o',typ='R',max='**'), COEF_IMPO =SIMP(statut='o',typ='R' ), ), - LIAISON_GROUP =FACT(statut='f',min=1,max='**', + LIAISON_GROUP =FACT(statut='f',max='**', regles=(UN_PARMI('GROUP_MA_1','MAILLE_1','GROUP_NO_1','NOEUD_1'), UN_PARMI('GROUP_MA_2','MAILLE_2','GROUP_NO_2','NOEUD_2'), EXCLUS('GROUP_MA_1','GROUP_NO_2'), @@ -2492,16 +2701,16 @@ AFFE_CHAR_THER=OPER(nom="AFFE_CHAR_THER",op=34,sd_prod=char_ther EXCLUS('NOEUD_1','GROUP_MA_2'), EXCLUS('NOEUD_1','MAILLE_2'), EXCLUS('SANS_NOEUD','SANS_GROUP_NO'),), - GROUP_MA_1 =SIMP(statut='f',typ=grma,max='**'), - MAILLE_1 =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO_1 =SIMP(statut='f',typ=grno,max='**'), - NOEUD_1 =SIMP(statut='f',typ=no,max='**'), - GROUP_MA_2 =SIMP(statut='f',typ=grma,max='**'), - MAILLE_2 =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO_2 =SIMP(statut='f',typ=grno,max='**'), - NOEUD_2 =SIMP(statut='f',typ=no,max='**'), - SANS_NOEUD =SIMP(statut='f',typ=no,max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,max='**'), + 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='**'), + 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='**'), + SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), DDL_1 =SIMP(statut='f',typ='TXM',max='**',defaut="TEMP", into=("TEMP","TEMP_INF","TEMP_SUP") ), COEF_MULT_1 =SIMP(statut='o',typ='R',max='**'), @@ -2515,58 +2724,59 @@ AFFE_CHAR_THER=OPER(nom="AFFE_CHAR_THER",op=34,sd_prod=char_ther CENTRE =SIMP(statut='f',typ='R',max='**'), ), - LIAISON_MAIL =FACT(statut='f',min=1,max='**', + LIAISON_MAIL =FACT(statut='f',max='**', regles=(AU_MOINS_UN('GROUP_MA_MAIT','MAILLE_MAIT'), AU_MOINS_UN('GROUP_MA_ESCL','MAILLE_ESCL','GROUP_NO_ESCL', 'NOEUD_ESCL'),), - GROUP_MA_MAIT =SIMP(statut='f',typ=grma,max='**'), - MAILLE_MAIT =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA_ESCL =SIMP(statut='f',typ=grma,max='**'), - MAILLE_ESCL =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO_ESCL =SIMP(statut='f',typ=grno,max='**'), - NOEUD_ESCL =SIMP(statut='f',typ=no,max='**'), + 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='**'), + GROUP_NO_ESCL =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD_ESCL =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), TRAN =SIMP(statut='f',typ='R',max='**' ), ANGL_NAUT =SIMP(statut='f',typ='R',max='**' ), CENTRE =SIMP(statut='f',typ='R',max='**' ), ), - ECHANGE_PAROI =FACT(statut='f',min=1,max='**', + ECHANGE_PAROI =FACT(statut='f',max='**', regles=(UN_PARMI('GROUP_MA_1','MAILLE_1'), UN_PARMI('GROUP_MA_2','MAILLE_2'),), - GROUP_MA_1 =SIMP(statut='f',typ=grma,max='**'), - MAILLE_1 =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA_2 =SIMP(statut='f',typ=grma,max='**'), - MAILLE_2 =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA_1 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE_1 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA_2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE_2 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), COEF_H =SIMP(statut='f',typ='R'), TRAN =SIMP(statut='f',typ='R',min=2,max=3), - ANGL_NAUT =SIMP(statut='f',typ='R',min=1,max=3), + ANGL_NAUT =SIMP(statut='f',typ='R',max=3), CENTRE =SIMP(statut='f',typ='R',min=2,max=3), ), - LIAISON_UNIF =FACT(statut='f',min=1,max='**', + LIAISON_UNIF =FACT(statut='f',max='**', regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + 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='**'), DDL =SIMP(statut='f',typ='TXM',max='**',defaut="TEMP", into=("TEMP","TEMP_INF","TEMP_SUP") ), ), - LIAISON_CHAMNO =FACT(statut='f',min=1,max='**', + LIAISON_CHAMNO =FACT(statut='f',max='**', CHAM_NO =SIMP(statut='o',typ=cham_no),# CO()# "il faut definir une structure de donnee generique chamno" COEF_IMPO =SIMP(statut='o',typ='R' ), NUME_LAGR =SIMP(statut='f',typ='TXM',defaut="NORMAL",into=("NORMAL","APRES") ), ), - CONVECTION =FACT(statut='f',min=1,max='**', + CONVECTION =FACT(statut='f',max='**', VITESSE =SIMP(statut='o',typ=(cham_no_depl_r) ), ), INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -2594,15 +2804,15 @@ AFFE_CHAR_THER_F=OPER(nom="AFFE_CHAR_THER_F",op=33,sd_prod=char_ther, VERI_DDL =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), MODELE =SIMP(statut='o',typ=(modele) ), - TEMP_IMPO =FACT(statut='f',min=1,max='**', + TEMP_IMPO =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'), AU_MOINS_UN('TEMP_SUP','TEMP','TEMP_INF','EVOL_THER'), PRESENT_ABSENT('EVOL_THER','TEMP','TEMP_INF','TEMP_SUP'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + 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='**'), EVOL_THER =SIMP(statut='f',typ=(evol_ther) ), DDL =SIMP(statut='f',typ='TXM',into=("TEMP",) ), TEMP =SIMP(statut='f',typ=(fonction,formule) ), @@ -2610,13 +2820,13 @@ AFFE_CHAR_THER_F=OPER(nom="AFFE_CHAR_THER_F",op=33,sd_prod=char_ther, TEMP_SUP =SIMP(statut='f',typ=(fonction,formule) ), ), - FLUX_REP =FACT(statut='f',min=1,max='**', + FLUX_REP =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), AU_MOINS_UN('FLUN','FLUN_INF','FLUN_SUP','FLUX_X','FLUX_Y','FLUX_Z'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), FLUN =SIMP(statut='f',typ=(fonction,formule) ), FLUN_INF =SIMP(statut='f',typ=(fonction,formule) ), FLUN_SUP =SIMP(statut='f',typ=(fonction,formule) ), @@ -2625,23 +2835,23 @@ AFFE_CHAR_THER_F=OPER(nom="AFFE_CHAR_THER_F",op=33,sd_prod=char_ther, FLUX_Z =SIMP(statut='f',typ=(fonction,formule) ), ), - FLUX_NL =FACT(statut='f',min=1,max='**', + FLUX_NL =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), FLUN =SIMP(statut='o',typ=(fonction,formule) ), ), - RAYONNEMENT =FACT(statut='f',min=1,max='**', + RAYONNEMENT =FACT(statut='f',max='**', fr="Attention, exprimer les températures en Celsius si rayonnement", regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), SIGMA =SIMP(statut='o',typ=(fonction,formule) ), EPSILON =SIMP(statut='o',typ=(fonction,formule) ), TEMP_EXT =SIMP(statut='o',typ=(fonction,formule) ), @@ -2649,7 +2859,7 @@ AFFE_CHAR_THER_F=OPER(nom="AFFE_CHAR_THER_F",op=33,sd_prod=char_ther, - ECHANGE =FACT(statut='f',min=1,max='**', + ECHANGE =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), AU_MOINS_UN('COEF_H','COEF_H_INF','COEF_H_SUP'), @@ -2657,8 +2867,8 @@ AFFE_CHAR_THER_F=OPER(nom="AFFE_CHAR_THER_F",op=33,sd_prod=char_ther, ENSEMBLE('COEF_H_INF','TEMP_EXT_INF'), ENSEMBLE('COEF_H_SUP','TEMP_EXT_SUP'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), COEF_H =SIMP(statut='f',typ=(fonction,formule) ), TEMP_EXT =SIMP(statut='f',typ=(fonction,formule) ), COEF_H_INF =SIMP(statut='f',typ=(fonction,formule) ), @@ -2668,49 +2878,49 @@ AFFE_CHAR_THER_F=OPER(nom="AFFE_CHAR_THER_F",op=33,sd_prod=char_ther, ), - SOURCE =FACT(statut='f',min=1,max='**', + SOURCE =FACT(statut='f',max='**', regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), SOUR =SIMP(statut='o',typ=(fonction,formule) ), ), - GRAD_TEMP_INIT =FACT(statut='f',min=1,max='**', + GRAD_TEMP_INIT =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), AU_MOINS_UN('FLUX_X','FLUX_Y','FLUX_Z'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), FLUX_X =SIMP(statut='f',typ=(fonction,formule) ), FLUX_Y =SIMP(statut='f',typ=(fonction,formule) ), FLUX_Z =SIMP(statut='f',typ=(fonction,formule) ), ), - ECHANGE_PAROI =FACT(statut='f',min=1,max='**', + ECHANGE_PAROI =FACT(statut='f',max='**', regles=(UN_PARMI('GROUP_MA_1','MAILLE_1'), UN_PARMI('GROUP_MA_2','MAILLE_2'),), - GROUP_MA_1 =SIMP(statut='f',typ=grma,max='**'), - MAILLE_1 =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA_2 =SIMP(statut='f',typ=grma,max='**'), - MAILLE_2 =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA_1 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE_1 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA_2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE_2 =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), COEF_H =SIMP(statut='o',typ=(fonction,formule) ), TRAN =SIMP(statut='f',typ='R',min=2,max=3), - ANGL_NAUT =SIMP(statut='f',typ='R',min=1,max=3), + ANGL_NAUT =SIMP(statut='f',typ='R',max=3), CENTRE =SIMP(statut='f',typ='R',min=2,max=3), ), - LIAISON_DDL =FACT(statut='f',min=1,max='**', + LIAISON_DDL =FACT(statut='f',max='**', regles=(UN_PARMI('GROUP_NO','NOEUD'),), GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + NOEUD =SIMP(statut='f',typ=no ,max='**'), DDL =SIMP(statut='f',typ='TXM',max='**',into=("TEMP","TEMP_INF","TEMP_SUP") ), COEF_MULT =SIMP(statut='o',typ='R',max='**'), COEF_IMPO =SIMP(statut='o',typ=(fonction,formule) ), ), - LIAISON_GROUP =FACT(statut='f',min=1,max='**', + LIAISON_GROUP =FACT(statut='f',max='**', regles=(UN_PARMI('GROUP_MA_1','MAILLE_1','GROUP_NO_1','NOEUD_1'), UN_PARMI('GROUP_MA_2','MAILLE_2','GROUP_NO_2','NOEUD_2'), EXCLUS('GROUP_MA_1','GROUP_NO_2'), @@ -2722,16 +2932,16 @@ AFFE_CHAR_THER_F=OPER(nom="AFFE_CHAR_THER_F",op=33,sd_prod=char_ther, EXCLUS('NOEUD_1','GROUP_MA_2'), EXCLUS('NOEUD_1','MAILLE_2'), EXCLUS('SANS_NOEUD','SANS_GROUP_NO'),), - GROUP_MA_1 =SIMP(statut='f',typ=grma,max='**'), - MAILLE_1 =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO_1 =SIMP(statut='f',typ=grno,max='**'), - NOEUD_1 =SIMP(statut='f',typ=no,max='**'), - GROUP_MA_2 =SIMP(statut='f',typ=grma,max='**'), - MAILLE_2 =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO_2 =SIMP(statut='f',typ=grno,max='**'), - NOEUD_2 =SIMP(statut='f',typ=no,max='**'), - SANS_NOEUD =SIMP(statut='f',typ=no,max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,max='**'), + 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='**'), + 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='**'), + SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), DDL_1 =SIMP(statut='f',typ='TXM',max='**',defaut="TEMP", into=("TEMP","TEMP_INF","TEMP_SUP") ), COEF_MULT_1 =SIMP(statut='o',typ='R',max='**'), @@ -2745,39 +2955,40 @@ AFFE_CHAR_THER_F=OPER(nom="AFFE_CHAR_THER_F",op=33,sd_prod=char_ther, CENTRE =SIMP(statut='f',typ='R',max='**'), ), - LIAISON_UNIF =FACT(statut='f',min=1,max='**', + LIAISON_UNIF =FACT(statut='f',max='**', regles=(UN_PARMI('GROUP_NO','NOEUD','GROUP_MA','MAILLE'),), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - DDL =SIMP(statut='f',typ='TXM',max='**',defaut="TEMP", + 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='**'), + DDL =SIMP(statut='f',typ='TXM',defaut="TEMP", into=("TEMP","TEMP_INF","TEMP_SUP") ), ), - CONVECTION =FACT(statut='f',min=1,max='**', + CONVECTION =FACT(statut='f',max='**', VITESSE =SIMP(statut='o',typ=(cham_no_depl_r) ), ), INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 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. +# 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 VABHHTS J.PELLET AFFE_MATERIAU=OPER(nom="AFFE_MATERIAU",op=6,sd_prod=cham_mater, @@ -2786,34 +2997,33 @@ AFFE_MATERIAU=OPER(nom="AFFE_MATERIAU",op=6,sd_prod=cham_mater, UIinfo={"groupes":("Modélisation",)}, MAILLAGE =SIMP(statut='o',typ=maillage), MODELE =SIMP(statut='f',typ=modele), - AFFE =FACT(statut='o',min=1,max='**', - regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'),), + AFFE =FACT(statut='o',max='**', + regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), MATER =SIMP(statut='o',typ=mater), TEMP_REF =SIMP(statut='f',typ='R',defaut= 0.E+0 ), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 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. +# 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 JMBHH01 J.M.PROIX AFFE_MODELE=OPER(nom="AFFE_MODELE",op=18,sd_prod=modele,docu="U4.41.01-g", @@ -2822,25 +3032,25 @@ AFFE_MODELE=OPER(nom="AFFE_MODELE",op=18,sd_prod=modele,docu="U4.41.01-g", regles=(AU_MOINS_UN('AFFE','AFFE_SOUS_STRUC'),), MAILLAGE =SIMP(statut='o',typ=(maillage) ), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), - VERIF =SIMP(statut='f',typ='TXM',max=2,into=("MAILLE","NOEUD") ), - AFFE_SOUS_STRUC =FACT(statut='f',min=1,max=1, + VERIF =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=2,into=("MAILLE","NOEUD") ), + AFFE_SOUS_STRUC =FACT(statut='f', regles=(UN_PARMI('TOUT','MAILLE'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), PHENOMENE =SIMP(statut='f',typ='TXM',defaut="MECANIQUE",into=("MECANIQUE",) ), ), - AFFE =FACT(statut='f',min=1,max='**', + AFFE =FACT(statut='f',max='**', regles=(UN_PARMI('TOUT','GROUP_MA','GROUP_NO','MAILLE','NOEUD'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - NOEUD =SIMP(statut='f',typ=no,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='**'), PHENOMENE =SIMP(statut='o',typ='TXM', into=("MECANIQUE","THERMIQUE","ACOUSTIQUE") ), b_mecanique =BLOC( condition = "PHENOMENE=='MECANIQUE'", fr="modelisations mécaniques", - MODELISATION =SIMP(statut='o',typ='TXM', into=( + MODELISATION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=( "2D_DIS_T", "2D_DIS_TR", "2D_FLUI_ABSO", @@ -2918,7 +3128,7 @@ AFFE_MODELE=OPER(nom="AFFE_MODELE",op=18,sd_prod=modele,docu="U4.41.01-g", "D_PLAN_THHD", "D_PLAN_THVD", "D_PLAN_THHMD", - "D_PLAN_THMD", + "D_PLAN_THMD", "DIS_T", "DIS_TR", "DKT", @@ -2939,7 +3149,7 @@ AFFE_MODELE=OPER(nom="AFFE_MODELE",op=18,sd_prod=modele,docu="U4.41.01-g", b_thermique =BLOC( condition = "PHENOMENE=='THERMIQUE'", fr="modelisations thermiques", - MODELISATION =SIMP(statut='o',typ='TXM',into=( + MODELISATION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=( "3D", "3D_DIAG", "AXIS", @@ -2954,14 +3164,15 @@ AFFE_MODELE=OPER(nom="AFFE_MODELE",op=18,sd_prod=modele,docu="U4.41.01-g", b_acoustique =BLOC( condition = "PHENOMENE=='ACOUSTIQUE'", fr="modelisations acoustiques", - MODELISATION =SIMP(statut='o',typ='TXM',into=( + MODELISATION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=( "3D", "PLAN" ), ),), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -2980,24 +3191,21 @@ AFFE_MODELE=OPER(nom="AFFE_MODELE",op=18,sd_prod=modele,docu="U4.41.01-g", # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== AIDE=PROC(nom="AIDE",op=42,docu="U4.02.01-g", - UIinfo={"groupes":("Modélisation",)}, - fr="Interrogation sur le catalogue des commandes et les concepts produits", - regles=(AU_MOINS_UN('CONCEPT','TYPE_ELEM', ),), - FICHIER =SIMP(statut='f',typ='TXM',defaut="RESULTAT"), - TYPE_ELEM =FACT(fr="couple type_elem option", - statut='f',min=1,max=1, - INITEL =SIMP(statut='f',typ='TXM',defaut="NON", - into=("OUI","NON",) ), - ), - CONCEPT =FACT(statut='f',min=1,max='**', - NOM =SIMP(fr="liste des noms de concept", - statut='f',typ='TXM',max='**',defaut="*"), - OPTION =SIMP(fr="option d'édition de concept", - statut='f',typ='TXM',defaut="TOUT_TYPE", + UIinfo={"groupes":("Modélisation",)}, + fr="Interrogation sur le catalogue des commandes et les concepts produits", + regles=(AU_MOINS_UN('CONCEPT','TYPE_ELEM', ),), + FICHIER =SIMP(statut='f',typ='TXM',defaut="RESULTAT"), + 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/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -3020,9 +3228,10 @@ ASSE_MAILLAGE=OPER(nom="ASSE_MAILLAGE",op= 105,sd_prod=maillage, fr="Assembler deux maillages sous un seul nom", docu="U4.23.03-f",reentrant='n', UIinfo={"groupes":("Maillage",)}, - MAILLAGE =SIMP(statut='o',typ=maillage,min=2,max=2 ), + MAILLAGE =SIMP(statut='o',typ=maillage,min=2,validators=NoRepeat(),max=2 ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -3047,7 +3256,8 @@ ASSE_MATR_GENE=OPER(nom="ASSE_MATR_GENE",op= 128,sd_prod=matr_asse_gene_r, NUME_DDL_GENE =SIMP(statut='o',typ=nume_ddl_gene ), OPTION =SIMP(statut='o',typ='TXM',into=("RIGI_GENE","MASS_GENE","AMOR_GENE") ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -3082,7 +3292,8 @@ ASSE_MATRICE=OPER(nom="ASSE_MATRICE",op=12,sd_prod=asse_matrice_prod, CHAR_CINE =SIMP(statut='f',typ=(char_cine_meca,char_cine_ther,char_cine_acou) ), INFO =SIMP(statut='f',typ='I',into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -3105,12 +3316,13 @@ ASSE_VECT_GENE=OPER(nom="ASSE_VECT_GENE",op= 140,sd_prod=vect_asse_gene, docu="U4.65.05-e",reentrant='n', UIinfo={"groupes":("Matrices/vecteurs",)}, NUME_DDL_GENE =SIMP(statut='o',typ=nume_ddl_gene ), - CHAR_SOUS_STRUC =FACT(statut='o',min=1,max='**', + CHAR_SOUS_STRUC =FACT(statut='o',max='**', SOUS_STRUC =SIMP(statut='o',typ='TXM' ), VECT_ASSE =SIMP(statut='o',typ=cham_no_depl_r ), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -3143,7 +3355,8 @@ ASSE_VECTEUR=OPER(nom="ASSE_VECTEUR",op=13,sd_prod=asse_vecteur_prod, NUME_DDL =SIMP(statut='o',typ=nume_ddl ), INFO =SIMP(statut='f',typ='I',into=(1,2,) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -3165,7 +3378,7 @@ CALC_AMOR_MODAL=OPER(nom="CALC_AMOR_MODAL",op= 172,sd_prod=listr8, fr="Création d'une liste d'amortissements modaux calculés selon la règle du RCC-G", docu="U4.52.13-d",reentrant='n', UIinfo={"groupes":("Résolution",)}, - ENER_SOL =FACT(statut='o',min=1,max=1, + ENER_SOL =FACT(statut='o', regles=(UN_PARMI('GROUP_NO_RADIER','GROUP_MA_RADIER'), PRESENT_ABSENT('COEF_GROUP','FONC_GROUP'), # Peut-on remplacer les deux règles suivantes par un ENSEMBLE_('KRX','KRY','KRZ') @@ -3176,8 +3389,8 @@ CALC_AMOR_MODAL=OPER(nom="CALC_AMOR_MODAL",op= 172,sd_prod=listr8, PRESENT_ABSENT('GROUP_NO_CENTRE','COOR_CENTRE'),), METHODE =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL","RIGI_PARASOL") ), MODE_MECA =SIMP(statut='o',typ=mode_meca ), - GROUP_NO_RADIER =SIMP(statut='f',typ=grno,max='**'), - GROUP_MA_RADIER =SIMP(statut='f',typ=grma,max='**'), + GROUP_NO_RADIER =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + GROUP_MA_RADIER =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), FONC_GROUP =SIMP(statut='f',typ=(fonction,formule) ), COEF_GROUP =SIMP(statut='f',typ='R',max='**'), KX =SIMP(statut='o',typ='R' ), @@ -3190,19 +3403,20 @@ CALC_AMOR_MODAL=OPER(nom="CALC_AMOR_MODAL",op= 172,sd_prod=listr8, NOEUD_CENTRE =SIMP(statut='f',typ=no), COOR_CENTRE =SIMP(statut='f',typ='R',max=3), ), - AMOR_INTERNE =FACT(statut='o',min=1,max=1, + AMOR_INTERNE =FACT(statut='o', ENER_POT =SIMP(statut='o',typ=tabl_ener_pot ), - GROUP_MA =SIMP(statut='o',typ=grma,max='**'), + GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), AMOR_REDUIT =SIMP(statut='o',typ='R',max='**'), ), - AMOR_SOL =FACT(statut='o',min=1,max=1, + AMOR_SOL =FACT(statut='o', AMOR_REDUIT =SIMP(statut='f',typ='R',defaut= 0.E+0 ), FONC_AMOR_GEO =SIMP(statut='o',typ=(fonction,formule),max='**' ), HOMOGENE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), SEUIL =SIMP(statut='f',typ='R',defaut= 0.3 ), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -3273,8 +3487,8 @@ CALC_CHAM_ELEM=OPER(nom="CALC_CHAM_ELEM",op=38,sd_prod=calc_cham_elem_prod, regles=(EXCLUS('TOUT','GROUP_MA',),EXCLUS('TOUT','MAILLE',),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), # # @@ -3393,7 +3607,7 @@ CALC_CHAM_ELEM=OPER(nom="CALC_CHAM_ELEM",op=38,sd_prod=calc_cham_elem_prod, - EXCIT =FACT(statut='f',min=1,max='**', + EXCIT =FACT(statut='f',max='**', regles=(EXCLUS('FONC_MULT','COEF_MULT', ),), CHARGE =SIMP(statut='o',typ=(char_meca,char_ther,char_acou)), FONC_MULT =SIMP(statut='f',typ=(fonction,formule)), @@ -3406,7 +3620,8 @@ CALC_CHAM_ELEM=OPER(nom="CALC_CHAM_ELEM",op=38,sd_prod=calc_cham_elem_prod, MODE_FOURIER =SIMP(statut='f',typ='I',defaut= 0 ), ANGLE =SIMP(statut='f',typ='I',defaut= 0), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -3440,7 +3655,8 @@ CALC_CHAR_CINE=OPER(nom="CALC_CHAR_CINE",op= 102,sd_prod=calc_char_cine_prod, INST =SIMP(statut='f',typ='R',defaut= 0.E+0 ), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -3472,17 +3688,29 @@ CALC_CHAR_SEISME=OPER(nom="CALC_CHAR_SEISME",op= 92,sd_prod=calc_char_seisme_pr MODE_STAT =SIMP(statut='f',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc,) ), b_mode_stat =BLOC ( condition = "MODE_STAT != None", regles=(UN_PARMI('NOEUD','GROUP_NO' ),), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), + NOEUD =SIMP(statut='f',typ=no,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# SEE THE FILE "LICENSE.TERMS" FOR INFORMATION ON USAGE AND -# REDISTRIBUTION OF THIS FILE. +# 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 def calc_elem_prod(RESULTAT,**args): @@ -3506,13 +3734,13 @@ CALC_ELEM=OPER(nom="CALC_ELEM",op=58,sd_prod=calc_elem_prod,docu="U4.81.01-g",re regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE', 'NOEUD_CMP','LIST_INST','LIST_FREQ','LIST_ORDRE','NOM_CAS'),), TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',max='**'), - NUME_MODE =SIMP(statut='f',typ='I',max='**'), - NOEUD_CMP =SIMP(statut='f',typ='TXM',max='**'), + 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',max='**'), - FREQ =SIMP(statut='f',typ='R',max='**'), + 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), LIST_FREQ =SIMP(statut='f',typ=listr8), PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), @@ -3520,8 +3748,10 @@ CALC_ELEM=OPER(nom="CALC_ELEM",op=58,sd_prod=calc_elem_prod,docu="U4.81.01-g",re LIST_ORDRE =SIMP(statut='f',typ=listis), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',fr="le calcul ne sera effectué que sur ces mailles là",typ=grma,max='**'), - MAILLE =SIMP(statut='f',fr="le calcul ne sera effectué que sur ces mailles là",typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', + fr="le calcul ne sera effectué que sur ces mailles là"), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**', + fr="le calcul ne sera effectué que sur ces mailles là"), # options pour des resultats lineaire @@ -3529,12 +3759,12 @@ CALC_ELEM=OPER(nom="CALC_ELEM",op=58,sd_prod=calc_elem_prod,docu="U4.81.01-g",re mode_stat,mode_stat_depl,mode_stat_acce,mode_stat_forc,\ mult_elas,fourier_elas,base_modale,mode_flamb)", fr="options mecaniques lineaires", - TYPE_OPTION =SIMP(statut='f',typ='TXM',max=1,defaut='TOUTES',fr="type d'options mecaniques lineaires", + TYPE_OPTION =SIMP(statut='f',typ='TXM',defaut='TOUTES',fr="type d'options mecaniques lineaires", into=("SIGM_MASSIF","SIGM_STRUCT","EPSI","ENER","CRIT","DERIVEES", "INDI_ERRE","AUTRES","TOUTES"), ), b_toutes=BLOC( condition = "TYPE_OPTION == 'TOUTES'",fr="toutes les options evol elas", - OPTION =SIMP(statut='f',typ='TXM',max='**',defaut="SIEF_ELNO_ELGA", + OPTION =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',defaut="SIEF_ELNO_ELGA", # contraintes into=( "SIEF_ELNO_ELGA","SIGM_ELNO_DEPL","SIEF_ELGA_DEPL", "SIPO_ELNO_DEPL","EFGE_ELNO_DEPL","EFGE_ELNO_CART","SIGM_ELNO_CART", @@ -3562,13 +3792,13 @@ CALC_ELEM=OPER(nom="CALC_ELEM",op=58,sd_prod=calc_elem_prod,docu="U4.81.01-g",re NIVE_COUCHE =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY"), fr="position dans l'épaisseur de la coque, ou de la couche" ), ANGLE =SIMP(statut='f',typ='I',defaut= 0,fr="angle en degres à partir de la génératrice"), - NOM_CHAM =SIMP(statut='f',typ='TXM',max=1,fr="nom du champ pour VALE_NCOU_MAXI", ), - NOM_CMP =SIMP(statut='f',typ='TXM',max=1,fr="nom de la composante pour VALE_NCOU_MAXI", ), + 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", ), PLAN = SIMP(statut='f',typ='TXM',defaut="MAIL",into=("SUP","INF","MOY","MAIL"), fr="Plan de calcul pour les plaques excentrées" ), - EXCIT =FACT(statut='f',min=1,max='**', + EXCIT =FACT(statut='f',max='**', fr="Charges contenant les températures, les efforts répartis pour les poutres...", regles=(EXCLUS('FONC_MULT','FONC_MULT_C','COEF_MULT','COEF_MULT_C'),), CHARGE =SIMP(statut='o',typ=char_meca ), @@ -3586,7 +3816,7 @@ CALC_ELEM=OPER(nom="CALC_ELEM",op=58,sd_prod=calc_elem_prod,docu="U4.81.01-g",re b_sigm_massif =BLOC( condition = "TYPE_OPTION == 'SIGM_MASSIF'", fr="options de contraintes elasticite 2D et 3D", - OPTION =SIMP(statut='f',typ='TXM',max='**',defaut='SIEF_ELNO_ELGA', + OPTION =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',defaut='SIEF_ELNO_ELGA', fr="option de calcul des contraintes", into=( "SIEF_ELNO_ELGA","SIGM_ELNO_DEPL","SIEF_ELGA_DEPL",),), @@ -3594,14 +3824,14 @@ CALC_ELEM=OPER(nom="CALC_ELEM",op=58,sd_prod=calc_elem_prod,docu="U4.81.01-g",re (type(OPTION)==type(()) and 'SIGM_ELNO_DEPL' in OPTION ) or \ (type(OPTION)==type(()) and 'SIEF_ELGA_DEPL' in OPTION ) ", fr="charge contenant les temperatures ou autre charge", - EXCIT =FACT(statut='o',min=1,max='**', + EXCIT =FACT(statut='o',max='**', CHARGE =SIMP(statut='o',typ=char_meca ),), ), ), b_sigm_struct =BLOC( condition = "TYPE_OPTION == 'SIGM_STRUCT'", fr="options de contraintes elasticite poutres, coques, tuyaux", - OPTION =SIMP(statut='o',typ='TXM',max='**',defaut='SIEF_ELNO_ELGA', + OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',defaut='SIEF_ELNO_ELGA', fr="option de calcul des contraintes ou efforts generalises", into=( "SIEF_ELNO_ELGA","SIGM_ELNO_DEPL","SIEF_ELGA_DEPL","SIGM_ELNO_TUYO", "SIPO_ELNO_DEPL","EFGE_ELNO_DEPL","EFGE_ELNO_CART","SIGM_ELNO_CART", @@ -3614,7 +3844,7 @@ CALC_ELEM=OPER(nom="CALC_ELEM",op=58,sd_prod=calc_elem_prod,docu="U4.81.01-g",re (type(OPTION)==type(()) and 'SIPO_ELNO_DEPL' in OPTION ) or \ (type(OPTION)==type(()) and 'EFGE_ELNO_DEPL' in OPTION ) ", fr="charge contenant les temperatures ou les efforts répartis (poutres) ou autre", - EXCIT =FACT(statut='o',min=1,max='**', + EXCIT =FACT(statut='o',max='**', regles=(EXCLUS('FONC_MULT','FONC_MULT_C','COEF_MULT','COEF_MULT_C'),), CHARGE =SIMP(statut='o',typ=char_meca ), FONC_MULT =SIMP(statut='f',typ=(fonction,formule)), @@ -3654,7 +3884,7 @@ CALC_ELEM=OPER(nom="CALC_ELEM",op=58,sd_prod=calc_elem_prod,docu="U4.81.01-g",re # fin bloc contraintes struct b_epsi =BLOC( condition = "TYPE_OPTION=='EPSI'", - OPTION =SIMP(statut='o',typ='TXM',max='**', + OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', into=("EPSI_ELNO_DEPL","EPSI_ELGA_DEPL","EPME_ELNO_DEPL","EPME_ELGA_DEPL", "DEGE_ELNO_DEPL","EPSI_ELNO_TUYO",), ), @@ -3680,12 +3910,12 @@ b_charge =BLOC( condition = "OPTION in ('EPME_ELNO_DEPL','EPSI_ELGA_DEPL','EPME_ (type(OPTION)==type(()) and 'EPME_ELNO_DEPL' in OPTION ) or \ (type(OPTION)==type(()) and 'EPME_ELGA_DEPL' in OPTION ) ", fr="charge contenant les temperatures", - EXCIT =FACT(statut='o',min=1,max='**', + EXCIT =FACT(statut='o',max='**', CHARGE =SIMP(statut='o',typ=(char_meca,char_ther,char_acou) ),), ), ), b_ener =BLOC( condition = "TYPE_OPTION=='ENER'", - OPTION =SIMP(statut='o',typ='TXM',max='**', + OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', into=("EPOT_ELEM_DEPL","ECIN_ELEM_DEPL","ENEL_ELGA","ENEL_ELNO_ELGA", "ETOT_ELGA","ETOT_ELNO_ELGA","ETOT_ELEM",), ), @@ -3695,13 +3925,13 @@ b_charge =BLOC( condition = "OPTION in ('EPME_ELNO_DEPL','EPSI_ELGA_DEPL','EPME_ (type(OPTION)==type(()) and 'ENEL_ELNO_ELGA' in OPTION ) or \ (type(OPTION)==type(()) and 'ECIN_ELEM_DEPL' in OPTION ) ", fr="charge contenant les temperatures", - EXCIT =FACT(statut='o',min=1,max='**', + EXCIT =FACT(statut='o',max='**', CHARGE =SIMP(statut='o',typ=(char_meca,char_ther,char_acou) ),), ), ), b_crit =BLOC( condition = "TYPE_OPTION=='CRIT'", - OPTION =SIMP(statut='o',typ='TXM',max='**', + OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', into=("EQUI_ELNO_SIGM","EQUI_ELGA_SIGM", "EQUI_ELNO_EPSI","EQUI_ELGA_EPSI","EQUI_ELNO_EPME","EQUI_ELGA_EPME", "ENDO_ELNO_SIGA","ENDO_ELNO_SINO","CRIT_ELNO_RUPT","SIEQ_ELNO_TUYO","EPEQ_ELNO_TUYO", @@ -3715,31 +3945,31 @@ b_charge =BLOC( condition = "OPTION in ('EPME_ELNO_DEPL','EPSI_ELGA_DEPL','EPME_ NIVE_COUCHE =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY"), fr="position dans l'épaisseur de la coque, ou de la couche" ), ), - EXCIT =FACT(statut='f',min=1,max='**',fr="charge contenant les temperatures", + EXCIT =FACT(statut='f',max='**',fr="charge contenant les temperatures", CHARGE =SIMP(statut='o',typ=(char_meca,char_ther,char_acou) ),), ), b_derivees =BLOC( condition = "TYPE_OPTION=='DERIVEES'", - OPTION =SIMP(statut='o',typ='TXM',max='**', + OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', into=("DEUL_ELGA_DEPL","DEDE_ELNO_DLDE","DESI_ELNO_DLSI", ) ),), b_autres =BLOC( condition = "TYPE_OPTION=='AUTRES'", - OPTION =SIMP(statut='o',typ='TXM',max='**', + OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', into=("VALE_NCOU_MAXI","PRES_DBEL_DEPL","VNOR_ELEM_DEPL", ) ), b_maxi =BLOC( condition = "OPTION=='VALE_NCOU_MAXI' or \ (type(OPTION)==type(()) and 'VALE_NCOU_MAXI' in OPTION)", - NOM_CHAM =SIMP(statut='o',typ='TXM',max=1,fr="Nom du champ pour VALE_NCOU_MAXI" ), - NOM_CMP =SIMP(statut='o',typ='TXM',max=1,fr="Nom de la composante pour VALE_NCOU_MAXI"),), + NOM_CHAM =SIMP(statut='o',typ='TXM',fr="Nom du champ pour VALE_NCOU_MAXI" ), + NOM_CMP =SIMP(statut='o',typ='TXM',fr="Nom de la composante pour VALE_NCOU_MAXI"),), ), b_indi_erre =BLOC( condition = "TYPE_OPTION=='INDI_ERRE'", - OPTION =SIMP(statut='o',typ='TXM',max='**',defaut="ERRE_ELGA_NORE", + OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',defaut="ERRE_ELGA_NORE", into=("SIGM_NOZ1_ELGA","ERRE_ELEM_NOZ1","SIGM_NOZ2_ELGA","ERRE_ELEM_NOZ2", "SIRE_ELNO_DEPL","ERRE_ELGA_NORE","ERRE_ELNO_ELGA", ) ), - EXCIT =FACT(statut='f',min=1,max='**',fr="charge contenant les temperatures", + EXCIT =FACT(statut='f',max='**',fr="charge contenant les temperatures", CHARGE =SIMP(statut='o',typ=(char_meca,char_ther,char_acou) ),), ), ), @@ -3748,12 +3978,12 @@ 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',max=1,defaut='TOUTES', + TYPE_OPTION =SIMP(statut='f',typ='TXM',defaut='TOUTES', into=("SIGM_MASSIF","SIGM_STRUCT","EPSI","ENER","CRIT", "VARI","INDI_ERRE","TOUTES","AUTRES"), ), b_toutes =BLOC( condition = "TYPE_OPTION == 'TOUTES'",fr="toutes les options evol elas", - OPTION =SIMP(statut='f',typ='TXM',max='**', + OPTION =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**', into=( "SIEF_ELNO_ELGA", "SIGM_ELNO_TUYO","SIGM_ELNO_COQU", "SIGM_ELNO_SIEF","SIPO_ELNO_SIEF","EFGE_ELNO_CART", @@ -3781,11 +4011,11 @@ b_charge =BLOC( condition = "OPTION in ('EPME_ELNO_DEPL','EPSI_ELGA_DEPL','EPME_ NIVE_COUCHE =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY"), fr="choix du point d'intégration dans la couche" ), ANGLE =SIMP(statut='f',typ='I',defaut= 0 ,fr="angle de dépouillement pour les tuyaux"), - NOM_CHAM =SIMP(statut='f',typ='TXM',max=1,fr="Nom du champ pour VALE_NCOU_MAXI"), - NOM_CMP =SIMP(statut='f',typ='TXM',max=1,fr="Nom de la composante pour VALE_NCOU_MAXI"), + 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"), PLAN = SIMP(statut='f',typ='TXM',defaut="MAIL",into=("SUP","INF","MOY","MAIL") ), - EXCIT =FACT(statut='f',min=1,max='**', + EXCIT =FACT(statut='f',max='**', regles=(EXCLUS('FONC_MULT','FONC_MULT_C','COEF_MULT','COEF_MULT_C'),), CHARGE =SIMP(statut='o',typ=char_meca ), FONC_MULT =SIMP(statut='f',typ=(fonction,formule)), @@ -3799,14 +4029,14 @@ b_charge =BLOC( condition = "OPTION in ('EPME_ELNO_DEPL','EPSI_ELGA_DEPL','EPME_ b_sigm_massif =BLOC( condition = "TYPE_OPTION == 'SIGM_MASSIF'", fr="options de contraintes non lin 2D et 3D", - OPTION =SIMP(statut='o',typ='TXM',max='**', + OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', # contraintes into=( "SIEF_ELNO_ELGA",),), ), b_sigm_struct =BLOC( condition = "TYPE_OPTION == 'SIGM_STRUCT'", fr="options de contraintes non lin poutres, coques", - OPTION =SIMP(statut='o',typ='TXM',max='**', + OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', # contraintes into=( "SIEF_ELNO_ELGA","EFGE_ELNO_CART","SIGM_ELNO_TUYO","SIGM_ELNO_COQU", "SIGM_ELNO_SIEF","SIPO_ELNO_SIEF",),), @@ -3829,7 +4059,7 @@ b_charge =BLOC( condition = "OPTION in ('EPME_ELNO_DEPL','EPSI_ELGA_DEPL','EPME_ ), b_epsi =BLOC( condition = "TYPE_OPTION=='EPSI'", - OPTION =SIMP(statut='o',typ='TXM',max='**', + OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', into=( "EPSI_ELNO_DEPL","EPSI_ELGA_DEPL","EPSG_ELNO_DEPL","EPSG_ELGA_DEPL", "EPME_ELNO_DEPL","EPME_ELGA_DEPL","EPMG_ELNO_DEPL","EPMG_ELGA_DEPL", "EPSP_ELNO","EPSP_ELGA","EPGR_ELNO","EPGR_ELGA", @@ -3842,7 +4072,7 @@ b_charge =BLOC( condition = "OPTION in ('EPME_ELNO_DEPL','EPSI_ELGA_DEPL','EPME_ NIVE_COUCHE =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY"), fr="position dans l'épaisseur de la coque, ou de la couche" ), ) , - EXCIT =FACT(statut='f',min=1,max='**',fr="charge contenant les temperatures", + EXCIT =FACT(statut='f',max='**',fr="charge contenant les temperatures", CHARGE =SIMP(statut='o',typ=(char_meca,char_ther,char_acou) ),), ), b_epstuyo = BLOC( condition = "OPTION == 'EPSI_ELNO_TUYO' or \ @@ -3852,13 +4082,13 @@ b_charge =BLOC( condition = "OPTION in ('EPME_ELNO_DEPL','EPSI_ELGA_DEPL','EPME_ ANGLE =SIMP(statut='f',typ='I',defaut= 0,fr="angle en degres à partir de la génératrice" ), NIVE_COUCHE =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY"), fr="position dans l'épaisseur de la couche" ), - EXCIT =FACT(statut='f',min=1,max='**',fr="charge contenant les temperatures", + EXCIT =FACT(statut='f',max='**',fr="charge contenant les temperatures", CHARGE =SIMP(statut='o',typ=(char_meca,char_ther,char_acou) ),), ), b_vari =BLOC( condition = "TYPE_OPTION=='VARI'", fr="Calcul et extraction des variables internes", - OPTION =SIMP(statut='o',typ='TXM',max='**', + OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', into=("VARI_ELNO_ELGA","VARI_ELNO_TUYO","VARI_ELNO_COQU",), ), b_varcoqu = BLOC( condition = "OPTION in ('VARI_ELNO_COQU',) or \ @@ -3880,15 +4110,15 @@ b_charge =BLOC( condition = "OPTION in ('EPME_ELNO_DEPL','EPSI_ELGA_DEPL','EPME_ ), b_ener =BLOC( condition = "TYPE_OPTION=='ENER'", - OPTION =SIMP(statut='o',typ='TXM',max='**', + OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', into=("ETOT_ELGA","ETOT_ELNO_ELGA","ETOT_ELEM","ENEL_ELGA","ENEL_ELNO_ELGA",), ), - EXCIT =FACT(statut='f',min=1,max='**',fr="charge contenant les temperatures", + EXCIT =FACT(statut='f',max='**',fr="charge contenant les temperatures", CHARGE =SIMP(statut='o',typ=(char_meca,char_ther,char_acou) ),), ), b_crit =BLOC( condition = "TYPE_OPTION=='CRIT'", - OPTION =SIMP(statut='o',typ='TXM',max='**', + OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', into=("EQUI_ELNO_SIGM","EQUI_ELGA_SIGM", "EQUI_ELNO_EPSI","EQUI_ELGA_EPSI","EQUI_ELNO_EPME","EQUI_ELGA_EPME", "ENDO_ELNO_SIGA","ENDO_ELNO_SINO","CRIT_ELNO_RUPT", @@ -3900,17 +4130,17 @@ b_charge =BLOC( condition = "OPTION in ('EPME_ELNO_DEPL','EPSI_ELGA_DEPL','EPME_ ), b_autres =BLOC( condition = "TYPE_OPTION=='AUTRES'", - OPTION =SIMP(statut='o',typ='TXM',max='**', + OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', into=("VALE_NCOU_MAXI",) ), b_maxi =BLOC( condition = "OPTION=='VALE_NCOU_MAXI' or \ (type(OPTION)==type(()) and 'VALE_NCOU_MAXI' in OPTION)", - NOM_CHAM =SIMP(statut='o',typ='TXM',max=1,fr="Nom du champ pour VALE_NCOU_MAXI" ), - NOM_CMP =SIMP(statut='o',typ='TXM',max=1,fr="Nom de la composante pour VALE_NCOU_MAXI"),), + NOM_CHAM =SIMP(statut='o',typ='TXM',fr="Nom du champ pour VALE_NCOU_MAXI" ), + NOM_CMP =SIMP(statut='o',typ='TXM',fr="Nom de la composante pour VALE_NCOU_MAXI"),), ), b_indi_erre =BLOC( condition = "TYPE_OPTION=='INDI_ERRE'", - OPTION =SIMP(statut='o',typ='TXM',max='**',defaut="ERRE_ELGA_NORE", + OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',defaut="ERRE_ELGA_NORE", into=("ERRE_ELGA_NORE","ERRE_ELNO_ELGA","ERRE_ELEM_NOZ1","ERRE_ELEM_NOZ2", "DCHA_ELNO_SIGM","DCHA_ELGA_SIGM","RADI_ELNO_SIGM","RADI_ELGA_SIGM", ) ), @@ -3928,11 +4158,11 @@ b_charge =BLOC( condition = "OPTION in ('EPME_ELNO_DEPL','EPSI_ELGA_DEPL','EPME_ # thermique : evol_ther b_ther =BLOC( condition = "AsType(RESULTAT) == evol_ther",fr="options thermiques", - OPTION =SIMP(statut='f',typ='TXM',max='**', + OPTION =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**', into=("DEUL_ELGA_TEMP","DETE_ELNO_DLTE","FLUX_ELGA_TEMP","FLUX_ELNO_TEMP", "HYDR_ELNO_ELGA","DURT_ELGA_META","DURT_ELNO_META", "SOUR_ELGA_ELEC","ERTH_ELEM_TEMP","ERTH_ELNO_ELEM",),), - EXCIT =FACT(statut='f',min=1,max='**', + EXCIT =FACT(statut='f',max='**', regles=(EXCLUS('FONC_MULT','FONC_MULT_C','COEF_MULT','COEF_MULT_C'),), CHARGE =SIMP(statut='o',typ=char_ther ), FONC_MULT =SIMP(statut='f',typ=(fonction,formule)), @@ -3950,11 +4180,11 @@ b_charge =BLOC( condition = "OPTION in ('EPME_ELNO_DEPL','EPSI_ELGA_DEPL','EPME_ # acoustique b_acou =BLOC( condition = "AsType(RESULTAT) in (acou_harmo,mode_acou,)",fr="options acoustiques", - OPTION =SIMP(statut='f',typ='TXM',max='**', + OPTION =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**', into=("PRES_ELNO_DBEL","PRES_ELNO_REEL","PRES_ELNO_IMAG", "INTE_ELNO_ACTI","INTE_ELNO_REAC", ),), - EXCIT =FACT(statut='f',min=1,max='**', + EXCIT =FACT(statut='f',max='**', regles=(EXCLUS('FONC_MULT','FONC_MULT_C','COEF_MULT','COEF_MULT_C'),), CHARGE =SIMP(statut='o',typ=char_acou ), FONC_MULT =SIMP(statut='f',typ=(fonction,formule)), @@ -3966,22 +4196,35 @@ b_charge =BLOC( condition = "OPTION in ('EPME_ELNO_DEPL','EPSI_ELGA_DEPL','EPME_ TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",),),), ), - SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),max='**', + SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', fr="Liste des paramètres de sensibilité.", ang="List of sensitivity parameters"), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# SEE THE FILE "LICENSE.TERMS" FOR INFORMATION ON USAGE AND -# REDISTRIBUTION OF THIS FILE. +# 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 calc_fatigue_prod(TYPE_CALCUL,**args): +def calc_fatigue_prod(TYPE_CALCUL,OPTION,**args): if TYPE_CALCUL == "CUMUL_DOMMAGE" : return cham_elem_dommag - if TYPE_CALCUL == "FATIGUE_MULTI" : return cham_elem_facy_r + if TYPE_CALCUL == "FATIGUE_MULTI" and OPTION == "DOMA_ELGA": return cham_elem_facy_r + if TYPE_CALCUL == "FATIGUE_MULTI" and OPTION == "DOMA_NOEUD": return cham_no_facy_r raise AsException("type de calcul non prevu") CALC_FATIGUE=OPER(nom="CALC_FATIGUE",op= 151,sd_prod=calc_fatigue_prod,reentrant='n', @@ -3999,7 +4242,7 @@ CALC_FATIGUE=OPER(nom="CALC_FATIGUE",op= 151,sd_prod=calc_fatigue_prod,reentrant into=("DOMA_ELNO_SIGM","DOMA_ELGA_SIGM", "DOMA_ELNO_EPSI","DOMA_ELGA_EPSI", "DOMA_ELNO_EPME","DOMA_ELGA_EPME") ), - HISTOIRE =FACT(statut='o',min=1,max=1, + HISTOIRE =FACT(statut='o', RESULTAT =SIMP(statut='o',typ=(evol_elas,dyna_trans, evol_noli) ), EQUI_GD =SIMP(statut='f',typ='TXM',defaut="VMIS_SG", @@ -4014,16 +4257,27 @@ CALC_FATIGUE=OPER(nom="CALC_FATIGUE",op= 151,sd_prod=calc_fatigue_prod,reentrant ), b_fatigue_multi =BLOC(condition = "TYPE_CALCUL == 'FATIGUE_MULTI'", - fr="Plan critique dans le cas de la fatigue multiaxiale a grand nombre de cycles.", + fr="Plan critique dans le cas de la fatigue multiaxiale à grand nombre de cycles.", + OPTION =SIMP(statut='o',typ='TXM',into=("DOMA_ELGA","DOMA_NOEUD") ), RESULTAT =SIMP(statut='o',typ=(evol_elas, evol_noli) ), CHAM_MATER =SIMP(statut='o',typ=(cham_mater) ), CRITERE =SIMP(statut='o',typ='TXM',into=("MATAKE","DANG_VAN") ), METHODE =SIMP(statut='o',typ='TXM',into=("CERCLE_EXACT",) ), + 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='**' ), + b_fati_mult_ma =BLOC(condition = "(GROUP_MA != None or MAILLE != None or GROUP_NO != None or NOEUD != None) and \ + OPTION == 'DOMA_NOEUD'", + MODELE =SIMP(statut='o',typ=modele ), + MAILLAGE =SIMP(statut='o',typ=maillage ), + ), ), INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -4044,13 +4298,13 @@ CALC_FATIGUE=OPER(nom="CALC_FATIGUE",op= 151,sd_prod=calc_fatigue_prod,reentrant CALC_FLUI_STRU=OPER(nom="CALC_FLUI_STRU",op= 144,sd_prod=melasflu, docu="U4.66.02-e",reentrant='n', UIinfo={"groupes":("Matrices/vecteurs",)}, - VITE_FLUI =FACT(statut='o',min=1,max=1, + VITE_FLUI =FACT(statut='o', fr="Définir la plage de vitesse fluide étudiée", VITE_MIN =SIMP(statut='o',typ='R' ), VITE_MAX =SIMP(statut='o',typ='R' ), NB_POIN =SIMP(statut='o',typ='I' ), ), - BASE_MODALE =FACT(statut='o',min=1,max=1, + BASE_MODALE =FACT(statut='o', regles=(UN_PARMI('AMOR_REDUIT','AMOR_UNIF'),), MODE_MECA =SIMP(statut='o',typ=mode_meca ), @@ -4059,13 +4313,14 @@ CALC_FLUI_STRU=OPER(nom="CALC_FLUI_STRU",op= 144,sd_prod=melasflu, AMOR_UNIF =SIMP(statut='f',typ='R' ), ), TYPE_FLUI_STRU =SIMP(statut='o',typ=type_flui_stru ), - IMPRESSION =FACT(statut='f',min=1,max=1, + IMPRESSION =FACT(statut='f', fr="Choix des informations à imprimer dans le fichier RESULTAT", PARA_COUPLAGE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), DEFORMEE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -4110,60 +4365,73 @@ CALC_FONC_INTERP=OPER(nom="CALC_FONC_INTERP",op= 134,sd_prod=fonction, TITRE =SIMP(statut='f',typ='TXM',max='**'), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# SEE THE FILE "LICENSE.TERMS" FOR INFORMATION ON USAGE AND -# REDISTRIBUTION OF THIS FILE. -# ====================================================================== -# RESPONSABLE MCOURTOI M.COURTOIS -def calc_fonction_prod(DERIVE,EXTRACTION,INTEGRE,ECART_TYPE,INVERSE,RMS,NOCI_SEISME,MAX,COMB,COMB_C,ENVELOPPE, - SPEC_OSCI,ASSE,FFT,COMPOSE,CORR_ACCE,PUISSANCE,LISS_ENVELOP,NORME, **args): - if (RMS != None) : return table - if (MAX != None) : return table - if (NOCI_SEISME != None): return table - if (ECART_TYPE != None) : return table - if (INTEGRE != None) : return fonction - if (DERIVE != None) : return fonction - if (INVERSE != None) : return fonction - if (COMB != None) : return fonction - if (ENVELOPPE != None) : return fonction - if (EXTRACTION != None) : return fonction - if (SPEC_OSCI != None) : return fonction - if (COMB_C != None) : return fonction_c - if (COMPOSE != None) : return fonction - if (ASSE != None) : return fonction - if (FFT != None) : - vale=FFT.get_child('FONCTION').get_valeur() - if (AsType(vale) == fonction ) : return fonction_c - if (AsType(vale) == fonction_c) : return fonction - if (CORR_ACCE != None) : return fonction - if (LISS_ENVELOP != None) : return fonction - if (PUISSANCE != None) : return fonction - if (NORME != None) : return table - raise AsException("type de concept resultat non prevu") - -CALC_FONCTION=OPER(nom="CALC_FONCTION",op= 91,sd_prod=calc_fonction_prod - ,fr="Opérations mathématiques sur des concepts de type fonction", - docu="U4.32.04-f",reentrant='n', +# 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 calc_fonction_prod(DERIVE,EXTRACTION,INTEGRE,ECART_TYPE,INVERSE,RMS,NOCI_SEISME,MAX,COMB,COMB_C,ENVELOPPE, + SPEC_OSCI,ASSE,FFT,COMPOSE,CORR_ACCE,PUISSANCE,LISS_ENVELOP,NORME,ABS, **args): + if (RMS != None): return table + if (MAX != None): return table + if (NOCI_SEISME != None): return table + if (ECART_TYPE != None): return table + if (INTEGRE != None): return fonction + if (DERIVE != None): return fonction + if (INVERSE != None): return fonction + if (COMB != None): return fonction + if (ENVELOPPE != None): return fonction + if (EXTRACTION != None): return fonction + if (SPEC_OSCI != None): return fonction + if (COMB_C != None): return fonction_c + if (COMPOSE != None): return fonction + if (ASSE != None): return fonction + if (FFT != None): + vale=FFT.get_child('FONCTION').get_valeur() + if (AsType(vale) == fonction ) : return fonction_c + if (AsType(vale) == fonction_c) : return fonction + if (CORR_ACCE != None): return fonction + if (LISS_ENVELOP!= None): return fonction + if (PUISSANCE != None): return fonction + if (ABS != None): return fonction + if (NORME != None): return table + raise AsException("type de concept resultat non prevu") + +CALC_FONCTION=OPER(nom="CALC_FONCTION",op= 91,sd_prod=calc_fonction_prod + ,fr="Opérations mathématiques sur des concepts de type fonction", + docu="U4.32.04-f",reentrant='n', UIinfo={"groupes":("Fonction",)}, regles=(UN_PARMI('DERIVE','INTEGRE','SPEC_OSCI','MAX','COMB','COMB_C','ENVELOPPE','RMS', 'NOCI_SEISME','COMPOSE','EXTRACTION','ASSE','FFT','CORR_ACCE', 'PUISSANCE', - 'NORME','LISS_ENVELOP','ECART_TYPE','INVERSE'),), - FFT =FACT(statut='f',min=1,max=1,fr="Calcul de la transformee de Fourier ou de son inverse", + 'NORME','LISS_ENVELOP','ECART_TYPE','INVERSE','ABS'),), + FFT =FACT(statut='f',fr="Calcul de la transformee de Fourier ou de son inverse", FONCTION =SIMP(statut='o',typ=(fonction,fonction_c,formule) ) ), - DERIVE =FACT(statut='f',min=1,max=1,fr="Calcul de la dérivée d une fonction", + DERIVE =FACT(statut='f',fr="Calcul de la dérivée d une fonction", METHODE =SIMP(statut='f',typ='TXM',defaut="DIFF_CENTREE",into=("DIFF_CENTREE",) ), FONCTION =SIMP(statut='o',typ=(fonction,formule) ), ), - INTEGRE =FACT(statut='f',min=1,max=1,fr="Calcul de l intégrale d une fonction", + INTEGRE =FACT(statut='f',fr="Calcul de l intégrale d une fonction", METHODE =SIMP(statut='f',typ='TXM',defaut="TRAPEZE",into=("SIMPSON","TRAPEZE") ), FONCTION =SIMP(statut='o',typ=(fonction,formule)), COEF =SIMP(statut='f',typ='R',defaut= 0.E+0,fr="Valeur de la constante d intégration" ), ), - RMS =FACT(statut='f',min=1,max=1,fr="Calcul de la valeur RMS d une fonction", + RMS =FACT(statut='f',fr="Calcul de la valeur RMS d une fonction", METHODE =SIMP(statut='f',typ='TXM',defaut="TRAPEZE",into=("SIMPSON","TRAPEZE") ), FONCTION =SIMP(statut='o',typ=(fonction,formule) ), INST_INIT =SIMP(statut='f',typ='R',fr="Instant initial définissant le début du signal" ), @@ -4171,10 +4439,10 @@ CALC_FONCTION=OPER(nom="CALC_FONCTION",op= 91,sd_prod=calc_fonction_prod CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), ), - NOCI_SEISME =FACT(statut='f',min=1,max=1, + NOCI_SEISME =FACT(statut='f', FONCTION =SIMP(statut='f',typ=(fonction,formule) ), SPEC_OSCI =SIMP(statut='f',typ=(fonction,formule) ), - OPTION =SIMP(statut='f',typ='TXM',defaut="TOUT",max='**', + 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",) ), INST_INIT =SIMP(statut='f',typ='R'), @@ -4195,7 +4463,7 @@ CALC_FONCTION=OPER(nom="CALC_FONCTION",op= 91,sd_prod=calc_fonction_prod CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), ), ), - LISS_ENVELOP = FACT(statut='f',min=1,max=1,fr="Lissage d une enveloppe", + LISS_ENVELOP = FACT(statut='f',fr="Lissage d une enveloppe", FONCTION =SIMP(statut='o',typ=(fonction,formule) ), AMOR =SIMP(statut='f',typ='R',max='**'), FREQ_MIN =SIMP(statut='f',typ='R'), @@ -4220,7 +4488,7 @@ CALC_FONCTION=OPER(nom="CALC_FONCTION",op= 91,sd_prod=calc_fonction_prod AMOR_ECH =SIMP(statut='f',typ='R',max='**'), ), ), - SPEC_OSCI =FACT(statut='f',min=1,max=1,fr="Calcul du spectre d oscillateur", + SPEC_OSCI =FACT(statut='f',fr="Calcul du spectre d oscillateur", METHODE =SIMP(statut='f',typ='TXM',defaut="NIGAM",into=("NIGAM",) ), FONCTION =SIMP(statut='o',typ=(fonction,formule) ), AMOR_REDUIT =SIMP(statut='f',typ='R',max='**'), @@ -4230,14 +4498,17 @@ CALC_FONCTION=OPER(nom="CALC_FONCTION",op= 91,sd_prod=calc_fonction_prod NATURE =SIMP(statut='f',typ='TXM',defaut="ACCE",into=("DEPL","VITE","ACCE") ), NATURE_FONC =SIMP(statut='f',typ='TXM',defaut="ACCE",into=("DEPL","VITE","ACCE") ), ), - MAX =FACT(statut='f',min=1,max=1,fr="Calcul des extrémas locaux d une fonction", + MAX =FACT(statut='f',fr="Calcul des extrémas locaux d une fonction", FONCTION =SIMP(statut='o',typ=(fonction,formule) ), ), - COMB =FACT(statut='f',min=1,max='**',fr="Calcul d une combinaison linéaire réelle de fonctions", + ABS =FACT(statut='f',fr="Calcul de la valeur absolue d une fonction", + FONCTION =SIMP(statut='o',typ=(fonction,formule),), + ), + COMB =FACT(statut='f',max='**',fr="Calcul d une combinaison linéaire réelle de fonctions", FONCTION =SIMP(statut='o',typ=(fonction,formule) ), COEF =SIMP(statut='o',typ='R',fr="Coefficient réel de la combinaison linéaire associée à la fonction" ), ), - COMB_C =FACT(statut='f',min=1,max='**',fr="Calcul d une combinaison linéaire complexe de fonctions", + COMB_C =FACT(statut='f',max='**',fr="Calcul d une combinaison linéaire complexe de fonctions", regles=(UN_PARMI('COEF_R','COEF_C'),), FONCTION =SIMP(statut='o',typ=(fonction, fonction_c,formule) ), COEF_R =SIMP(statut='f',typ='R',fr="Coefficient réel de la combinaison linéaire associée à la fonction" ), @@ -4246,37 +4517,37 @@ CALC_FONCTION=OPER(nom="CALC_FONCTION",op= 91,sd_prod=calc_fonction_prod b_comb =BLOC ( condition = " (COMB != None) or (COMB_C != None)", LIST_PARA =SIMP(statut='f',typ=listr8 ), ), - COMPOSE =FACT(statut='f',min=1,max=1,fr="Calcul de la composition de deux fonctions FONC_RESU(FONC_PARA)", + COMPOSE =FACT(statut='f',fr="Calcul de la composition de deux fonctions FONC_RESU(FONC_PARA)", FONC_RESU =SIMP(statut='o',typ=(fonction,formule)), FONC_PARA =SIMP(statut='o',typ=(fonction,formule)), ), - EXTRACTION =FACT(statut='f',min=1,max=1,fr="Opération d extraction sur une fonction complexe", + EXTRACTION =FACT(statut='f',fr="Opération d extraction sur une fonction complexe", FONCTION =SIMP(statut='o',typ=fonction_c), PARTIE =SIMP(statut='o',typ='TXM',into=("REEL","IMAG","MODULE","PHASE"),fr="Partie à extraire"), ), - ENVELOPPE =FACT(statut='f',min=1,max=1,fr="Calcul de l enveloppe d une famille de fonctions", + ENVELOPPE =FACT(statut='f',fr="Calcul de l enveloppe d une famille de fonctions", FONCTION =SIMP(statut='o',typ=(fonction,formule),max='**' ), CRITERE =SIMP(statut='f',typ='TXM',defaut="SUP",into=("SUP","INF"),fr="Type de l enveloppe" ), ), - ASSE =FACT(statut='f',min=1,max=1,fr="Création à partir de la concatenation de fonctions", + ASSE =FACT(statut='f',fr="Création à partir de la concatenation de fonctions", FONCTION =SIMP(statut='o',typ=(fonction,formule),max='**' ), SURCHARGE =SIMP(statut='f',typ='TXM',defaut="DROITE",into=("DROITE","GAUCHE")), ), - CORR_ACCE =FACT(statut='f',min=1,max=1,fr="Correction d un accelerogramme reel", + CORR_ACCE =FACT(statut='f',fr="Correction d un accelerogramme reel", CORR_DEPL =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), FONCTION =SIMP(statut='o',typ=(fonction,formule) ), ), - PUISSANCE =FACT(statut='f',min=1,max=1,fr="Cacul du carré d'une fonction", + PUISSANCE =FACT(statut='f',fr="Cacul du carré d'une fonction", FONCTION =SIMP(statut='o', typ=(fonction,formule)), EXPOSANT =SIMP(statut='f', typ='I', defaut=1 ), ), - NORME =FACT(statut='f',min=1,max=1,fr="Cacul de la norme L2 d'une fonction", + NORME =FACT(statut='f',fr="Cacul de la norme L2 d'une fonction", FONCTION =SIMP(statut='o', typ=(fonction,formule)), ), - INVERSE =FACT(statut='f',min=1,max=1,fr="Cacul de l inverse d une fonction", + INVERSE =FACT(statut='f',fr="Cacul de l inverse d une fonction", FONCTION =SIMP(statut='o', typ=fonction), ), - ECART_TYPE =FACT(statut='f',min=1,max=1,fr="Cacul de l ecart-type d une fonction", + ECART_TYPE =FACT(statut='f',fr="Cacul de l ecart-type d une fonction", METHODE =SIMP(statut='f',typ='TXM',defaut="TRAPEZE",into=("SIMPSON","TRAPEZE") ), FONCTION =SIMP(statut='o',typ=fonction), INST_INIT =SIMP(statut='f',typ='R',fr="Instant initial définissant le début du signal" ), @@ -4300,7 +4571,8 @@ CALC_FONCTION=OPER(nom="CALC_FONCTION",op= 91,sd_prod=calc_fonction_prod INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -4337,19 +4609,19 @@ CALC_FORC_AJOU=OPER(nom="CALC_FORC_AJOU",op=199,sd_prod=vect_asse_gene, NUME_DDL_GENE =SIMP(statut='f',typ=nume_ddl_gene ), DIST_REFE =SIMP(statut='f',typ='R',defaut= 1.E-2 ), AVEC_MODE_STAT =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - NUME_MODE_MECA =SIMP(statut='f',typ='I',max='**'), + NUME_MODE_MECA =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), POTENTIEL =SIMP(statut='f',typ=evol_ther ), NOEUD_DOUBLE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), DIRECTION =SIMP(statut='o',typ='R',max=3), MONO_APPUI =SIMP(statut='f',typ='TXM',into=("OUI",),), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), MODE_STAT =SIMP(statut='f',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc,),), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ), - SOLVEUR =FACT(statut='d',min=1,max=1, + 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") ), @@ -4372,7 +4644,8 @@ CALC_FORC_AJOU=OPER(nom="CALC_FORC_AJOU",op=199,sd_prod=vect_asse_gene, ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -4405,9 +4678,9 @@ CALC_G_LOCAL_T=OPER(nom="CALC_G_LOCAL_T",op=77,sd_prod=tabl_calc_g_loca, b_extrac =BLOC(condition="RESULTAT != None",fr="extraction d un champ", regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',max='**'), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE =SIMP(statut='f',typ=listis), - INST =SIMP(statut='f',typ='R',max='**'), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8), b_acce_reel =BLOC(condition="(INST != None)or(LIST_INST != None)", @@ -4416,10 +4689,10 @@ CALC_G_LOCAL_T=OPER(nom="CALC_G_LOCAL_T",op=77,sd_prod=tabl_calc_g_loca, ), ), - CHARGE =SIMP(statut='f',typ=char_meca,max='**'), + CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), SYME_CHAR =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SYME","ANTI","SANS") ), - COMP_ELAS =FACT(statut='f',min=1,max=1, + 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,) ), @@ -4428,11 +4701,11 @@ CALC_G_LOCAL_T=OPER(nom="CALC_G_LOCAL_T",op=77,sd_prod=tabl_calc_g_loca, 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,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), ), - COMP_INCR =FACT(statut='f',min=1,max=1, + 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,) ), @@ -4442,11 +4715,11 @@ CALC_G_LOCAL_T=OPER(nom="CALC_G_LOCAL_T",op=77,sd_prod=tabl_calc_g_loca, 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,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), ), - ETAT_INIT =FACT(statut='f',min=1,max=1, + ETAT_INIT =FACT(statut='f', SIGM =SIMP(statut='f',typ=cham_elem_sief_r), DEPL =SIMP(statut='f',typ=cham_no_depl_r), ), @@ -4469,7 +4742,7 @@ CALC_G_LOCAL_T=OPER(nom="CALC_G_LOCAL_T",op=77,sd_prod=tabl_calc_g_loca, LISSAGE_G =SIMP(statut='f',typ='TXM',defaut="LEGENDRE",into=("LEGENDRE","LAGRANGE") ), ), b_calc_g_max =BLOC(condition="OPTION=='CALC_G_MAX'", - BORNES =FACT(statut='o',min=1,max='**', + 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'), @@ -4488,7 +4761,8 @@ CALC_G_LOCAL_T=OPER(nom="CALC_G_LOCAL_T",op=77,sd_prod=tabl_calc_g_loca, TITRE =SIMP(statut='f',typ='TXM',max='**'), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -4508,7 +4782,7 @@ CALC_G_LOCAL_T=OPER(nom="CALC_G_LOCAL_T",op=77,sd_prod=tabl_calc_g_loca, # ====================================================================== CALC_G_THETA_T=OPER(nom="CALC_G_THETA_T",op=53,sd_prod=tabl_calc_g_th, fr="Calcul du taux de restitution d énergie par la méthode theta en thermo-élasticité en 2D ou en 3D", - docu="U4.82.03-f",reentrant='n', + docu="U4.82.03-f",reentrant='f', UIinfo={"groupes":("Post traitements",)}, regles=(UN_PARMI('RESULTAT','DEPL'), EXCLUS('COMP_ELAS','COMP_INCR'),), @@ -4521,9 +4795,9 @@ CALC_G_THETA_T=OPER(nom="CALC_G_THETA_T",op=53,sd_prod=tabl_calc_g_th, b_extrac =BLOC(condition="RESULTAT != None",fr="extraction d un champ", regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',max='**'), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE =SIMP(statut='f',typ=listis), - INST =SIMP(statut='f',typ='R',max='**'), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8), b_acce_reel =BLOC(condition="(INST != None)or(LIST_INST != None)", @@ -4532,10 +4806,10 @@ CALC_G_THETA_T=OPER(nom="CALC_G_THETA_T",op=53,sd_prod=tabl_calc_g_th, ), ), - CHARGE =SIMP(statut='f',typ=char_meca,max='**'), + CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), SYME_CHAR =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SYME","ANTI","SANS") ), - COMP_ELAS =FACT(statut='f',min=1,max=1, + 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,) ), @@ -4544,10 +4818,10 @@ CALC_G_THETA_T=OPER(nom="CALC_G_THETA_T",op=53,sd_prod=tabl_calc_g_th, 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,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), ), - COMP_INCR =FACT(statut='f',min=1,max=1, + 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,) ), @@ -4557,17 +4831,17 @@ CALC_G_THETA_T=OPER(nom="CALC_G_THETA_T",op=53,sd_prod=tabl_calc_g_th, 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,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), ), - ETAT_INIT =FACT(statut='f',min=1,max=1, + ETAT_INIT =FACT(statut='f', SIGM =SIMP(statut='f',typ=cham_elem_sief_r), DEPL =SIMP(statut='f',typ=cham_no_depl_r), ), OPTION =SIMP(statut='f',typ='TXM',defaut="CALC_G", - into=("CALC_G","CALC_G_LAGR","CALC_K_G","G_BILINEAIRE","CALC_G_MAX","CALC_DG",) ), + into=("CALC_G","CALC_G_LAGR","CALC_K_G","G_BILINEAIRE","CALC_G_MAX",) ), b_calc_g_max =BLOC(condition="OPTION=='CALC_G_MAX'", - BORNES =FACT(statut='o',min=1,max='**', + 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'), @@ -4579,16 +4853,16 @@ CALC_G_THETA_T=OPER(nom="CALC_G_THETA_T",op=53,sd_prod=tabl_calc_g_th, b_calc_g_lagr =BLOC(condition="OPTION=='CALC_G_LAGR'", PROPAGATION =SIMP(statut='o',typ='R'), ), - b_calc_dg =BLOC(condition="OPTION=='CALC_DG'", - SENSIBILITE =FACT(statut='f',min=1,max=1, - THETA =SIMP(statut='o',typ=theta_geom ), - ), - ), + + 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 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -4616,10 +4890,11 @@ CALC_INTE_SPEC=OPER(nom="CALC_INTE_SPEC",op= 120,sd_prod=tabl_intsp, DUREE_DECALAGE =SIMP(statut='f',typ='R' ), NB_POIN =SIMP(statut='o',typ='I' ), FONCTION =SIMP(statut='o',typ=(fonction,formule),max='**' ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), + TITRE =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -4654,13 +4929,13 @@ CALC_MATR_AJOU=OPER(nom="CALC_MATR_AJOU",op= 152,sd_prod=matr_asse_gene_r, NUME_DDL_GENE =SIMP(statut='f',typ=nume_ddl_gene ), DIST_REFE =SIMP(statut='f',typ='R',defaut= 1.E-2 ), AVEC_MODE_STAT =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - NUME_MODE_MECA =SIMP(statut='f',typ='I',max='**'), + NUME_MODE_MECA =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), OPTION =SIMP(statut='o',typ='TXM',into=("MASS_AJOU","AMOR_AJOU","RIGI_AJOU") ), POTENTIEL =SIMP(statut='f',typ=evol_ther ), NOEUD_DOUBLE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ), - SOLVEUR =FACT(statut='d',min=1,max=1, + 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") ), @@ -4682,7 +4957,8 @@ CALC_MATR_AJOU=OPER(nom="CALC_MATR_AJOU",op= 152,sd_prod=matr_asse_gene_r, ), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -4745,7 +5021,7 @@ CALC_MATR_ELEM=OPER(nom="CALC_MATR_ELEM",op= 9,sd_prod=calc_matr_elem_prod CARA_ELEM =SIMP(statut='f',typ=cara_elem ), MODE_FOURIER =SIMP(statut='f',typ='I',defaut= 0 ), ), - CHARGE =SIMP(statut='f',typ=char_meca,max='**' ), + CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**' ), b_charge =BLOC (condition = "CHARGE != None", INST =SIMP(statut='f',typ='R',defaut= 0.E+0 ), ), @@ -4754,7 +5030,7 @@ CALC_MATR_ELEM=OPER(nom="CALC_MATR_ELEM",op= 9,sd_prod=calc_matr_elem_prod b_rigi_meca_lagr =BLOC(condition = "OPTION=='RIGI_MECA_LAGR'", MODELE =SIMP(statut='o',typ=modele ), CHAM_MATER =SIMP(statut='o',typ=cham_mater ), - CHARGE =SIMP(statut='f',typ=char_meca,max='**' ), + CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**' ), b_charge =BLOC(condition = "CHARGE != None", INST =SIMP(statut='f',typ='R',defaut= 0.E+0 ), ), @@ -4769,7 +5045,7 @@ CALC_MATR_ELEM=OPER(nom="CALC_MATR_ELEM",op= 9,sd_prod=calc_matr_elem_prod CHAM_MATER =SIMP(statut='f',typ=cham_mater ), CARA_ELEM =SIMP(statut='f',typ=cara_elem ), ), - CHARGE =SIMP(statut='f',typ=char_meca,max='**' ), + CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**' ), b_charge =BLOC(condition = "CHARGE != None", INST =SIMP(statut='f',typ='R',defaut= 0.E+0 ), ), @@ -4792,7 +5068,7 @@ CALC_MATR_ELEM=OPER(nom="CALC_MATR_ELEM",op= 9,sd_prod=calc_matr_elem_prod b_rigi_rota =BLOC(condition = "OPTION=='RIGI_ROTA'", MODELE =SIMP(statut='o',typ=modele ), CHAM_MATER =SIMP(statut='o',typ=cham_mater ), - CHARGE =SIMP(statut='o',typ=char_meca,max='**' ), + CHARGE =SIMP(statut='o',typ=char_meca,validators=NoRepeat(),max='**' ), INST =SIMP(statut='f',typ='R',defaut= 0.E+0 ), ), @@ -4804,12 +5080,12 @@ CALC_MATR_ELEM=OPER(nom="CALC_MATR_ELEM",op= 9,sd_prod=calc_matr_elem_prod CHAM_MATER =SIMP(statut='f',typ=cham_mater ), RIGI_MECA =SIMP(statut='f',typ=matr_elem_depl_r ), MASS_MECA =SIMP(statut='f',typ=matr_elem_depl_r ), - CHARGE =SIMP(statut='f',typ=char_meca,max='**' ), + CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**' ), ), b_rigi_meca_hyst =BLOC( condition = "OPTION=='RIGI_MECA_HYST'", MODELE =SIMP(statut='o',typ=modele ), - CHARGE =SIMP(statut='f',typ=char_meca ,max='**' ), + CHARGE =SIMP(statut='f',typ=char_meca ,validators=NoRepeat(),max='**' ), CHAM_MATER =SIMP(statut='f',typ=cham_mater ), CARA_ELEM =SIMP(statut='f',typ=cara_elem ), RIGI_MECA =SIMP(statut='o',typ=matr_elem_depl_r ), @@ -4823,7 +5099,7 @@ CALC_MATR_ELEM=OPER(nom="CALC_MATR_ELEM",op= 9,sd_prod=calc_matr_elem_prod CARA_ELEM =SIMP(statut='f',typ=cara_elem ), MODE_FOURIER =SIMP(statut='f',typ='I',defaut= 0 ), ), - CHARGE =SIMP(statut='f',typ=char_ther,max='**' ), + CHARGE =SIMP(statut='f',typ=char_ther,validators=NoRepeat(),max='**' ), ), b_mass_ther =BLOC(condition = "OPTION=='MASS_THER'", @@ -4835,24 +5111,25 @@ CALC_MATR_ELEM=OPER(nom="CALC_MATR_ELEM",op= 9,sd_prod=calc_matr_elem_prod b_rigi_acou =BLOC(condition = "(OPTION=='RIGI_ACOU') or (OPTION=='MASS_ACOU') or (OPTION=='AMOR_ACOU')", MODELE =SIMP(statut='o',typ=modele ), CHAM_MATER =SIMP(statut='o',typ=cham_mater ), - CHARGE =SIMP(statut='f',typ=char_acou ,max='**' ), + CHARGE =SIMP(statut='f',typ=char_acou ,validators=NoRepeat(),max='**' ), ), b_rigi_flui =BLOC(condition = "(OPTION=='RIGI_FLUI_STRU') or (OPTION=='MASS_FLUI_STRU')", MODELE =SIMP(statut='o',typ=modele ), CARA_ELEM =SIMP(statut='o',typ=cara_elem ), CHAM_MATER =SIMP(statut='o',typ=cham_mater ), - CHARGE =SIMP(statut='o',typ=char_meca ,max='**' ), + CHARGE =SIMP(statut='o',typ=char_meca ,validators=NoRepeat(),max='**' ), INST =SIMP(statut='f',typ='R',defaut= 0.E+0 ), ), b_impe_meca =BLOC(condition = "(OPTION=='IMPE_MECA') or (OPTION=='ONDE_FLUI')", MODELE =SIMP(statut='o',typ=modele ), - CHARGE =SIMP(statut='o',typ=char_meca,max='**' ), + CHARGE =SIMP(statut='o',typ=char_meca,validators=NoRepeat(),max='**' ), CHAM_MATER =SIMP(statut='o',typ=cham_mater ), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -4876,7 +5153,7 @@ CALC_META=OPER(nom="CALC_META",op=194,sd_prod=evol_ther,docu="U4.85.01-b",reentr MODELE =SIMP(statut='o',typ=modele ), CHAM_MATER =SIMP(statut='o',typ=cham_mater ), RESULTAT =SIMP(statut='o',typ=evol_ther ), - ETAT_INIT =FACT(statut='o',min=1,max=1, + ETAT_INIT =FACT(statut='o', regles=(UN_PARMI('NUME_INIT', 'INST_INIT', 'META_INIT',),), EVOL_THER =SIMP(statut='f',typ=evol_ther ), NUME_INIT =SIMP(statut='f',typ='I' ), @@ -4887,7 +5164,7 @@ CALC_META=OPER(nom="CALC_META",op=194,sd_prod=evol_ther,docu="U4.85.01-b",reentr ), META_INIT =SIMP(statut='f',typ=carte_var2_r ), ), - COMP_INCR =FACT(statut='o',min=1,max='**', + COMP_INCR =FACT(statut='o',max='**', RELATION =SIMP(statut='o',typ='TXM',into=("ACIER","ZIRC",) ), ACIER =SIMP(statut='c',typ='I',defaut=7,into=(7,) ), ZIRC =SIMP(statut='c',typ='I',defaut=3,into=(3,) ), @@ -4899,7 +5176,8 @@ CALC_META=OPER(nom="CALC_META",op=194,sd_prod=evol_ther,docu="U4.85.01-b",reentr OPTION =SIMP(statut='f',typ='TXM' ,into=("META_ELNO_TEMP",) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -4928,26 +5206,26 @@ CALC_NO=OPER(nom="CALC_NO",op= 106,sd_prod=calc_no_prod,docu="U4.81.02-f",reentr mode_acou,mode_stat,mode_stat_depl,mode_stat_acce, mode_stat_forc,evol_ther,evol_noli,base_modale, mult_elas,fourier_elas,mode_flamb ) ), - SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),max='**', + SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', fr="Liste des paramètres de sensibilité.", ang="List of sensitivity parameters"), regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','NUME_MODE', 'NOEUD_CMP','LIST_INST','LIST_FREQ','LIST_ORDRE','NOM_CAS'),), TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',max='**'), - NUME_MODE =SIMP(statut='f',typ='I',max='**'), - NOEUD_CMP =SIMP(statut='f',typ='TXM',max='**'), + 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',max='**'), - FREQ =SIMP(statut='f',typ='R',max='**'), + 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), LIST_FREQ =SIMP(statut='f',typ=listr8), PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), LIST_ORDRE =SIMP(statut='f',typ=listis), - OPTION =SIMP(statut='o',typ='TXM',max='**', + OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', into=("FORC_NODA","REAC_NODA", "DCHA_NOEU_SIGM", "DEGE_NOEU_DEPL", @@ -4986,17 +5264,18 @@ CALC_NO=OPER(nom="CALC_NO",op= 106,sd_prod=calc_no_prod,docu="U4.81.02-f",reentr CHAM_MATER =SIMP(statut='f',typ=cham_mater), CARA_ELEM =SIMP(statut='f',typ=cara_elem), - EXCIT =FACT(statut='f',min=1,max='**', + EXCIT =FACT(statut='f',max='**', CHARGE =SIMP(statut='f',typ=(char_meca,char_ther,char_acou) ), FONC_MULT =SIMP(statut='f',typ=(fonction,formule)), TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE_CSTE", into=("FIXE_CSTE","FIXE_PILO","SUIV") ), ), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), ) ; -#& MODIF COMMANDE DATE 01/04/2003 AUTEUR DURAND C.DURAND + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG @@ -5034,9 +5313,9 @@ CALC_PRECONT=MACRO(nom="CALC_PRECONT",op=calc_precont_ops,sd_prod=evol_noli, MODELE =SIMP(statut='o',typ=modele), CHAM_MATER =SIMP(statut='o',typ=cham_mater), CARA_ELEM =SIMP(statut='o',typ=cara_elem), - CABLE_BP =SIMP(statut='o',typ=cabl_precont,max='**'), - CABLE_BP_INACTIF =SIMP(statut='f',typ=cabl_precont,max='**'), - INCREMENT =FACT(statut='o',min=1,max=1, + 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), INST_INIT =SIMP(statut='f',typ='R'), INST_FIN =SIMP(statut='f',typ='R'), @@ -5046,7 +5325,7 @@ CALC_PRECONT=MACRO(nom="CALC_PRECONT",op=calc_precont_ops,sd_prod=evol_noli, COEF_SUBD_PAS_1 =SIMP(statut='f',typ='R',defaut= 1.0E+0), ), - NEWTON =FACT(statut='d',min=1,max=1, + 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") ), @@ -5054,11 +5333,11 @@ CALC_PRECONT=MACRO(nom="CALC_PRECONT",op=calc_precont_ops,sd_prod=evol_noli, REAC_ITER =SIMP(statut='f',typ='I',defaut=0), EVOL_NOLI =SIMP(statut='f',typ=evol_noli), ), - RECH_LINEAIRE =FACT(statut='f',min=1,max=1, + 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',min=1,max=1, + 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), @@ -5072,7 +5351,7 @@ CALC_PRECONT=MACRO(nom="CALC_PRECONT",op=calc_precont_ops,sd_prod=evol_noli, RESO_INTE =SIMP(statut='f',typ='TXM',defaut="IMPLICITE", into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")), ), - ETAT_INIT =FACT(statut='f',min=1,max=1, + 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',), @@ -5091,7 +5370,7 @@ CALC_PRECONT=MACRO(nom="CALC_PRECONT",op=calc_precont_ops,sd_prod=evol_noli, NUME_DIDI =SIMP(statut='f',typ='I'), INST_ETAT_INIT =SIMP(statut='f',typ='R'), ), - SOLVEUR =FACT(statut='d',min=1,max=1, + 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") ), @@ -5113,7 +5392,7 @@ CALC_PRECONT=MACRO(nom="CALC_PRECONT",op=calc_precont_ops,sd_prod=evol_noli, ), SYME =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), ), - SOLV_NON_LOCAL =FACT(statut='f',min=1,max=1, + 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") ), @@ -5134,7 +5413,7 @@ CALC_PRECONT=MACRO(nom="CALC_PRECONT",op=calc_precont_ops,sd_prod=evol_noli, ), EPS =SIMP(statut='f',typ='R',defaut= 0.E+0 ), ), - LAGR_NON_LOCAL =FACT(statut='f',max=1, + 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'), @@ -5146,13 +5425,14 @@ CALC_PRECONT=MACRO(nom="CALC_PRECONT",op=calc_precont_ops,sd_prod=evol_noli, INFO =SIMP(statut='f',typ='I',into=(1,2) ), TITRE =SIMP(statut='f',typ='TXM',max='**' ), - EXCIT =FACT(statut='o',min=1,max='**', + EXCIT =FACT(statut='o',max='**', CHARGE =SIMP(statut='o',typ=char_meca), ), COMP_INCR =C_COMP_INCR(), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -5178,14 +5458,14 @@ CALC_THETA=OPER(nom="CALC_THETA",op=54,sd_prod=theta_geom,docu="U4.82.02-e",reen EXCLUS('DIRECTION','DIRE_THETA'),), OPTION =SIMP(statut='f',typ='TXM',defaut="COURONNE",into=("COURONNE","BANDE") ), MODELE =SIMP(statut='o',typ=(modele) ), - THETA_3D =FACT(statut='f',min=1,max='**', + 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,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + 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'), @@ -5197,26 +5477,27 @@ CALC_THETA=OPER(nom="CALC_THETA",op=54,sd_prod=theta_geom,docu="U4.82.02-e",reen FOND_FISS =SIMP(statut='f',typ=fond_fiss),), DIRE_THETA =SIMP(statut='f',typ=(cham_no_depl_r) ), DIRECTION =SIMP(statut='f',typ='R',max='**'), - THETA_2D =FACT(statut='f',min=1,max='**', + THETA_2D =FACT(statut='f',max='**', regles=(UN_PARMI('GROUP_NO','NOEUD'),), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + 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',min=1,max='**', + 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',min=1,max=1, + IMPRESSION =FACT(statut='f', FICHIER =SIMP(statut='f',typ='TXM',defaut="RESULTAT",into=("RESULTAT",) ), FORMAT =SIMP(statut='f',typ='TXM',defaut="EXCEL",into=("EXCEL","AGRAF") ), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -5250,7 +5531,7 @@ CALC_VECT_ELEM=OPER(nom="CALC_VECT_ELEM",op=8,sd_prod=calc_vect_elem_prod,docu=" "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,max='**'), + CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), MODELE =SIMP(statut='f',typ=modele), b_charge =BLOC(condition = "CHARGE != None", fr="modèle ne contenant pas de sous-structure", CHAM_MATER =SIMP(statut='f',typ=cham_mater), @@ -5263,19 +5544,19 @@ CALC_VECT_ELEM=OPER(nom="CALC_VECT_ELEM",op=8,sd_prod=calc_vect_elem_prod,docu=" regles=(UN_PARMI('TOUT','MAILLE'),), CAS_CHARGE =SIMP(statut='o',typ='TXM' ), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE =SIMP(statut='f',typ=ma,max='**',), + 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,max='**'), + 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,max='**'), + CHARGE =SIMP(statut='o',typ=char_acou,validators=NoRepeat(),max='**'), ), b_forc_noda =BLOC(condition = "OPTION=='FORC_NODA'", @@ -5288,11 +5569,12 @@ CALC_VECT_ELEM=OPER(nom="CALC_VECT_ELEM",op=8,sd_prod=calc_vect_elem_prod,docu=" 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,max='**'), + CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), INST =SIMP(statut='f',typ='R',defaut= 0.E+0 ), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -5337,7 +5619,7 @@ COMB_CHAM_ELEM=OPER(nom="COMB_CHAM_ELEM",op= 139,sd_prod=comb_cham_elem_prod,ree UIinfo={"groupes":("Résultats et champs",)}, regles=(UN_PARMI('COMB_R','COMB_C','COMB_FOURIER'), PRESENT_PRESENT('COMB_FOURIER','ANGL'),), - COMB_R =FACT(statut='f',min=1,max='**', + COMB_R =FACT(statut='f',max='**', PARTIE =SIMP(statut='f',typ='TXM',into=("REEL","IMAG") ), COEF_R =SIMP(statut='o',typ='R'), CHAM_ELEM =SIMP(statut='o', @@ -5345,13 +5627,13 @@ COMB_CHAM_ELEM=OPER(nom="COMB_CHAM_ELEM",op= 139,sd_prod=comb_cham_elem_prod,ree cham_elem_ener_r,cham_elem_crit_r,cham_elem_dbel_r, cham_elem_pres_r,cham_elem_sief_c ) ), ), - COMB_C =FACT(statut='f',min=1,max='**', + COMB_C =FACT(statut='f',max='**', regles=(UN_PARMI('COEF_R','COEF_C', ),), COEF_R =SIMP(statut='f',typ='R'), COEF_C =SIMP(statut='f',typ='C'), CHAM_ELEM =SIMP(statut='o',typ=(cham_elem_sief_r) ), ), - COMB_FOURIER =FACT(statut='f',min=1,max='**', + COMB_FOURIER =FACT(statut='f',max='**', COEF_R =SIMP(statut='f',typ='R',defaut= 1.), NUME_MODE =SIMP(statut='o',typ='I'), TYPE_MODE =SIMP(statut='o',typ='TXM',into=("SYME","ANTI") ), @@ -5360,7 +5642,8 @@ COMB_CHAM_ELEM=OPER(nom="COMB_CHAM_ELEM",op= 139,sd_prod=comb_cham_elem_prod,ree ANGL =SIMP(statut='f',typ='R' ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -5403,20 +5686,20 @@ COMB_CHAM_NO=OPER(nom="COMB_CHAM_NO",op= 30,sd_prod=comb_cham_no_prod docu="U4.72.02-g",reentrant='f', UIinfo={"groupes":("Résultats et champs",)}, regles=(UN_PARMI('COMB_R','COMB_C','COMB_FOURIER'),), - COMB_R =FACT(statut='f',min=1,max='**', + COMB_R =FACT(statut='f',max='**', PARTIE =SIMP(statut='f',typ='TXM',into=("REEL","IMAG",) ), CHAM_NO =SIMP(statut='o',typ=(cham_no_temp_r,cham_no_temp_c,cham_no_depl_r,cham_no_depl_c ,cham_no_pres_r,cham_no_pres_c ) ), COEF_R =SIMP(statut='o',typ='R' ), ), - COMB_C =FACT(statut='f',min=1,max='**', + COMB_C =FACT(statut='f',max='**', regles=(UN_PARMI('COEF_R','COEF_C' ),), CHAM_NO =SIMP(statut='o',typ=(cham_no_temp_r,cham_no_depl_r,cham_no_pres_r,cham_no_temp_c ,cham_no_depl_c,cham_no_pres_c ) ), COEF_R =SIMP(statut='f',typ='R' ), COEF_C =SIMP(statut='f',typ='C' ), ), - COMB_FOURIER =FACT(statut='f',min=1,max='**', + COMB_FOURIER =FACT(statut='f',max='**', CHAM_NO =SIMP(statut='o',typ=(cham_no_temp_r,cham_no_depl_r) ), COEF_R =SIMP(statut='f',typ='R',defaut= 1. ), NUME_MODE =SIMP(statut='o',typ='I' ), @@ -5426,7 +5709,8 @@ COMB_CHAM_NO=OPER(nom="COMB_CHAM_NO",op= 30,sd_prod=comb_cham_no_prod ANGL =SIMP(statut='o',typ='R' ), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -5450,10 +5734,11 @@ COMB_FOURIER=OPER(nom="COMB_FOURIER",op= 161,sd_prod=comb_fourier, UIinfo={"groupes":("Post traitements",)}, RESULTAT =SIMP(statut='o',typ=fourier_elas ), ANGL =SIMP(statut='o',typ='R',max='**'), - NOM_CHAM =SIMP(statut='o',typ='TXM',max=5, + NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=5, into=("DEPL","REAC_NODA","SIEF_ELGA_DEPL","EPSI_ELNO_DEPL","SIGM_ELNO_DEPL") ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -5493,20 +5778,20 @@ COMB_MATR_ASSE=OPER(nom="COMB_MATR_ASSE",op= 31,sd_prod=comb_matr_asse_prod, docu="U4.72.01-g",reentrant='f', UIinfo={"groupes":("Résultats et champs",)}, regles=(UN_PARMI('COMB_R','COMB_C','CALC_AMOR_GENE' ),), - COMB_R =FACT(statut='f',min=1,max='**', + COMB_R =FACT(statut='f',max='**', PARTIE =SIMP(statut='f',typ='TXM',into=("REEL","IMAG") ), 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,matr_asse_gene_r,matr_asse_gene_c ) ), COEF_R =SIMP(statut='o',typ='R' ), ), - COMB_C =FACT(statut='f',min=1,max='**', + COMB_C =FACT(statut='f',max='**', regles=(UN_PARMI('COEF_R','COEF_C' ),), 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,matr_asse_gene_r,matr_asse_gene_c ) ), COEF_R =SIMP(statut='f',typ='R' ), COEF_C =SIMP(statut='f',typ='C' ), ), - CALC_AMOR_GENE =FACT(statut='f',min=1,max=1, + CALC_AMOR_GENE =FACT(statut='f', regles=(UN_PARMI('AMOR_REDUIT','LIST_AMOR' ),), MASS_GENE = SIMP(statut='f', typ=matr_asse_gene_r), RIGI_GENE = SIMP(statut='f', typ=matr_asse_gene_r), @@ -5515,7 +5800,8 @@ COMB_MATR_ASSE=OPER(nom="COMB_MATR_ASSE",op= 31,sd_prod=comb_matr_asse_prod, ), SANS_CMP =SIMP(statut='f',typ='TXM',into=("LAGR",) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -5541,10 +5827,10 @@ COMB_SISM_MODAL=OPER(nom="COMB_SISM_MODAL",op= 109,sd_prod=mode_stat, UN_PARMI('AMOR_REDUIT','LIST_AMOR','AMOR_GENE' ),), MODE_MECA =SIMP(statut='o',typ=mode_meca ), TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',max='**'), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE =SIMP(statut='f',typ=listis ), - NUME_MODE =SIMP(statut='f',typ='I',max='**'), - FREQ =SIMP(statut='f',typ='R',max='**'), + NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_FREQ =SIMP(statut='f',typ=listr8 ), b_freq =BLOC(condition = "FREQ != None or LIST_FREQ != None", PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), @@ -5559,26 +5845,24 @@ COMB_SISM_MODAL=OPER(nom="COMB_SISM_MODAL",op= 109,sd_prod=mode_stat, MASS_INER =SIMP(statut='f',typ=tabl_mass_iner ), CORR_FREQ =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), - EXCIT =FACT(statut='o',min=1,max='**', + EXCIT =FACT(statut='o',max='**', regles=(UN_PARMI('MONO_APPUI','NOEUD','GROUP_NO'), UN_PARMI('AXE','TRI_AXE','TRI_SPEC' ),), MONO_APPUI =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - AXE =SIMP(statut='f',fr="Excitation suivant un seul axe", - typ='R',max=3), - TRI_AXE =SIMP(statut='f',fr="Excitation suivant les trois axes mais avec le meme spectre", - typ='R',max=3), - TRI_SPEC =SIMP(statut='f',fr="Excitation suivant les trois axes avec trois spectres", - typ='TXM',into=("OUI",) ), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + AXE =SIMP(statut='f',typ='R',max=3,fr="Excitation suivant un seul axe",), + TRI_AXE =SIMP(statut='f',typ='R',max=3,fr="Excitation suivant les trois axes mais avec le meme spectre",), + TRI_SPEC =SIMP(statut='f',typ='TXM',into=("OUI",), + fr="Excitation suivant les trois axes avec trois spectres"), b_axe =BLOC(condition = "AXE != None",fr="Excitation suivant un seul axe", - SPEC_OSCI =SIMP(statut='o',typ=(fonction,formule),max=1 ), - ECHELLE =SIMP(statut='f',typ='R',max=1), + SPEC_OSCI =SIMP(statut='o',typ=(fonction,formule),), + ECHELLE =SIMP(statut='f',typ='R',), ), b_tri_axe =BLOC(condition = "TRI_AXE != None",fr="Excitation suivant les trois axes mais avec le meme spectre", - SPEC_OSCI =SIMP(statut='o',typ=(fonction,formule),max=1 ), - ECHELLE =SIMP(statut='f',typ='R',max=1), + SPEC_OSCI =SIMP(statut='o',typ=(fonction,formule),), + ECHELLE =SIMP(statut='f',typ='R',), ), b_tri_spec =BLOC(condition = "TRI_SPEC != None",fr="Excitation suivant les trois axes avec trois spectres", SPEC_OSCI =SIMP(statut='o',typ=(fonction,formule),min=3,max=3 ), @@ -5586,234 +5870,93 @@ COMB_SISM_MODAL=OPER(nom="COMB_SISM_MODAL",op= 109,sd_prod=mode_stat, ), NATURE =SIMP(statut='f',typ='TXM',defaut="ACCE",into=("ACCE","VITE","DEPL") ), ), - COMB_MODE =FACT(statut='o',min=1,max=1, + COMB_MODE =FACT(statut='o', TYPE =SIMP(statut='o',typ='TXM',into=("SRSS","CQC","DSC","ABS","DPC") ), DUREE =SIMP(statut='f',typ='R' ), ), - COMB_DIRECTION =FACT(statut='f',min=1,max=1, + COMB_DIRECTION =FACT(statut='f', TYPE =SIMP(statut='f',typ='TXM',into=("QUAD","NEWMARK") ), ), - COMB_MULT_APPUI =FACT(statut='f',min=1,max='**', + COMB_MULT_APPUI =FACT(statut='f',max='**', regles=(UN_PARMI('TOUT','NOEUD','GROUP_NO' ),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), TYPE_COMBI =SIMP(statut='f',typ='TXM',into=("QUAD","LINE",) ), ), - COMB_DEPL_APPUI=FACT(statut='f',min=1,max='**', + COMB_DEPL_APPUI=FACT(statut='f',max='**', regles=(UN_PARMI('TOUT','LIST_CAS'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",)), LIST_CAS =SIMP(statut='f',typ='I',max='**'), TYPE_COMBI =SIMP(statut='f',typ='TXM',into=("QUAD","LINE","ABS") ), ), - DEPL_MULT_APPUI =FACT(statut='f',min=1,max='**', + DEPL_MULT_APPUI =FACT(statut='f',max='**', regles=(UN_PARMI('NOEUD','GROUP_NO'), AU_MOINS_UN('DX','DY','DZ' ),), NOM_CAS =SIMP(statut='o',typ='TXM',max='**'), NUME_CAS =SIMP(statut='o',typ='I',max='**'), MODE_STAT =SIMP(statut='f',typ=(mode_stat_depl,), ), NOEUD_REFE =SIMP(statut='f',typ=no), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), DX =SIMP(statut='f',typ='R' ), DY =SIMP(statut='f',typ='R' ), DZ =SIMP(statut='f',typ='R' ), ), - OPTION =SIMP(statut='o',typ='TXM',max=9, + OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=9, into=("DEPL","VITE","ACCE_ABSOLU","SIGM_ELNO_DEPL","SIEF_ELGA_DEPL", "EFGE_ELNO_DEPL","REAC_NODA","FORC_NODA","EFGE_ELNO_CART", "SIPO_ELNO_DEPL") ), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ), - IMPRESSION =FACT(statut='f',min=1,max='**', + IMPRESSION =FACT(statut='f',max='**', regles=(EXCLUS('TOUT','NIVEAU'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NIVEAU =SIMP(statut='f',typ='TXM',into=("SPEC_OSCI","MASS_EFFE","MAXI_GENE"),max=3 ), + NIVEAU =SIMP(statut='f',typ='TXM',into=("SPEC_OSCI","MASS_EFFE","MAXI_GENE"),validators=NoRepeat(),max=3 ), ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # RESPONSABLE VABHHTS J.PELLET # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# SEE THE FILE "LICENSE.TERMS" FOR INFORMATION ON USAGE AND -# REDISTRIBUTION OF THIS FILE. +# 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 crea_champ_prod(TYPE_CHAM,**args): - if TYPE_CHAM == "CART_DBEL_R" : return carte_dbel_r - if TYPE_CHAM == "CART_DEPL_C" : return carte_depl_c - if TYPE_CHAM == "CART_DEPL_F" : return carte_depl_f - if TYPE_CHAM == "CART_DEPL_R" : return carte_depl_r - if TYPE_CHAM == "CART_DURT_R" : return carte_durt_r - if TYPE_CHAM == "CART_ENER_R" : return carte_ener_r - if TYPE_CHAM == "CART_EPSI_R" : return carte_epsi_r - if TYPE_CHAM == "CART_ERREUR" : return carte_erreur - if TYPE_CHAM == "CART_FLUX_R" : return carte_flux_r - if TYPE_CHAM == "CART_GEOM_R" : return carte_geom_r - if TYPE_CHAM == "CART_G_DEPL_R" : return carte_g_depl_r - if TYPE_CHAM == "CART_HYDR_R" : return carte_hydr_r - if TYPE_CHAM == "CART_INST_R" : return carte_inst_r - if TYPE_CHAM == "CART_INTE_R" : return carte_inte_r - if TYPE_CHAM == "CART_META_R" : return carte_meta_r - if TYPE_CHAM == "CART_NEUT_F" : return carte_neut_f - if TYPE_CHAM == "CART_NEUT_R" : return carte_neut_r - if TYPE_CHAM == "CART_PRES_R" : return carte_pres_r - if TYPE_CHAM == "CART_SIEF_R" : return carte_sief_r - if TYPE_CHAM == "CART_SOUR_R" : return carte_sour_r - if TYPE_CHAM == "CART_TEMP_F" : return carte_temp_f - if TYPE_CHAM == "CART_TEMP_R" : return carte_temp_r - if TYPE_CHAM == "CART_VAR2_R" : return carte_var2_r - if TYPE_CHAM == "CART_VNOR_C" : return carte_vnor_c - if TYPE_CHAM == "NOEU_DBEL_R" : return cham_no_dbel_r - if TYPE_CHAM == "NOEU_DEPL_C" : return cham_no_depl_c - if TYPE_CHAM == "NOEU_DEPL_F" : return cham_no_depl_f - if TYPE_CHAM == "NOEU_DEPL_R" : return cham_no_depl_r - if TYPE_CHAM == "NOEU_DURT_R" : return cham_no_durt_r - if TYPE_CHAM == "NOEU_ENER_R" : return cham_no_ener_r - if TYPE_CHAM == "NOEU_EPSI_R" : return cham_no_epsi_r - if TYPE_CHAM == "NOEU_ERREUR" : return cham_no_erreur - if TYPE_CHAM == "NOEU_FLUX_R" : return cham_no_flux_r - if TYPE_CHAM == "NOEU_GEOM_R" : return cham_no_geom_r - if TYPE_CHAM == "NOEU_G_DEPL_R" : return cham_no_g_depl_r - if TYPE_CHAM == "NOEU_HYDR_R" : return cham_no_hydr_r - if TYPE_CHAM == "NOEU_INST_R" : return cham_no_inst_r - if TYPE_CHAM == "NOEU_INTE_R" : return cham_no_inte_r - if TYPE_CHAM == "NOEU_META_R" : return cham_no_meta_r - if TYPE_CHAM == "NOEU_NEUT_F" : return cham_no_neut_f - if TYPE_CHAM == "NOEU_NEUT_R" : return cham_no_neut_r - if TYPE_CHAM == "NOEU_PRES_R" : return cham_no_pres_r - if TYPE_CHAM == "NOEU_SIEF_R" : return cham_no_sief_r - if TYPE_CHAM == "NOEU_SOUR_R" : return cham_no_sour_r - if TYPE_CHAM == "NOEU_TEMP_F" : return cham_no_temp_f - if TYPE_CHAM == "NOEU_TEMP_R" : return cham_no_temp_r - if TYPE_CHAM == "NOEU_VAR2_R" : return cham_no_var2_r - if TYPE_CHAM == "NOEU_VNOR_C" : return cham_no_vnor_c - if TYPE_CHAM == "ELEM_DBEL_R" : return cham_elem_dbel_r - if TYPE_CHAM == "ELEM_DEPL_C" : return cham_elem_depl_c - if TYPE_CHAM == "ELEM_DEPL_F" : return cham_elem_depl_f - if TYPE_CHAM == "ELEM_DEPL_R" : return cham_elem_depl_r - if TYPE_CHAM == "ELEM_DURT_R" : return cham_elem_durt_r - if TYPE_CHAM == "ELEM_ENER_R" : return cham_elem_ener_r - if TYPE_CHAM == "ELEM_EPSI_R" : return cham_elem_epsi_r - if TYPE_CHAM == "ELEM_ERREUR" : return cham_elem_erreur - if TYPE_CHAM == "ELEM_FLUX_R" : return cham_elem_flux_r - if TYPE_CHAM == "ELEM_GEOM_R" : return cham_elem_geom_r - if TYPE_CHAM == "ELEM_G_DEPL_R" : return cham_elem_g_depl - if TYPE_CHAM == "ELEM_HYDR_R" : return cham_elem_hydr_r - if TYPE_CHAM == "ELEM_INST_R" : return cham_elem_inst_r - if TYPE_CHAM == "ELEM_INTE_R" : return cham_elem_inte_r - if TYPE_CHAM == "ELEM_META_R" : return cham_elem_meta_r - if TYPE_CHAM == "ELEM_NEUT_F" : return cham_elem_neut_f - if TYPE_CHAM == "ELEM_NEUT_R" : return cham_elem_neut_r - if TYPE_CHAM == "ELEM_PRES_R" : return cham_elem_pres_r - if TYPE_CHAM == "ELEM_SIEF_R" : return cham_elem_sief_r - if TYPE_CHAM == "ELEM_SOUR_R" : return cham_elem_sour_r - if TYPE_CHAM == "ELEM_TEMP_F" : return cham_elem_temp_f - if TYPE_CHAM == "ELEM_TEMP_R" : return cham_elem_temp_r - if TYPE_CHAM == "ELEM_VARI_R" : return cham_elem_vari_r - if TYPE_CHAM == "ELEM_VNOR_C" : return cham_elem_vnor_c - if TYPE_CHAM == "ELNO_DBEL_R" : return cham_elem_dbel_r - if TYPE_CHAM == "ELNO_DEPL_C" : return cham_elem_depl_c - if TYPE_CHAM == "ELNO_DEPL_F" : return cham_elem_depl_f - if TYPE_CHAM == "ELNO_DEPL_R" : return cham_elem_depl_r - if TYPE_CHAM == "ELNO_DURT_R" : return cham_elem_durt_r - if TYPE_CHAM == "ELNO_ENER_R" : return cham_elem_ener_r - if TYPE_CHAM == "ELNO_EPSI_R" : return cham_elem_epsi_r - if TYPE_CHAM == "ELNO_ERREUR" : return cham_elem_erreur - if TYPE_CHAM == "ELNO_FLUX_R" : return cham_elem_flux_r - if TYPE_CHAM == "ELNO_GEOM_R" : return cham_elem_geom_r - if TYPE_CHAM == "ELNO_G_DEPL_R" : return cham_elem_g_depl - if TYPE_CHAM == "ELNO_HYDR_R" : return cham_elem_hydr_r - if TYPE_CHAM == "ELNO_INST_R" : return cham_elem_inst_r - if TYPE_CHAM == "ELNO_INTE_R" : return cham_elem_inte_r - if TYPE_CHAM == "ELNO_META_R" : return cham_elem_meta_r - if TYPE_CHAM == "ELNO_NEUT_F" : return cham_elem_neut_f - if TYPE_CHAM == "ELNO_NEUT_R" : return cham_elem_neut_r - if TYPE_CHAM == "ELNO_PRES_R" : return cham_elem_pres_r - if TYPE_CHAM == "ELNO_SIEF_R" : return cham_elem_sief_r - if TYPE_CHAM == "ELNO_SOUR_R" : return cham_elem_sour_r - if TYPE_CHAM == "ELNO_TEMP_F" : return cham_elem_temp_f - if TYPE_CHAM == "ELNO_TEMP_R" : return cham_elem_temp_r - if TYPE_CHAM == "ELNO_VARI_R" : return cham_elem_vari_r - if TYPE_CHAM == "ELNO_VNOR_C" : return cham_elem_vnor_c - if TYPE_CHAM == "ELGA_DBEL_R" : return cham_elem_dbel_r - if TYPE_CHAM == "ELGA_DEPL_C" : return cham_elem_depl_c - if TYPE_CHAM == "ELGA_DEPL_F" : return cham_elem_depl_f - if TYPE_CHAM == "ELGA_DEPL_R" : return cham_elem_depl_r - if TYPE_CHAM == "ELGA_DURT_R" : return cham_elem_durt_r - if TYPE_CHAM == "ELGA_ENER_R" : return cham_elem_ener_r - if TYPE_CHAM == "ELGA_EPSI_R" : return cham_elem_epsi_r - if TYPE_CHAM == "ELGA_ERREUR" : return cham_elem_erreur - if TYPE_CHAM == "ELGA_FLUX_R" : return cham_elem_flux_r - if TYPE_CHAM == "ELGA_GEOM_R" : return cham_elem_geom_r - if TYPE_CHAM == "ELGA_G_DEPL_R" : return cham_elem_g_depl - if TYPE_CHAM == "ELGA_HYDR_R" : return cham_elem_hydr_r - if TYPE_CHAM == "ELGA_INST_R" : return cham_elem_inst_r - if TYPE_CHAM == "ELGA_INTE_R" : return cham_elem_inte_r - if TYPE_CHAM == "ELGA_META_R" : return cham_elem_meta_r - if TYPE_CHAM == "ELGA_NEUT_F" : return cham_elem_neut_f - if TYPE_CHAM == "ELGA_NEUT_R" : return cham_elem_neut_r - if TYPE_CHAM == "ELGA_PRES_R" : return cham_elem_pres_r - if TYPE_CHAM == "ELGA_SIEF_R" : return cham_elem_sief_r - if TYPE_CHAM == "ELGA_SOUR_R" : return cham_elem_sour_r - if TYPE_CHAM == "ELGA_TEMP_F" : return cham_elem_temp_f - if TYPE_CHAM == "ELGA_TEMP_R" : return cham_elem_temp_r - if TYPE_CHAM == "ELGA_VARI_R" : return cham_elem_vari_r - if TYPE_CHAM == "ELGA_VNOR_C" : return cham_elem_vnor_c - if TYPE_CHAM == "CART_IRRA_R" : return carte_irra_r - if TYPE_CHAM == "NOEU_IRRA_R" : return cham_no_irra_r - if TYPE_CHAM == "ELEM_IRRA_R" : return cham_elem_irra_r - if TYPE_CHAM == "ELNO_IRRA_R" : return cham_elem_irra_r - if TYPE_CHAM == "ELGA_IRRA_R" : return cham_elem_irra_r - if TYPE_CHAM == "ELEM_SPMA_R" : return cham_elem_spma_r - raise AsException("type de concept resultat non prevu") + import string + grandeur=string.lower(TYPE_CHAM[5:]) + + if TYPE_CHAM[0:5] == "CART_" : + uu="carte_"+grandeur + elif TYPE_CHAM[0:5] == "NOEU_" : + uu="cham_no_"+grandeur + elif TYPE_CHAM[0:2] == "EL" : + uu="cham_elem_"+grandeur + else : + raise AsException("type de concept resultat non prevu") + + vv=eval(uu) ; return vv + CREA_CHAMP=OPER(nom="CREA_CHAMP",op= 195,sd_prod=crea_champ_prod, fr=" ",docu="U4.72.04-b",reentrant='n', UIinfo={"groupes":("Résultats et champs",)}, - TYPE_CHAM =SIMP(statut='o',typ='TXM', - into=("CART_DBEL_R","NOEU_DBEL_R","ELEM_DBEL_R", - "ELNO_DBEL_R","ELGA_DBEL_R","CART_DEPL_C", - "NOEU_DEPL_C","ELEM_DEPL_C","ELNO_DEPL_C", - "ELGA_DEPL_C","CART_DEPL_F","NOEU_DEPL_F", - "ELEM_DEPL_F","ELNO_DEPL_F","ELGA_DEPL_F", - "CART_DEPL_R","NOEU_DEPL_R","ELEM_DEPL_R", - "ELNO_DEPL_R","ELGA_DEPL_R","CART_DURT_R", - "NOEU_DURT_R","ELEM_DURT_R","ELNO_DURT_R", - "ELGA_DURT_R","CART_ENER_R","NOEU_ENER_R", - "ELEM_ENER_R","ELNO_ENER_R","ELGA_ENER_R", - "CART_EPSI_R","NOEU_EPSI_R","ELEM_EPSI_R", - "ELNO_EPSI_R","ELGA_EPSI_R","CART_ERREUR", - "NOEU_ERREUR","ELEM_ERREUR","ELNO_ERREUR", - "ELGA_ERREUR","CART_FLUX_R","NOEU_FLUX_R", - "ELEM_FLUX_R","ELNO_FLUX_R","ELGA_FLUX_R", - "CART_GEOM_R","NOEU_GEOM_R","ELEM_GEOM_R", - "ELNO_GEOM_R","ELGA_GEOM_R","CART_G_DEPL_R", - "NOEU_G_DEPL_R","ELEM_G_DEPL_R","ELNO_G_DEPL_R", - "ELGA_G_DEPL_R","CART_HYDR_R","NOEU_HYDR_R", - "ELEM_HYDR_R","ELNO_HYDR_R","ELGA_HYDR_R", - "CART_INST_R","NOEU_INST_R","ELEM_INST_R", - "ELNO_INST_R","ELGA_INST_R","CART_INTE_R", - "NOEU_INTE_R","ELEM_INTE_R","ELNO_INTE_R", - "ELGA_INTE_R","CART_META_R","NOEU_META_R", - "ELEM_META_R","ELNO_META_R","ELGA_META_R", - "CART_NEUT_F","NOEU_NEUT_F","ELEM_NEUT_F", - "ELNO_NEUT_F","ELGA_NEUT_F","CART_NEUT_R", - "NOEU_NEUT_R","ELEM_NEUT_R","ELNO_NEUT_R", - "ELGA_NEUT_R","CART_PRES_R","NOEU_PRES_R", - "ELEM_PRES_R","ELNO_PRES_R","ELGA_PRES_R", - "CART_SIEF_R","NOEU_SIEF_R","ELEM_SIEF_R", - "ELNO_SIEF_R","ELGA_SIEF_R","CART_SOUR_R", - "NOEU_SOUR_R","ELEM_SOUR_R","ELNO_SOUR_R", - "ELGA_SOUR_R","CART_TEMP_F","NOEU_TEMP_F", - "ELEM_TEMP_F","ELNO_TEMP_F","ELGA_TEMP_F", - "CART_TEMP_R","NOEU_TEMP_R","ELEM_TEMP_R", - "ELNO_TEMP_R","ELGA_TEMP_R","CART_VAR2_R", - "NOEU_VAR2_R","ELEM_VARI_R","ELNO_VARI_R", - "ELGA_VARI_R","CART_VNOR_C","NOEU_VNOR_C", - "ELEM_VNOR_C","ELNO_VNOR_C","ELGA_VNOR_C", - "CART_IRRA_R","NOEU_IRRA_R","ELEM_IRRA_R", - "ELNO_IRRA_R","ELGA_IRRA_R","ELEM_SPMA_R",) ), + TYPE_CHAM =SIMP(statut='o',typ='TXM',), + # TYPE_CHAM doit etre de la forme : CART_xx, NOEU_xx, ELEM_xx, ELGA_xx ou ELNO_xx + # ou xx est le nom d'une grandeur définie dans le catalogue des grandeurs # SI CREATION D'UN CHAM_NO, POUR IMPOSER LA NUMEROTATION DES DDLS : # ------------------------------------------------------------------ @@ -5834,15 +5977,15 @@ CREA_CHAMP=OPER(nom="CREA_CHAMP",op= 195,sd_prod=crea_champ_prod, MODELE =SIMP(statut='f',typ=(modele) ), b_affe_modele =BLOC(condition = "MODELE != None", PROL_ZERO =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ), ), - AFFE =FACT(statut='o',min=1,max='**', + AFFE =FACT(statut='o',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD',), UN_PARMI('VALE','VALE_I','VALE_C','VALE_F', ),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), - NOM_CMP =SIMP(statut='o',typ='TXM',max='**' ), + 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='**'), + NOM_CMP =SIMP(statut='o',typ='TXM',max='**'), VALE =SIMP(statut='f',typ='R',max='**' ), VALE_I =SIMP(statut='f',typ='I',max='**' ), VALE_C =SIMP(statut='f',typ='C',max='**' ), @@ -5855,14 +5998,14 @@ CREA_CHAMP=OPER(nom="CREA_CHAMP",op= 195,sd_prod=crea_champ_prod, MODELE =SIMP(statut='f',typ=(modele) ), b_asse_modele =BLOC(condition = "MODELE != None", PROL_ZERO =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ), ), - ASSE =FACT(statut='o',min=1,max='**', + ASSE =FACT(statut='o',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','GROUP_NO','MAILLE','NOEUD',), PRESENT_PRESENT('NOM_CMP_RESU','NOM_CMP', ),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - NOEUD =SIMP(statut='f',typ=no,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='**'), CHAM_GD =SIMP(statut='o',typ=(cham_gd)), NOM_CMP =SIMP(statut='f',typ='TXM',max='**' ), NOM_CMP_RESU =SIMP(statut='f',typ='TXM',max='**' ), @@ -5892,51 +6035,7 @@ CREA_CHAMP=OPER(nom="CREA_CHAMP",op= 195,sd_prod=crea_champ_prod, SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom), fr="Paramètre de sensibilité.", ang="Sensitivity parameter"), - NOM_CHAM =SIMP(statut='o',typ='TXM', - into=("DEPL","VITE","ACCE", - "DEPL_ABSOLU","VITE_ABSOLU", - "TEMP","IRRA","ACCE_ABSOLU", - "FORC_NODA","REAC_NODA","EFGE_NOEU_DEPL", - "EFGE_NOEU_CART","EPSI_NOEU_DEPL", - "SIGM_NOEU_DEPL","SIGM_NOEU_CART", - "SIPO_NOEU_DEPL","EQUI_NOEU_SIGM", - "EQUI_NOEU_EPSI","FLUX_NOEU_TEMP", - "FLUX_ELGA_TEMP","FLUX_ELNO_TEMP", - "META_ELGA_TEMP","META_ELNO_TEMP", - "META_NOEU_TEMP","DURT_ELGA_META", - "DURT_ELNO_META","DURT_NOEU_META","SIEF_ELGA", - "SIEF_ELNO_ELGA","SIEF_ELGA_DEPL", - "VARI_ELNO_ELGA","VARI_ELGA","EPOT_ELEM_DEPL", - "ECIN_ELEM_DEPL","SOUR_ELGA_ELEC", - "PRES_ELNO_REEL","PRES_ELNO_IMAG", - "PRES_ELNO_DBEL","INTE_ELNO_ACTI", - "INTE_ELNO_REAC","EFGE_ELNO_DEPL", - "SIGM_ELNO_DEPL","EFGE_ELNO_CART", - "SIGM_ELNO_CART","SIPO_ELNO_DEPL", - "EPSI_ELNO_DEPL","EPSI_ELGA_DEPL", - "EPSG_ELNO_DEPL","EPSG_ELGA_DEPL","EPSP_ELNO", - "EPSP_ELGA","EQUI_ELNO_SIGM","EQUI_ELGA_SIGM", - "EQUI_ELNO_EPSI","EQUI_ELGA_EPSI", - "ERRE_ELNO_ELGA","ERRE_ELGA_NORE", - "ERRE_ELEM_NOZ1","ERRE_ELEM_NOZ2", - "SIGM_NOZ1_ELGA","SIGM_NOZ2_ELGA", - "DEGE_ELNO_DEPL","SIRE_ELNO_DEPL", - "VNOR_ELEM_DEPL","SIEF_ELNO","VARI_ELNO", - "SIEF_NOEU_ELGA","VARI_NOEU_ELGA", - "PRES_NOEU_DBEL","PRES_NOEU_REEL", - "PRES_NOEU_IMAG","INTE_NOEU_ACTI", - "INTE_NOEU_REAC","DCHA_ELGA_SIGM", - "DCHA_ELNO_SIGM","RADI_ELGA_SIGM", - "RADI_ELNO_SIGM","ENDO_ELNO_SIGA", - "ENDO_ELNO_SINO","ENDO_ELNO_SIGM", - "SIGM_ELNO_VARI","SIGM_NOEU_VARI", - "EPME_ELNO_DEPL","EPME_ELGA_DEPL", - "EPMG_ELNO_DEPL", - "EPMG_ELGA_DEPL","GRAD_ELGA_THETA", - "GTHE_ELNO_ELGA","GRAD_NOEU_THETA", - "HYDR_ELGA","HYDR_ELNO_ELGA","HYDR_NOEU_ELGA", - "THETA","SIGM_ELNO_SIEF","SIPO_ELNO_SIEF", - "VALE_CONT","VALE_NCOU_MAXI") ), + NOM_CHAM =SIMP(statut='o',typ='TXM',into=C_NOM_CHAM_INTO()), TYPE_MAXI =SIMP(statut='f',typ='TXM',into=("MAXI","MINI","MAXI_ABS","MINI_ABS","NORM_TRAN",) ), TYPE_RESU =SIMP(statut='f',typ='TXM',defaut="VALE",into=("VALE","INST",) ), TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), @@ -5959,7 +6058,9 @@ CREA_CHAMP=OPER(nom="CREA_CHAMP",op= 195,sd_prod=crea_champ_prod, INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2,) ), TITRE =SIMP(statut='f',typ='TXM',max='**' ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND +# RESPONSABLE MCOURTOI M.COURTOIS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -5985,61 +6086,87 @@ CREA_MAILLAGE=OPER(nom="CREA_MAILLAGE",op= 167,sd_prod=maillage, EXCLUS('ECLA_PG','DETR_GROUP_MA'), EXCLUS('ECLA_PG','MODI_MAILLE'), EXCLUS('ECLA_PG','LINE_QUAD'), + EXCLUS('ECLA_PG','COQU_VOLU'), EXCLUS('LINE_QUAD','MODI_MAILLE'), EXCLUS('LINE_QUAD','CREA_MAILLE'), EXCLUS('LINE_QUAD','CREA_GROUP_MA'), EXCLUS('LINE_QUAD','DETR_GROUP_MA'), + EXCLUS('LINE_QUAD','COQU_VOLU'), + EXCLUS('COQU_VOLU','MODI_MAILLE'), + EXCLUS('COQU_VOLU','CREA_MAILLE'), + EXCLUS('COQU_VOLU','CREA_GROUP_MA'), + EXCLUS('COQU_VOLU','DETR_GROUP_MA'), ), MAILLAGE =SIMP(statut='o',typ=maillage ), - CREA_POI1 =FACT(statut='f',min=1,max='**',fr="Création de mailles de type POI1 à partir de noeuds", + CREA_POI1 =FACT(statut='f',max='**',fr="Création de mailles de type POI1 à partir de noeuds", regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD' ),), - NOM_GROUP_MA =SIMP(statut='f',typ=grma,max='**'), + NOM_GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + 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='**'), ), - CREA_MAILLE =FACT(statut='f',min=1,max='**',fr="Duplication de mailles", + CREA_MAILLE =FACT(statut='f',max='**',fr="Duplication de mailles", regles=(AU_MOINS_UN('TOUT','MAILLE','GROUP_MA'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), PREF_MAILLE =SIMP(statut='o',typ='TXM' ), PREF_NUME =SIMP(statut='f',typ='I' ), ), - CREA_GROUP_MA =FACT(statut='f',min=1,max='**',fr="Duplication de mailles et création de groupes de mailles", + CREA_GROUP_MA =FACT(statut='f',max='**',fr="Duplication de mailles et création de groupes de mailles", regles=(AU_MOINS_UN('TOUT','MAILLE','GROUP_MA' ),), NOM =SIMP(statut='o',typ='TXM'), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), PREF_MAILLE =SIMP(statut='o',typ='TXM' ), PREF_NUME =SIMP(statut='f',typ='I' ), ), - DETR_GROUP_MA =FACT(statut='f',min=1,max=1,fr="Destruction de groupes de mailles", - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), + DETR_GROUP_MA =FACT(statut='f',fr="Destruction de groupes de mailles", + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), NB_MAILLE =SIMP(statut='f',typ='I',defaut= 0, fr="Nombre minimal de mailles que doit contenir le groupe pour etre détruit", ), ), - MODI_MAILLE =FACT(statut='f',min=1,max='**',fr="Modification du type de mailles", + COQU_VOLU =FACT(statut='f', + fr="Creation de mailles volumiques à partir de mailles surfaciques", + NOM =SIMP(statut='o',typ='TXM'), + GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max ='**'), + EPAIS =SIMP(statut='o',typ='R' ), + PREF_MAILLE =SIMP(statut='f',typ='TXM',defaut="MS" ), + PREF_NOEUD =SIMP(statut='f',typ='TXM',defaut="NS" ), + PREF_NUME =SIMP(statut='f',typ='I' ,defaut=1 ), + PLAN =SIMP(statut='o',typ='TXM',into=("SUP","MOY","INF")), + b_MOY =BLOC(condition = "PLAN == 'MOY'", + TRANSLATION =SIMP(statut='o',typ='TXM',into=("SUP","INF") ), + ), + ), + MODI_MAILLE =FACT(statut='f',max='**',fr="Modification du type de mailles", regles=(AU_MOINS_UN('TOUT','MAILLE','GROUP_MA' ),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE =SIMP(statut='f',typ=grma,max='**'), - GROUP_MA =SIMP(statut='f',typ=ma,max='**'), - OPTION =SIMP(statut='o',typ='TXM',into=("TRIA6_7","QUAD8_9","SEG3_4"),fr="Choix de la transformation" ), - PREF_NOEUD =SIMP(statut='f',typ='TXM',defaut="NS"), - PREF_NUME =SIMP(statut='f',typ='I',defaut= 1 ), + MAILLE =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + OPTION =SIMP(statut='o',typ='TXM',into=("TRIA6_7","QUAD8_9","SEG3_4","QUAD_TRIA3"), + fr="Choix de la transformation" ), + b_NOS =BLOC(condition = "OPTION == 'TRIA6_7' or OPTION == 'QUAD8_9' or OPTION == 'SEG3_4'", + PREF_NOEUD =SIMP(statut='f',typ='TXM',defaut="NS"), + PREF_NUME =SIMP(statut='f',typ='I',defaut= 1 ), + ), + b_QTR =BLOC(condition = "OPTION == 'QUAD_TRIA3'", + PREF_MAILLE =SIMP(statut='f',typ='TXM',defaut="MS" ), + PREF_NUME =SIMP(statut='f',typ='I',defaut= 1 ), + ), ), - LINE_QUAD =FACT(statut='f',min=01,max=1,fr="Passage linéaire -> quadratique", + LINE_QUAD =FACT(statut='f',fr="Passage linéaire -> quadratique", regles=(AU_MOINS_UN('TOUT','MAILLE','GROUP_MA' ),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE =SIMP(statut='f',typ=grma,max='**'), - GROUP_MA =SIMP(statut='f',typ=ma,max='**'), + MAILLE =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), PREF_NOEUD =SIMP(statut='f',typ='TXM',defaut="NS"), PREF_NUME =SIMP(statut='f',typ='I',defaut= 1 ), ), - REPERE =FACT(statut='f',min=1,max='**', + REPERE =FACT(statut='f',max='**', fr="changement de repère servant à déterminer les caractéristiques d une section de poutre", TABLE =SIMP(statut='o',typ=tabl_cara_geom, fr="Nom de la table contenant les caractéristiques de la section de poutre" ), @@ -6050,14 +6177,17 @@ CREA_MAILLAGE=OPER(nom="CREA_MAILLAGE",op= 167,sd_prod=maillage, fr="Nom du groupe de mailles dont le centre de gravité sera l origine du nouveau repère"), ), ), - ECLA_PG =FACT(statut='f',min=1,max=1, + ECLA_PG =FACT(statut='f', fr="Eclatement des mailles en petites mailles contenant chacune un seul point de gauss", MODELE =SIMP(statut='o',typ=modele ), SHRINK =SIMP(statut='f',typ='R',defaut= 0.9, fr="Facteur de réduction" ), ), TITRE =SIMP(statut='f',typ='TXM',max='**'), +# + INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -6095,14 +6225,14 @@ CREA_RESU=OPER(nom="CREA_RESU",op=124,sd_prod=crea_resu_prod,docu="U4.44.12-e",r TYPE_RESU =SIMP(statut='o',typ='TXM',into=("MULT_ELAS","EVOL_ELAS","EVOL_NOLI","FOURIER_ELAS", "EVOL_THER","EVOL_VARC",) ), - NOM_CHAM =SIMP(statut='f',typ='TXM',into=("DEPL","TEMP","IRRA","HYDR_ELGA",),max=1 ), - AFFE =FACT(statut='f',min=1,max='**', + NOM_CHAM =SIMP(statut='f',typ='TXM',into=("DEPL","TEMP","IRRA","HYDR_ELGA",),), + AFFE =FACT(statut='o',max='**', regles=(UN_PARMI('NOM_CAS','NUME_MODE','LIST_INST','INST',),), CHAM_GD =SIMP(statut='f',typ=(cham_gd)), NOM_CAS =SIMP(statut='f',typ='TXM' ), NUME_MODE =SIMP(statut='f',typ='I'), TYPE_MODE =SIMP(statut='f',typ='TXM',defaut="SYME",into=("SYME","ANTI","TOUS") ), - INST =SIMP(statut='f',typ='R',max='**'), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8), NUME_INIT =SIMP(statut='f',typ='I'), NUME_FIN =SIMP(statut='f',typ='I'), @@ -6115,17 +6245,17 @@ CREA_RESU=OPER(nom="CREA_RESU",op=124,sd_prod=crea_resu_prod,docu="U4.44.12-e",r TYPE_RESU =SIMP(statut='o',typ='TXM',into=("EVOL_ELAS","EVOL_NOLI","EVOL_THER"), ), - ECLA_PG =FACT(statut='f',min=1,max=1, + ECLA_PG =FACT(statut='o', regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST','LIST_ORDRE'),), - NOM_CHAM =SIMP(statut='o',typ='TXM',max='**', + NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', into=("SIEF_ELGA","VARI_ELGA","SIEF_ELGA_DEPL","FLUX_ELGA_TEMP",) ), MODELE_INIT =SIMP(statut='o',typ=modele), RESU_INIT =SIMP(statut='o',typ=resultat), MAILLAGE =SIMP(statut='o',typ=maillage), TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',max='**'), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE =SIMP(statut='f',typ=listis), - INST =SIMP(statut='f',typ='R',max='**'), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8), PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3), CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ), @@ -6135,7 +6265,7 @@ CREA_RESU=OPER(nom="CREA_RESU",op=124,sd_prod=crea_resu_prod,docu="U4.44.12-e",r b_perm_cham =BLOC(condition = "OPERATION == 'PERM_CHAM'", TYPE_RESU =SIMP(statut='o',typ='TXM',into=("EVOL_NOLI",) ), - NOM_CHAM =SIMP(statut='f',typ='TXM',into=("DEPL","SIEF_ELGA","VARI_ELGA",),max='**' ), + NOM_CHAM =SIMP(statut='f',typ='TXM',into=("DEPL","SIEF_ELGA","VARI_ELGA",),validators=NoRepeat(),max='**' ), RESU_INIT =SIMP(statut='o',typ=evol_noli), INST_INIT =SIMP(statut='f',typ='R'), PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3), @@ -6143,7 +6273,7 @@ CREA_RESU=OPER(nom="CREA_RESU",op=124,sd_prod=crea_resu_prod,docu="U4.44.12-e",r MAILLAGE_INIT =SIMP(statut='o',typ=maillage,), RESU_FINAL =SIMP(statut='o',typ=evol_noli,), MAILLAGE_FINAL =SIMP(statut='o',typ=maillage,), - PERM_CHAM =FACT(statut='o',min=1,max=1, + PERM_CHAM =FACT(statut='o', GROUP_MA_FINAL =SIMP(statut='o',typ=grma), GROUP_MA_INIT =SIMP(statut='o',typ=grma), TRAN =SIMP(statut='o',typ='R',max='**'), @@ -6155,11 +6285,11 @@ CREA_RESU=OPER(nom="CREA_RESU",op=124,sd_prod=crea_resu_prod,docu="U4.44.12-e",r TYPE_RESU =SIMP(statut='o',typ='TXM',into=("EVOL_THER",) ), - PROL_RTZ =FACT(statut='f',min=1,max=1, + PROL_RTZ =FACT(statut='o', regles=(EXCLUS('INST','LIST_INST'),), MAILLAGE_FINAL =SIMP(statut='o',typ=maillage,), TABLE =SIMP(statut='o',typ=tabl_post_rele,fr="Table issue de post_releve_t"), - INST =SIMP(statut='f',typ='R',max='**'), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8), b_acce_reel =BLOC(condition="(INST != None)or(LIST_INST != None)", PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-6), @@ -6174,7 +6304,8 @@ CREA_RESU=OPER(nom="CREA_RESU",op=124,sd_prod=crea_resu_prod,docu="U4.44.12-e",r ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 06/09/2003 AUTEUR D6BHHJP J.P.LEFEBVRE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -6199,6 +6330,9 @@ DEBUT=MACRO(nom="DEBUT",op=ops.build_debut ,docu="U4.11.01-g",repetable='n', PAR_LOT =SIMP(fr="mode de traitement des commandes",statut='f',typ='TXM', into=("OUI","NON"),defaut="OUI"), + HDF =FACT(statut='f',min=1,max=1, + FICHIER =SIMP(fr="nom du fichier hdf associe",statut='o',typ='TXM'), + ), BASE =FACT(fr="définition des paramètres associés aux bases JEVEUX", statut='f',min=1,max=3, FICHIER =SIMP(fr="nom de la base",statut='o',typ='TXM', @@ -6218,7 +6352,7 @@ DEBUT=MACRO(nom="DEBUT",op=ops.build_debut ,docu="U4.11.01-g",repetable='n', TITRE =SIMP(statut='f',typ='TXM'), UNITE =SIMP(statut='f',typ='I'), ), - CODE =FACT(fr="définition d un nom pour l'esemble d'une étude", + 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')), @@ -6241,7 +6375,8 @@ DEBUT=MACRO(nom="DEBUT",op=ops.build_debut ,docu="U4.11.01-g",repetable='n', PARTITION =SIMP(statut='f',typ='R'), ), ); -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -6263,12 +6398,12 @@ DEFI_BASE_MODALE=OPER(nom="DEFI_BASE_MODALE",op= 99,sd_prod=base_modale, docu="U4.64.02-f",reentrant='f', UIinfo={"groupes":("Matrices/vecteurs",)}, regles=(UN_PARMI('CLASSIQUE','RITZ','DIAG_MASS'),), - CLASSIQUE =FACT(statut='f',min=1,max=1, + 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',min=1,max='**', + 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 ), @@ -6276,7 +6411,7 @@ DEFI_BASE_MODALE=OPER(nom="DEFI_BASE_MODALE",op= 99,sd_prod=base_modale, MULT_ELAS =SIMP(statut='f',typ=mult_elas ), BASE_MODALE =SIMP(statut='f',typ=base_modale ), ), - DIAG_MASS =FACT(statut='f',min=1,max='**', + 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,) ), ), @@ -6289,7 +6424,8 @@ DEFI_BASE_MODALE=OPER(nom="DEFI_BASE_MODALE",op= 99,sd_prod=base_modale, TITRE =SIMP(statut='f',typ='TXM',max='**'), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; -#& MODIF COMMANDE DATE 21/03/2003 AUTEUR ASSIRE A.ASSIRE + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG @@ -6350,31 +6486,30 @@ DEFI_CABLE_BP=MACRO(nom="DEFI_CABLE_BP",op=defi_cable_bp_ops,sd_prod=defi_cable_ CHAM_MATER =SIMP(statut='o',typ=cham_mater ), CARA_ELEM =SIMP(statut='o',typ=cara_elem ), GROUP_MA_BETON =SIMP(statut='o',typ=grma), - DEFI_CABLE =FACT(statut='o',min=1,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,max='**'), + 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,max=2), - GROUP_NO_ANCRAGE=SIMP(statut='f',typ=grno,max=2), + NOEUD_ANCRAGE =SIMP(statut='f',typ=no ,validators=NoRepeat(),max=2), + GROUP_NO_ANCRAGE=SIMP(statut='f',typ=grno,validators=NoRepeat(),max=2), ), - TYPE_ANCRAGE =SIMP(statut='o',typ='TXM',min=2,max=2, - into=("ACTIF","PASSIF") ), + 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,max=1, + RELAXATION =FACT(statut='f',min=0, R_J =SIMP(statut='o',typ='R',val_min=0.E+0 ), ), - CONE =FACT(statut='f',min=0,max=1, + 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 ), - PRESENT =SIMP(statut='o',typ='TXM',min=2,max=2, - into=("OUI","NON") ), + 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 21/03/2003 AUTEUR ASSIRE A.ASSIRE + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG @@ -6401,32 +6536,31 @@ DEFI_CABLE_OP=OPER(nom="DEFI_CABLE_OP",op= 180,sd_prod=cabl_precont, CHAM_MATER =SIMP(statut='o',typ=cham_mater ), CARA_ELEM =SIMP(statut='o',typ=cara_elem ), GROUP_MA_BETON =SIMP(statut='o',typ=grma), - DEFI_CABLE =FACT(statut='o',min=1,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,max='**'), + 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,max=2), - GROUP_NO_ANCRAGE=SIMP(statut='f',typ=grno,max=2), - GROUP_NO_FUT = SIMP(statut='f',typ=grno,max=2), + 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") ), + 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,max=1, + 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,max=1, + 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") ), + PRESENT =SIMP(statut='o',typ='TXM',min=2,max=2,into=("OUI","NON") ), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -6449,10 +6583,11 @@ DEFI_CONSTANTE=OPER(nom="DEFI_CONSTANTE",op= 2,sd_prod=fonction, docu="U4.31.01-g",reentrant='n', UIinfo={"groupes":("Fonction",)}, NOM_RESU =SIMP(statut='f',typ='TXM',defaut="TOUTRESU"), - VALE =SIMP(statut='o',typ='R',max=1 ), + VALE =SIMP(statut='o',typ='R',), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -6473,18 +6608,54 @@ DEFI_CONSTANTE=OPER(nom="DEFI_CONSTANTE",op= 2,sd_prod=fonction, DEFI_COQU_MULT=OPER(nom="DEFI_COQU_MULT",op=56,sd_prod=mater,docu="U4.42.03-f",reentrant='n', UIinfo={"groupes":("Modélisation",)}, fr="Définition d une coque composite couche par couche", - COUCHE =FACT(statut='o',min=1,max='**', + COUCHE =FACT(statut='o',max='**', EPAIS =SIMP(statut='o',typ='R',val_min=0.E+0 ), MATER =SIMP(statut='o',typ=(mater) ), ORIENTATION =SIMP(statut='f',typ='R',defaut= 0.E+0, val_min=-90.E+0,val_max=90.E+0 ), ), - IMPRESSION =FACT(statut='f',min=1,max=1, + IMPRESSION =FACT(statut='f', FICHIER =SIMP(statut='f',typ='TXM',defaut="RESULTAT", into=("RESULTAT",) ), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND +# 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. +# ====================================================================== +# RESPONSABLE D6BHHJP J.P.LEFEBVRE +DEFI_FICHIER=PROC(nom="DEFI_FICHIER",op=26,docu="U4.12.03-a", + UIinfo={"groupes":("Gestion du travail",)}, + fr="Gestion d une unité logique : ajout, suppression", + + regles=(AU_MOINS_UN('NOM_SYSTEME','FICHIER'),), + ACTION =SIMP(statut='f',typ='TXM',into=("ASSOCIER","LIBERER"),defaut="ASSOCIER"), + FICHIER =SIMP(statut='f',typ='TXM'), + UNITE =SIMP(statut='o',typ='I' ,val_min=1), + NOM_SYSTEME =SIMP(statut='f',typ='TXM'), + TYPE =SIMP(statut='f',typ='TXM',into=("ASCII","BINARY","LIBRE"),defaut="ASCII"), + ACCES =SIMP(statut='f',typ='TXM',into=("NEW","APPEND","OLD"),defaut="NEW"), + + INFO =SIMP(statut='f',typ='I',into=(1,2) ), + + ) + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -6506,7 +6677,7 @@ DEFI_FLUI_STRU=OPER(nom="DEFI_FLUI_STRU",op= 143,sd_prod=type_flui_stru, docu="U4.25.01-e",reentrant='n', UIinfo={"groupes":("Maillage",)}, regles=( UN_PARMI('FAISCEAU_TRANS','GRAPPE','FAISCEAU_AXIAL','COQUE_COAX',),), - FAISCEAU_TRANS =FACT(statut='f',min=1,max='**', + FAISCEAU_TRANS =FACT(statut='f',max='**', 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,formule) ), @@ -6520,7 +6691,7 @@ DEFI_FLUI_STRU=OPER(nom="DEFI_FLUI_STRU",op= 143,sd_prod=type_flui_stru, UNITE_CK =SIMP(statut='f',typ='I',defaut=71), PAS =SIMP(statut='f',typ='R' ), ), - GRAPPE =FACT(statut='f',max=1, + 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 @@ -6535,7 +6706,7 @@ DEFI_FLUI_STRU=OPER(nom="DEFI_FLUI_STRU",op= 143,sd_prod=type_flui_stru, UNITE_CA =SIMP(statut='f',typ='I',defaut=70), UNITE_KA =SIMP(statut='f',typ='I',defaut=71), ), - FAISCEAU_AXIAL =FACT(statut='f',min=1,max='**', + 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'), @@ -6544,7 +6715,7 @@ DEFI_FLUI_STRU=OPER(nom="DEFI_FLUI_STRU",op= 143,sd_prod=type_flui_stru, 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,max='**'), + 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,formule) ), @@ -6554,7 +6725,7 @@ DEFI_FLUI_STRU=OPER(nom="DEFI_FLUI_STRU",op= 143,sd_prod=type_flui_stru, 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',max=5, + 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' ), @@ -6567,7 +6738,7 @@ DEFI_FLUI_STRU=OPER(nom="DEFI_FLUI_STRU",op= 143,sd_prod=type_flui_stru, COOR_GRILLE =SIMP(statut='f',typ='R',max='**'), TYPE_GRILLE =SIMP(statut='f',typ='I',max='**'), ), - COQUE_COAX =FACT(statut='f',max=1, + 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), @@ -6585,7 +6756,8 @@ DEFI_FLUI_STRU=OPER(nom="DEFI_FLUI_STRU",op= 143,sd_prod=type_flui_stru, ), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; -#& MODIF COMMANDE DATE 03/12/2002 AUTEUR DURAND C.DURAND + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -6610,7 +6782,7 @@ DEFI_FONC_ELEC=OPER(nom="DEFI_FONC_ELEC",op=64,sd_prod=fonction,docu="U4.mk.10-e 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',min=1,max='**', + 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'),), @@ -6625,7 +6797,7 @@ DEFI_FONC_ELEC=OPER(nom="DEFI_FONC_ELEC",op=64,sd_prod=fonction,docu="U4.mk.10-e INST_CC_INIT =SIMP(statut='o',typ='R'), INST_CC_FIN =SIMP(statut='o',typ='R'), ), - COUR_PRIN =FACT(statut='f',min=1,max=1, + 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'), @@ -6640,7 +6812,7 @@ DEFI_FONC_ELEC=OPER(nom="DEFI_FONC_ELEC",op=64,sd_prod=fonction,docu="U4.mk.10-e 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',min=1,max='**', + 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'), @@ -6654,7 +6826,8 @@ DEFI_FONC_ELEC=OPER(nom="DEFI_FONC_ELEC",op=64,sd_prod=fonction,docu="U4.mk.10-e ), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -6678,7 +6851,7 @@ DEFI_FONC_FLUI=OPER(nom="DEFI_FONC_FLUI",op= 142,sd_prod=fonction, MAILLAGE =SIMP(statut='o',typ=(maillage) ), NOEUD_INIT =SIMP(statut='o',typ=no), NOEUD_FIN =SIMP(statut='o',typ=no), - VITE =FACT(statut='o',min=1,max=1, + 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 ) ), @@ -6692,7 +6865,8 @@ DEFI_FONC_FLUI=OPER(nom="DEFI_FONC_FLUI",op= 142,sd_prod=fonction, INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -6727,7 +6901,7 @@ DEFI_FONCTION=OPER(nom="DEFI_FONCTION",op=3,sd_prod=defi_fonction_prod into=("DX","DY","DZ","DRX","DRY","DRZ","TEMP", "INST","X","Y","Z","EPSI","META","FREQ","PULS", "AMOR","ABSC","SIGM","HYDR","SECH","PORO","SAT", - "PGAZ","PCAP","VITE") ), + "PGAZ","PCAP","VITE","ENDO") ), 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)"), @@ -6752,7 +6926,8 @@ DEFI_FONCTION=OPER(nom="DEFI_FONCTION",op=3,sd_prod=defi_fonction_prod INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -6785,50 +6960,51 @@ DEFI_FOND_FISS=OPER(nom="DEFI_FOND_FISS",op=55,sd_prod=fond_fiss,docu="U4.82.01- EXCLUS('DTAN_ORIG','VECT_GRNO_ORIG'), EXCLUS('DTAN_EXTR','VECT_GRNO_EXTR') ,), MAILLAGE =SIMP(statut='o',typ=maillage ), - FOND =FACT(statut='f',min=1,max=1, + FOND =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,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + 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,max=1), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno,max=1), - NOEUD_EXTR =SIMP(statut='f',typ=no,max=1), - GROUP_NO_EXTR =SIMP(statut='f',typ=grno,max=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',min=1,max=1, + 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,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - NOEUD_ORIG =SIMP(statut='f',typ=no,max=1), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno,max=1), - MAILLE_ORIG =SIMP(statut='f',typ=ma,max=1), - GROUP_MA_ORIG =SIMP(statut='f',typ=ma,max=1), - ), - LEVRE_SUP =FACT(statut='f',min=1,max=1, + 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,), + ), + LEVRE_SUP =FACT(statut='f', regles=(UN_PARMI('GROUP_MA','MAILLE'),), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), ), - LEVRE_INF =FACT(statut='f',min=1,max=1, + LEVRE_INF =FACT(statut='f', regles=(UN_PARMI('GROUP_MA','MAILLE', ),), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + 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='**'), DTAN_ORIG =SIMP(statut='f',typ='R',max='**'), DTAN_EXTR =SIMP(statut='f',typ='R',max='**'), - VECT_GRNO_ORIG =SIMP(statut='f',typ=grno,max=2), - VECT_GRNO_EXTR =SIMP(statut='f',typ=grno,max=2), + 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 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -6859,17 +7035,18 @@ DEFI_GROUP=OPER(nom="DEFI_GROUP",op= 104,sd_prod=defi_group_prod, regles=(AU_MOINS_UN('CREA_GROUP_MA','CREA_GROUP_NO'),), MAILLAGE =SIMP(statut='o',typ=(maillage,squelette) ), - CREA_GROUP_MA =FACT(statut='f',min=1,max='**', - regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE','INTERSEC','UNION','DIFFE','OPTION'),), + 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,max='**'), - INTERSEC =SIMP(statut='f',typ=grma,max='**'), - UNION =SIMP(statut='f',typ=grma,max='**'), - DIFFE =SIMP(statut='f',typ=grma,max='**'), - OPTION =SIMP(statut='f',typ='TXM',into=("FACE_NORMALE","SPHERE","CYLINDRE","BANDE") ), + 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'), @@ -6886,49 +7063,56 @@ DEFI_GROUP=OPER(nom="DEFI_GROUP",op= 104,sd_prod=defi_group_prod, VERI_SIGNE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), ), b_sphere =BLOC(condition = "OPTION == 'SPHERE'", - regles=(UN_PARMI('POINT','NOEUD_CENTRE'),), + 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'), + 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'), + 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), + 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='**'), + ), ), - CREA_GROUP_NO =FACT(statut='f',min=1,max='**', + CREA_GROUP_NO =FACT(statut='f',max='**', regles = ( AU_MOINS_UN ('TOUT_GROUP_MA','GROUP_MA','NOEUD', 'INTERSEC','UNION','DIFFE','GROUP_NO','OPTION'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), EXCLUS ('TOUT_GROUP_MA','GROUP_MA','NOEUD','INTERSEC','UNION','DIFFE'),), TOUT_GROUP_MA =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - - NOEUD =SIMP(statut='f',typ=no,max='**'), - INTERSEC =SIMP(statut='f',typ=grno,max='**'), - UNION =SIMP(statut='f',typ=grno,max='**'), - DIFFE =SIMP(statut='f',typ=grno,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), + MAILLE =SIMP(statut='f',typ=ma ,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='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), OPTION =SIMP(statut='f',typ='TXM',into=("ENV_SPHERE","ENV_CYLINDRE","PLAN", "SEGM_DROI_ORDO","NOEUD_ORDO","TUNNEL") ), b_nom_group_ma =BLOC(condition = "GROUP_MA != None", - NOM =SIMP(statut='f',typ=grma,max='**'), + NOM =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), ), b_crit_noeud = BLOC(condition = "GROUP_MA != None", CRIT_NOEUD = SIMP(statut='f',typ='TXM',defaut="TOUS", @@ -6945,29 +7129,32 @@ DEFI_GROUP=OPER(nom="DEFI_GROUP",op= 104,sd_prod=defi_group_prod, ), ), b_env_sphere =BLOC(condition = "OPTION == 'ENV_SPHERE'", - regles=(UN_PARMI('POINT','NOEUD_CENTRE'),), - POINT =SIMP(statut='f',typ='R',max=3), - NOEUD_CENTRE =SIMP(statut='f',typ=no,max=1), + regles=(UN_PARMI('POINT','NOEUD_CENTRE','GROUP_NO_CENTRE'),), + 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'), + 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,max=1), + 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'), + 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,max=1), - ANGL_NAUT =SIMP(statut='f',typ='R',max=3), - VECT_NORMALE =SIMP(statut='f',typ='R',max=3), + 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'", @@ -6991,8 +7178,8 @@ DEFI_GROUP=OPER(nom="DEFI_GROUP",op= 104,sd_prod=defi_group_prod, b_tunnel =BLOC(condition = "OPTION == 'TUNNEL'", regles=(EXCLUS('NOEUD_ORIG','GROUP_NO_ORIG'), AU_MOINS_UN ('GROUP_MA_AXE','MAILLE_AXE'),), - GROUP_MA_AXE =SIMP(statut='f',typ=grma,max='**'), - MAILLE_AXE =SIMP(statut='f',typ=ma,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'), @@ -7002,7 +7189,8 @@ DEFI_GROUP=OPER(nom="DEFI_GROUP",op= 104,sd_prod=defi_group_prod, ALARME =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), INFO =SIMP(statut='f',typ='I',into=( 1 , 2 ) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -7026,12 +7214,12 @@ DEFI_INTE_SPEC=OPER(nom="DEFI_INTE_SPEC",op= 115,sd_prod=tabl_intsp, DIMENSION =SIMP(statut='f',typ='I',defaut= 1 ), - PAR_FONCTION =FACT(statut='f',min=1,max='**', + 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',min=1,max='**', + 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' ), @@ -7046,7 +7234,7 @@ DEFI_INTE_SPEC=OPER(nom="DEFI_INTE_SPEC",op= 115,sd_prod=tabl_intsp, 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',min=1,max='**', + 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' ), @@ -7062,7 +7250,8 @@ DEFI_INTE_SPEC=OPER(nom="DEFI_INTE_SPEC",op= 115,sd_prod=tabl_intsp, TITRE =SIMP(statut='f',typ='TXM',max='**'), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -7084,7 +7273,7 @@ DEFI_INTERF_DYNA=OPER(nom="DEFI_INTERF_DYNA",op= 98,sd_prod=interf_dyna_clas, docu="U4.64.01-f",reentrant='n', UIinfo={"groupes":("Matrices/vecteurs",)}, NUME_DDL =SIMP(statut='o',typ=nume_ddl ), - INTERFACE =FACT(statut='o',min=1,max='**', + INTERFACE =FACT(statut='o',max='**', regles=(ENSEMBLE('NOM','TYPE'), # erreur doc U sur la condition qui suit UN_PARMI('NOEUD','GROUP_NO'),), @@ -7098,7 +7287,8 @@ DEFI_INTERF_DYNA=OPER(nom="DEFI_INTERF_DYNA",op= 98,sd_prod=interf_dyna_clas, FREQ =SIMP(statut='f',typ='R',defaut= 1.), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -7125,7 +7315,7 @@ DEFI_LIST_ENTI=OPER(nom="DEFI_LIST_ENTI",op=22,sd_prod=listis, EXCLUS('VALE','INTERVALLE'),), VALE =SIMP(statut='f',typ='I',max='**'), DEBUT =SIMP(statut='f',typ='I'), - INTERVALLE =FACT(statut='f',min=1,max='**', + 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,), @@ -7134,7 +7324,8 @@ DEFI_LIST_ENTI=OPER(nom="DEFI_LIST_ENTI",op=22,sd_prod=listis, INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -7162,7 +7353,7 @@ DEFI_LIST_REEL=OPER(nom="DEFI_LIST_REEL",op=24,sd_prod=listr8, ENSEMBLE('DEBUT','INTERVALLE')), VALE =SIMP(statut='f',typ='R',max='**'), DEBUT =SIMP(statut='f',typ='R'), - INTERVALLE =FACT(statut='f',min=1,max='**', + INTERVALLE =FACT(statut='f',max='**', regles=(UN_PARMI('NOMBRE','PAS'),), JUSQU_A =SIMP(statut='o',typ='R'), NOMBRE =SIMP(statut='f',typ='I'), @@ -7171,7 +7362,8 @@ DEFI_LIST_REEL=OPER(nom="DEFI_LIST_REEL",op=24,sd_prod=listr8, INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -7194,7 +7386,7 @@ DEFI_MAILLAGE=OPER(nom="DEFI_MAILLAGE",op= 88,sd_prod=maillage, fr="Définition d un nouveau maillage à partir de macro éléments", docu="U4.23.01-f",reentrant='n', UIinfo={"groupes":("Maillage",)}, - DEFI_MAILLE =FACT(statut='o',min=1,max='**', + DEFI_MAILLE =FACT(statut='o',max='**', MACR_ELEM_STAT =SIMP(statut='o',typ=macr_elem_stat,max='**' ), MAILLE =SIMP(statut='f',typ=ma,max='**'), TRAN =SIMP(statut='f',typ='R',max=3), @@ -7203,14 +7395,14 @@ DEFI_MAILLAGE=OPER(nom="DEFI_MAILLAGE",op= 88,sd_prod=maillage, CENTRE =SIMP(statut='f',typ='R',max=3), ), ), - RECO_GLOBAL =FACT(statut='f',min=1,max='**', + RECO_GLOBAL =FACT(statut='f',max='**', regles=(UN_PARMI('TOUT','MAILLE'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), 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_MAILLE =FACT(statut='f',min=1,max='**', + RECO_MAILLE =FACT(statut='f',max='**', 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") ), @@ -7219,7 +7411,7 @@ DEFI_MAILLAGE=OPER(nom="DEFI_MAILLAGE",op= 88,sd_prod=maillage, PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), ), ), - DEFI_NOEUD =FACT(statut='f',min=1,max='**', + 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" ), @@ -7234,7 +7426,7 @@ DEFI_MAILLAGE=OPER(nom="DEFI_MAILLAGE",op= 88,sd_prod=maillage, NOEUD_FIN =SIMP(statut='o',typ=no), ), ), - DEFI_GROUP_NO =FACT(statut='f',min=1,max='**', + DEFI_GROUP_NO =FACT(statut='f',max='**', regles=(UN_PARMI('TOUT','MAILLE'), AU_MOINS_UN('INDEX','GROUP_NO_FIN'), ENSEMBLE('GROUP_NO_INIT','GROUP_NO_FIN'),), @@ -7250,7 +7442,8 @@ DEFI_MAILLAGE=OPER(nom="DEFI_MAILLAGE",op= 88,sd_prod=maillage, GROUP_NO_FIN =SIMP(statut='f',typ=grno), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -7301,7 +7494,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, # # comportement élastique # - ELAS =FACT(statut='f',min=0,max=1, + ELAS =FACT(statut='f',min=0, 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'), @@ -7310,7 +7503,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, AMOR_BETA =SIMP(statut='f',typ='R'), AMOR_HYST =SIMP(statut='f',typ='R'), ), - ELAS_FO =FACT(statut='f',min=0,max=1, + ELAS_FO =FACT(statut='f',min=0, regles=(PRESENT_PRESENT('ALPHA','TEMP_DEF_ALPHA'),), E =SIMP(statut='o',typ=(fonction,formule)), NU =SIMP(statut='o',typ=(fonction,formule)), @@ -7329,7 +7522,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, VERI_P3 =SIMP(statut='c',typ='TXM',defaut="HYDR",into=("HYDR",) ), VERI_P4 =SIMP(statut='c',typ='TXM',defaut="SECH",into=("SECH",) ), ), - ELAS_FLUI =FACT(statut='f',min=0,max=1, + ELAS_FLUI =FACT(statut='f',min=0, E =SIMP(statut='o',typ='R'), NU =SIMP(statut='o',typ='R'), RHO =SIMP(statut='o',typ='R'), @@ -7338,7 +7531,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, COEF_MASS_AJOU =SIMP(statut='o',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="ABSC",into=("ABSC",) ), ), - ELAS_ISTR =FACT(statut='f',min=0,max=1, + ELAS_ISTR =FACT(statut='f',min=0, E_L =SIMP(statut='o',typ='R'), E_N =SIMP(statut='o',typ='R'), NU_LT =SIMP(statut='o',typ='R'), @@ -7348,7 +7541,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, ALPHA_L =SIMP(statut='f',typ='R',defaut= 0.E+0 ), ALPHA_N =SIMP(statut='f',typ='R',defaut= 0.E+0 ), ), - ELAS_ISTR_FO =FACT(statut='f',min=0,max=1, + ELAS_ISTR_FO =FACT(statut='f',min=0, regles=( PRESENT_PRESENT('ALPHA_L','TEMP_DEF_ALPHA'), PRESENT_PRESENT('ALPHA_N','TEMP_DEF_ALPHA'), @@ -7365,7 +7558,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, ALPHA_N =SIMP(statut='f',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP","INST")), ), - ELAS_ORTH =FACT(statut='f',min=0,max=1, + ELAS_ORTH =FACT(statut='f',min=0, E_L =SIMP(statut='o',typ='R'), E_T =SIMP(statut='o',typ='R'), E_N =SIMP(statut='f',typ='R'), @@ -7385,7 +7578,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, YC =SIMP(statut='f',typ='R',defaut= 1. ), S_LT =SIMP(statut='f',typ='R',defaut= 1. ), ), - ELAS_ORTH_FO =FACT(statut='f',min=0,max=1, + ELAS_ORTH_FO =FACT(statut='f',min=0, regles=( PRESENT_PRESENT('ALPHA_L','TEMP_DEF_ALPHA'), PRESENT_PRESENT('ALPHA_N','TEMP_DEF_ALPHA'), @@ -7408,7 +7601,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, ALPHA_N =SIMP(statut='f',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP","INST",) ), ), - ELAS_THM =FACT(statut='f',min=0,max=1, + ELAS_THM =FACT(statut='f',min=0, RHO_S =SIMP(statut='o',typ='R'), UN_SUR_KS =SIMP(statut='o',typ='R'), E =SIMP(statut='f',typ='R'), @@ -7417,7 +7610,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, ALPHA_S =SIMP(statut='f',typ='R'), ALPHA_D =SIMP(statut='f',typ='R'), ), - SURF_ETAT_SATU =FACT(statut='f',min=0,max=1, + SURF_ETAT_SATU =FACT(statut='f',min=0, E_CHAR =SIMP(statut='o',typ='R'), E_DECHAR =SIMP(statut='o',typ='R'), XN =SIMP(statut='f',typ='R'), @@ -7434,7 +7627,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, COHE =SIMP(statut='o',typ='R'), RESI_TRAC =SIMP(statut='o',typ='R'), ), - CAM_CLAY_THM =FACT(statut='f',min=0,max=1, + CAM_CLAY_THM =FACT(statut='f',min=0, NU =SIMP(statut='f',typ='R'), LAMBDA =SIMP(statut='o',typ='R'), KAPA =SIMP(statut='o',typ='R'), @@ -7450,7 +7643,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, ALPHA3_PC =SIMP(statut='f',typ='R'), ALPHA_S =SIMP(statut='f',typ='R'), ), - SURF_ETAT_NSAT =FACT(statut='f',min=0,max=1, + SURF_ETAT_NSAT =FACT(statut='f',min=0, E_CHAR =SIMP(statut='o',typ='R'), E_DECHAR =SIMP(statut='o',typ='R'), XN =SIMP(statut='f',typ='R'), @@ -7474,7 +7667,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, C_SURF_SATU =SIMP(statut='f',typ='R'), D_SURF_SATU =SIMP(statut='f',typ='R'), ), - ELAS_COQUE =FACT(statut='f',min=0,max=1, + ELAS_COQUE =FACT(statut='f',min=0, 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',), @@ -7530,7 +7723,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, RHO =SIMP(statut='f',typ='R'), ALPHA =SIMP(statut='f',typ='R'), ), - ELAS_COQUE_FO =FACT(statut='f',min=0,max=1, + ELAS_COQUE_FO =FACT(statut='f',min=0, 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',), @@ -7586,11 +7779,11 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, ALPHA =SIMP(statut='f',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP","INST") ), ), - APPUI_ELAS =FACT(statut='f',min=0,max=1, + APPUI_ELAS =FACT(statut='f',min=0, E_N =SIMP(statut='o',typ='R'), E_TAN =SIMP(statut='f',typ='R',defaut= 0.E+0), ), - CABLE =FACT(statut='f',min=0,max=1, + CABLE =FACT(statut='f',min=0, E =SIMP(statut='o',typ='R'), EC_SUR_E =SIMP(statut='f',typ='R',defaut= 1.E-4 ), RHO =SIMP(statut='f',typ='R'), @@ -7601,41 +7794,41 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, # # comportement mécanique non linéaire # - TRACTION =FACT(statut='f',min=0,max=1, + TRACTION =FACT(statut='f',min=0, SIGM =SIMP(statut='o',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="EPSI",into=("EPSI",) ), VERI_P2 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ), VERI_P3 =SIMP(statut='c',typ='TXM',defaut="HYDR",into=("HYDR",) ), VERI_P4 =SIMP(statut='c',typ='TXM',defaut="SECH",into=("SECH",) ), ), - ECRO_LINE =FACT(statut='f',min=0,max=1, + ECRO_LINE =FACT(statut='f',min=0, D_SIGM_EPSI =SIMP(statut='o',typ='R'), SY =SIMP(statut='o',typ='R'), ), - ECRO_LINE_FO =FACT(statut='f',min=0,max=1, + ECRO_LINE_FO =FACT(statut='f',min=0, D_SIGM_EPSI =SIMP(statut='o',typ=(fonction,formule)), SY =SIMP(statut='o',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ), ), - BETON_ECRO_LINE =FACT(statut='f',min=0,max=1, + BETON_ECRO_LINE =FACT(statut='f',min=0, D_SIGM_EPSI =SIMP(statut='o',typ='R'), SYT =SIMP(statut='o',typ='R'), SYC =SIMP(statut='f',typ='R'), ), - PRAGER =FACT(statut='f',min=0,max=1, + PRAGER =FACT(statut='f',min=0, C =SIMP(statut='o',typ='R'), ), - PRAGER_FO =FACT(statut='f',min=0,max=1, + PRAGER_FO =FACT(statut='f',min=0, C =SIMP(statut='o',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ), ), - ECRO_FLEJOU =FACT(statut='f',min=0,max=1, + ECRO_FLEJOU =FACT(statut='f',min=0, 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',min=0,max=1, + TAHERI =FACT(statut='f',min=0, R_0 =SIMP(statut='o',typ='R'), ALPHA =SIMP(statut='o',typ='R'), M =SIMP(statut='o',typ='R'), @@ -7645,7 +7838,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, C_INF =SIMP(statut='o',typ='R'), S =SIMP(statut='o',typ='R'), ), - TAHERI_FO =FACT(statut='f',min=0,max=1, + TAHERI_FO =FACT(statut='f',min=0, R_0 =SIMP(statut='o',typ=(fonction,formule)), ALPHA =SIMP(statut='o',typ=(fonction,formule)), M =SIMP(statut='o',typ=(fonction,formule)), @@ -7656,7 +7849,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, S =SIMP(statut='o',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ), ), - ROUSSELIER =FACT(statut='f',min=0,max=1, + ROUSSELIER =FACT(statut='f',min=0, D =SIMP(statut='o',typ='R'), SIGM_1 =SIMP(statut='o',typ='R'), PORO_INIT =SIMP(statut='o',typ='R'), @@ -7666,7 +7859,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, D_SIGM_EPSI_NORM=SIMP(statut='f',typ='R',defaut= 1. ), AN =SIMP(statut='f',typ='R',defaut= 0. ), ), - ROUSSELIER_FO =FACT(statut='f',min=0,max=1, + ROUSSELIER_FO =FACT(statut='f',min=0, D =SIMP(statut='o',typ=(fonction,formule)), SIGM_1 =SIMP(statut='o',typ=(fonction,formule)), PORO_INIT =SIMP(statut='o',typ=(fonction,formule)), @@ -7677,12 +7870,12 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, AN =SIMP(statut='f',typ='R',defaut= 0. ), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ), ), - ROUSS_VISC =FACT(statut='f',min=0,max=1, + ROUSS_VISC =FACT(statut='f',min=0, SIGM_0 =SIMP(statut='o',typ='R'), EPSI_0 =SIMP(statut='o',typ='R'), M =SIMP(statut='o',typ='R'), ), - CHABOCHE =FACT(statut='f',min=0,max=1, + CHABOCHE =FACT(statut='f',min=0, R_I =SIMP(statut='o',typ='R'), R_0 =SIMP(statut='o',typ='R'), B =SIMP(statut='o',typ='R'), @@ -7693,7 +7886,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, C1 =SIMP(statut='o',typ='R'), C2 =SIMP(statut='o',typ='R'), ), - CIN1_CHAB =FACT(statut='f',min=0,max=1, + CIN1_CHAB =FACT(statut='f',min=0, R_0 =SIMP(statut='o',typ='R'), R_I =SIMP(statut='f',typ='R'), B =SIMP(statut='f',typ='R',defaut= 0.0E+0), @@ -7703,7 +7896,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, G_0 =SIMP(statut='o',typ='R'), A_I =SIMP(statut='f',typ='R',defaut= 1.0E+0), ), - CIN1_CHAB_FO =FACT(statut='f',min=0,max=1, + CIN1_CHAB_FO =FACT(statut='f',min=0, R_0 =SIMP(statut='o',typ=(fonction,formule)), R_I =SIMP(statut='o',typ=(fonction,formule)), B =SIMP(statut='o',typ=(fonction,formule)), @@ -7714,7 +7907,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, A_I =SIMP(statut='o',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)), ), - CIN2_CHAB =FACT(statut='f',min=0,max=1, + CIN2_CHAB =FACT(statut='f',min=0, R_0 =SIMP(statut='o',typ='R'), R_I =SIMP(statut='f',typ='R'), B =SIMP(statut='f',typ='R',defaut= 0.E+0 ), @@ -7726,7 +7919,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, G2_0 =SIMP(statut='o',typ='R'), A_I =SIMP(statut='f',typ='R',defaut= 1.E+0 ), ), - CIN2_CHAB_FO =FACT(statut='f',min=0,max=1, + CIN2_CHAB_FO =FACT(statut='f',min=0, R_0 =SIMP(statut='o',typ=(fonction,formule)), R_I =SIMP(statut='o',typ=(fonction,formule)), B =SIMP(statut='o',typ=(fonction,formule)), @@ -7739,7 +7932,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, A_I =SIMP(statut='o',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ), ), - VISCOCHAB =FACT(statut='f',min=0,max=1, + VISCOCHAB =FACT(statut='f',min=0, K_0 =SIMP(statut='o',typ='R'), A_K =SIMP(statut='o',typ='R'), A_R =SIMP(statut='o',typ='R'), @@ -7766,7 +7959,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, G2_0 =SIMP(statut='o',typ='R'), A_I =SIMP(statut='o',typ='R'), ), - VISCOCHAB_FO =FACT(statut='f',min=0,max=1, + VISCOCHAB_FO =FACT(statut='f',min=0, K_0 =SIMP(statut='o',typ=(fonction,formule)), A_K =SIMP(statut='o',typ=(fonction,formule)), A_R =SIMP(statut='o',typ=(fonction,formule)), @@ -7794,7 +7987,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, A_I =SIMP(statut='o',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ), ), - POLY_CFC =FACT(statut='f',min=0,max=1, + POLY_CFC =FACT(statut='f',min=0, TEXTURE =SIMP(statut='o',typ=(tabl_texture) ), DL =SIMP(statut='f',typ='R'), DA =SIMP(statut='f',typ='R'), @@ -7810,7 +8003,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, D1 =SIMP(statut='o',typ='R'), C2 =SIMP(statut='o',typ='R'), ), - POLY_CFC_FO =FACT(statut='f',min=0,max=1, + POLY_CFC_FO =FACT(statut='f',min=0, TEXTURE =SIMP(statut='o',typ=(tabl_texture) ), DL =SIMP(statut='o',typ=(fonction,formule)), DA =SIMP(statut='o',typ=(fonction,formule)), @@ -7827,40 +8020,40 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, C2 =SIMP(statut='o',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ), ), - LEMAITRE =FACT(statut='f',min=0,max=1, + LEMAITRE =FACT(statut='f',min=0, 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 ), ), - ZIRC_CYRA2 =FACT(statut='f',min=0,max=1, + ZIRC_CYRA2 =FACT(statut='f',min=0, EPSI_FAB =SIMP(statut='o',typ=(fonction,formule)), TEMP_RECUIT =SIMP(statut='o',typ=(fonction,formule)), FLUX_PHI =SIMP(statut='o',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="INST",into=("INST",) ), ), - ZIRC_EPRI =FACT(statut='f',min=0,max=1, + ZIRC_EPRI =FACT(statut='f',min=0, FLUX_PHI =SIMP(statut='o',typ='R'), R_P =SIMP(statut='o',typ='R'), THETA_MAX =SIMP(statut='o',typ='R'), ), - LEMAITRE_FO =FACT(statut='f',min=0,max=1, + LEMAITRE_FO =FACT(statut='f',min=0, N =SIMP(statut='o',typ=(fonction,formule)), UN_SUR_K =SIMP(statut='o',typ=(fonction,formule)), UN_SUR_M =SIMP(statut='o',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ), ), - GRAN_IRRA =FACT(statut='f',min=0,max=1, + GRAN_IRRA =FACT(statut='f',min=0, A =SIMP(statut='f',typ='R',defaut= 0.E+0), B =SIMP(statut='f',typ='R',defaut= 0.E+0), S =SIMP(statut='f',typ='R',defaut= 0.E+0), ), - FLU_IRRA =FACT(statut='f',min=0,max=1, + FLU_IRRA =FACT(statut='f',min=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 ), ), - OHNO =FACT(statut='f',min=0,max=1, + OHNO =FACT(statut='f',min=0, R_I =SIMP(statut='o',typ='R'), R_0 =SIMP(statut='o',typ='R'), B =SIMP(statut='o',typ='R'), @@ -7881,7 +8074,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, M4 =SIMP(statut='o',typ='R'), M5 =SIMP(statut='o',typ='R'), ), - OHNO_FO =FACT(statut='f',min=0,max=1, + OHNO_FO =FACT(statut='f',min=0, R_I =SIMP(statut='o',typ=(fonction,formule)), R_0 =SIMP(statut='o',typ=(fonction,formule)), B =SIMP(statut='o',typ=(fonction,formule)), @@ -7903,7 +8096,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, M5 =SIMP(statut='o',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ), ), - LMARC =FACT(statut='f',min=0,max=1, + LMARC =FACT(statut='f',min=0, DE_0 =SIMP(statut='o',typ='R'), R_0 =SIMP(statut='o',typ='R'), N =SIMP(statut='o',typ='R'), @@ -7934,7 +8127,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, R33 =SIMP(statut='o',typ='R'), R66 =SIMP(statut='o',typ='R'), ), - LMARC_FO =FACT(statut='f',min=0,max=1, + LMARC_FO =FACT(statut='f',min=0, DE_0 =SIMP(statut='o',typ=(fonction,formule)), R_0 =SIMP(statut='o',typ=(fonction,formule)), N =SIMP(statut='o',typ=(fonction,formule)), @@ -7966,7 +8159,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, R66 =SIMP(statut='o',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ), ), - VMIS_POUTRE =FACT(statut='f',min=0,max=1, + VMIS_POUTRE =FACT(statut='f',min=0, NP =SIMP(statut='o',typ='R'), MEY =SIMP(statut='o',typ='R'), MPY =SIMP(statut='o',typ='R'), @@ -7978,7 +8171,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, CBZ =SIMP(statut='o',typ='R'), MPX =SIMP(statut='o',typ='R'), ), - VMIS_POUTRE_FO =FACT(statut='f',min=0,max=1, + VMIS_POUTRE_FO =FACT(statut='f',min=0, NP =SIMP(statut='o',typ=(fonction,formule)), MEY =SIMP(statut='o',typ=(fonction,formule)), MPY =SIMP(statut='o',typ=(fonction,formule)), @@ -7991,14 +8184,14 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, MPX =SIMP(statut='o',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ), ), - ARME =FACT(statut='f',min=0,max=1, + ARME =FACT(statut='f',min=0, KYE =SIMP(statut='o',typ='R'), DLE =SIMP(statut='o',typ='R'), KYP =SIMP(statut='o',typ='R'), DLP =SIMP(statut='o',typ='R'), KYG =SIMP(statut='o',typ='R'), ), - ASSE_CORN =FACT(statut='f',min=0,max=1, + ASSE_CORN =FACT(statut='f',min=0, NU_1 =SIMP(statut='o',typ='R'), MU_1 =SIMP(statut='o',typ='R'), DXU_1 =SIMP(statut='o',typ='R'), @@ -8014,7 +8207,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, KRX =SIMP(statut='o',typ='R'), KRZ =SIMP(statut='o',typ='R'), ), - DIS_CONTACT =FACT(statut='f',min=0,max=1, + DIS_CONTACT =FACT(statut='f',min=0, RIGI_NOR =SIMP(statut='f',typ='R' ), DIST_1 =SIMP(statut='f',typ='R',defaut= 0.E+0 ), DIST_2 =SIMP(statut='f',typ='R',defaut= 0.E+0 ), @@ -8025,16 +8218,27 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, JEU =SIMP(statut='f',typ='R',defaut= 0.E+0 ), KT_ULTM =SIMP(statut='f',typ='R',defaut= 0.E+0 ), EFFO_N_INIT =SIMP(statut='f',typ=(fonction,formule)), - regles=(EXCLUS('RIGI_N_FO','RIGI_N_IRRA',),), + regles=(EXCLUS('RIGI_N_FO','RIGI_N_IRRA',), + EXCLUS('RELA_MZ','ANGLE_1'), + PRESENT_PRESENT('ANGLE_1','ANGLE_2','ANGLE_3','ANGLE_4', + 'MOMENT_1','MOMENT_2','MOMENT_3','MOMENT_4'),), RIGI_N_IRRA =SIMP(statut='f',typ=(fonction,formule)), RIGI_N_FO =SIMP(statut='f',typ=(fonction,formule)), RELA_MZ =SIMP(statut='f',typ=(fonction,formule)), + ANGLE_1 =SIMP(statut='f',typ=(fonction,formule)), + ANGLE_2 =SIMP(statut='f',typ=(fonction,formule)), + ANGLE_3 =SIMP(statut='f',typ=(fonction,formule)), + ANGLE_4 =SIMP(statut='f',typ=(fonction,formule)), + MOMENT_1 =SIMP(statut='f',typ=(fonction,formule)), + MOMENT_2 =SIMP(statut='f',typ=(fonction,formule)), + MOMENT_3 =SIMP(statut='f',typ=(fonction,formule)), + MOMENT_4 =SIMP(statut='f',typ=(fonction,formule)), C_PRAGER_MZ =SIMP(statut='f',typ='R',defaut= 0.E+0 ), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="DRZ",into=("DRZ",) ), VERI_P2 =SIMP(statut='c',typ='TXM',defaut="INST",into=("INST",) ), VERI_P3 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ), ), - NADAI_B =FACT(statut='f',min=0,max=1, + NADAI_B =FACT(statut='f',min=0, F_C =SIMP(statut='o',typ='R'), F_T =SIMP(statut='o',typ='R'), CRIT_E_C =SIMP(statut='o',typ='R'), @@ -8043,7 +8247,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, EPSI_R_T =SIMP(statut='o',typ='R'), FAC_T_C =SIMP(statut='o',typ='R'), ), - BETON_DOUBLE_DP =FACT(statut='f',min=0,max=1, + BETON_DOUBLE_DP =FACT(statut='f',min=0, F_C =SIMP(statut='o',typ=(fonction,formule)), F_T =SIMP(statut='o',typ=(fonction,formule)), COEF_BIAX =SIMP(statut='o',typ=(fonction,formule)), @@ -8058,7 +8262,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, VERI_P3 =SIMP(statut='c',typ='TXM',defaut="HYDR",into=("HYDR",) ), VERI_P4 =SIMP(statut='c',typ='TXM',defaut="SECH",into=("SECH",) ), ), - LABORD_1D=FACT(statut='f',min=0 ,max=1, + LABORD_1D=FACT(statut='f',min=0 , Y01 =SIMP(statut='o',typ='R'), Y02 =SIMP(statut='o',typ='R'), A1 =SIMP(statut='o',typ='R'), @@ -8069,7 +8273,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, BETA2 =SIMP(statut='o',typ='R'), SIGF =SIMP(statut='o',typ='R'), ), - MAZARS=FACT(statut='f',min=0 ,max=1, + MAZARS=FACT(statut='f',min=0 , EPSD0 =SIMP(statut='o',typ='R'), BETA =SIMP(statut='o',typ='R'), AC =SIMP(statut='o',typ='R'), @@ -8077,7 +8281,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, AT =SIMP(statut='o',typ='R'), BT =SIMP(statut='o',typ='R'), ), - MAZARS_FO=FACT(statut='f',min=0 ,max=1, + MAZARS_FO=FACT(statut='f',min=0 , EPSD0 =SIMP(statut='o',typ=(fonction,formule)), BETA =SIMP(statut='o',typ='R'), AC =SIMP(statut='o',typ=(fonction,formule)), @@ -8086,7 +8290,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, BT =SIMP(statut='o',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ), ), - VENDOCHAB =FACT(statut='f',min=0,max=1, + VENDOCHAB =FACT(statut='f',min=0, S_VP =SIMP(statut='o',typ='R'), SEDVP1 =SIMP(statut='o',typ='R'), SEDVP2 =SIMP(statut='o',typ='R'), @@ -8097,7 +8301,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, A_D =SIMP(statut='o',typ='R'), K_D =SIMP(statut='o',typ='R'), ), - VENDOCHAB_FO =FACT(statut='f',min=0,max=1, + VENDOCHAB_FO =FACT(statut='f',min=0, S_VP =SIMP(statut='o',typ=(fonction,formule)), SEDVP1 =SIMP(statut='o',typ=(fonction,formule)), SEDVP2 =SIMP(statut='o',typ=(fonction,formule)), @@ -8110,7 +8314,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ), VERI_P2 =SIMP(statut='c',typ='TXM',defaut="X",into=("X",) ), ), - PINTO_MENEGOTTO =FACT(statut='f',min=0,max=1, + PINTO_MENEGOTTO =FACT(statut='f',min=0, SY =SIMP(statut='o',typ='R'), EPSI_ULTM =SIMP(statut='o',typ='R'), SIGM_ULTM =SIMP(statut='o',typ='R'), @@ -8124,18 +8328,18 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, C_PM =SIMP(statut='f',typ='R',defaut= 0.5 ), A_PM =SIMP(statut='f',typ='R',defaut= 6.0E-3 ), ), - BPEL_BETON =FACT(statut='f',min=0,max=1, + BPEL_BETON =FACT(statut='f',min=0, PERT_FLUA =SIMP(statut='f',typ='R',defaut= 0.E+0 ), PERT_RETR =SIMP(statut='f',typ='R',defaut= 0.E+0 ), ), - BPEL_ACIER =FACT(statut='f',min=0,max=1, + BPEL_ACIER =FACT(statut='f',min=0, RELAX_1000 =SIMP(statut='f',typ='R',defaut= 0.E+0 ), MU0_RELAX =SIMP(statut='f',typ='R',defaut= 0.E+0 ), SY =SIMP(statut='o',typ='R'), FROT_COURB =SIMP(statut='o',typ='R'), FROT_LINE =SIMP(statut='o',typ='R'), ), - CAM_CLAY =FACT(statut='f',min=0,max=1, + CAM_CLAY =FACT(statut='f',min=0, PORO =SIMP(statut='o',typ='R'), LAMBDA =SIMP(statut='o',typ='R'), KAPA =SIMP(statut='o',typ='R'), @@ -8143,7 +8347,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, PRES_CRIT =SIMP(statut='o',typ='R'), PA =SIMP(statut='o',typ='R'), ), - CJS =FACT(statut='f',min=0,max=1, + CJS =FACT(statut='f',min=0, BETA_CJS =SIMP(statut='o',typ='R'), RM =SIMP(statut='o',typ='R'), N_CJS =SIMP(statut='f',typ='R',defaut= 0.E+0 ), @@ -8159,13 +8363,13 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, Q_INIT =SIMP(statut='f',typ='R',defaut= 0.E+0 ), R_INIT =SIMP(statut='f',typ='R',defaut= 0.E+0 ), ), - ECRO_ASYM_LINE =FACT(statut='f',min=0,max=1, + ECRO_ASYM_LINE =FACT(statut='f',min=0, DC_SIGM_EPSI =SIMP(statut='o',typ='R'), SY_C =SIMP(statut='o',typ='R'), DT_SIGM_EPSI =SIMP(statut='o',typ='R'), SY_T =SIMP(statut='o',typ='R'), ), - GRANGER_FP =FACT(statut='f',min=0,max=1, + GRANGER_FP =FACT(statut='f',min=0, J1 =SIMP(statut='f',typ='R'), J2 =SIMP(statut='f',typ='R'), J3 =SIMP(statut='f',typ='R'), @@ -8184,15 +8388,15 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, TAUX_8 =SIMP(statut='f',typ='R'), QSR_K =SIMP(statut='f',typ='R'), ), - V_GRANGER_FP =FACT(statut='f',min=0,max=1, + V_GRANGER_FP =FACT(statut='f',min=0, QSR_VEIL =SIMP(statut='f',typ='R'), FONC_V =SIMP(statut='f',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="INST",into=("INST",) ), ), - BAZANT_FD =FACT(statut='f',min=0,max=1, + BAZANT_FD =FACT(statut='f',min=0, LAM_VISC =SIMP(statut='o',typ='R'), ), - BETON_UMLV_FP =FACT(statut='f',min=0 ,max=1, + BETON_UMLV_FP =FACT(statut='f',min=0 , K_RS =SIMP(statut='o',typ='R'), ETA_RS =SIMP(statut='o',typ='R'), K_IS =SIMP(statut='o',typ='R'), @@ -8204,14 +8408,14 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, # # comportement thermique # - THER_NL =FACT(statut='f',min=0,max=1, + THER_NL =FACT(statut='f',min=0, regles=(UN_PARMI('BETA','RHO_CP', ),), LAMBDA =SIMP(statut='o',typ=(fonction,formule)), BETA =SIMP(statut='f',typ=(fonction,formule)), RHO_CP =SIMP(statut='f',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ), ), - THER_HYDR =FACT(statut='f',min=0,max=1, + THER_HYDR =FACT(statut='f',min=0, LAMBDA =SIMP(statut='o',typ=(fonction,formule)), BETA =SIMP(statut='f',typ=(fonction,formule)), AFFINITE =SIMP(statut='o',typ=(fonction,formule)), @@ -8220,22 +8424,22 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("HYDR",) ), VERI_P2 =SIMP(statut='c',typ='TXM',defaut="HYDR",into=("HYDR",) ), ), - THER =FACT(statut='f',min=0,max=1, + THER =FACT(statut='f',min=0, LAMBDA =SIMP(statut='o',typ='R'), RHO_CP =SIMP(statut='f',typ='R'), ), - THER_FO =FACT(statut='f',min=0,max=1, + THER_FO =FACT(statut='f',min=0, LAMBDA =SIMP(statut='o',typ=(fonction,formule)), RHO_CP =SIMP(statut='f',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="INST",into=("INST",) ), ), - THER_ORTH =FACT(statut='f',min=0,max=1, + THER_ORTH =FACT(statut='f',min=0, LAMBDA_L =SIMP(statut='o',typ='R'), LAMBDA_T =SIMP(statut='o',typ='R'), LAMBDA_N =SIMP(statut='f',typ='R'), RHO_CP =SIMP(statut='f',typ='R'), ), - THER_COQUE =FACT(statut='f',min=0,max=1, + THER_COQUE =FACT(statut='f',min=0, COND_LMM =SIMP(statut='o',typ='R'), COND_TMM =SIMP(statut='o',typ='R'), COND_LMP =SIMP(statut='o',typ='R'), @@ -8253,7 +8457,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, CMAS_PP =SIMP(statut='f',typ='R'), CMAS_SI =SIMP(statut='f',typ='R'), ), - THER_COQUE_FO =FACT(statut='f',min=0,max=1, + THER_COQUE_FO =FACT(statut='f',min=0, COND_LMM =SIMP(statut='o',typ=(fonction,formule)), COND_TMM =SIMP(statut='o',typ=(fonction,formule)), COND_LMP =SIMP(statut='o',typ=(fonction,formule)), @@ -8271,22 +8475,22 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, CMAS_PP =SIMP(statut='f',typ=(fonction,formule)), CMAS_SI =SIMP(statut='f',typ=(fonction,formule)), ), - SECH_GRANGER =FACT(statut='f',min=0,max=1, + SECH_GRANGER =FACT(statut='f',min=0, A =SIMP(statut='o',typ='R'), B =SIMP(statut='o',typ='R'), QSR_K =SIMP(statut='o',typ='R'), TEMP_0_C =SIMP(statut='o',typ='R'), ), - SECH_MENSI =FACT(statut='f',min=0,max=1, + SECH_MENSI =FACT(statut='f',min=0, A =SIMP(statut='o',typ='R'), B =SIMP(statut='o',typ='R'), ), - SECH_BAZANT =FACT(statut='f',min=0,max=1, + SECH_BAZANT =FACT(statut='f',min=0, D1 =SIMP(statut='o',typ='R'), ALPHA_BAZANT =SIMP(statut='o',typ='R'), N =SIMP(statut='o',typ='R'), ), - SECH_NAPPE =FACT(statut='f',min=0,max=1, + SECH_NAPPE =FACT(statut='f',min=0, FONCTION =SIMP(statut='o',typ=(nappe,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ), VERI_P2 =SIMP(statut='c',typ='TXM',defaut="TSEC",into=("TSEC",) ), @@ -8294,7 +8498,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, # # comportement métallurgique # - META_ACIER =FACT(statut='f',min=0,max=1, + META_ACIER =FACT(statut='f',min=0, TRC =SIMP(statut='o',typ=(tabl_trc) ), AR3 =SIMP(statut='o',typ='R'), ALPHA =SIMP(statut='o',typ='R'), @@ -8308,7 +8512,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, D10 =SIMP(statut='f',typ='R'), WSR_K =SIMP(statut='f',typ='R'), ), - META_ZIRC =FACT(statut='f',min=0,max=1, + META_ZIRC =FACT(statut='f',min=0, TDEQ =SIMP(statut='o',typ='R'), N =SIMP(statut='o',typ='R'), K =SIMP(statut='o',typ='R'), @@ -8320,14 +8524,14 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, AR =SIMP(statut='o',typ='R'), BR =SIMP(statut='o',typ='R'), ), - DURT_META =FACT(statut='f',min=0,max=1, + DURT_META =FACT(statut='f',min=0, F1_DURT =SIMP(statut='o',typ='R'), F2_DURT =SIMP(statut='o',typ='R'), F3_DURT =SIMP(statut='o',typ='R'), F4_DURT =SIMP(statut='o',typ='R'), C_DURT =SIMP(statut='o',typ='R'), ), - ELAS_META =FACT(statut='f',min=0,max=1, + ELAS_META =FACT(statut='f',min=0, E =SIMP(statut='o',typ='R'), NU =SIMP(statut='o',typ='R'), F_ALPHA =SIMP(statut='o',typ='R'), @@ -8349,7 +8553,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, S_VP_MELANGE =SIMP(statut='f',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="META",into=("META",)), ), - ELAS_META_FO =FACT(statut='f',min=0,max=1, + ELAS_META_FO =FACT(statut='f',min=0, regles=( PRESENT_PRESENT('F_ALPHA','TEMP_DEF_ALPHA'), PRESENT_PRESENT('C_ALPHA','TEMP_DEF_ALPHA'), @@ -8377,7 +8581,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)), VERI_P2 =SIMP(statut='c',typ='TXM',defaut="META",into=("META",)), ), - META_ECRO_LINE =FACT(statut='f',min=0,max=1, + META_ECRO_LINE =FACT(statut='f',min=0, F1_D_SIGM_EPSI =SIMP(statut='f',typ=(fonction,formule)), F2_D_SIGM_EPSI =SIMP(statut='f',typ=(fonction,formule)), F3_D_SIGM_EPSI =SIMP(statut='f',typ=(fonction,formule)), @@ -8385,7 +8589,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, C_D_SIGM_EPSI =SIMP(statut='f',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)), ), - META_TRACTION =FACT(statut='f',min=0,max=1, + META_TRACTION =FACT(statut='f',min=0, SIGM_F1 =SIMP(statut='f',typ=(fonction,formule)), SIGM_F2 =SIMP(statut='f',typ=(fonction,formule)), SIGM_F3 =SIMP(statut='f',typ=(fonction,formule)), @@ -8394,7 +8598,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, VERI_P1 =SIMP(statut='c',typ='TXM',defaut="EPSI",into=("EPSI",)), VERI_P2 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)), ), - META_VISC_FO =FACT(statut='f',min=0,max=1, + META_VISC_FO =FACT(statut='f',min=0, F1_ETA =SIMP(statut='f',typ=(fonction,formule)), F1_N =SIMP(statut='f',typ=(fonction,formule)), F1_C =SIMP(statut='f',typ=(fonction,formule)), @@ -8417,7 +8621,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, C_M =SIMP(statut='f',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ), ), - META_PT =FACT(statut='f',min=0,max=1, + META_PT =FACT(statut='f',min=0, F1_K =SIMP(statut='f',typ='R'), F2_K =SIMP(statut='f',typ='R'), F3_K =SIMP(statut='f',typ='R'), @@ -8429,7 +8633,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ), VERI_P2 =SIMP(statut='c',typ='TXM',defaut="META",into=("META",) ), ), - META_RE =FACT(statut='f',min=0,max=1, + META_RE =FACT(statut='f',min=0, C_F1_THETA =SIMP(statut='f',typ='R'), C_F2_THETA =SIMP(statut='f',typ='R'), C_F3_THETA =SIMP(statut='f',typ='R'), @@ -8442,13 +8646,13 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, # # comportement fluide # - FLUIDE =FACT(statut='f',min=0,max=1, + FLUIDE =FACT(statut='f',min=0, regles=(EXCLUS('CELE_C','CELE_R'),), RHO =SIMP(statut='o',typ='R'), CELE_C =SIMP(statut='f',typ='C'), CELE_R =SIMP(statut='f',typ='R'), ), - PORO_JOINT =FACT(statut='f',min=0,max=1, + PORO_JOINT =FACT(statut='f',min=0, RHO_FLUI =SIMP(statut='o',typ='R'), ENTRO_FLUI =SIMP(statut='o',typ='R'), BIOT_M =SIMP(statut='o',typ='R'), @@ -8460,7 +8664,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, SOURCE_INIT =SIMP(statut='o',typ='R'), OMEGA_0 =SIMP(statut='o',typ='R'), ), - THM_LIQU =FACT(statut='f',min=0,max=1, + THM_LIQU =FACT(statut='f',min=0, RHO =SIMP(statut='o',typ='R'), UN_SUR_K =SIMP(statut='f',typ='R'), ALPHA =SIMP(statut='f',typ='R'), @@ -8472,7 +8676,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, COEF_HENRY =SIMP(statut='f',typ='R'), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)), ), - THM_GAZ =FACT(statut='f',min=0,max=1, + THM_GAZ =FACT(statut='f',min=0, MASS_MOL =SIMP(statut='f',typ='R'), CP =SIMP(statut='f',typ='R'), VISC =SIMP(statut='f',typ=(fonction,formule)), @@ -8481,14 +8685,14 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, D_LAMBDA_TEMP =SIMP(statut='f',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)), ), - THM_VAPE_GAZ =FACT(statut='f',min=0,max=1, + THM_VAPE_GAZ =FACT(statut='f',min=0, MASS_MOL =SIMP(statut='f',typ='R'), CP =SIMP(statut='f',typ='R'), VISC =SIMP(statut='f',typ=(fonction,formule)), D_VISC_TEMP =SIMP(statut='f',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",)), ), - THM_INIT =FACT(statut='f',min=0,max=1, + THM_INIT =FACT(statut='f',min=0, TEMP =SIMP(statut='o',typ='R'), PRE1 =SIMP(statut='o',typ='R'), PRE2 =SIMP(statut='o',typ='R'), @@ -8497,7 +8701,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, DEGR_SATU =SIMP(statut='f',typ='R'), PRES_ATMO =SIMP(statut='f',typ='R'), ), - THM_DIFFU =FACT(statut='f',min=0,max=1, + THM_DIFFU =FACT(statut='f',min=0, R_GAZ =SIMP(statut='o',typ='R'), RHO =SIMP(statut='f',typ='R'), CP =SIMP(statut='f',typ='R'), @@ -8508,6 +8712,8 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, PESA_Y =SIMP(statut='f',typ='R'), PESA_Z =SIMP(statut='f',typ='R'), PERM_IN =SIMP(statut='f',typ=(fonction,formule)), + PERM_END =SIMP(statut='f',typ=(fonction,formule)), + regles=(EXCLUS('PERM_IN','PERM_END'),), PERM_LIQU =SIMP(statut='f',typ=(fonction,formule)), D_PERM_LIQU_SATU=SIMP(statut='f',typ=(fonction,formule)), PERM_GAZ =SIMP(statut='f',typ=(fonction,formule)), @@ -8527,11 +8733,12 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, VERI_P3 =SIMP(statut='c',typ='TXM',defaut="PORO",into=("PORO",) ), VERI_P4 =SIMP(statut='c',typ='TXM',defaut="PGAZ",into=("PGAZ",) ), VERI_P5 =SIMP(statut='c',typ='TXM',defaut="PCAP",into=("PCAP",) ), + VERI_P6 =SIMP(statut='c',typ='TXM',defaut="ENDO",into=("ENDO",) ), ), # # courbes et coefficients associés à la fatigue et au dommage # - FATIGUE =FACT(statut='f',min=0,max=1, + FATIGUE =FACT(statut='f',min=0, regles=(PRESENT_ABSENT('WOHLER','A_BASQUIN','BETA_BASQUIN'), PRESENT_ABSENT('WOHLER','A0','A1','A2','A3','SL'), PRESENT_ABSENT('A_BASQUIN','A0','A1','A2','A3','SL'), @@ -8554,12 +8761,12 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, VERI_P1 =SIMP(statut='c',typ='TXM',defaut="SIGM",into=("SIGM",) ), VERI_P2 =SIMP(statut='c',typ='TXM',defaut="EPSI",into=("EPSI",) ), ), - DOMMA_LEMAITRE =FACT(statut='f',min=0,max=1, + DOMMA_LEMAITRE =FACT(statut='f',min=0, S =SIMP(statut='o',typ=(fonction,formule)), EPSP_SEUIL =SIMP(statut='o',typ='R'), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ), ), - CISA_PLAN_CRIT =FACT(statut='f',min=0,max=1, + CISA_PLAN_CRIT =FACT(statut='f',min=0, CRITERE =SIMP(statut='o',typ='TXM',into=("MATAKE","DANG_VAN") ), b_critere_matake =BLOC(condition="CRITERE=='MATAKE'", @@ -8579,13 +8786,13 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, # # autres comportements ... # - WEIBULL =FACT(statut='f',min=0,max=1, + WEIBULL =FACT(statut='f',min=0, M =SIMP(statut='o',typ='R'), VOLU_REFE =SIMP(statut='o',typ='R'), SIGM_REFE =SIMP(statut='o',typ='R'), SEUIL_EPSP_CUMU =SIMP(statut='f',typ='R',defaut= 1.0E-6), ), - WEIBULL_FO =FACT(statut='f',min=0,max=1, + WEIBULL_FO =FACT(statut='f',min=0, M =SIMP(statut='o',typ='R'), VOLU_REFE =SIMP(statut='o',typ='R'), SIGM_CNV =SIMP(statut='o',typ='R'), @@ -8593,16 +8800,16 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, SEUIL_EPSP_CUMU =SIMP(statut='f',typ='R',defaut= 1.0E-6), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ), ), - NON_LOCAL =FACT(statut='f',min=0,max=1, + NON_LOCAL =FACT(statut='f',min=0, LONG_CARA =SIMP(statut='o',typ='R'), COEF_RIGI_MINI =SIMP(statut='f',typ='R'), ), - RUPT_FRAG =FACT(statut='f',min=0,max=1, + RUPT_FRAG =FACT(statut='f',min=0, GC =SIMP(statut='o',typ='R'), SIGM_C =SIMP(statut='f',typ='R'), SAUT_C =SIMP(statut='f',typ='R'), ), - RCCM =FACT(statut='f',min=0,max=1, + RCCM =FACT(statut='f',min=0, SY_02 =SIMP(statut='f',typ='R'), SM =SIMP(statut='f',typ='R'), SU =SIMP(statut='f',typ='R'), @@ -8611,7 +8818,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, N_KE =SIMP(statut='f',typ='R'), M_KE =SIMP(statut='f',typ='R'), ), - RCCM_FO =FACT(statut='f',min=0,max=1, + RCCM_FO =FACT(statut='f',min=0, SY_02 =SIMP(statut='f',typ=(fonction,formule)), SM =SIMP(statut='f',typ=(fonction,formule)), SU =SIMP(statut='f',typ=(fonction,formule)), @@ -8620,7 +8827,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, M_KE =SIMP(statut='f',typ=(fonction,formule)), VERI_P1 =SIMP(statut='c',typ='TXM',defaut="TEMP",into=("TEMP",) ), ), - LAIGLE =FACT(statut='f',min=0,max=1, + LAIGLE =FACT(statut='f',min=0, GAMMA_ULT =SIMP(statut='o',typ='R'), GAMMA_E =SIMP(statut='o',typ='R'), M_ULT =SIMP(statut='o',typ='R'), @@ -8638,7 +8845,8 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, ), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -8659,26 +8867,27 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater, DEFI_MODELE_GENE=OPER(nom="DEFI_MODELE_GENE",op= 126,sd_prod=modele_gene, docu="U4.65.02-e",reentrant='n', UIinfo={"groupes":("Matrices/vecteurs",)}, - SOUS_STRUC =FACT(statut='o',min=1,max='**', + SOUS_STRUC =FACT(statut='o',max='**', NOM =SIMP(statut='o',typ='TXM' ), MACR_ELEM_DYNA =SIMP(statut='o',typ=macr_elem_dyna ), ANGL_NAUT =SIMP(statut='f',typ='R',max=3), TRANS =SIMP(statut='f',typ='R',max=3), ), - LIAISON =FACT(statut='o',min=1,max='**', + LIAISON =FACT(statut='o',max='**', SOUS_STRUC_1 =SIMP(statut='o',typ='TXM' ), INTERFACE_1 =SIMP(statut='o',typ='TXM' ), SOUS_STRUC_2 =SIMP(statut='o',typ='TXM' ), INTERFACE_2 =SIMP(statut='o',typ='TXM' ), ), - VERIF =FACT(statut='f',min=1,max='**', + VERIF =FACT(statut='f',max='**', # dans la doc U stop_erreur est obligatoire STOP_ERREUR =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -8725,7 +8934,8 @@ DEFI_NAPPE=OPER(nom="DEFI_NAPPE",op= 4,sd_prod=nappe, VERIF =SIMP(statut='f',typ='TXM',into=("CROISSANT",) ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -8778,7 +8988,8 @@ DEFI_OBSTACLE=OPER(nom="DEFI_OBSTACLE",op= 73,sd_prod=obstacle VALE =SIMP(statut='f',typ='R',max='**'), VERIF =SIMP(statut='f',typ='TXM',defaut="FERME"), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -8805,12 +9016,13 @@ DEFI_PARA_SENSI=OPER(nom="DEFI_PARA_SENSI",op= 2,sd_prod=para_sensi, NOM_RESU =SIMP(statut='c',typ='TXM',into=("TOUTRESU",),defaut="TOUTRESU", fr="Nom du concept créé", ang="Name of the concept"), - VALE =SIMP(statut='o',typ='R',max=1, + VALE =SIMP(statut='o',typ='R', fr="Valeur du parametre", ang="Value of the parameter"), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -8835,12 +9047,12 @@ DEFI_SPEC_TURB=OPER(nom="DEFI_SPEC_TURB",op= 145,sd_prod=spectre, 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',max=1, + SPEC_LONG_COR_1 =FACT(statut='f', LONG_COR =SIMP(statut='o',typ='R' ), PROF_VITE_FLUI =SIMP(statut='o',typ=(fonction,formule) ), VISC_CINE =SIMP(statut='o',typ='R' ), ), - SPEC_LONG_COR_2 =FACT(statut='f',max=1, + 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,formule) ), @@ -8848,7 +9060,7 @@ DEFI_SPEC_TURB=OPER(nom="DEFI_SPEC_TURB",op= 145,sd_prod=spectre, 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',max=1, + 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' ), PROF_VITE_FLUI =SIMP(statut='o',typ=(fonction,formule) ), @@ -8858,7 +9070,7 @@ DEFI_SPEC_TURB=OPER(nom="DEFI_SPEC_TURB",op= 145,sd_prod=spectre, PHI0_2 =SIMP(statut='f',typ='R',defaut= 4.E-5 ), BETA_2 =SIMP(statut='f',typ='R',defaut= 3.5 ), ), - SPEC_LONG_COR_4 =FACT(statut='f',max=1, + SPEC_LONG_COR_4 =FACT(statut='f', regles=(ENSEMBLE('BETA','GAMMA'),), LONG_COR =SIMP(statut='o',typ='R' ), PROF_VITE_FLUI =SIMP(statut='o',typ=(fonction,formule) ), @@ -8866,7 +9078,7 @@ DEFI_SPEC_TURB=OPER(nom="DEFI_SPEC_TURB",op= 145,sd_prod=spectre, BETA =SIMP(statut='f',typ='R',defaut= 2. ), GAMMA =SIMP(statut='f',typ='R',defaut= 4. ), ), - SPEC_CORR_CONV_1=FACT(statut='f',max=1, + SPEC_CORR_CONV_1=FACT(statut='f', LONG_COR_1 =SIMP(statut='o',typ='R' ), LONG_COR_2 =SIMP(statut='f',typ='R' ), VITE_FLUI =SIMP(statut='o',typ='R' ), @@ -8879,7 +9091,7 @@ DEFI_SPEC_TURB=OPER(nom="DEFI_SPEC_TURB",op= 145,sd_prod=spectre, METHODE =SIMP(statut='f',typ='TXM',defaut="GENERALE", into=("AU_YANG","GENERALE","CORCOS") ), ), - SPEC_CORR_CONV_2=FACT(statut='f',max=1, + SPEC_CORR_CONV_2=FACT(statut='f', FONCTION =SIMP(statut='o',typ=(fonction,formule) ), VITE_FLUI =SIMP(statut='o',typ='R' ), FREQ_COUP =SIMP(statut='f',typ='R' ), @@ -8888,7 +9100,7 @@ DEFI_SPEC_TURB=OPER(nom="DEFI_SPEC_TURB",op= 145,sd_prod=spectre, COEF_VITE_FLUI_A=SIMP(statut='f',typ='R' ), COEF_VITE_FLUI_O=SIMP(statut='f',typ='R' ), ), - SPEC_FONC_FORME =FACT(statut='f',max=1, + SPEC_FONC_FORME =FACT(statut='f', regles=(UN_PARMI('INTE_SPEC','GRAPPE_1'), ENSEMBLE('INTE_SPEC','FONCTION'),), INTE_SPEC =SIMP(statut='f',typ=tabl_intsp ), @@ -8898,7 +9110,7 @@ DEFI_SPEC_TURB=OPER(nom="DEFI_SPEC_TURB",op= 145,sd_prod=spectre, CARA_ELEM =SIMP(statut='o',typ=cara_elem ), MODELE =SIMP(statut='o',typ=modele ), ), - SPEC_EXCI_POINT =FACT(statut='f',max=1, + SPEC_EXCI_POINT =FACT(statut='f', regles=(UN_PARMI('INTE_SPEC','GRAPPE_2'),), INTE_SPEC =SIMP(statut='f',typ=tabl_intsp ), GRAPPE_2 =SIMP(statut='f',typ='TXM', @@ -8918,7 +9130,8 @@ DEFI_SPEC_TURB=OPER(nom="DEFI_SPEC_TURB",op= 145,sd_prod=spectre, ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -8948,7 +9161,7 @@ DEFI_SQUELETTE=OPER(nom="DEFI_SQUELETTE",op= 110,sd_prod=squelette, MODE_CYCL =SIMP(statut='f',typ=mode_cycl ), MODELE_GENE =SIMP(statut='f',typ=modele_gene ), SQUELETTE =SIMP(statut='f',typ=squelette ), - RECO_GLOBAL =FACT(statut='f',min=1,max='**', + RECO_GLOBAL =FACT(statut='f',max='**', regles=(EXCLUS('TOUT','GROUP_NO_1'), PRESENT_PRESENT('GROUP_NO_1','GROUP_NO_2'), PRESENT_PRESENT('GROUP_NO_1','SOUS_STRUC_1'), @@ -8963,32 +9176,33 @@ DEFI_SQUELETTE=OPER(nom="DEFI_SQUELETTE",op= 110,sd_prod=squelette, CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), DIST_REFE =SIMP(statut='f',typ='R' ), ), - NOM_GROUP_MA =FACT(statut='f',min=1,max='**', + NOM_GROUP_MA =FACT(statut='f',max='**', NOM =SIMP(statut='o',typ='TXM' ), SOUS_STRUC =SIMP(statut='o',typ='TXM' ), GROUP_MA =SIMP(statut='o',typ=grma), ), EXCLUSIF =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), MAILLAGE =SIMP(statut='f',typ=maillage ), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), TRANS =SIMP(statut='f',typ='R',min=3,max=3), ANGL_NAUT =SIMP(statut='f',typ='R',min=3,max=3), - SOUS_STRUC =FACT(statut='f',min=1,max='**', + SOUS_STRUC =FACT(statut='f',max='**', NOM =SIMP(statut='f',typ='TXM' ), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), ), - SECTEUR =FACT(statut='f',min=1,max='**', - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), + SECTEUR =FACT(statut='f',max='**', + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -9019,7 +9233,8 @@ DEFI_TEXTURE=OPER(nom="DEFI_TEXTURE",op= 181,sd_prod=tabl_texture, ), TITRE =SIMP(statut='f',typ='TXM',max='**' ), ) ; -#& MODIF COMMANDE DATE 03/12/2002 AUTEUR DURAND C.DURAND + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -9048,7 +9263,7 @@ DEFI_THER_JOULE=OPER(nom="DEFI_THER_JOULE",op= 121,sd_prod=fonction,docu="U4.mk. TEMP_EXT_POSE =SIMP(statut='f',typ='R',defaut= 15.0E+0), TEMP_EXT =SIMP(statut='f',typ='R',defaut= 15.0E+0), TEMP_RESI_REF =SIMP(statut='f',typ='R',defaut= 20.0E+0), - PARA_COND_1D =FACT(statut='f',min=1,max='**', + PARA_COND_1D =FACT(statut='f',max='**', INTE_CC =SIMP(statut='f',typ='R',defaut= 0.0E+0), INTE_RENC =SIMP(statut='f',typ='R',defaut= 0.0E+0), A =SIMP(statut='f',typ='R',defaut= 1.0E+0), @@ -9061,7 +9276,8 @@ DEFI_THER_JOULE=OPER(nom="DEFI_THER_JOULE",op= 121,sd_prod=fonction,docu="U4.mk. ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -9082,21 +9298,22 @@ DEFI_THER_JOULE=OPER(nom="DEFI_THER_JOULE",op= 121,sd_prod=fonction,docu="U4.mk. DEFI_TRC=OPER(nom="DEFI_TRC",op=94,sd_prod=tabl_trc,docu="U4.43.04-f",reentrant='n', UIinfo={"groupes":("Modélisation",)}, fr="Définition d un diagramme de transformations en refroidissement continu d un acier", - HIST_EXP =FACT(statut='o',min=1,max='**', + HIST_EXP =FACT(statut='o',max='**', VALE =SIMP(statut='o',typ='R',max='**'), ), - TEMP_MS =FACT(statut='o',min=1,max='**', + TEMP_MS =FACT(statut='o',max='**', SEUIL =SIMP(statut='o',typ='R'), AKM =SIMP(statut='o',typ='R'), BKM =SIMP(statut='o',typ='R'), TPLM =SIMP(statut='o',typ='R'), ), - GRAIN_AUST =FACT(statut='f',min=1,max='**', + GRAIN_AUST =FACT(statut='f',max='**', DREF =SIMP(statut='f',typ='R'), A =SIMP(statut='f',typ='R'), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -9127,13 +9344,15 @@ DEFI_VALEUR=MACRO(nom="DEFI_VALEUR",op=-4,sd_prod=defi_valeur_prod, docu="U4.31.04-f",reentrant='f', UIinfo={"groupes":("Fonction",)}, regles=(UN_PARMI('IS','R8','TX','C8','LS'),), - IS =SIMP(statut='f',typ='I',max='**'), - R8 =SIMP(statut='f',typ='R',max='**'), + IS =SIMP(statut='f',typ='I' ,max='**'), + R8 =SIMP(statut='f',typ='R' ,max='**'), TX =SIMP(statut='f',typ='TXM',max='**'), - C8 =SIMP(statut='f',typ='C',max='**'), - LS =SIMP(statut='f',typ='L',max='**'), + C8 =SIMP(statut='f',typ='C' ,max='**'), + LS =SIMP(statut='f',typ='L' ,max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND +# RESPONSABLE D6BHHJP J.P.LEFEBVRE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -9154,12 +9373,14 @@ DEFI_VALEUR=MACRO(nom="DEFI_VALEUR",op=-4,sd_prod=defi_valeur_prod, DEFUFI=PROC(nom="DEFUFI",op=21,docu="U4.12.01-e", UIinfo={"groupes":("Gestion du travail",)}, fr="Modification / ajout d une unité logique en sortie en complément de celles définies dans DEBUT", - IMPRESSION =FACT(statut='o',min=1,max='**', - NOM =SIMP(statut='o',typ='TXM',max='**'), - UNITE =SIMP(statut='o',typ='I' ), - ), -) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + + IMPRESSION = FACT(statut='o',max='**', + NOM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**'), + UNITE =SIMP(statut='o',typ='I' ,val_min=1), + ), + ) + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -9181,10 +9402,11 @@ DEPL_INTERNE=OPER(nom="DEPL_INTERNE",op=89,sd_prod=cham_no_depl_r,docu="U4.62.02 UIinfo={"groupes":("Matrices/vecteurs",)}, fr="Récupération du champ de déplacement interne à une sous-structure", DEPL_GLOBAL =SIMP(statut='o',typ=cham_no_depl_r), - MAILLE =SIMP(statut='o',typ=ma,max=1), + MAILLE =SIMP(statut='o',typ=ma,), NOM_CAS =SIMP(statut='f',typ='TXM',defaut=" "), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -9206,11 +9428,18 @@ DETRUIRE=PROC(nom="DETRUIRE",op=-7,docu="U4.14.01-e", UIinfo={"groupes":("Gestion du travail",)}, fr="Destruction d un concept utilisateur dans la base GLOBALE", op_init=ops.detruire, - CONCEPT =FACT(statut='o',min=01, - NOM =SIMP(statut='o',typ=assd,max='**'), - ), + regles=(UN_PARMI('CONCEPT','OBJET',),), + CONCEPT =FACT(statut='f', + NOM =SIMP(statut='o',typ=assd,validators=NoRepeat(),max='**'), + ), + OBJET =FACT(statut='f', + CHAINE =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**'), + POSITION =SIMP(statut='o',typ='I' ,validators=NoRepeat(),max='**'), + ), + INFO =SIMP(statut='f',typ='I',into=(1,2),defaut=2, ), ); -#& MODIF COMMANDE DATE 13/01/2003 AUTEUR DURAND C.DURAND + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -9236,18 +9465,19 @@ DIST_LIGN_3D=OPER(nom="DIST_LIGN_3D",op= 133,sd_prod=fonction,docu="U4.mk.30-d", MODELE =SIMP(statut='o',typ=modele), RESULTAT =SIMP(statut='o',typ=(evol_elas,dyna_trans,evol_noli) ), TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",)), - NUME_ORDRE =SIMP(statut='f',typ='I',max='**'), - INST =SIMP(statut='f',typ='R',max='**'), + 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), LIST_ORDRE =SIMP(statut='f',typ=listis), PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - GROUP_MA_1 =SIMP(statut='o',typ=grma,max='**'), - GROUP_MA_2 =SIMP(statut='f',typ=grma,max='**'), + GROUP_MA_1 =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), + GROUP_MA_2 =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), POIN_FIXE =SIMP(statut='f',typ='R',min=3,max=3), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -9269,11 +9499,11 @@ DYNA_ALEA_MODAL=OPER(nom="DYNA_ALEA_MODAL",op= 131,sd_prod=tabl_intsp ,fr="Calcule la réponse spectrale d une structure linéaire sous une excitation connue par sa DSP", docu="U4.53.22-e",reentrant='n', UIinfo={"groupes":("Résolution",)}, - BASE_MODALE =FACT(statut='o',min=1,max=1, + BASE_MODALE =FACT(statut='o', regles=(UN_PARMI('NUME_ORDRE','BANDE'),), MODE_MECA =SIMP(statut='o',typ=mode_meca ), - BANDE =SIMP(statut='f',typ='R',max=2), - NUME_ORDRE =SIMP(statut='f',typ='I',max='**'), + BANDE =SIMP(statut='f',typ='R',validators=NoRepeat(),max=2), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), b_bande =BLOC(condition = "BANDE != None", AMOR_UNIF =SIMP(statut='o',typ='R' ), ), @@ -9284,7 +9514,7 @@ DYNA_ALEA_MODAL=OPER(nom="DYNA_ALEA_MODAL",op= 131,sd_prod=tabl_intsp MODE_STAT =SIMP(statut='f',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc,)), # MODE_STAT devrait etre dans EXCIT car est utile et obligatoire que si NOM_CMP=depl_r, on pourrait # ainsi rajouter un bloc du genre b_mod_stat= BLOC(condition = "(GRANDEUR == None) or (GRANDEUR == 'DEPL_R')", - EXCIT =FACT(statut='o',min=1,max=1, + EXCIT =FACT(statut='o', INTE_SPEC =SIMP(statut='o',typ=tabl_intsp ), NUME_VITE_FLUI =SIMP(statut='f',typ='I' ), OPTION =SIMP(statut='f',typ='TXM',defaut="TOUT",into=("TOUT","DIAG",) ), @@ -9334,7 +9564,7 @@ DYNA_ALEA_MODAL=OPER(nom="DYNA_ALEA_MODAL",op= 131,sd_prod=tabl_intsp ), ), - REPONSE =FACT(statut='f',min=1,max=1, + REPONSE =FACT(statut='f', regles=( ENSEMBLE('FREQ_MIN','FREQ_MAX'),), DERIVATION =SIMP(statut='f',typ='I',defaut= 0,into=( 0 , 1 , 2 ,) ), OPTION =SIMP(statut='f',typ='TXM',defaut="TOUT",into=("TOUT","DIAG") ), @@ -9349,7 +9579,8 @@ DYNA_ALEA_MODAL=OPER(nom="DYNA_ALEA_MODAL",op= 131,sd_prod=tabl_intsp TITRE =SIMP(statut='f',typ='TXM',max='**'), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -9392,11 +9623,11 @@ DYNA_LINE_HARM=OPER(nom="DYNA_LINE_HARM",op= 60,sd_prod=dyna_line_harm_prod, AMOR_REDUIT =SIMP(statut='f',typ='R',max='**'), LIST_AMOR =SIMP(statut='f',typ=listr8 ), MATR_IMPE_PHI =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_gene_r) ), - FREQ =SIMP(statut='f',typ='R',max='**'), + FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_FREQ =SIMP(statut='f',typ=listr8 ), TOUT_CHAM =SIMP(statut='f',typ='TXM',into=("OUI",)), - NOM_CHAM =SIMP(statut='f',typ='TXM',max=3,into=("DEPL","VITE","ACCE") ), - EXCIT =FACT(statut='o',min=1,max='**', + NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=3,into=("DEPL","VITE","ACCE") ), + EXCIT =FACT(statut='o',max='**', regles=(UN_PARMI('VECT_ASSE','CHARGE'), UN_PARMI('FONC_MULT','FONC_MULT_C','COEF_MULT','COEF_MULT_C'),), VECT_ASSE =SIMP(statut='f',typ=(cham_no_depl_r,cham_no_pres_c,vect_asse_gene ) ), @@ -9410,14 +9641,15 @@ DYNA_LINE_HARM=OPER(nom="DYNA_LINE_HARM",op= 60,sd_prod=dyna_line_harm_prod, PUIS_PULS =SIMP(statut='f',typ='I',defaut= 0 ), ), TITRE =SIMP(statut='f',typ='TXM',max='**'), - SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),max='**', + SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', fr="Liste des paramètres de sensibilité.", ang="List of sensitivity parameters"), ) ; # Rajouter test icompatibilite vect_asse et sensibilite # Peut-on aussi rajouter ici le test d incompatibilite charge complexe - derivation # presents dans le Fortran -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -9448,18 +9680,18 @@ DYNA_LINE_TRAN=OPER(nom="DYNA_LINE_TRAN",op= 48,sd_prod=dyna_trans, MATR_RIGI =SIMP(statut='o',typ=matr_asse_depl_r ), MATR_AMOR =SIMP(statut='f',typ=matr_asse_depl_r ), MODE_STAT =SIMP(statut='f',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc,) ), - NEWMARK =FACT(statut='f',min=1,max=1, + NEWMARK =FACT(statut='f', ALPHA =SIMP(statut='f',typ='R',defaut= 0.25 ), DELTA =SIMP(statut='f',typ='R',defaut= 0.5 ), ), - WILSON =FACT(statut='f',min=1,max=1, + WILSON =FACT(statut='f', THETA =SIMP(statut='f',typ='R',defaut= 1.4 ), ), - DIFF_CENTRE =FACT(statut='f',min=1,max=1, + DIFF_CENTRE =FACT(statut='f', ), - ADAPT =FACT(statut='f',min=1,max=1, + ADAPT =FACT(statut='f', ), - ETAT_INIT =FACT(statut='f',min=1,max=1, + ETAT_INIT =FACT(statut='f', regles=(AU_MOINS_UN('DYNA_TRANS', 'DEPL_INIT', 'VITE_INIT',), PRESENT_ABSENT('DYNA_TRANS', 'DEPL_INIT', 'VITE_INIT'),), DYNA_TRANS =SIMP(statut='f',typ=dyna_trans ), @@ -9475,7 +9707,7 @@ DYNA_LINE_TRAN=OPER(nom="DYNA_LINE_TRAN",op= 48,sd_prod=dyna_trans, DEPL_INIT =SIMP(statut='f',typ=(cham_no_depl_r) ), VITE_INIT =SIMP(statut='f',typ=(cham_no_depl_r) ), ), - EXCIT =FACT(statut='f',min=1,max='**', + EXCIT =FACT(statut='f',max='**', regles=(UN_PARMI('CHARGE','VECT_ASSE'), EXCLUS('CHARGE','COEF_MULT'), EXCLUS('FONC_MULT','COEF_MULT'), @@ -9493,23 +9725,23 @@ DYNA_LINE_TRAN=OPER(nom="DYNA_LINE_TRAN",op= 48,sd_prod=dyna_trans, DEPL =SIMP(statut='f',typ=(fonction,formule) ), MULT_APPUI =SIMP(statut='f',typ='TXM',into=("OUI",) ), DIRECTION =SIMP(statut='f',typ='R',max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), ), - AMOR_MODAL =FACT(statut='f',min=1,max=1, + AMOR_MODAL =FACT(statut='f', MODE_MECA =SIMP(statut='f',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="NON",into=("OUI","NON") ), ), # ce n est pas le mot clesolveur standard - SOLVEUR =FACT(statut='d',min=1,max=1, + SOLVEUR =FACT(statut='d', NPREC =SIMP(statut='f',typ='I',defaut= 8 ), STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), ), - INCREMENT =FACT(statut='o',min=1,max='**', + INCREMENT =FACT(statut='o',max='**', regles=(UN_PARMI('LIST_INST','FONC_INST','PAS'),), LIST_INST =SIMP(statut='f',typ=listr8 ), FONC_INST =SIMP(statut='f',typ=(fonction,formule) ), @@ -9531,16 +9763,21 @@ DYNA_LINE_TRAN=OPER(nom="DYNA_LINE_TRAN",op= 48,sd_prod=dyna_trans, NMAX_ITER_PAS =SIMP(statut='f',typ='I',defaut= 16 ), PAS_CALCUL =SIMP(statut='f',typ='I',defaut= 1 ), ), - ARCHIVAGE =FACT(statut='f',min=1,max=1, + ARCHIVAGE =FACT(statut='f', regles=(UN_PARMI('LIST_ARCH','PAS_ARCH', ),), LIST_ARCH =SIMP(statut='f',typ=listis ), PAS_ARCH =SIMP(statut='f',typ='I' ), - CHAM_EXCLU =SIMP(statut='f',typ='TXM',max='**',into=("DEPL","VITE","ACCE") ), + CHAM_EXCLU =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',into=("DEPL","VITE","ACCE") ), + ), + 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", ), TITRE =SIMP(statut='f',typ='TXM',max='**'), INFO =SIMP(statut='f',typ='I',into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -9567,7 +9804,7 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', 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), - EXCIT =FACT(statut='o',min=1,max='**', + EXCIT =FACT(statut='o',max='**', regles=(PRESENT_ABSENT('FONC_MULT','ACCE'), PRESENT_PRESENT('ACCE','VITE','DEPL'), PRESENT_ABSENT('MULT_APPUI','FONC_MULT'),), @@ -9580,10 +9817,10 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', VITE =SIMP(statut='f',typ=(fonction,formule)), MULT_APPUI =SIMP(statut='f',typ='TXM',into=("OUI",) ), DIRECTION =SIMP(statut='f',typ='R',max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), ), - AMOR_MODAL =FACT(statut='f',min=1,max=1, + AMOR_MODAL =FACT(statut='f', MODE_MECA =SIMP(statut='f',typ=mode_meca), AMOR_REDUIT =SIMP(statut='f',typ='R',max='**' ), NB_MODE =SIMP(statut='f',typ='I',defaut= 9999 ), @@ -9594,7 +9831,7 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', IRRA =SIMP(statut='f',typ=evol_varc), ), COMP_INCR =C_COMP_INCR(), - COMP_ELAS =FACT(statut='f',min=1,max='**', + 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")), @@ -9606,11 +9843,11 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', 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,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), ), #------------------------------------------------------------------- - ETAT_INIT =FACT(statut='f',min=1,max=1, + ETAT_INIT =FACT(statut='f', regles=(AU_MOINS_UN('EVOL_NOLI','DEPL','VITE','SIGM','VARI','VARI_NON_LOCAL',), EXCLUS('EVOL_NOLI','DEPL',), EXCLUS('EVOL_NOLI','VITE'), @@ -9632,7 +9869,7 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', INST_ETAT_INIT =SIMP(statut='f',typ='R'), ), #------------------------------------------------------------------- - INCREMENT =FACT(statut='o',min=1,max=1, + INCREMENT =FACT(statut='o', regles=(EXCLUS('NUME_INST_INIT','INST_INIT'), EXCLUS('NUME_INST_FIN','INST_FIN'),), LIST_INST =SIMP(statut='o',typ=listr8), @@ -9652,22 +9889,22 @@ 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',min=1,max=1, + 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',min=1,max=1, + HHT =FACT(statut='f', ALPHA =SIMP(statut='f',typ='R' ,defaut= -0.29999999999999999 ), ), - NEWTON =FACT(statut='d',min=1,max=1, + NEWTON =FACT(statut='d', 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), PAS_MINI_ELAS =SIMP(statut='f',typ='R',defaut=0.0E+0), ), - SOLVEUR =FACT(statut='d',min=1,max=1, + 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") ), @@ -9690,7 +9927,7 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', SYME =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), ), #------------------------------------------------------------------- - RECH_LINEAIRE =FACT(statut='f',min=1,max=1, + 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), @@ -9699,7 +9936,7 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', RHO_MAX =SIMP(statut='f',typ='R',defaut=1.0E+1), RHO_EXCL =SIMP(statut='f',typ='R',defaut=0.9E-2), ), - PILOTAGE =FACT(statut='f',min=1,max=1, + 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), @@ -9710,13 +9947,13 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', 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,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), + 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',min=1,max=1, + 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'), @@ -9738,41 +9975,45 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")), ), #------------------------------------------------------------------- - OPTION =SIMP(statut='f',typ='TXM',max='**',defaut="ELNO", + OPTION =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',defaut="ELNO", into=("SIEF_ELNO_ELGA","VARI_ELNO_ELGA","EFGE_ELNO_CART","ELNO","SANS") ), - ARCHIVAGE =FACT(statut='f',min=1,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) ), - INST =SIMP(statut='f',typ='R',max='**' ), + 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',max='**', + CHAM_EXCLU =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**', into=("DEPL","SIEF_ELGA","VARI_ELGA","ACCE","VITE","VARI_NON_LOCAL","LANL_ELGA")), ), - OBSERVATION =FACT(statut='f',min=1,max='**', + OBSERVATION =FACT(statut='f',max='**', regles=(UN_PARMI('NOEUD','GROUP_NO','MAILLE'), PRESENT_PRESENT('MAILLE','POINT'),), - NOM_CHAM =SIMP(statut='o',typ='TXM',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") ), NOM_CMP =SIMP(statut='o',typ='TXM',max='**' ), LIST_ARCH =SIMP(statut='f',typ=listis), LIST_INST =SIMP(statut='f',typ=listr8), - INST =SIMP(statut='f',typ='R',max='**' ), + 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,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - POINT =SIMP(statut='f',typ='I',max='**'), + 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='**'), + POINT =SIMP(statut='f',typ='I' ,max='**'), ), #------------------------------------------------------------------- - SOLV_NON_LOCAL =FACT(statut='f',min=1,max=1, + 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") ), 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") ), @@ -9793,7 +10034,7 @@ into=("DEPL","VITE","ACCE","SIEF_ELGA","VARI_ELGA","DEPL_ABSOLU","VITE_ABSOLU"," ), EPS =SIMP(statut='f',typ='R',defaut= 0.E+0 ), ), - LAGR_NON_LOCAL =FACT(statut='f',max=1, + 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'), @@ -9807,7 +10048,8 @@ into=("DEPL","VITE","ACCE","SIEF_ELGA","VARI_ELGA","DEPL_ABSOLU","VITE_ABSOLU"," INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -9830,13 +10072,277 @@ DYNA_SPEC_MODAL=OPER(nom="DYNA_SPEC_MODAL",op= 147,sd_prod=tabl_intsp, docu="U4.53.23-d",reentrant='n', UIinfo={"groupes":("Résolution",)}, BASE_ELAS_FLUI =SIMP(statut='o',typ=melasflu ), - EXCIT =FACT(statut='o',max=1, + EXCIT =FACT(statut='o', INTE_SPEC_GENE =SIMP(statut='o',typ=tabl_intsp ), ), OPTION =SIMP(statut='f',typ='TXM',defaut="TOUT",into=("TOUT","DIAG") ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND +# 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. +# ====================================================================== +#& RESPONSABLE +DYNA_TRAN_EXPLI=OPER(nom="DYNA_TRAN_EXPLI",op= 69,sd_prod=evol_noli,reentrant='f', + fr="Analyse mecanique dynamique explicite",docu="U4.53.03", + regles=(AU_MOINS_UN('COMP_INCR','COMP_ELAS',),), + MODELE =SIMP(statut='o',typ=modele), + 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), + 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,formule)), + DEPL =SIMP(statut='f',typ=(fonction,formule)), + ACCE =SIMP(statut='f',typ=(fonction,formule)), + VITE =SIMP(statut='f',typ=(fonction,formule)), + MULT_APPUI =SIMP(statut='f',typ='TXM',into=("OUI",) ), + DIRECTION =SIMP(statut='f',typ='R',max=3), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + ), + AMOR_MODAL =FACT(statut='f', + MODE_MECA =SIMP(statut='f',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', + MODE_MECA =SIMP(statut='f',typ=mode_meca), + NB_MODE =SIMP(statut='f',typ='I',defaut= 9999 ), + ), + 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 =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_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='**'), + ), +#------------------------------------------------------------------- + ETAT_INIT =FACT(statut='f', + regles=(AU_MOINS_UN('EVOL_NOLI','DEPL','VITE','SIGM','VARI','VARI_NON_LOCAL',), + EXCLUS('EVOL_NOLI','DEPL',), + EXCLUS('EVOL_NOLI','VITE'), + 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_depl_r), + VITE =SIMP(statut='f',typ=cham_no_depl_r), + SIGM =SIMP(statut='f',typ=(cham_elem_sief_r,carte_sief_r)), + VARI =SIMP(statut='f',typ=cham_elem_vari_r), + VARI_NON_LOCAL =SIMP(statut='f',typ=cham_no_vanl_r), + 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), + 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 ), + SUBD_PAS =SIMP(statut='f',typ='I',defaut=1), + SUBD_PAS_MINI =SIMP(statut='f',typ='R'), + COEF_SUBD_PAS_1 =SIMP(statut='f',typ='R',defaut= 1.0E+0), + 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'), + ), +#------------------------------------------------------------------- + NEWMARK =FACT(statut='d', + ALPHA =SIMP(statut='f',typ='R',defaut= 0.25), + DELTA =SIMP(statut='f',typ='R',defaut= 0.5), + ), + 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), + PAS_MINI_ELAS =SIMP(statut='f',typ='R',defaut=0.0E+0), + ), + 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") ), + ), +#------------------------------------------------------------------- + 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), + ), + 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 ), + TYPE_MATR_COMP =SIMP(statut='f',typ='TXM',defaut="TANG_VIT",into=("TANG_VIT",)), + RESO_INTE =SIMP(statut='f',typ='TXM',defaut="IMPLICITE", + into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")), + ), +#------------------------------------------------------------------- + OPTION =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',defaut="ELNO", + into=("SIEF_ELNO_ELGA","VARI_ELNO_ELGA","EFGE_ELNO_CART","ELNO","SANS") ), + ARCHIVAGE =FACT(statut='f', + regles=(EXCLUS('PAS_ARCH','LIST_INST','INST'), + EXCLUS('ARCH_ETAT_INIT','NUME_INIT'), ), + LIST_INST =SIMP(statut='f',typ=(listr8) ), + 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")), + ), + 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), + LIST_INST =SIMP(statut='f',typ=listr8), + 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='**'), + 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='**'), + ), +#------------------------------------------------------------------- + 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), + ), +#------------------------------------------------------------------- + PARM_THETA =SIMP(statut='f',typ='R' + ,defaut= 1. ), +#------------------------------------------------------------------- + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), + TITRE =SIMP(statut='f',typ='TXM',max='**'), +) ; + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -9870,7 +10376,7 @@ DYNA_TRAN_MODAL=OPER(nom="DYNA_TRAN_MODAL",op= 74,sd_prod=tran_gene, 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',min=1,max=1, + 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 ), @@ -9882,7 +10388,7 @@ DYNA_TRAN_MODAL=OPER(nom="DYNA_TRAN_MODAL",op= 74,sd_prod=tran_gene, DEPL_INIT_GENE =SIMP(statut='f',typ=vect_asse_gene ), VITE_INIT_GENE =SIMP(statut='f',typ=vect_asse_gene ), ), - INCREMENT =FACT(statut='o',min=1,max='**', + 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' ), @@ -9894,7 +10400,7 @@ DYNA_TRAN_MODAL=OPER(nom="DYNA_TRAN_MODAL",op= 74,sd_prod=tran_gene, NB_POIN_PERIODE =SIMP(statut='f',typ='I',defaut= 50 ), NMAX_ITER_PAS =SIMP(statut='f',typ='I',defaut= 16 ), ), - ARCHIVAGE =FACT(statut='f',min=1,max=1, + ARCHIVAGE =FACT(statut='f', regles=(UN_PARMI('LIST_ARCH','PAS_ARCH'),), LIST_ARCH =SIMP(statut='f',typ=listis ), PAS_ARCH =SIMP(statut='f',typ='I' ), @@ -9904,7 +10410,7 @@ DYNA_TRAN_MODAL=OPER(nom="DYNA_TRAN_MODAL",op= 74,sd_prod=tran_gene, RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), LAMBDA =SIMP(statut='f',typ='R',defaut= 10. ), - EXCIT =FACT(statut='f',min=1,max='**', + 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'), @@ -9923,14 +10429,14 @@ DYNA_TRAN_MODAL=OPER(nom="DYNA_TRAN_MODAL",op= 74,sd_prod=tran_gene, DIRECTION =SIMP(statut='f',typ='R',max='**'), b_loca =BLOC(condition= "DIRECTION != None", regles=(EXCLUS('NOEUD','GROUP_NO'),), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), + 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,formule) ), D_FONC_DT2 =SIMP(statut='f',typ=(fonction,formule) ), ), - CHOC =FACT(statut='f',min=1,max='**', + CHOC =FACT(statut='f',max='**', regles=(UN_PARMI('NOEUD_1','GROUP_NO_1' ), PRESENT_ABSENT('NOEUD_1','GROUP_NO_1'), PRESENT_ABSENT('NOEUD_2','GROUP_NO_2'),), @@ -9963,11 +10469,11 @@ DYNA_TRAN_MODAL=OPER(nom="DYNA_TRAN_MODAL",op= 74,sd_prod=tran_gene, DELTA =SIMP(statut='f',typ='R',defaut= 0.E+0 ), ), ), - VERI_CHOC =FACT(statut='f',min=1,max='**', + 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',min=1,max='**', + FLAMBAGE =FACT(statut='f',max='**', regles=(UN_PARMI('NOEUD_1','GROUP_NO_1'), PRESENT_ABSENT('NOEUD_1','GROUP_NO_1'), PRESENT_ABSENT('NOEUD_2','GROUP_NO_2'),), @@ -9988,7 +10494,7 @@ DYNA_TRAN_MODAL=OPER(nom="DYNA_TRAN_MODAL",op= 74,sd_prod=tran_gene, FNOR_POST_FL =SIMP(statut='f',typ='R' ), RIGI_NOR_POST_FL=SIMP(statut='f',typ='R' ), ), - ANTI_SISM =FACT(statut='f',min=1,max='**', + ANTI_SISM =FACT(statut='f',max='**', regles=(UN_PARMI('NOEUD_1','GROUP_NO_1'), UN_PARMI('NOEUD_2','GROUP_NO_2'), PRESENT_ABSENT('NOEUD_1','GROUP_NO_1'), @@ -10004,19 +10510,19 @@ DYNA_TRAN_MODAL=OPER(nom="DYNA_TRAN_MODAL",op= 74,sd_prod=tran_gene, 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',min=1,max='**', + 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,formule) ), ), - RELA_TRANSIS =FACT(statut='f',min=1,max='**', + 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,formule) ), ), - RELA_EFFO_VITE =FACT(statut='f',min=1,max='**', + 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' ), @@ -10035,7 +10541,7 @@ DYNA_TRAN_MODAL=OPER(nom="DYNA_TRAN_MODAL",op= 74,sd_prod=tran_gene, TS_REG_ETAB =SIMP(statut='f',typ='R' ), ), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), - IMPRESSION =FACT(statut='f',min=1,max='**', + 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") ), @@ -10044,7 +10550,8 @@ DYNA_TRAN_MODAL=OPER(nom="DYNA_TRAN_MODAL",op= 74,sd_prod=tran_gene, ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -10068,12 +10575,13 @@ ENGENDRE_TEST=PROC(nom="ENGENDRE_TEST",op=178,docu="U4.92.11-c", regles=(UN_PARMI('TOUT','CO'),), FICHIER =SIMP(statut='f',typ='TXM',defaut="RESULTAT"), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - CO =SIMP(statut='f',typ=assd,max='**'), + CO =SIMP(statut='f',typ=assd,validators=NoRepeat(),max='**'), TYPE_TEST =SIMP(statut='f',typ='TXM',defaut="SOMME",into=("SOMME","RESUME") ), FORMAT_R =SIMP(statut='f',typ='TXM',defaut="1PE12.5"), PREC_R =SIMP(statut='f',typ='TXM',defaut="1.E-5"), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -10094,11 +10602,12 @@ ENGENDRE_TEST=PROC(nom="ENGENDRE_TEST",op=178,docu="U4.92.11-c", EXEC_LOGICIEL=PROC(nom="EXEC_LOGICIEL",op= 183,fr="",docu="U7.00.01-b", UIinfo={"groupes":("Impression",)}, LOGICIEL =SIMP(statut='f',typ='TXM' ), - ARGUMENT =FACT(statut='f',min=1,max='**', + ARGUMENT =FACT(statut='f',max='**', NOM_PARA =SIMP(statut='f',typ='TXM' ), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -10126,13 +10635,13 @@ def extr_mode_prod(FILTRE_MODE,**args): EXTR_MODE=OPER(nom="EXTR_MODE",op= 168,sd_prod=extr_mode_prod, docu="U4.52.12-d",reentrant='n', UIinfo={"groupes":("Résolution",)}, - FILTRE_MODE =FACT(statut='o',min=1,max='**', + 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',max='**'), - NUME_MODE =SIMP(statut='f',typ='I',max='**'), - NUME_MODE_EXCLU =SIMP(statut='f',typ='I',max='**'), + 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", @@ -10144,17 +10653,29 @@ EXTR_MODE=OPER(nom="EXTR_MODE",op= 168,sd_prod=extr_mode_prod, ), ), TITRE =SIMP(statut='f',typ='TXM',max='**'), - IMPRESSION =FACT(statut='f',min=1,max=1, + 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 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# SEE THE FILE "LICENSE.TERMS" FOR INFORMATION ON USAGE AND -# REDISTRIBUTION OF THIS FILE. +# 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 @@ -10175,39 +10696,40 @@ def extr_resu_prod(RESULTAT,**args): EXTR_RESU=OPER(nom="EXTR_RESU",op=176,sd_prod=extr_resu_prod,docu="U4.71.04-c",reentrant='f', UIinfo={"groupes":("Résultats et champs",)}, - 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, + 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 ) ), - SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),max='**', + 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',min=1,max=1, + 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',max='**'), - NOM_CHAM =SIMP(statut='f',typ='TXM',max='**'), + 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), PAS_ARCH =SIMP(statut='f',typ='I'), - NUME_ORDRE =SIMP(statut='f',typ='I',max='**'), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE =SIMP(statut='f',typ=listis), - INST =SIMP(statut='f',typ='R',max='**'), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8), - FREQ =SIMP(statut='f',typ='R',max='**'), + FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_FREQ =SIMP(statut='f',typ=listr8), - NUME_MODE =SIMP(statut='f',typ='I',max='**'), - NOEUD_CMP =SIMP(statut='f',typ='TXM',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'), ), - TITRE =SIMP(statut='f',typ='TXM',max='**' ), + TITRE =SIMP(statut='f',typ='TXM',max='**' ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -10242,7 +10764,8 @@ FACT_GRAD=OPER(nom="FACT_GRAD",op=85,sd_prod=fact_grad_prod,docu="U4.55.03-f", NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), INFO =SIMP(statut='f',typ='I',into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -10274,7 +10797,8 @@ FACT_INTE_SPEC=OPER(nom="FACT_INTE_SPEC",op= 117,sd_prod=interspfact, SUR_ECHAN =SIMP(statut='f',typ='R',defaut= 1. ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -10322,7 +10846,8 @@ FACT_LDLT=OPER(nom="FACT_LDLT",op=14,sd_prod=fact_ldlt_prod,fr="Factorisation en TITRE =SIMP(statut='f',typ='TXM',max='**'), INFO =SIMP(statut='f',typ='I',into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -10344,9 +10869,10 @@ FACT_LDLT=OPER(nom="FACT_LDLT",op=14,sd_prod=fact_ldlt_prod,fr="Factorisation en FERMER=PROC(nom="FERMER",op= 10,fr=" ", docu="U4.12.02-b", UIinfo={"groupes":("Gestion du travail",)}, - UNITE =SIMP(statut='o',typ='I',max='**' ), + UNITE =SIMP(statut='o',typ='I',validators=NoRepeat(),max='**' ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 06/09/2003 AUTEUR D6BHHJP J.P.LEFEBVRE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -10367,6 +10893,9 @@ FERMER=PROC(nom="FERMER",op= 10,fr=" ", FIN=PROC(nom="FIN",op=9999,repetable='n',fr="Fin d'une étude", docu="U4.11.02-g", UIinfo={"groupes":("Gestion du travail",)}, + HDF =FACT(statut='f',min=1,max=1, + FICHIER =SIMP(fr="nom du fichier hdf associe",statut='o',typ='TXM'), + ), 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 ", @@ -10375,7 +10904,8 @@ FIN=PROC(nom="FIN",op=9999,repetable='n',fr="Fin d'une statut='f',typ='TXM',defaut="OUI",into=("OUI","NON",) ), FICHIER =SIMP(statut='f',typ='TXM',defaut="MESSAGE"), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -10398,7 +10928,8 @@ FONC_FLUI_STRU=OPER(nom="FONC_FLUI_STRU",op= 169,sd_prod=fonction, UIinfo={"groupes":("Fonction",)}, TYPE_FLUI_STRU =SIMP(statut='o',typ=(type_flui_stru) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -10423,12 +10954,13 @@ FORMULE = FORM( nom='FORMULE',op=ops.build_formule,sd_prod=formule, ##### fonctions entieres interdites suite au probleme AL2003-072 ##### regles=(UN_PARMI('REEL','ENTIER','COMPLEXE'),), -##### ENTIER = SIMP(typ = 'shell',max=1), +##### ENTIER = SIMP(typ = 'shell',), - REEL = SIMP(typ = 'shell',max=1), - COMPLEXE = SIMP(typ = 'shell',max=1), + REEL = SIMP(typ = 'shell',), + COMPLEXE = SIMP(typ = 'shell',), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -10456,7 +10988,8 @@ GENE_FONC_ALEA=OPER(nom="GENE_FONC_ALEA",op= 118,sd_prod=table, NB_POIN =SIMP(statut='f',typ='I' ), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -10483,7 +11016,8 @@ GENE_MATR_ALEA=OPER(nom="GENE_MATR_ALEA",op= 27,sd_prod=matr_asse_gene_r, INIT = SIMP(statut='f', typ='TXM', into=("OUI","NON"),defaut="NON"), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -10513,7 +11047,8 @@ GENE_VARI_ALEA=OPER(nom="GENE_VARI_ALEA",op= 28,sd_prod=table, INIT = SIMP(statut='f', typ='TXM', into=("OUI","NON"),defaut="NON"), ) ; -#& MODIF COMMANDE DATE 09/10/2002 AUTEUR DURAND C.DURAND + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -10538,9 +11073,10 @@ IMPR_CHARGE=PROC(nom="IMPR_CHARGE",op= 158, FICHIER =SIMP(statut='f',typ='TXM' ), 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,max='**', ), + CHARGE =SIMP(statut='o',typ=char_meca,validators=NoRepeat(),max='**', ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -10565,25 +11101,26 @@ IMPR_CLASSI=PROC(nom="IMPR_CLASSI",op= 114,docu="U7.04.21-b", UNITE_CLASSI =SIMP(statut='o',typ='I' ), MODE_MECA =SIMP(statut='o',typ=mode_meca ), TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',max='**'), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE =SIMP(statut='f',typ=listis ), - NUME_MODE =SIMP(statut='f',typ='I',max='**'), - FREQ =SIMP(statut='f',typ='R',max='**'), + NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_FREQ =SIMP(statut='f',typ=listr8 ), b_prec_crit =BLOC(condition = "LIST_FREQ != None or FREQ != None", PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF", into=("RELATIF","ABSOLU") ), ), - IMPRESSION =FACT(statut='f',min=1,max='**', + IMPRESSION =FACT(statut='f',max='**', regles=(UN_PARMI('NOEUD','GROUP_NO', ),), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,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='**'), ), AMOR =SIMP(statut='o',typ='R',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -10611,11 +11148,12 @@ IMPR_CO=PROC(nom="IMPR_CO",op=17,docu="U4.91.11-g", 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") ), - CO =SIMP(statut='f',typ=assd,max='**'), + CO =SIMP(statut='f',typ=assd,validators=NoRepeat(),max='**'), CHAINE =SIMP(statut='f',typ='TXM'), POSITION =SIMP(statut='f',typ='I',defaut=1), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -10672,7 +11210,7 @@ IMPR_COURBE=PROC(nom="IMPR_COURBE",op= 141,fr="Impression, sur fichiers", FENETRE =SIMP(statut='f',typ='TXM',defaut="RECTANGLE",into=("CARREE","RECTANGLE"), fr="Forme de la fenetre contenant le graphique" ), ), - COURBE =FACT(statut='o',min=1,max='**',fr="Définition de la courbe à tracer", + COURBE =FACT(statut='o',max='**',fr="Définition de la courbe à tracer", regles=(UN_PARMI('FONCTION','LIST_RESU','TABLE','FONC_X','RESU_GENE'),), FONCTION =SIMP(statut='f',typ=(fonction, formule, fonction_c), fr="Fonction réelle ou complexe", ), @@ -10742,7 +11280,8 @@ IMPR_COURBE=PROC(nom="IMPR_COURBE",op= 141,fr="Impression, sur fichiers", ), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -10768,30 +11307,38 @@ IMPR_FICO_HOMA=PROC(nom="IMPR_FICO_HOMA",op= 189, docu="U7.04.01-b", # # 1. Le niveau d'information # - INFO = SIMP(statut='f',typ='I',defaut=1,into=(1,2)), -# -# 2. LE REPERTOIRE OU AURA LIEU LE CALCUL HOMARD + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), # - REP =SIMP(statut='f',typ='TXM'), +# 2. Langue des messages issus de HOMARD # -# 3. Langue des messages issus de HOMARD -# - LANGUE = SIMP(statut='f',typ='TXM',defaut="FRANCAIS", + 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. L'UNITE LOGIQUE D'ECRITURE DU FICHIER DE CONFIGURATION HOMARD +# 3. Le nom local du fichier de configuration HOMARD +# + FICHIER_CONF =SIMP(statut='o',typ='TXM'), +# +# 4. Le nom local du fichier de données HOMARD # - UNITE =SIMP(statut='f',typ='I',defaut= 71 ), + FICHIER_DONN =SIMP(statut='f',typ='TXM'), # -# 5. LE TYPE DE TRAITEMENT : +# 5. Gestion des éléments autres que des simplexes +# 0 : autres elements refuses (defaut) +# 1 : raffinement sur les simplexes, mais autres acceptes +# 2 : tous # - TRAITEMENT =FACT(statut='o',min=1,max=1, + NON_SIMPLEXE = SIMP(statut='f',typ='I',defaut=0,into=(0,1,2), + fr="Acceptation d'éléments quad, hexa et penta", + ang="quad, hexa and penta elements allowed" ), # -# 5.1. QUATRE CHOIX EXCLUSIFS : +# 6. Le type de traitement : +# + TRAITEMENT =FACT(statut='o', +# +# 6.1. TROIS CHOIX EXCLUSIFS : # -# 5.1.1. # A. ADAPTATION PAR UN INDICATEUR D'ERREUR, AVEC TROIS VARIANTES : # . RAFFINEMENT ET DERAFFINEMENT # . RAFFINEMENT SEUL @@ -10801,9 +11348,8 @@ IMPR_FICO_HOMA=PROC(nom="IMPR_FICO_HOMA",op= 189, docu="U7.04.01-b", # . DERAFFINEMENT SEUL # . RIEN : LE MAILLAGE EST LE MEME A LA SORTIE ET A L'ENTREE # C. INFORMATION SUR UN MAILLAGE -# D. MISE A JOUR DE SOLUTIONS # - regles=( UN_PARMI('ADAPTATION','UNIFORME','INFORMATION','MAJSOLUTION'),), + regles=( UN_PARMI('ADAPTATION','UNIFORME','INFORMATION'),), ADAPTATION =SIMP(statut='f',typ='TXM', fr="Adaptation libre", ang="Free adaptation", @@ -10813,17 +11359,13 @@ IMPR_FICO_HOMA=PROC(nom="IMPR_FICO_HOMA",op= 189, docu="U7.04.01-b", ang="Uniforme adaptation", into=("RAFFINEMENT","DERAFFINEMENT","RIEN") ), INFORMATION =SIMP(statut='f',typ='TXM', - fr="Adaptation libre", - ang="Free adaptation", - into=("OUI",) ), - MAJSOLUTION =SIMP(statut='f',typ='TXM', - fr="Mise à jour de solutions", - ang="Solution updating", + fr="Information sur un maillage", + ang="Information on a mesh", into=("OUI",) ), # -# 5.1.2. LES CONTRAINTES : +# 6.2. LES CONTRAINTES : # -# 5.1.2.1. POUR DE L'ADAPTATION LIBRE, IL FAUT : +# 6.2.1. POUR DE L'ADAPTATION LIBRE, IL FAUT : # A. LE NUMERO D'ITERATION DU MAILLAGE DE DEPART # B. LE NOM MED DU MAILLAGE D'ENTREE # C. LE NOM MED DE L'INDICATEUR D'ERREUR @@ -10832,7 +11374,7 @@ IMPR_FICO_HOMA=PROC(nom="IMPR_FICO_HOMA",op= 189, docu="U7.04.01-b", # F. LE NOM MED DU MAILLAGE DE SORTIE # REMARQUE : IL FAUT DES CRITERES, MAIS ON NE SAIT PAS LESQUELS # -# 5.1.2.2. POUR DE L'ADAPTATION UNIFORME +# 6.2.2. POUR DE L'ADAPTATION UNIFORME # IL FAUT : # A. LE NUMERO D'ITERATION DU MAILLAGE DE DEPART # B. LE NOM MED DU MAILLAGE DE SORTIE @@ -10843,17 +11385,7 @@ IMPR_FICO_HOMA=PROC(nom="IMPR_FICO_HOMA",op= 189, docu="U7.04.01-b", # REMARQUE : A L'ITERATION 0, OU AUX ITERATIONS SUIVANTES SI MAJ DE SOLUTION, # IL FAUT LE NOM MED DU MAILLAGE D'ENTREE # -# 5.1.2.3. POUR DE LA MISE A JOUR DE SOLUTION : -# IL FAUT : -# A. LE NUMERO D'ITERATION DU MAILLAGE DE DEPART -# B. LE NOM MED DU MAILLAGE D'ENTREE -# IL NE FAUT PAS : -# A. LE NOM MED DE L'INDICATEUR D'ERREUR -# B. LE NOM DE LA COMPOSANTE DE L'INDICATEUR D'ERREUR -# C. LES CRITERES -# -# -# 5.1.2.4. POUR DE L'INFORMATION : +# 6.2.3. POUR DE L'INFORMATION : # IL FAUT : # A. LE NOM MED DU MAILLAGE D'ENTREE # IL NE FAUT PAS : @@ -10863,8 +11395,7 @@ IMPR_FICO_HOMA=PROC(nom="IMPR_FICO_HOMA",op= 189, docu="U7.04.01-b", # D. LE NUMERO D'ITERATION DU MAILLAGE DE DEPART # E. LA MISE A JOUR DE SOLUTION # - b_maillage_initial =BLOC(condition = "( INFORMATION != None ) or ( ADAPTATION != None ) or \ - ( MAJSOLUTION != None ) ", + b_maillage_initial =BLOC(condition = "( INFORMATION != None ) or ( ADAPTATION != None ) ", fr="Nom MED du maillage en entrée", ang="MED name of the in-mesh", NOM_MED_MAILLAGE_N =SIMP(statut='o',typ='TXM',), @@ -10876,8 +11407,7 @@ IMPR_FICO_HOMA=PROC(nom="IMPR_FICO_HOMA",op= 189, docu="U7.04.01-b", NOM_MED_MAILLAGE_N =SIMP(statut='f',typ='TXM',), ) , # - b_iteration_maj_champ =BLOC(condition = "( UNIFORME != None ) or ( ADAPTATION != None ) or \ - ( MAJSOLUTION != None ) ", + b_iteration_maj_champ =BLOC(condition = "( UNIFORME != None ) or ( ADAPTATION != None ) ", fr="Nom MED du maillage en sortie, numero d'iteration et mise à jour de champs", ang="MED name of the out-mesh, iteration rank and field updating", NITER =SIMP(statut='o',typ='I', @@ -10894,26 +11424,33 @@ IMPR_FICO_HOMA=PROC(nom="IMPR_FICO_HOMA",op= 189, docu="U7.04.01-b", b_indicateur_d_erreur =BLOC(condition = "ADAPTATION != None", fr="Indicateur d'erreur", ang="Error indicator", - regles=(AU_MOINS_UN('NUMORD_INDICA','NOM_RESU_INDICA'), - EXCLUS('NUMORD_INDICA','NOM_RESU_INDICA'), - PRESENT_PRESENT('NUMORD_INDICA','NUMPT_INDICA'), - PRESENT_PRESENT('NOM_RESU_INDICA','NOM_CHAM_INDICA'),), - NOM_MED_INDICA =SIMP(statut='o',typ='TXM', + regles=(AU_MOINS_UN('NUME_ORDRE','INST','RESULTAT'), + EXCLUS('NUME_ORDRE','INST'), + EXCLUS('NUME_ORDRE','RESULTAT'), + PRESENT_PRESENT('RESULTAT','NOM_CHAM'),), + NOM_MED =SIMP(statut='o',typ='TXM', fr="Nom MED de l'indicateur d'erreur.", ang="MED name of error indicator.",), - NOM_CMP_INDICA =SIMP(statut='o',typ='TXM', + COMPOSANTE =SIMP(statut='o',typ='TXM', fr="Nom de la composante de l'indicateur d'erreur retenue.", ang="Name of the selected component of the error indicator.",), - NUMORD_INDICA =SIMP(statut='f',typ='I', + NUME_ORDRE =SIMP(statut='f',typ='I', fr="Numero d'ordre de l'indicateur.", ang="Rank number of the error indicator.",), - NUMPT_INDICA =SIMP(statut='f',typ='I', - fr="Numero du pas de temps de l'indicateur.", - ang="Time step number of the error indicator.",), - NOM_RESU_INDICA =SIMP(statut='f',typ='TXM', + INST =SIMP(statut='f',typ='R', + fr="Instant de l'indicateur.", + ang="Instant of the error indicator.",), + 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" ),), + RESULTAT =SIMP(statut='f',typ=(evol_elas,evol_noli,evol_ther), fr="Concept contenant l'indicateur.", ang="Conceipt wich contains the error indicator.",), - NOM_CHAM_INDICA =SIMP(statut='f',typ='TXM', + NOM_CHAM =SIMP(statut='f',typ='TXM', fr="Nom du champ dans le résultat de l'indicateur.", ang="Name of the field of the error indicator.",), ) , @@ -10950,27 +11487,39 @@ IMPR_FICO_HOMA=PROC(nom="IMPR_FICO_HOMA",op= 189, docu="U7.04.01-b", # b_niveau_maximum =BLOC ( condition = " ( ADAPTATION == 'RAFF_DERA' ) or ( ADAPTATION == 'RAFFINEMENT' ) or \ ( UNIFORME == 'RAFFINEMENT' )" , - fr="Niveau maximum de profondeur de raffinement", - ang="Maximum level for refinement", - NIVE_MAX =SIMP(statut='f',typ='I' ), + NIVE_MAX =SIMP(statut='f',typ='I', + fr="Niveau maximum de profondeur de raffinement", + ang="Maximum level for refinement"), ) , # b_niveau_minimum =BLOC ( condition = " ( ADAPTATION == 'RAFF_DERA' ) or ( ADAPTATION == 'DERAFFINEMENT' ) or \ ( UNIFORME == 'DERAFFINEMENT' )" , - fr="Niveau minimum de déraffinement", - ang="Minimum level for unrefinement", - NIVE_MIN =SIMP(statut='f',typ='I' ), + NIVE_MIN =SIMP(statut='f',typ='I', + fr="Niveau minimum de déraffinement", + ang="Minimum level for unrefinement" ), ) , +# +# 6.3. Le suivi de frontiere eventuel : +# + NOM_MED_MAILLAGE_FRONTIERE =SIMP(statut='f',typ='TXM', + fr="Nom MED du maillage de la frontiere à suivre", + ang="MED name of the boundary mesh" ), +# + b_frontiere_1 =BLOC ( condition = "NOM_MED_MAILLAGE_FRONTIERE != None" , + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', + fr="Groupes définissant la frontière", + ang="Groups which define the boundary" ), + ) , # ), # -# 6. L'ANALYSE DU MAILLAGE +# 7. L'ANALYSE DU MAILLAGE # - ANALYSE =FACT(statut='f',min=1,max=1, + ANALYSE =FACT(statut='f', fr="Analyse du maillage.", ang="Mesh analysis.", # -# 6.1. CHOIX NON EXCLUSIFS, AVEC DEUX VARIANTES (OUI/NON) : +# 5 CHOIX NON EXCLUSIFS, AVEC DEUX VARIANTES (OUI/NON) : # A. NOMBRE DES ELEMENTS # B. QUALITE DES ELEMENTS # C. INTERPENETRATION DES ELEMENTS @@ -11002,7 +11551,8 @@ IMPR_FICO_HOMA=PROC(nom="IMPR_FICO_HOMA",op= 189, docu="U7.04.01-b", ), # ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -11024,7 +11574,7 @@ IMPR_GENE=PROC(nom="IMPR_GENE",op= 157, fr="Calcul du dommage subi par une structure soumise à une sollicitation de type aléatoire", docu="U4.91.02-d", UIinfo={"groupes":("Impression",)}, - GENE =FACT(statut='o',min=1,max='**', + 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', @@ -11039,14 +11589,14 @@ IMPR_GENE=PROC(nom="IMPR_GENE",op= 157, FORMAT =SIMP(statut='f',typ='TXM',defaut="RESULTAT",into=("RESULTAT",) ), FICHIER =SIMP(statut='f',typ='TXM' ), TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',max='**'), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE =SIMP(statut='f',typ=listis ), TOUT_MODE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_MODE =SIMP(statut='f',typ='I',max='**'), - INST =SIMP(statut='f',typ='R',max='**'), + NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8 ), TOUT_INST =SIMP(statut='f',typ='TXM',into=("OUI",) ), - FREQ =SIMP(statut='f',typ='R',max='**'), + FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_FREQ =SIMP(statut='f',typ=listr8 ), b_prec_crit =BLOC(condition = "LIST_FREQ != None or FREQ != None", PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), @@ -11064,7 +11614,8 @@ IMPR_GENE=PROC(nom="IMPR_GENE",op= 157, INFO_GENE =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -11102,10 +11653,10 @@ IMPR_JEVEUX=PROC(nom="IMPR_JEVEUX",op=16,docu="U4.91.21-g", 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','$$ETAT', + into=('$$CARA','$$IADD','$$GENR','$$TYPE','$$MARQ', '$$DOCU','$$ORIG','$$RNOM','$$LTYP','$$LONG', '$$LONO','$$DATE','$$LUTI','$$HCOD','$$INDX', - '$$TLEC','$$TECR','$$IADM','$$ACCE') ), + '$$TLEC','$$TECR','$$IADM','$$ACCE','$$USADI') ), ), b_repertoire =BLOC(condition = "(ENTITE=='REPERTOIRE')", CLASSE =SIMP(statut='f',typ='TXM',into=('G','V','L',' '),defaut=' '), @@ -11113,13 +11664,14 @@ IMPR_JEVEUX=PROC(nom="IMPR_JEVEUX",op=16,docu="U4.91.21-g", b_disque =BLOC(condition = "(ENTITE=='DISQUE')", CLASSE =SIMP(statut='f',typ='TXM' ,into=('G','V','L',' '),defaut=' '), ), - IMPRESSION =FACT(statut='f',min=1,max=1, + 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 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -11153,8 +11705,8 @@ IMPR_MACR_ELEM=PROC(nom="IMPR_MACR_ELEM",op= 160, b_miss_3d =BLOC(condition = "FORMAT == 'MISS_3D'", UNITE =SIMP(statut='f',typ='I',defaut= 26 ), SOUS_TITRE =SIMP(statut='f',typ='TXM',max='**'), - AMOR_REDUIT =SIMP(statut='f',typ='R',max='**'), - GROUP_MA_INTERF =SIMP(statut='o',typ=grma,max='**'), + AMOR_REDUIT =SIMP(statut='f',typ='R' ,max='**'), + GROUP_MA_INTERF =SIMP(statut='o',typ=grma ,max='**'), # Ces trois mots cles sont-ils dans le bon bloc et avec le bon statut GROUP_MA_FLU_STR=SIMP(statut='f',typ=grma,max='**'), GROUP_MA_FLU_SOL=SIMP(statut='f',typ=grma,max='**'), @@ -11172,7 +11724,8 @@ IMPR_MACR_ELEM=PROC(nom="IMPR_MACR_ELEM",op= 160, ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -11196,7 +11749,7 @@ IMPR_MATRICE=PROC(nom="IMPR_MATRICE",op= 159, UIinfo={"groupes":("Impression",)}, regles=(AU_MOINS_UN('MATR_ELEM','MATR_ASSE'),), - MATR_ELEM =FACT(statut='f',min=1,max='**', + MATR_ELEM =FACT(statut='f',max='**', FICHIER =SIMP(statut='f',typ='TXM' ), FORMAT =SIMP(statut='f',typ='TXM',defaut="IDEAS", into=("IDEAS","RESULTAT") ), @@ -11207,16 +11760,16 @@ IMPR_MATRICE=PROC(nom="IMPR_MATRICE",op= 159, MATRICE =SIMP(statut='o',typ=(matr_elem, vect_elem)), # Quelle regle pour TOUT, NOEUD, GROUP_NO, MAILLE, GROUP_MA TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), + 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',min=1,max='**', + MATR_ASSE =FACT(statut='f',max='**', FICHIER =SIMP(statut='f',typ='TXM' ), FORMAT =SIMP(statut='f',typ='TXM',defaut="IDEAS", into=("IDEAS","RESULTAT") ), @@ -11225,10 +11778,10 @@ IMPR_MATRICE=PROC(nom="IMPR_MATRICE",op= 159, MATRICE =SIMP(statut='o',typ=matr_asse), # Quelle regle pour TOUT, NOEUD, GROUP_NO, MAILLE, GROUP_MA TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), + 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='**'), @@ -11238,7 +11791,8 @@ IMPR_MATRICE=PROC(nom="IMPR_MATRICE",op= 159, VALE_ZERO =SIMP(statut='f',typ='R',defaut= 0.E+0 ), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -11263,14 +11817,14 @@ IMPR_MISS_3D=PROC(nom="IMPR_MISS_3D",op= 162, 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',min=1,max='**', + EXCIT =FACT(statut='f',max='**', regles=(UN_PARMI('FONC_MULT','COEF_MULT' ),), VECT_ASSE =SIMP(statut='f',typ=cham_no_depl_r ), FONC_MULT =SIMP(statut='f',typ=(fonction,formule) ), COEF_MULT =SIMP(statut='f',typ='R' ), ), - EXCIT_SOL =FACT(statut='f',min=1,max='**', - DIRECTION =SIMP(statut='o',typ='R',max='**'), + EXCIT_SOL =FACT(statut='f',max='**', + DIRECTION =SIMP(statut='o',typ='R',min=3,max=3), FONC_SIGNAL =SIMP(statut='f',typ=(fonction,formule) ), NOM_CHAM =SIMP(statut='f',typ='TXM',defaut="DEPL", into=("DEPL","VITE","ACCE","FORC",) ), @@ -11284,29 +11838,30 @@ IMPR_MISS_3D=PROC(nom="IMPR_MISS_3D",op= 162, INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 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. +# 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. # ====================================================================== IMPR_RESU=PROC(nom="IMPR_RESU",op=39,docu="U4.91.01-g", UIinfo={"groupes":("Impression",)}, fr="Impression du résultat d un calcul (différents formats)", MODELE =SIMP(statut='f',typ=modele), - RESU =FACT(statut='o',min=1,max='**', + RESU =FACT(statut='o',max='**', FORMAT =SIMP(statut='f',typ='TXM',defaut="RESULTAT", into=("RESULTAT","IDEAS","ASTER","CASTEM","ENSIGHT","MED","GMSH") ), @@ -11332,7 +11887,7 @@ IMPR_RESU=PROC(nom="IMPR_RESU",op=39,docu="U4.91.01-g", b_sensibilite =BLOC(condition="RESULTAT != None", fr="Définition des paramètres de sensibilité", ang="Definition of sensitivity parameters", - SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),max='**', + SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', fr="Liste des paramètres de sensibilité.", ang="List of sensitivity parameters"),), @@ -11342,18 +11897,18 @@ IMPR_RESU=PROC(nom="IMPR_RESU",op=39,docu="U4.91.01-g", 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',max='**'), + 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',max='**'), - NUME_MODE =SIMP(statut='f',typ='I',max='**'), + 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), - NOEUD_CMP =SIMP(statut='f',typ='TXM',max='**'), - NOM_CAS =SIMP(statut='f',typ='TXM',max='**'), - ANGL =SIMP(statut='f',typ='R',max='**'), - FREQ =SIMP(statut='f',typ='R',max='**'), + 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), - INST =SIMP(statut='f',typ='R',max='**'), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8), b_acce_reel =BLOC(condition="(FREQ != None)or(LIST_FREQ != None)or(INST != None)or(LIST_INST != None)", @@ -11381,18 +11936,18 @@ IMPR_RESU=PROC(nom="IMPR_RESU",op=39,docu="U4.91.01-g", 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,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,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 toplogiques", TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), + 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')", @@ -11410,7 +11965,8 @@ IMPR_RESU=PROC(nom="IMPR_RESU",op=39,docu="U4.91.01-g", ), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -11451,7 +12007,8 @@ IMPR_STURM=PROC(nom="IMPR_STURM",op=32,fr="Calculer et imprimer le nombre de val 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 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -11474,10 +12031,13 @@ IMPR_TABLE=PROC(nom="IMPR_TABLE",op=155,docu="U4.91.03-d", UIinfo={"groupes":("Impression",)}, fr="Impression d un concept de type table", TABLE =SIMP(statut='o',typ=table), + SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', + fr="Liste des paramètres de sensibilité.", + ang="List of sensitivity parameters"), FICHIER =SIMP(statut='f',typ='TXM',defaut="RESULTAT", ), FORMAT =SIMP(statut='f',typ='TXM',defaut="EXCEL", into=("EXCEL","AGRAF","MOT_CLE","TABLEAU","ASTER") ), - FILTRE =FACT(statut='f',min=1,max='**', + 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", @@ -11492,9 +12052,9 @@ IMPR_TABLE=PROC(nom="IMPR_TABLE",op=155,docu="U4.91.03-d", 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',min=1,max=1, - NOM_PARA =SIMP(statut='o',typ='TXM',max='**'), - ORDRE =SIMP(statut='f',typ='TXM',max='**',defaut="CROISSANT", + TRI =FACT(statut='f', + NOM_PARA =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**'), + ORDRE =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',defaut="CROISSANT", into=("CROISSANT","DECROISSANT") ), CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), @@ -11503,12 +12063,14 @@ IMPR_TABLE=PROC(nom="IMPR_TABLE",op=155,docu="U4.91.03-d", FORMAT_R =SIMP(statut='f',typ='TXM',defaut="1PE12.5"), FORMAT_C =SIMP(statut='f',typ='TXM',defaut="MODULE_PHASE", into=("MODULE_PHASE","REEL_IMAG") ), - NOM_PARA =SIMP(statut='f',typ='TXM',max='**'), + NOM_PARA =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), TOUT_PARA =SIMP(statut='f',typ='TXM',into=("OUI",)), IMPR_FONCTION =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), TITRE_TABLE =SIMP(statut='f',typ='TXM',max='**'), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -11533,7 +12095,8 @@ INCLUDE=MACRO(nom="INCLUDE",op=ops.build_include,docu="U4.13.01-f", UNITE = SIMP(statut='o',typ='I'), INFO = SIMP(statut='f',typ='I',defaut=1,into=(1,2)), ); -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -11564,14 +12127,15 @@ INCLUDE_MATERIAU=MACRO(nom="INCLUDE_MATERIAU",op=-14,docu="U4.43.02-b", 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',min=1,max=99, + 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/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -11596,13 +12160,12 @@ INFO_EXEC_ASTER=OPER(nom="INFO_EXEC_ASTER",op=35,sd_prod=table, UIinfo={"groupes":("Gestion du travail",)}, regles=(), - LISTE_INFO =SIMP(statut='o',typ='TXM',max='**', - into=("CPU_RESTANT","CPU",),), - + LISTE_INFO =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=2,into=("CPU_RESTANT","CPU",),), TITRE =SIMP(statut='f',typ='TXM',max='**'), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -11637,54 +12200,55 @@ INTE_MAIL_2D=OPER(nom="INTE_MAIL_2D",op=50,sd_prod=courbe,docu="U4.81.11-f", EXCLUS('DEFI_CHEMIN','DEFI_ARC'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - DEFI_SEGMENT =FACT(statut='f',min=1,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,max=1), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno,max=1), + 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,max=1), - GROUP_NO_EXTR =SIMP(statut='f',typ=grno,max=1), + NOEUD_EXTR =SIMP(statut='f',typ=no,), + GROUP_NO_EXTR =SIMP(statut='f',typ=grno,), ), - DEFI_ARC =FACT(statut='f',min=1,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,max=1), - GROUP_NO_CENTRE =SIMP(statut='f',typ=grno,max=1), - RAYON =SIMP(statut='f',typ='R',max=1,val_min=0.E+0), + 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,max=1), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno,max=1), + 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,max=1), - GROUP_NO_EXTR =SIMP(statut='f',typ=grno,max=1), + 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',min=1,max='**', + DEFI_CHEMIN =FACT(statut='f',max='**', regles=(UN_PARMI('MAILLE','GROUP_MA'),), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), + 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,max=1), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno,max=1), + 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/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -11708,22 +12272,23 @@ INTE_MAIL_3D=OPER(nom="INTE_MAIL_3D",op=96,sd_prod=surface,docu="U4.81.12-f", fr="Définition d un chemin sur un maillage 3D",reentrant='n', MAILLAGE =SIMP(statut='o',typ=maillage), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - DEFI_SEGMENT =FACT(statut='o',min=1,max='**', + 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,max=1), - GROUP_NO_ORIG =SIMP(statut='f',typ=grno,max=1), + 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,max=1), - GROUP_NO_EXTR =SIMP(statut='f',typ=grno,max=1), + 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 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -11742,6 +12307,8 @@ INTE_MAIL_3D=OPER(nom="INTE_MAIL_3D",op=96,sd_prod=surface,docu="U4.81.12-f", # 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 if TYPE_CHAM == "NOEU_DBEL_R" : return cham_no_dbel_r if TYPE_CHAM == "NOEU_DEPL_C" : return cham_no_depl_c if TYPE_CHAM == "NOEU_DEPL_F" : return cham_no_depl_f @@ -11851,16 +12418,30 @@ LIRE_CHAMP=OPER(nom="LIRE_CHAMP",op= 192,sd_prod=lire_champ_prod, 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' ),), + 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',max='**',), - NOM_CMP_MED =SIMP(statut='f',typ='TXM',max='**',), - NUME_ORDRE =SIMP(statut='f',typ='I',max='**',), - NUME_PT =SIMP(statut='f',typ='I',max='**',), - NOM_MAIL_MED = SIMP(statut='f',typ='TXM',), + 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=("NOEU_DBEL_R", "ELEM_DBEL_R", "ELNO_DBEL_R", "ELGA_DBEL_R", "NOEU_DEPL_C", "ELEM_DEPL_C", "ELNO_DEPL_C", "ELGA_DEPL_C", @@ -11892,7 +12473,8 @@ LIRE_CHAMP=OPER(nom="LIRE_CHAMP",op= 192,sd_prod=lire_champ_prod, ), INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -11931,7 +12513,8 @@ LIRE_FONCTION=OPER(nom="LIRE_FONCTION",op= 83,sd_prod=fonction, INFO =SIMP(statut='f',typ='I',defaut= 2,into=( 1 , 2) ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -11965,7 +12548,8 @@ LIRE_INTE_SPEC=OPER(nom="LIRE_INTE_SPEC",op= 116,sd_prod=tabl_intsp, TITRE =SIMP(statut='f',typ='TXM',max='**'), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -11996,11 +12580,11 @@ LIRE_MAILLAGE=OPER(nom="LIRE_MAILLAGE",op= 1,sd_prod=maillage, fr="Format du fichier : ASTER ou MED.", ang="Format of the file : ASTER or MED.",), # - ABSC_CURV =FACT(statut='f',min=0,max=1, + ABSC_CURV =FACT(statut='f',min=0, TOUT =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), ), # - VERI_MAIL =FACT(statut='d',min=1,max=1, + 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 ), ), @@ -12023,12 +12607,24 @@ LIRE_MAILLAGE=OPER(nom="LIRE_MAILLAGE",op= 1,sd_prod=maillage, INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), # ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# SEE THE FILE "LICENSE.TERMS" FOR INFORMATION ON USAGE AND -# REDISTRIBUTION OF THIS FILE. +# 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 @@ -12045,7 +12641,8 @@ LIRE_MISS_3D=OPER(nom="LIRE_MISS_3D",op= 163,sd_prod=lire_miss_3d_prod, TYPE_RESU =SIMP(statut='f',typ='TXM',defaut="TRANS",into=("TRANS","HARMO") ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -12074,9 +12671,9 @@ LIRE_PLEXUS=OPER(nom="LIRE_PLEXUS",op= 184,sd_prod=evol_char, MAILLAGE =SIMP(statut='o',typ=maillage ), MODELE =SIMP(statut='o',typ=modele ), TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',max='**'), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE =SIMP(statut='f',typ=listis ), - INST =SIMP(statut='f',typ='R',max='**'), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8 ), b_prec_crit =BLOC(condition = "LIST_INST != None or INST != None", PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), @@ -12085,14 +12682,27 @@ LIRE_PLEXUS=OPER(nom="LIRE_PLEXUS",op= 184,sd_prod=evol_char, ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# SEE THE FILE "LICENSE.TERMS" FOR INFORMATION ON USAGE AND -# REDISTRIBUTION OF THIS FILE. +# 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 @@ -12104,12 +12714,43 @@ def lire_resu_prod(TYPE_RESU,**args): if TYPE_RESU == "MODE_MECA" : return mode_meca 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,docu="U7.02.01-d",reentrant='n', UIinfo={"groupes":("Maillage",)}, fr="Lecture de champs aux noeuds ou par éléments aux noeuds sur un fichier IDEAS ou EnSight", -# 0 mots clés généraux : +# 0) mots clés généraux : #---------------------- TYPE_RESU =SIMP(statut='o',typ='TXM',into=("EVOL_THER","EVOL_ELAS","EVOL_NOLI","MODE_MECA", "DYNA_TRANS","DYNA_HARMO","HARM_GENE","EVOL_CHAR") ), @@ -12126,11 +12767,11 @@ LIRE_RESU=OPER(nom="LIRE_RESU",op=150,sd_prod=lire_resu_prod,docu="U7.02.01-d",r NB_VARI =SIMP(statut='f',typ='I' ), -# 1 blocs selon le format choisi : +# 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 ), ), @@ -12142,18 +12783,17 @@ LIRE_RESU=OPER(nom="LIRE_RESU",op=150,sd_prod=lire_resu_prod,docu="U7.02.01-d",r 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,max='**'),), + 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 ), + 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',max='**',into=("TEMP","DEPL","VITE","ACCE","PRES","VARI_ELNO", - "SIEF_ELNO","EPSA_ELNO","TEMP_PEAU","VITE_VENT", - "FVOL_3D","FVOL_2D","FSUR_3D","FSUR_2D") ), + 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), @@ -12169,66 +12809,41 @@ LIRE_RESU=OPER(nom="LIRE_RESU",op=150,sd_prod=lire_resu_prod,docu="U7.02.01-d",r # ------------- 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.",), + NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=l_nom_cham_pas_elga()), FORMAT_MED =FACT(statut='f',max='**', + 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_IDEM =SIMP(statut='f',typ='TXM',into=("OUI",), fr="Les composantes ont le meme nom dans MED et ASTER.", ), 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.", ), - NOM_CHAM =SIMP(statut='o',typ='TXM',max=1,into=("TEMP","DEPL","SIEF_ELNO","EPSA_ELNO","VARI_ELNO",) ), ), - UNITE =SIMP(statut='f',typ='I',defaut= 81, fr="Le fichier est : fort.n.",), ), -# 2 blocs selon le type du résultat : +# 2) blocs selon le type du résultat : #--------------------------------- - b_evol_elas =BLOC(condition="TYPE_RESU=='EVOL_ELAS'", - NOM_CHAM =SIMP(statut='o',typ='TXM',max='**', - into=("DEPL",) ), - ), - b_evol_ther =BLOC(condition="TYPE_RESU=='EVOL_THER'", - NOM_CHAM =SIMP(statut='o',typ='TXM',max='**', - into=("TEMP","TEMP_PEAU") ), - ), - b_evol_char =BLOC(condition="TYPE_RESU=='EVOL_CHAR'", - NOM_CHAM =SIMP(statut='o',typ='TXM',max='**', - into=("PRES","VITE_VENT", - "FVOL_3D","FVOL_2D", - "FSUR_3D","FSUR_2D") ), - ), - b_evol_noli =BLOC(condition="TYPE_RESU=='EVOL_NOLI'", - NOM_CHAM =SIMP(statut='o',typ='TXM',max='**', - into=("DEPL","VITE","ACCE","VARI_ELNO", - "SIEF_ELNO","EPSA_ELNO") ), - ), b_mode_meca =BLOC(condition="TYPE_RESU=='MODE_MECA'", - NOM_CHAM =SIMP(statut='o',typ='TXM',max='**', - into=("DEPL",) - ), - MATR_A =SIMP(statut='f',typ=matr_asse_depl_r,min=1,max=1,), - MATR_B =SIMP(statut='f',typ=matr_asse_depl_r,min=1,max=1,), - ), - b_dyna =BLOC(condition="((TYPE_RESU=='DYNA_TRANS') or (TYPE_RESU=='DYNA_HARMO') or\ - (TYPE_RESU=='HARM_GENE')) and (FORMAT!='IDEAS_DS58')", - NOM_CHAM =SIMP(statut='o',typ='TXM',max='**', - into=("DEPL","VITE","ACCE",) ), + MATR_A =SIMP(statut='f',typ=matr_asse_depl_r,), + MATR_B =SIMP(statut='f',typ=matr_asse_depl_r,), ), -# 3 autres blocs : +# 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',max='**'), - INST =SIMP(statut='f',typ='R',max='**'), + 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), LIST_ORDRE =SIMP(statut='f',typ=listis), - FREQ =SIMP(statut='f',typ='R',max='**'), + FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_FREQ =SIMP(statut='f',typ=listr8), b_acce_reel =BLOC(condition="(INST != None)or(LIST_INST != None)or(FREQ != None)or(LIST_FREQ != None)", @@ -12237,7 +12852,8 @@ LIRE_RESU=OPER(nom="LIRE_RESU",op=150,sd_prod=lire_resu_prod,docu="U7.02.01-d",r ), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -12277,7 +12893,8 @@ LIRE_TABLE=OPER(nom="LIRE_TABLE",op=29,sd_prod=lire_table_prod, SEPARATEUR =SIMP(statut='o',typ='TXM'), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -12296,19 +12913,119 @@ LIRE_TABLE=OPER(nom="LIRE_TABLE",op=29,sd_prod=lire_table_prod, # 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): - mail1=ADAPTATION['MAILLAGE_N'] - self.type_sdprod(mail1,maillage) - mail2=ADAPTATION['MAILLAGE_NP1'] - self.type_sdprod(mail2,maillage) + maillage_np1=ADAPTATION['MAILLAGE_NP1'] + self.type_sdprod(maillage_np1,maillage) 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 == 'NOEU_TEMP_R':self.type_sdprod(ch['CHAM_MAJ'],cham_no_temp_r) - if t == 'NOEU_DEPL_R':self.type_sdprod(ch['CHAM_MAJ'],cham_no_depl_r) + if t == "NOEU_DBEL_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_dbel_r) + if t == "NOEU_DEPL_C":self.type_sdprod(ch['CHAM_MAJ'],cham_no_depl_c) + if t == "NOEU_DEPL_F":self.type_sdprod(ch['CHAM_MAJ'],cham_no_depl_f) + if t == "NOEU_DEPL_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_depl_r) + if t == "NOEU_DURT_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_durt_r) + if t == "NOEU_ENER_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_ener_r) + if t == "NOEU_EPSI_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_epsi_r) + if t == "NOEU_ERREUR":self.type_sdprod(ch['CHAM_MAJ'],cham_no_erreur) + if t == "NOEU_FLUX_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_flux_r) + if t == "NOEU_GEOM_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_geom_r) + if t == "NOEU_G_DEPL_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_g_depl_r) + if t == "NOEU_HYDR_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_hydr_r) + if t == "NOEU_INST_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_inst_r) + if t == "NOEU_INTE_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_inte_r) + if t == "NOEU_META_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_meta_r) + if t == "NOEU_NEUT_F":self.type_sdprod(ch['CHAM_MAJ'],cham_no_neut_f) + if t == "NOEU_NEUT_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_neut_r) + if t == "NOEU_PRES_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_pres_r) + if t == "NOEU_SIEF_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_sief_r) + if t == "NOEU_SOUR_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_sour_r) + if t == "NOEU_TEMP_F":self.type_sdprod(ch['CHAM_MAJ'],cham_no_temp_f) + if t == "NOEU_TEMP_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_temp_r) + if t == "NOEU_VAR2_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_var2_r) + if t == "NOEU_VNOR_C":self.type_sdprod(ch['CHAM_MAJ'],cham_no_vnor_c) + if t == "ELEM_DBEL_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_dbel_r) + if t == "ELEM_DEPL_C":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_depl_c) + if t == "ELEM_DEPL_F":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_depl_f) + if t == "ELEM_DEPL_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_depl_r) + if t == "ELEM_DURT_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_durt_r) + if t == "ELEM_ENER_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_ener_r) + if t == "ELEM_EPSI_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_epsi_r) + if t == "ELEM_ERREUR":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_erreur) + if t == "ELEM_FLUX_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_flux_r) + if t == "ELEM_GEOM_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_geom_r) + if t == "ELEM_G_DEPL_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_g_depl) + if t == "ELEM_HYDR_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_hydr_r) + if t == "ELEM_INST_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_inst_r) + if t == "ELEM_INTE_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_inte_r) + if t == "ELEM_META_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_meta_r) + if t == "ELEM_NEUT_F":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_neut_f) + if t == "ELEM_NEUT_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_neut_r) + if t == "ELEM_PRES_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_pres_r) + if t == "ELEM_SIEF_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_sief_r) + if t == "ELEM_SOUR_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_sour_r) + if t == "ELEM_TEMP_F":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_temp_f) + if t == "ELEM_TEMP_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_temp_r) + if t == "ELEM_VARI_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_vari_r) + if t == "ELEM_VNOR_C":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_vnor_c) + if t == "ELNO_DBEL_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_dbel_r) + if t == "ELNO_DEPL_C":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_depl_c) + if t == "ELNO_DEPL_F":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_depl_f) + if t == "ELNO_DEPL_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_depl_r) + if t == "ELNO_DURT_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_durt_r) + if t == "ELNO_ENER_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_ener_r) + if t == "ELNO_EPSI_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_epsi_r) + if t == "ELNO_ERREUR":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_erreur) + if t == "ELNO_FLUX_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_flux_r) + if t == "ELNO_GEOM_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_geom_r) + if t == "ELNO_G_DEPL_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_g_depl) + if t == "ELNO_HYDR_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_hydr_r) + if t == "ELNO_INST_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_inst_r) + if t == "ELNO_INTE_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_inte_r) + if t == "ELNO_META_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_meta_r) + if t == "ELNO_NEUT_F":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_neut_f) + if t == "ELNO_NEUT_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_neut_r) + if t == "ELNO_PRES_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_pres_r) + if t == "ELNO_SIEF_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_sief_r) + if t == "ELNO_SOUR_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_sour_r) + if t == "ELNO_TEMP_F":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_temp_f) + if t == "ELNO_TEMP_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_temp_r) + if t == "ELNO_VARI_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_vari_r) + if t == "ELNO_VNOR_C":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_vnor_c) + if t == "ELGA_DBEL_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_dbel_r) + if t == "ELGA_DEPL_C":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_depl_c) + if t == "ELGA_DEPL_F":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_depl_f) + if t == "ELGA_DEPL_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_depl_r) + if t == "ELGA_DURT_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_durt_r) + if t == "ELGA_ENER_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_ener_r) + if t == "ELGA_EPSI_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_epsi_r) + if t == "ELGA_ERREUR":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_erreur) + if t == "ELGA_FLUX_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_flux_r) + if t == "ELGA_GEOM_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_geom_r) + if t == "ELGA_G_DEPL_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_g_depl) + if t == "ELGA_HYDR_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_hydr_r) + if t == "ELGA_INST_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_inst_r) + if t == "ELGA_INTE_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_inte_r) + if t == "ELGA_META_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_meta_r) + if t == "ELGA_NEUT_F":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_neut_f) + if t == "ELGA_NEUT_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_neut_r) + if t == "ELGA_PRES_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_pres_r) + if t == "ELGA_SIEF_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_sief_r) + if t == "ELGA_SOUR_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_sour_r) + if t == "ELGA_TEMP_F":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_temp_f) + if t == "ELGA_TEMP_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_temp_r) + if t == "ELGA_VARI_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_vari_r) + if t == "ELGA_VNOR_C":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_vnor_c) + if t == "NOEU_IRRA_R":self.type_sdprod(ch['CHAM_MAJ'],cham_no_irra_r) + if t == "ELEM_IRRA_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_irra_r) + if t == "ELNO_IRRA_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_irra_r) + if t == "ELGA_IRRA_R":self.type_sdprod(ch['CHAM_MAJ'],cham_elem_irra_r) return None -MACR_ADAP_MAIL=MACRO(nom="MACR_ADAP_MAIL",op=-24,sd_prod=macr_adap_mail_prod, +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", @@ -12319,8 +13036,8 @@ MACR_ADAP_MAIL=MACRO(nom="MACR_ADAP_MAIL",op=-24,sd_prod=macr_adap_mail_prod, # # 2. Version de HOMARD # - VERSION_HOMARD = SIMP(statut='f',typ='TXM',defaut="V5_5", - into=("V5_5", "V5_N", "V5_N_PERSO"), + VERSION_HOMARD = SIMP(statut='f',typ='TXM',defaut="V6_2", + into=("V6_2", "V6_N", "V6_N_PERSO"), fr="Version de HOMARD", ang="HOMARD release"), # @@ -12331,23 +13048,33 @@ MACR_ADAP_MAIL=MACRO(nom="MACR_ADAP_MAIL",op=-24,sd_prod=macr_adap_mail_prod, fr="Langue des messages issus de HOMARD.", ang="Language for HOMARD messages." ), # -# 4. LE TYPE DE TRAITEMENT : +# 4. Gestion des éléments autres que des simplexes +# Remarque : pour le moment on bride le choix 2 +# 0 : autres elements refuses (defaut) +# 1 : raffinement sur les simplexes, mais autres acceptes +# 2 : tous +# + NON_SIMPLEXE = SIMP(statut='f',typ='I',defaut=0,into=(0,1), + fr="Acceptation d'éléments quad, hexa et penta", + ang="quad, hexa and penta elements allowed" ), # - ADAPTATION =FACT(statut='o',min=01,max=01, +# 5. Le type de traitement : +# + ADAPTATION =FACT(statut='o', fr="Type d'adaptation", ang="Type of adaptation", # -# 4.1. DEUX CHOIX D'ADAPTATION EXCLUSIFS : +# 5.1. Deux choix d'adaptation exclusifs : # -# 4.1. -# A. SELON UN INDICATEUR D'ERREUR, AVEC TROIS VARIANTES : -# . RAFFINEMENT ET DERAFFINEMENT -# . RAFFINEMENT SEUL -# . DERAFFINEMENT SEUL -# B. UNIFORME, AVEC TROIS VARIANTES : -# . RAFFINEMENT SEUL -# . DERAFFINEMENT SEUL -# . RIEN : LE MAILLAGE EST LE MEME A LA SORTIE ET A L'ENTREE +# 5.1. +# A. Selon un indicateur d'erreur, avec trois variantes : +# . Raffinement et deraffinement +# . Raffinement seul +# . Deraffinement seul +# B. Uniforme, avec trois variantes : +# . Raffinement seul +# . Deraffinement seul +# . Rien : le maillage est le meme a la sortie et a l'entree # regles=( UN_PARMI('LIBRE','UNIFORME'), @@ -12361,52 +13088,74 @@ MACR_ADAP_MAIL=MACRO(nom="MACR_ADAP_MAIL",op=-24,sd_prod=macr_adap_mail_prod, fr="Adaptation uniforme.", ang="Uniform adaptation" ), # -# 4.2. QUEL QUE SOIT LE TYPE DE TRAITEMENT, IL FAUT DONNER : -# A. LE CONCEPT DU MAILLAGE INITIAL -# B. LE CONCEPT DU MAILLAGE FINAL +# 5.2. Quel que soit le type de traitement, il faut donner : +# A. Le concept du maillage initial +# B. Le concept du maillage final # - MAILLAGE_N = SIMP(statut='o',typ=(CO,maillage), + MAILLAGE_N = SIMP(statut='o',typ=maillage, fr="Maillage avant adaptation", ang="Mesh before adaptation" ), MAILLAGE_NP1 = SIMP(statut='o',typ=(CO,maillage), fr="Maillage apres adaptation", ang="Mesh after adaptation" ), # -# 4.3. POUR DE L'ADAPTATION LIBRE, IL FAUT L'INDICATEUR D'ERREUR +# 5.3. Pour de l'adaptation libre, il faut l'indicateur d'erreur # # b_indicateur_d_erreur =BLOC( condition = " LIBRE != None " , fr="Indicateur d'erreur", ang="Error indicator", # -# 4.3.1. LE NOM DU CONCEPT RESULTAT +# 5.3.1. Le nom du concept resultat # RESULTAT_N = SIMP(statut='o',typ=(evol_elas,evol_noli,evol_ther) , fr="Resultat contenant l'indicateur d'erreur", ang="Result with error indicator" ), # -# 4.3.2. LE CHAMP D'INDICATEUR D'ERREUR +# 5.3.2. Le champ d'indicateur d'erreur # INDICATEUR = SIMP(statut='o',typ='TXM', fr="Champ de l'indicateur d'erreur", ang="Error indicator field" ), # -# 4.3.3. LA COMPOSANTE RETENUE +# 5.3.3. La composante retenue # NOM_CMP_INDICA = SIMP(statut='o',typ='TXM', fr="Composante retenue", ang="Selected component" ), # -# 4.3.4. LE NUMERO D'ORDRE +# 5.3.4. Le paramètre temporel pour l'indicateur # - NUME_ORDRE = SIMP(statut='f',typ='I' , + regles=(EXCLUS('NUME_ORDRE','INST'),), +# +# 5.3.4.1. Soit le numero d'ordre +# + NUME_ORDRE = SIMP(statut='f',typ='I', fr="Numero d ordre", ang="Rank" ), +# +# 5.3.4.2. Soit l'instant +# 5.3.4.2.1. Sa valeur +# + INST = SIMP(statut='f',typ='R', + fr="Instant associé", + ang="Instant" ), +# +# 5.3.4.2.2. La précision du choix de l'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" ),), +# ) , # -# 4.4. LES CRITERES POUR DE L'ADAPTATION LIBRE : -# ABSOLU, RELATIF, EN PROPORTION D'ENTITE -# 4.4.1. POUR LE RAFFINEMENT : +# 5.4. Les criteres pour de l'adaptation libre : +# absolu, relatif, en proportion d'entite +# 5.4.1. Pour le raffinement : # b_critere_de_raffinement =BLOC( condition = " ( LIBRE == 'RAFF_DERA' ) or ( LIBRE == 'RAFFINEMENT' ) " , fr="Critère de raffinement.", @@ -12423,7 +13172,7 @@ MACR_ADAP_MAIL=MACRO(nom="MACR_ADAP_MAIL",op=-24,sd_prod=macr_adap_mail_prod, ang="Percentage of elements" ), ) , # -# 4.4.2. POUR LE DERAFFINEMENT : +# 5.4.2. Pour le deraffinement : # b_critere_de_deraffinement =BLOC ( condition = " ( LIBRE == 'RAFF_DERA' ) or ( LIBRE == 'DERAFFINEMENT' ) " , fr="Critère de déraffinement.", @@ -12440,97 +13189,158 @@ MACR_ADAP_MAIL=MACRO(nom="MACR_ADAP_MAIL",op=-24,sd_prod=macr_adap_mail_prod, ang="Percentage of elements" ), ) , # -# 4.5. LES NIVEAUX EXTREMES POUR LE MAILLAGE ADAPTE -# 4.5.1. POUR LE RAFFINEMENT : +# 5.5. Les niveaux extremes pour le maillage adapte +# 5.5.1. Pour le raffinement : # b_niveau_maximum =BLOC ( condition = " ( LIBRE == 'RAFF_DERA' ) or ( LIBRE == 'RAFFINEMENT' ) or \ ( UNIFORME == 'RAFFINEMENT' ) " , - 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", + NIVE_MAX = SIMP(statut='f',typ='I' ), ) , # -# 4.5.2. POUR LE DERAFFINEMENT : +# 5.5.2. Pour le deraffinement : # b_niveau_minimum =BLOC ( condition = " ( LIBRE == 'RAFF_DERA' ) or ( LIBRE == 'DERAFFINEMENT' ) or \ ( UNIFORME == 'DERAFFINEMENT' ) " , - 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", + NIVE_MIN = SIMP(statut='f',typ='I' ), ) , +# ), # -# 5. LA MISE A JOUR DE CHAMPS. -# PAR DEFAUT, RIEN NE SE FAIT +# 6. Suivi d'une frontiere +# + MAILLAGE_FRONTIERE = SIMP(statut='f',typ=maillage, + fr="Maillage de la frontiere à suivre", + ang="Boundary mesh" ), +# + b_frontiere =BLOC( condition = " MAILLAGE_FRONTIERE != None " , + fr="Groupes définissant la frontière", + ang="Groups which define the boundary", + GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**' ), + ) , +# +# 7. Mise à jour de champs sur le nouveau maillage # - MAJ_CHAM =FACT(statut='f',min=01,max='**', + MAJ_CHAM =FACT(statut='f',max='**', fr="Mise à jour de champs sur le nouveau maillage.", ang="Updating of fields over the new mesh.", # -# 5.1. LE NOM DU RESULTAT DU CHAMP A INTERPOLER +# 7.1. Le nom du champ qui contiendra le resultat de la mise a jour +# + CHAM_MAJ = SIMP(statut='o',typ=(CO,cham_gd), + fr="Nom du champ qui contiendra le champ mis à jour", + ang="Name of the field for the updated field"), +# +# 7.2. Le type du champ qui contiendra le resultat de la mise a jour +# Remarque : la liste qui suit doit etre conforme à son homologue de LIRE_CHAMP +# + TYPE_CHAM = SIMP(statut='o',typ='TXM', + into=("NOEU_DBEL_R", "ELEM_DBEL_R", "ELNO_DBEL_R", "ELGA_DBEL_R", + "NOEU_DEPL_C", "ELEM_DEPL_C", "ELNO_DEPL_C", "ELGA_DEPL_C", + "NOEU_DEPL_F", "ELEM_DEPL_F", "ELNO_DEPL_F", "ELGA_DEPL_F", + "NOEU_DEPL_R", "ELEM_DEPL_R", "ELNO_DEPL_R", "ELGA_DEPL_R", + "NOEU_DURT_R", "ELEM_DURT_R", "ELNO_DURT_R", "ELGA_DURT_R", + "NOEU_ENER_R", "ELEM_ENER_R", "ELNO_ENER_R", "ELGA_ENER_R", + "NOEU_EPSI_R", "ELEM_EPSI_R", "ELNO_EPSI_R", "ELGA_EPSI_R", + "NOEU_ERREUR", "ELEM_ERREUR", "ELNO_ERREUR", "ELGA_ERREUR", + "NOEU_FLUX_R", "ELEM_FLUX_R", "ELNO_FLUX_R", "ELGA_FLUX_R", + "NOEU_GEOM_R", "ELEM_GEOM_R", "ELNO_GEOM_R", "ELGA_GEOM_R", + "NOEU_G_DEPL_R","ELEM_G_DEPL_R","ELNO_G_DEPL_R","ELGA_G_DEPL_R", + "NOEU_HYDR_R", "ELEM_HYDR_R", "ELNO_HYDR_R", "ELGA_HYDR_R", + "NOEU_INST_R", "ELEM_INST_R", "ELNO_INST_R", "ELGA_INST_R", + "NOEU_INTE_R", "ELEM_INTE_R", "ELNO_INTE_R", "ELGA_INTE_R", + "NOEU_META_R", "ELEM_META_R", "ELNO_META_R", "ELGA_META_R", + "NOEU_NEUT_F", "ELEM_NEUT_F", "ELNO_NEUT_F", "ELGA_NEUT_F", + "NOEU_NEUT_R", "ELEM_NEUT_R", "ELNO_NEUT_R", "ELGA_NEUT_R", + "NOEU_PRES_R", "ELEM_PRES_R", "ELNO_PRES_R", "ELGA_PRES_R", + "NOEU_SIEF_R", "ELEM_SIEF_R", "ELNO_SIEF_R", "ELGA_SIEF_R", + "NOEU_SOUR_R", "ELEM_SOUR_R", "ELNO_SOUR_R", "ELGA_SOUR_R", + "NOEU_TEMP_F", "ELEM_TEMP_F", "ELNO_TEMP_F", "ELGA_TEMP_F", + "NOEU_TEMP_R", "ELEM_TEMP_R", "ELNO_TEMP_R", "ELGA_TEMP_R", + "NOEU_VAR2_R", "ELEM_VARI_R", "ELNO_VARI_R", "ELGA_VARI_R", + "NOEU_VNOR_C", "ELEM_VNOR_C", "ELNO_VNOR_C", "ELGA_VNOR_C", + "NOEU_IRRA_R", "ELEM_IRRA_R", "ELNO_IRRA_R", "ELGA_IRRA_R",), + fr="Type du champ qui contiendra le champ mis à jour", + ang="Type of the field for the updated field" ), +# +# 7.3. Le nom du resultat du champ a interpoler # RESULTAT = SIMP(statut='o', typ=(evol_elas,evol_noli,evol_ther), fr="Resultat contenant le champ à mettre à jour", ang="Result with field to be updated" ), # -# 5.2. LE NOM DU CHAMP A INTERPOLER +# 7.4. Le nom du champ a interpoler # NOM_CHAM = SIMP(statut='o',typ='TXM', fr="Nom du champ à mettre à jour", - ang="Name of the field to be updated" ), + ang="Name of the field to be updated" ), +# +# 7.5. Le paramètre temporel pour le champ a interpoler +# + regles=(EXCLUS('NUME_ORDRE','INST'),), # -# 5.3. LE NUMERO D'ORDRE POUR LE CHAMP A INTERPOLER +# 7.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" ), + ang="Rank of the field to be updated" ), # -# 5.4. LE NOM DU CHAMP QUI CONTIENDRA LE RESULTAT DE LA MISE A JOUR +# 7.5.2. Soit l'instant +# 7.5.2.1. Sa valeur # - CHAM_MAJ = SIMP(statut='o',typ=(CO,cham_gd), - fr="Nom du champ qui contiendra le champ mis à jour", - ang="Name of the field for the updated field"), + INST = SIMP(statut='f',typ='R', + fr="Instant associé", + ang="Instant" ), # -# 5.5. LE TYPE DU CHAMP QUI CONTIENDRA LE RESULTAT DE LA MISE A JOUR +# 7.5.2.2. La précision du choix de l'instant # - TYPE_CHAM = SIMP(statut='o',typ='TXM', - into=("NOEU_TEMP_R","NOEU_DEPL_R"), - fr="Type du champ qui contiendra le champ mis à jour", - ang="Type of the field for the updated field" ), + 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" ),), ), # -# 6. INFORMATION SUR LE MAILLAGE : par defaut, on ne fait que les nombres -# A. NOMBRE DE NOEUDS ET ELEMENTS DU MAILLAGE -# B. QUALITE DES ELEMENTS DU MAILLAGE -# C. CONTROLE DE LA NON INTERPENETRATION DES ELEMENTS DU MAILLAGE -# D. CONNEXITE DU MAILLAGE -# E. TAILLE DES DIFFERENTS SOUS-DOMAINES +# 8. Les options d'analyse de maillage ; par defaut, on ne fait que les nombres +# 8.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 elements in the mesh" ), + ang="Number of nodes and éléments in the mesh" ), +# +# 8.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" ), # - 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." ), +# 8.3. Connexite du maillage # CONNEXITE = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"), fr="Connexité du maillage.", ang="Mesh connexity." ), +# +# 8.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." ), # - MENAGE = SIMP(statut='f',typ='TXM',into=("MAILLAGE","SOLUTION","TOUT") ), +# 8.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." ), # ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -12571,7 +13381,7 @@ MACR_ASCOUF_CALC=MACRO(nom="MACR_ASCOUF_CALC",op= -20,sd_prod=macr_ascouf_calc_p "SOUS_EPAIS_COUDE" ) ), - CL_BOL_P2_GV =FACT(statut='f',min=1,max=1, + CL_BOL_P2_GV =FACT(statut='f', ANGLE =SIMP(statut='o',typ='R' ), AZIMUT =SIMP(statut='f',typ='R',defaut= 90. ), ), @@ -12584,7 +13394,7 @@ MACR_ASCOUF_CALC=MACRO(nom="MACR_ASCOUF_CALC",op= -20,sd_prod=macr_ascouf_calc_p CHARGE =SIMP(statut='f',typ=(CO,char_meca)), RESU_THER =SIMP(statut='f',typ=(CO,evol_ther)), - AFFE_MATERIAU =FACT(statut='o',min=1,max=3, + 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") ), @@ -12592,19 +13402,19 @@ MACR_ASCOUF_CALC=MACRO(nom="MACR_ASCOUF_CALC",op= -20,sd_prod=macr_ascouf_calc_p TEMP_REF =SIMP(statut='f',typ='R',defaut= 0.E+0 ), ), - PRES_REP =FACT(statut='f',min=1,max=1, + 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,formule) ), ), - ECHANGE =FACT(statut='f',min=1,max=1, + ECHANGE =FACT(statut='f', COEF_H =SIMP(statut='f',typ=(fonction,formule) ), TEMP_EXT =SIMP(statut='f',typ=(fonction,formule) ), ), - TORS_P1 =FACT(statut='f',min=1,max=6, + 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' ), @@ -12615,18 +13425,18 @@ MACR_ASCOUF_CALC=MACRO(nom="MACR_ASCOUF_CALC",op= -20,sd_prod=macr_ascouf_calc_p FONC_MULT =SIMP(statut='f',typ=(fonction,formule) ), ), - COMP_INCR =FACT(statut='f',min=1,max=1, + 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 ,) ), ), - COMP_ELAS =FACT(statut='f',min=1,max=1, + 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 ,) ), ), - SOLVEUR =FACT(statut='d',min=1,max=1, + 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") ), @@ -12649,7 +13459,7 @@ MACR_ASCOUF_CALC=MACRO(nom="MACR_ASCOUF_CALC",op= -20,sd_prod=macr_ascouf_calc_p SYME =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), ), - CONVERGENCE =FACT(statut='d',min=1,max=1, + 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), @@ -12662,7 +13472,7 @@ MACR_ASCOUF_CALC=MACRO(nom="MACR_ASCOUF_CALC",op= -20,sd_prod=macr_ascouf_calc_p RESO_INTE =SIMP(statut='f',typ='TXM',defaut="IMPLICITE",into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")), ), - NEWTON =FACT(statut='d',min=1,max=1, + 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") ), @@ -12670,12 +13480,12 @@ MACR_ASCOUF_CALC=MACRO(nom="MACR_ASCOUF_CALC",op= -20,sd_prod=macr_ascouf_calc_p EVOL_NOLI =SIMP(statut='f',typ=evol_noli), ), - RECH_LINEAIRE =FACT(statut='f',min=1,max=1, + RECH_LINEAIRE =FACT(statut='f', 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',min=1,max=1, + INCREMENT =FACT(statut='o', regles=(EXCLUS('NUME_INST_INIT','INST_INIT'), EXCLUS('NUME_INST_FIN','INST_FIN'),), LIST_INST =SIMP(statut='o',typ=listr8), @@ -12691,17 +13501,17 @@ MACR_ASCOUF_CALC=MACRO(nom="MACR_ASCOUF_CALC",op= -20,sd_prod=macr_ascouf_calc_p COEF_SUBD_PAS_1 =SIMP(statut='f',typ='R',defaut= 1.0E+0), ), - THETA_3D =FACT(statut='f',min=1,max='**', + THETA_3D =FACT(statut='f',max='**', R_INF =SIMP(statut='o',typ='R' ), R_SUP =SIMP(statut='o',typ='R' ), ), - IMPR_TABLE =FACT(statut='f',min=1,max=1, + 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',max=4, + NOM_PARA =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=4, into=("TRESCA_MEMBRANE", "TRESCA_MFLE", "TRESCA", @@ -12717,7 +13527,7 @@ MACR_ASCOUF_CALC=MACRO(nom="MACR_ASCOUF_CALC",op= -20,sd_prod=macr_ascouf_calc_p TRANSFORMEE =SIMP(statut='f',typ='TXM',defaut="COUDE",into=("COUDE","TUBE") ), ), - IMPRESSION =FACT(statut='f',min=1,max=1, + IMPRESSION =FACT(statut='f', FORMAT =SIMP(statut='f',typ='TXM',defaut="RESULTAT", into=("RESULTAT","ASTER","IDEAS","CASTEM") ), @@ -12735,7 +13545,8 @@ MACR_ASCOUF_CALC=MACRO(nom="MACR_ASCOUF_CALC",op= -20,sd_prod=macr_ascouf_calc_p INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -12760,7 +13571,7 @@ MACR_ASCOUF_MAIL=MACRO(nom="MACR_ASCOUF_MAIL",op= -19,sd_prod=maillage, regles=(EXCLUS('SOUS_EPAIS_COUDE','FISS_COUDE','SOUS_EPAIS_MULTI'),), - EXEC_MAILLAGE =FACT(statut='o',min=1,max=1, + 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), @@ -12769,7 +13580,7 @@ MACR_ASCOUF_MAIL=MACRO(nom="MACR_ASCOUF_MAIL",op= -19,sd_prod=maillage, TYPE_ELEM =SIMP(statut='f',typ='TXM',defaut="CU20",into=("CU20","CUB8") ), - COUDE =FACT(statut='o',min=1,max=1, + 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' ), @@ -12806,7 +13617,7 @@ MACR_ASCOUF_MAIL=MACRO(nom="MACR_ASCOUF_MAIL",op= -19,sd_prod=maillage, ), ), - SOUS_EPAIS_COUDE=FACT(statut='f',min=1,max=1, + 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") ), @@ -12824,7 +13635,7 @@ MACR_ASCOUF_MAIL=MACRO(nom="MACR_ASCOUF_MAIL",op= -19,sd_prod=maillage, EMPREINTE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), ), - SOUS_EPAIS_MULTI=FACT(statut='f',min=1,max='**', + 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") ), @@ -12841,7 +13652,7 @@ MACR_ASCOUF_MAIL=MACRO(nom="MACR_ASCOUF_MAIL",op= -19,sd_prod=maillage, EMPREINTE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), ), - FISS_COUDE =FACT(statut='f',min=1,max=1, + 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' ", @@ -12866,7 +13677,7 @@ MACR_ASCOUF_MAIL=MACRO(nom="MACR_ASCOUF_MAIL",op= -19,sd_prod=maillage, ANGL_OUVERTURE =SIMP(statut='f',typ='R',defaut= 0.5 ), ), - IMPRESSION =FACT(statut='f',min=1,max='**', + IMPRESSION =FACT(statut='f',max='**', regles=(PRESENT_PRESENT('FICHIER','UNITE'),), FORMAT =SIMP(statut='f',typ='TXM',defaut="ASTER", into=("ASTER","IDEAS","CASTEM") ), @@ -12882,7 +13693,8 @@ MACR_ASCOUF_MAIL=MACRO(nom="MACR_ASCOUF_MAIL",op= -19,sd_prod=maillage, INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -12920,7 +13732,7 @@ MACR_ASPIC_CALC=MACRO(nom="MACR_ASPIC_CALC",op=-17,sd_prod=macr_aspic_calc_prod, 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',min=1,max=1, + TUBULURE =FACT(statut='o', TYPE =SIMP(statut='o',typ='TXM',into=("TYPE_1","TYPE_2") ), ), MAILLAGE =SIMP(statut='o',typ=maillage), @@ -12932,7 +13744,7 @@ MACR_ASPIC_CALC=MACRO(nom="MACR_ASPIC_CALC",op=-17,sd_prod=macr_aspic_calc_prod, CHARGE =SIMP(statut='f',typ=(CO,char_meca)), RESU_THER =SIMP(statut='f',typ=(CO,evol_ther)), - AFFE_MATERIAU =FACT(statut='o',min=1,max=3, + 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") ), @@ -12941,11 +13753,11 @@ MACR_ASPIC_CALC=MACRO(nom="MACR_ASPIC_CALC",op=-17,sd_prod=macr_aspic_calc_prod, RCCM =SIMP(statut='o',typ='TXM',into=("OUI","NON")), ), - EQUILIBRE =FACT(statut='o',min=1,max=1, + EQUILIBRE =FACT(statut='o', NOEUD =SIMP(statut='o',typ=no), ), - PRES_REP =FACT(statut='o',min=1,max=1, + 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")), @@ -12953,13 +13765,13 @@ MACR_ASPIC_CALC=MACRO(nom="MACR_ASPIC_CALC",op=-17,sd_prod=macr_aspic_calc_prod, FONC_MULT =SIMP(statut='f',typ=(fonction,formule)), ), - ECHANGE =FACT(statut='f',min=1,max=1, + ECHANGE =FACT(statut='f', COEF_H_TUBU =SIMP(statut='o',typ=(fonction,formule)), COEF_H_CORP =SIMP(statut='o',typ=(fonction,formule)), TEMP_EXT =SIMP(statut='o',typ=(fonction,formule)), ), - TORS_CORP =FACT(statut='f',min=1,max=6, + 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'), @@ -12971,7 +13783,7 @@ MACR_ASPIC_CALC=MACRO(nom="MACR_ASPIC_CALC",op=-17,sd_prod=macr_aspic_calc_prod, FONC_MULT =SIMP(statut='f',typ=(fonction,formule)), ), - TORS_TUBU =FACT(statut='f',min=1,max=6, + 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'), @@ -12982,30 +13794,30 @@ MACR_ASPIC_CALC=MACRO(nom="MACR_ASPIC_CALC",op=-17,sd_prod=macr_aspic_calc_prod, FONC_MULT =SIMP(statut='f',typ=(fonction,formule)), ), - COMP_INCR =FACT(statut='f',min=1,max=1, + 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 ,) ), ), - COMP_ELAS =FACT(statut='f',min=1,max=1, + 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 ,) ), ), - THETA_3D =FACT(statut='f',min=1,max='**', + 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',min=1,max='**', + 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',min=1,max=1, + 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") ), @@ -13028,7 +13840,7 @@ MACR_ASPIC_CALC=MACRO(nom="MACR_ASPIC_CALC",op=-17,sd_prod=macr_aspic_calc_prod, SYME =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), ), - CONVERGENCE =FACT(statut='d',min=1,max=1, + 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), @@ -13040,19 +13852,19 @@ MACR_ASPIC_CALC=MACRO(nom="MACR_ASPIC_CALC",op=-17,sd_prod=macr_aspic_calc_prod, RESO_INTE =SIMP(statut='f',typ='TXM',defaut="IMPLICITE",into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")), ), - NEWTON =FACT(statut='d',min=1,max=1, + 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), ), - RECH_LINEAIRE =FACT(statut='d',min=1,max=1, + 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',min=1,max=1, + INCREMENT =FACT(statut='o', regles=(EXCLUS('NUME_INST_INIT','INST_INIT'), EXCLUS('NUME_INST_FIN','INST_FIN'),), LIST_INST =SIMP(statut='o',typ=listr8), @@ -13070,7 +13882,7 @@ MACR_ASPIC_CALC=MACRO(nom="MACR_ASPIC_CALC",op=-17,sd_prod=macr_aspic_calc_prod, PAS_AZIMUT =SIMP(statut='f',typ='I',defaut=1), - IMPRESSION =FACT(statut='f',min=1,max=1, + IMPRESSION =FACT(statut='f', FORMAT =SIMP(statut='f',typ='TXM',defaut="RESULTAT", into=("RESULTAT","ASTER","CASTEM","IDEAS")), @@ -13085,12 +13897,12 @@ MACR_ASPIC_CALC=MACRO(nom="MACR_ASPIC_CALC",op=-17,sd_prod=macr_aspic_calc_prod, 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',max=3, + 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',max='**'), - INST =SIMP(statut='f',typ='R',max='**'), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), ), ), @@ -13099,7 +13911,8 @@ MACR_ASPIC_CALC=MACRO(nom="MACR_ASPIC_CALC",op=-17,sd_prod=macr_aspic_calc_prod, TITRE =SIMP(statut='f',typ='TXM'), ) ; # debut entete -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -13122,7 +13935,7 @@ MACR_ASPIC_MAIL=MACRO(nom="MACR_ASPIC_MAIL",op= -16,sd_prod=maillage,reentrant=' fr=" ",docu="U4.pc.10-b", UIinfo={"groupes":("Outils métier",)}, - EXEC_MAILLAGE =FACT(statut='o',min=1,max=1, + 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), @@ -13133,7 +13946,7 @@ MACR_ASPIC_MAIL=MACRO(nom="MACR_ASPIC_MAIL",op= -16,sd_prod=maillage,reentrant=' RAFF_MAIL =SIMP(statut='f',typ='TXM',defaut="GROS",into=("GROS","FIN")), - TUBULURE =FACT(statut='o',min=1,max=1, + 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'), @@ -13145,19 +13958,19 @@ MACR_ASPIC_MAIL=MACRO(nom="MACR_ASPIC_MAIL",op= -16,sd_prod=maillage,reentrant=' L_PENETR =SIMP(statut='f',typ='R',defaut= 0.0E+0), ), - SOUDURE =FACT(statut='o',min=1,max=1, + 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'), ), - CORPS =FACT(statut='o',min=1,max=1, + 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'), ), - FISS_SOUDURE =FACT(statut='f',min=1,max=1, + 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'), @@ -13176,7 +13989,7 @@ MACR_ASPIC_MAIL=MACRO(nom="MACR_ASPIC_MAIL",op= -16,sd_prod=maillage,reentrant=' NB_COURONNE =SIMP(statut='f',typ='I'), ), - IMPRESSION =FACT(statut='f',min=1,max='**', + IMPRESSION =FACT(statut='f',max='**', regles=(PRESENT_PRESENT('FICHIER','UNITE'),), FORMAT =SIMP(statut='f',typ='TXM',defaut="ASTER",into=("ASTER","IDEAS","CASTEM")), @@ -13193,7 +14006,258 @@ MACR_ASPIC_MAIL=MACRO(nom="MACR_ASPIC_MAIL",op= -16,sd_prod=maillage,reentrant=' INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND +# 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) + if MODELE_MECA != None: + self.type_sdprod(MODELE_MECA,modele) + 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 d'une jonction boulonnée de tuyauterie", + reentrant='n', + UIinfo={"groupes":("Outils métier",)}, + MAILLAGE = SIMP(statut='o',typ=maillage,), + 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), + TEMP_REF = SIMP(statut='d',typ='R',defaut= 25. ), + ), + CHAM_MATER = SIMP(statut = 'f',typ=(cham_mater,CO),), + MODELE_THER= SIMP(statut = 'f',typ=(modele,CO),), + + DEFI_CHAR_THER = FACT(statut ='d', + TEMP_INIT = SIMP(statut='d',typ='R',defaut= 25.,), + COEF_H_FLUI = SIMP(statut='f',typ=fonction,), + TEMP_EXT_FLUI = SIMP(statut='f',typ=fonction,), + COEF_H_AIR = SIMP(statut='f',typ=fonction,), + TEMP_EXT_AIR = SIMP(statut='f',typ=fonction,), + LIST_INST = SIMP(statut='f',typ=listr8), + ), + + CHAR_THER = FACT(statut = 'f',max=4, + CHARGE = SIMP(statut='o',typ=(char_ther,CO)), + TYPE = SIMP(statut='o',typ='TXM', + into=("BRIDE_FLUIDE","BRIDE_AIR","ECROU_GOUJON", + "BRIDE_JOINT"),) + ), + + RESU_THER = SIMP(statut = 'f',typ=(evol_ther,CO),), + + + MODELE_MECA= SIMP(statut = 'f',typ=(modele,CO),), + + DEFI_CHAR_MECA = FACT(statut='o', + PRETENS = SIMP(statut='f',typ=fonction,), + PRES_REP = SIMP(statut='f',typ=fonction,), + EFFE_FOND = SIMP(statut='f',typ=fonction,), + ), + + CHAR_MECA = FACT(statut = 'f',max=11, + CHARGE = SIMP(statut='o',typ=(char_meca,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), + 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 ), + SUBD_PAS =SIMP(statut='f',typ='I',defaut=1), + SUBD_PAS_MINI =SIMP(statut='f',typ='R'), + COEF_SUBD_PAS_1 =SIMP(statut='f',typ='R',defaut= 1.0E+0), + 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), + ), + 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), + TYPE_MATR_COMP =SIMP(statut='f',typ='TXM',defaut="TANG_VIT",into=("TANG_VIT",)), + RESO_INTE =SIMP(statut='f',typ='TXM',defaut="IMPLICITE", + into=("IMPLICITE",)), + ), + ); + + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND +# 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, + 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', + FICHIER = SIMP(statut='f',typ='TX'), + 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 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG @@ -13223,17 +14287,17 @@ MACR_CARA_POUTRE=MACRO(nom="MACR_CARA_POUTRE",op=macr_cara_poutre_ops,sd_prod=ta EXCLUS('SYME_Y','GROUP_MA_BORD'),), UNITE_MAILLAGE =SIMP(statut='f',typ='I',defaut= 20 ), - ORIG_INER =SIMP(statut='f',typ='R',max='**',defaut=(0.E+0,0.E+0), + 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,max='**', + 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,max='**', + 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", @@ -13241,7 +14305,7 @@ MACR_CARA_POUTRE=MACRO(nom="MACR_CARA_POUTRE",op=macr_cara_poutre_ops,sd_prod=ta 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,max='**', + GROUP_MA_INTE =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', fr="groupes de mailles linéiques bordant des trous dans la section"), ), @@ -13254,7 +14318,8 @@ MACR_CARA_POUTRE=MACRO(nom="MACR_CARA_POUTRE",op=macr_cara_poutre_ops,sd_prod=ta fr="type de conditions aux limites sur le plancher supérieur" ), ), ) -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -13285,7 +14350,8 @@ MACR_ELEM_DYNA=OPER(nom="MACR_ELEM_DYNA",op= 81,sd_prod=macr_elem_dyna, OPTION =SIMP(statut='f',typ='TXM',defaut="CLASSIQUE",into=("CLASSIQUE","RITZ", "DIAG_MASS") ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -13308,7 +14374,7 @@ MACR_ELEM_STAT=OPER(nom="MACR_ELEM_STAT",op=86,sd_prod=macr_elem_stat,docu="U4.6 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',min=1,max=1, + DEFINITION =FACT(statut='f', MODELE =SIMP(statut='o',typ=modele), CHAM_MATER =SIMP(statut='f',typ=cham_mater), CARA_ELEM =SIMP(statut='f',typ=cara_elem), @@ -13317,24 +14383,25 @@ MACR_ELEM_STAT=OPER(nom="MACR_ELEM_STAT",op=86,sd_prod=macr_elem_stat,docu="U4.6 NMAX_CAS =SIMP(statut='f',typ='I',defaut=10), NMAX_CHAR =SIMP(statut='f',typ='I',defaut=10), ), - EXTERIEUR =FACT(statut='f',min=1,max=1, + EXTERIEUR =FACT(statut='f', regles=(AU_MOINS_UN('NOEUD','GROUP_NO'),), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), ), - RIGI_MECA =FACT(statut='f',min=1,max=1, + RIGI_MECA =FACT(statut='f', ), - MASS_MECA =FACT(statut='f',min=1,max=1, + MASS_MECA =FACT(statut='f', BIDO1 =SIMP(statut='f',typ='I',defaut=0), ), - CAS_CHARGE =FACT(statut='f',min=1,max='**', + 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,max='**'), + CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), INST =SIMP(statut='f',typ='R',defaut=0.E+0), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -13356,7 +14423,7 @@ MACR_GOUJ2E_CALC=MACRO(nom="MACR_GOUJ2E_CALC",op=-23,sd_prod=evol_noli, fr=" ",docu="U4.gj.20-b",reentrant='n', UIinfo={"groupes":("Outils métier",)}, MAILLAGE =SIMP(statut='o',typ=maillage), - DEFI_GOUJ =FACT(statut='o',min=1,max=1, + DEFI_GOUJ =FACT(statut='o', TYPE =SIMP(statut='o',typ='TXM',into=("M33","M64","M90","M115","M155","M180","M186")), 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")), @@ -13367,15 +14434,15 @@ MACR_GOUJ2E_CALC=MACRO(nom="MACR_GOUJ2E_CALC",op=-23,sd_prod=evol_noli, FILET_JEU_HTA =SIMP(statut='f',typ='I',max='**'), FILET_JEU_HTB =SIMP(statut='f',typ='I',max='**'), ), - EXCIT =FACT(statut='o',min=1,max=1, + EXCIT =FACT(statut='o', TYPE_BLOCAGE =SIMP(statut='o',typ='I',defaut=2,into=(1,2,3)), FORCE_GOUJ =SIMP(statut='o',typ='R'), ), - CALCUL =FACT(statut='o',min=1,max=1, + CALCUL =FACT(statut='o', TYPE_CALCUL =SIMP(statut='o',typ='TXM',into=("ELASTIQUE","ELASTOPLASTIQUE")), NB_INCR =SIMP(statut='o',typ='I'), ), - IMPRESSION =FACT(statut='f',min=1,max=1, + IMPRESSION =FACT(statut='f', FORMAT =SIMP(statut='f',typ='TXM',defaut="TABLE", into=("RESULTAT","IDEAS","ASTER","CASTEM","ENSIGHT","MED","TABLE")), VERSION =SIMP(statut='f',typ='I',defaut=5,into=(4,5)), @@ -13383,7 +14450,8 @@ MACR_GOUJ2E_CALC=MACRO(nom="MACR_GOUJ2E_CALC",op=-23,sd_prod=evol_noli, TITRE =SIMP(statut='f',typ='TXM'), INFO =SIMP(statut='f',typ='I',defaut=1 ,into=(1,2)), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -13404,26 +14472,26 @@ MACR_GOUJ2E_CALC=MACRO(nom="MACR_GOUJ2E_CALC",op=-23,sd_prod=evol_noli, MACR_GOUJ2E_MAIL=MACRO(nom="MACR_GOUJ2E_MAIL",op= -22,sd_prod=maillage, fr=" ",docu="U4.gj.10-b",reentrant='n', UIinfo={"groupes":("Outils métier",)}, - EXEC_MAILLAGE =FACT(statut='o',min=1,max=1, + 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)), ), - DEFI_GOUJ =FACT(statut='o',min=1,max=1, + DEFI_GOUJ =FACT(statut='o', TYPE =SIMP(statut='o',typ='TXM',into=("M33","M64","M90","M115","M155","M180","M186")), 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")), ), - GEOM_GOUJ_BRID =FACT(statut='o',min=1,max=1, + GEOM_GOUJ_BRID =FACT(statut='o', NB_FILET =SIMP(statut='o',typ='I'), H_CORP_BRID =SIMP(statut='o',typ='R'), R_EXT_BRID =SIMP(statut='o',typ='R'), H_HAUT_BRID =SIMP(statut='f',typ='R',defaut=0.0E+0), H_BAS_BRID =SIMP(statut='f',typ='R',defaut= 0.0E+0), - FILET_ABST =SIMP(statut='f',typ='I',max='**'), + FILET_ABST =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), ), - IMPRESSION =FACT(statut='f',min=1,max=1, + IMPRESSION =FACT(statut='f', regles=(PRESENT_PRESENT('FICHIER','UNITE'),), FORMAT =SIMP(statut='f',typ='TXM',defaut="RESULTAT", into=("RESULTAT","IDEAS","ASTER","CASTEM","ENSIGHT","MED")), @@ -13434,7 +14502,8 @@ MACR_GOUJ2E_MAIL=MACRO(nom="MACR_GOUJ2E_MAIL",op= -22,sd_prod=maillage, ), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -13453,7 +14522,11 @@ MACR_GOUJ2E_MAIL=MACRO(nom="MACR_GOUJ2E_MAIL",op= -22,sd_prod=maillage, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== # RESPONSABLE GNICOLAS G.NICOLAS -MACR_INFO_MAIL=MACRO(nom="MACR_INFO_MAIL",op=-24,docu="U7.03.02-b", + +from Macro.macr_adap_mail_ops import macr_adap_mail_ops + +MACR_INFO_MAIL=MACRO(nom="MACR_INFO_MAIL",op=macr_adap_mail_ops, + docu="U7.03.02-b", fr="Donner des informations sur un maillage.", ang="To give information about a mesh.", # @@ -13463,8 +14536,8 @@ MACR_INFO_MAIL=MACRO(nom="MACR_INFO_MAIL",op=-24,docu="U7.03.02-b", # # 2. Version de HOMARD # - VERSION_HOMARD = SIMP(statut='f',typ='TXM',defaut="V5_5", - into=("V5_5", "V5_N","V5_N_PERSO"), + VERSION_HOMARD = SIMP(statut='f',typ='TXM',defaut="V6_2", + into=("V6_2", "V6_N", "V6_N_PERSO"), fr="Version de HOMARD", ang="HOMARD release"), # @@ -13475,45 +14548,68 @@ MACR_INFO_MAIL=MACRO(nom="MACR_INFO_MAIL",op=-24,docu="U7.03.02-b", fr="Langue des messages issus de HOMARD.", ang="Language for HOMARD messages." ), # -# 4. Le nom du maillage a analyser +# 4. Gestion des éléments autres que des simplexes +# Remarque : pour le moment, on bride le choix 2 +# 0 : autres elements refusés (defaut) +# 1 : analyse exclusivement sur les simplexes, mais autres éléments acceptés +# 2 : tous +# + NON_SIMPLEXE = SIMP(statut='f',typ='I',defaut=0,into=(0,1), + fr="Acceptation d'éléments quad, hexa et penta", + ang="quad, hexa and penta elements allowed" ), +# +# 5. Le nom du maillage a analyser # MAILLAGE = SIMP(statut='o',typ=maillage, fr="Maillage à analyser.", ang="Mesh to be checked." ), # -# 5. Les options ; par defaut, on ne fait que les nombres -# 5.1. Nombre de noeuds et elements +# 6. Suivi d'une frontiere +# + MAILLAGE_FRONTIERE = SIMP(statut='f',typ=maillage, + fr="Maillage de la frontiere à suivre", + ang="Boundary mesh" ), +# + b_frontiere =BLOC( condition = " MAILLAGE_FRONTIERE != None " , + fr="Groupes définissant la frontière", + ang="Groups which define the boundary", + GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**' ), + ) , +# +# 7. Les options ; par defaut, on ne fait que les nombres +# 7.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" ), # -# 5.2. Determination de la qualite des elements du maillage +# 7.2. Determination de la qualite des elements du maillage # QUALITE = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"), fr="Qualité du maillage", ang="Mesh quality" ), # -# 5.3. Connexite du maillage +# 7.3. Connexite du maillage # CONNEXITE = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"), fr="Connexité du maillage.", ang="Mesh connexity." ), # -# 5.4. Taille des sous-domaines du maillage +# 7.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." ), # -# 5.5. Controle de la non-interpenetration des elements +# 7.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." ), # ) ; -#& MODIF COMMANDE DATE 09/10/2002 AUTEUR DURAND C.DURAND + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -13554,14 +14650,15 @@ MACR_LIGN_COUPE=MACRO(nom="MACR_LIGN_COUPE",op=macr_lign_coupe_ops,sd_prod=macr_ ), MODELE =SIMP(statut='o',typ=modele ), UNITE_MAILLAGE =SIMP(statut='f',typ='I',defaut=25), - LIGN_COUPE =FACT(statut='o',min=1,max='**', + LIGN_COUPE =FACT(statut='o',max='**', NB_POINTS =SIMP(statut='o',typ='I'), COOR_ORIG =SIMP(statut='o',typ='R',min=2,max=3), COOR_EXTR =SIMP(statut='o',typ='R',min=2,max=3), TABLE =SIMP(statut='o',typ=(table,CO)), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -13590,18 +14687,19 @@ MACR_RECAL = MACRO(nom="MACR_RECAL",op=macr_recal_ops,docu="U4.73.02-a", sd_prod=macr_recal_prod, fr="Réalise le recalage de modèles Aster", UNITE_ESCL =SIMP(statut='o',typ='I'), - RESU_EXP =SIMP(statut='o',typ=assd,min = 1, max='**'), - RESU_CALC =SIMP(statut='o',typ=assd,min = 1, max='**'), - LIST_PARA =SIMP(statut='o',typ=assd,min = 1, max='**'), + RESU_EXP =SIMP(statut='o',typ=assd,max='**'), + RESU_CALC =SIMP(statut='o',typ=assd,max='**'), + LIST_PARA =SIMP(statut='o',typ=assd,max='**'), ITER_MAXI =SIMP(statut='f',typ='I',defaut=10), 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',min=1,max=1, + GRAPHIQUE =FACT(statut='d', UNITE =SIMP(statut='f',typ='I',defaut=90), INTERACTIF =SIMP(statut='f',typ='TXM',defaut='NON',into=("OUI","NON")),) ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -13636,18 +14734,18 @@ MACRO_ELAS_MULT=MACRO(nom="MACRO_ELAS_MULT",op=macro_elas_mult_ops,sd_prod=macro CHAM_MATER =SIMP(statut='f',typ=cham_mater), CARA_ELEM =SIMP(statut='f',typ=cara_elem), NUME_DDL =SIMP(statut='f',typ=(nume_ddl,CO)), - CHAR_MECA_GLOBAL=SIMP(statut='f',typ=char_meca,max='**'), - CHAR_CINE_GLOBAL=SIMP(statut='f',typ=char_meca,max='**'), + 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',min=1,max='**', + 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,max='**'), - CHAR_CINE =SIMP(statut='f',typ=char_meca,max='**'), - OPTION =SIMP(statut='f',typ='TXM',max='**', + 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", @@ -13663,7 +14761,7 @@ MACRO_ELAS_MULT=MACRO(nom="MACRO_ELAS_MULT",op=macro_elas_mult_ops,sd_prod=macro SOUS_TITRE =SIMP(statut='f',typ='TXM',max='**'), VECT_ASSE =SIMP(statut='f',typ=cham_no_depl_r), ), - SOLVEUR =FACT(statut='d',min=1,max=1, + 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", @@ -13681,7 +14779,8 @@ MACRO_ELAS_MULT=MACRO(nom="MACRO_ELAS_MULT",op=macro_elas_mult_ops,sd_prod=macro INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2)), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -13720,13 +14819,13 @@ MACRO_MATR_AJOU=MACRO(nom="MACRO_MATR_AJOU",op=-13,docu="U4.66.11-c",sd_prod=mac 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',min=1,max='**', + 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',min=1,max='**', + DDL_IMPO =FACT(statut='o',max='**', regles=(UN_PARMI('NOEUD','GROUP_NO'), UN_PARMI('PRES_FLUIDE','PRES_SORTIE'),), NOEUD =SIMP(statut='f',typ=no), @@ -13734,7 +14833,7 @@ MACRO_MATR_AJOU=MACRO(nom="MACRO_MATR_AJOU",op=-13,docu="U4.66.11-c",sd_prod=mac PRES_FLUIDE =SIMP(statut='f',typ='R'), PRES_SORTIE =SIMP(statut='f',typ='R'), ), - ECOULEMENT =FACT(statut='f',min=1,max='**', + ECOULEMENT =FACT(statut='f',max='**', GROUP_MA_1 =SIMP(statut='o',typ=grma), GROUP_MA_2 =SIMP(statut='o',typ=grma), VNOR_1 =SIMP(statut='o',typ='R'), @@ -13751,13 +14850,13 @@ MACRO_MATR_AJOU=MACRO(nom="MACRO_MATR_AJOU",op=-13,docu="U4.66.11-c",sd_prod=mac MATR_AMOR_AJOU =SIMP(statut='f',typ=(CO,matr_asse)), 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',min=1,max='**', + FORC_AJOU =FACT(statut='f',max='**', DIRECTION =SIMP(statut='o',typ='R',max=3), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), + 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,vect_asse_gene)), ), - SOLVEUR =FACT(statut='d',min=1,max=1, + 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") ), @@ -13782,7 +14881,8 @@ MACRO_MATR_AJOU=MACRO(nom="MACRO_MATR_AJOU",op=-13,docu="U4.66.11-c",sd_prod=mac 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 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -13832,15 +14932,15 @@ MACRO_MATR_ASSE=MACRO(nom="MACRO_MATR_ASSE",op=macro_matr_asse_ops,docu="U4.61.2 MODELE =SIMP(statut='o',typ=modele), 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),max='**'), + CHARGE =SIMP(statut='f',typ=(char_meca,char_ther,char_acou),validators=NoRepeat(),max='**'), INST =SIMP(statut='f',typ='R'), NUME_DDL =SIMP(statut='o',typ=(nume_ddl,CO)), - SOLVEUR =FACT(statut='d',min=1,max=1, + SOLVEUR =FACT(statut='d', METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT", into=("LDLT","MULT_FRONT","GCPC")), RENUM =SIMP(statut='f',typ='TXM',into=("SANS","RCMK","MD","MDA","METIS")), ), - MATR_ASSE =FACT(statut='o',min=1,max='**', + MATR_ASSE =FACT(statut='o',max='**', MATRICE =SIMP(statut='o',typ=(matr_asse,CO)), OPTION =SIMP(statut='o',typ='TXM', into=("RIGI_MECA","MASS_MECA","MASS_MECA_DIAG", @@ -13859,7 +14959,8 @@ MACRO_MATR_ASSE=MACRO(nom="MACRO_MATR_ASSE",op=macro_matr_asse_ops,docu="U4.61.2 TITRE =SIMP(statut='f',typ='TXM',max='**'), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -13882,7 +14983,7 @@ from Macro.macro_miss_3d_ops import macro_miss_3d_ops MACRO_MISS_3D=MACRO(nom="MACRO_MISS_3D",op=macro_miss_3d_ops,fr=" ",docu="U7.03.11-b", UIinfo={"groupes":("Matrices/vecteurs",)}, - OPTION =FACT(statut='o',min=1,max=1, + 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")), @@ -13894,7 +14995,8 @@ MACRO_MISS_3D=MACRO(nom="MACRO_MISS_3D",op=macro_miss_3d_ops,fr=" ",docu="U7.03. UNITE_MODELE_SOL=SIMP(statut='f',typ='I',defaut=27), UNITE_RESU_IMPE =SIMP(statut='f',typ='I',defaut=30), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -13948,12 +15050,12 @@ MACRO_MODE_MECA=MACRO(nom="MACRO_MODE_MECA",op=macro_mode_meca_ops,sd_prod=macro ), OPTION =SIMP(statut='f',typ='TXM',defaut="SANS", into=("MODE_RIGIDE","SANS") ), - CALC_FREQ =FACT(statut='d',min=0,max=1, + 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,max='**',val_min=0.E+0 ), + FREQ =SIMP(statut='f',typ='R',min=2,validators=NoRepeat(),max='**',val_min=0.E+0 ), FREQ_MIN =SIMP(statut='f',typ='R' ), FREQ_MAX =SIMP(statut='f',typ='R' ), NB_BLOC_FREQ =SIMP(statut='f',typ='I' ), @@ -13965,32 +15067,33 @@ MACRO_MODE_MECA=MACRO(nom="MACRO_MODE_MECA",op=macro_mode_meca_ops,sd_prod=macro 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,max=1, + 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',min=1,max='**', + NORM_MODE =FACT(statut='o',max='**', MASS_INER =SIMP(statut='o',typ=tabl_mass_iner ), 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',min=1,max=1, + 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',min=1,max=1, + 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",) ), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -14025,15 +15128,15 @@ MACRO_PROJ_BASE=MACRO(nom="MACRO_PROJ_BASE",op=macro_proj_base_ops,docu="U4.63.1 UIinfo={"groupes":("Matrices/vecteurs",)}, sd_prod=macro_proj_base_prod, fr="Projection des matrices et/ou vecteurs assemblés sur une base de vecteurs", - BASE =SIMP(statut='o',typ=(mode_meca,base_modale,mode_gene) ), + 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',min=1,max='**', + MATR_ASSE_GENE =FACT(statut='f',max='**', MATRICE =SIMP(statut='o',typ=(CO,matr_asse)), 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',min=1,max='**', + VECT_ASSE_GENE =FACT(statut='f',max='**', VECTEUR =SIMP(statut='o',typ=(CO,vect_asse)), TYPE_VECT =SIMP(statut='f',typ='TXM',defaut="FORC"), VECT_ASSE =SIMP(statut='f',typ=cham_no_depl_r), @@ -14041,7 +15144,8 @@ MACRO_PROJ_BASE=MACRO(nom="MACRO_PROJ_BASE",op=macro_proj_base_ops,docu="U4.63.1 ), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -14063,19 +15167,31 @@ MAJ_CATA=PROC(nom="MAJ_CATA",op=20,docu="U4.15.01-e", UIinfo={"groupes":("Gestion du travail",)}, fr="Compilation des catalogues de commandes et d éléments", - ELEMENT =FACT(statut='f',min=1,max=1,), + ELEMENT =FACT(statut='f',), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# SEE THE FILE "LICENSE.TERMS" FOR INFORMATION ON USAGE AND -# REDISTRIBUTION OF THIS FILE. +# 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 MECA_STATIQUE=OPER(nom="MECA_STATIQUE",op=46,sd_prod=evol_elas, - fr="Analyse mécanique statique linéaire",docu="U4.51.01-g",reentrant='n', + fr="Analyse mécanique statique linéaire",docu="U4.51.01-g",reentrant='f', UIinfo={"groupes":("Résolution",)}, regles=(EXCLUS("INST","LIST_INST"), AU_MOINS_UN('CHAM_MATER','CARA_ELEM',), ), @@ -14087,14 +15203,15 @@ MECA_STATIQUE=OPER(nom="MECA_STATIQUE",op=46,sd_prod=evol_elas, 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',min=1,max='**', + EXCIT =FACT(statut='o',max='**', CHARGE =SIMP(statut='o',typ=(char_meca,char_cine_meca)), FONC_MULT =SIMP(statut='f',typ=(fonction,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), - OPTION =SIMP(statut='f',typ='TXM',max='**', + INST_FIN =SIMP(statut='f',typ='R'), + OPTION =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**', into=("SANS","SIGM_ELNO_DEPL","SIPO_ELNO_DEPL","EFGE_ELNO_DEPL", "EPSI_ELNO_DEPL","EPSI_ELGA_DEPL","EPME_ELNO_DEPL","EPME_ELGA_DEPL", "EQUI_ELNO_SIGM","EQUI_ELGA_SIGM","EQUI_ELNO_EPSI","EQUI_ELGA_EPSI", @@ -14106,10 +15223,10 @@ MECA_STATIQUE=OPER(nom="MECA_STATIQUE",op=46,sd_prod=evol_elas, NIVE_COUCHE =SIMP(statut='f',typ='TXM',defaut="MOY",into=("SUP","INF","MOY") ), ANGLE =SIMP(statut='f',typ='I',defaut=0), PLAN =SIMP(statut='f',typ='TXM',defaut="MAIL",into=("SUP","INF","MOY","MAIL") ), - SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),max='**', + 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',min=1,max=1, + 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") ), @@ -14132,7 +15249,8 @@ MECA_STATIQUE=OPER(nom="MECA_STATIQUE",op=46,sd_prod=evol_elas, ), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -14159,7 +15277,7 @@ MEMO_NOM_SENSI=PROC(nom="MEMO_NOM_SENSI",op=129,docu="U4.31.07-a", regles=(AU_MOINS_UN('NOM','NOM_ZERO','NOM_UN'),), NOM=FACT(statut='f',max='**', - regles=(PRESENT_PRESENT('MOT_CLE','VALEUR' ),), + regles=(PRESENT_PRESENT('MOT_CLE','VALEUR','MOT_FACT' ),), NOM_SD=SIMP(statut='o',typ='TXM', fr="Nom de la structure de base", @@ -14173,6 +15291,10 @@ MEMO_NOM_SENSI=PROC(nom="MEMO_NOM_SENSI",op=129,docu="U4.31.07-a", 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"), @@ -14187,12 +15309,13 @@ MEMO_NOM_SENSI=PROC(nom="MEMO_NOM_SENSI",op=129,docu="U4.31.07-a", fr="Nom de la fonction nulle", ang="Name of the zero fonction"), - NOM_UN=SIMP (statut='f',typ=fonction, + NOM_UN =SIMP(statut='f',typ=fonction, fr="Nom de la fonction unité", ang="Name of the one fonction"), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -14217,26 +15340,26 @@ MODE_ITER_CYCL=OPER(nom="MODE_ITER_CYCL",op= 80,sd_prod=mode_cycl, 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',min=1,max=1, + 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',min=1,max=1, + 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',min=1,max=1, + CALCUL =FACT(statut='o', TOUT_DIAM =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NB_DIAM =SIMP(statut='f',typ='I',max='**'), + 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',min=1,max=1), + FREQ =SIMP(statut='o',typ='R',), ), b_bande =BLOC(condition = "OPTION == 'BANDE'", - FREQ =SIMP(statut='o',typ='R',min=2,max=2), + 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 ), @@ -14246,7 +15369,8 @@ MODE_ITER_CYCL=OPER(nom="MODE_ITER_CYCL",op= 80,sd_prod=mode_cycl, ), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -14282,7 +15406,7 @@ MODE_ITER_INV=OPER(nom="MODE_ITER_INV",op= 44,sd_prod=mode_iter_inv_prod TYPE_RESU =SIMP(statut='f',position='global',typ='TXM',defaut="DYNAMIQUE", into=("MODE_FLAMB","DYNAMIQUE"),fr="Type d analyse" ), b_dynam =BLOC(condition = "TYPE_RESU == 'DYNAMIQUE'", - CALC_FREQ =FACT(statut='o',min=1,max=1,fr="Choix des paramètres pour le calcul des valeurs propres", + 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" ), @@ -14301,11 +15425,11 @@ MODE_ITER_INV=OPER(nom="MODE_ITER_INV",op= 44,sd_prod=mode_iter_inv_prod ), ), b_flamb =BLOC(condition = "TYPE_RESU == 'MODE_FLAMB'", - CALC_FREQ =FACT(statut='o',min=1,max=1,fr="Choix des paramètres pour le calcul des valeurs propres", + 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',max='**' ), + 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, ), @@ -14318,20 +15442,21 @@ MODE_ITER_INV=OPER(nom="MODE_ITER_INV",op= 44,sd_prod=mode_iter_inv_prod SEUIL_FREQ =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0, ), ), ), - CALC_MODE =FACT(statut='d',min=0,max=1,fr="Choix des paramètres pour le calcul des vecteurs propres", + 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,max=1, + 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" ), ), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), - TITRE =SIMP(statut='f',typ='TXM',max='**'), + TITRE =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -14391,7 +15516,7 @@ MODE_ITER_SIMULT=OPER(nom="MODE_ITER_SIMULT",op= 45,sd_prod=mode_iter_simult_pr 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,max=1, + 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", @@ -14399,12 +15524,12 @@ MODE_ITER_SIMULT=OPER(nom="MODE_ITER_SIMULT",op= 45,sd_prod=mode_iter_simult_pr ), 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',min=1,max=1, + CHAR_CRIT =SIMP(statut='o',typ='R', fr="Charge critique autour de laquelle on cherche les charges critiques propres"), ), 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,max=2, + 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"), @@ -14420,7 +15545,7 @@ MODE_ITER_SIMULT=OPER(nom="MODE_ITER_SIMULT",op= 45,sd_prod=mode_iter_simult_pr ), b_dynam =BLOC(condition = "TYPE_RESU == 'DYNAMIQUE'", - CALC_FREQ =FACT(statut='d',min=0,max=1, + 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", @@ -14428,14 +15553,14 @@ MODE_ITER_SIMULT=OPER(nom="MODE_ITER_SIMULT",op= 45,sd_prod=mode_iter_simult_pr ), 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',min=1,max=1, + 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',max=1,), + 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,max=2, + 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"), @@ -14450,7 +15575,7 @@ MODE_ITER_SIMULT=OPER(nom="MODE_ITER_SIMULT",op= 45,sd_prod=mode_iter_simult_pr ), ), - VERI_MODE =FACT(statut='d',min=0,max=1, + 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, @@ -14461,7 +15586,8 @@ MODE_ITER_SIMULT=OPER(nom="MODE_ITER_SIMULT",op= 45,sd_prod=mode_iter_simult_pr INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -14491,33 +15617,33 @@ MODE_STATIQUE=OPER(nom="MODE_STATIQUE",op= 93,sd_prod=mode_stat_prod, 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',min=1,max='**', + 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='**'), + 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',min=1,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='**'), + 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',min=1,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='**'), + 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", @@ -14530,7 +15656,8 @@ MODE_STATIQUE=OPER(nom="MODE_STATIQUE",op= 93,sd_prod=mode_stat_prod, TITRE =SIMP(statut='f',typ='TXM',max='**'), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ,) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -14556,18 +15683,30 @@ MODI_BASE_MODALE=OPER(nom="MODI_BASE_MODALE",op= 149,sd_prod=mode_meca, BASE =SIMP(statut='o',typ=mode_meca ), BASE_ELAS_FLUI =SIMP(statut='o',typ=melasflu ), NUME_VITE_FLUI =SIMP(statut='o',typ='I' ), - NUME_ORDRE =SIMP(statut='f',typ='I',max='**'), + 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 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# SEE THE FILE "LICENSE.TERMS" FOR INFORMATION ON USAGE AND -# REDISTRIBUTION OF THIS FILE. +# 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, @@ -14598,19 +15737,19 @@ MODI_MAILLAGE=OPER(nom="MODI_MAILLAGE",op= 154,sd_prod=maillage, EXCLUS('ROTATION','MODI_BASE'),), MAILLAGE =SIMP(statut='o',typ=maillage ), - ORIE_CONTACT =FACT(statut='f',min=1,max=1, - GROUP_MA =SIMP(statut='o',typ=grma,max='**'), + ORIE_CONTACT =FACT(statut='f', + GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), ), - DEFORME =FACT(statut='f',min=1,max=1, + DEFORME =FACT(statut='f', OPTION =SIMP(statut='o',typ='TXM',into=("TRAN","TRAN_APPUI") ), DEPL =SIMP(statut='o',typ=cham_no_depl_r ), b_deform =BLOC(condition = "OPTION=='TRAN_APPUI'", - GROUP_NO_APPUI = SIMP(statut='o',typ=grno,max='**' ), - GROUP_NO_STRU = SIMP(statut='o',typ=grno,max='**' ),), + 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',min=1,max=1, + 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' ), @@ -14626,17 +15765,17 @@ MODI_MAILLAGE=OPER(nom="MODI_MAILLAGE",op= 154,sd_prod=maillage, RAFF_MAIL =SIMP(statut='o',typ='TXM' ), X_MAX =SIMP(statut='o',typ='R' ), ), - ORIE_PEAU_2D =FACT(statut='f',min=1,max='**', - GROUP_MA =SIMP(statut='o',typ=grma,max='**'), + ORIE_PEAU_2D =FACT(statut='f',max='**', + GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), ), - ORIE_PEAU_3D =FACT(statut='f',min=1,max='**', - GROUP_MA =SIMP(statut='o',typ=grma,max='**'), + ORIE_PEAU_3D =FACT(statut='f',max='**', + GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), ), - ORIE_NORM_COQUE =FACT(statut='f',min=1,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,max='**'), + 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), @@ -14644,33 +15783,33 @@ MODI_MAILLAGE=OPER(nom="MODI_MAILLAGE",op= 154,sd_prod=maillage, b_modele =BLOC(condition = "(ORIE_PEAU_2D != None) or (ORIE_PEAU_3D != None) or(ORIE_NORM_COQUE != None)", MODELE =SIMP(statut='o',typ=modele ), ), - PLAQ_TUBE =FACT(statut='f',min=1,max=1, + 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',min=1,max=1, + 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',min=1,max=1, + MODI_MAILLE =FACT(statut='f', 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,max='**'), - MAILLE_FOND =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO_FOND =SIMP(statut='f',typ=grno,max='**'), - NOEUD_FOND =SIMP(statut='f',typ=no,max='**'), + GROUP_MA_FOND =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE_FOND =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_NO_FOND =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD_FOND =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), ), - MODI_BASE =FACT(statut='f',min=1,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',min=1,max=1), + ECHELLE =SIMP(statut='f',typ='R',), TRANSLATION =SIMP(statut='f',typ='R',min=2,max=3), - ROTATION =FACT(statut='f',min=1,max='**', + 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'),), @@ -14680,7 +15819,8 @@ MODI_MAILLAGE=OPER(nom="MODI_MAILLAGE",op= 154,sd_prod=maillage, INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -14714,23 +15854,24 @@ MODI_OBSTACLE=OPER(nom="MODI_OBSTACLE",op=182,sd_prod=obstacle, PERCEMENT =SIMP(statut='f',typ='R',defaut=1), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 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. +# 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 JMBHH01 J.M.PROIX def modi_repere_prod(RESULTAT,**args): @@ -14754,27 +15895,27 @@ MODI_REPERE=OPER(nom="MODI_REPERE",op=191,sd_prod=modi_repere_prod,docu="U4.74.0 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',max='**'), - NUME_MODE =SIMP(statut='f',typ='I',max='**'), - NOEUD_CMP =SIMP(statut='f',typ='TXM',max='**'), + 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',max='**'), - FREQ =SIMP(statut='f',typ='R',max='**'), + + 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), LIST_FREQ =SIMP(statut='f',typ=listr8), 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',min=1,max='**', - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), - TYPE_CHAM =SIMP(statut='o',typ='TXM', max=1, + 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',max=1 ), + 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'", @@ -14786,17 +15927,18 @@ MODI_REPERE=OPER(nom="MODI_REPERE",op=191,sd_prod=modi_repere_prod,docu="U4.74.0 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',min=1,max=1, + 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',min=1,max=3), - ORIGINE =SIMP(statut='f',typ='R',min=2,max=3), - AXE_Z =SIMP(statut='f',typ='R',min=3,max=3), + 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), ), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -14832,10 +15974,10 @@ NORM_MODE=OPER(nom="NORM_MODE",op= 37,sd_prod=norm_mode_prod, b_noeud =BLOC(condition = "NOEUD != None", NOM_CMP =SIMP(statut='o',typ='TXM' ), ), - AVEC_CMP =SIMP(statut='f',typ='TXM',max='**'), - SANS_CMP =SIMP(statut='f',typ='TXM',max='**'), + 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=tabl_mass_iner ), - MODE_SIGNE =FACT(statut='f',max=1,fr="Imposer un signe sur une des composantes des modes", + 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"), @@ -14844,7 +15986,8 @@ NORM_MODE=OPER(nom="NORM_MODE",op= 37,sd_prod=norm_mode_prod, TITRE =SIMP(statut='f',typ='TXM',max='**'), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -14867,11 +16010,11 @@ NUME_DDL=OPER(nom="NUME_DDL",op=11,sd_prod=nume_ddl,docu="U4.61.11-g",reentrant= 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',typ=(matr_elem_depl_r ,matr_elem_depl_c, - matr_elem_temp_r,matr_elem_pres_c),max=100 ), + 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 ), b_modele =BLOC(condition = "MODELE != None", - CHARGE =SIMP(statut='f',max='**',typ=(char_meca,char_ther,char_acou, ),), + CHARGE =SIMP(statut='f',validators=NoRepeat(),max='**',typ=(char_meca,char_ther,char_acou, ),), ), 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 associés à la méthode multifrontale", @@ -14885,7 +16028,8 @@ NUME_DDL=OPER(nom="NUME_DDL",op=11,sd_prod=nume_ddl,docu="U4.61.11-g",reentrant= ), INFO =SIMP(statut='f',typ='I',into=(1,2)), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -14912,13 +16056,14 @@ NUME_DDL_GENE=OPER(nom="NUME_DDL_GENE",op= 127,sd_prod=nume_ddl_gene, b_modele_gene =BLOC(condition = "MODELE_GENE != None", STOCKAGE =SIMP(statut='f',typ='TXM',defaut="LIGN_CIEL",into=("LIGN_CIEL","PLEIN") ), ), - BASE =SIMP(statut='f',typ=(mode_meca,base_modale,mode_gene ) ), + 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/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -14955,7 +16100,7 @@ POST_DYNA_ALEA=OPER(nom="POST_DYNA_ALEA",op= 132,sd_prod=tabl_post_alea, NOM_CMP_I =SIMP(statut='o',typ='TXM',max='**' ), NOM_CMP_J =SIMP(statut='o',typ='TXM',max='**' ), ), - DEPASSEMENT =FACT(statut='f',min=1,max='**', + DEPASSEMENT =FACT(statut='f',max='**', fr="Loi de dépassement d un seuil pendant une durée donnée", regles=(ENSEMBLE('VALE_MIN','VALE_MAX'),), VALE_MIN =SIMP(statut='f',typ='R' ), @@ -14963,21 +16108,21 @@ POST_DYNA_ALEA=OPER(nom="POST_DYNA_ALEA",op= 132,sd_prod=tabl_post_alea, PAS =SIMP(statut='f',typ='R' ), DUREE =SIMP(statut='f',typ='R',defaut= 1. ), ), - RAYLEIGH =FACT(statut='f',min=1,max='**', + RAYLEIGH =FACT(statut='f',max='**', fr="Densité de probabilité de pic positif, loi adaptée à des signaux à bande étroite", regles=(ENSEMBLE('VALE_MIN','VALE_MAX'),), VALE_MIN =SIMP(statut='f',typ='R' ), VALE_MAX =SIMP(statut='f',typ='R' ), PAS =SIMP(statut='f',typ='R' ), ), - GAUSS =FACT(statut='f',min=1,max='**', + GAUSS =FACT(statut='f',max='**', fr="Densité de probabilité de pic positif, loi normale adaptée à des signaux large bande", regles=(ENSEMBLE('VALE_MIN','VALE_MAX'),), VALE_MIN =SIMP(statut='f',typ='R' ), VALE_MAX =SIMP(statut='f',typ='R' ), PAS =SIMP(statut='f',typ='R' ), ), - VANMARCKE =FACT(statut='f',min=1,max='**', + VANMARCKE =FACT(statut='f',max='**', fr="Probabilité de non dépassement de seuil pendant une durée donnée (analyse sismique)", regles=(ENSEMBLE('VALE_MIN','VALE_MAX'),), VALE_MIN =SIMP(statut='f',typ='R' ), @@ -14989,7 +16134,8 @@ POST_DYNA_ALEA=OPER(nom="POST_DYNA_ALEA",op= 132,sd_prod=tabl_post_alea, TITRE =SIMP(statut='f',typ='TXM',max='**' ), INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -15013,7 +16159,7 @@ POST_DYNA_MODA_T=OPER(nom="POST_DYNA_MODA_T",op= 130,sd_prod=tabl_post_dyna, UIinfo={"groupes":("Post traitements",)}, regles=(UN_PARMI('CHOC','RELA_EFFO_DEPL', ),), RESU_GENE =SIMP(statut='o',typ=tran_gene ), - CHOC =FACT(statut='f',min=1,max='**', + 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. ), @@ -15023,7 +16169,7 @@ POST_DYNA_MODA_T=OPER(nom="POST_DYNA_MODA_T",op= 130,sd_prod=tabl_post_dyna, 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',min=1,max=1, + 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' ), @@ -15031,7 +16177,8 @@ POST_DYNA_MODA_T=OPER(nom="POST_DYNA_MODA_T",op= 130,sd_prod=tabl_post_dyna, INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), TITRE =SIMP(statut='f',typ='TXM',max='**' ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -15080,11 +16227,11 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=post_elem_prod,docu="U4.81.22-e",r 'AIRE_INTERNE','ENER_ELAS','ENER_TOTALE'), ), - MASS_INER = FACT(statut='f',min=1,max='**', + 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,max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,max='**'), + 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 )", @@ -15095,7 +16242,7 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=post_elem_prod,docu="U4.81.22-e",r MODELE = SIMP(statut='o',typ=modele), 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),max='**' ), + 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), @@ -15106,22 +16253,22 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=post_elem_prod,docu="U4.81.22-e",r 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',max=1), + NUME_ORDRE = SIMP(statut='f',typ='I',), LIST_ORDRE = SIMP(statut='f',typ=listis), - INST = SIMP(statut='f',typ='R',max=1), + INST = SIMP(statut='f',typ='R',), LIST_INST = SIMP(statut='f',typ=listr8), - FREQ = SIMP(statut='f',typ='R',max=1), + FREQ = SIMP(statut='f',typ='R',), LIST_FREQ = SIMP(statut='f',typ=listr8), - NUME_MODE = SIMP(statut='f',typ='I',max=1), - NOEUD_CMP = SIMP(statut='f',typ='TXM',min=2,max=2), - NOM_CAS = SIMP(statut='f',typ='TXM',max=1), + 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',), ), - ENER_POT = FACT(statut='f',min=1,max='**', + 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,max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,max='**'), + 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", @@ -15131,7 +16278,7 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=post_elem_prod,docu="U4.81.22-e",r MODELE = SIMP(statut='o',typ=modele), CHAM_MATER = SIMP(statut='o',typ=cham_mater), CARA_ELEM = SIMP(statut='f',typ=cara_elem), - CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),max='**' ), + 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), @@ -15141,25 +16288,25 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=post_elem_prod,docu="U4.81.22-e",r 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',max='**'), + NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE = SIMP(statut='f',typ=listis), - INST = SIMP(statut='f',typ='R',max='**'), + INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST = SIMP(statut='f',typ=listr8), - FREQ = SIMP(statut='f',typ='R',max='**'), + FREQ = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_FREQ = SIMP(statut='f',typ=listr8), - NUME_MODE = SIMP(statut='f',typ='I',max='**'), - NOEUD_CMP = SIMP(statut='f',typ='TXM',max='**'), - NOM_CAS = SIMP(statut='f',typ='TXM',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',validators=NoRepeat(),max='**'), ), - ENER_CIN = FACT(statut='f',min=1,max='**', + 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,max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,max='**'), + 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", @@ -15169,7 +16316,7 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=post_elem_prod,docu="U4.81.22-e",r MODELE = SIMP(statut='o',typ=modele), CHAM_MATER = SIMP(statut='o',typ=cham_mater), CARA_ELEM = SIMP(statut='f',typ=cara_elem), - CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),max='**' ), + 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), @@ -15179,29 +16326,29 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=post_elem_prod,docu="U4.81.22-e",r 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',max='**'), + NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE = SIMP(statut='f',typ=listis), - INST = SIMP(statut='f',typ='R',max='**'), + INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST = SIMP(statut='f',typ=listr8), - FREQ = SIMP(statut='f',typ='R',max='**'), + FREQ = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_FREQ = SIMP(statut='f',typ=listr8), - NUME_MODE = SIMP(statut='f',typ='I',max='**'), - NOEUD_CMP = SIMP(statut='f',typ='TXM',max='**'), - NOM_CAS = SIMP(statut='f',typ='TXM',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',validators=NoRepeat(),max='**'), ), - ENER_ELAS = FACT(statut='f',min=1,max='**', + 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,max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,max='**'), + 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='o',typ=modele), CHAM_MATER = SIMP(statut='o',typ=cham_mater), CARA_ELEM = SIMP(statut='f',typ=cara_elem), - CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),max='**' ), + 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), @@ -15210,24 +16357,24 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=post_elem_prod,docu="U4.81.22-e",r 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',max='**'), + NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE = SIMP(statut='f',typ=listis), - INST = SIMP(statut='f',typ='R',max='**'), + INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST = SIMP(statut='f',typ=listr8), ), - ENER_TOTALE = FACT(statut='f',min=1,max='**', + 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,max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,max='**'), + 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='o',typ=modele), CHAM_MATER = SIMP(statut='o',typ=cham_mater), CARA_ELEM = SIMP(statut='f',typ=cara_elem), - CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),max='**' ), + 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), @@ -15236,17 +16383,17 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=post_elem_prod,docu="U4.81.22-e",r 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',max='**'), + NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE = SIMP(statut='f',typ=listis), - INST = SIMP(statut='f',typ='R',max='**'), + INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST = SIMP(statut='f',typ=listr8), ), - WEIBULL = FACT(statut='f',min=1,max='**', + 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,max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,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', into=("SIGM_ELGA","SIGM_ELMOY"), defaut="SIGM_ELGA"), @@ -15260,7 +16407,7 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=post_elem_prod,docu="U4.81.22-e",r MODELE = SIMP(statut='o',typ=modele), CHAM_MATER = SIMP(statut='o',typ=cham_mater), CARA_ELEM = SIMP(statut='f',typ=cara_elem), - CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),max='**' ), + 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), @@ -15269,17 +16416,17 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=post_elem_prod,docu="U4.81.22-e",r 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',max='**'), + NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE = SIMP(statut='f',typ=listis), - INST = SIMP(statut='f',typ='R',max='**'), + INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST = SIMP(statut='f',typ=listr8), ), - RICE_TRACEY = FACT(statut='f',min=1,max='**', + 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,max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,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', into=("SIGM_ELGA","SIGM_ELMOY"), defaut="SIGM_ELGA"), @@ -15292,7 +16439,7 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=post_elem_prod,docu="U4.81.22-e",r MODELE = SIMP(statut='o',typ=modele), CHAM_MATER = SIMP(statut='o',typ=cham_mater), CARA_ELEM = SIMP(statut='f',typ=cara_elem), - CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),max='**' ), + 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), @@ -15301,59 +16448,59 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=post_elem_prod,docu="U4.81.22-e",r 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',max='**'), + NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE = SIMP(statut='f',typ=listis), - INST = SIMP(statut='f',typ='R',max='**'), + INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST = SIMP(statut='f',typ=listr8), ), - INDIC_ENER = FACT(statut='f',min=1,max='**', + 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,max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,max='**'), + 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='o',typ=modele), CHAM_MATER = SIMP(statut='o',typ=cham_mater), - CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),max='**' ), + 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',max='**'), + NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE = SIMP(statut='f',typ=listis), - INST = SIMP(statut='f',typ='R',max='**'), + INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST = SIMP(statut='f',typ=listr8), ), - INDIC_SEUIL = FACT(statut='f',min=1,max='**', + 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,max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,max='**'), + 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='o',typ=modele), CHAM_MATER = SIMP(statut='o',typ=cham_mater), - CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),max='**' ), + 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',max='**'), + NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE = SIMP(statut='f',typ=listis), - INST = SIMP(statut='f',typ='R',max='**'), + INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST = SIMP(statut='f',typ=listr8), ), - CHAR_LIMITE = FACT(statut='f',min=0,max=1, + 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 )", @@ -15361,24 +16508,24 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=post_elem_prod,docu="U4.81.22-e",r MODELE = SIMP(statut='o',typ=modele), CHAM_MATER = SIMP(statut='o',typ=cham_mater), CARA_ELEM = SIMP(statut='f',typ=cara_elem), - CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),max='**' ), + 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',max='**'), + NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE = SIMP(statut='f',typ=listis), - INST = SIMP(statut='f',typ='R',max='**'), + INST = SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST = SIMP(statut='f',typ=listr8), ), - CARA_GEOM = FACT(statut='f',min=1,max='**', + 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,max='**'), - GROUP_MA = SIMP(statut='f',typ=grma,max='**'), + 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), @@ -15387,16 +16534,16 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=post_elem_prod,docu="U4.81.22-e",r fr="calcul des caractéristiques géométriques d'un section de poutre", MODELE = SIMP(statut='o',typ=modele), CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),max='**' ), + 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',min=1,max='**', + 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,max='**'), - GROUP_MA_INTE = SIMP(statut='f',typ=grma,max='**'), + 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='f',typ=tabl_cara_geom), LAPL_PHI = SIMP(statut='f',typ=evol_ther), LAPL_PHI_Y = SIMP(statut='f',typ=evol_ther), @@ -15411,19 +16558,19 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=post_elem_prod,docu="U4.81.22-e",r fr="calcul des caractéristiques mécaniques d'un section de poutre", MODELE = SIMP(statut='o',typ=modele), CHAM_MATER = SIMP(statut='f',typ=cham_mater), - CHARGE = SIMP(statut='f',typ=(char_meca,char_ther,char_acou),max='**' ), + 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',min=1,max='**', - GROUP_MA_BORD = SIMP(statut='o',typ=grma,max='**'), + 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='o',typ=modele), ), - TRAV_EXT = FACT(statut='f',min=1,max=1), + 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) ), @@ -15436,7 +16583,8 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=post_elem_prod,docu="U4.81.22-e",r INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -15471,7 +16619,8 @@ POST_FATI_ALEA=OPER(nom="POST_FATI_ALEA",op=170,sd_prod=tabl_post_f_alea,docu="U MATER =SIMP(statut='o',typ=mater), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -15499,13 +16648,13 @@ POST_FATIGUE=OPER(nom="POST_FATIGUE",op=136,sd_prod=tabl_post_fatig,docu="U4.83. regles=(PRESENT_PRESENT('CORR_KE','MATER'), PRESENT_PRESENT('CORR_SIGM_MOYE','MATER'), PRESENT_PRESENT('DOMMAGE','MATER'),), - HISTOIRE = FACT(statut='o',min=1,max=1, + HISTOIRE = FACT(statut='o', regles=(UN_PARMI('SIGM','EPSI'),), SIGM = SIMP(statut='f',typ=(fonction,formule)), EPSI = SIMP(statut='f',typ=(fonction,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',min=1,max=1, + 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", @@ -15518,7 +16667,7 @@ POST_FATIGUE=OPER(nom="POST_FATIGUE",op=136,sd_prod=tabl_post_fatig,docu="U4.83. ), b_periodique = BLOC( condition = "CHARGEMENT=='PERIODIQUE'", - HISTOIRE = FACT(statut='o',min=1,max=1, + HISTOIRE = FACT(statut='o', SIGM_XX = SIMP(statut='o',typ=(fonction,formule)), SIGM_YY = SIMP(statut='o',typ=(fonction,formule)), SIGM_ZZ = SIMP(statut='o',typ=(fonction,formule)), @@ -15532,7 +16681,7 @@ POST_FATIGUE=OPER(nom="POST_FATIGUE",op=136,sd_prod=tabl_post_fatig,docu="U4.83. ), b_quelconque = BLOC( condition = "CHARGEMENT=='QUELCONQUE'", - HISTOIRE = FACT(statut='o',min=1,max=1, + HISTOIRE = FACT(statut='o', SIGM_XX = SIMP(statut='o',typ=(fonction,formule)), SIGM_YY = SIMP(statut='o',typ=(fonction,formule)), SIGM_ZZ = SIMP(statut='o',typ=(fonction,formule)), @@ -15549,7 +16698,8 @@ POST_FATIGUE=OPER(nom="POST_FATIGUE",op=136,sd_prod=tabl_post_fatig,docu="U4.83. INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -15572,7 +16722,8 @@ POST_GOUJ2E=OPER(nom="POST_GOUJ2E",op=187,sd_prod=tabl_post_gouj2e,reentrant='n' UIinfo={"groupes":("Outils métier",)}, TABLE =SIMP(statut='o',typ=tabl_post_rele), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -15607,10 +16758,10 @@ POST_K1_K2_K3=OPER(nom="POST_K1_K2_K3",op=188,sd_prod=tabl_post_k, b_fond_fiss =BLOC (condition="(FOND_FISS!= None)", MAILLAGE = SIMP(statut='o',typ=maillage), PRECISION = SIMP(statut='f',typ='R',defaut=0.001), - NOEUD = SIMP(statut='f',typ=no,max='**'), - GROUP_NO = SIMP(statut='f',typ=grno,max='**'), - SANS_NOEUD = SIMP(statut='f',typ=no,max='**'), - SANS_GROUP_NO = SIMP(statut='f',typ=grno,max='**') + 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='**') ), MATER =SIMP(statut='o',typ=mater, fr="Matériau homogène et isotrope cohérent avec celui utilisé pour le calcul des déplacements"), @@ -15624,20 +16775,21 @@ POST_K1_K2_K3=OPER(nom="POST_K1_K2_K3",op=188,sd_prod=tabl_post_k, 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',max='**'), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE =SIMP(statut='f',typ=listis), - INST =SIMP(statut='f',typ='R',max='**'), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8), 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") ), ), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), - VECT_K1 =SIMP(statut='o',typ='R',max='**', + 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 11/03/2003 AUTEUR DURAND C.DURAND + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -15665,14 +16817,14 @@ POST_K_BETA=OPER(nom="POST_K_BETA",op=198,sd_prod=tabl_post_beta, MAILLAGE = SIMP(statut='o',typ=maillage), MATER_REV = SIMP(statut='o',typ=mater), EPAIS_REV = SIMP(statut='o',typ='R'), - FISSURE = FACT(statut='o',min=1,max=1, + 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',min=1,max='**', + K1D = FACT(statut='o',max='**', TABL_MECA_REV = SIMP(statut='o',typ=(tabl_post_rele)), TABL_MECA_MDB = SIMP(statut='o',typ=(tabl_post_rele)), TABL_THER = SIMP(statut='o',typ=(tabl_post_rele)), @@ -15680,7 +16832,8 @@ POST_K_BETA=OPER(nom="POST_K_BETA",op=198,sd_prod=tabl_post_beta, ), TITRE = SIMP(statut='f',typ='TXM',max='**'), ); -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -15705,7 +16858,7 @@ POST_RCCM=OPER(nom="POST_RCCM",op= 165,sd_prod=tabl_post_rccm, TYPE_RESU =SIMP(statut='f',typ='TXM',defaut="VALE_MAX",into=("VALE_MAX","VALE_INST") ), INFO =SIMP(statut='f',typ='I',into=(1,2) ), TITRE =SIMP(statut='f',typ='TXM',max='**'), - OPTION =SIMP(statut='o',typ='TXM',max='**', + OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', into=("PM_PB", "SN", "FATIGUE_SPMAX", @@ -15716,29 +16869,29 @@ POST_RCCM=OPER(nom="POST_RCCM",op= 165,sd_prod=tabl_post_rccm, b_pm_sn =BLOC(condition="(OPTION == 'PM_PB')or(OPTION == 'SN')or(OPTION == 'FATIGUE_SPMAX')or(OPTION == 'FATIGUE_ZH210')", MATER =SIMP(statut='o',typ=mater ), MAILLAGE =SIMP(statut='f',typ=maillage), - SEGMENT =FACT(statut='o',min=1,max='**',fr="Segment sur lequel s effectue le depouillement", + SEGMENT =FACT(statut='o',max='**',fr="Segment sur lequel s effectue le depouillement", regles=(AU_MOINS_UN('CHEMIN','GROUP_NO','NOEUD'), EXCLUS('CHEMIN','GROUP_NO'), EXCLUS('CHEMIN','NOEUD'),), INTITULE =SIMP(statut='f',typ='TXM' ), CHEMIN =SIMP(statut='f',typ=(courbe,surface),), - NOEUD =SIMP(statut='f',typ=no,max='**'), + NOEUD =SIMP(statut='f',typ=no,validators=NoRepeat(),max='**'), GROUP_NO =SIMP(statut='f',typ=grno), b_acce_noeud =BLOC(condition="(NOEUD != None)or(GROUP_NO != None)", PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3), CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), ), ), - TRANSITOIRE =FACT(statut='o',min=1,max='**',fr="transitoire à dépouiller", + TRANSITOIRE =FACT(statut='o',max='**',fr="transitoire à dépouiller", regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST','LIST_ORDRE'),), RESULTAT =SIMP(statut='o',typ=(evol_elas,evol_noli) ), RESU_SIGM_THER =SIMP(statut='f',typ=(evol_elas,evol_noli),fr="résultat sous chargement thermique seul" ), NB_OCCUR =SIMP(statut='f',typ='I',defaut= 1,fr="nombre d occurences réelles de ce transitoire" ), NOM_CHAM =SIMP(statut='o',typ='TXM',into=("SIEF_ELNO_ELGA","SIGM_ELNO_DEPL") ), TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',max='**'), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE =SIMP(statut='f',typ=listis ), - INST =SIMP(statut='f',typ='R',max='**'), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8 ), b_inst =BLOC(condition = "(INST != None) or (LIST_INST != None)" , PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6 ), @@ -15751,39 +16904,39 @@ POST_RCCM=OPER(nom="POST_RCCM",op= 165,sd_prod=tabl_post_rccm, MATER =SIMP(statut='o',typ=mater ), 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',min=1,max='**',fr="Chargements mécaniques", - NUME_CHAR =SIMP(statut='o',typ='I',max=1,fr="numéro du chargement" ), - NOM_CHAR =SIMP(statut='f',typ='TXM',max=1,fr="nom du chargement" ), - TYPE_CHAR =SIMP(statut='f',typ='TXM',max=1,fr="nature du chargement",into=( "SEISME","AUTRE"),defaut="AUTRE",), - FX =SIMP(statut='f',typ='R',max=1,fr="effort suivant x", ), - FY =SIMP(statut='f',typ='R',max=1,fr="effort suivant y", ), - FZ =SIMP(statut='f',typ='R',max=1,fr="effort suivant z", ), - MX =SIMP(statut='o',typ='R',max=1,fr="moment suivant x", ), - MY =SIMP(statut='o',typ='R',max=1,fr="moment suivant y", ), - MZ =SIMP(statut='o',typ='R',max=1,fr="moment suivant z", ), + CHAR_MECA =FACT(statut='o',max='**',fr="Chargements mécaniques", + 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",), + 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", ), + MX =SIMP(statut='o',typ='R',fr="moment suivant x", ), + MY =SIMP(statut='o',typ='R',fr="moment suivant y", ), + MZ =SIMP(statut='o',typ='R',fr="moment suivant z", ), ), - RESU_MECA_UNIT =FACT(statut='o',min=1,max=1,fr="resultats mécaniques unitaires", - TABL_FX =SIMP(statut='f',typ=table,max=1, + RESU_MECA_UNIT =FACT(statut='o',fr="resultats mécaniques unitaires", + TABL_FX =SIMP(statut='f',typ=table, fr="table relevé des contraintes pour chargement unitaire FX"), - TABL_FY =SIMP(statut='f',typ=table,max=1, + TABL_FY =SIMP(statut='f',typ=table, fr="table relevé des contraintes pour chargement unitaire FY"), - TABL_FZ =SIMP(statut='f',typ=table,max=1, + TABL_FZ =SIMP(statut='f',typ=table, fr="table relevé des contraintes pour chargement unitaire FZ"), - TABL_MX =SIMP(statut='o',typ=table,max=1, + TABL_MX =SIMP(statut='o',typ=table, fr="table relevé des contraintes pour chargement unitaire MX"), - TABL_MY =SIMP(statut='o',typ=table,max=1, + TABL_MY =SIMP(statut='o',typ=table, fr="table relevé des contraintes pour chargement unitaire MY"), - TABL_MZ =SIMP(statut='o',typ=table,max=1, + TABL_MZ =SIMP(statut='o',typ=table, fr="table relevé des contraintes pour chargement unitaire MZ"), - TABL_PRES =SIMP(statut='o',typ=table,max=1, + TABL_PRES =SIMP(statut='o',typ=table, fr="table relevé des contraintes pour chargement unitaire de pression"), ), - RESU_THER =FACT(statut='f',min=1,max='**',fr="resultats thermiques", - NUME_RESU_THER =SIMP(statut='o',typ='I',max=1,fr="numéro de la table de résultat thermique" ), - TABL_RESU_THER =SIMP(statut='o',typ=table,max=1, + 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, fr="table relevé des contraintes pour chargement thermique"), ), - SITUATION =FACT(statut='o',min=1,max='**',fr="Situation",ang="situation_ang", + 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" ), @@ -15806,69 +16959,69 @@ POST_RCCM=OPER(nom="POST_RCCM",op= 165,sd_prod=tabl_post_rccm, fr="Ke meca seul ou partition mecanique + thermique" ), MODELE =SIMP(statut='o',typ=modele), CARA_ELEM =SIMP(statut='o',typ=cara_elem), - ZONE_ANALYSE =FACT(statut='o',min=1,max=1,fr="liste des mailles ou des noeuds analysés", + 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,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), ), - RESU_MECA =FACT(statut='o',min=1,max='**',fr="Chargements mécaniques", + RESU_MECA =FACT(statut='o',max='**',fr="Chargements mécaniques", regles=(UN_PARMI('CHAM_GD','RESULTAT'),), - NUME_CHAR =SIMP(statut='o',typ='I',max=1,fr="numéro du chargement" ), - NOM_CHAR =SIMP(statut='f',typ='TXM',max=1,fr="nom du chargement" ), - TYPE_CHAR =SIMP(statut='f',typ='TXM',max=1,fr="nature du chargement",into=( "SEISME","AUTRE"),defaut="AUTRE",), + 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), RESULTAT =SIMP(statut='f',typ=resultat), 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',max=1,into=("EFGE_ELNO_DEPL","SIEF_ELNO_ELGA"),), + 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',max=1), - INST =SIMP(statut='f',typ='R',max=1), - NOEUD_CMP =SIMP(statut='f',typ='TXM',max='**'), + 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',min=1,max='**',fr="indices de contraintes", + 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',max=1,defaut=1.0,fr="indice de contraintes C1 du RCCM"), - K1 =SIMP(statut='f',typ='R',max=1,defaut=1.0,fr="indice de contraintes K1 du RCCM"), - C2 =SIMP(statut='f',typ='R',max=1,defaut=1.0,fr="indice de contraintes C2 du RCCM"), - K2 =SIMP(statut='f',typ='R',max=1,defaut=1.0,fr="indice de contraintes K2 du RCCM"), - C3 =SIMP(statut='f',typ='R',max=1,defaut=0.5,fr="indice de contraintes C3 du RCCM"), - K3 =SIMP(statut='f',typ='R',max=1,defaut=1.0,fr="indice de contraintes K3 du RCCM"), + 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,max='**', + 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,max='**', + 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,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + 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',min=1,max='**',fr="resultats thermiques", + 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',max=1,fr="numéro de la table de résultat thermique" ), - TABL_RESU_THER =SIMP(statut='o',typ=table,max=1, + 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, fr="table relevé des températures sur la section"), - TABL_MOYE_THER =SIMP(statut='o',typ=table,max=1, + TABL_MOYE_THER =SIMP(statut='o',typ=table, fr="table relevé des moyennes sur la section"), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + 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,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), ), ), - SITUATION =FACT(statut='o',min=1,max='**',fr="Situation",ang="situation_ang", + 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" ), @@ -15886,7 +17039,8 @@ POST_RCCM=OPER(nom="POST_RCCM",op= 165,sd_prod=tabl_post_rccm, ), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # ====================================================================== # CONFIGURATION MANAGEMENT OF EDF VERSION # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -15907,7 +17061,7 @@ POST_RCCM=OPER(nom="POST_RCCM",op= 165,sd_prod=tabl_post_rccm, # RESPONSABLE G8BHHXD X.DESROCHES POST_RELEVE_T=OPER(nom="POST_RELEVE_T",op=51,sd_prod=tabl_post_rele,docu="U4.81.21-e",reentrant='n', UIinfo={"groupes":("Post traitements",)}, - ACTION =FACT(statut='o',min=1,max='**', + ACTION =FACT(statut='o',max='**', regles=(AU_MOINS_UN('CHEMIN','GROUP_NO','NOEUD'), EXCLUS('CHEMIN','GROUP_NO'), EXCLUS('CHEMIN','NOEUD'), @@ -15915,19 +17069,18 @@ POST_RELEVE_T=OPER(nom="POST_RELEVE_T",op=51,sd_prod=tabl_post_rele,docu="U4.81. UN_PARMI('RESULTAT','CHAM_GD'), UN_PARMI('TOUT_CMP','NOM_CMP','INVARIANT','ELEM_PRINCIPAUX','RESULTANTE'), PRESENT_PRESENT('TRAC_DIR','DIRECTION'), - PRESENT_PRESENT('TRAC_DIRECTION','DIRECTION'), ENSEMBLE('MOMENT','POINT'), PRESENT_PRESENT('MOMENT','RESULTANTE'), - PRESENT_ABSENT('TOUT_CMP','TRAC_DIRECTION','TRAC_NORMALE'), PRESENT_ABSENT('TOUT_CMP','TRAC_DIR','TRAC_NOR'), + EXCLUS('TRAC_DIR','TRAC_NOR'), PRESENT_PRESENT('ORIGINE','AXE_Z'),), INTITULE =SIMP(statut='o',typ='TXM'), CHEMIN =SIMP(statut='f',typ=(courbe,surface) ), - NOEUD =SIMP(statut='f',typ=no,max='**'), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), + 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='**'), FORMAT_C =SIMP(statut='f',typ='TXM',defaut="MODULE",into=("MODULE","REEL","IMAG")), CHAM_GD =SIMP(statut='f',typ=(cham_no_depl_r,cham_no_temp_r,cham_no_pres_r,cham_no_var2_r, cham_elem_sief_r,cham_elem_epsi_r,cham_elem_flux_r,cham_elem_crit_r, @@ -15940,7 +17093,7 @@ POST_RELEVE_T=OPER(nom="POST_RELEVE_T",op=51,sd_prod=tabl_post_rele,docu="U4.81. b_sensibilite =BLOC(condition="RESULTAT != None", fr="Définition des paramètres de sensibilité", ang="Definition of sensitivity parameters", - SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),max='**', + SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', fr="Liste des paramètres de sensibilité.", ang="List of sensitivity parameters"),), @@ -15949,15 +17102,15 @@ POST_RELEVE_T=OPER(nom="POST_RELEVE_T",op=51,sd_prod=tabl_post_rele,docu="U4.81. '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',max='**'), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE =SIMP(statut='f',typ=listis), - NUME_MODE =SIMP(statut='f',typ='I',max='**'), + NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_MODE =SIMP(statut='f',typ=listis), - NOEUD_CMP =SIMP(statut='f',typ='TXM',max='**'), - NOM_CAS =SIMP(statut='f',typ='TXM',max='**'), - FREQ =SIMP(statut='f',typ='R',max='**'), + 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), - INST =SIMP(statut='f',typ='R',max='**'), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8), PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-6), CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), @@ -15979,17 +17132,16 @@ POST_RELEVE_T=OPER(nom="POST_RELEVE_T",op=51,sd_prod=tabl_post_rele,docu="U4.81. 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='**'), - TRAC_DIRECTION =SIMP(statut='f',typ='TXM',into=("OUI",)), - TRAC_NORMALE =SIMP(statut='f',typ='TXM',into=("OUI",)), VECT_Y =SIMP(statut='f',typ='R',max='**'), MOYE_NOEUD =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - OPERATION =SIMP(statut='o',typ='TXM',into=("EXTRACTION","MOYENNE"),max=2), + OPERATION =SIMP(statut='o',typ='TXM',into=("EXTRACTION","MOYENNE"),validators=NoRepeat(),max=2), ), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 09/10/2002 AUTEUR DURAND C.DURAND + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16011,8 +17163,8 @@ POST_SIMPLIFIE=OPER(nom="POST_SIMPLIFIE",op=185,sd_prod=tabl_post_simpli, fr=" ",docu="U4.PS.10-a",reentrant='n', UIinfo={"groupes":("Outils métier",)}, MATER =SIMP(statut='o',typ=(mater) ), - DEF_EQUI =FACT(statut='f',min=1,max=1, - METHODE =SIMP(statut='f',typ='TXM',max='**',defaut="UTO_2_3", + DEF_EQUI =FACT(statut='f', + METHODE =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',defaut="UTO_2_3", into=("UTO_2_3",) ), EPAIS =SIMP(statut='o',typ='R'), LONG_FISS =SIMP(statut='o',typ='R'), @@ -16021,7 +17173,8 @@ POST_SIMPLIFIE=OPER(nom="POST_SIMPLIFIE",op=185,sd_prod=tabl_post_simpli, TEMP_ANALYSE =SIMP(statut='f',typ='R'), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16046,12 +17199,12 @@ POST_USURE=OPER(nom="POST_USURE",op=153,sd_prod=tabl_post_usur,docu="U4.84.05-d" 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',min=1,max=1, + ETAT_INIT =FACT(statut='f', TABL_USURE =SIMP(statut='f',typ=tabl_post_usur), INST_INIT =SIMP(statut='f',typ='R'), ), RESU_GENE =SIMP(statut='f',typ=tran_gene), - NOEUD =SIMP(statut='f',typ=no,max=1), + 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 ), @@ -16061,13 +17214,13 @@ POST_USURE=OPER(nom="POST_USURE",op=153,sd_prod=tabl_post_usur,docu="U4.84.05-d" regles=(UN_PARMI('MOBILE','MATER_USURE','SECTEUR'), EXCLUS('MATER_USURE','OBSTACLE'), EXCLUS('MOBILE','USURE_OBST'),), - MOBILE =FACT(statut='f',min=1,max=1, + MOBILE =FACT(statut='f', COEF_USURE =SIMP(statut='o',typ='R'), ), - OBSTACLE =FACT(statut='f',min=1,max=1, + OBSTACLE =FACT(statut='f', COEF_USURE =SIMP(statut='o',typ='R'), ), - SECTEUR =FACT(statut='f',min=1,max='**', + 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")), @@ -16083,14 +17236,14 @@ POST_USURE=OPER(nom="POST_USURE",op=153,sd_prod=tabl_post_usur,docu="U4.84.05-d" regles=(UN_PARMI('MOBILE','MATER_USURE'), EXCLUS('MATER_USURE','OBSTACLE'), EXCLUS('MOBILE','USURE_OBST'),), - MOBILE =FACT(statut='f',min=1,max=1, + 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',min=1,max=1, + 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'), @@ -16106,13 +17259,13 @@ POST_USURE=OPER(nom="POST_USURE",op=153,sd_prod=tabl_post_usur,docu="U4.84.05-d" regles=(UN_PARMI('MOBILE','MATER_USURE'), EXCLUS('MATER_USURE','OBSTACLE'), EXCLUS('MOBILE','USURE_OBST'),), - MOBILE =FACT(statut='f',min=1,max=1, + 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',min=1,max=1, + 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), @@ -16134,13 +17287,14 @@ POST_USURE=OPER(nom="POST_USURE",op=153,sd_prod=tabl_post_usur,docu="U4.84.05-d" 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',max='**'), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8), 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 11/03/2003 AUTEUR DURAND C.DURAND + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16163,7 +17317,7 @@ POST_ZAC=OPER(nom="POST_ZAC",op= 175,sd_prod=mult_elas,docu="U4.83.21-b",reentra fr="Donne l'état adapté ou accommodé d'une structure sous chargement cyclique élastique affine ou non", MODELE =SIMP(statut='o',typ=modele), CHAM_MATER =SIMP(statut='o',typ=cham_mater), - EXCIT =FACT(statut='o',min=1,max='**', + EXCIT =FACT(statut='o',max='**', CHARGE =SIMP(statut='o',typ=char_meca), FONC_MULT =SIMP(statut='f',typ=(fonction,formule)), TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE_CSTE",into=("FIXE_CSTE",)), @@ -16171,9 +17325,9 @@ POST_ZAC=OPER(nom="POST_ZAC",op= 175,sd_prod=mult_elas,docu="U4.83.21-b",reentra 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',max='**'), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8), - INST =SIMP(statut='f',typ='R',max='**'), + 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), @@ -16184,7 +17338,8 @@ POST_ZAC=OPER(nom="POST_ZAC",op= 175,sd_prod=mult_elas,docu="U4.83.21-b",reentra CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 06/09/2003 AUTEUR D6BHHJP J.P.LEFEBVRE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16206,6 +17361,9 @@ POURSUITE=MACRO(nom="POURSUITE",op=ops.build_poursuite,repetable='n',fr="Poursui docu="U4.11.03-g",sd_prod = ops.POURSUITE, UIinfo={"groupes":("Gestion du travail",)}, op_init = ops.POURSUITE_context,fichier_ini = 1, + HDF =FACT(statut='f',min=1,max=1, + FICHIER =SIMP(fr="nom du fichier hdf associe",statut='o',typ='TXM'), + ), PAR_LOT =SIMP(fr="mode de traitement des commandes",statut='f',typ='TXM', into=("OUI","NON"),defaut="OUI"), BASE =FACT(fr="définition des parmètres associés aux bases JEVEUX", @@ -16248,7 +17406,8 @@ POURSUITE=MACRO(nom="POURSUITE",op=ops.build_poursuite,repetable='n',fr="Poursui UNITE =SIMP(statut='f',typ='I',defaut=15), ), ) ; -#& MODIF COMMANDE DATE 21/12/2000 AUTEUR DURAND C.DURAND + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16272,7 +17431,8 @@ PRE_CHAR_IDEAS=PROC(nom="PRE_CHAR_IDEAS",op=100,docu="U7.01.02-e", UNITE_ASTER =SIMP(statut='f',typ='I',defaut=21), MODELE =SIMP(statut='o',typ=modele), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16296,7 +17456,8 @@ PRE_GIBI=PROC(nom="PRE_GIBI",op=49,docu="U7.01.11-g", UNITE_GIBI =SIMP(statut='f',typ='I',defaut=19), UNITE_MAILLAGE =SIMP(statut='f',typ='I',defaut=20), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16321,7 +17482,8 @@ PRE_GMSH=PROC(nom="PRE_GMSH",op=47,docu="U7.01.01-g", UNITE_GMSH =SIMP(statut='f',typ='I',defaut=19), UNITE_MAILLAGE =SIMP(statut='f',typ='I',defaut=20), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16346,7 +17508,8 @@ PRE_IDEAS=PROC(nom="PRE_IDEAS",op=47,docu="U7.01.01-g", 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 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16369,7 +17532,8 @@ PROCEDURE=MACRO(nom="PROCEDURE",op=ops.build_procedure, docu="U4.13.03-f", fr="Nommer le fichier de commandes secondaires", NOM =SIMP(statut='f',typ='TXM',defaut=" "), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16402,7 +17566,8 @@ PROD_MATR_CHAM=OPER(nom="PROD_MATR_CHAM",op= 156,sd_prod=prod_matr_cham_prod, CHAM_NO =SIMP(statut='o',typ=(cham_no_depl_r,cham_no_depl_c,cham_no_temp_r,cham_no_pres_c ) ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16435,7 +17600,7 @@ def proj_champ_prod(RESULTAT=None,CHAM_NO_REFE=None,**args ): if AsType(CHAM_NO_REFE) == cham_no_flux_r : return cham_no_flux_r raise AsException("type de concept resultat non prevu") -PROJ_CHAMP=OPER(nom="PROJ_CHAMP",op= 166,sd_prod=proj_champ_prod,docu="U4.72.05-d",reentrant='n', +PROJ_CHAMP=OPER(nom="PROJ_CHAMP",op= 166,sd_prod=proj_champ_prod,docu="U4.72.05-d",reentrant='f', UIinfo={"groupes":("Résultats et champs",)}, fr="Projection d'un champ aux noeuds sur les noeuds d'un autre maillage", # @@ -16453,39 +17618,43 @@ PROJ_CHAMP=OPER(nom="PROJ_CHAMP",op= 166,sd_prod=proj_champ_prod,docu="U4.72.05- regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','FREQ','LIST_INST','LIST_FREQ','LIST_ORDRE'), EXCLUS('TOUT_CHAM','NOM_CHAM',), ), RESULTAT =SIMP(statut='o',typ=(evol_ther,evol_elas,evol_noli,evol_char) ), + 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), MODELE_2 =SIMP(statut='o',typ=modele), TOUT_CHAM =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NOM_CHAM =SIMP(statut='f',typ='TXM',max='**'), + NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',max='**' ), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), LIST_ORDRE =SIMP(statut='f',typ=listis), - INST =SIMP(statut='f',typ='R',max='**' ), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), LIST_INST =SIMP(statut='f',typ=listr8), - FREQ =SIMP(statut='f',typ='R',max='**' ), + FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), LIST_FREQ =SIMP(statut='f',typ=listr8), ), - VIS_A_VIS =FACT(statut='f',min=1,max='**', + 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,max='**'), - MAILLE_1 =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO_1 =SIMP(statut='f',typ=grno,max='**'), - NOEUD_1 =SIMP(statut='f',typ=no,max='**'), + 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,max='**'), - MAILLE_2 =SIMP(statut='f',typ=ma,max='**'), - GROUP_NO_2 =SIMP(statut='f',typ=grno,max='**'), - NOEUD_2 =SIMP(statut='f',typ=no,max='**'), + 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='**'), ), TITRE =SIMP(statut='f',typ='TXM',max='**' ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16515,13 +17684,14 @@ PROJ_MATR_BASE=OPER(nom="PROJ_MATR_BASE",op= 71,sd_prod=matr_asse_gene_prod, docu="U4.63.12-f",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 ) ), + 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 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16552,22 +17722,22 @@ PROJ_MESU_MODAL=OPER(nom="PROJ_MESU_MODAL",op= 193, UIinfo={"groupes":("Résultats et champs",)}, fr="Calcul de coordonnees generalisees de mesure experimentale relatives a une base de projection", - MODELE_CALCUL =FACT(statut='o',min=1,max=1, + MODELE_CALCUL =FACT(statut='o', MODELE =SIMP(statut='o',typ=(modele) ), BASE =SIMP(statut='o',typ=(mode_meca,base_modale,) ), ), - MODELE_MESURE =FACT(statut='o',min=1,max=1, + MODELE_MESURE =FACT(statut='o', MODELE =SIMP(statut='o',typ=(modele) ), MESURE =SIMP(statut='o',typ=(dyna_trans,dyna_harmo,base_modale,) ), NOM_PARA =SIMP(statut='f',typ='TXM',defaut="INST",into=("INST","FREQ","DEFORMEE",),), NOM_CHAM =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL","VITE","ACCE","SIEF_NOEU","EPSI_NOEU_DEPL",) ), ), - CORR_MANU =FACT(statut='f',min=1,max='**', + 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), ), - RESOLUTION =FACT(statut='f',min=1,max=1, + 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. ), @@ -16575,13 +17745,14 @@ PROJ_MESU_MODAL=OPER(nom="PROJ_MESU_MODAL",op= 193, 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',max='**',defaut=0. ), + COEF_PONDER =SIMP(statut='f',typ='R',defaut=0. ,max='**' ), COEF_PONDER_F =SIMP(statut='f',typ=(fonction,formule),max='**' ), ), ), ); -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16604,7 +17775,7 @@ PROJ_SPEC_BASE=OPER(nom="PROJ_SPEC_BASE",op= 146,sd_prod=tabl_intsp,docu="U4.63. fr="Projection d un ou plusieurs spectres de turbulenc sur un ensemble de bases modales ", regles=(UN_PARMI('BASE_ELAS_FLUI','MODE_MECA','CHAM_NO'), ENSEMBLE('FREQ_INIT','FREQ_FIN','NB_POIN'),), - SPEC_TURB =SIMP(statut='o',typ=spectre,max='**' ), + SPEC_TURB =SIMP(statut='o',typ=spectre,validators=NoRepeat(),max='**' ), BASE_ELAS_FLUI =SIMP(statut='f',typ=melasflu ), MODE_MECA =SIMP(statut='f',typ=mode_meca ), CHAM_NO =SIMP(statut='f',typ=cham_no_depl_r ), @@ -16620,7 +17791,8 @@ PROJ_SPEC_BASE=OPER(nom="PROJ_SPEC_BASE",op= 146,sd_prod=tabl_intsp,docu="U4.63. ORIG_AXE =SIMP(statut='f',typ='R',min=3,max=3 ), TITRE =SIMP(statut='f',typ='TXM',max='**' ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16643,13 +17815,14 @@ PROJ_VECT_BASE=OPER(nom="PROJ_VECT_BASE",op= 72,sd_prod=vect_asse_gene, docu="U4.63.13-f",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 ) ), + 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_depl_r ), VECT_ASSE_GENE =SIMP(statut='f',typ=vect_asse_gene ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16670,22 +17843,22 @@ PROJ_VECT_BASE=OPER(nom="PROJ_VECT_BASE",op= 72,sd_prod=vect_asse_gene, RECA_WEIBULL=OPER(nom="RECA_WEIBULL",op= 197,sd_prod=tabl_reca_weib, fr=" ",docu="U4.82.06-b",reentrant='n', UIinfo={"groupes":("Post traitements",)}, - LIST_PARA =SIMP(statut='o',typ='TXM',max='**',into=("SIGM_REFE","M",) ), - RESU =FACT(statut='o',min=1,max='**', + 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) ), CHAM_MATER =SIMP(statut='o',typ=(cham_mater) ), TEMPE =SIMP(statut='f',typ='R' ), - LIST_INST_RUPT =SIMP(statut='o',typ='R',max='**' ), + 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',max='**' ), - INST =SIMP(statut='f',typ='R',max='**' ), + 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) ), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + 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",) ), @@ -16695,23 +17868,24 @@ RECA_WEIBULL=OPER(nom="RECA_WEIBULL",op= 197,sd_prod=tabl_reca_weib, ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ,) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 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. +# 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 MCOURTOI M.COURTOIS def recu_fonction_prod(RESULTAT=None,TABLE=None,OBSTACLE=None, @@ -16740,7 +17914,7 @@ RECU_FONCTION=OPER(nom="RECU_FONCTION",op= 90,sd_prod=recu_fonction_prod, CHAM_GD =SIMP(statut='f',typ=(cham_no_depl_r,cham_no_temp_r,cham_no_pres_r,cham_elem_sief_r, cham_elem_vari_r,cham_elem_epsi_r,cham_elem_flux_r, - cham_elem_pres_r,cham_elem_meta_r ) ), + cham_elem_pres_r,) ), RESULTAT =SIMP(statut='f',typ=(evol_elas,dyna_trans,evol_noli,evol_ther,dyna_harmo ) ), RESU_GENE =SIMP(statut='f',typ=tran_gene), # concept table à créer @@ -16766,7 +17940,7 @@ RECU_FONCTION=OPER(nom="RECU_FONCTION",op= 90,sd_prod=recu_fonction_prod, 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',max='**'), + 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") ), @@ -16784,7 +17958,7 @@ RECU_FONCTION=OPER(nom="RECU_FONCTION",op= 90,sd_prod=recu_fonction_prod, TYPE_RESU =SIMP(statut='f',typ='TXM',defaut="FONCTION",into=("FONCTION","FONCTION_C") ), ), - FILTRE =FACT(statut='f',min=1,max='**', + 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", @@ -16816,20 +17990,20 @@ RECU_FONCTION=OPER(nom="RECU_FONCTION",op= 90,sd_prod=recu_fonction_prod, EXCLUS('GROUP_NO','NOEUD'), EXCLUS('NOEUD_CHOC','GROUP_NO_CHOC'), UN_PARMI('NOM_CHAM','NOM_PARA_RESU'),), - NOM_CHAM =SIMP(statut='f',typ='TXM' ), + NOM_CHAM =SIMP(statut='f',typ='TXM',into=C_NOM_CHAM_INTO()), NOM_PARA_RESU =SIMP(statut='f',typ='TXM' ), TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',max='**'), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE =SIMP(statut='f',typ=listis ), TOUT_INST =SIMP(statut='f',typ='TXM',into=("OUI",) ), - INST =SIMP(statut='f',typ='R',max='**'), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8 ), - FREQ =SIMP(statut='f',typ='R',max='**'), + FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_FREQ =SIMP(statut='f',typ=listr8 ), 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',max=2,into=("NON","LIN") ), + INTERP_NUME =SIMP(statut='f',typ='TXM',into=("NON","LIN") ), ), NOM_CMP =SIMP(statut='f',typ='TXM' ), @@ -16848,17 +18022,17 @@ RECU_FONCTION=OPER(nom="RECU_FONCTION",op= 90,sd_prod=recu_fonction_prod, # regles=(UN_PARMI('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','TOUT_INST','LIST_INST','FREQ','LIST_FREQ'),), NOM_CHAM =SIMP(statut='f',typ='TXM',into=("DEPL","VITE","ACCE","PTEM") ), TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',max='**'), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE =SIMP(statut='f',typ=listis ), TOUT_INST =SIMP(statut='f',typ='TXM',into=("OUI",) ), - INST =SIMP(statut='f',typ='R',max='**'), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8 ), - FREQ =SIMP(statut='f',typ='R',max='**'), + FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_FREQ =SIMP(statut='f',typ=listr8 ), 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',max=2,into=("NON","LIN") ), + INTERP_NUME =SIMP(statut='f',typ='TXM',into=("NON","LIN") ), ), b_local_cham = BLOC ( condition = "NOM_CHAM!='PTEM'", fr="Opérandes de localisation du champ", regles=(AU_MOINS_UN('MAILLE','GROUP_MA','GROUP_NO','NOEUD','NOEUD_CHOC','GROUP_NO_CHOC'), @@ -16919,7 +18093,8 @@ RECU_FONCTION=OPER(nom="RECU_FONCTION",op= 90,sd_prod=recu_fonction_prod, TITRE =SIMP(statut='f',typ='TXM',max='**'), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16947,7 +18122,8 @@ RECU_GENE=OPER(nom="RECU_GENE",op= 76,sd_prod=vect_asse_gene,docu="U4.71.03-f", 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/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16975,7 +18151,8 @@ RECU_TABLE=OPER(nom="RECU_TABLE",op= 174,sd_prod=table, NOM_PARA =SIMP(statut='f',typ='TXM',max='**'), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -17012,7 +18189,8 @@ RESO_GRAD=OPER(nom="RESO_GRAD",op= 84,sd_prod=reso_grad_prod, RESI_RELA =SIMP(statut='f',typ='R',defaut= 1E-6 ), INFO =SIMP(statut='f',typ='I',into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -17051,7 +18229,8 @@ RESO_LDLT=OPER(nom="RESO_LDLT",op=15,sd_prod=reso_ldlt_prod,reentrant='f', TITRE =SIMP(statut='f',typ='TXM',max='**'), INFO =SIMP(statut='f',typ='I',into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -17097,33 +18276,34 @@ REST_BASE_PHYS=OPER(nom="REST_BASE_PHYS",op= 75,sd_prod=rest_base_phys_prod, MODE_MECA =SIMP(statut='f',typ=mode_meca ), TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), - NUME_ORDRE =SIMP(statut='f',typ='I',max='**' ), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), TOUT_INST =SIMP(statut='f',typ='TXM',into=("OUI",) ), - INST =SIMP(statut='f',typ='R',max='**' ), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), LIST_INST =SIMP(statut='f',typ=listr8 ), - FREQ =SIMP(statut='f',typ='R',max='**' ), + FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), LIST_FREQ =SIMP(statut='f',typ=listr8 ), 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',max=8,defaut="ACCE", + 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,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), ACCE_MONO_APPUI =SIMP(statut='f',typ=(fonction,formule)), - DIRECTION =SIMP(statut='f',typ='R',max='**' ), + DIRECTION =SIMP(statut='f',typ='R',min=3,max=3 ), 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 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -17147,26 +18327,27 @@ REST_SPEC_PHYS=OPER(nom="REST_SPEC_PHYS",op= 148,sd_prod=tabl_intsp, regles=(AU_MOINS_UN('BASE_ELAS_FLUI','MODE_MECA'),), BASE_ELAS_FLUI =SIMP(statut='f',typ=melasflu ), MODE_MECA =SIMP(statut='f',typ=mode_meca ), - BANDE =SIMP(statut='f',typ='R',min=2,max=2 ), - NUME_ORDRE =SIMP(statut='f',typ='I',max='**' ), + 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=tabl_intsp ), - NOEUD =SIMP(statut='o',typ=no,max='**'), - NOM_CMP =SIMP(statut='o',typ='TXM',max='**' ), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - NOM_CHAM =SIMP(statut='o',typ='TXM',max=7, - into=("DEPL","VITE","ACCE","EFGE_ELNO_DEPL", + 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',max=1, - NOEUD =SIMP(statut='o',typ=no,max='**'), - NOM_CMP =SIMP(statut='o',typ='TXM',max='**' ), + 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 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -17184,11 +18365,12 @@ REST_SPEC_PHYS=OPER(nom="REST_SPEC_PHYS",op= 148,sd_prod=tabl_intsp, # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -RETOUR=MACRO(nom="RETOUR",op= -2,docu="U4.13.02-f", +RETOUR=MACRO(nom="RETOUR",op= ops.build_retour,docu="U4.13.02-f", UIinfo={"groupes":("Gestion du travail",)}, fr="Retour au fichier de commandes appelant", ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -17215,7 +18397,7 @@ STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, MODELE =SIMP(statut='o',typ=modele), CHAM_MATER =SIMP(statut='o',typ=cham_mater), CARA_ELEM =SIMP(statut='f',typ=cara_elem), - EXCIT =FACT(statut='o',min=1,max='**', + EXCIT =FACT(statut='o',max='**', CHARGE =SIMP(statut='o',typ=char_meca), FONC_MULT =SIMP(statut='f',typ=(fonction,formule)), TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE_CSTE", @@ -17226,7 +18408,7 @@ STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, IRRA =SIMP(statut='f',typ=evol_varc), ), COMP_INCR =C_COMP_INCR(), - COMP_ELAS =FACT(statut='f',min=1,max='**', + 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")), @@ -17238,10 +18420,10 @@ STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, 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,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), ), - ETAT_INIT =FACT(statut='f',min=1,max=1, + 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',), @@ -17260,7 +18442,7 @@ STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, NUME_DIDI =SIMP(statut='f',typ='I'), INST_ETAT_INIT =SIMP(statut='f',typ='R'), ), - INCREMENT =FACT(statut='o',min=1,max=1, + INCREMENT =FACT(statut='o', regles=(EXCLUS('NUME_INST_INIT','INST_INIT'), EXCLUS('NUME_INST_FIN','INST_FIN'),), LIST_INST =SIMP(statut='o',typ=listr8), @@ -17279,7 +18461,7 @@ STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, NOM_CMP =SIMP(statut='f',typ='TXM',), VALE =SIMP(statut='f',typ='R'), ), - NEWTON =FACT(statut='d',min=1,max=1, + 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") ), @@ -17287,7 +18469,7 @@ STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, REAC_ITER =SIMP(statut='f',typ='I',defaut=0), EVOL_NOLI =SIMP(statut='f',typ=evol_noli), ), - RECH_LINEAIRE =FACT(statut='f',min=1,max=1, + 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), @@ -17296,7 +18478,7 @@ STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, RHO_MAX =SIMP(statut='f',typ='R',defaut=1.0E+1), RHO_EXCL =SIMP(statut='f',typ='R',defaut=0.9E-2), ), - PILOTAGE =FACT(statut='f',min=1,max=1, + 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), @@ -17307,13 +18489,13 @@ STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, 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,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOM_CMP =SIMP(statut='f',typ='TXM',max='**' ), + 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',min=1,max=1, + 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'), @@ -17336,7 +18518,7 @@ STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, ), PARM_THETA =SIMP(statut='f',typ='R' ,defaut= 1. ), - SOLVEUR =FACT(statut='d',min=1,max=1, + 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") ), @@ -17358,37 +18540,40 @@ STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, ), SYME =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), ), - ARCHIVAGE =FACT(statut='f',min=1,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) ), - INST =SIMP(statut='f',typ='R',max='**' ), + 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',max='**',into=("DEPL","SIEF_ELGA","VARI_ELGA", + 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',min=1,max='**', + OBSERVATION =FACT(statut='f',max='**', regles=(UN_PARMI('NOEUD','GROUP_NO','MAILLE'), PRESENT_PRESENT('MAILLE','POINT'),), - NOM_CHAM =SIMP(statut='o',typ='TXM',max='**',into=("DEPL","VITE","ACCE","SIEF_ELGA", + 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), LIST_INST =SIMP(statut='f',typ=listr8), - INST =SIMP(statut='f',typ='R',max='**' ), + 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,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), - POINT =SIMP(statut='f',typ='I',max='**'), + 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='**'), + POINT =SIMP(statut='f',typ='I' ,validators=NoRepeat(),max='**'), ), - SOLV_NON_LOCAL =FACT(statut='f',min=1,max=1, + 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") ), 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") ), @@ -17409,7 +18594,7 @@ STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, ), EPS =SIMP(statut='f',typ='R',defaut= 0.E+0 ), ), - LAGR_NON_LOCAL =FACT(statut='f',max=1, + 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'), @@ -17419,7 +18604,8 @@ STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, INFO =SIMP(statut='f',typ='I',into=(1,2) ), TITRE =SIMP(statut='f',typ='TXM',max='**' ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -17443,12 +18629,12 @@ TEST_FONCTION=PROC(nom="TEST_FONCTION",op= 135,fr="Extraction d une valeur num UIinfo={"groupes":("Impression",)}, FICHIER =SIMP(statut='f',typ='TXM',defaut="RESULTAT"), TEST_NOOK =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - VALEUR =FACT(statut='f',min=1,max='**', + VALEUR =FACT(statut='f',max='**', fr="Tester la valeur d une fonction ou d une nappe", regles=(UN_PARMI('VALE_REFE','VALE_REFE_C', ),), FONCTION =SIMP(statut='o',typ=(fonction,formule) ), - NOM_PARA =SIMP(statut='f',typ='TXM',max=2), - VALE_PARA =SIMP(statut='o',typ='R',max=2), + 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' ), VALE_REFE_C =SIMP(statut='f',typ='C' ), CRITERE =SIMP(statut='f',typ='TXM',fr="Critère de comparaison avec la solution de référence", @@ -17461,7 +18647,7 @@ TEST_FONCTION=PROC(nom="TEST_FONCTION",op= 135,fr="Extraction d une valeur num VERSION =SIMP(statut='f',typ='TXM' ), ), ), - ATTRIBUT =FACT(statut='f',min=1,max='**', + 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,formule) ), PARA =SIMP(statut='f',typ='R' ), @@ -17477,7 +18663,7 @@ TEST_FONCTION=PROC(nom="TEST_FONCTION",op= 135,fr="Extraction d une valeur num VERSION =SIMP(statut='f',typ='TXM' ), ), ), - TABL_INTSP =FACT(statut='f',min=1,max='**', + 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=tabl_intsp ), @@ -17505,7 +18691,8 @@ TEST_FONCTION=PROC(nom="TEST_FONCTION",op= 135,fr="Extraction d une valeur num ), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # RESPONSABLE VABHHTS J.PELLET # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -17532,16 +18719,16 @@ TEST_RESU=PROC(nom="TEST_RESU",op=23,docu="U4.92.01-g", regles=(AU_MOINS_UN('CHAM_NO','CHAM_ELEM','RESU','OBJET')), FICHIER =SIMP(statut='f',typ='TXM',defaut="RESULTAT"), - CHAM_NO =FACT(statut='f',min=1,max='**', + 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), - NOEUD =SIMP(statut='f',typ=no,max='**'), - GROUP_NO =SIMP(statut='f',typ=grno,max='**'), - NOM_CMP =SIMP(statut='f',typ='TXM',max='**'), + 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'), VALE_I =SIMP(statut='f',typ='I'), @@ -17553,19 +18740,19 @@ TEST_RESU=PROC(nom="TEST_RESU",op=23,docu="U4.92.01-g", VERSION =SIMP(statut='f',typ='TXM'), ), - CHAM_ELEM =FACT(statut='f',min=1,max='**', + 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),# CO() - MAILLE =SIMP(statut='f',typ=ma),# CO() + 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),# CO() - GROUP_NO =SIMP(statut='f',typ=grno),# CO() + 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' ), @@ -17578,7 +18765,7 @@ TEST_RESU=PROC(nom="TEST_RESU",op=23,docu="U4.92.01-g", VERSION =SIMP(statut='f',typ='TXM' ), ), - RESU =FACT(statut='f',min=1,max='**', + 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'), @@ -17596,15 +18783,15 @@ TEST_RESU=PROC(nom="TEST_RESU",op=23,docu="U4.92.01-g", 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',max='**' ), + NOEUD_CMP =SIMP(statut='f',typ='TXM',max='**'), 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'), + 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='**'), + 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")), @@ -17637,7 +18824,8 @@ TEST_RESU=PROC(nom="TEST_RESU",op=23,docu="U4.92.01-g", VERSION =SIMP(statut='f',typ='TXM' ), ), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -17661,10 +18849,13 @@ TEST_TABLE=PROC(nom="TEST_TABLE",op= 177, UIinfo={"groupes":("Impression",)}, regles=(UN_PARMI('VALE','VALE_I','VALE_C', ),), FICHIER =SIMP(statut='f',typ='TXM',defaut="RESULTAT"), -# concept table à créer +# concept table à tester TABLE =SIMP(statut='o',typ=table), - FILTRE =FACT(statut='f',min=1,max='**', + 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", @@ -17690,9 +18881,11 @@ TEST_TABLE=PROC(nom="TEST_TABLE",op= 177, 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/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -17716,16 +18909,16 @@ THER_LINEAIRE=OPER(nom="THER_LINEAIRE",op=25,sd_prod=evol_ther,docu="U4.54.01-g" MODELE =SIMP(statut='o',typ=modele), CHAM_MATER =SIMP(statut='o',typ=cham_mater), CARA_ELEM =SIMP(statut='f',typ=cara_elem), - EXCIT =FACT(statut='o',min=1,max='**', + EXCIT =FACT(statut='o',max='**', CHARGE =SIMP(statut='o',typ=(char_ther,char_cine_ther)), FONC_MULT =SIMP(statut='f',typ=(fonction,formule)), ), - INCREMENT =FACT(statut='f',min=1,max=1, + INCREMENT =FACT(statut='f', LIST_INST =SIMP(statut='o',typ=listr8 ), NUME_INIT =SIMP(statut='f',typ='I'), NUME_FIN =SIMP(statut='f',typ='I'), ), - TEMP_INIT =FACT(statut='f',min=1,max=1, + 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), @@ -17733,17 +18926,17 @@ THER_LINEAIRE=OPER(nom="THER_LINEAIRE",op=25,sd_prod=evol_ther,docu="U4.54.01-g" VALE =SIMP(statut='f',typ='R'), NUME_INIT =SIMP(statut='f',typ='I'), ), - SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),max='**', + 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',min=1,max=1, + 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',min=1,max=1, + 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") ), @@ -17765,11 +18958,11 @@ THER_LINEAIRE=OPER(nom="THER_LINEAIRE",op=25,sd_prod=evol_ther,docu="U4.54.01-g" ), ), PARM_THETA =SIMP(statut='f',typ='R',defaut= 0.57), - ARCHIVAGE =FACT(statut='f',min=1,max=1, + ARCHIVAGE =FACT(statut='f', regles=(UN_PARMI('LIST_ARCH','PAS_ARCH','LIST_INST','INST'),), LIST_ARCH =SIMP(statut='f',typ=listis), LIST_INST =SIMP(statut='f',typ=listr8), - INST =SIMP(statut='f',typ='R',max='**'), + 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")), @@ -17779,7 +18972,8 @@ THER_LINEAIRE=OPER(nom="THER_LINEAIRE",op=25,sd_prod=evol_ther,docu="U4.54.01-g" TITRE =SIMP(statut='f',typ='TXM',max='**'), INFO =SIMP(statut='f',typ='I',into=(1,2)), ) ; -#& MODIF COMMANDE DATE 22/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -17803,7 +18997,7 @@ THER_NON_LINE=OPER(nom="THER_NON_LINE",op= 186,sd_prod=evol_ther,docu="U4.54.02- MODELE =SIMP(statut='o',typ=(modele) ), CHAM_MATER =SIMP(statut='o',typ=(cham_mater) ), CARA_ELEM =SIMP(statut='c',typ=(cara_elem) ), - COMP_THER_NL =FACT(statut='d',min=1,max='**', + COMP_THER_NL =FACT(statut='d',max='**', RELATION =SIMP(statut='f',typ='TXM',defaut="THER_NL", into=("THER_NL", "THER_HYDR", @@ -17814,20 +19008,20 @@ THER_NON_LINE=OPER(nom="THER_NON_LINE",op= 186,sd_prod=evol_ther,docu="U4.54.02- ) ), regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,max='**'), - MAILLE =SIMP(statut='f',typ=ma,max='**'), + 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',min=1,max='**', + EXCIT =FACT(statut='o',max='**', CHARGE =SIMP(statut='o',typ=char_ther), FONC_MULT =SIMP(statut='f',typ=(fonction,formule)), ), - INCREMENT =FACT(statut='f',min=1,max=1, + INCREMENT =FACT(statut='f', LIST_INST =SIMP(statut='o',typ=listr8), NUME_INIT =SIMP(statut='f',typ='I'), NUME_FIN =SIMP(statut='f',typ='I'), ), - TEMP_INIT =FACT(statut='f',min=1,max=1, + 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), @@ -17835,21 +19029,21 @@ THER_NON_LINE=OPER(nom="THER_NON_LINE",op= 186,sd_prod=evol_ther,docu="U4.54.02- VALE =SIMP(statut='f',typ='R'), NUME_INIT =SIMP(statut='f',typ='I'), ), - NEWTON =FACT(statut='d',min=1,max=1, + 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',min=1,max=1, + 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),max='**', + 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',min=1,max=1, + 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="Parametres de la méthode multi frontale", RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), @@ -17864,31 +19058,32 @@ THER_NON_LINE=OPER(nom="THER_NON_LINE",op= 186,sd_prod=evol_ther,docu="U4.54.02- ), 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 ), + 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 ), + 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",) ), ), PARM_THETA =SIMP(statut='f',typ='R',defaut= 0.57 ), - ARCHIVAGE =FACT(statut='f',min=1,max=1, + ARCHIVAGE =FACT(statut='f', regles=(UN_PARMI('LIST_ARCH','PAS_ARCH','LIST_INST','INST', ),), LIST_ARCH =SIMP(statut='f',typ=(listis) ), LIST_INST =SIMP(statut='f',typ=(listr8) ), - INST =SIMP(statut='f',typ='R',max='**'), + 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',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/04/2003 AUTEUR MCOURTOI M.COURTOIS + +#& MODIF COMMANDE DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -17913,21 +19108,21 @@ THER_NON_LINE_MO=OPER(nom="THER_NON_LINE_MO",op= 171,sd_prod=evol_ther, MODELE =SIMP(statut='o',typ=modele ), CHAM_MATER =SIMP(statut='o',typ=cham_mater ), CARA_ELEM =SIMP(statut='c',typ=cara_elem ), - EXCIT =FACT(statut='o',min=1,max='**', + EXCIT =FACT(statut='o',max='**', CHARGE =SIMP(statut='o',typ=char_ther ), FONC_MULT =SIMP(statut='c',typ=(fonction,formule) ), ), - TEMP_INIT =FACT(statut='f',min=1,max=1, + 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',min=1,max=1, + 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',min=1,max=1, + 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") ), @@ -17955,3 +19150,4 @@ THER_NON_LINE_MO=OPER(nom="THER_NON_LINE_MO",op= 171,sd_prod=evol_ther, + diff --git a/Aster/Cata/ops.py b/Aster/Cata/ops.py index 9d1b4189..d5ecddd5 100644 --- a/Aster/Cata/ops.py +++ b/Aster/Cata/ops.py @@ -1,4 +1,4 @@ -#@ MODIF ops Cata DATE 26/06/2002 AUTEUR DURAND C.DURAND +#@ MODIF ops Cata DATE 06/09/2003 AUTEUR D6BHHJP J.P.LEFEBVRE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -24,6 +24,7 @@ import string,linecache,os,traceback,re # Modules Eficas import Accas from Accas import ASSD +from Noyau.N_FONCTION import formule try: import aster @@ -34,25 +35,71 @@ try: except: pass -def DEBUT(self,PAR_LOT,**args): +def DEBUT(self,PAR_LOT,CODE,**args): """ Fonction sdprod de la macro DEBUT """ + # La commande DEBUT ne peut exister qu'au niveau jdc + if self.jdc is not self.parent : + raise Accas.AsException("La commande DEBUT ne peut exister qu'au niveau jdc") + self.jdc.set_par_lot(PAR_LOT) + if CODE!=None : + self.jdc.fico=CODE['NOM'] + else: + self.jdc.fico=None -def POURSUITE(self,PAR_LOT,**args): +def build_debut(self,**args): + """ + Fonction ops pour la macro DEBUT + """ + self.jdc.UserError=self.codex.error + + if self.jdc.par_lot == 'NON' : + self.jdc._Build() + # On execute la fonction debut pour initialiser les bases + # Cette execution est indispensable avant toute autre action sur ASTER + # op doit etre un entier car la fonction debut appelle GCECDU qui demande + # le numero de l'operateur associé (getoper) + self.definition.op=0 + self.set_icmd(1) + lot,ier=self.codex.debut(self,1) + # On remet op a None juste apres pour eviter que la commande DEBUT + # ne soit executée dans la phase d'execution + self.definition.op=None + return ier + +def POURSUITE(self,PAR_LOT,CODE,HDF,**args): """ Fonction sdprod de la macro POURSUITE """ + # La commande POURSUITE ne peut exister qu'au niveau jdc + if self.jdc is not self.parent : + raise Accas.AsException("La commande POURSUITE ne peut exister qu'au niveau jdc") + self.jdc.set_par_lot(PAR_LOT) - if self.codex and os.path.isfile("glob.1"): + if CODE!=None : + self.jdc.fico=CODE['NOM'] + else: + self.jdc.fico=None + if (self.codex and os.path.isfile("glob.1")) or HDF!=None: # Le module d'execution est accessible et glob.1 est present + # Pour eviter de rappeler plusieurs fois la sequence d'initialisation + # on memorise avec l'attribut fichier_init que l'initialisation + # est réalisée if hasattr(self,'fichier_init'):return self.fichier_init='glob.1' self.jdc.initexec() + # le sous programme fortran appelé par self.codex.poursu demande le numero + # de l'operateur (GCECDU->getoper), on lui donne la valeur 0 + self.definition.op=0 lot,ier,lonuti,concepts=self.codex.poursu(self,1) - self.icmd=lonuti - #print "Fin de debut",ier,lot,lonuti + # Par la suite pour ne pas executer la commande pendant la phase + # d'execution on le remet à None + self.definition.op=None + # On demande la numerotation de la commande POURSUITE avec l'incrément + # lonuti pour qu'elle soit numérotée à la suite des commandes existantes. + self.set_icmd(lonuti) pos=0 d={} while pos+80 < len(concepts)+1: @@ -60,6 +107,7 @@ def POURSUITE(self,PAR_LOT,**args): concep=concepts[pos+8:pos+24] nomcmd=concepts[pos+24:pos+40] statut=concepts[pos+40:pos+48] + print nomres,concep,nomcmd,statut if nomres[0] not in (' ','.','&') and statut != '&DETRUIT': exec nomres+'='+string.lower(concep)+'()' in self.parent.g_context,d pos=pos+80 @@ -88,20 +136,27 @@ def POURSUITE_context(self,d): for v in self.g_context.values(): if isinstance(v,ASSD) : self.jdc.sds.append(v) +def build_poursuite(self,**args): + """ + Fonction ops pour la macro POURSUITE + """ + # Pour POURSUITE on ne modifie pas la valeur initialisee dans ops.POURSUITE + # Il n y a pas besoin d executer self.codex.poursu (c'est deja fait dans + # la fonction sdprod de la commande (ops.POURSUITE)) + self.jdc.UserError=self.codex.error + return 0 + def INCLUDE(self,UNITE,**args): """ Fonction sd_prod pour la macro INCLUDE """ + if not UNITE : return if hasattr(self,'unite'):return self.unite=UNITE if self.jdc and self.jdc.par_lot == 'NON': - # On est en mode commande par commande - # On teste la validite de la commande avec interruption eventuelle - cr=self.report() - self.parent.cr.add(cr) - if not cr.estvide(): - raise EOFError + # On est en mode commande par commande, on appelle la methode speciale + self.Execute_alone() self.make_include(unite=UNITE) @@ -112,49 +167,81 @@ def INCLUDE_context(self,d): for k,v in self.g_context.items(): d[k]=v +def build_include(self,**args): + """ + Fonction ops de la macro INCLUDE appelée lors de la phase de Build + """ + # Pour presque toutes les commandes (sauf FORMULE et POURSUITE) + # le numero de la commande n est pas utile en phase de construction + # La macro INCLUDE ne sera pas numérotée (incrément=None) + ier=0 + self.set_icmd(None) + icmd=0 + # On n'execute pas l'ops d'include en phase BUILD car il ne sert a rien. + #ier=self.codex.opsexe(self,icmd,-1,1) + return ier + def detruire(self,d): """ Cette fonction est la fonction op_init de la PROC DETRUIRE """ - sd=[] - for mc in self["CONCEPT"]: - mcs=mc["NOM"] - if type(mcs) == types.ListType or type(mcs) == types.TupleType: - for e in mcs: - if isinstance(e,ASSD): - sd.append(e) - e=e.nom - if d.has_key(e):del d[e] - if self.jdc.sds_dict.has_key(e):del self.jdc.sds_dict[e] - else: - if isinstance(mcs,ASSD): - sd.append(mcs) - mcs=mcs.nom - if d.has_key(mcs):del d[mcs] - if self.jdc.sds_dict.has_key(mcs):del self.jdc.sds_dict[mcs] - for s in sd: - # On signale au parent que le concept s n'existe plus apres l'étape self - self.parent.delete_concept_after_etape(self,s) - -def subst_materiau(text,NOM_MATER,EXTRACTION): + if self["CONCEPT"]!=None: + sd=[] + for mc in self["CONCEPT"]: + mcs=mc["NOM"] + if type(mcs) == types.ListType or type(mcs) == types.TupleType: + for e in mcs: + if isinstance(e,ASSD): + sd.append(e) + e=e.nom + if d.has_key(e):del d[e] + if self.jdc.sds_dict.has_key(e):del self.jdc.sds_dict[e] + else: + if isinstance(mcs,ASSD): + sd.append(mcs) + mcs=mcs.nom + if d.has_key(mcs):del d[mcs] + if self.jdc.sds_dict.has_key(mcs):del self.jdc.sds_dict[mcs] + for s in sd: + # On signale au parent que le concept s n'existe plus apres l'étape self + self.parent.delete_concept_after_etape(self,s) + +def subst_materiau(text,NOM_MATER,EXTRACTION,UNITE_LONGUEUR): """ Cette fonction retourne un texte obtenu à partir du texte passé en argument (text) en substituant le nom du materiau par NOM_MATER et en réalisant les extractions spéciifées dans EXTRACTION """ lines=string.split(text,'\n') + +##### traitement de UNIT : facteur multiplicatif puissance de 10 + regmcsu=re.compile(r" *(.*) *= *([^ ,]*) *## +([^ ]*) *([^ ]*)") + ll_u=[] + for l in lines: + m=regmcsu.match(l) + if m: + if m.group(3) == "UNIT": + if UNITE_LONGUEUR=='M' : coef = '0' + elif UNITE_LONGUEUR=='MM' : coef = m.group(4) + print ' UNITE_LONGUEUR = BINGO' + print ' UNITE_LONGUEUR = ',m.group(4),type(m.group(4)) + ll_u.append(' '+m.group(1)+" = "+m.group(2)+coef) + else : ll_u.append(l) + else : ll_u.append(l) + +##### traitement de EXTRACTION if EXTRACTION: - ll=[] regmcf=re.compile(r" *(.*) *= *_F\( *## +(.*) +(.*)") regmcs=re.compile(r" *(.*) *= *([^ ,]*) *, *## +([^ ]*) *([^ ]*)") regfin=re.compile(r" *\) *") + ll=[] temps={};lmcf=[] for e in EXTRACTION: mcf=e['COMPOR'] lmcf.append(mcf) temps[mcf]=e['TEMP_EVAL'] FLAG=0 - for l in lines: + for l in ll_u: m=regmcf.match(l) if m: # On a trouve un mot cle facteur "commentarise" if m.group(2) == "SUBST": # il est de plus substituable @@ -186,7 +273,7 @@ def subst_materiau(text,NOM_MATER,EXTRACTION): del temps[mcf] ll.append(l) else: - ll=lines + ll=ll_u for l in ll: print l @@ -198,26 +285,36 @@ def subst_materiau(text,NOM_MATER,EXTRACTION): text=string.join(ll,'\n') return text +def post_INCLUDE(self): + """ + Cette fonction est executée apres toutes les commandes d'un INCLUDE (RETOUR) + Elle sert principalement pour les INCLUDE_MATERIAU : remise a blanc du prefixe Fortran + """ + self.codex.opsexe(self,0,-1,2) + def INCLUDE_MATERIAU(self,NOM_AFNOR,TYPE_MODELE,VARIANTE,TYPE_VALE,NOM_MATER, - EXTRACTION,INFO,**args): + EXTRACTION,UNITE_LONGUEUR,INFO,**args): """ Fonction sd_prod pour la macro INCLUDE_MATERIAU """ mat=string.join((NOM_AFNOR,'_',TYPE_MODELE,'_',VARIANTE,'.',TYPE_VALE),'') - if not hasattr(self,'mat') or self.mat != mat: - self.mat=mat + if not hasattr(self,'mat') or self.mat != mat or self.nom_mater != NOM_MATER : # On récupère le répertoire des matériaux dans les arguments # supplémentaires du JDC - rep_mat=self.jdc.args["rep_mat"] + rep_mat=self.jdc.args.get("rep_mat","NOrep_mat") f=os.path.join(rep_mat,mat) + self.mat=mat + self.nom_mater=NOM_MATER if not os.path.isfile(f): + del self.mat + self.make_contexte(f,"#Texte sans effet pour reinitialiser le contexte a vide\n") raise "Erreur sur le fichier materiau: "+f # Les materiaux sont uniquement disponibles en syntaxe Python # On lit le fichier et on supprime les éventuels \r text=string.replace(open(f).read(),'\r\n','\n') # On effectue les substitutions necessaires self.prefix=NOM_MATER - self.text= subst_materiau(text,NOM_MATER,EXTRACTION) + self.text= subst_materiau(text,NOM_MATER,EXTRACTION,UNITE_LONGUEUR) if INFO == 2: print "INCLUDE_MATERIAU: ", self.mat,' ',NOM_MATER,'\n' print self.text @@ -226,19 +323,57 @@ def INCLUDE_MATERIAU(self,NOM_AFNOR,TYPE_MODELE,VARIANTE,TYPE_VALE,NOM_MATER, # et le contexte de l etape (local au sens Python) # Il faut auparavant l'enregistrer aupres du module linecache (utile pour nommage.py) linecache.cache[f]=0,0,string.split(self.text,'\n'),f - code=compile(self.text,f,'exec') + + self.postexec=post_INCLUDE + if self.jdc.par_lot == 'NON': - # On est en mode commande par commande - # On teste la validite de la commande avec interruption eventuelle - cr=self.report() - self.parent.cr.add(cr) - if not cr.estvide(): - raise EOFError - # Et en plus il faut executer la fonction ops014 avant les sous - # commandes car le prefixe PRFXCO doit etre initialise dans le Fortran - self.codex.opsexe(self,0,-1,-self.definition.op) - - d={} - self.g_context = d - self.contexte_fichier_init = d - exec code in self.parent.g_context,d + # On est en mode commande par commande, on appelle la methode speciale + self.Execute_alone() + + self.make_contexte(f,self.text) + +def build_formule(self,**args): + """ + Fonction ops de la macro FORMULE appelée lors de la phase de Build + """ + from Build import B_utils + for mc in self.mc_liste: +### if mc.nom in ('REEL','ENTIER','COMPLEXE'): + if mc.nom in ('REEL','COMPLEXE'): + texte= self.sd.get_name()+ string.strip(mc.valeur) + mc.valeur=B_utils.ReorganisationDe(texte,80) + # ATTENTION : FORMULE est une des rares commandes qui a besoin de + # connaitre son numero d execution avant d etre construite + self.set_icmd(1) + # La macro formule doit etre executee. Seules les macros qui ont + # un numero d'op sont executees lors des phases suivantes + self.definition.op = -5 + ier=self.codex.opsexe(self,self.icmd,-1,-self.definition.op) + return ier + +def build_procedure(self,**args): + """ + Fonction ops de la macro PROCEDURE appelée lors de la phase de Build + """ + ier=0 + # Pour presque toutes les commandes (sauf FORMULE et POURSUITE) + # le numero de la commande n est pas utile en phase de construction + # On ne numérote pas une macro PROCEDURE (incrément=None) + self.set_icmd(None) + icmd=0 + #ier=self.codex.opsexe(self,icmd,-1,3) + return ier + +def build_retour(self,**args): + """ + Fonction ops de la macro RETOUR appelée lors de la phase de Build + """ + ier=0 + # Pour presque toutes les commandes (sauf FORMULE et POURSUITE) + # le numero de la commande n est pas utile en phase de construction + # On ne numérote pas une macro RETOUR (incrément=None) + self.set_icmd(None) + icmd=0 + #ier=self.codex.opsexe(self,icmd,-1,2) + return ier + diff --git a/Noyau/N_CR.py b/Noyau/N_CR.py index a3e231eb..5be765e7 100644 --- a/Noyau/N_CR.py +++ b/Noyau/N_CR.py @@ -1,4 +1,4 @@ -#@ MODIF N_CR Noyau DATE 29/05/2002 AUTEUR DURAND C.DURAND +#@ MODIF N_CR Noyau DATE 20/01/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -190,7 +190,7 @@ class CR : -def justify_text(texte='',cesure=50): +def justify_text_old(texte='',cesure=50): """ Prend la chaine de caractères 'texte' et la retourne avec un retour chariot tous les 'cesure' caractères s'il y a lieu (le retour chariot est placé dans un blanc @@ -219,7 +219,7 @@ def justify_text(texte='',cesure=50): texte_justifie = texte_justifie + string.strip(new_text) + '\n' return texte_justifie[0:-1] -def encadre_message(texte,motif): +def encadre_message_old(texte,motif): """ Retourne la chaine de caractères texte entourée d'un cadre formés d'éléments 'motif' @@ -239,3 +239,50 @@ def encadre_message(texte,motif): +separateurs=(' ',',','/') +def split(ligne,cesure): + ligne= string.rstrip(ligne) + if len(ligne) <= cesure : + return ligne + else: + coupure=cesure + while ligne[coupure] not in separateurs and coupure > 0: + coupure = coupure - 1 + if coupure == 0: + # Il faut augmenter la cesure + coupure =cesure + while ligne[coupure] not in separateurs and coupure < len(ligne)-1 : + coupure = coupure + 1 + if coupure == len(ligne)-1: + return ligne + else: + return ligne[:coupure+1]+ '\n' + split(ligne[coupure+1:],cesure) + +def justify_text(texte='',cesure=50): + texte = string.strip(texte) + liste_lignes = string.split(texte,'\n') + l=[split(l,cesure) for l in liste_lignes] + texte_justifie=string.join(l,'\n') + return texte_justifie + +def encadre_message(texte,motif): + """ + Retourne la chaine de caractères texte entourée d'un cadre formés + d'éléments 'motif' + """ + texte = justify_text(texte,cesure=80) + lignes = string.split(texte,'\n') + longueur = 0 + for ligne in lignes : + ligne=string.rstrip(ligne) + if len(ligne)> longueur : longueur = len(ligne) + longueur = longueur + 4 + txt = motif*longueur+'\n' + for ligne in lignes : + txt = txt + motif + ' '+ligne+' '*(longueur-len(motif+ligne)-2)+motif+'\n' + txt = txt + motif*longueur+'\n' + return txt + + + + diff --git a/Noyau/N_ENTITE.py b/Noyau/N_ENTITE.py index b5b9d875..d7f72c3d 100644 --- a/Noyau/N_ENTITE.py +++ b/Noyau/N_ENTITE.py @@ -1,4 +1,4 @@ -#@ MODIF N_ENTITE Noyau DATE 27/03/2002 AUTEUR DURAND C.DURAND +#@ MODIF N_ENTITE Noyau DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -24,6 +24,7 @@ """ import N_CR +import N_VALIDATOR class ENTITE: """ @@ -32,8 +33,9 @@ class ENTITE: Elle ne peut etre instanciee et doit d abord etre specialisee """ CR=N_CR.CR + factories={'validator':N_VALIDATOR.validatorFactory} - def __init__(self): + def __init__(self,validators=None): """ Initialise les deux attributs regles et entites d'une classe dérivée à : pas de règles et pas de sous-entités. @@ -46,6 +48,10 @@ class ENTITE: """ self.regles=() self.entites={} + if validators: + self.validators=self.factories['validator'](validators) + else: + self.validators=validators def affecter_parente(self): """ diff --git a/Noyau/N_ETAPE.py b/Noyau/N_ETAPE.py index c7c5335d..07523ed1 100644 --- a/Noyau/N_ETAPE.py +++ b/Noyau/N_ETAPE.py @@ -1,4 +1,4 @@ -#@ MODIF N_ETAPE Noyau DATE 26/06/2002 AUTEUR DURAND C.DURAND +#@ MODIF N_ETAPE Noyau DATE 03/09/2002 AUTEUR GNICOLAS G.NICOLAS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -27,6 +27,7 @@ import types,sys,string,os import linecache import traceback +from copy import copy # Modules EFICAS import N_MCCOMPO @@ -128,16 +129,10 @@ class ETAPE(N_MCCOMPO.MCCOMPO): # On ne nomme le concept que dans le cas de non reutilisation # d un concept sd.nom=nom - if self.jdc and self.jdc.par_lot == "NON" : - self.Execute() - return sd except AsException,e: raise AsException("Etape ",self.nom,'ligne : ',self.appel[0], 'fichier : ',self.appel[1],e) except EOFError: - # XXX Normalement le contexte courant doit etre le parent. - # Il n'y a pas de raison de remettre le contexte au parent - #self.reset_current_step() raise except : l=traceback.format_exception(sys.exc_info()[0],sys.exc_info()[1],sys.exc_info()[2]) @@ -145,11 +140,14 @@ class ETAPE(N_MCCOMPO.MCCOMPO): 'fichier : ',self.appel[1]+'\n', string.join(l)) + self.Execute() + return sd + def Execute(self): """ - Cette methode est prevue pour faire une execution dans le cas - ou par_lot == 'NON' - Par defaut, elle ne fait rien + Cette methode est un point d'entree prevu pour realiser une execution immediatement + apres avoir construit les mots cles et le concept produit. + Par defaut, elle ne fait rien. Elle doit etre surchargee dans une autre partie du programme. """ return @@ -182,16 +180,14 @@ class ETAPE(N_MCCOMPO.MCCOMPO): else: sd_prod=self.definition.sd_prod # on teste maintenant si la SD est réutilisée ou s'il faut la créer - if self.reuse: - # Il est preferable de traiter cette erreur ultérieurement : ce n'est pas une erreur fatale - #if AsType(self.reuse) != sd_prod: - # raise AsException("type de concept reutilise incompatible avec type produit") + if self.definition.reentrant != 'n' and self.reuse: + # Le concept produit est specifie reutilise (reuse=xxx). C'est une erreur mais non fatale. + # Elle sera traitee ulterieurement. self.sd=self.reuse else: self.sd= sd_prod(etape=self) - # Si reuse n'a pas ete donné, c'est une erreur. Ne pas corriger afin de la detecter ensuite - #if self.definition.reentrant == 'o': - # self.reuse = self.sd + # Si l'operateur est obligatoirement reentrant et reuse n'a pas ete specifie, c'est une erreur. + # On ne fait rien ici. L'erreur sera traiter par la suite. return self.sd def get_type_produit(self): @@ -317,6 +313,51 @@ class ETAPE(N_MCCOMPO.MCCOMPO): if self.sd: d[self.sd.nom]=self.sd + def copy(self): + """ Méthode qui retourne une copie de self non enregistrée auprès du JDC + et sans sd + """ + etape = copy(self) + etape.sd = None + etape.state = 'modified' + etape.reuse = None + etape.sdnom = None + etape.etape=etape + etape.mc_liste=[] + for objet in self.mc_liste: + new_obj = objet.copy() + new_obj.reparent(etape) + etape.mc_liste.append(new_obj) + return etape + + def copy_reuse(self,old_etape): + """ Méthode qui copie le reuse d'une autre étape. + """ + if hasattr(old_etape,"reuse") : + self.reuse = old_etape.reuse + def copy_sdnom(self,old_etape): + """ Méthode qui copie le sdnom d'une autre étape. + """ + if hasattr(old_etape,"sdnom") : + self.sdnom = old_etape.sdnom - + def get_sd_utilisees(self): + """ + Retourne la liste des concepts qui sont utilisés à l'intérieur d'une commande + ( comme valorisation d'un MCS) + """ + l=[] + for child in self.mc_liste: + l.extend(child.get_sd_utilisees()) + return l + + def reparent(self,parent): + """ + Cette methode sert a reinitialiser la parente de l'objet + """ + self.parent=parent + self.jdc=parent.get_jdc_root() + self.etape=self + for mocle in self.mc_liste: + mocle.reparent(self) diff --git a/Noyau/N_FACT.py b/Noyau/N_FACT.py index 2d9455c0..0f3def12 100644 --- a/Noyau/N_FACT.py +++ b/Noyau/N_FACT.py @@ -1,4 +1,4 @@ -#@ MODIF N_FACT Noyau DATE 27/03/2002 AUTEUR DURAND C.DURAND +#@ MODIF N_FACT Noyau DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -47,7 +47,7 @@ class FACT(N_ENTITE.ENTITE): label = 'FACT' def __init__(self,fr="",ang="",docu="",regles=(),statut='f',defaut=None, - min=0,max=1,**args): + min=0,max=1,validators=None,**args): """ Un mot-clé facteur est caractérisé par les attributs suivants : @@ -70,6 +70,7 @@ class FACT(N_ENTITE.ENTITE): - docu """ + N_ENTITE.ENTITE.__init__(self,validators) # Initialisation des attributs self.fr=fr self.ang=ang @@ -147,5 +148,7 @@ class FACT(N_ENTITE.ENTITE): self.cr.fatal("L'attribut 'statut' doit valoir 'o','f','c' ou 'd' : %s" %`self.statut`) if type(self.docu) != types.StringType : self.cr.fatal("L'attribut 'docu' doit etre une chaine de caractères : %s" %`self.docu`) + if self.validators and not self.validators.verif_cata(): + self.cr.fatal("Un des validateurs est incorrect. Raison : "+self.validators.cata_info) self.verif_cata_regles() diff --git a/Noyau/N_FONCTION.py b/Noyau/N_FONCTION.py index 5d0c8c5c..e27793ee 100644 --- a/Noyau/N_FONCTION.py +++ b/Noyau/N_FONCTION.py @@ -1,4 +1,4 @@ -#@ MODIF N_FONCTION Noyau DATE 27/03/2002 AUTEUR DURAND C.DURAND +#@ MODIF N_FONCTION Noyau DATE 11/03/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -22,4 +22,4 @@ from N_ASSD import ASSD class FONCTION(ASSD):pass -class fonction(FONCTION) : pass +class formule(FONCTION) : pass diff --git a/Noyau/N_JDC.py b/Noyau/N_JDC.py index 95581464..e7ea93b1 100644 --- a/Noyau/N_JDC.py +++ b/Noyau/N_JDC.py @@ -1,4 +1,4 @@ -#@ MODIF N_JDC Noyau DATE 26/06/2002 AUTEUR DURAND C.DURAND +#@ MODIF N_JDC Noyau DATE 23/10/2002 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -99,6 +99,7 @@ NONE = None self.current_context={} self.condition_context={} self.index_etape_courante=0 + self.UserError="UserError" def compile(self): """ @@ -146,6 +147,9 @@ NONE = None # d'un autre par exemple) if self.context_ini : self.g_context.update(self.context_ini) + # Update du dictionnaire des concepts + for sdnom,sd in self.context_ini.items(): + if isinstance(sd,ASSD):self.sds_dict[sdnom]=sd if self.appli != None : self.appli.affiche_infos('Interprétation du fichier de \ @@ -179,25 +183,34 @@ NONE = None s= traceback.format_exception_only("Erreur de nom",e)[0][:-1] message = "erreur de syntaxe, %s ligne %d" % (s,l[-1][1]) if CONTEXT.debug : - #prbanner(message) traceback.print_exc() self.cr.exception(message) CONTEXT.unset_current_step() + except self.UserError,exc_val: + self.traiter_user_exception(exc_val) + CONTEXT.unset_current_step() + except : # erreur inattendue # sys_exc_typ,sys_exc_value,sys_exc_frame = sys_exc.info() # (tuple de 3 éléments) - if CONTEXT.debug : - traceback.print_exc() - #prbanner("erreur non prevue et non traitee prevenir \ - # la maintenance "+self.nom) - l=traceback.format_exception(sys.exc_info()[0],sys.exc_info()[1], - sys.exc_info()[2]) + if CONTEXT.debug : traceback.print_exc() + + exc_typ,exc_val,exc_fr=sys.exc_info() + l=traceback.format_exception(exc_typ,exc_val,exc_fr) self.cr.exception("erreur non prevue et non traitee prevenir la maintenance "+ self.nom+'\n'+ string.join(l)) + del exc_typ,exc_val,exc_fr CONTEXT.unset_current_step() + def traiter_user_exception(self,exc_val): + """Cette methode realise un traitement sur les exceptions utilisateur + Par defaut il n'y a pas de traitement. La méthode doit etre + surchargée pour en introduire un. + """ + return + def register(self,etape): """ Cette méthode ajoute etape dans la liste des etapes : self.etapes @@ -240,9 +253,9 @@ NONE = None Dans le cas du JDC, le deuxième cas ne peut pas se produire. """ sd= etape.get_sd_prod() - if sd != None and etape.reuse == None: + if sd != None and (etape.definition.reentrant == 'n' or etape.reuse is None) : # ATTENTION : On ne nomme la SD que dans le cas de non reutilisation - # d un concept + # d un concept. Commande non reentrante ou reuse absent. self.NommerSdprod(sd,nomsd) return sd @@ -254,6 +267,7 @@ NONE = None Met le concept créé dans le concept global g_context """ if CONTEXT.debug : print "JDC.NommerSdprod ",sd,sdnom + o=self.sds_dict.get(sdnom,None) if isinstance(o,ASSD): raise AsException("Nom de concept deja defini : %s" % sdnom) @@ -305,8 +319,8 @@ NONE = None if os.path.exists("fort."+str(unite)): file= "fort."+str(unite) if file == None : - raise AsException("Impossible de trouver le fichier correspondant \ - a l unite %s" % unite) + raise AsException("Impossible de trouver le fichier correspondant" + " a l unite %s" % unite) if not os.path.exists(file): raise AsException("%s n'est pas un fichier existant" % unite) fproc=open(file,'r') @@ -393,3 +407,5 @@ NONE = None self.index_etape_courante=index_etape return d + def get_global_contexte(self): + return self.g_context.copy() diff --git a/Noyau/N_MACRO.py b/Noyau/N_MACRO.py index 5aa38361..46cb881b 100644 --- a/Noyau/N_MACRO.py +++ b/Noyau/N_MACRO.py @@ -1,4 +1,4 @@ -#@ MODIF N_MACRO Noyau DATE 27/03/2002 AUTEUR DURAND C.DURAND +#@ MODIF N_MACRO Noyau DATE 09/10/2002 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -85,7 +85,7 @@ class MACRO(N_ENTITE.ENTITE): nommage = nommage def __init__(self,nom,op,sd_prod=None,reentrant='n',repetable='o',fr="",ang="", - docu="",regles=(),op_init=None,niveau = None,fichier_ini=0,**args): + docu="",regles=(),op_init=None,niveau = None,fichier_ini=0,UIinfo=None,**args): """ Méthode d'initialisation de l'objet MACRO. Les arguments sont utilisés pour initialiser les attributs de meme nom @@ -125,6 +125,7 @@ class MACRO(N_ENTITE.ENTITE): else: self.niveau=current_cata.get_niveau(niveau) self.niveau.enregistre(self) + self.UIinfo=UIinfo self.affecter_parente() def __call__(self,reuse=None,**args): diff --git a/Noyau/N_MACRO_ETAPE.py b/Noyau/N_MACRO_ETAPE.py index 4a883f8f..6061b2a3 100644 --- a/Noyau/N_MACRO_ETAPE.py +++ b/Noyau/N_MACRO_ETAPE.py @@ -1,4 +1,4 @@ -#@ MODIF N_MACRO_ETAPE Noyau DATE 26/06/2002 AUTEUR DURAND C.DURAND +#@ MODIF N_MACRO_ETAPE Noyau DATE 06/01/2003 AUTEUR ASSIRE A.ASSIRE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -124,15 +124,13 @@ class MACRO_ETAPE(N_ETAPE.ETAPE): # d un concept sd.nom=nom self.reset_current_step() - if self.jdc and self.jdc.par_lot == "NON" : - self.Execute() - return sd except AsException,e: self.reset_current_step() raise AsException("Etape ",self.nom,'ligne : ',self.appel[0], 'fichier : ',self.appel[1],e) - except EOFError: - #self.reset_current_step() + except (EOFError,self.jdc.UserError): + # Le retablissement du step courant n'est pas strictement necessaire. On le fait pour des raisons de coherence + self.reset_current_step() raise except : self.reset_current_step() @@ -141,6 +139,9 @@ class MACRO_ETAPE(N_ETAPE.ETAPE): 'fichier : ',self.appel[1]+'\n', string.join(l)) + self.Execute() + return sd + def get_sd_prod(self): """ Retourne le concept résultat d'une macro étape @@ -167,7 +168,7 @@ class MACRO_ETAPE(N_ETAPE.ETAPE): # les concepts produits dans self.sdprods, il faut le mettre à zéro avant de l'appeler self.sdprods=[] sd_prod= apply(sd_prod,(self,),d) - except EOFError: + except (EOFError,self.jdc.UserError): raise except: if CONTEXT.debug: traceback.print_exc() @@ -175,10 +176,9 @@ class MACRO_ETAPE(N_ETAPE.ETAPE): raise AsException("impossible d affecter un type au resultat\n",string.join(l[2:])) # on teste maintenant si la SD est réutilisée ou s'il faut la créer - if self.reuse: - # Il est preferable de traiter cette erreur ultérieurement : ce n'est pas une erreur fatale - #if AsType(self.reuse) != sd_prod: - # raise AsException("type de concept reutilise incompatible avec type produit") + if self.definition.reentrant != 'n' and self.reuse: + # Le concept produit est specifie reutilise (reuse=xxx). C'est une erreur mais non fatale. + # Elle sera traitee ulterieurement. self.sd=self.reuse else: if sd_prod == None: @@ -186,9 +186,8 @@ class MACRO_ETAPE(N_ETAPE.ETAPE): else: self.sd= sd_prod(etape=self) self.typret=sd_prod - # Si reuse n'a pas ete donné, c'est une erreur. Ne pas corriger afin de la detecter ensuite - #if self.definition.reentrant == 'o': - # self.reuse = self.sd + # Si la commande est obligatoirement reentrante et reuse n'a pas ete specifie, c'est une erreur. + # On ne fait rien ici. L'erreur sera traitee par la suite. return self.sd def get_type_produit(self,force=0): @@ -368,7 +367,7 @@ class MACRO_ETAPE(N_ETAPE.ETAPE): # On force également le nom stocké dans l'attribut sdnom : on lui donne le nom # du concept associé à nomsd etape.sdnom=sd.nom - elif etape.reuse != None: + elif etape.definition.reentrant != 'n' and etape.reuse != None: # On est dans le cas d'une commande avec reutilisation d'un concept existant # get_sd_prod fait le necessaire : verifications, associations, etc. mais ne cree # pas un nouveau concept. Il retourne le concept reutilise @@ -380,7 +379,7 @@ class MACRO_ETAPE(N_ETAPE.ETAPE): # En effet une commande avec reutilisation d'un concept verifie que le nom de # la variable a gauche du signe = est le meme que celui du concept reutilise. # Lorsqu'une telle commande apparait dans une macro, on supprime cette verification. - if etape.sdnom[0] == '_': + if (etape.sdnom == '' or etape.sdnom[0] == '_'): etape.sdnom=sd.nom else: # On est dans le cas de la creation d'un nouveau concept @@ -409,6 +408,7 @@ class MACRO_ETAPE(N_ETAPE.ETAPE): # les macros devrait peut etre etre déplacée dans Build ??? if CONTEXT.debug : print "MACRO.NommerSdprod: ",sd,sdnom + if hasattr(self,'prefix'): # Dans le cas de l'include_materiau on ajoute un prefixe au nom du concept if sdnom != self.prefix:sdnom=self.prefix+sdnom @@ -416,7 +416,7 @@ class MACRO_ETAPE(N_ETAPE.ETAPE): if self.Outputs.has_key(sdnom): # Il s'agit d'un concept de sortie de la macro produit par une sous commande sdnom=self.Outputs[sdnom].nom - elif sdnom[0] == '_': + elif sdnom != '' and sdnom[0] == '_': # Si le nom du concept commence par le caractere _ on lui attribue # un identificateur JEVEUX construit par gcncon et respectant # la regle gcncon legerement adaptee ici @@ -492,7 +492,10 @@ class MACRO_ETAPE(N_ETAPE.ETAPE): """ Inclut un fichier poursuite """ - f,text=self.get_file(fic_origine=self.parent.nom) + try: + f,text=self.get_file(fic_origine=self.parent.nom) + except: + raise AsException("Impossible d'ouvrir la base pour une poursuite") self.fichier_init=f if f == None:return self.make_contexte(f,text) @@ -511,7 +514,20 @@ class MACRO_ETAPE(N_ETAPE.ETAPE): d={} self.g_context = d self.contexte_fichier_init = d - exec code in self.parent.g_context,d + globs=self.parent.get_global_contexte() + exec code in globs,d + + def get_global_contexte(self): + """ + Cette methode retourne le contexte global fourni + par le parent(self) a une etape fille (l'appelant) pour + realiser des evaluations de texte Python (INCLUDE,...) + """ + # Le contexte global est forme par concatenation du contexte + # du parent de self et de celui de l'etape elle meme (self) + d=self.parent.get_global_contexte() + d.update(self.g_context) + return d diff --git a/Noyau/N_MCBLOC.py b/Noyau/N_MCBLOC.py index 0b05c2de..60f3c80d 100644 --- a/Noyau/N_MCBLOC.py +++ b/Noyau/N_MCBLOC.py @@ -1,4 +1,4 @@ -#@ MODIF N_MCBLOC Noyau DATE 27/03/2002 AUTEUR DURAND C.DURAND +#@ MODIF N_MCBLOC Noyau DATE 03/09/2002 AUTEUR GNICOLAS G.NICOLAS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -103,3 +103,5 @@ class MCBLOC(N_MCCOMPO.MCCOMPO): """ visitor.visitMCBLOC(self) + def makeobjet(self): + return self.definition(val = None, nom = self.nom,parent = self.parent) diff --git a/Noyau/N_MCCOMPO.py b/Noyau/N_MCCOMPO.py index da0d0b6a..56fa972d 100644 --- a/Noyau/N_MCCOMPO.py +++ b/Noyau/N_MCCOMPO.py @@ -1,4 +1,4 @@ -#@ MODIF N_MCCOMPO Noyau DATE 29/05/2002 AUTEUR DURAND C.DURAND +#@ MODIF N_MCCOMPO Noyau DATE 03/09/2002 AUTEUR GNICOLAS G.NICOLAS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -24,7 +24,7 @@ """ import types - +from copy import copy import N_OBJECT class MCCOMPO(N_OBJECT.OBJECT): @@ -313,5 +313,40 @@ class MCCOMPO(N_OBJECT.OBJECT): nom = mc.nom self.jdc.mc_globaux[nom]=mc + def copy(self): + """ Retourne une copie de self """ + objet = self.makeobjet() + # FR : attention !!! avec makeobjet, objet a le meme parent que self + # ce qui n'est pas du tout bon dans le cas d'une copie !!!!!!! + # FR : peut-on passer par là autrement que dans le cas d'une copie ??? + # FR --> je suppose que non + # XXX CCAR : le pb c'est qu'on vérifie ensuite quel parent avait l'objet + # Il me semble preferable de changer le parent a la fin quand la copie est acceptee + objet.valeur = copy(self.valeur) + objet.val = copy(self.val) + objet.mc_liste=[] + for obj in self.mc_liste: + new_obj = obj.copy() + new_obj.reparent(objet) + objet.mc_liste.append(new_obj) + return objet + def reparent(self,parent): + """ + Cette methode sert a reinitialiser la parente de l'objet + """ + self.parent=parent + self.jdc=parent.get_jdc_root() + self.etape=parent.etape + for mocle in self.mc_liste: + mocle.reparent(self) + def get_sd_utilisees(self): + """ + Retourne la liste des concepts qui sont utilisés à l'intérieur de self + ( comme valorisation d'un MCS) + """ + l=[] + for child in self.mc_liste: + l.extend(child.get_sd_utilisees()) + return l diff --git a/Noyau/N_MCFACT.py b/Noyau/N_MCFACT.py index 6cc2eca7..d0f68a45 100644 --- a/Noyau/N_MCFACT.py +++ b/Noyau/N_MCFACT.py @@ -1,4 +1,4 @@ -#@ MODIF N_MCFACT Noyau DATE 27/03/2002 AUTEUR DURAND C.DURAND +#@ MODIF N_MCFACT Noyau DATE 03/09/2002 AUTEUR GNICOLAS G.NICOLAS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -94,3 +94,5 @@ class MCFACT(N_MCCOMPO.MCCOMPO): """ visitor.visitMCFACT(self) + def makeobjet(self): + return self.definition(val = None, nom = self.nom,parent = self.parent) diff --git a/Noyau/N_MCLIST.py b/Noyau/N_MCLIST.py index 88fc4ac1..9b21cdf9 100644 --- a/Noyau/N_MCLIST.py +++ b/Noyau/N_MCLIST.py @@ -1,4 +1,4 @@ -#@ MODIF N_MCLIST Noyau DATE 27/03/2002 AUTEUR DURAND C.DURAND +#@ MODIF N_MCLIST Noyau DATE 03/09/2002 AUTEUR GNICOLAS G.NICOLAS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -24,6 +24,7 @@ de type ENTITE """ +from copy import copy import UserList class MCList(UserList.UserList): @@ -109,3 +110,37 @@ class MCList(UserList.UserList): """ visitor.visitMCList(self) + def get_sd_utilisees(self): + """ + Retourne la liste des concepts qui sont utilisés à l'intérieur de self + ( comme valorisation d'un MCS) + """ + l=[] + for child in self.data: + l.extend(child.get_sd_utilisees()) + return l + + def copy(self): + """ + Réalise la copie d'une MCList + """ + liste = self.data[0].definition.list_instance() + # FR -->Il faut spécifier un parent pour la méthode init qui attend 2 arguments ... + liste.init(self.nom,self.parent) + for objet in self: + new_obj = objet.copy() + # Pour etre coherent avec le constructeur de mots cles facteurs N_FACT.__call__ + # dans lequel le parent de l'element d'une MCList est le parent de la MCList + new_obj.reparent(self.parent) + liste.append(new_obj) + return liste + + def reparent(self,parent): + """ + Cette methode sert a reinitialiser la parente de l'objet + """ + self.parent=parent + self.jdc=parent.jdc + self.etape=parent.etape + for mcfact in self.data: + mcfact.reparent(parent) diff --git a/Noyau/N_MCSIMP.py b/Noyau/N_MCSIMP.py index fc940f7d..7df9f9fd 100644 --- a/Noyau/N_MCSIMP.py +++ b/Noyau/N_MCSIMP.py @@ -1,4 +1,4 @@ -#@ MODIF N_MCSIMP Noyau DATE 27/03/2002 AUTEUR DURAND C.DURAND +#@ MODIF N_MCSIMP Noyau DATE 03/09/2002 AUTEUR GNICOLAS G.NICOLAS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -24,6 +24,10 @@ de type ENTITE """ +import types +from copy import copy + +from Noyau.N_ASSD import ASSD,assd import N_OBJECT class MCSIMP(N_OBJECT.OBJECT): @@ -94,3 +98,40 @@ class MCSIMP(N_OBJECT.OBJECT): """ visitor.visitMCSIMP(self) + def copy(self): + """ Retourne une copie de self """ + objet = self.makeobjet() + # il faut copier les listes et les tuples mais pas les autres valeurs + # possibles (réel,SD,...) + if type(self.valeur) in (types.ListType,types.TupleType): + objet.valeur = copy(self.valeur) + else: + objet.valeur = self.valeur + objet.val = objet.valeur + return objet + + def makeobjet(self): + return self.definition(val = None, nom = self.nom,parent = self.parent) + + def reparent(self,parent): + """ + Cette methode sert a reinitialiser la parente de l'objet + """ + self.parent=parent + self.jdc=parent.jdc + self.etape=parent.etape + + def get_sd_utilisees(self): + """ + Retourne une liste qui contient la SD utilisée par self si c'est le cas + ou alors une liste vide + """ + l=[] + if type(self.valeur) == types.InstanceType: + #XXX Est ce différent de isinstance(self.valeur,ASSD) ?? + if issubclass(self.valeur.__class__,ASSD) : l.append(self.valeur) + elif type(self.valeur) in (types.TupleType,types.ListType): + for val in self.valeur : + if type(val) == types.InstanceType: + if issubclass(val.__class__,ASSD) : l.append(val) + return l diff --git a/Noyau/N_OPER.py b/Noyau/N_OPER.py index dd9812e8..5e43776e 100644 --- a/Noyau/N_OPER.py +++ b/Noyau/N_OPER.py @@ -1,4 +1,4 @@ -#@ MODIF N_OPER Noyau DATE 27/03/2002 AUTEUR DURAND C.DURAND +#@ MODIF N_OPER Noyau DATE 09/10/2002 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -85,7 +85,7 @@ class OPER(N_ENTITE.ENTITE): nommage = nommage def __init__(self,nom,op,sd_prod,reentrant='n',repetable='o',fr="",ang="", - docu="",regles=(),op_init=None,niveau = None,**args): + docu="",regles=(),op_init=None,niveau = None,UIinfo=None,**args): """ Méthode d'initialisation de l'objet OPER. Les arguments sont utilisés pour initialiser les attributs de meme nom @@ -112,6 +112,7 @@ class OPER(N_ENTITE.ENTITE): else: self.niveau=current_cata.get_niveau(niveau) self.niveau.enregistre(self) + self.UIinfo=UIinfo self.affecter_parente() def __call__(self,reuse=None,**args): diff --git a/Noyau/N_PROC.py b/Noyau/N_PROC.py index 173070fb..6e1b73fa 100644 --- a/Noyau/N_PROC.py +++ b/Noyau/N_PROC.py @@ -1,4 +1,4 @@ -#@ MODIF N_PROC Noyau DATE 27/03/2002 AUTEUR DURAND C.DURAND +#@ MODIF N_PROC Noyau DATE 09/10/2002 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -79,7 +79,7 @@ class PROC(N_ENTITE.ENTITE): label = 'PROC' def __init__(self,nom,op,reentrant='n',repetable='o',fr="",ang="", - docu="",regles=(),op_init=None,niveau = None,**args): + docu="",regles=(),op_init=None,niveau = None,UIinfo=None,**args): """ Méthode d'initialisation de l'objet PROC. Les arguments sont utilisés pour initialiser les attributs de meme nom @@ -105,6 +105,7 @@ class PROC(N_ENTITE.ENTITE): else: self.niveau=current_cata.get_niveau(niveau) self.niveau.enregistre(self) + self.UIinfo=UIinfo self.affecter_parente() def __call__(self,**args): diff --git a/Noyau/N_PROC_ETAPE.py b/Noyau/N_PROC_ETAPE.py index c055c246..e15e5e33 100644 --- a/Noyau/N_PROC_ETAPE.py +++ b/Noyau/N_PROC_ETAPE.py @@ -1,4 +1,4 @@ -#@ MODIF N_PROC_ETAPE Noyau DATE 27/03/2002 AUTEUR DURAND C.DURAND +#@ MODIF N_PROC_ETAPE Noyau DATE 20/01/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -97,13 +97,10 @@ class PROC_ETAPE(N_ETAPE.ETAPE): apply(self.definition.op_init,(self,self.parent.g_context)) else: pass - if self.jdc.par_lot == "NON" : - self.Execute() except AsException,e: raise AsException("Etape ",self.nom,'ligne : ',self.appel[0], 'fichier : ',self.appel[1],e) except EOFError: - self.reset_current_step() raise except : l=traceback.format_exception(sys.exc_info()[0],sys.exc_info()[1],sys.exc_info()[2]) @@ -111,6 +108,9 @@ class PROC_ETAPE(N_ETAPE.ETAPE): 'fichier : ',self.appel[1]+'\n', string.join(l)) + self.Execute() + return None + def supprime(self): """ Méthode qui supprime toutes les références arrières afin que l'objet puisse diff --git a/Noyau/N_SIMP.py b/Noyau/N_SIMP.py index abcccfd6..0158a203 100644 --- a/Noyau/N_SIMP.py +++ b/Noyau/N_SIMP.py @@ -1,4 +1,4 @@ -#@ MODIF N_SIMP Noyau DATE 27/03/2002 AUTEUR DURAND C.DURAND +#@ MODIF N_SIMP Noyau DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -45,7 +45,7 @@ class SIMP(N_ENTITE.ENTITE): def __init__(self,typ,fr="",ang="",statut='f',into=None,defaut=None, min=1,max=1,homo=1,position ='local', - val_min = '**',val_max='**',docu=""): + val_min = '**',val_max='**',docu="",validators=None): """ Un mot-clé simple est caractérisé par les attributs suivants : @@ -76,7 +76,7 @@ class SIMP(N_ENTITE.ENTITE): - docu """ - N_ENTITE.ENTITE.__init__(self) + N_ENTITE.ENTITE.__init__(self,validators) # Initialisation des attributs if type(typ) == types.TupleType : self.type=typ @@ -119,7 +119,8 @@ class SIMP(N_ENTITE.ENTITE): self.cr.fatal("L'attribut 'into' doit etre un tuple : %s" %`self.into`) if self.position not in ['local','global','global_jdc']: self.cr.fatal("L'attribut 'position' doit valoir 'local','global' ou 'global_jdc' : %s" %`self.position`) - + if self.validators and not self.validators.verif_cata(): + self.cr.fatal("Un des validateurs est incorrect. Raison : "+self.validators.cata_info) def __call__(self,val,nom,parent=None): """ diff --git a/Noyau/N_VALIDATOR.py b/Noyau/N_VALIDATOR.py new file mode 100644 index 00000000..1fcbe331 --- /dev/null +++ b/Noyau/N_VALIDATOR.py @@ -0,0 +1,473 @@ +#@ MODIF N_VALIDATOR Noyau DATE 09/09/2003 AUTEUR DURAND C.DURAND +# 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. +# ====================================================================== +""" + Ce module contient toutes les classes necessaires pour + implanter le concept de validateur dans Accas +""" +import types,exceptions + +class ValError ( exceptions.Exception ): + pass + +class Valid: + """ + Cette classe est la classe mere des validateurs Accas + Elle doit etre derivee + Elle ne presente que la signature des methodes + indispensables pour son bon fonctionnement + + @ivar cata_info: raison de la validite ou de l'invalidite du validateur meme + @type cata_info: C{string} + """ + def __init__(self,*tup,**args): + """ + Cette methode sert a initialiser les attributs du validateur + """ + self.cata_info="" + raise "Must be implemented" + + def info(self): + return "valeur valide" + + def verif(self,valeur): + """ + Cette methode sert a verifier si la valeur passee en argument est consideree + comme valide ou non par le validateur. Dans le premier cas le validateur retourne 1 + (valide) sinon 0 (invalide). + + @type valeur: tout type python + @param valeur: valeur du mot cle a valider + @rtype: C{boolean} + @return: indicateur de validite 1 (valide) ou 0 (invalide) + """ + raise "Must be implemented" + + def error(self,valeur): + return 0 + + def verif_cata(self): + """ + Cette methode sert a realiser des verifications du validateur lui meme. + Elle est facultative et retourne 1 (valide) par defaut. + Elle retourne 0 si le validateur est lui meme invalide si par exemple ses + parametres de definition ne sont pas corrects. + La raison de l'invalidite est stockee dans l'attribut cata_info. + + @rtype: C{boolean} + @return: indicateur de validite 1 (valide) ou 0 (invalide) + """ + return 1 + +class RangeVal(Valid): + """ + Exemple de classe validateur : verification qu'une valeur + est dans un intervalle. + Pour une liste on verifie que tous les elements sont + dans l'intervalle + Susceptible de remplacer les attributs "vale_min" "vale_max" + dans les catalogues + """ + def __init__(self,low,high): + self.low=low + self.high=high + self.cata_info="%s doit etre inferieur a %s" %(low,high) + + def info(self): + return "valeur dans l'intervalle %s , %s" %(self.low,self.high) + + def verif(self,valeur): + if type(valeur) in (types.ListType,types.TupleType): + for val in valeur: + if val < self.low :return 0 + if val > self.high:return 0 + return 1 + else: + if valeur < self.low :return 0 + if valeur > self.high:return 0 + return 1 + + def verif_cata(self): + if self.low > self.high : return 0 + return 1 + +class CardVal(Valid): + """ + Exemple de classe validateur : verification qu'une liste est + d'une longueur superieur a un minimum (min) et inferieure + a un maximum (max). + Susceptible de remplacer les attributs "min" "max" dans les + catalogues + """ + def __init__(self,min='**',max='**'): + self.min=min + self.max=max + self.cata_info="%s doit etre inferieur a %s" % (min,max) + + def info(self): + return "longueur comprise entre %s et %s" % (self.min,self.max) + + def verif(self,valeur): + if type(valeur) in (types.ListType,types.TupleType): + if self.max != '**' and len(valeur) > self.max:return 0 + if self.min != '**' and len(valeur) < self.min:return 0 + return 1 + else: + if self.max != '**' and 1 > self.max:return 0 + if self.min != '**' and 1 < self.min:return 0 + return 1 + + def verif_cata(self): + if self.min != '**' and self.max != '**' and self.min > self.max : return 0 + return 1 + +class PairVal(Valid): + """ + Exemple de classe validateur : verification qu'une valeur + est paire. + Pour une liste on verifie que tous les elements sont + pairs + """ + def __init__(self): + self.cata_info="" + + def info(self): + return "valeur paire" + + def verif(self,valeur): + if type(valeur) in (types.ListType,types.TupleType): + for val in valeur: + if val % 2 != 0:return 0 + return 1 + else: + if valeur % 2 != 0:return 0 + return 1 + +class EnumVal(Valid): + """ + Exemple de classe validateur : verification qu'une valeur + est prise dans une liste de valeurs. + Susceptible de remplacer l attribut "into" dans les catalogues + """ + def __init__(self,into=()): + if type(into) not in (types.ListType,types.TupleType): into=(into,) + self.into=into + self.cata_info="" + + def info(self): + return "valeur dans %s" % `self.into` + + def verif(self,valeur): + if type(valeur) in (types.ListType,types.TupleType): + for val in valeur: + if val not in self.into:return 0 + return 1 + else: + if valeur not in self.into:return 0 + return 1 + +class NoRepeat(Valid): + """ + Verification d'absence de doublons dans la liste. + """ + def __init__(self): + self.cata_info="" + + def info(self): + return ": présence de doublon dans la liste" + + def verif(self,valeur): + if type(valeur) in (types.ListType,types.TupleType): + liste=list(valeur) + for val in liste: + if liste.count(val)!=1 : return 0 + return 1 + else: + return 1 + +class LongStr(Valid): + """ + Verification de la longueur d une chaine + """ + def __init__(self,low,high): + self.low=low + self.high=high + self.cata_info="" + + def info(self): + return "longueur de la chaine entre %s et %s" %(self.low,self.high) + + def verif(self,valeur): + if type(valeur) in (types.ListType,types.TupleType): + for val in valeur: + if len(val) < self.low :return 0 + if len(val) > self.high:return 0 + return 1 + else: + if len(valeur) < self.low :return 0 + if len(valeur) > self.high:return 0 + return 1 + +class OrdList(Valid): + """ + Verification qu'une liste est croissante ou decroissante + """ + def __init__(self,ord): + self.ord=ord + self.cata_info="" + + def info(self): + return "liste %s" % self.ord + + def verif(self,valeur): + if type(valeur) in (types.ListType,types.TupleType): + if self.ord=='croissant': + var=valeur[0] + for val in valeur[1:]: + if valvar:return 0 + var=val + return 1 + else: + return 1 + + +CoercableFuncs = { types.IntType: int, + types.LongType: long, + types.FloatType: float, + types.ComplexType: complex, + types.UnicodeType: unicode } + +class TypeVal(Valid): + """ + Cette classe est un validateur qui controle qu'une valeur + est bien du type Python attendu. + Pour une liste on verifie que tous les elements sont du bon type. + """ + def __init__(self, aType): + if type(aType) != types.TypeType: + aType=type(aType) + self.aType=aType + try: + self.coerce=CoercableFuncs[ aType ] + except: + self.coerce = self.identity + + def info(self): + return "valeur de %s" % self.aType + + def identity ( self, value ): + if type( value ) == self.aType: + return value + raise ValError + + def verif(self,valeur): + if type(valeur) in (types.ListType,types.TupleType): + for val in valeur: + try: + self.coerce(val) + except: + return 0 + return 1 + else: + try: + self.coerce(valeur) + except: + return 0 + return 1 + +class InstanceVal(Valid): + """ + Cette classe est un validateur qui controle qu'une valeur est + bien une instance (au sens Python) d'une classe + Pour une liste on verifie chaque element de la liste + """ + def __init__(self,aClass): + if type(aClass) == types.InstanceType: + aClass=aClass.__class__ + self.aClass=aClass + + def info(self): + return "valeur d'instance de %s" % self.aClass.__name__ + + def verif(self,valeur): + if type(valeur) in (types.ListType,types.TupleType): + for val in valeur: + if not isinstance(val,self.aClass): return 0 + return 1 + if not isinstance(valeur,self.aClass): return 0 + return 1 + +def ImpairVal(valeur): + """ + Cette fonction est un validateur. Elle verifie que la valeur passee + est bien un nombre impair. + """ + if type(valeur) in (types.ListType,types.TupleType): + for val in valeur: + if val % 2 != 1:return 0 + return 1 + else: + if valeur % 2 != 1:return 0 + return 1 + +ImpairVal.info="valeur impaire" + +class F1Val(Valid): + """ + Cette classe est un validateur de dictionnaire (mot cle facteur ?). Elle verifie + que la somme des cles A et B vaut une valeur donnee + en parametre du validateur + """ + def __init__(self,somme=10): + self.somme=somme + self.cata_info="" + + def info(self): + return "valeur %s pour la somme des cles A et B " % self.somme + + def verif(self,valeur): + if type(valeur) in (types.ListType,types.TupleType): + for val in valeur: + if not val.has_key("A"):return 0 + if not val.has_key("B"):return 0 + if val["A"]+val["B"] != self.somme:return 0 + return 1 + else: + if not valeur.has_key("A"):return 0 + if not valeur.has_key("B"):return 0 + if valeur["A"]+valeur["B"] != self.somme:return 0 + return 1 + +class FunctionVal(Valid): + """ + Cette classe est un validateur qui est initialise avec une fonction + """ + def __init__(self,function): + self.function=function + + def info(self): + return self.function.info + + def verif(self,valeur): + return self.function(valeur) + +class OrVal(Valid): + """ + Cette classe est un validateur qui controle une liste de validateurs + Elle verifie qu'au moins un des validateurs de la liste a valide la valeur + """ + def __init__(self,validators=()): + if type(validators) not in (types.ListType,types.TupleType): validators=(validators,) + self.validators=[] + for validator in validators: + if type(validator) == types.FunctionType: + self.validators.append(FunctionVal(validator)) + else: + self.validators.append(validator) + self.cata_info="" + + def info(self): + return "\n ou ".join([v.info() for v in self.validators]) + + def verif(self,valeur): + for validator in self.validators: + v=validator.verif(valeur) + if v : + return 1 + return 0 + + def verif_cata(self): + infos=[] + for validator in self.validators: + v=validator.verif_cata() + if not v :infos.append(validator.cata_info) + if infos: + self.cata_info="\n".join(infos) + return 0 + self.cata_info="" + return 1 + +class AndVal(Valid): + """ + Cette classe est un validateur qui controle une liste de validateurs + Elle verifie que tous les validateurs de la liste sont positifs + """ + def __init__(self,validators=()): + if type(validators) not in (types.ListType,types.TupleType): validators=(validators,) + self.validators=[] + for validator in validators: + if type(validator) == types.FunctionType: + self.validators.append(FunctionVal(validator)) + else: + self.validators.append(validator) + self.cata_info="" + + def info(self): + return " et ".join([v.info() for v in self.validators]) + + def verif(self,valeur): + for validator in self.validators: + v=validator.verif(valeur) + if not v : + self.local_info=validator.info() + return 0 + return 1 + + def verif_cata(self): + infos=[] + for validator in self.validators: + v=validator.verif_cata() + if not v :infos.append(validator.cata_info) + if infos: + self.cata_info="\n".join(infos) + return 0 + self.cata_info="" + return 1 + +def do_liste(validators): + """ + Convertit une arborescence de validateurs en OrVal ou AndVal + validators est une liste de validateurs ou de listes ou de tuples + """ + valids=[] + for validator in validators: + if type(validator) == types.FunctionType: + valids.append(FunctionVal(validator)) + elif type(validator) == types.TupleType: + valids.append(OrVal(do_liste(validator))) + elif type(validator) == types.ListType: + valids.append(AndVal(do_liste(validator))) + else: + valids.append(validator) + return valids + +def validatorFactory(validator): + if type(validator) == types.FunctionType: + return FunctionVal(validator) + elif type(validator) == types.TupleType: + return OrVal(do_liste(validator)) + elif type(validator) == types.ListType: + return AndVal(do_liste(validator)) + else: + return validator diff --git a/Noyau/nommage.py b/Noyau/nommage.py index 057badd4..8494cc8c 100644 --- a/Noyau/nommage.py +++ b/Noyau/nommage.py @@ -1,4 +1,4 @@ -#@ MODIF nommage Noyau DATE 27/03/2002 AUTEUR DURAND C.DURAND +#@ MODIF nommage Noyau DATE 18/03/2003 AUTEUR VABHHTS J.PELLET # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -40,7 +40,7 @@ import linecache # Modules EFICAS import N_utils -regex1='=\s*%s\s*\(' +regex1='=?\s*%s\s*\(' def GetNomConceptResultat(ope): """ @@ -82,7 +82,8 @@ def GetNomConceptResultat(ope): # isole en tete de la ligne de source m=evalnom(string.strip(l[0]),f.f_locals) #print "NOMS ",m - return m[-1] + if m!=[] : return m[-1] + else : return '' lineno=lineno-1 line = linecache.getline(filename, lineno) list.append(line) diff --git a/Noyau/properties.py b/Noyau/properties.py index 41ab579d..c8d3ade9 100644 --- a/Noyau/properties.py +++ b/Noyau/properties.py @@ -1,8 +1,7 @@ -#@ MODIF properties Accas DATE 29/08/2002 AUTEUR gcbhhhh M.ADMINISTRATEUR +#@ MODIF properties Noyau DATE 27/03/2002 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION -# RESPONSABLE D6BHHHH J-P.LEFEBVRE # ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG +# 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 @@ -16,9 +15,9 @@ # 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. +# +# # ====================================================================== -# IDENTIFICATION DU GESTIONNAIRE DE COMMANDE ACCAS A PARTIR -# DE LA VERSION DU CODE_ASTER ASSOCIE -#---------------------------------------------------------------------- -version = "6.3.14" -date = "29/08/2002" +version = "6.2.24" +date = "15/03/2002" + diff --git a/Validation/V_ETAPE.py b/Validation/V_ETAPE.py index 904333d5..4afd640c 100644 --- a/Validation/V_ETAPE.py +++ b/Validation/V_ETAPE.py @@ -1,4 +1,4 @@ -#@ MODIF V_ETAPE Validation DATE 26/06/2002 AUTEUR DURAND C.DURAND +#@ MODIF V_ETAPE Validation DATE 06/01/2003 AUTEUR ASSIRE A.ASSIRE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -39,6 +39,56 @@ class ETAPE(V_MCCOMPO.MCCOMPO): """ """ + def valid_child(self): + """ Cette methode teste la validite des mots cles de l'etape """ + for child in self.mc_liste : + if not child.isvalid(): + return 0 + return 1 + + def valid_regles(self,cr): + """ Cette methode teste la validite des regles de l'etape """ + text_erreurs,test_regles = self.verif_regles() + if not test_regles : + if cr == 'oui' : self.cr.fatal(string.join(("Règle(s) non respectée(s) :", text_erreurs))) + return 0 + return 1 + + def valid_sdnom(self,cr): + """ Cette methode teste la validite du nom du concept produit par l'etape """ + valid=1 + if self.sd.nom != None : + if self.jdc and self.jdc.definition.code == 'ASTER' and len(self.sd.nom) > 8 : + # le nom de la sd doit avoir une longueur <= 8 caractères pour ASTER + if cr == 'oui' : + self.cr.fatal("Le nom de concept %s est trop long (8 caractères maxi)" %self.sd.nom) + valid = 0 + if string.find(self.sd.nom,'sansnom') != -1 : + # la SD est 'sansnom' : --> erreur + if cr == 'oui' : + self.cr.fatal("Pas de nom pour le concept retourné") + valid = 0 + elif string.find(self.sd.nom,'SD_') != -1 : + # la SD est 'SD_' cad son nom = son id donc pas de nom donné par utilisateur : --> erreur + if cr == 'oui' : + self.cr.fatal("Pas de nom pour le concept retourné") + valid = 0 + return valid + + def get_valid(self): + if hasattr(self,'valid'): + return self.valid + else: + self.valid=None + return None + + def set_valid(self,valid): + old_valid=self.get_valid() + self.valid = valid + self.state = 'unchanged' + if not old_valid or old_valid != self.valid : + self.init_modif_up() + def isvalid(self,sd='oui',cr='non'): """ Methode pour verifier la validité de l'objet ETAPE. Cette méthode @@ -60,61 +110,37 @@ class ETAPE(V_MCCOMPO.MCCOMPO): if self.state == 'unchanged' : return self.valid else: - valid = 1 - if hasattr(self,'valid'): - old_valid = self.valid - else: - old_valid = None - # on teste si demandé la structure de donnée (par défaut) - if sd == 'oui': - if self.sd != None :pass - # Ce test parait superflu. Il est sur que si sd existe il s'agit du concept produit - # Quelle pourrait etre la raison qui ferait que sd n existe pas ??? - #if self.jdc.get_sdprod(self.sd.nom) == None : - # if cr == 'oui' : - # self.cr.fatal('Le concept '+self.sd.nom+" n'existe pas") - # valid = 0 - else : - if cr == 'oui' : self.cr.fatal("Concept retourné non défini") - valid = 0 - # on teste, si elle existe, le nom de la sd (sa longueur doit etre <= 8 caractères) - if self.sd != None : - # la SD existe déjà : on regarde son nom - if self.sd.nom != None : - if len(self.sd.nom) > 8 and self.jdc.definition.code == 'ASTER' : - if cr == 'oui' : - self.cr.fatal("Le nom de concept %s est trop long (8 caractères maxi)" %self.sd.nom) - valid = 0 - if string.find(self.sd.nom,'sansnom') != -1 : - # la SD est 'sansnom' : --> erreur - if cr == 'oui' : - self.cr.fatal("Pas de nom pour le concept retourné") - valid = 0 - elif string.find(self.sd.nom,'SD_') != -1 : - # la SD est 'SD_' cad son nom = son id donc pas de nom donné par utilisateur : --> erreur - if cr == 'oui' : - self.cr.fatal("Pas de nom pour le concept retourné") - valid = 0 - # on teste les enfants - for child in self.mc_liste : - if not child.isvalid(): - valid = 0 - break - # on teste les règles de self - text_erreurs,test_regles = self.verif_regles() - if not test_regles : - if cr == 'oui' : self.cr.fatal(string.join(("Règle(s) non respectée(s) :", text_erreurs))) - valid = 0 + valid=self.valid_child() + valid=valid * self.valid_regles(cr) + if self.reste_val != {}: if cr == 'oui' : self.cr.fatal("Mots cles inconnus :" + string.join(self.reste_val.keys(),',')) valid=0 - if sd == 'oui' and valid: + + if sd == "non": + # Dans ce cas, on ne teste qu'une validité partielle (sans tests sur le concept produit) + # Conséquence : on ne change pas l'état ni l'attribut valid, on retourne simplement + # l'indicateur de validité valid + return valid + + if self.definition.reentrant == 'n' and self.reuse: + # Il ne peut y avoir de concept reutilise avec un OPER non reentrant + if cr == 'oui' : self.cr.fatal('Operateur non reentrant : ne pas utiliser reuse ') + valid=0 + + if self.sd == None: + # Le concept produit n'existe pas => erreur + if cr == 'oui' : self.cr.fatal("Concept retourné non défini") + valid = 0 + else: + valid = valid * self.valid_sdnom(cr) + + if valid: valid = self.update_sdprod(cr) - self.valid = valid - self.state = 'unchanged' - if old_valid: - if old_valid != self.valid : self.init_modif_up() + + self.set_valid(valid) + return self.valid def update_sdprod(self,cr='non'): @@ -150,11 +176,12 @@ class ETAPE(V_MCCOMPO.MCCOMPO): if AsType(self.reuse) != sd_prod: if cr == 'oui' : self.cr.fatal('Type de concept reutilise incompatible avec type produit') valid= 0 - if self.sdnom[0] != '_' and self.reuse.nom != self.sdnom: - # Le nom de la variable de retour (self.sdnom) doit etre le meme que celui du concept reutilise (self.reuse.nom) - if cr == 'oui' : - self.cr.fatal('Concept reutilise : le nom de la variable de retour devrait etre %s et non %s' %(self.reuse.nom,self.sdnom)) - valid= 0 + if self.sdnom!='': + if self.sdnom[0] != '_' and self.reuse.nom != self.sdnom: + # Le nom de la variable de retour (self.sdnom) doit etre le meme que celui du concept reutilise (self.reuse.nom) + if cr == 'oui' : + self.cr.fatal('Concept reutilise : le nom de la variable de retour devrait etre %s et non %s' %(self.reuse.nom,self.sdnom)) + valid= 0 if valid:self.sd=self.reuse else: if sd_prod == None:# Pas de concept retourné @@ -171,7 +198,6 @@ class ETAPE(V_MCCOMPO.MCCOMPO): if self.definition.reentrant == 'o': if cr == 'oui' : self.cr.fatal('Commande obligatoirement reentrante : specifier reuse=concept') valid=0 - #self.reuse = self.sd return valid diff --git a/Validation/V_JDC.py b/Validation/V_JDC.py index 38d8056f..f288eaae 100644 --- a/Validation/V_JDC.py +++ b/Validation/V_JDC.py @@ -72,6 +72,7 @@ class JDC(V_MCCOMPO.MCCOMPO): if not e.isvalid(): valid = 0 break + self.state="unchanged" self.valid = valid return self.valid diff --git a/Validation/V_MACRO_ETAPE.py b/Validation/V_MACRO_ETAPE.py index 878a14da..740c4913 100644 --- a/Validation/V_MACRO_ETAPE.py +++ b/Validation/V_MACRO_ETAPE.py @@ -1,4 +1,4 @@ -#@ MODIF V_MACRO_ETAPE Validation DATE 26/06/2002 AUTEUR DURAND C.DURAND +#@ MODIF V_MACRO_ETAPE Validation DATE 06/01/2003 AUTEUR ASSIRE A.ASSIRE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -61,54 +61,38 @@ class MACRO_ETAPE(V_ETAPE.ETAPE): if self.state == 'unchanged' : return self.valid else: - valid = 1 - if hasattr(self,'valid'): - old_valid = self.valid - else: - old_valid = None - # on teste, si elle existe, le nom de la sd (sa longueur doit etre <= 8 caractères) - if self.sd != None : - # la SD existe déjà : on regarde son nom - if self.sd.get_name() != None : - if len(self.sd.nom) > 8 : - if cr == 'oui' : - self.cr.fatal("Le nom de concept %s est trop long (8 caractères maxi)" %self.sd.nom) - valid = 0 - if string.find(self.sd.nom,'sansnom') != -1 : - # la SD est 'sansnom' : --> erreur - if cr == 'oui' : - self.cr.fatal("Pas de nom pour le concept retourné") - valid = 0 - elif string.find(self.sd.nom,'SD_') != -1 : - # la SD est 'SD_' cad son nom = son id donc pas de nom donné par utilisateur : --> erreur - if cr == 'oui' : - self.cr.fatal("Pas de nom pour le concept retourné") - valid = 0 - # on teste les enfants - for child in self.mc_liste : - if not child.isvalid(): - valid = 0 - break - # on teste les règles de self - text_erreurs,test_regles = self.verif_regles() - if not test_regles : - if cr == 'oui' : self.cr.fatal(string.join(("Règle(s) non respectée(s) :", text_erreurs))) - valid = 0 + valid=self.valid_child() + valid=valid * self.valid_regles(cr) + if self.reste_val != {}: if cr == 'oui' : self.cr.fatal("Mots cles inconnus :" + string.join(self.reste_val.keys(),',')) valid=0 - if sd == 'oui' and valid: + + if sd == "non": + # Dans ce cas, on ne calcule qu'une validite partielle, on ne modifie pas l'état de self + # on retourne simplement l'indicateur valid + return valid + + if self.sd != None : + valid = valid * self.valid_sdnom(cr) + + if self.definition.reentrant == 'n' and self.reuse: + # Il ne peut y avoir de concept reutilise avec une MACRO non reentrante + if cr == 'oui' : self.cr.fatal('Macro-commande non reentrante : ne pas utiliser reuse ') + valid=0 + + if valid: valid = self.update_sdprod(cr) + # Si la macro comprend des etapes internes, on teste leur validite for e in self.etapes: if not e.isvalid(): valid=0 break - self.valid = valid - self.state = 'unchanged' - if old_valid: - if old_valid != self.valid : self.init_modif_up() + + self.set_valid(valid) + return self.valid def update_sdprod(self,cr='non'): @@ -153,11 +137,12 @@ class MACRO_ETAPE(V_ETAPE.ETAPE): if AsType(self.reuse) != sd_prod: if cr == 'oui' : self.cr.fatal('Type de concept reutilise incompatible avec type produit') valid=0 - if self.sdnom[0] != '_' and self.reuse.nom != self.sdnom: - # Le nom de la variable de retour (self.sdnom) doit etre le meme que celui du concept reutilise (self.reuse.nom) - if cr == 'oui' : - self.cr.fatal('Concept reutilise : le nom de la variable de retour devrait etre %s et non %s' %(self.reuse.nom,self.sdnom)) - valid= 0 + if self.sdnom!='': + if self.sdnom[0] != '_' and self.reuse.nom != self.sdnom: + # Le nom de la variable de retour (self.sdnom) doit etre le meme que celui du concept reutilise (self.reuse.nom) + if cr == 'oui' : + self.cr.fatal('Concept reutilise : le nom de la variable de retour devrait etre %s et non %s' %(self.reuse.nom,self.sdnom)) + valid= 0 if valid:self.sd=self.reuse else: if sd_prod == None:# Pas de concept retourné @@ -176,7 +161,6 @@ class MACRO_ETAPE(V_ETAPE.ETAPE): if self.definition.reentrant == 'o': if cr == 'oui' : self.cr.fatal('Commande obligatoirement reentrante : specifier reuse=concept') valid=0 - #self.reuse = self.sd return valid def report(self): diff --git a/Validation/V_MCBLOC.py b/Validation/V_MCBLOC.py index 16b69520..ea4a28b7 100644 --- a/Validation/V_MCBLOC.py +++ b/Validation/V_MCBLOC.py @@ -70,7 +70,7 @@ class MCBLOC(V_MCCOMPO.MCCOMPO): valid = 0 self.valid = valid self.state = 'unchanged' - if old_valid: - if old_valid != self.valid : self.init_modif_up() + if not old_valid or old_valid != self.valid : + self.init_modif_up() return self.valid diff --git a/Validation/V_MCCOMPO.py b/Validation/V_MCCOMPO.py index 7f9b4eb0..cb7c7529 100644 --- a/Validation/V_MCCOMPO.py +++ b/Validation/V_MCCOMPO.py @@ -1,4 +1,4 @@ -#@ MODIF V_MCCOMPO Validation DATE 29/05/2002 AUTEUR DURAND C.DURAND +#@ MODIF V_MCCOMPO Validation DATE 09/10/2002 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -77,7 +77,8 @@ class MCCOMPO: - testglob = booléen 1 si toutes les règles OK, 0 sinon """ - dictionnaire=self.dict_mc_presents(restreint='oui') + #dictionnaire=self.dict_mc_presents(restreint='oui') + dictionnaire=self.dict_mc_presents(restreint='non') # On verifie les regles avec les defauts affectés texte='' testglob = 1 for r in self.definition.regles: diff --git a/Validation/V_MCFACT.py b/Validation/V_MCFACT.py index 6d15b036..a8e24c59 100644 --- a/Validation/V_MCFACT.py +++ b/Validation/V_MCFACT.py @@ -1,4 +1,4 @@ -#@ MODIF V_MCFACT Validation DATE 27/03/2002 AUTEUR DURAND C.DURAND +#@ MODIF V_MCFACT Validation DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -68,13 +68,22 @@ class MCFACT(V_MCCOMPO.MCCOMPO): if not test_regles : if cr == 'oui' : self.cr.fatal(string.join(("Règle(s) non respectée(s) :", text_erreurs))) valid = 0 + # + # On verifie les validateurs s'il y en a + # + if self.definition.validators and not self.definition.validators.verif(self.valeur): + if cr == 'oui' : + self.cr.fatal(string.join(("Mot-clé : ",self.nom,"devrait avoir ",self.definition.validators.info()))) + valid=0 + # fin des validateurs + # if self.reste_val != {}: if cr == 'oui' : self.cr.fatal("Mots cles inconnus :" + string.join(self.reste_val.keys(),',')) valid=0 self.valid = valid self.state = 'unchanged' - if old_valid: - if old_valid != self.valid : self.init_modif_up() + if not old_valid or old_valid != self.valid : + self.init_modif_up() return self.valid diff --git a/Validation/V_MCSIMP.py b/Validation/V_MCSIMP.py index 462147d5..e4d43bc1 100644 --- a/Validation/V_MCSIMP.py +++ b/Validation/V_MCSIMP.py @@ -1,4 +1,4 @@ -#@ MODIF V_MCSIMP Validation DATE 27/03/2002 AUTEUR DURAND C.DURAND +#@ MODIF V_MCSIMP Validation DATE 09/09/2003 AUTEUR DURAND C.DURAND # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -86,12 +86,21 @@ class MCSIMP: self.cr.fatal(string.join(("Mot-clé : ",self.nom," obligatoire non valorisé"))) valid = 0 # type,into ... - valid = self.verif_type(cr=cr)*self.verif_into(cr=cr)*self.verif_card(cr=cr) + valid = self.verif_type(val=v,cr=cr)*self.verif_into(cr=cr)*self.verif_card(cr=cr) + # + # On verifie les validateurs s'il y en a + # + if self.definition.validators and not self.definition.validators.verif(self.valeur): + if cr == 'oui' : + self.cr.fatal(string.join(("Mot-clé : ",self.nom,"devrait avoir ",self.definition.validators.info()))) + valid=0 + # fin des validateurs + # self.valid = valid self.state = 'unchanged' # Si la validité du mot clé a changé, on le signale à l'objet parent - if old_valid: - if old_valid != self.valid : self.init_modif_up() + if not old_valid or old_valid != self.valid : + self.init_modif_up() return self.valid def isoblig(self): @@ -127,18 +136,15 @@ class MCSIMP: def verif_type(self,val=None,cr='non'): """ FONCTION : - Cette méthode a plusieurs modes de fonctionnement liés à la valeur de val et de cr. - Si cr ne vaut pas 'oui' : elle ne remplit pas le compte-rendu self.cr - Si val vaut None, elle vérifie le type de self.valeur - Si val ne vaut pas None, elle vérifie le type de val + Cette methode verifie que le type de l'argument val est en conformite avec celui + qui est declare dans la definition du mot cle simple. + Elle a plusieurs modes de fonctionnement liés à la valeur de cr. + Si cr vaut 'oui' : elle remplit le compte-rendu self.cr sinon elle ne le remplit pas. PARAMETRE DE RETOUR : - Cette méthode retourne une valeur booléenne qui vaut 1 si le type est correct ou 0 sinon + Cette méthode retourne une valeur booléenne qui vaut 1 si le type de val est correct ou 0 sinon """ - if val != None: - valeur = val - else: - valeur = self.valeur + valeur = val if valeur == None : if cr == 'oui': self.cr.fatal("None n'est pas une valeur autorisée") @@ -235,6 +241,9 @@ class MCSIMP: else: print "Objet non reconnu dans is_complexe %s" %`valeur` return 0 + # Pour permettre l'utilisation de complexes Python + #elif type(valeur) == types.ComplexType: + #return 1 elif type(valeur) != types.TupleType : return 0 else: diff --git a/Validation/V_PROC_ETAPE.py b/Validation/V_PROC_ETAPE.py index 7b6b798a..53f31b47 100644 --- a/Validation/V_PROC_ETAPE.py +++ b/Validation/V_PROC_ETAPE.py @@ -61,29 +61,17 @@ class PROC_ETAPE(V_ETAPE.ETAPE): if self.state == 'unchanged' : return self.valid else: - valid = 1 - if hasattr(self,'valid'): - old_valid = self.valid - else: - old_valid = None - # on teste les enfants - for child in self.mc_liste : - if not child.isvalid(): - valid = 0 - break - # on teste les règles de self - text_erreurs,test_regles = self.verif_regles() - if not test_regles : - if cr == 'oui' : self.cr.fatal(string.join(("Règle(s) non respectée(s) :", text_erreurs))) - valid = 0 + valid=self.valid_child() + + valid=valid * self.valid_regles(cr) + if self.reste_val != {}: if cr == 'oui' : self.cr.fatal("Mots cles inconnus :" + string.join(self.reste_val.keys(),',')) valid=0 - self.valid = valid - self.state = 'unchanged' - if old_valid: - if old_valid != self.valid : self.init_modif_up() + + self.set_valid(valid) + return self.valid