From: Pascale Noyret Date: Fri, 28 Nov 2008 16:53:33 +0000 (+0000) Subject: coherence 9.3.23 X-Git-Tag: V0_a1_SEPQT4~58 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=2022693cae6a113d5b0bdc55a9589115a1018fe4;p=tools%2Feficas.git coherence 9.3.23 --- diff --git a/Aster/Cata/cataSTA9/Macro/creation_donnees_homard.py b/Aster/Cata/cataSTA9/Macro/creation_donnees_homard.py index 115448c8..b3e19a1e 100644 --- a/Aster/Cata/cataSTA9/Macro/creation_donnees_homard.py +++ b/Aster/Cata/cataSTA9/Macro/creation_donnees_homard.py @@ -1,4 +1,4 @@ -#@ MODIF creation_donnees_homard Macro DATE 11/12/2007 AUTEUR GNICOLAS G.NICOLAS +#@ MODIF creation_donnees_homard Macro DATE 06/10/2008 AUTEUR GNICOLAS G.NICOLAS # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -21,7 +21,7 @@ """ Cette classe crée le fichier de configuration permettant de lancer HOMARD depuis Code_Aster. """ -__revision__ = "V1.3" +__revision__ = "V1.4" __all__ = [ ] import os @@ -181,8 +181,8 @@ class creation_donnees_homard: # 5. Les entrées/sorties au format HOMARD # if self.mode_homard == "ADAP" : - self.fic_homard_niter = "M_" + self.str_niter + ".hom" - self.fic_homard_niterp1 = "M_" + self.str_niterp1 + ".hom" + self.fic_homard_niter = "M_" + self.str_niter + ".hom.med" + self.fic_homard_niterp1 = "M_" + self.str_niterp1 + ".hom.med" else : self.fic_homard_niter = None self.fic_homard_niterp1 = None @@ -367,7 +367,7 @@ class creation_donnees_homard: # # 3. Les fichiers externes # - self.ecrire_ligne_configuration_0("Les fichiers au format MED") + self.ecrire_ligne_configuration_0("Les fichiers de Code_Aster, au format MED") self.ecrire_ligne_configuration_2("CCNoMN__", self.CCNoMN__) self.ecrire_ligne_configuration_2("CCMaiN__", self.dico_configuration["Fichier_ASTER_vers_HOMARD"]) if self.mode_homard == "ADAP" : @@ -379,7 +379,7 @@ class creation_donnees_homard: # # 4. Les fichiers HOMARD # - self.ecrire_ligne_configuration_0("Les fichiers au format HOMARD") + self.ecrire_ligne_configuration_0("Les fichiers de HOMARD, au format MED") if self.mode_homard == "ADAP" : self.ecrire_ligne_configuration_3("HOMaiN__", "M_"+self.str_niter , self.fic_homard_niter ) self.ecrire_ligne_configuration_3("HOMaiNP1", "M_"+self.str_niterp1, self.fic_homard_niterp1) diff --git a/Aster/Cata/cataSTA9/Macro/dyna_iss_vari_ops.py b/Aster/Cata/cataSTA9/Macro/dyna_iss_vari_ops.py index 9ab71c5c..670e4fa4 100644 --- a/Aster/Cata/cataSTA9/Macro/dyna_iss_vari_ops.py +++ b/Aster/Cata/cataSTA9/Macro/dyna_iss_vari_ops.py @@ -1,4 +1,4 @@ -#@ MODIF dyna_iss_vari_ops Macro DATE 21/04/2008 AUTEUR ZENTNER I.ZENTNER +#@ MODIF dyna_iss_vari_ops Macro DATE 05/09/2008 AUTEUR COURTOIS M.COURTOIS # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== diff --git a/Aster/Cata/cataSTA9/Macro/exec_logiciel_ops.py b/Aster/Cata/cataSTA9/Macro/exec_logiciel_ops.py index ad19d219..964c2600 100644 --- a/Aster/Cata/cataSTA9/Macro/exec_logiciel_ops.py +++ b/Aster/Cata/cataSTA9/Macro/exec_logiciel_ops.py @@ -1,4 +1,4 @@ -#@ MODIF exec_logiciel_ops Macro DATE 19/05/2008 AUTEUR COURTOIS M.COURTOIS +#@ MODIF exec_logiciel_ops Macro DATE 21/10/2008 AUTEUR COURTOIS M.COURTOIS # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -18,6 +18,8 @@ # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== +# RESPONSABLE COURTOIS M.COURTOIS + import os.path import traceback import shutil @@ -112,14 +114,22 @@ def exec_logiciel_ops(self, LOGICIEL, ARGUMENT, MAILLAGE, CODE_RETOUR_MAXI, INFO if mode_lancement == CMD_EXTERNE: scmd = cmd % d_para comment = "Lancement de la commande :\n%s" % scmd - iret, output = ExecCommand(scmd, - alt_comment=comment) - # écrire l'output dans le .mess si demandé - if INFO == 2: - aster.affiche('MESSAGE', output) + iret, output, error = ExecCommand(scmd, alt_comment=comment, verbose=False, + capturestderr=True, separated_stderr=True) + erreur = iret > CODE_RETOUR_MAXI + + # output + if INFO > 0 or erreur: + UTMESS('I', 'EXECLOGICIEL0_11', vali=(iret, CODE_RETOUR_MAXI)) + UTMESS('I', 'EXECLOGICIEL0_9', valk=output) + + # en cas d'erreur, on dump tout dans le .resu + .erre + if INFO == 2 or erreur: + UTMESS('I', 'EXECLOGICIEL0_8', valk=scmd, print_as='E') + UTMESS('I', 'EXECLOGICIEL0_10', valk=error, print_as='E') - if CODE_RETOUR_MAXI >= 0 and iret > CODE_RETOUR_MAXI: - UTMESS('F', 'EXECLOGICIEL0_3', vali=[CODE_RETOUR_MAXI,iret]) + if erreur: + UTMESS('F', 'EXECLOGICIEL0_3', vali=[CODE_RETOUR_MAXI, iret]) #---------------------------------------------- # 3b. Exécution d'un fichier Python diff --git a/Aster/Cata/cataSTA9/Macro/macr_adap_mail_ops.py b/Aster/Cata/cataSTA9/Macro/macr_adap_mail_ops.py index 276e72b6..14874e19 100644 --- a/Aster/Cata/cataSTA9/Macro/macr_adap_mail_ops.py +++ b/Aster/Cata/cataSTA9/Macro/macr_adap_mail_ops.py @@ -1,4 +1,4 @@ -#@ MODIF macr_adap_mail_ops Macro DATE 11/12/2007 AUTEUR GNICOLAS G.NICOLAS +#@ MODIF macr_adap_mail_ops Macro DATE 24/11/2008 AUTEUR GNICOLAS G.NICOLAS # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -32,57 +32,65 @@ def macr_adap_mail_ops ( self, """ # # 1. args est le dictionnaire des arguments -# args.keys() est la liste des mots-clés +# args.keys() est la liste des mots-cles # 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. +# args.keys(mot_cle) represente 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. +# 2. Les caracteristiques d'un passage sont conservees dans un dictionnaire. Il y a autant de +# dictionnaires que de sollicitations pour une serie d'adaptation. L'ensemble de ces dictionnaires +# est conserve dans la liste Liste_Passages. Cette liste est necessairement globale pour pouvoir +# la retrouver e 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_global"] = o ; string ; Nom global du répertoire de calcul pour HOMARD -# dico["Rep_Calc_HOMARD_local"] = o ; string ; Nom local du répertoire de calcul pour HOMARD -# depuis le répertoire de calcul pour ASTER -# 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é +# dico["Maillage_0"] = o ; string ; nom du concept du maillage initial de la serie d'adaptation +# dico["Maillage_NP1"] = o ; string ; nom du concept du dernier maillage adapte +# dico["Rep_Calc_HOMARD_global"] = o ; string ; Nom global du repertoire de calcul pour HOMARD +# dico["Rep_Calc_HOMARD_local"] = o ; string ; Nom local du repertoire de calcul pour HOMARD +# depuis le repertoire de calcul pour ASTER +# dico["niter"] = o ; entier ; numero d'iteration +# +# 3. Les caracteristiques d'un maillage sont conservees dans un dictionnaire. Il y a autant de +# dictionnaires que de maillages manipules. L'ensemble de ces dictionnaires est conserve # dans la liste liste_maillages. # Description du dictionnaire de maillages : # dico["Type_Maillage"] = o ; string ; "MAILLAGE_N", "MAILLAGE_NP1", "MAILLAGE_NP1_ANNEXE" ou "MAILLAGE_FRONTIERE" -# dico["Nom_ASTER"] = o ; concept ASTER associé +# dico["Nom_ASTER"] = o ; concept ASTER associe # 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é +# 4. Les caracteristiques d'un champ sont conservees dans un dictionnaire. Il y a autant de +# dictionnaires que de champs manipules. L'ensemble de ces dictionnaires est conserve # dans la liste liste_champs. # Description du dictionnaire de champs : # dico["Type_Champ"] = o ; string ; "INDICATEUR" ou "CHAMP_MAJ" -# dico["RESULTAT"] = f ; concept ASTER du résutat associé +# dico["RESULTAT"] = f ; concept ASTER du resutat associe # dico["NOM_CHAM"] = f ; string ; Nom ASTER du champ -# dico["CHAM_GD"] = f ; concept ASTER du champ de grandeur associée +# dico["CHAM_GD"] = f ; concept ASTER du champ de grandeur associee # dico["COMPOSANTE"] = f ; string ; Nom ASTER de la composante (dans le cas de l'indicateur) -# dico["NUME_ORDRE"] = f ; entier ; Numéro d'ordre du champ +# dico["NUME_ORDRE"] = f ; entier ; Numero 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["PRECISION"] = f ; entier ; Precision sur l'instant du champ +# dico["CRITERE"] = f ; entier ; Critere de precision sur l'instant du champ +# dico["CHAM_MAJ"] = f ; string ; Nom ASTER du champ interpole sur le nouveau maillage # dico["NOM_MED"] = o ; string ; Nom MED du champ -# dico["SENSIBILITE"] = f ; string ; Nom du paramètre sensible associé +# dico["SENSIBILITE"] = f ; string ; Nom du parametre sensible associe +# +# 5. Signification de INFO +# INFO = 1 : aucun message +# INFO = 2 : les messages des commandes annexes (DEFI_FICHIER, IMPR_RESU, LIRE_MAILLAGE, LIRE_CHAMP) +# INFO = 3 : aucun message pour les commandes annexes +# 1er niveau de message pour l'execution de HOMARD +# INFO = 4 : aucun message pour les commandes annexes +# 2nd niveau de message pour l'execution de HOMARD # from Accas import _F from Macro import creation_donnees_homard - from Utilitai.Utmess import UTMESS + from Utilitai.Utmess import UTMESS, MasquerAlarme, RetablirAlarme import aster import string import os @@ -91,14 +99,14 @@ def macr_adap_mail_ops ( self, global Liste_Passages # #==================================================================== -# 1. Préalables +# 1. Prealables #==================================================================== # # 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 +# 1.2. ==> Numero du passage dans cette macro # try : self.jdc.indice_macro_homard = self.jdc.indice_macro_homard + 1 @@ -116,7 +124,7 @@ def macr_adap_mail_ops ( self, LIRE_MAILLAGE = self.get_cmd("LIRE_MAILLAGE") LIRE_CHAMP = self.get_cmd("LIRE_CHAMP") # -# 1.4. ==> Le nom du programme HOMARD à lancer +# 1.4. ==> Le nom du programme HOMARD e lancer # repertoire_outils = aster.repout() homard = repertoire_outils + "homard" @@ -132,11 +140,18 @@ def macr_adap_mail_ops ( self, dico_indi = {} # LISTE_ADAPTATION_LIBRE = ("RAFF_DERA" , "RAFFINEMENT" , "DERAFFINEMENT") +# + if ( INFO == 2 ) : + infomail = "OUI" + infocomm = 2 + else : + infomail = "NON" + infocomm = 1 # #==================================================================== -# 2. Décodage des arguments de la macro-commande +# 2. Decodage des arguments de la macro-commande #==================================================================== -# 2.1. ==> Données de pilotage de l'adaptation +# 2.1. ==> Donnees de pilotage de l'adaptation # if ( self.nom == "MACR_ADAP_MAIL" ) : # @@ -162,7 +177,7 @@ def macr_adap_mail_ops ( self, #gn print "dico = ",dico liste_maillages.append(dico) # -# 2.1.2. ==> L'éventuel indicateur d'erreur +# 2.1.2. ==> L'eventuel indicateur d'erreur # #gn print "\n.. Debut de 2.1.2" #gn print "args = ", args @@ -203,7 +218,7 @@ def macr_adap_mail_ops ( self, dico_indi = dico ### print dico # -# 2.1.3. ==> Les champs à mettre à jour +# 2.1.3. ==> Les champs e mettre e jour # #gn print "\n.. Debut de 2.1.3." # @@ -277,7 +292,7 @@ def macr_adap_mail_ops ( self, # ### print liste_zones # -# 2.2. ==> Données de pilotage de l'information +# 2.2. ==> Donnees de pilotage de l'information # else : # @@ -289,7 +304,7 @@ def macr_adap_mail_ops ( self, dico["Action"] = "A_ecrire" liste_maillages.append(dico) # -# 2.3. ==> Suivi de frontière +# 2.3. ==> Suivi de frontiere # #gn print "\n.. Debut de 2.3." # @@ -301,8 +316,8 @@ def macr_adap_mail_ops ( self, dico["Action"] = "A_ecrire" liste_maillages.append(dico) # -# 2.4. ==> Le numéro de version de HOMARD -# Remarque : dans la donnée de la version de HOMARD, il faut remplacer +# 2.4. ==> Le numero de version de HOMARD +# Remarque : dans la donnee 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 @@ -322,14 +337,14 @@ def macr_adap_mail_ops ( self, #gn print ".... version_perso = ", version_perso # #==================================================================== -# 3. Préparation du lancement des commandes +# 3. Preparation 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) +# . Memorisation des noms ASTER du maillage en entree 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. +# On cree une nouvelle liste des dictionnaires decrivant les maillages +# et e la fin on ecrase l'ancienne liste par cette nouvelle. # #gn print "\n.. Debut de 3.1." # @@ -349,12 +364,12 @@ def macr_adap_mail_ops ( self, #gn print "\ndico apres = ",dico liste_maillages = l_aux # -# 3.2. ==> Recherche du numéro d'itération et du répertoire de travail +# 3.2. ==> Recherche du numero d'iteration et du repertoire 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 +# 3.2.1. ==> Par defaut : +# . le numero d'iteration est nul +# . le nom du repertoire de lancement de HOMARD est construit sur le nom +# du maillage en entree et le numero de passage dans la fonction # #gn print "\.. Debut de 3.2.1." # @@ -365,17 +380,17 @@ def macr_adap_mail_ops ( self, ### print "Rep_Calc_HOMARD_local = ", Rep_Calc_HOMARD_local ### print "Rep_Calc_HOMARD_global = ", Rep_Calc_HOMARD_global # -# 3.2.2. ==> En adaptation : il faut repartir du répertoire de l'itération précédente +# 3.2.2. ==> En adaptation : il faut repartir du repertoire de l'iteration precedente # #gn print "\.. Debut de 3.2.2." # if ( mode_homard == "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 +# 3.2.2.1. ==> On recherche si dans les passages deje effectues, il en existe un +# dont le maillage d'arrivee etait l'actuel maillage d'entree. 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. +# precedente. On doit donc utiliser le meme repertoire. Le numero +# d'iteration est celui de l'adaptation precedente augmente de 1. # #gn print "\.. Debut de 3.2.2.1." # @@ -415,7 +430,7 @@ def macr_adap_mail_ops ( self, # ### print "niter = ", niter, ", Rep_Calc_HOMARD_global = ", Rep_Calc_HOMARD_global # -# 3.2.3. Création du répertoire pour homard +# 3.2.3. Creation du repertoire pour homard # attention : on ne fait cette creation qu'une seule fois par cas # d'adaptation ou d'information # @@ -435,21 +450,16 @@ def macr_adap_mail_ops ( self, # #gn print "\.. Debut de 4." # -# On doit écrire : le maillage, +# On doit ecrire : le maillage, # le champ d'indicateur d'erreur -# les champs à convertir +# les champs e 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" +# Chacune de ces ecritures est optionnelle selon le contexte. # -# 4.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 +# 4.1. ==> Noms des fichiers d'ASTER vers HOMARD et eventuellement de HOMARD vers ASTER +# Remarque : aujourd'hui, les ecritures ou les lectures au format MED se font obligatoirement sur +# un fichier de nom fort.n, place dans le repertoire de calcul ## # 4.1.1. ==> D'ASTER vers HOMARD # @@ -464,20 +474,20 @@ def macr_adap_mail_ops ( self, fichier_homard_vers_aster = os.path.join(Rep_Calc_ASTER,"fort." + str(unite_fichier_homard_vers_aster)) ### print "fichier_homard_vers_aster = ",fichier_homard_vers_aster # -# 4.2. La définition du fichier de ASTER vers HOMARD +# 4.2. La definition du fichier de ASTER vers HOMARD # DEFI_FICHIER ( ACTION= "ASSOCIER", UNITE = unite_fichier_aster_vers_homard, TYPE = "LIBRE", - INFO = INFO ) + INFO = infocomm ) # # 4.3. Le(s) maillage(s) -# Le maillage de calcul et l'éventuel maillage de la frontiere sont écrits +# Le maillage de calcul et l'eventuel maillage de la frontiere sont ecrits # 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. +# En fait, on pourrait s'en passer au dela de la 1ere iteration +# car HOMARD a memorise. Mais des que l'on ecrit un champ, +# les conventions MED imposent la presence du maillage dans le fichier. +# Donc on va toujours ecrire. # for dico in liste_maillages : if ( dico["Action"] == "A_ecrire" ) : @@ -487,32 +497,32 @@ def macr_adap_mail_ops ( self, motscfa["RESU"] = _F( INFO_MAILLAGE=infomail, **motscsi ) # - IMPR_RESU ( INFO = INFO, + IMPR_RESU ( INFO = infocomm, FORMAT ='MED', UNITE = unite_fichier_aster_vers_homard, **motscfa ) # # 4.4. Le(s) champ(s) -# Attention : il se peut que l'on demande la mise à jour du champ qui a servi comme +# Attention : il se peut que l'on demande la mise e jour du champ qui a servi comme # indicateur d'erreur. Si c'est le cas, il ne faut pas demander son # impression sinon il y a plantage d'IMPR_RESU qui ne sait pas substituer -# deux champs. D'ailleurs, c'est plus économique ainsi ! +# deux champs. D'ailleurs, c'est plus economique ainsi ! # Remarque : pour l'adaptation, on ne demande a priori qu'une composante du champ d'indicateur. -# s'il y a demande de mise à jour, toutes les composantes sont concernées. Il faut +# s'il y a demande de mise e jour, toutes les composantes sont concernees. Il faut # donc dans ce cas imprimer le champ total. # dico["Type_Champ"] = o ; string ; "INDICATEUR" ou "CHAMP_MAJ" -# dico["RESULTAT"] = f ; concept ASTER du résutat associé +# dico["RESULTAT"] = f ; concept ASTER du resutat associe # dico["NOM_CHAM"] = f ; string ; Nom ASTER du champ -# dico["CHAM_GD"] = f ; concept ASTER du champ de grandeur associée +# dico["CHAM_GD"] = f ; concept ASTER du champ de grandeur associee # dico["COMPOSANTE"] = f ; string ; Nom ASTER de la composante (dans le cas de l'indicateur) -# dico["NUME_ORDRE"] = f ; entier ; Numéro d'ordre du champ +# dico["NUME_ORDRE"] = f ; entier ; Numero 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["PRECISION"] = f ; entier ; Precision sur l'instant du champ +# dico["CRITERE"] = f ; entier ; Critere de precision sur l'instant du champ +# dico["CHAM_MAJ"] = f ; string ; Nom ASTER du champ interpole sur le nouveau maillage # dico["NOM_MED"] = o ; string ; Nom MED du champ -# dico["SENSIBILITE"] = f ; string ; Nom du paramètre sensible associé +# dico["SENSIBILITE"] = f ; string ; Nom du parametre sensible associe # -# 4.4.1. Recherche d'un doublon éventuel sur le champ d'indicateur d'erreur +# 4.4.1. Recherche d'un doublon eventuel sur le champ d'indicateur d'erreur # #gn print "dico_indi = ",dico_indi if len(dico_indi) > 0 : @@ -530,10 +540,10 @@ def macr_adap_mail_ops ( self, liste_champs_imprime = [] for dico in liste_champs : ### print "\n.... dico = ",dico -# Pour un champ à mettre à jour, on a toujours impression +# Pour un champ e mettre e jour, on a toujours impression if ( dico["Type_Champ"] == "CHAMP_MAJ" ) : liste_champs_imprime.append(dico) -# Si le champ d'indicateur n'a toujours pas été repéré comme champ à mettre à jour : +# Si le champ d'indicateur n'a toujours pas ete repere comme champ e mettre e jour : if not indic_est_deja_imprime : # Est-ce le meme champ ? on_a_le_champ = 1 @@ -559,9 +569,9 @@ def macr_adap_mail_ops ( self, else : on_a_le_champ = 0 break -# Si oui, est-ce au meme moment ? (remarque : si rien n'est désigné, c'est qu'il n'y a qu'un -# seul instant ... donc c'est le meme ! En revanche, on ne sait pas comparer une donnée -# en numéro d'ordre et une donnée en instant. On croise les doigts.) +# Si oui, est-ce au meme moment ? (remarque : si rien n'est designe, c'est qu'il n'y a qu'un +# seul instant ... donc c'est le meme ! En revanche, on ne sait pas comparer une donnee +# en numero d'ordre et une donnee en instant. On croise les doigts.) if on_a_le_champ : for cle in [ "NUME_ORDRE", "INST" ] : if dico.has_key(cle) : @@ -573,12 +583,12 @@ def macr_adap_mail_ops ( self, if on_a_le_champ : indic_est_deja_imprime = 1 ### print "\n\nFin de la boucle .. indic_est_deja_imprime = ",indic_est_deja_imprime -# Si le champ d'indicateur n'a pas été repéré comme champ à mettre à jour, il faut -# l'inclure dans les champs à imprimer +# Si le champ d'indicateur n'a pas ete repere comme champ e mettre e jour, il faut +# l'inclure dans les champs e imprimer if not indic_est_deja_imprime : liste_champs_imprime.append(dico_indi) # -# 4.4.2. Impressions après le filtrage précédent +# 4.4.2. Impressions apres le filtrage precedent #gn print "\n.... Debut de 4.2.4.2." # for dico in liste_champs_imprime : @@ -597,19 +607,19 @@ def macr_adap_mail_ops ( self, ) #gn print ".. motscfa = ",motscfa # - IMPR_RESU ( INFO = INFO, + IMPR_RESU ( INFO = infocomm, FORMAT ='MED', UNITE = unite_fichier_aster_vers_homard, **motscfa ) # #==================================================================== -# 5. ==> Création des fichiers de données pour HOMARD +# 5. ==> Creation des fichiers de donnees pour HOMARD #==================================================================== # #gn print "\.. Debut de 5." # dico_configuration = {} # -# 5.1. ==> Les généralités +# 5.1. ==> Les generalites # dico_configuration["INFO"] = INFO # @@ -629,7 +639,7 @@ def macr_adap_mail_ops ( self, dico_configuration[ "NOM_MED_"+dico["Type_Maillage"] ] = dico["NOM_MED"] #gn print dico_configuration # -# 5.3. ==> Les caracteristiques de l'éventuel indicateur d'erreur +# 5.3. ==> Les caracteristiques de l'eventuel indicateur d'erreur # for dico in liste_champs : dico_aux = {} @@ -644,7 +654,7 @@ def macr_adap_mail_ops ( self, #gn if dico_configuration.has_key("Indicateur") : #gn print "dico_configuration[Indicateur] = ", dico_configuration["Indicateur"] # -# 5.4. ==> Les éventuelles zones de raffinement +# 5.4. ==> Les eventuelles zones de raffinement # prem = 1 for dico in liste_zones : @@ -658,7 +668,7 @@ def macr_adap_mail_ops ( self, ### if dico_configuration.has_key("Zones") : ### print "dico_configuration[Zones] = ", dico_configuration["Zones"] # -# 5.5. ==> La mise à jour de champs +# 5.5. ==> La mise e jour de champs # prem = 1 for dico in liste_champs : @@ -685,10 +695,10 @@ def macr_adap_mail_ops ( self, #gn if dico_configuration.has_key("Champs") : #gn print "dico_configuration[Champs] = ", dico_configuration["Champs"] # -# 5.6. ==> Appel de la fonction de création +# 5.6. ==> Appel de la fonction de creation # donnees_homard = creation_donnees_homard.creation_donnees_homard ( self.nom, args, dico_configuration ) - if ( INFO > 1 ) : + if ( INFO >= 4 ) : donnees_homard.quel_mode ( ) fic_homard_niter, fic_homard_niterp1 = donnees_homard.creation_configuration ( ) donnees_homard.ecrire_fichier_configuration ( ) @@ -697,11 +707,11 @@ def macr_adap_mail_ops ( self, else : Nom_Fichier_Donnees = "0" # -# 5.7. ==> Impression eventuelle des fichiers créés +# 5.7. ==> Impression eventuelle des fichiers crees # -#gn print "Répertoire ",Rep_Calc_HOMARD_global +#gn print "Repertoire ",Rep_Calc_HOMARD_global #gn os.system("ls -la "+Rep_Calc_HOMARD_global) - if ( INFO > 1 ) : + if ( INFO >= 4 ) : l_aux = ["HOMARD.Donnees" , "HOMARD.Configuration"] else : l_aux = [ ] @@ -723,21 +733,25 @@ def macr_adap_mail_ops ( self, #gn time.sleep(3600) # #==================================================================== -# 6. Ecriture de la commande d'exécution de homard +# 6. Ecriture de la commande d'execution de homard #==================================================================== # # #gn print "\.. Debut de 6." +#gn os.system("cp " + Rep_Calc_HOMARD_global + "/../fort.17* $HOME/aster") +#gn os.system("cp " + Rep_Calc_HOMARD_global + "/HOMARD.Configuration $HOME/aster/HOMARD.Configuration"+str(niter)) #gn fichier_aster_vers_homard_2 = os.path.join("/tmp" , "fort." + str(unite_fichier_aster_vers_homard)) #gn shutil.copyfile(fichier_aster_vers_homard, fichier_aster_vers_homard_2) # + iaux = INFO EXEC_LOGICIEL ( ARGUMENT = (Rep_Calc_HOMARD_global, # nom du repertoire VERSION_HOMARD, # version de homard - str(INFO), # niveau d information - Nom_Fichier_Donnees, # fichier de données HOMARD + str(iaux), # niveau d information + Nom_Fichier_Donnees, # fichier de donnees HOMARD str(version_perso), # version personnelle de homard ? ), - LOGICIEL = homard + LOGICIEL = homard, + INFO = INFO, ) #gn import time #gn time.sleep(3600) @@ -755,26 +769,33 @@ def macr_adap_mail_ops ( self, # Remarque : # La fonction self.DeclareOut(a,b) fonctionne 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 variable locale qui sera désignée par a +# b est la variable declaree dans la commande +# le but est de associer le contenu de b e la variable locale qui sera designee par a # Exemple : # self.DeclareOut("maillage_a_lire",args["MAILLAGE_NP1"]) -# ==> la variable maillage_a_lire est identifiée à l'argument "MAILLAGE_NP1" +# ==> la variable maillage_a_lire est identifiee e l'argument "MAILLAGE_NP1" #==================================================================== # if ( mode_homard == "ADAP" ) : # # 7.1. ==> Le maillage +# On inhibe l'alarme MODELISA5_49 qui apparait car on fait VERIF=NON # #gn print "args = ",args for dico in liste_maillages : #gn print dico if ( dico["Action"] == "A_lire" ) : +# + MasquerAlarme('MODELISA5_49') +# self.DeclareOut("maillage_a_lire", dico["Nom_ASTER"]) maillage_a_lire = 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 ) + VERI_MAIL = _F(VERIF="NON"), INFO_MED = infocomm, INFO = infocomm ) +# + RetablirAlarme('MODELISA5_49') +# #gn print "MAILLAGE = ",maillage_a_lire #gn print "NOM_MED = ",dico["NOM_MED"] if ( dico["Type_Maillage"] == "MAILLAGE_NP1" ) : @@ -803,12 +824,12 @@ def macr_adap_mail_ops ( self, champ_maj = LIRE_CHAMP ( UNITE = unite_fichier_homard_vers_aster, FORMAT = "MED", MAILLAGE = maillage_np1, NOM_MAIL_MED=maillage_np1_nom_med, NOM_MED = dico["NOM_MED"], NOM_CMP_IDEM = "OUI", TYPE_CHAM = dico["TYPE_CHAM"], - INFO = INFO, **motscsi ) + INFO = infocomm, **motscsi ) # #==================================================================== # 8. Menage des fichiers devenus inutiles # On doit imperativement garder le dernier fichier homard produit -# En mode d'information, on garde également les fichiers textes +# En mode d'information, on garde egalement les fichiers textes #==================================================================== # liste_aux = [fichier_aster_vers_homard] @@ -821,10 +842,11 @@ def macr_adap_mail_ops ( self, liste_aux.append(fichier_homard_vers_aster) fic = os.path.join(Rep_Calc_HOMARD_global, fic_homard_niterp1) liste_aux_bis.append(fic) +#gn os.system("cp " + Rep_Calc_HOMARD_global + "/* $HOME/aster") # for fic in liste_aux : if fic not in liste_aux_bis : - if ( INFO > 1 ) : + if ( INFO >= 3 ) : print "Destruction du fichier ", fic if os.path.isfile(fic) : try : @@ -832,19 +854,19 @@ def macr_adap_mail_ops ( self, except os.error,codret_partiel : self.cr.warn("Code d'erreur de remove : " + str(codret_partiel[0]) + " : " + codret_partiel[1]) UTMESS("F",'HOMARD0_5',valk=fic) -#gn print "Répertoire ",Rep_Calc_HOMARD_global +#gn print "Repertoire ",Rep_Calc_HOMARD_global #gn os.system("ls -la "+Rep_Calc_HOMARD_global) -#gn print "Répertoire ",Rep_Calc_ASTER +#gn print "Repertoire ",Rep_Calc_ASTER #gn os.system("ls -la "+Rep_Calc_ASTER) #gn print os.listdir(Rep_Calc_HOMARD_global) -#gn print "glop :", Rep_Calc_HOMARD_global # #==================================================================== # C'est fini ! #==================================================================== # -#gn if ( mode_homard == "ADAP" ) : -#gn import time -#gn time.sleep(3600) +### if ( mode_homard == "ADAP" and niter == 3 ) : +### if ( niter == 2 ) : +### import time +### time.sleep(3600) # return diff --git a/Aster/Cata/cataSTA9/Macro/macr_cara_poutre_ops.py b/Aster/Cata/cataSTA9/Macro/macr_cara_poutre_ops.py index 9415a2e9..30fc9ad8 100644 --- a/Aster/Cata/cataSTA9/Macro/macr_cara_poutre_ops.py +++ b/Aster/Cata/cataSTA9/Macro/macr_cara_poutre_ops.py @@ -1,25 +1,25 @@ -#@ MODIF macr_cara_poutre_ops Macro DATE 16/10/2007 AUTEUR REZETTE C.REZETTE +#@ MODIF macr_cara_poutre_ops Macro DATE 30/06/2008 AUTEUR FLEJOU J-L.FLEJOU # -*- coding: iso-8859-1 -*- # 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. +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE 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 macr_cara_poutre_ops(self,UNITE_MAILLAGE,SYME_X,SYME_Y,GROUP_MA_BORD, +def macr_cara_poutre_ops(self,MAILLAGE,SYME_X,SYME_Y,GROUP_MA_BORD, GROUP_MA,ORIG_INER,**args): """ Ecriture de la macro MACR_CARA_POUTRE @@ -55,15 +55,15 @@ def macr_cara_poutre_ops(self,UNITE_MAILLAGE,SYME_X,SYME_Y,GROUP_MA_BORD, # La macro compte pour 1 dans la numerotation des commandes self.set_icmd(1) - # Le concept sortant (de type table_sdaster) est nommé 'nomres' dans - # le contexte de la macro - + # Le concept sortant (de type table_sdaster) est nommé 'nomres' dans le contexte de la macro self.DeclareOut('nomres',self.sd) - -# if GROUP_MA_BORD and GROUP_MA: -# if not LIAISON: -# - __nomlma=LIRE_MAILLAGE(UNITE=UNITE_MAILLAGE,) + # + if ( MAILLAGE != None ): + __nomlma=CREA_MAILLAGE(MAILLAGE=MAILLAGE) + elif ( args.has_key('UNITE') and args.has_key('FORMAT') ): + __nomlma=LIRE_MAILLAGE(UNITE=args['UNITE'],FORMAT=args['FORMAT']) + else: + assert False, "Erreur dans les options UNITE, FORMAT, MAILLAGE" __nomamo=AFFE_MODELE(MAILLAGE=__nomlma, AFFE=_F(TOUT='OUI', @@ -98,7 +98,7 @@ def macr_cara_poutre_ops(self,UNITE_MAILLAGE,SYME_X,SYME_Y,GROUP_MA_BORD, # --- = OU DU CENTRE DE TORSION/CISAILLEMENT = # --- = DES COEFFICIENTS DE CISAILLEMENT = # --- = ET DE L INERTIE DE GAUCHISSEMENT = -# --- = DU RAYON DE TORSION SUR TOUT LE MAILLAGE +# --- = DU RAYON DE TORSION SUR TOUT LE MAILLAGE # --- = ON CREE UN MODELE PLAN 2D THERMIQUE REPRESENTANT LA SECTION = # --- = DE LA POUTRE CAR ON A A RESOUDRE DES E.D.P. AVEC DES LAPLACIENS= # ================================================================== @@ -118,7 +118,7 @@ def macr_cara_poutre_ops(self,UNITE_MAILLAGE,SYME_X,SYME_Y,GROUP_MA_BORD, __nomlma=DEFI_GROUP(reuse=__nomlma, MAILLAGE=__nomlma, **motscles) - + # --- CREATION D UN MAILLAGE IDENTIQUE AU PREMIER A CECI PRES @@ -194,7 +194,7 @@ def macr_cara_poutre_ops(self,UNITE_MAILLAGE,SYME_X,SYME_Y,GROUP_MA_BORD, motscles={} motscles['FLUX_REP']=[] - + if type(lgmaint)==types.StringType: motscles['FLUX_REP']=_F(GROUP_MA=args['GROUP_MA_INTE'],CARA_TORSION=__tbaire) else: @@ -264,7 +264,7 @@ def macr_cara_poutre_ops(self,UNITE_MAILLAGE,SYME_X,SYME_Y,GROUP_MA_BORD, __tempe2=THER_LINEAIRE(MODELE=__nomoth, CHAM_MATER=__chmath, - EXCIT=_F(CHARGE=__chart2,), + EXCIT=_F(CHARGE=__chart2,), SOLVEUR=_F(STOP_SINGULIER='NON',), ) @@ -305,7 +305,7 @@ def macr_cara_poutre_ops(self,UNITE_MAILLAGE,SYME_X,SYME_Y,GROUP_MA_BORD, __tempe3=THER_LINEAIRE(MODELE=__nomoth, CHAM_MATER=__chmath, - EXCIT=_F(CHARGE=__chart3,), + EXCIT=_F(CHARGE=__chart3,), SOLVEUR=_F(STOP_SINGULIER='NON',), ) @@ -337,10 +337,10 @@ def macr_cara_poutre_ops(self,UNITE_MAILLAGE,SYME_X,SYME_Y,GROUP_MA_BORD, __m1=abs(__flun['TRAC_NOR',3]) __m2=abs(__flun['TRAC_NOR',4]) __rtext=max(__m1,__m2) - + # CALCUL DU RAYON DE TORSION : rt # rt = max ( rtext , 2*AIRE(TROU)/L(TROU) ) - + if args.has_key('GROUP_MA_INTE'): if args['GROUP_MA_INTE'] != None : if type(args['GROUP_MA_INTE'])==types.StringType : @@ -363,7 +363,7 @@ def macr_cara_poutre_ops(self,UNITE_MAILLAGE,SYME_X,SYME_Y,GROUP_MA_BORD, __rtext=__m1 __rt=__rtext - + # --- CALCUL DE LA CONSTANTE DE TORSION : # --------------------------------- @@ -380,13 +380,13 @@ def macr_cara_poutre_ops(self,UNITE_MAILLAGE,SYME_X,SYME_Y,GROUP_MA_BORD, else: motscles['CARA_POUTRE']=_F(CARA_GEOM=__cageo, LAPL_PHI=__tempe1, - RT=__rt, + RT=__rt, TOUT='OUI', OPTION='CARA_TORSION', ) __cator=POST_ELEM(MODELE=__nomoth, CHAM_MATER=__chmath, **motscles ) - + # --- CALCUL DES COEFFICIENTS DE CISAILLEMENT ET DES COORDONNEES DU # --- CENTRE DE CISAILLEMENT/TORSION : @@ -399,7 +399,7 @@ def macr_cara_poutre_ops(self,UNITE_MAILLAGE,SYME_X,SYME_Y,GROUP_MA_BORD, LAPL_PHI_Z=__tempe3, TOUT='OUI', OPTION='CARA_CISAILLEMENT',), ) - + # # ------------------------------------------------------------ @@ -552,7 +552,7 @@ def macr_cara_poutre_ops(self,UNITE_MAILLAGE,SYME_X,SYME_Y,GROUP_MA_BORD, SOLVEUR=_F(METHODE='LDLT', RENUM='SANS', STOP_SINGULIER='NON',), ) - + # --- CALCUL DE L INERTIE DE GAUCHISSEMENT : # ------------------------------------- @@ -563,7 +563,7 @@ def macr_cara_poutre_ops(self,UNITE_MAILLAGE,SYME_X,SYME_Y,GROUP_MA_BORD, TOUT='OUI', OPTION='CARA_GAUCHI'), ) - + # # ================================================================== # --- = CALCUL DE LA CONSTANTE DE TORSION SUR CHAQUE GROUPE = @@ -755,7 +755,7 @@ def macr_cara_poutre_ops(self,UNITE_MAILLAGE,SYME_X,SYME_Y,GROUP_MA_BORD, CHAM_MATER=__chmath, EXCIT=_F(CHARGE=__chart3, ), SOLVEUR=_F(STOP_SINGULIER='NON',) ) - + # --- CALCUL DU RAYON DE TORSION : # -------------------------- @@ -804,16 +804,16 @@ def macr_cara_poutre_ops(self,UNITE_MAILLAGE,SYME_X,SYME_Y,GROUP_MA_BORD, NOM_CHAM='FLUX_ELNO_TEMP', TRAC_NOR='OUI', NOM_CMP=('FLUX','FLUY'), - OPERATION='MOYENNE')) + OPERATION='MOYENNE')) __m1=(abs(__flun['TRAC_NOR',3])+abs(__flun['TRAC_NOR',4]))/2. if __m1 > __rtext : __rtext=__m1 __rt=__rtext - + # --- CALCUL DE LA CONSTANTE DE TORSION : # --------------------------------- - + __catp1=POST_ELEM(MODELE=__nomoth, CHAM_MATER=__chmath, CARA_POUTRE=_F(CARA_GEOM=__catp2, diff --git a/Aster/Cata/cataSTA9/Macro/macr_lign_coupe_ops.py b/Aster/Cata/cataSTA9/Macro/macr_lign_coupe_ops.py index 36c901ab..fd7078e5 100644 --- a/Aster/Cata/cataSTA9/Macro/macr_lign_coupe_ops.py +++ b/Aster/Cata/cataSTA9/Macro/macr_lign_coupe_ops.py @@ -1,4 +1,4 @@ -#@ MODIF macr_lign_coupe_ops Macro DATE 07/04/2008 AUTEUR GALENNE E.GALENNE +#@ MODIF macr_lign_coupe_ops Macro DATE 07/10/2008 AUTEUR PELLET J.PELLET # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -602,7 +602,7 @@ def macr_lign_coupe_ops(self,RESULTAT,CHAM_GD,UNITE_MAILLAGE,LIGN_COUPE, from Noyau.N_utils import AsType import aster,math from Utilitai.UniteAster import UniteAster - from Utilitai.Utmess import UTMESS + from Utilitai.Utmess import UTMESS, MasquerAlarme, RetablirAlarme ier=0 # On importe les definitions des commandes a utiliser dans la macro @@ -618,6 +618,11 @@ def macr_lign_coupe_ops(self,RESULTAT,CHAM_GD,UNITE_MAILLAGE,LIGN_COUPE, # La macro compte pour 1 dans la numerotation des commandes self.set_icmd(1) + # + MasquerAlarme('CALCULEL2_63') + MasquerAlarme('CALCULEL2_64') + MasquerAlarme('MODELISA5_53') + mcORDR={} if RESULTAT != None: @@ -635,8 +640,8 @@ def macr_lign_coupe_ops(self,RESULTAT,CHAM_GD,UNITE_MAILLAGE,LIGN_COUPE, mcORDR['TOUT_ORDRE']='OUI' nomresu=RESULTAT.nom - l_modele=aster.getvectjev(nomresu.ljust(19)+'.MODL') - n_modele=string.strip(l_modele[0]) + iret,ibid,n_modele = aster.dismoi('F','MODELE',nomresu,'RESULTAT') + n_modele=n_modele.strip() if n_modele=='' : if MODELE==None: UTMESS('F','POST0_9',valk=nomresu) @@ -943,4 +948,7 @@ def macr_lign_coupe_ops(self,RESULTAT,CHAM_GD,UNITE_MAILLAGE,LIGN_COUPE, nomres=CREA_TABLE(**dprod) + RetablirAlarme('CALCULEL2_63') + RetablirAlarme('CALCULEL2_64') + RetablirAlarme('MODELISA5_53') return ier diff --git a/Aster/Cata/cataSTA9/Macro/macr_recal_ops.py b/Aster/Cata/cataSTA9/Macro/macr_recal_ops.py index e0fafb60..8edc4e40 100644 --- a/Aster/Cata/cataSTA9/Macro/macr_recal_ops.py +++ b/Aster/Cata/cataSTA9/Macro/macr_recal_ops.py @@ -1,4 +1,4 @@ -#@ MODIF macr_recal_ops Macro DATE 19/11/2007 AUTEUR COURTOIS M.COURTOIS +#@ MODIF macr_recal_ops Macro DATE 04/11/2008 AUTEUR ASSIRE A.ASSIRE # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -142,6 +142,18 @@ def macr_recal_externe( RESU_EXP, LIST_PARA, RESU_CALC, UNITE_ESCL=3, POIDS=None return fonctionnelle, gradient +# -------------------------------------------------------------------------------------------------- +def force_list(obj, typref=list): + """Retourne 'obj' sous forme d'une liste de 'typref'. + """ + if type(obj) not in (list, tuple): + assert type(obj) == typref, '%s != %s' % (type(obj), typref) + obj = [obj,] + elif len(obj) > 0: + elt = obj[0] + if type(elt) != typref: + obj = [obj,] + return obj # -------------------------------------------------------------------------------------------------- def macr_recal_ops(self,UNITE_ESCL, RESU_EXP, POIDS, LIST_PARA, LIST_DERIV, RESU_CALC, @@ -181,7 +193,7 @@ def macr_recal_ops(self,UNITE_ESCL, RESU_EXP, POIDS, LIST_PARA, LIST_DERIV, RESU self.current_context[k]= v self.current_context['_F']=cata.__dict__['_F'] - macr_recal(UNITE_ESCL, RESU_EXP, POIDS, LIST_PARA, LIST_DERIV, RESU_CALC, + macr_recal(UNITE_ESCL, force_list(RESU_EXP, Numeric.ArrayType), POIDS, force_list(LIST_PARA), LIST_DERIV, force_list(RESU_CALC), ITER_MAXI, ITER_FONC_MAXI, RESI_GLOB_RELA,UNITE_RESU,PARA_DIFF_FINI, GRAPHIQUE, SUIVI_ESCLAVE, METHODE, INFO, **args) diff --git a/Aster/Cata/cataSTA9/Macro/macro_expans_ops.py b/Aster/Cata/cataSTA9/Macro/macro_expans_ops.py index 276f086b..b0d92e23 100644 --- a/Aster/Cata/cataSTA9/Macro/macro_expans_ops.py +++ b/Aster/Cata/cataSTA9/Macro/macro_expans_ops.py @@ -1,21 +1,21 @@ -#@ MODIF macro_expans_ops Macro DATE 26/03/2008 AUTEUR BODEL C.BODEL +#@ MODIF macro_expans_ops Macro DATE 03/11/2008 AUTEUR PELLET J.PELLET # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2006 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE 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. # ====================================================================== @@ -45,17 +45,26 @@ def macro_expans_ops( self, import aster EXTR_MODE = self.get_cmd('EXTR_MODE') PROJ_MESU_MODAL = self.get_cmd('PROJ_MESU_MODAL') - REST_BASE_PHYS = self.get_cmd('REST_BASE_PHYS') + REST_GENE_PHYS = self.get_cmd('REST_GENE_PHYS') PROJ_CHAMP = self.get_cmd('PROJ_CHAMP') NORM_MODE = self.get_cmd('NORM_MODE') - - + + # La macro compte pour 1 dans la numerotation des commandes self.set_icmd(1) - NUME_MODE_NUM = MODELE_CALCUL['NUME_MODE'] - NUME_MODE_EXP = MODELE_MESURE['NUME_MODE'] - + is_nume_num = is_nume_exp = 0 + if MODELE_CALCUL['NUME_MODE'] or MODELE_CALCUL['NUME_ORDRE']: + # on cree un resultat RESU_NX par extraction de NUME_ORDREs + is_nume_num = 1 + else: + if RESU_NX: UTMESS('A','MEIDEE0_6',valk=['MODELE_MESURE','RESU_EX']) + if MODELE_MESURE['NUME_MODE'] or MODELE_MESURE['NUME_ORDRE']: + # On cree un RESU_EX par extraction de NUME_ORDREs + is_nume_exp = 1 + else: + if RESU_EX: UTMESS('A','MEIDEE0_6',valk=['MODELE_CALCUL','RESU_NX']) + RESU_NUM = MODELE_CALCUL['BASE'] RESU_EXP = MODELE_MESURE['MESURE'] @@ -66,25 +75,35 @@ def macro_expans_ops( self, # Extraction des modes numériques # ------------------------------- - self.DeclareOut( "RESU_NX", RESU_NX ) - if not NUME_MODE_NUM: + if not is_nume_num: RESU_NX = RESU_NUM else: - RESU_NX = EXTR_MODE( FILTRE_MODE=_F( MODE=RESU_NUM, - NUME_MODE=NUME_MODE_NUM ) ) + self.DeclareOut( "RESU_NX", RESU_NX ) + mfact = {'MODE':RESU_NUM} + if MODELE_CALCUL['NUME_MODE']: + mfact.update({'NUME_MODE':MODELE_CALCUL['NUME_MODE']}) + elif MODELE_CALCUL['NUME_ORDRE']: + mfact.update({'NUME_ORDRE':MODELE_CALCUL['NUME_ORDRE']}) + + RESU_NX = EXTR_MODE( FILTRE_MODE = mfact ) + - # Extraction des modes expérimentaux # ---------------------------------- - self.DeclareOut( "RESU_EX", RESU_EX ) - if not NUME_MODE_EXP: + if not is_nume_exp: RESU_EX = RESU_EXP else: - RESU_EX = EXTR_MODE( FILTRE_MODE=_F( MODE=RESU_EXP, - NUME_MODE=NUME_MODE_EXP ) ) + self.DeclareOut( "RESU_EX", RESU_EX ) + mfact = {'MODE':RESU_EXP} + if MODELE_MESURE['NUME_MODE']: + mfact.update({'NUME_MODE':MODELE_MESURE['NUME_MODE']}) + elif MODELE_MESURE['NUME_ORDRE']: + mfact.update({'NUME_ORDRE':MODELE_MESURE['NUME_ORDRE']}) + + RESU_EX = EXTR_MODE( FILTRE_MODE = mfact ) + - # Projection des modes experimentaux - on passe le mot-clef # RESOLUTION directement à PROJ_MESU_MODAL # --------------------------------------------------------- @@ -113,8 +132,8 @@ def macro_expans_ops( self, paras = None #"LE MODELE MEDURE DOIT ETRE UN CONCEPT DE TYPE DYNA_HARMO OU MODE_MECA") UTMESS('A','MEIDEE0_1') - - + + try: __PROJ = PROJ_MESU_MODAL(MODELE_CALCUL = _F( BASE=RESU_NX, MODELE=MOD_CALCUL, @@ -128,30 +147,32 @@ def macro_expans_ops( self, ); except Exception, err: raise Exception, err - + # Phase de reconstruction des donnees mesurees sur le maillage # numerique # ------------------------------------------------------------ self.DeclareOut( "RESU_ET", RESU_ET ) - RESU_ET = REST_BASE_PHYS( RESU_GENE = __PROJ, + RESU_ET = REST_GENE_PHYS( RESU_GENE = __PROJ, MODE_MECA = RESU_NX, TOUT_ORDRE = 'OUI', NOM_CHAM = NOM_CHAM); - + # Restriction des modes mesures etendus sur le maillage capteur # ------------------------------------------------------------- self.DeclareOut( "RESU_RD", RESU_RD ) refd1 = aster.getvectjev(RESU_EXP.nom.ljust(19)+".REFD") refd2 = aster.getvectjev(RESU_EX.nom.ljust(19)+".REFD") + nume=None if RESU_EX.REFD.get(): tmp = RESU_EX.REFD.get()[3] - nume = self.jdc.sds_dict[tmp.strip()] + if tmp.strip() : + nume = self.jdc.sds_dict[tmp.strip()] elif NUME_DDL: nume = NUME_DDL - else: + if not nume : UTMESS('A','MEIDEE0_5') RESU_RD = PROJ_CHAMP( METHODE = 'ELEM', RESULTAT = RESU_ET, @@ -165,5 +186,5 @@ def macro_expans_ops( self, NOM_PARA = paras, ); - + return ier diff --git a/Aster/Cata/cataSTA9/Macro/macro_matr_asse_ops.py b/Aster/Cata/cataSTA9/Macro/macro_matr_asse_ops.py index 6bca7b13..a3089492 100644 --- a/Aster/Cata/cataSTA9/Macro/macro_matr_asse_ops.py +++ b/Aster/Cata/cataSTA9/Macro/macro_matr_asse_ops.py @@ -1,4 +1,4 @@ -#@ MODIF macro_matr_asse_ops Macro DATE 18/03/2008 AUTEUR BOYERE E.BOYERE +#@ MODIF macro_matr_asse_ops Macro DATE 17/11/2008 AUTEUR DELMAS J.DELMAS # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -86,7 +86,7 @@ def macro_matr_asse_ops(self,MODELE,CHAM_MATER,CARA_ELEM,MATR_ASSE, motscles['RIGI_MECA'] =rigel motscles['MASS_MECA'] =masel if CHARGE != None: - if option[0:9] not in ('MASS_THER','RIGI_GEOM','MASS_ID_M'): + if option[0:9] not in ('MASS_THER','RIGI_GEOM'): motscles['CHARGE'] =CHARGE if CHAM_MATER != None: motscles['CHAM_MATER'] =CHAM_MATER if CARA_ELEM != None: motscles['CARA_ELEM'] =CARA_ELEM diff --git a/Aster/Cata/cataSTA9/Macro/observation_ops.py b/Aster/Cata/cataSTA9/Macro/observation_ops.py index 348cb750..d8771a41 100644 --- a/Aster/Cata/cataSTA9/Macro/observation_ops.py +++ b/Aster/Cata/cataSTA9/Macro/observation_ops.py @@ -1,4 +1,4 @@ -#@ MODIF observation_ops Macro DATE 26/03/2008 AUTEUR BODEL C.BODEL +#@ MODIF observation_ops Macro DATE 14/10/2008 AUTEUR PELLET J.PELLET # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -108,29 +108,33 @@ def observation_ops(self, # cham_mater et cara_elem pour le resultat a projeter jdc = CONTEXT.get_current_step().jdc - nom_cara_elem = aster.getvectjev( RESULTAT.nom.ljust(19) + - '.CARA ' )[0].strip() - if len(nom_cara_elem) > 0 : -## nom_cara_elem = nom_cara_elem[0].strip() - cara_elem = jdc.sds_dict[nom_cara_elem] + iret,ibid,nom_cara_elem = aster.dismoi('F','CARA_ELEM',RESULTAT.nom,'RESULTAT') + if len(nom_cara_elem) > 0 : + assert nom_cara_elem.strip() != "#PLUSIEURS" , nom_cara_elem + if nom_cara_elem.strip() == "#AUCUN" : + cara_elem = None + else : + cara_elem = jdc.sds_dict[nom_cara_elem.strip()] else: cara_elem = None - - nom_cham_mater = aster.getvectjev( RESULTAT.nom.ljust(19) + - '.MATE ' )[0].strip() + + iret,ibid,nom_cham_mater = aster.dismoi('F','CHAM_MATER',RESULTAT.nom,'RESULTAT') if len(nom_cham_mater) > 0 : -## nom_cham_mater = nom_cham_mater[0].strip() - cham_mater = jdc.sds_dict[nom_cham_mater] + assert nom_cham_mater.strip() != "#PLUSIEURS" , nom_cham_mater + if nom_cham_mater.strip() == "#AUCUN" : + cham_mater = None + else : + cham_mater = jdc.sds_dict[nom_cham_mater.strip()] else: cham_mater = None # recuperation du maillage associe au modele experimental - _maillag = aster.getvectjev( MODELE_2.nom.ljust(8) + '.MODELE .LGRF ' ) + _maillag = aster.getvectjev( MODELE_2.nom.ljust(8) + '.MODELE .LGRF' ) maillage = _maillag[0].strip() jdc = CONTEXT.get_current_step().jdc mayaexp = jdc.sds_dict[maillage] - _maillag = aster.getvectjev( MODELE_1.nom.ljust(8) + '.MODELE .LGRF ' ) + _maillag = aster.getvectjev( MODELE_1.nom.ljust(8) + '.MODELE .LGRF' ) maillage = _maillag[0].strip() jdc = CONTEXT.get_current_step().jdc mayanum = jdc.sds_dict[maillage] @@ -325,7 +329,7 @@ def crea_normale(self, modele_1, modele_2, from Accas import _F # recherche du maillage associe au modele numerique nom_modele_num = modele_1.nom - _maillag = aster.getvectjev( nom_modele_num.ljust(8) + '.MODELE .LGRF ' ) + _maillag = aster.getvectjev( nom_modele_num.ljust(8) + '.MODELE .LGRF' ) maillage = _maillag[0].strip() jdc = CONTEXT.get_current_step().jdc mayanum = jdc.sds_dict[maillage] @@ -366,7 +370,7 @@ def crea_normale(self, modele_1, modele_2, affe_dct["CHAM_MATER"] = cham_mater if cara_elem is not None: affe_dct["CARA_ELEM"] = cara_elem - + __norm3 = CREA_RESU( OPERATION = 'AFFE', TYPE_RESU = 'EVOL_ELAS', NOM_CHAM = 'DEPL', diff --git a/Aster/Cata/cataSTA9/Macro/post_dyna_alea_ops.py b/Aster/Cata/cataSTA9/Macro/post_dyna_alea_ops.py index 944f4395..481e9b79 100644 --- a/Aster/Cata/cataSTA9/Macro/post_dyna_alea_ops.py +++ b/Aster/Cata/cataSTA9/Macro/post_dyna_alea_ops.py @@ -1,4 +1,4 @@ -#@ MODIF post_dyna_alea_ops Macro DATE 25/04/2008 AUTEUR ZENTNER I.ZENTNER +#@ MODIF post_dyna_alea_ops Macro DATE 06/10/2008 AUTEUR ZENTNER I.ZENTNER # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -59,9 +59,13 @@ def post_dyna_alea_ops(self,INTE_SPEC, FRAGILITE,TITRE,INFO,**args): #---------algorithme d'optimisation pour le maximum de vraisemblance def vrais(x): am=x[0] - assert am >0.000, 'optimize.py: am negatif' beta=x[1] - assert am >0.000, 'optimize.py: beta negatif' +# assert am >0.000, 'optimize.py: beta negatif' +# assert am >0.000, 'optimize.py: am negatif' + if am <=0.000: + am=0.01 + if beta <=0.000: + beta=0.001 res=1.0 for k in range(Nbval): ai=liste_indic[k] @@ -143,11 +147,10 @@ def post_dyna_alea_ops(self,INTE_SPEC, FRAGILITE,TITRE,INFO,**args): mcfact.append(_F(PARA= 'PARA_NOCI' ,LISTE_R =liste_a )) mcfact.append(_F(PARA= 'PFA' ,LISTE_R = lpfa )) - #print 'fractiles a calculer par bootstrap : ', FRAGILITE['FRACTILE'] - # si calcul de fractiles (intervalles de confiance) par bootstrap + x0 = xopt if FRAGILITE['FRACTILE']!= None : if INFO==2 : texte='FRACTILES A CALCULER PAR BOOTSTRAP '+ str(FRAGILITE['FRACTILE']) +'\n' @@ -177,7 +180,7 @@ def post_dyna_alea_ops(self,INTE_SPEC, FRAGILITE,TITRE,INFO,**args): if INFO==2 : texte1='BOOTSTRAP TIRAGE '+ str(kb+1) texte2=' PARAMETRES Am, beta ESTIMES : '+str(xopt)+'\n' - aster.affiche('MESSAGE',texte1) #print 'bootstrap tirage', kb+1, ', - parametres Am, beta estimes: ', xopt + aster.affiche('MESSAGE',texte1) aster.affiche('MESSAGE',texte2) vecval=(Numeric.log(vec_a/xopt[0]))/xopt[1] for m in range(Nba): diff --git a/Aster/Cata/cataSTA9/Macro/post_k1_k2_k3_ops.py b/Aster/Cata/cataSTA9/Macro/post_k1_k2_k3_ops.py index 4222d356..38595c64 100644 --- a/Aster/Cata/cataSTA9/Macro/post_k1_k2_k3_ops.py +++ b/Aster/Cata/cataSTA9/Macro/post_k1_k2_k3_ops.py @@ -1,4 +1,4 @@ -#@ MODIF post_k1_k2_k3_ops Macro DATE 13/05/2008 AUTEUR GALENNE E.GALENNE +#@ MODIF post_k1_k2_k3_ops Macro DATE 17/11/2008 AUTEUR PROIX J-M.PROIX # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -50,6 +50,50 @@ def moy(t): for value in t : m += value return (m/len(t)) + +def InterpolFondFiss(s0, Coorfo) : +# Interpolation des points du fond de fissure (xfem) +# s0 = abscisse curviligne du point considere +# Coorfo = Coordonnees du fond (extrait de la sd fiss_xfem) +# en sortie : xyza = Coordonnees du point et abscisse + n = len(Coorfo) / 4 + if ( s0 < Coorfo[3] ) : + xyz = [Coorfo[0],Coorfo[1],Coorfo[2]] + return xyz + if ( s0 > Coorfo[-1] ) : + xyz = [Coorfo[-4],Coorfo[-3],Coorfo[-2]] + return xyz + i = 1 + while s0 > Coorfo[4*i+3]: + i = i+1 + xyz = [0.]*4 + xyz[0] = (s0-Coorfo[4*(i-1)+3]) * (Coorfo[4*i+0]-Coorfo[4*(i-1)+0]) / (Coorfo[4*i+3]-Coorfo[4*(i-1)+3]) + Coorfo[4*(i-1)+0] + xyz[1] = (s0-Coorfo[4*(i-1)+3]) * (Coorfo[4*i+1]-Coorfo[4*(i-1)+1]) / (Coorfo[4*i+3]-Coorfo[4*(i-1)+3]) + Coorfo[4*(i-1)+1] + xyz[2] = (s0-Coorfo[4*(i-1)+3]) * (Coorfo[4*i+2]-Coorfo[4*(i-1)+2]) / (Coorfo[4*i+3]-Coorfo[4*(i-1)+3]) + Coorfo[4*(i-1)+2] + xyz[3] = s0 + return xyz + +def InterpolBaseFiss(s0, Basefo, Coorfo) : +# Interpolation de la base locale en fond de fissure +# s0 = abscisse curviligne du point considere +# Basefo = base locale du fond (VNx,VNy,VNz,VPx,VPy,VPz) +# Coorfo = Coordonnees et abscisses du fond (extrait de la sd fiss_xfem) +# en sortie : VPVNi = base locale au point considere (6 coordonnes) + n = len(Coorfo) / 4 + if ( s0 < Coorfo[3] ) : + VPVNi = Basefo[0:6] + return VPVNi + if ( s0 > Coorfo[-1] ) : + VPVNi = [Basefo[i] for i in range(-6,0)] + return VPVNi + i = 1 + while s0 > Coorfo[4*i+3]: + i = i+1 + VPVNi = [0.]*6 + for k in range(6) : + VPVNi[k] = (s0-Coorfo[4*(i-1)+3]) * (Basefo[6*i+k]-Basefo[6*(i-1)+k]) / (Coorfo[4*i+3]-Coorfo[4*(i-1)+3]) + Basefo[6*(i-1)+k] + return VPVNi + def post_k1_k2_k3_ops(self,MODELISATION,FOND_FISS,FISSURE,MATER,RESULTAT, TABL_DEPL_SUP,TABL_DEPL_INF,ABSC_CURV_MAXI,PREC_VIS_A_VIS, @@ -255,6 +299,7 @@ def post_k1_k2_k3_ops(self,MODELISATION,FOND_FISS,FISSURE,MATER,RESULTAT, Lnofon = Lnf1 Nbnofo = Nbf1 ListmaS = FOND_FISS.LEVRESUP___MAIL.get() + if ListmaS==None : UTMESS('F','RUPTURE0_19') if SYME_CHAR=='SANS': ListmaI = FOND_FISS.LEVREINF___MAIL.get() __NCOFON=POST_RELEVE_T(ACTION=_F(INTITULE='Tab pour coordonnees noeuds du fond', @@ -351,9 +396,10 @@ def post_k1_k2_k3_ops(self,MODELISATION,FOND_FISS,FISSURE,MATER,RESULTAT, if NB_NOEUD_COUPE < 3 : UTMESS('A','RUPTURE0_17') NB_NOEUD_COUPE = 5 - MOD = aster.getvectjev(string.ljust(RESULTAT.nom,19)+'.MODL ') - if MOD==None : UTMESS('F','RUPTURE0_18') - MODEL = self.jdc.sds_dict[MOD[0].rstrip()] + iret,ibid,n_modele = aster.dismoi('F','MODELE',RESULTAT.nom,'RESULTAT') + n_modele=n_modele.rstrip() + if len(n_modele)==0 : UTMESS('F','RUPTURE0_18') + MODEL = self.jdc.sds_dict[n_modele] dmax = PREC_VIS_A_VIS * ABSC_CURV_MAXI for i in range(Nbf1): Porig = array(d_coorf[Lnf1[i]] ) @@ -511,9 +557,10 @@ def post_k1_k2_k3_ops(self,MODELISATION,FOND_FISS,FISSURE,MATER,RESULTAT, DTAN_EXTR = args['DTAN_EXTR'] dmax = PREC_VIS_A_VIS * ABSC_CURV_MAXI #Projection du resultat sur le maillage lineaire initial - MOD = aster.getvectjev(string.ljust(RESULTAT.nom,19)+'.MODL ') - if MOD==None : UTMESS('F','RUPTURE0_18') - MODEL = self.jdc.sds_dict[MOD[0].rstrip()] + iret,ibid,n_modele = aster.dismoi('F','MODELE',RESULTAT.nom,'RESULTAT') + n_modele=n_modele.rstrip() + if len(n_modele)==0 : UTMESS('F','RUPTURE0_18') + MODEL = self.jdc.sds_dict[n_modele] xcont = MODEL.xfem.XFEM_CONT.get() if xcont[0] == 0 : __RESX = RESULTAT @@ -529,12 +576,40 @@ def post_k1_k2_k3_ops(self,MODELISATION,FOND_FISS,FISSURE,MATER,RESULTAT, MODELE_2=__MODLINE, ); #Recuperation des coordonnees des points du fond de fissure (x,y,z,absc_curv) Listfo = FISSURE.FONDFISS.get() - Nbfond = len(Listfo)/4 + Basefo = FISSURE.BASEFOND.get() + NB_POINT_FOND = args['NB_POINT_FOND'] +#Traitement du cas fond multiple + Fissmult = FISSURE.FONDMULT.get() + Nbfiss = len(Fissmult)/2 + Numfiss = args['NUME_FOND'] + if Numfiss <= Nbfiss and Nbfiss > 1 : + Ptinit = Fissmult[2*(Numfiss-1)] + Ptfin = Fissmult[2*(Numfiss-1)+1] + Listfo2 = Listfo[((Ptinit-1)*4):(Ptfin*4)] + Listfo = Listfo2 + Basefo2 = Basefo[((Ptinit-1)*(2*ndim)):(Ptfin*(2*ndim))] + Basefo = Basefo2 + elif Numfiss > Nbfiss : + UTMESS('F','RUPTURE1_38',vali=[Nbfiss,Numfiss]) +#### + + if NB_POINT_FOND != None and MODELISATION=='3D' : + Nbfond = NB_POINT_FOND + absmax = Listfo[-1] + Coorfo = [None]*4*Nbfond + Vpropa = [None]*3*Nbfond + for i in range(0,Nbfond) : + absci = i*absmax/(Nbfond-1) + Coorfo[(4*i):(4*(i+1))] = InterpolFondFiss(absci, Listfo) + Vpropa[(6*i):(6*(i+1))] = InterpolBaseFiss(absci,Basefo, Listfo) + else : + Coorfo = Listfo + Vpropa = Basefo + Nbfond = len(Coorfo)/4 # Calcul de la direction de propagation en chaque point du fond VP = [None]*Nbfond VN = [None]*Nbfond absfon = [0,] - Vpropa = FISSURE.BASEFOND.get() # Cas fissure non necessairement plane if VECT_K1 == None : i = 0 @@ -550,9 +625,7 @@ def post_k1_k2_k3_ops(self,MODELISATION,FOND_FISS,FISSURE,MATER,RESULTAT, VN[0] = array([Vpropa[0],Vpropa[1],Vpropa[2]]) VP[0] = array([Vpropa[3+0],Vpropa[3+1],Vpropa[3+2]]) for i in range(1,Nbfond-1): - Pfon1 = array([Listfo[4*(i-1)],Listfo[4*(i-1)+1],Listfo[4*(i-1)+2]]) - Pfon2 = array([Listfo[4*i],Listfo[4*i+1],Listfo[4*i+2]]) - absf = sqrt(dot(transpose(Pfon1-Pfon2),Pfon1-Pfon2)) + absfon[i-1] + absf = Coorfo[4*i+3] absfon.append(absf) VN[i] = array([Vpropa[6*i],Vpropa[6*i+1],Vpropa[6*i+2]]) VP[i] = array([Vpropa[3+6*i],Vpropa[3+6*i+1],Vpropa[3+6*i+2]]) @@ -560,9 +633,7 @@ def post_k1_k2_k3_ops(self,MODELISATION,FOND_FISS,FISSURE,MATER,RESULTAT, if abs(verif) < 0.98: UTMESS('A','RUPTURE1_35',vali=[i-1,i]) i = Nbfond-1 - Pfon1 = array([Listfo[4*(i-1)],Listfo[4*(i-1)+1],Listfo[4*(i-1)+2]]) - Pfon2 = array([Listfo[4*i],Listfo[4*i+1],Listfo[4*i+2]]) - absf = sqrt(dot(transpose(Pfon1-Pfon2),Pfon1-Pfon2)) + absfon[i-1] + absf = Coorfo[4*i+3] absfon.append(absf) if DTAN_EXTR != None : VP[i] = array(DTAN_EXTR) @@ -596,8 +667,8 @@ def post_k1_k2_k3_ops(self,MODELISATION,FOND_FISS,FISSURE,MATER,RESULTAT, if abs(verif) > 0.01: UTMESS('A','RUPTURE1_36') else : - Pfon2 = array([Listfo[4*i],Listfo[4*i+1],Listfo[4*i+2]]) - Pfon3 = array([Listfo[4*(i+1)],Listfo[4*(i+1)+1],Listfo[4*(i+1)+2]]) + Pfon2 = array([Coorfo[4*i],Coorfo[4*i+1],Coorfo[4*i+2]]) + Pfon3 = array([Coorfo[4*(i+1)],Coorfo[4*(i+1)+1],Coorfo[4*(i+1)+2]]) VT = (Pfon3 - Pfon2)/sqrt(dot(transpose(Pfon3-Pfon2),Pfon3-Pfon2)) VP[0] = array(cross_product(VT,v1)) VNi = array([Vpropa[3],Vpropa[4],Vpropa[5]]) @@ -606,10 +677,10 @@ def post_k1_k2_k3_ops(self,MODELISATION,FOND_FISS,FISSURE,MATER,RESULTAT, vv =[VNi[0],VNi[1],VNi[2],VN[i][0],VN[i][1],VN[i][2],] UTMESS('A','RUPTURE0_32',vali=[i],valr=vv) for i in range(1,Nbfond-1): - Pfon1 = array([Listfo[4*(i-1)],Listfo[4*(i-1)+1],Listfo[4*(i-1)+2]]) - Pfon2 = array([Listfo[4*i],Listfo[4*i+1],Listfo[4*i+2]]) - Pfon3 = array([Listfo[4*(i+1)],Listfo[4*(i+1)+1],Listfo[4*(i+1)+2]]) - absf = sqrt(dot(transpose(Pfon1-Pfon2),Pfon1-Pfon2)) + absfon[i-1] + Pfon1 = array([Coorfo[4*(i-1)],Coorfo[4*(i-1)+1],Coorfo[4*(i-1)+2]]) + Pfon2 = array([Coorfo[4*i],Coorfo[4*i+1],Coorfo[4*i+2]]) + Pfon3 = array([Coorfo[4*(i+1)],Coorfo[4*(i+1)+1],Coorfo[4*(i+1)+2]]) + absf = Coorfo[4*i+3] absfon.append(absf) VT = (Pfon3 - Pfon2)/sqrt(dot(transpose(Pfon3-Pfon2),Pfon3-Pfon2)) VT = VT+(Pfon2 - Pfon1)/sqrt(dot(transpose(Pfon2-Pfon1),Pfon2-Pfon1)) @@ -621,9 +692,9 @@ def post_k1_k2_k3_ops(self,MODELISATION,FOND_FISS,FISSURE,MATER,RESULTAT, vv =[VNi[0],VNi[1],VNi[2],VN[i][0],VN[i][1],VN[i][2],] UTMESS('A','RUPTURE0_32',vali=[i],valr=vv) i = Nbfond-1 - Pfon1 = array([Listfo[4*(i-1)],Listfo[4*(i-1)+1],Listfo[4*(i-1)+2]]) - Pfon2 = array([Listfo[4*i],Listfo[4*i+1],Listfo[4*i+2]]) - absf = sqrt(dot(transpose(Pfon1-Pfon2),Pfon1-Pfon2)) + absfon[i-1] + Pfon1 = array([Coorfo[4*(i-1)],Coorfo[4*(i-1)+1],Coorfo[4*(i-1)+2]]) + Pfon2 = array([Coorfo[4*i],Coorfo[4*i+1],Coorfo[4*i+2]]) + absf = Coorfo[4*i+3] absfon.append(absf) if DTAN_EXTR != None : VP[i] = array(DTAN_EXTR) @@ -652,7 +723,7 @@ def post_k1_k2_k3_ops(self,MODELISATION,FOND_FISS,FISSURE,MATER,RESULTAT, #Sens de la tangente if MODELISATION=='3D' : i = Nbfond/2 else : i = 0 - Po = array([Listfo[4*i],Listfo[4*i+1],Listfo[4*i+2]]) + Po = array([Coorfo[4*i],Coorfo[4*i+1],Coorfo[4*i+2]]) Porig = Po + ABSC_CURV_MAXI*VP[i] Pextr = Po - ABSC_CURV_MAXI*VP[i] __Tabg = MACR_LIGN_COUPE(RESULTAT=__RESX,NOM_CHAM='DEPL', @@ -660,7 +731,9 @@ def post_k1_k2_k3_ops(self,MODELISATION,FOND_FISS,FISSURE,MATER,RESULTAT, TYPE='SEGMENT',COOR_EXTR=(Pextr[0],Pextr[1],Pextr[2]), DISTANCE_MAX=dmax),); tmp=__Tabg.EXTR_TABLE() +# a sam test = getattr(tmp,'H1X').values() +# test = getattr(tmp,'E1X').values() if test==[None]*3 : UTMESS('F','RUPTURE0_33') if test[0]!=None : @@ -669,21 +742,24 @@ def post_k1_k2_k3_ops(self,MODELISATION,FOND_FISS,FISSURE,MATER,RESULTAT, sens = -1 DETRUIRE(CONCEPT=_F(NOM=__Tabg),INFO=1) # Extraction des sauts sur la fissure - TSaut = [None]*Nbfond NB_NOEUD_COUPE = args['NB_NOEUD_COUPE'] if NB_NOEUD_COUPE < 3 : UTMESS('A','RUPTURE0_34') NB_NOEUD_COUPE = 5 + mcfact=[] for i in range(Nbfond): - Porig = array([Listfo[4*i],Listfo[4*i+1],Listfo[4*i+2]]) + Porig = array([Coorfo[4*i],Coorfo[4*i+1],Coorfo[4*i+2]]) if i==0 and DTAN_ORIG!=None : Pextr = Porig - ABSC_CURV_MAXI*VP[i] elif i==(Nbfond-1) and DTAN_EXTR!=None : Pextr = Porig - ABSC_CURV_MAXI*VP[i] else : Pextr = Porig + ABSC_CURV_MAXI*VP[i]*sens - TSaut[i] = MACR_LIGN_COUPE(RESULTAT=__RESX,NOM_CHAM='DEPL', - LIGN_COUPE=_F(NB_POINTS=NB_NOEUD_COUPE,COOR_ORIG=(Porig[0],Porig[1],Porig[2],), - TYPE='SEGMENT',COOR_EXTR=(Pextr[0],Pextr[1],Pextr[2]), - DISTANCE_MAX=dmax),); + mcfact.append(_F(NB_POINTS=NB_NOEUD_COUPE,COOR_ORIG=(Porig[0],Porig[1],Porig[2],), + TYPE='SEGMENT',COOR_EXTR=(Pextr[0],Pextr[1],Pextr[2]), + DISTANCE_MAX=dmax),) + TSo = MACR_LIGN_COUPE(RESULTAT=__RESX,NOM_CHAM='DEPL', + LIGN_COUPE=mcfact); + TTSo = TSo.EXTR_TABLE() + DETRUIRE(CONCEPT=_F(NOM=TSo),INFO=1) Nbnofo = Nbfond if xcont[0] != 0 : DETRUIRE(CONCEPT=_F(NOM=__MODLINE),INFO=1) @@ -749,8 +825,7 @@ def post_k1_k2_k3_ops(self,MODELISATION,FOND_FISS,FISSURE,MATER,RESULTAT, Ls = [string.ljust(Lnosup[ino][i],8) for i in range(len(Lnosup[ino]))] tabsup=tabsup.NOEUD==Ls elif FISSURE : - tabsup = TSaut[ino].EXTR_TABLE() - DETRUIRE(CONCEPT=_F(NOM=TSaut[ino]),INFO=1) + tabsup = TTSo.INTITULE=='l.coupe%i'%(ino+1) else : tabsup=TABL_DEPL_SUP.EXTR_TABLE() veri_tab(tabsup,TABL_DEPL_SUP.nom,ndim) @@ -839,7 +914,7 @@ def post_k1_k2_k3_ops(self,MODELISATION,FOND_FISS,FISSURE,MATER,RESULTAT, for iord in range(len(l_inst)) : inst=l_inst[iord] if INFO==2 and inst!=None: - texte="#================================================================================\n" + texte="#=================================================================================\n" texte=texte+"==> INSTANT: %f"%inst aster.affiche('MESSAGE',texte) if inst!=None: @@ -958,8 +1033,6 @@ def post_k1_k2_k3_ops(self,MODELISATION,FOND_FISS,FISSURE,MATER,RESULTAT, if FISSURE : H1 = getattr(tabsupi,'H1X').values() nbval = len(H1) - if H1[-1]==None : - UTMESS('F','RUPTURE0_33') H1 = complete(H1) E1 = getattr(tabsupi,'E1X').values() E1 = complete(E1) @@ -976,13 +1049,6 @@ def post_k1_k2_k3_ops(self,MODELISATION,FOND_FISS,FISSURE,MATER,RESULTAT, dzs = 2*(H1 + sqrt(abscs)*E1) abscs=array(abscs[:nbval]) -# --- TESTS NOMBRE DE NOEUDS--- - if nbval<3 : - UTMESS('F+','RUPTURE0_46') - if FOND_FISS : - UTMESS('F+','RUPTURE0_47',valk=Lnofon[ino]) - UTMESS('F','RUPTURE0_25') - # ---------- CALCUL PROP. MATERIAU AVEC TEMPERATURE ----------- if Tempe3D : tempeno=tabtemp.NOEUD==Lnofon[ino] @@ -998,8 +1064,23 @@ def post_k1_k2_k3_ops(self,MODELISATION,FOND_FISS,FISSURE,MATER,RESULTAT, coefg = (1. - nu**2) / e coefg3 = (1. + nu) / e +# --- TESTS NOMBRE DE NOEUDS--- + if nbval<3 : + UTMESS('A+','RUPTURE0_46') + if FOND_FISS : + UTMESS('A+','RUPTURE0_47',valk=Lnofon[ino]) + if FISSURE : + UTMESS('A+','RUPTURE0_99',vali=ino) + UTMESS('A','RUPTURE0_25') + kg1 = [0.]*8 + kg2 =[0.]*8 + kg3 =[0.]*8 + + else : +# SI NBVAL >= 3 : + # ------------------------------------------------------------------ -# CHANGEMENT DE REPERE +# CHANGEMENT DE REPERE # ------------------------------------------------------------------ # # 1 : VECTEUR NORMAL AU PLAN DE LA FISSURE @@ -1007,139 +1088,139 @@ def post_k1_k2_k3_ops(self,MODELISATION,FOND_FISS,FISSURE,MATER,RESULTAT, # 2 : VECTEUR NORMAL AU FOND DE FISSURE EN M # 3 : VECTEUR TANGENT AU FOND DE FISSURE EN M # - if FISSURE : - v2 = VP[ino] - v1 = VN[ino] - elif SYME_CHAR=='SANS' : - vo = array([( coxs[-1]+coxi[-1] )/2.,( coys[-1]+coyi[-1] )/2.,( cozs[-1]+cozi[-1] )/2.]) - ve = array([( coxs[0 ]+coxi[0 ] )/2.,( coys[0 ]+coyi[0 ] )/2.,( cozs[0 ]+cozi[0 ] )/2.]) - v2 = ve-vo - else : - vo = array([ coxs[-1], coys[-1], cozs[-1]]) - ve = array([ coxs[0], coys[0], cozs[0]]) - v2 = ve-vo - if not FISSURE : v1 = array(VECT_K1) - v2 = v2/sqrt(v2[0]**2+v2[1]**2+v2[2]**2) - v1p = sum(v2*v1) - if SYME_CHAR=='SANS' : v1 = v1-v1p*v2 - else : v2 = v2-v1p*v1 - v1 = v1/sqrt(v1[0]**2+v1[1]**2+v1[2]**2) - v2 = v2/sqrt(v2[0]**2+v2[1]**2+v2[2]**2) - v3 = array([v1[1]*v2[2]-v2[1]*v1[2],v1[2]*v2[0]-v2[2]*v1[0],v1[0]*v2[1]-v2[0]*v1[1]]) - pgl = asarray([v1,v2,v3]) - dpls = asarray([dxs,dys,dzs]) - dpls = matrixmultiply(pgl,dpls) - if SYME_CHAR!='SANS' and abs(dpls[0][0]) > 1.e-10 : - UTMESS('A','RUPTURE0_49',valk=[Lnofon[ino],SYME_CHAR]) - if FISSURE : - saut=dpls - elif SYME_CHAR=='SANS' : - dpli = asarray([dxi,dyi,dzi]) - dpli = matrixmultiply(pgl,dpli) - saut=(dpls-dpli) - else : - dpli = [multiply(dpls[0],-1.),dpls[1],dpls[2]] - saut=(dpls-dpli) - if INFO==2 : - mcfact=[] - mcfact.append(_F(PARA='ABSC_CURV' ,LISTE_R=abscs.tolist() )) - if not FISSURE : - mcfact.append(_F(PARA='DEPL_SUP_1',LISTE_R=dpls[0].tolist() )) - mcfact.append(_F(PARA='DEPL_INF_1',LISTE_R=dpli[0].tolist() )) - mcfact.append(_F(PARA='SAUT_1' ,LISTE_R=saut[0].tolist() )) - if not FISSURE : - mcfact.append(_F(PARA='DEPL_SUP_2',LISTE_R=dpls[1].tolist() )) - mcfact.append(_F(PARA='DEPL_INF_2',LISTE_R=dpli[1].tolist() )) - mcfact.append(_F(PARA='SAUT_2' ,LISTE_R=saut[1].tolist() )) - if ndim==3 : - if not FISSURE : - mcfact.append(_F(PARA='DEPL_SUP_3',LISTE_R=dpls[2].tolist() )) - mcfact.append(_F(PARA='DEPL_INF_3',LISTE_R=dpli[2].tolist() )) - mcfact.append(_F(PARA='SAUT_3' ,LISTE_R=saut[2].tolist() )) - __resu0=CREA_TABLE(LISTE=mcfact,TITRE='--> SAUTS') - aster.affiche('MESSAGE',__resu0.EXTR_TABLE().__repr__()) - DETRUIRE(CONCEPT=_F(NOM=__resu0),INFO=1) + if FISSURE : + v2 = VP[ino] + v1 = VN[ino] + elif SYME_CHAR=='SANS' : + vo = array([( coxs[-1]+coxi[-1] )/2.,( coys[-1]+coyi[-1] )/2.,( cozs[-1]+cozi[-1] )/2.]) + ve = array([( coxs[0 ]+coxi[0 ] )/2.,( coys[0 ]+coyi[0 ] )/2.,( cozs[0 ]+cozi[0 ] )/2.]) + v2 = ve-vo + else : + vo = array([ coxs[-1], coys[-1], cozs[-1]]) + ve = array([ coxs[0], coys[0], cozs[0]]) + v2 = ve-vo + if not FISSURE : v1 = array(VECT_K1) + v2 = v2/sqrt(v2[0]**2+v2[1]**2+v2[2]**2) + v1p = sum(v2*v1) + if SYME_CHAR=='SANS' : v1 = v1-v1p*v2 + else : v2 = v2-v1p*v1 + v1 = v1/sqrt(v1[0]**2+v1[1]**2+v1[2]**2) + v2 = v2/sqrt(v2[0]**2+v2[1]**2+v2[2]**2) + v3 = array([v1[1]*v2[2]-v2[1]*v1[2],v1[2]*v2[0]-v2[2]*v1[0],v1[0]*v2[1]-v2[0]*v1[1]]) + pgl = asarray([v1,v2,v3]) + dpls = asarray([dxs,dys,dzs]) + dpls = matrixmultiply(pgl,dpls) + if SYME_CHAR!='SANS' and abs(dpls[0][0]) > 1.e-10 : + UTMESS('A','RUPTURE0_49',valk=[Lnofon[ino],SYME_CHAR]) + if FISSURE : + saut=dpls + elif SYME_CHAR=='SANS' : + dpli = asarray([dxi,dyi,dzi]) + dpli = matrixmultiply(pgl,dpli) + saut=(dpls-dpli) + else : + dpli = [multiply(dpls[0],-1.),dpls[1],dpls[2]] + saut=(dpls-dpli) + if INFO==2 : + mcfact=[] + mcfact.append(_F(PARA='ABSC_CURV' ,LISTE_R=abscs.tolist() )) + if not FISSURE : + mcfact.append(_F(PARA='DEPL_SUP_1',LISTE_R=dpls[0].tolist() )) + mcfact.append(_F(PARA='DEPL_INF_1',LISTE_R=dpli[0].tolist() )) + mcfact.append(_F(PARA='SAUT_1' ,LISTE_R=saut[0].tolist() )) + if not FISSURE : + mcfact.append(_F(PARA='DEPL_SUP_2',LISTE_R=dpls[1].tolist() )) + mcfact.append(_F(PARA='DEPL_INF_2',LISTE_R=dpli[1].tolist() )) + mcfact.append(_F(PARA='SAUT_2' ,LISTE_R=saut[1].tolist() )) + if ndim==3 : + if not FISSURE : + mcfact.append(_F(PARA='DEPL_SUP_3',LISTE_R=dpls[2].tolist() )) + mcfact.append(_F(PARA='DEPL_INF_3',LISTE_R=dpli[2].tolist() )) + mcfact.append(_F(PARA='SAUT_3' ,LISTE_R=saut[2].tolist() )) + __resu0=CREA_TABLE(LISTE=mcfact,TITRE='--> SAUTS') + aster.affiche('MESSAGE',__resu0.EXTR_TABLE().__repr__()) + DETRUIRE(CONCEPT=_F(NOM=__resu0),INFO=1) # ------------------------------------------------------------------ # CALCUL DES K1, K2, K3 # ------------------------------------------------------------------ - isig=sign(transpose(resize(saut[:,-1],(nbval-1,3)))) - isig=sign(isig+0.001) - saut=saut*array([[coefd]*nbval,[coefd]*nbval,[coefd3]*nbval]) - saut=saut**2 - ksig = isig[:,1] - ksig = array([ksig,ksig]) - ksig = transpose(ksig) - kgsig=resize(ksig,(1,6))[0] + isig=sign(transpose(resize(saut[:,-1],(nbval-1,3)))) + isig=sign(isig+0.001) + saut=saut*array([[coefd]*nbval,[coefd]*nbval,[coefd3]*nbval]) + saut=saut**2 + ksig = isig[:,1] + ksig = array([ksig,ksig]) + ksig = transpose(ksig) + kgsig=resize(ksig,(1,6))[0] # ------------------------------------------------------------------ # --- METHODE 1 --- # ------------------------------------------------------------------ - x1 = abscs[1:-1] - x2 = abscs[2: ] - y1 = saut[:,1:-1]/x1 - y2 = saut[:,2: ]/x2 - k = abs(y1-x1*(y2-y1)/(x2-x1)) - g = coefg*(k[0]+k[1])+coefg3*k[2] - kg1 = [max(k[0]),min(k[0]),max(k[1]),min(k[1]),max(k[2]),min(k[2])] - kg1 = sqrt(kg1)*kgsig - kg1=Numeric.concatenate([kg1,[max(g),min(g)]]) - vk = sqrt(k)*isig[:,:-1] - if INFO==2 : - mcfact=[] - mcfact.append(_F(PARA='ABSC_CURV_1' ,LISTE_R=x1.tolist() )) - mcfact.append(_F(PARA='ABSC_CURV_2' ,LISTE_R=x2.tolist() )) - mcfact.append(_F(PARA='K1' ,LISTE_R=vk[0].tolist() )) - mcfact.append(_F(PARA='K2' ,LISTE_R=vk[1].tolist() )) - if ndim==3 : - mcfact.append(_F(PARA='K3' ,LISTE_R=vk[2].tolist() )) - mcfact.append(_F(PARA='G' ,LISTE_R=g.tolist() )) - __resu1=CREA_TABLE(LISTE=mcfact,TITRE='--> METHODE 1') - aster.affiche('MESSAGE',__resu1.EXTR_TABLE().__repr__()) - DETRUIRE(CONCEPT=_F(NOM=__resu1),INFO=1) + x1 = abscs[1:-1] + x2 = abscs[2: ] + y1 = saut[:,1:-1]/x1 + y2 = saut[:,2: ]/x2 + k = abs(y1-x1*(y2-y1)/(x2-x1)) + g = coefg*(k[0]+k[1])+coefg3*k[2] + kg1 = [max(k[0]),min(k[0]),max(k[1]),min(k[1]),max(k[2]),min(k[2])] + kg1 = sqrt(kg1)*kgsig + kg1=Numeric.concatenate([kg1,[max(g),min(g)]]) + vk = sqrt(k)*isig[:,:-1] + if INFO==2 : + mcfact=[] + mcfact.append(_F(PARA='ABSC_CURV_1' ,LISTE_R=x1.tolist() )) + mcfact.append(_F(PARA='ABSC_CURV_2' ,LISTE_R=x2.tolist() )) + mcfact.append(_F(PARA='K1' ,LISTE_R=vk[0].tolist() )) + mcfact.append(_F(PARA='K2' ,LISTE_R=vk[1].tolist() )) + if ndim==3 : + mcfact.append(_F(PARA='K3' ,LISTE_R=vk[2].tolist() )) + mcfact.append(_F(PARA='G' ,LISTE_R=g.tolist() )) + __resu1=CREA_TABLE(LISTE=mcfact,TITRE='--> METHODE 1') + aster.affiche('MESSAGE',__resu1.EXTR_TABLE().__repr__()) + DETRUIRE(CONCEPT=_F(NOM=__resu1),INFO=1) # ------------------------------------------------------------------ # --- METHODE 2 --- # ------------------------------------------------------------------ - x1 = abscs[1: ] - y1 = saut[:,1:] - k = abs(y1/x1) - g = coefg*(k[0]+k[1])+coefg3*k[2] - kg2= [max(k[0]),min(k[0]),max(k[1]),min(k[1]),max(k[2]),min(k[2])] - kg2 = sqrt(kg2)*kgsig - kg2=Numeric.concatenate([kg2,[max(g),min(g)]]) - vk = sqrt(k)*isig - if INFO==2 : - mcfact=[] - mcfact.append(_F(PARA='ABSC_CURV' ,LISTE_R=x1.tolist() )) - mcfact.append(_F(PARA='K1' ,LISTE_R=vk[0].tolist() )) - mcfact.append(_F(PARA='K2' ,LISTE_R=vk[1].tolist() )) - if ndim==3 : - mcfact.append(_F(PARA='K3' ,LISTE_R=vk[2].tolist() )) - mcfact.append(_F(PARA='G' ,LISTE_R=g.tolist() )) - __resu2=CREA_TABLE(LISTE=mcfact,TITRE='--> METHODE 2') - aster.affiche('MESSAGE',__resu2.EXTR_TABLE().__repr__()) - DETRUIRE(CONCEPT=_F(NOM=__resu2),INFO=1) + x1 = abscs[1: ] + y1 = saut[:,1:] + k = abs(y1/x1) + g = coefg*(k[0]+k[1])+coefg3*k[2] + kg2= [max(k[0]),min(k[0]),max(k[1]),min(k[1]),max(k[2]),min(k[2])] + kg2 = sqrt(kg2)*kgsig + kg2=Numeric.concatenate([kg2,[max(g),min(g)]]) + vk = sqrt(k)*isig + if INFO==2 : + mcfact=[] + mcfact.append(_F(PARA='ABSC_CURV' ,LISTE_R=x1.tolist() )) + mcfact.append(_F(PARA='K1' ,LISTE_R=vk[0].tolist() )) + mcfact.append(_F(PARA='K2' ,LISTE_R=vk[1].tolist() )) + if ndim==3 : + mcfact.append(_F(PARA='K3' ,LISTE_R=vk[2].tolist() )) + mcfact.append(_F(PARA='G' ,LISTE_R=g.tolist() )) + __resu2=CREA_TABLE(LISTE=mcfact,TITRE='--> METHODE 2') + aster.affiche('MESSAGE',__resu2.EXTR_TABLE().__repr__()) + DETRUIRE(CONCEPT=_F(NOM=__resu2),INFO=1) # ------------------------------------------------------------------ # --- METHODE 3 --- # ------------------------------------------------------------------ - x1 = abscs[:-1] - x2 = abscs[1: ] - y1 = saut[:,:-1] - y2 = saut[:,1: ] - k = (sqrt(y2)*sqrt(x2)+sqrt(y1)*sqrt(x1))*(x2-x1) - k = Numeric.sum(transpose(k)) - de = abscs[-1] - vk = (k/de**2)*isig[:,0] - g = coefg*(vk[0]**2+vk[1]**2)+coefg3*vk[2]**2 - kg3=Numeric.concatenate([[vk[0]]*2,[vk[1]]*2,[vk[2]]*2,[g]*2]) - if INFO==2 : - mcfact=[] - mcfact.append(_F(PARA='K1' ,LISTE_R=vk[0] )) - mcfact.append(_F(PARA='K2' ,LISTE_R=vk[1] )) - if ndim==3 : - mcfact.append(_F(PARA='K3' ,LISTE_R=vk[2] )) - mcfact.append(_F(PARA='G' ,LISTE_R=g )) - __resu3=CREA_TABLE(LISTE=mcfact,TITRE='--> METHODE 3') - aster.affiche('MESSAGE',__resu3.EXTR_TABLE().__repr__()) - DETRUIRE(CONCEPT=_F(NOM=__resu3),INFO=1) + x1 = abscs[:-1] + x2 = abscs[1: ] + y1 = saut[:,:-1] + y2 = saut[:,1: ] + k = (sqrt(y2)*sqrt(x2)+sqrt(y1)*sqrt(x1))*(x2-x1) + k = Numeric.sum(transpose(k)) + de = abscs[-1] + vk = (k/de**2)*isig[:,0] + g = coefg*(vk[0]**2+vk[1]**2)+coefg3*vk[2]**2 + kg3=Numeric.concatenate([[vk[0]]*2,[vk[1]]*2,[vk[2]]*2,[g]*2]) + if INFO==2 : + mcfact=[] + mcfact.append(_F(PARA='K1' ,LISTE_R=vk[0] )) + mcfact.append(_F(PARA='K2' ,LISTE_R=vk[1] )) + if ndim==3 : + mcfact.append(_F(PARA='K3' ,LISTE_R=vk[2] )) + mcfact.append(_F(PARA='G' ,LISTE_R=g )) + __resu3=CREA_TABLE(LISTE=mcfact,TITRE='--> METHODE 3') + aster.affiche('MESSAGE',__resu3.EXTR_TABLE().__repr__()) + DETRUIRE(CONCEPT=_F(NOM=__resu3),INFO=1) # ------------------------------------------------------------------ # CREATION DE LA TABLE # ------------------------------------------------------------------ diff --git a/Aster/Cata/cataSTA9/Macro/post_k_trans_ops.py b/Aster/Cata/cataSTA9/Macro/post_k_trans_ops.py index 54b71a97..d0a3b890 100644 --- a/Aster/Cata/cataSTA9/Macro/post_k_trans_ops.py +++ b/Aster/Cata/cataSTA9/Macro/post_k_trans_ops.py @@ -1,4 +1,4 @@ -#@ MODIF post_k_trans_ops Macro DATE 22/01/2008 AUTEUR REZETTE C.REZETTE +#@ MODIF post_k_trans_ops Macro DATE 07/10/2008 AUTEUR PELLET J.PELLET # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -113,7 +113,7 @@ def post_k_trans_ops(self,RESU_TRANS,K_MODAL,TOUT_ORDRE, NUME_ORDRE, LIST_ORDRE, if F3D : n_mode = max((__kgtheta.EXTR_TABLE())['NUME_MODE'].values()['NUME_MODE']) nbno = max((__kgtheta.EXTR_TABLE())['NUM_PT'].values()['NUM_PT']) - labsc = (__kgtheta.EXTR_TABLE())['ABS_CURV'].values()['ABS_CURV'][0:nbno] + labsc = (__kgtheta.EXTR_TABLE())['ABSC_CURV'].values()['ABSC_CURV'][0:nbno] if nmodtr != n_mode : n_mode = min(nmodtr,n_mode) @@ -229,7 +229,7 @@ def post_k_trans_ops(self,RESU_TRANS,K_MODAL,TOUT_ORDRE, NUME_ORDRE, LIST_ORDRE, tabout = CREA_TABLE(LISTE = (_F(LISTE_I =lo, PARA = 'NUME_ORDRE'), _F(LISTE_R =li, PARA = 'INST'), _F(LISTE_I =range(nbno)*nbarch, PARA ='NUM_PT' ), - _F(LISTE_R =labsc*nbarch, PARA = 'ABS_CURV'), + _F(LISTE_R =labsc*nbarch, PARA = 'ABSC_CURV'), _F(LISTE_R =K1t, PARA = k1), _F(LISTE_R =K2t, PARA = k2), _F(LISTE_R =K3t, PARA = k3),), diff --git a/Aster/Cata/cataSTA9/Macro/simu_point_mat_ops.py b/Aster/Cata/cataSTA9/Macro/simu_point_mat_ops.py index 3e6d69e0..09a27c57 100644 --- a/Aster/Cata/cataSTA9/Macro/simu_point_mat_ops.py +++ b/Aster/Cata/cataSTA9/Macro/simu_point_mat_ops.py @@ -1,4 +1,4 @@ -#@ MODIF simu_point_mat_ops Macro DATE 23/04/2007 AUTEUR PROIX J-M.PROIX +#@ MODIF simu_point_mat_ops Macro DATE 07/10/2008 AUTEUR GENIAUT S.GENIAUT # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -485,6 +485,7 @@ def simu_point_mat_ops(self, COMP_INCR, MATER, INCREMENT, NEWTON,CONVERGENCE,REC if etatinit == 1 : __EVOL = STAT_NON_LINE( + INFO = INFO, MODELE = __MO, CHAM_MATER = __CHMAT, ETAT_INIT=init_dico, @@ -494,6 +495,7 @@ def simu_point_mat_ops(self, COMP_INCR, MATER, INCREMENT, NEWTON,CONVERGENCE,REC else: __EVOL = STAT_NON_LINE( + INFO = INFO, MODELE = __MO, CHAM_MATER = __CHMAT, EXCIT = l_char,**motscles) diff --git a/Aster/Cata/cataSTA9/SD/co_cara_elem.py b/Aster/Cata/cataSTA9/SD/co_cara_elem.py index 74ed0fc5..c90f369e 100644 --- a/Aster/Cata/cataSTA9/SD/co_cara_elem.py +++ b/Aster/Cata/cataSTA9/SD/co_cara_elem.py @@ -1,4 +1,4 @@ -#@ MODIF co_cara_elem SD DATE 13/02/2007 AUTEUR PELLET J.PELLET +#@ MODIF co_cara_elem SD DATE 20/10/2008 AUTEUR ASSIRE A.ASSIRE # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -23,4 +23,15 @@ from sd_cara_elem import sd_cara_elem # ----------------------------------------------------------------------------- class cara_elem(ASSD, sd_cara_elem): - pass + def toEPX(self): + EPXnoeud = self.CARRIGXN.get() + EPXval = self.CARRIGXV.get() + ressorts = {} + i=0 + assert len(EPXval) == len(EPXnoeud)*6, 'donnees incorrectes' + for no in EPXnoeud : + ressorts[no] = EPXval[i:i+6] + i+=6 + return ressorts + + diff --git a/Aster/Cata/cataSTA9/SD/sd_cara_elem.py b/Aster/Cata/cataSTA9/SD/sd_cara_elem.py index dacbbbe5..ca618588 100644 --- a/Aster/Cata/cataSTA9/SD/sd_cara_elem.py +++ b/Aster/Cata/cataSTA9/SD/sd_cara_elem.py @@ -1,4 +1,4 @@ -#@ MODIF sd_cara_elem SD DATE 09/05/2007 AUTEUR PELLET J.PELLET +#@ MODIF sd_cara_elem SD DATE 23/10/2008 AUTEUR TORKHANI M.TORKHANI # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -42,5 +42,11 @@ class sd_cara_elem(AsBase): CVENTCXF = Facultatif(sd_carte()) CARPOUFL = Facultatif(sd_carte()) CARGEOPO = Facultatif(sd_carte()) + CARRIGXN = Facultatif(AsVK8()) + CARRIGXV = Facultatif(AsVR()) + CARDNSCK = Facultatif(sd_carte()) + CARDNSCM = Facultatif(sd_carte()) + CARDNSCA = Facultatif(sd_carte()) + CARDINFO = Facultatif(sd_carte()) diff --git a/Aster/Cata/cataSTA9/SD/sd_cham_elem.py b/Aster/Cata/cataSTA9/SD/sd_cham_elem.py index d5fd1595..7adc4980 100644 --- a/Aster/Cata/cataSTA9/SD/sd_cham_elem.py +++ b/Aster/Cata/cataSTA9/SD/sd_cham_elem.py @@ -1,4 +1,4 @@ -#@ MODIF sd_cham_elem SD DATE 18/03/2008 AUTEUR PELLET J.PELLET +#@ MODIF sd_cham_elem SD DATE 07/10/2008 AUTEUR PELLET J.PELLET # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -46,4 +46,48 @@ class sd_cham_elem(sd_titre): assert celk[5] != '' , celk assert celk[6] in ('MPI_COMPLET','MPI_INCOMPLET') , celk + def check_2(self, checker): + if not checker._profond : return + if not self.exists() : return + celd=self.CELD.get() + assert celd[0] > 0 , celd + ngrel= celd[1] + assert ngrel > 0 , celd + mxsp = celd[2] + assert mxsp > 0 , celd + mxcmp = celd[3] + lvari = mxcmp > 0 + for kgrel in range(ngrel) : + debugr= celd[4+kgrel]-1 + nbel = celd[debugr+1] + modelo= celd[debugr+2] + lgcata= celd[debugr+3] + lggrel= celd[debugr+4] + + assert nbel > 0 , (nbel,kgrel) + assert modelo >= 0 , (modelo,kgrel) + if modelo == 0 : + assert lgcata == 0 , (lgcata,kgrel) + assert lggrel == 0 , (lggrel,kgrel) + continue + + assert lgcata > 0 , (lgcata,kgrel) + assert lggrel > 0 , (lggrel,kgrel) + assert lggrel >= nbel*lgcata , (lggrel,kgrel,nbel,lgcata) + + + for iel in range(nbel) : + nbsp =celd[debugr+4+4*iel+1] + ncdyn =celd[debugr+4+4*iel+2] + lgchel=celd[debugr+4+4*iel+3] + adiel =celd[debugr+4+4*iel+4] + assert nbsp > 0 , (nbsp,kgrel,iel) + if lvari : + assert ncdyn > 0 , (ncdyn,kgrel,iel) + assert lgchel == lgcata*nbsp*ncdyn , (lgchel,lgcata,nbsp,ncdyn,kgrel,iel) + else : + assert ncdyn == 0 , (ncdyn,kgrel,iel) + assert lgchel == lgcata*nbsp , (lgchel,lgcata,nbsp,kgrel,iel) + assert adiel > 0 , (adiel,kgrel,iel) + diff --git a/Aster/Cata/cataSTA9/SD/sd_cham_mater.py b/Aster/Cata/cataSTA9/SD/sd_cham_mater.py index 42ed3f33..311e3400 100644 --- a/Aster/Cata/cataSTA9/SD/sd_cham_mater.py +++ b/Aster/Cata/cataSTA9/SD/sd_cham_mater.py @@ -1,4 +1,4 @@ -#@ MODIF sd_cham_mater SD DATE 28/01/2008 AUTEUR PELLET J.PELLET +#@ MODIF sd_cham_mater SD DATE 30/06/2008 AUTEUR PROIX J-M.PROIX # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -171,7 +171,7 @@ class sd_cham_mater(AsBase): for kedit in range(n_gd_edit): v1=vale[kedit*ncmp_max:(kedit+1)*ncmp_max] assert v1[3]=='COMP_INCR' , v1 - sd2=sd_compor(v1[5].split('.')[0].strip()) ; sd2.check(checker) + sd2=sd_compor(v1[6].split('.')[0].strip()) ; sd2.check(checker) for x1 in v1[7:] : assert x1=='' , v1 diff --git a/Aster/Cata/cataSTA9/SD/sd_cham_no.py b/Aster/Cata/cataSTA9/SD/sd_cham_no.py index 7a1333de..66e7c4e6 100644 --- a/Aster/Cata/cataSTA9/SD/sd_cham_no.py +++ b/Aster/Cata/cataSTA9/SD/sd_cham_no.py @@ -1,4 +1,4 @@ -#@ MODIF sd_cham_no SD DATE 28/11/2007 AUTEUR COURTOIS M.COURTOIS +#@ MODIF sd_cham_no SD DATE 03/11/2008 AUTEUR PELLET J.PELLET # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -21,7 +21,7 @@ from SD import * from SD.sd_titre import sd_titre -from SD.sd_nume_equa import sd_nume_equa +from SD.sd_prof_chno import sd_prof_chno class sd_cham_no(sd_titre): @@ -36,7 +36,6 @@ class sd_cham_no(sd_titre): # retourne "vrai" si la SD semble exister (et donc qu'elle peut etre vérifiée) return self.REFE.exists - # indirection vers PROF_CHNO/NUME_EQUA : def check_cham_no_i_REFE(self, checker): if not self.exists() : return lnom = self.REFE.get() @@ -48,9 +47,8 @@ class sd_cham_no(sd_titre): sd2 = sd_maillage(lnom[0]) sd2.check(checker) - # j'aurai préféré : sd_prof_chno que sd_nume_equa (mais sslv111b !) AJACOT_PB : if lnom[1].strip() : - if checker.names.has_key(lnom[1][:14]+'.NUME.DEEQ'): return - sd2 = sd_nume_equa(lnom[1]) ; sd2.check(checker) + if checker.names.has_key(lnom[1][:14]+'.NUME.PRNO'): return + sd2 = sd_prof_chno(lnom[1]) ; sd2.check(checker) diff --git a/Aster/Cata/cataSTA9/SD/sd_char_acou.py b/Aster/Cata/cataSTA9/SD/sd_char_acou.py index b480baab..62c02d31 100644 --- a/Aster/Cata/cataSTA9/SD/sd_char_acou.py +++ b/Aster/Cata/cataSTA9/SD/sd_char_acou.py @@ -1,27 +1,30 @@ -#@ MODIF sd_char_acou SD DATE 13/02/2007 AUTEUR PELLET J.PELLET +#@ MODIF sd_char_acou SD DATE 16/09/2008 AUTEUR PELLET J.PELLET # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2007 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE 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 SD import * from SD.sd_ligrel import sd_ligrel from SD.sd_carte import sd_carte +from SD.sd_char_cine import sd_char_cine + + class sd_char_acou(AsBase): nomj = SDNom(fin=8) chac_vitfa = Facultatif(sd_carte(SDNom(nomj='.CHAC.VITFA', fin=19))) @@ -30,6 +33,7 @@ class sd_char_acou(AsBase): chac_cimpo = Facultatif(sd_carte(SDNom(nomj='.CHAC.CIMPO', fin=19))) chac_imped = Facultatif(sd_carte(SDNom(nomj='.CHAC.IMPED', fin=19))) chac_ligre = Facultatif(sd_ligrel(SDNom(nomj='.CHAC.LIGRE', fin=19))) + ELIM = Facultatif(sd_char_cine()) TYPE = AsVK8(lonmax=1, ) diff --git a/Aster/Cata/cataSTA9/SD/sd_char_cine.py b/Aster/Cata/cataSTA9/SD/sd_char_cine.py index 23f6964f..56317c40 100644 --- a/Aster/Cata/cataSTA9/SD/sd_char_cine.py +++ b/Aster/Cata/cataSTA9/SD/sd_char_cine.py @@ -1,4 +1,4 @@ -#@ MODIF sd_char_cine SD DATE 08/10/2007 AUTEUR PELLET J.PELLET +#@ MODIF sd_char_cine SD DATE 16/09/2008 AUTEUR PELLET J.PELLET # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -38,27 +38,30 @@ class sd_char_cine(AsBase): return self.AFCK.exists - def u_veri1(self): # retourne (CIME/CITH/CIAC, RE/CX/FO/FT) + def u_veri1(self): # retourne (CIME/CITH/CIAC, RE/CX/FT) #--------------------------------------------------------------- + if not self.exists() : return afck=self.AFCK.get() l1=afck[0].strip().split('_') ; assert len(l1)==2 , afck phen, tsca= l1[0], l1[1] assert phen in ('CIME', 'CITH', 'CIAC'), afck - assert tsca in ('RE', 'CX', 'FO', 'FT'), tsca + assert tsca in ('RE', 'CX', 'FT'), tsca return phen, tsca def check_AFCK(self,checker): #--------------------------------------------- + if not self.exists() : return phen, tsca = self.u_veri1() afck=self.AFCK.get() nomo=afck[1].strip() sd2=sd_modele(nomo); sd2.check(checker) - if afck[2].strip() != '' : assert phen=='CIME' and tsca=='FT', afck + if afck[2].strip() != '' : assert (phen=='CIME' or phen=='CITH') and tsca=='FT', afck def check_AFCI(self,checker): #--------------------------------------------- + if not self.exists() : return phen, tsca = self.u_veri1() afci=self.AFCI.get() nbloc=afci[0] @@ -73,6 +76,7 @@ class sd_char_cine(AsBase): def check_AFCV(self,checker): #------------------------------------------------- + if not self.exists() : return phen, tsca = self.u_veri1() afci=self.AFCI.get() nbloc=afci[0] @@ -85,14 +89,14 @@ class sd_char_cine(AsBase): assert self.AFCV.lonmax == nbloc , (nbloc,self.AFCV.lonmax) if tsca == 'RE' : - assert tsca2=='R', tsca2 - if tsca in ('FO', 'FT') : - assert tsca2=='K' , tsca2 # champ de fonctions - if tsca=='CX' : - assert tsca2=='C', tsca2 + assert tsca2=='R', tsca2 # champ de réels + if tsca == 'FT' : + assert tsca2=='K', tsca2 # champ de fonctions + if tsca == 'CX' : + assert tsca2=='C', tsca2 # champ de complexes # vérification des fonctions : - if tsca in ( 'FO', 'FT') : # 'FO' : fonction ; 'FT' : il existe une fonction de 'INST' + if tsca == 'FT' : afcv = self.AFCV.get() for fonc in afcv : sd2=sd_fonction(fonc); sd2.check(checker) diff --git a/Aster/Cata/cataSTA9/SD/sd_char_meca.py b/Aster/Cata/cataSTA9/SD/sd_char_meca.py index 1048b177..7e5a1dc5 100644 --- a/Aster/Cata/cataSTA9/SD/sd_char_meca.py +++ b/Aster/Cata/cataSTA9/SD/sd_char_meca.py @@ -1,4 +1,4 @@ -#@ MODIF sd_char_meca SD DATE 01/04/2008 AUTEUR ABBAS M.ABBAS +#@ MODIF sd_char_meca SD DATE 16/09/2008 AUTEUR PELLET J.PELLET # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -24,6 +24,7 @@ from SD.sd_ligrel import sd_ligrel from SD.sd_carte import sd_carte from SD.sd_char_unilate import sd_char_unilate from SD.sd_char_contact import sd_char_contact +from SD.sd_char_cine import sd_char_cine class sd_char_gf_xx(AsBase): @@ -96,6 +97,7 @@ class sd_char_meca(AsBase): TYPE = AsVK8(lonmax=1) CHME = Facultatif(sd_char_chme()) + ELIM = Facultatif(sd_char_cine()) UNILATE = Facultatif(sd_char_unilate()) CONTACT = Facultatif(sd_char_contact()) diff --git a/Aster/Cata/cataSTA9/SD/sd_char_ther.py b/Aster/Cata/cataSTA9/SD/sd_char_ther.py index 37cadd6d..38198e2c 100644 --- a/Aster/Cata/cataSTA9/SD/sd_char_ther.py +++ b/Aster/Cata/cataSTA9/SD/sd_char_ther.py @@ -1,4 +1,4 @@ -#@ MODIF sd_char_ther SD DATE 17/07/2007 AUTEUR PELLET J.PELLET +#@ MODIF sd_char_ther SD DATE 16/09/2008 AUTEUR PELLET J.PELLET # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -25,6 +25,7 @@ from SD.sd_cham_elem import sd_cham_elem from SD.sd_carte import sd_carte from SD.sd_champ import sd_champ from SD.sd_fonction import sd_fonction +from SD.sd_char_cine import sd_char_cine class sd_char_chth(AsBase): @@ -64,7 +65,8 @@ class sd_char_chth(AsBase): class sd_char_ther(AsBase): #-------------------------------- nomj = SDNom(fin=8) - TYPE = AsVK8(lonmax=1) - CHTH = sd_char_chth() + TYPE = AsVK8(lonmax=1) + CHTH = sd_char_chth() + ELIM = Facultatif(sd_char_cine()) diff --git a/Aster/Cata/cataSTA9/SD/sd_compor.py b/Aster/Cata/cataSTA9/SD/sd_compor.py index b7ed032f..b283ec73 100644 --- a/Aster/Cata/cataSTA9/SD/sd_compor.py +++ b/Aster/Cata/cataSTA9/SD/sd_compor.py @@ -1,4 +1,4 @@ -#@ MODIF sd_compor SD DATE 19/11/2007 AUTEUR PROIX J-M.PROIX +#@ MODIF sd_compor SD DATE 30/06/2008 AUTEUR PROIX J-M.PROIX # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== diff --git a/Aster/Cata/cataSTA9/SD/sd_macr_elem_dyna.py b/Aster/Cata/cataSTA9/SD/sd_macr_elem_dyna.py index 05bbea0f..3844fba7 100644 --- a/Aster/Cata/cataSTA9/SD/sd_macr_elem_dyna.py +++ b/Aster/Cata/cataSTA9/SD/sd_macr_elem_dyna.py @@ -1,4 +1,4 @@ -#@ MODIF sd_macr_elem_dyna SD DATE 24/09/2007 AUTEUR DEVESA G.DEVESA +#@ MODIF sd_macr_elem_dyna SD DATE 22/09/2008 AUTEUR ANDRIAM H.ANDRIAMBOLOLONA # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -28,7 +28,7 @@ class sd_macr_elem_dyna_m(AsBase): nomj = SDNom(fin=18) DESC = AsVI (SDNom(nomj='_DESC'),lonmax=3) REFE = AsVK24 (SDNom(nomj='_REFE'),lonmax=2) - VALE = AsVR (SDNom(nomj='_VALE')) + VALE = AsObject (SDNom(nomj='_VALE'),type=Parmi('C','R',),) def check_macr_elem_dyna_m_1(self,checker): vale=self.VALE.get() diff --git a/Aster/Cata/cataSTA9/SD/sd_matr_cine.py b/Aster/Cata/cataSTA9/SD/sd_matr_cine.py index 2aeadcdf..7bce4ec7 100644 --- a/Aster/Cata/cataSTA9/SD/sd_matr_cine.py +++ b/Aster/Cata/cataSTA9/SD/sd_matr_cine.py @@ -1,4 +1,4 @@ -#@ MODIF sd_matr_cine SD DATE 14/01/2008 AUTEUR DESOZA T.DESOZA +#@ MODIF sd_matr_cine SD DATE 22/09/2008 AUTEUR DESOZA T.DESOZA # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -26,7 +26,7 @@ class sd_matr_cine(AsBase): nomj = SDNom(fin=19) CCID = AsVI() - CCJJ = Facultatif(AsVI()) + CCII = Facultatif(AsVI()) CCLL = Facultatif(AsVI()) CCVA = Facultatif(AsObject(genr='V', xous='S', type=Parmi('R','C'))) diff --git a/Aster/Cata/cataSTA9/SD/sd_matr_elem.py b/Aster/Cata/cataSTA9/SD/sd_matr_elem.py index 4ae31b93..0e257c74 100644 --- a/Aster/Cata/cataSTA9/SD/sd_matr_elem.py +++ b/Aster/Cata/cataSTA9/SD/sd_matr_elem.py @@ -1,4 +1,4 @@ -#@ MODIF sd_matr_elem SD DATE 25/03/2008 AUTEUR REZETTE C.REZETTE +#@ MODIF sd_matr_elem SD DATE 16/09/2008 AUTEUR PELLET J.PELLET # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -29,8 +29,9 @@ class sd_matr_elem(AsBase): nomj = SDNom(fin=19) RERR = AsVK24(lonmax=5, ) RELR = Facultatif(AsVK24()) + RECC = Facultatif(AsVK8()) TITR = AsVK80(SDNom(debut=19), optional=True) - + # indirection par RELR : def check_matr_elem_i_RELR(self, checker): if not self.RELR.exists : return diff --git a/Aster/Cata/cataSTA9/SD/sd_nume_ddl_com.py b/Aster/Cata/cataSTA9/SD/sd_nume_ddl_com.py index 6d18fddd..3dd3aad3 100644 --- a/Aster/Cata/cataSTA9/SD/sd_nume_ddl_com.py +++ b/Aster/Cata/cataSTA9/SD/sd_nume_ddl_com.py @@ -1,21 +1,21 @@ -#@ MODIF sd_nume_ddl_com SD DATE 13/02/2007 AUTEUR PELLET J.PELLET +#@ MODIF sd_nume_ddl_com SD DATE 03/11/2008 AUTEUR PELLET J.PELLET # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2007 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE 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 SD import * @@ -25,7 +25,7 @@ from SD.sd_stockage import sd_stockage class sd_nume_ddl_com(sd_stockage): -#-------------------------------- +#---------------------------------- nomj = SDNom(fin=14) NSLV = AsVK24(lonmax=1, ) diff --git a/Aster/Cata/cataSTA9/SD/sd_nume_ddl_gene.py b/Aster/Cata/cataSTA9/SD/sd_nume_ddl_gene.py index 25f06ed5..88ed5120 100644 --- a/Aster/Cata/cataSTA9/SD/sd_nume_ddl_gene.py +++ b/Aster/Cata/cataSTA9/SD/sd_nume_ddl_gene.py @@ -1,21 +1,21 @@ -#@ MODIF sd_nume_ddl_gene SD DATE 13/02/2007 AUTEUR PELLET J.PELLET +#@ MODIF sd_nume_ddl_gene SD DATE 03/11/2008 AUTEUR PELLET J.PELLET # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2007 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE 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 SD import * @@ -25,7 +25,7 @@ from SD.sd_nume_eqge import sd_nume_eqge class sd_nume_ddl_gene(sd_nume_ddl_com): -#-------------------------------- +#--------------------------------------- nomj = SDNom(fin=14) nume = Facultatif(sd_nume_eqge(SDNom(nomj='.NUME'))) # n'existe pas toujours : CALC_MATR_AJOU/fdlv106a diff --git a/Aster/Cata/cataSTA9/SD/sd_nume_equa.py b/Aster/Cata/cataSTA9/SD/sd_nume_equa.py index 42e3394a..e3656f51 100644 --- a/Aster/Cata/cataSTA9/SD/sd_nume_equa.py +++ b/Aster/Cata/cataSTA9/SD/sd_nume_equa.py @@ -1,4 +1,4 @@ -#@ MODIF sd_nume_equa SD DATE 11/02/2008 AUTEUR PELLET J.PELLET +#@ MODIF sd_nume_equa SD DATE 03/11/2008 AUTEUR PELLET J.PELLET # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -23,8 +23,8 @@ from SD import * from SD.sd_prof_chno import sd_prof_chno class sd_nume_equa(sd_prof_chno): nomj = SDNom(fin=19) - NEQU = Facultatif(AsVI(SDNom(debut=19), lonmax=2, )) - DELG = Facultatif(AsVI(SDNom(debut=19), )) - REFN = Facultatif(AsVK24(SDNom(debut=19),lonmax=4, )) + NEQU = AsVI(lonmax=2,) + DELG = AsVI( ) + REFN = AsVK24(lonmax=4,) diff --git a/Aster/Cata/cataSTA9/SD/sd_prof_chno.py b/Aster/Cata/cataSTA9/SD/sd_prof_chno.py index 3d81d6d3..fd7380a1 100644 --- a/Aster/Cata/cataSTA9/SD/sd_prof_chno.py +++ b/Aster/Cata/cataSTA9/SD/sd_prof_chno.py @@ -1,31 +1,30 @@ -#@ MODIF sd_prof_chno SD DATE 13/02/2007 AUTEUR PELLET J.PELLET +#@ MODIF sd_prof_chno SD DATE 03/11/2008 AUTEUR PELLET J.PELLET # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2007 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE 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 SD import * class sd_prof_chno(AsBase): nomj = SDNom(fin=19) - LPRN = Facultatif(AsVI(SDNom(debut=19), )) - PRNO = AsColl(SDNom(debut=19), acces='NU', stockage='CONTIG', modelong=Parmi('CONSTANT', 'VARIABLE'), type='I', ) - LILI = AsObject(SDNom(debut=19), genr='N', xous='S', type='K', ltyp=24, ) - NUEQ = AsVI(SDNom(debut=19), ) - DEEQ = AsVI(SDNom(debut=19), ) + PRNO = AsColl( acces='NU', stockage='CONTIG', modelong=Parmi('CONSTANT', 'VARIABLE'), type='I', ) + LILI = AsObject( genr='N', xous='S', type='K', ltyp=24, ) + NUEQ = AsVI( ) + DEEQ = AsVI( ) diff --git a/Aster/Cata/cataSTA9/SD/sd_resultat.py b/Aster/Cata/cataSTA9/SD/sd_resultat.py index 565f82a4..95f8ab55 100644 --- a/Aster/Cata/cataSTA9/SD/sd_resultat.py +++ b/Aster/Cata/cataSTA9/SD/sd_resultat.py @@ -1,4 +1,4 @@ -#@ MODIF sd_resultat SD DATE 22/10/2007 AUTEUR PELLET J.PELLET +#@ MODIF sd_resultat SD DATE 07/10/2008 AUTEUR PELLET J.PELLET # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -38,6 +38,8 @@ class sd_resultat(sd_titre): ORDR = AsVI(SDNom(debut=19), ) DESC = AsObject(SDNom(debut=19), genr='N', xous='S', type='K', ltyp=16, ) + NOEU = Facultatif(AsVK16(SDNom(debut=19))) # en attendant la correction de EL 12583 + # la déclaration suivante simplifie la fonction check_resultat_i_char CHAR = Facultatif(AsVK24(SDNom(debut=19),)) @@ -73,8 +75,8 @@ class sd_resultat(sd_titre): ltyp=Parmi(4,8,16,24),) ; sd2.check(checker) - # indirection vers les sd_l_charges stockées comme paramètres dans l'objet .CHAR : - def check_resultat_i_CHAR(self, checker): + # indirection vers les sd_l_charges stockées comme paramètres sous le nom EXCIT : + def check_resultat_i_EXCIT(self, checker): lnom = self.CHAR.get() if not lnom: return S1=Set() @@ -130,8 +132,8 @@ class sd_resultat(sd_titre): sdu_compare(sd2,checker,len(sd2.get()),'==',npara*nbmax_ordr,'Incohérence LONMAX / LONMAX(.ORDR)') - # vérification que les variables d'accès sont bien différentes : - def check_ACCES(self, checker): + # vérifications supplémentaires : + def check_veri1(self, checker): ordr = self.ORDR.get() nova = self.NOVA.get() tava = self.TAVA.get() @@ -142,18 +144,20 @@ class sd_resultat(sd_titre): # objets trouvés dans .TAVA for knova in tava.keys(): - nova1=nova[knova-1] + nova1=nova[knova-1].strip() suffix=tava[knova][0][:5] if not suffix.strip(): continue nupara=int(tava[knova][1]) nbpara=int(tava[knova][2]) + assert nupara <= nbpara, (nupara, nbpara) acces=tava[knova][3].strip() assert acces in ('PARA','ACCES') , acces + + # on vérifie que les variables d'accès sont toutes différentes : if acces == 'ACCES' : # pour l'instant, on ne vérifie que 'INST' car 'FREQ', 'NUME_MODE', 'NOEUD_CMP' ne semblent pas tous différents ... - if nova1.strip() != 'INST' : continue - sdu_compare(tava,checker,nupara,'<=',nbpara,'nupara <= nbpara') + if nova1 != 'INST' : continue nom=self.nomj()[:19]+suffix sd2 = AsObject(SDNom(nomj=nom,debut=0),) @@ -164,4 +168,16 @@ class sd_resultat(sd_titre): sdu_tous_differents(sd2,checker,seq,nova1) + # on vérifie les éventuelles sd_l_charge (EXCIT) : + if nova1=="EXCIT" : + nom=self.nomj()[:19]+suffix + sd2 = AsObject(SDNom(nomj=nom,debut=0),) + vect=sd2.get() + S1=Set() + for k in range(nbuti_ordr) : + S1.add(vect[k*nbpara+nupara-1]) + for nom in S1 : + if nom.strip() != '' : + sd2 = sd_l_charges(nomj=nom); sd2.check(checker) + diff --git a/Aster/Cata/cataSTA9/SD/sd_resultat_dyn.py b/Aster/Cata/cataSTA9/SD/sd_resultat_dyn.py index 6dab8958..07ac7c55 100644 --- a/Aster/Cata/cataSTA9/SD/sd_resultat_dyn.py +++ b/Aster/Cata/cataSTA9/SD/sd_resultat_dyn.py @@ -1,4 +1,4 @@ -#@ MODIF sd_resultat_dyn SD DATE 11/02/2008 AUTEUR PELLET J.PELLET +#@ MODIF sd_resultat_dyn SD DATE 03/11/2008 AUTEUR PELLET J.PELLET # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -30,8 +30,7 @@ from SD.sd_proj_mesu import sd_proj_mesu class sd_resultat_dyn(sd_resultat): #-------------------------------------------------- nomj = SDNom(fin=8) - PROFC_NUME_REFN = Facultatif(AsVK24(SDNom(nomj='.PROFC.NUME.REFN'), lonmax=4, )) - REFD = Facultatif(AsVK24(SDNom(debut=19), lonmax=6, )) # n'existe pas dans sdll23a + REFD = AsVK24(SDNom(debut=19), lonmax=6, ) # si utilisation de PROJ_MESU_MODAL : PROJM = Facultatif(sd_proj_mesu()) diff --git a/Aster/Cata/cataSTA9/SD/sd_solveur.py b/Aster/Cata/cataSTA9/SD/sd_solveur.py index 2d678261..cbf779a0 100644 --- a/Aster/Cata/cataSTA9/SD/sd_solveur.py +++ b/Aster/Cata/cataSTA9/SD/sd_solveur.py @@ -1,4 +1,4 @@ -#@ MODIF sd_solveur SD DATE 13/02/2007 AUTEUR PELLET J.PELLET +#@ MODIF sd_solveur SD DATE 22/07/2008 AUTEUR PELLET J.PELLET # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -27,3 +27,17 @@ class sd_solveur(AsBase): SLVI = AsVI(SDNom(debut=19), lonmax=6, ) + def check_SLVK(self,checker): + #--------------------------------------------- + slvk = self.SLVK.get_stripped() + method=slvk[0] + if method == 'MUMPS' : + assert slvk[1] in ('AUTO', 'SANS'), slvk + assert slvk[2] in ('NONSYM', 'SYMGEN', 'SYMDEF', 'AUTO'), slvk + assert slvk[3] in ('AMD','AMF','PORD','METIS','QAMD','AUTO'), slvk + assert slvk[4] in ('OUI', 'NON'), slvk + assert slvk[5] in ('OUI', 'NON'), slvk + else : + pass + + diff --git a/Aster/Cata/cataSTA9/SD/sd_squelette.py b/Aster/Cata/cataSTA9/SD/sd_squelette.py index f3ba2aba..86e28fd2 100644 --- a/Aster/Cata/cataSTA9/SD/sd_squelette.py +++ b/Aster/Cata/cataSTA9/SD/sd_squelette.py @@ -1,4 +1,4 @@ -#@ MODIF sd_squelette SD DATE 19/06/2007 AUTEUR PELLET J.PELLET +#@ MODIF sd_squelette SD DATE 03/11/2008 AUTEUR PELLET J.PELLET # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -27,7 +27,7 @@ from SD.sd_util import * class sd_squelette(sd_maillage): #------------------------------- nomj = SDNom(fin=8) - inv_skeleton = AsVI(SDNom(nomj='.INV.SKELETON'), ) + inv_skeleton = Facultatif(AsVI(SDNom(nomj='.INV.SKELETON'),)) CORRES = Facultatif(AsVI()) NOMSST = Facultatif(AsVK8(SDNom(debut=17),)) @@ -38,8 +38,9 @@ class sd_squelette(sd_maillage): def check_SKELETON(self,checker): - dime=self.DIME.get() + if not self.inv_skeleton.exists : return skeleton=self.inv_skeleton.get() + dime=self.DIME.get() nbno=dime[0] assert len(skeleton)==2*nbno, (dime,len(skeleton)) for k in skeleton : diff --git a/Aster/Cata/cataSTA9/SD/sd_table_container.py b/Aster/Cata/cataSTA9/SD/sd_table_container.py index 1afe1a17..35360005 100644 --- a/Aster/Cata/cataSTA9/SD/sd_table_container.py +++ b/Aster/Cata/cataSTA9/SD/sd_table_container.py @@ -1,4 +1,4 @@ -#@ MODIF sd_table_container SD DATE 12/02/2008 AUTEUR REZETTE C.REZETTE +#@ MODIF sd_table_container SD DATE 21/10/2008 AUTEUR REZETTE C.REZETTE # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -46,7 +46,7 @@ class sd_table_container(sd_table): # 'NOM_OBJET','TYPE_OBJET','NOM_SD' param=['NOM_OBJET','TYPE_OBJET','NOM_SD'] shape = self.TBNP.get() - assert 3,shape[0] # la table a exactement 3 paramètres + assert shape[0]>2 # la table à au moins 3 paramètres for n in param: col=self.get_column_name(n) if col == None: diff --git a/Aster/Cata/cataSTA9/SD/sd_tran_gene.py b/Aster/Cata/cataSTA9/SD/sd_tran_gene.py index a5c682f4..bd469375 100644 --- a/Aster/Cata/cataSTA9/SD/sd_tran_gene.py +++ b/Aster/Cata/cataSTA9/SD/sd_tran_gene.py @@ -1,4 +1,4 @@ -#@ MODIF sd_tran_gene SD DATE 27/11/2007 AUTEUR ANDRIAM H.ANDRIAMBOLOLONA +#@ MODIF sd_tran_gene SD DATE 25/11/2008 AUTEUR BOYERE E.BOYERE # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -108,8 +108,8 @@ class sd_tran_gene(sd_titre) : assert self.ORDR.lonmax == nbsauv assert self.INST.lonmax == nbsauv assert self.PTEM.lonmax in (1, nbsauv) - # sdu_tous_differents(self.ORDR,checker) # AJACOT_PB : j'aimerais bien "tous_différents" - # sdu_tous_differents(self.INST,checker) # mais il y a sdld102a => fiche à émettre ? + sdu_tous_differents(self.ORDR,checker) # AJACOT_PB : j'aimerais bien "tous_différents" + sdu_tous_differents(self.INST,checker) # mais il y a sdld102a => fiche à émettre ? def check_DEPL_VITE_ACCE(self,checker): diff --git a/Aster/Cata/cataSTA9/SD/sd_xfem.py b/Aster/Cata/cataSTA9/SD/sd_xfem.py index ef81e21e..b23e9075 100644 --- a/Aster/Cata/cataSTA9/SD/sd_xfem.py +++ b/Aster/Cata/cataSTA9/SD/sd_xfem.py @@ -1,4 +1,4 @@ -#@ MODIF sd_xfem SD DATE 04/02/2008 AUTEUR GALENNE E.GALENNE +#@ MODIF sd_xfem SD DATE 14/10/2008 AUTEUR GENIAUT S.GENIAUT # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -44,7 +44,7 @@ class sd_fiss_xfem(AsBase): FONDFISS = Facultatif(AsVR()) BASEFOND = Facultatif(AsVR()) FONDMULT = Facultatif(AsVI()) - CARAFOND = AsVR() + CARAFOND = AsVR(lonmax=12,) # I.2) objets relatifs à l'enrichissement diff --git a/Aster/Cata/cataSTA9/SD/utilsd.py b/Aster/Cata/cataSTA9/SD/utilsd.py index 8e4980be..ab3e6a4b 100644 --- a/Aster/Cata/cataSTA9/SD/utilsd.py +++ b/Aster/Cata/cataSTA9/SD/utilsd.py @@ -23,7 +23,7 @@ Utilitaire sur le catalogue des structures de données. """ -__revision__ = "$Id: utilsd.py,v 1.2.6.3.4.2 2008-10-10 13:32:10 pnoyret Exp $" +__revision__ = "$Id: $" import sys import os diff --git a/Aster/Cata/cataSTA9/cata.py b/Aster/Cata/cataSTA9/cata.py index 35955bcf..c192236a 100644 --- a/Aster/Cata/cataSTA9/cata.py +++ b/Aster/Cata/cataSTA9/cata.py @@ -21,8 +21,8 @@ # faire que la division soit toujours réelle from __future__ import division -__version__ = "$Name: BR_dev_V1_15 $" -__Id__ = "$Id: cata.py,v 1.3 2008-11-13 10:19:13 cchris Exp $" +__version__ = "$Name: $" +__Id__ = "$Id: cata_aster_v6.py,v 1.12 2001/01/16 15:55:05 iliade Exp $" import Accas from Accas import * @@ -226,7 +226,7 @@ from SD.co_vect_elem import vect_elem, \ vect_elem_pres_r, vect_elem_pres_c, \ vect_elem_temp_r -#& MODIF COMMUN DATE 06/05/2008 AUTEUR MARKOVIC D.MARKOVIC +#& MODIF COMMUN DATE 20/10/2008 AUTEUR MICHEL S.MICHEL # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG @@ -246,675 +246,241 @@ from SD.co_vect_elem import vect_elem, \ # ====================================================================== # RESPONSABLE PROIX J.M.PROIX def C_COMP_INCR() : return FACT(statut='f',min=1,max='**', #COMMUN# - RELATION =SIMP(statut='o',typ='TXM',defaut="VMIS_ISOT_TRAC", - into=( "ELAS", -# Spécial Discrets : début - "DIS_VISC", # RESP. : FLEJOU J.L.FLEJOU - "DIS_ECRO_CINE", # RESP. : FLEJOU J.L.FLEJOU + RELATION =SIMP(statut='o',typ='TXM',defaut="ELAS", + into=( "ELAS", # RESP. : PROIX J.M.PROIX + "ARME", # RESP. : PEYRARD C.PEYRARD + "ASSE_CORN", # RESP. : PEYRARD C.PEYRARD + "BARCELONE", # RESP. : ELGHARIB J.ELGHARIB + "BETON_DOUBLE_DP", # RESP. : ELGHARIB J.ELGHARIB + "BETON_REGLE_PR", # RESP. : NECS + "BETON_UMLV_FP", # RESP. : LEPAPE Y.LEPAPE + "CAM_CLAY", # RESP. : ELGHARIB J.ELGHARIB + "CJS", # RESP. : CHAVANT C.CHAVANT + "CORR_ACIER", # RESP. : LEPAPE Y.LEPAPE + "CZM_EXP_REG", # RESP. : LAVERNE J.LAVERNE + "CZM_EXP", # RESP. : LAVERNE J.LAVERNE + "CZM_LIN_REG", # RESP. : LAVERNE J.LAVERNE + "CZM_OUV_MIX", # RESP. : LAVERNE J.LAVERNE + "CZM_TAC_MIX", # RESP. : LAVERNE J.LAVERNE "DIS_BILI_ELAS", # RESP. : FLEJOU J.L.FLEJOU -# Spécial Discrets : fin + "DIS_CHOC", # RESP. : DEVESA G.DEVESA + "DIS_ECRO_CINE", # RESP. : FLEJOU J.L.FLEJOU + "DIS_GOUJ2E_ELAS", # RESP. : ANGLES J.ANGLES + "DIS_GOUJ2E_PLAS", # RESP. : ANGLES J.ANGLES + "DIS_GRICRA", # RESP. : FERNANDES R.FERNANDES + "DIS_VISC", # RESP. : FLEJOU J.L.FLEJOU + "DRUCK_PRAGER", # RESP. : FERNANDES R.FERNANDES + "DRUCK_PRAG_N_A", # RESP. : FERNANDES R.FERNANDES + "ELAS_GONF", # RESP. : GRANET S.GRANET "ELAS_HYPER", # RESP. : ABBAS M.ABBAS - "VMIS_ISOT_TRAC", # RESP. : PROIX J.M.PROIX - "VISC_ISOT_TRAC", # RESP. : PROIX J.M.PROIX - "VMIS_ISOT_LINE", # RESP. : PROIX J.M.PROIX - "VISC_ISOT_LINE", # RESP. : MICHEL S.MICHEL - "VMIS_ISOT_PUIS", # RESP. : PROIX J.M.PROIX - "VMIS_ECMI_TRAC", # RESP. : PROIX J.M.PROIX - "VMIS_ECMI_LINE", # RESP. : PROIX J.M.PROIX - "LABORD_1D", # RESP. : VOLDOIRE F.VOLDOIRE "ENDO_FRAGILE", # RESP. : MICHEL S.MICHEL "ENDO_ISOT_BETON", # RESP. : MICHEL S.MICHEL "ENDO_ORTH_BETON", # RESP. : MICHEL S.MICHEL - "BETON_REGLE_PR", # RESP. : NECS - "MAZARS", # RESP. : MICHEL S.MICHEL + "GATT_MONERIE", # RESP. : DEBONNIERES P.DEBONNIERES + "GLRC_DAMAGE", # RESP. : MARKOVIC D.MARKOVIC + "GLRC_DM", # RESP. : MARKOVIC D.MARKOVIC + "GRANGER_FP_INDT", # RESP. : ROSPARS C.ROSPARS + "GRANGER_FP", # RESP. : ROSPARS C.ROSPARS + "GRANGER_FP_V", # RESP. : ROSPARS C.ROSPARS + "GRAN_IRRA_LOG", # RESP. : FERNANDES R.FERNANDES + "GRILLE_CINE_LINE",# RESP. : ROSPARS C.ROSPARS + "GRILLE_ISOT_LINE",# RESP. : ROSPARS C.ROSPARS + "GRILLE_PINTO_MEN",# RESP. : ROSPARS C.ROSPARS + "HOEK_BROWN_EFF", # RESP. : CHAVANT C.CHAVANT + "HOEK_BROWN", # RESP. : CHAVANT C.CHAVANT + "HOEK_BROWN_TOT", # RESP. : CHAVANT C.CHAVANT + "HUJEUX", # RESP. : FOUCAULT A.FOUCAULT + "IRRAD3M", # RESP. : FLEJOU J.L.FLEJOU "JOINT_BA", # RESP. : MICHEL S.MICHEL - "RUPT_FRAG", # RESP. : LAVERNE J.LAVERNE - "CZM_EXP_REG", # RESP. : LAVERNE J.LAVERNE - "CZM_LIN_REG", # RESP. : LAVERNE J.LAVERNE - "CZM_EXP", # RESP. : LAVERNE J.LAVERNE - "META_P_IL", # RESP. : CANO V.CANO + "KIT_DDI", # RESP. : CHAVANT C.CHAVANT + "KIT_HHM", # RESP. : GRANET S.GRANET + "KIT_HH", # RESP. : GRANET S.GRANET + "KIT_HM", # RESP. : GRANET S.GRANET + "KIT_THHM", # RESP. : GRANET S.GRANET + "KIT_THH", # RESP. : GRANET S.GRANET + "KIT_THM", # RESP. : GRANET S.GRANET + "KIT_THV", # RESP. : GRANET S.GRANET + "LABORD_1D", # RESP. : VOLDOIRE F.VOLDOIRE + "LAIGLE", # RESP. : ELGHARIB J.ELGHARIB + "LEMAITRE_IRRA", # RESP. : FERNANDES R.FERNANDES + "LEMAITRE", # RESP. : DEBONNIERES P.DEBONNIERES + "LEMA_SEUIL", # RESP. : LECLERC S.LECLERC + "LETK", # RESP. : ELGHARIB J.ELGHARIB + "LMARC_IRRA", # RESP. : FERNANDES R.FERNANDES + "LMARC", # RESP. : None + "MAZARS", # RESP. : MICHEL S.MICHEL + "META_LEMA_ANI", # RESP. : CANO V.CANO + "META_P_CL_PT_RE", # RESP. : CANO V.CANO + "META_P_CL_PT", # RESP. : CANO V.CANO + "META_P_CL_RE", # RESP. : CANO V.CANO + "META_P_CL", # RESP. : CANO V.CANO + "META_P_IL_PT_RE", # RESP. : CANO V.CANO "META_P_IL_PT", # RESP. : CANO V.CANO "META_P_IL_RE", # RESP. : CANO V.CANO - "META_P_IL_PT_RE", # RESP. : CANO V.CANO - "META_V_IL", # RESP. : CANO V.CANO - "META_V_IL_PT", # RESP. : CANO V.CANO - "META_V_IL_RE", # RESP. : CANO V.CANO - "META_V_IL_PT_RE", # RESP. : CANO V.CANO - "META_P_INL", # RESP. : CANO V.CANO + "META_P_IL", # RESP. : CANO V.CANO + "META_P_INL_PT_RE",# RESP. : CANO V.CANO "META_P_INL_PT", # RESP. : CANO V.CANO "META_P_INL_RE", # RESP. : CANO V.CANO - "META_P_INL_PT_RE",# RESP. : CANO V.CANO - "META_V_INL", # RESP. : CANO V.CANO - "META_V_INL_PT", # RESP. : CANO V.CANO - "META_V_INL_RE", # RESP. : CANO V.CANO - "META_V_INL_PT_RE",# RESP. : CANO V.CANO - "META_P_CL", # RESP. : CANO V.CANO - "META_P_CL_PT", # RESP. : CANO V.CANO - "META_P_CL_RE", # RESP. : CANO V.CANO - "META_P_CL_PT_RE", # RESP. : CANO V.CANO - "META_V_CL", # RESP. : CANO V.CANO + "META_P_INL", # RESP. : CANO V.CANO + "META_V_CL_PT_RE", # RESP. : CANO V.CANO "META_V_CL_PT", # RESP. : CANO V.CANO "META_V_CL_RE", # RESP. : CANO V.CANO - "META_V_CL_PT_RE", # RESP. : CANO V.CANO - "META_LEMA_ANI", # RESP. : CANO V.CANO - "VMIS_CINE_LINE", # RESP. : PROIX J.M.PROIX - "VISC_TAHERI", # RESP. : TAHERI S.TAHERI + "META_V_CL", # RESP. : CANO V.CANO + "META_V_IL_PT_RE", # RESP. : CANO V.CANO + "META_V_IL_PT", # RESP. : CANO V.CANO + "META_V_IL_RE", # RESP. : CANO V.CANO + "META_V_IL", # RESP. : CANO V.CANO + "META_V_INL_PT_RE",# RESP. : CANO V.CANO + "META_V_INL_PT", # RESP. : CANO V.CANO + "META_V_INL_RE", # RESP. : CANO V.CANO + "META_V_INL", # RESP. : CANO V.CANO + "MONOCRISTAL", # RESP. : PROIX J.M.PROIX + "MULTIFIBRE", # RESP. : FLEJOU J.L.FLEJOU + "NADAI_B", # RESP. : None + "NORTON_HOFF", # RESP. : MICHEL S.MICHEL + "PINTO_MENEGOTTO", # RESP. : ROSPARS C.ROSPARS + "POLYCRISTAL", # RESP. : PROIX J.M.PROIX + "ROUSSELIER", # RESP. : CANO V.CANO + "ROUSS_PR", # RESP. : PARROT A.PARROT + "ROUSS_VISC", # RESP. : CANO V.CANO + "RUPT_FRAG", # RESP. : LAVERNE J.LAVERNE + "SANS", # RESP. : MICHEL S.MICHEL + "VENDOCHAB", # RESP. : PROIX J.M.PROIX + "VISC_CIN1_CHAB", # RESP. : PROIX J.M.PROIX + "VISC_CIN2_CHAB", # RESP. : PROIX J.M.PROIX + "VISC_CIN2_MEMO", # RESP. : PROIX J.M.PROIX + "VISC_IRRA_LOG", # RESP. : FERNANDES R.FERNANDES + "VISC_ISOT_LINE", # RESP. : MICHEL S.MICHEL + "VISC_ISOT_TRAC", # RESP. : PROIX J.M.PROIX "VISCOCHAB", # RESP. : None + "VISC_TAHERI", # RESP. : TAHERI S.TAHERI + "VMIS_ASYM_LINE", # RESP. : PROIX J.M.PROIX "VMIS_CIN1_CHAB", # RESP. : PROIX J.M.PROIX "VMIS_CIN2_CHAB", # RESP. : PROIX J.M.PROIX - "VISC_CIN1_CHAB", # RESP. : PROIX J.M.PROIX - "VISC_CIN2_CHAB", # RESP. : PROIX J.M.PROIX "VMIS_CIN2_MEMO", # RESP. : PROIX J.M.PROIX - "VISC_CIN2_MEMO", # RESP. : PROIX J.M.PROIX - "LMARC", # RESP. : None - "LMARC_IRRA", # RESP. : FERNANDES R.FERNANDES - "ROUSSELIER", # RESP. : CANO V.CANO - "ROUSS_PR", # RESP. : PARROT A.PARROT - "ROUSS_VISC", # RESP. : CANO V.CANO - "VMIS_POU_LINE", # RESP. : PROIX J.M.PROIX + "VMIS_CINE_LINE", # RESP. : PROIX J.M.PROIX + "VMIS_ECMI_LINE", # RESP. : PROIX J.M.PROIX + "VMIS_ECMI_TRAC", # RESP. : PROIX J.M.PROIX + "VMIS_ISOT_LINE", # RESP. : PROIX J.M.PROIX + "VMIS_ISOT_PUIS", # RESP. : PROIX J.M.PROIX + "VMIS_ISOT_TRAC", # RESP. : PROIX J.M.PROIX "VMIS_POU_FLEJOU", # RESP. : FLEJOU J.L.FLEJOU - "ARME", # RESP. : PEYRARD C.PEYRARD - "ASSE_CORN", # RESP. : PEYRARD C.PEYRARD - "NORTON_HOFF", # RESP. : MICHEL S.MICHEL - "LEMAITRE", # RESP. : DEBONNIERES P.DEBONNIERES - "LEMAITRE_IRRA", # RESP. : FERNANDES R.FERNANDES - "LEMA_SEUIL", # RESP. : LECLERC S.LECLERC - "IRRAD3M", # RESP. : FLEJOU J.L.FLEJOU - "VISC_IRRA_LOG", # RESP. : FERNANDES R.FERNANDES - "GRAN_IRRA_LOG", # RESP. : FERNANDES R.FERNANDES - "VENDOCHAB", # RESP. : None - "NADAI_B", # RESP. : None - "DIS_CHOC", # RESP. : DEVESA G.DEVESA - "DIS_GRICRA", # RESP. : FERNANDES R.FERNANDES - "DIS_GOUJ2E_PLAS", # RESP. : ANGLES J.ANGLES - "DIS_GOUJ2E_ELAS", # RESP. : ANGLES J.ANGLES - "GRILLE_ISOT_LINE",# RESP. : ROSPARS C.ROSPARS - "GRILLE_CINE_LINE",# RESP. : ROSPARS C.ROSPARS - "GRILLE_PINTO_MEN",# RESP. : ROSPARS C.ROSPARS - "PINTO_MENEGOTTO", # RESP. : ROSPARS C.ROSPARS - "CJS", # RESP. : CHAVANT C.CHAVANT - "HUJEUX", # RESP. : FOUCAULT A.FOUCAULT - "CAM_CLAY", # RESP. : ELGHARIB J.ELGHARIB - "BARCELONE", # RESP. : ELGHARIB J.ELGHARIB - "LAIGLE", # RESP. : ELGHARIB J.ELGHARIB - "LETK", # RESP. : ELGHARIB J.ELGHARIB - "DRUCK_PRAGER", # RESP. : FERNANDES R.FERNANDES - "DRUCK_PRAG_N_A", # RESP. : FERNANDES R.FERNANDES - "HOEK_BROWN", # RESP. : CHAVANT C.CHAVANT - "HOEK_BROWN_EFF", # RESP. : CHAVANT C.CHAVANT - "HOEK_BROWN_TOT", # RESP. : CHAVANT C.CHAVANT - "GRANGER_FP", # RESP. : ROSPARS C.ROSPARS - "GRANGER_FP_INDT", # RESP. : ROSPARS C.ROSPARS - "GRANGER_FP_V", # RESP. : ROSPARS C.ROSPARS - "BETON_UMLV_FP", # RESP. : LEPAPE Y.LEPAPE - "BETON_DOUBLE_DP", # RESP. : ELGHARIB J.ELGHARIB - "KIT_HH", # RESP. : GRANET S.GRANET - "KIT_HM", # RESP. : GRANET S.GRANET - "KIT_HHM", # RESP. : GRANET S.GRANET - "KIT_THH", # RESP. : GRANET S.GRANET - "KIT_THV", # RESP. : GRANET S.GRANET - "KIT_THM", # RESP. : GRANET S.GRANET - "KIT_THHM", # RESP. : GRANET S.GRANET - "VMIS_ASYM_LINE", # RESP. : None - "KIT_DDI", # RESP. : CHAVANT C.CHAVANT - "GLRC_DAMAGE", # RESP. : MARKOVIC D.MARKOVIC - "GLRC_DM", # RESP. : MARKOVIC D.MARKOVIC - "SANS", # RESP. : None - "CORR_ACIER", # RESP. : LEPAPE Y.LEPAPE - "MONOCRISTAL", # RESP. : PROIX J.M.PROIX - "POLYCRISTAL", # RESP. : PROIX J.M.PROIX + "VMIS_POU_LINE", # RESP. : PROIX J.M.PROIX "ZMAT", # RESP. : PROIX J.M.PROIX - "GATT_MONERIE", # RESP. : DEBONNIERES P.DEBONNIERES - "MULTIFIBRE", # RESP. : FLEJOU J.L.FLEJOU ) ), -# Spécial discrets : début - DIS_VISC =SIMP(statut='c',typ='I',defaut=12,into=(12,)), - DIS_ECRO_CINE =SIMP(statut='c',typ='I',defaut=18,into=(18,)), - DIS_BILI_ELAS =SIMP(statut='c',typ='I',defaut= 6,into=( 6,)), -# Spécial discrets : fin - ELAS =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_HYPER =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - SANS =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - CORR_ACIER =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - VMIS_ISOT_TRAC =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - VISC_ISOT_TRAC =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - VMIS_ISOT_LINE =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - VISC_ISOT_LINE =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - VMIS_ISOT_PUIS =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - VMIS_ECMI_TRAC =SIMP(statut='c',typ='I',defaut=8,into=(8,)), - VMIS_ECMI_LINE =SIMP(statut='c',typ='I',defaut=8,into=(8,)), - LABORD_1D =SIMP(statut='c',typ='I',defaut=5,into=(5,)), - ENDO_FRAGILE =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - ENDO_ISOT_BETON =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - ENDO_ORTH_BETON =SIMP(statut='c',typ='I',defaut=7,into=(7,)), - BETON_REGLE_PR =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - MAZARS =SIMP(statut='c',typ='I',defaut=4,into=(4,)), - JOINT_BA =SIMP(statut='c',typ='I',defaut=6,into=(6,)), - RUPT_FRAG =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - CZM_EXP_REG =SIMP(statut='c',typ='I',defaut=9,into=(9,)), - CZM_LIN_REG =SIMP(statut='c',typ='I',defaut=9,into=(9,)), - CZM_EXP =SIMP(statut='c',typ='I',defaut=7,into=(7,)), - 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,)), - META_P_IL_PT_RE =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - META_V_IL =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - META_V_IL_PT =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - META_V_IL_RE =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - META_V_IL_PT_RE =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - META_P_INL =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - META_P_INL_PT =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - META_P_INL_RE =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - META_P_INL_PT_RE=SIMP(statut='c',typ='I',defaut=1,into=(1,)), - META_V_INL =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - META_V_INL_PT =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - META_V_INL_RE =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - META_V_INL_PT_RE=SIMP(statut='c',typ='I',defaut=1,into=(1,)), - META_P_CL =SIMP(statut='c',typ='I',defaut=6,into=(6,)), - META_P_CL_PT =SIMP(statut='c',typ='I',defaut=6,into=(6,)), - META_P_CL_RE =SIMP(statut='c',typ='I',defaut=6,into=(6,)), - META_P_CL_PT_RE =SIMP(statut='c',typ='I',defaut=6,into=(6,)), - META_V_CL =SIMP(statut='c',typ='I',defaut=6,into=(6,)), - META_V_CL_PT =SIMP(statut='c',typ='I',defaut=6,into=(6,)), - META_V_CL_RE =SIMP(statut='c',typ='I',defaut=6,into=(6,)), - META_V_CL_PT_RE =SIMP(statut='c',typ='I',defaut=6,into=(6,)), - META_LEMA_ANI =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - VMIS_CINE_LINE =SIMP(statut='c',typ='I',defaut=7,into=(7,)), - VISCOCHAB =SIMP(statut='c',typ='I',defaut=28,into=(28,)), - VMIS_CIN1_CHAB =SIMP(statut='c',typ='I',defaut=8,into=(8,)), - VMIS_CIN2_CHAB =SIMP(statut='c',typ='I',defaut=14,into=(14,)), - VISC_CIN1_CHAB =SIMP(statut='c',typ='I',defaut=8,into=(8,)), - VISC_CIN2_CHAB =SIMP(statut='c',typ='I',defaut=14,into=(14,)), - VMIS_CIN2_MEMO =SIMP(statut='c',typ='I',defaut=28,into=(28,)), - VISC_CIN2_MEMO =SIMP(statut='c',typ='I',defaut=28,into=(28,)), - LMARC =SIMP(statut='c',typ='I',defaut=20,into=(20,)), - LMARC_IRRA =SIMP(statut='c',typ='I',defaut=20,into=(20,)), - VISC_TAHERI =SIMP(statut='c',typ='I',defaut=9,into=(9,)), - ROUSSELIER =SIMP(statut='c',typ='I',defaut=9,into=(9,)), - ROUSS_PR =SIMP(statut='c',typ='I',defaut=5,into=(5,)), - ROUSS_VISC =SIMP(statut='c',typ='I',defaut=5,into=(5,)), - VMIS_POU_LINE =SIMP(statut='c',typ='I',defaut=9,into=(9,)), - VMIS_POU_FLEJOU =SIMP(statut='c',typ='I',defaut=9 ,into=(9,)), - ASSE_CORN =SIMP(statut='c',typ='I',defaut=7,into=(7,)), - ARME =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - NORTON_HOFF =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - LEMAITRE =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - LEMA_SEUIL =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - IRRAD3M =SIMP(statut='c',typ='I',defaut=5,into=(5,)), - LEMAITRE_IRRA =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - VISC_IRRA_LOG =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - GRAN_IRRA_LOG =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - NADAI_B =SIMP(statut='c',typ='I',defaut=34,into=(34,)), - VENDOCHAB =SIMP(statut='c',typ='I',defaut=10,into=(10,)), - GRILLE_ISOT_LINE=SIMP(statut='c',typ='I',defaut=4,into=(4,)), - GRILLE_CINE_LINE=SIMP(statut='c',typ='I',defaut=4,into=(4,)), - GRILLE_PINTO_MEN=SIMP(statut='c',typ='I',defaut=16,into=(16,)), - DIS_CHOC =SIMP(statut='c',typ='I',defaut=7,into=(7,)), - DIS_GRICRA =SIMP(statut='c',typ='I',defaut=5,into=(5,)), - DIS_GOUJ2E_PLAS =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - DIS_GOUJ2E_ELAS =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - PINTO_MENEGOTTO =SIMP(statut='c',typ='I',defaut=8,into=(8,)), - CJS =SIMP(statut='c',typ='I',defaut=16,into=(16,)), - HUJEUX =SIMP(statut='c',typ='I',defaut=35,into=(35,)), - CAM_CLAY =SIMP(statut='c',typ='I',defaut=7,into=(7,)), - BARCELONE =SIMP(statut='c',typ='I',defaut=5,into=(5,)), - LAIGLE =SIMP(statut='c',typ='I',defaut=4,into=(4,)), - LETK =SIMP(statut='c',typ='I',defaut=7,into=(7,)), - DRUCK_PRAGER =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - DRUCK_PRAG_N_A =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - HOEK_BROWN =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - HOEK_BROWN_EFF =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - HOEK_BROWN_TOT =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - GRANGER_FP =SIMP(statut='c',typ='I',defaut=55,into=(55,)), - GRANGER_FP_INDT =SIMP(statut='c',typ='I',defaut=55,into=(55,)), - GRANGER_FP_V =SIMP(statut='c',typ='I',defaut=55,into=(55,)), - BETON_DOUBLE_DP =SIMP(statut='c',typ='I',defaut=4,into=(4,)), - KIT_HH =SIMP(statut='c',typ='I',defaut=0,into=(0,)), - KIT_HM =SIMP(statut='c',typ='I',defaut=0,into=(0,)), - KIT_HHM =SIMP(statut='c',typ='I',defaut=0,into=(0,)), - KIT_THH =SIMP(statut='c',typ='I',defaut=0,into=(0,)), - KIT_THV =SIMP(statut='c',typ='I',defaut=0,into=(0,)), - KIT_THM =SIMP(statut='c',typ='I',defaut=0,into=(0,)), - KIT_THHM =SIMP(statut='c',typ='I',defaut=0,into=(0,)), - VMIS_ASYM_LINE =SIMP(statut='c',typ='I',defaut=4,into=(4,)), - BETON_UMLV_FP =SIMP(statut='c',typ='I',defaut=21,into=(21,)), - GLRC_DAMAGE =SIMP(statut='c',typ='I',defaut=19,into=(19,)), - GLRC_DM =SIMP(statut='c',typ='I',defaut=4,into=(4,)), - GATT_MONERIE =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - b_monox = BLOC(condition = "RELATION == 'MONOCRISTAL' ", fr="SD issue de DEFI_COMPOR", COMPOR =SIMP(statut='o',typ=compor_sdaster,max=1),), -# b_polyx = BLOC(condition = "RELATION == 'POLYCRISTAL' ", - fr="SD issue de DEFI_COMPOR", - COMPOR =SIMP(statut='o',typ=compor_sdaster,max=1),), -# - b_zmat = BLOC(condition = "RELATION == 'ZMAT' ", - fr="Comportement de la bibliotheque Zmat", - NB_VARI =SIMP(statut='o',typ='I',max=1), - UNITE =SIMP(statut='o',typ='I',max=1),), - - - - RELATION_KIT =SIMP(statut='f',typ='TXM',max='**',validators=NoRepeat(), - into=( -# MECA - "ELAS", - "CJS", - "HUJEUX", - "CAM_CLAY", - "BARCELONE", - "LAIGLE", - "LETK", - "DRUCK_PRAGER", - "DRUCK_PRAG_N_A", - "HOEK_BROWN_EFF", - "HOEK_BROWN_TOT", - "MAZARS", - "ENDO_ISOT_BETON", -# THMC - "GAZ", - "LIQU_SATU", - "LIQU_GAZ_ATM", - "LIQU_VAPE_GAZ", - "LIQU_AD_GAZ_VAPE", - "LIQU_VAPE", - "LIQU_GAZ", -# HYDR - "HYDR_UTIL", - "HYDR_VGM", - "HYDR", - "HYDR_ENDO", -# MECA_META - "ACIER", - "ZIRC", -# MECA KIT_DDI - "VMIS_CINE_LINE", - "VMIS_ISOT_TRAC", - "VMIS_ISOT_LINE", - "VMIS_ISOT_CINE", - "VMIS_ISOT_PUIS", - "GLRC_DM", - "GRANGER_FP", - "GRANGER_FP_INDT", - "GRANGER_FP_V", - "BETON_UMLV_FP", - "ROUSS_PR", - "NADAI_B", - "BETON_DOUBLE_DP", - ),), - - - GAZ =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - LIQU_SATU =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - LIQU_GAZ_ATM =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - LIQU_VAPE_GAZ =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - LIQU_AD_GAZ_VAPE=SIMP(statut='c',typ='I',defaut=3,into=(3,)), - LIQU_VAPE =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - LIQU_GAZ =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - HYDR_UTIL =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - HYDR_VGM =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - HYDR =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - HYDR_ENDO =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ACIER =SIMP(statut='c',typ='I',defaut=5,into=(5,)), - ZIRC =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - - DEFORMATION =SIMP(statut='f',typ='TXM',defaut="PETIT", - into=("PETIT","PETIT_REAC","SIMO_MIEHE","GREEN_GR","GREEN","COROTATIONNEL", - "REAC_GEOM","EULER_ALMANSI")), - ALGO_C_PLAN =SIMP(statut='f',typ='TXM',defaut="ANALYTIQUE",into=("DEBORST","ANALYTIQUE",)), -# b_deborst = BLOC(condition = " ALGO_C_PLAN == 'DEBORST' ", -# fr="Tolérance relative sur la verification des contraintes planes", - RESI_DEBORST =SIMP(statut='f',typ='R',defaut= 1.0E-6), -# ), - ALGO_1D =SIMP(statut='f',typ='TXM',defaut="ANALYTIQUE",into=("DEBORST","ANALYTIQUE",)), -# b_dbiter = BLOC(condition = " (ALGO_C_PLAN == 'DEBORST') or (ALGO_1D == 'DEBORST')", -# fr="Nombre d'iterations maximal pour la boucle pour les contraintes planes", - ITER_MAXI_DEBORST =SIMP(statut='f',typ='I',defaut= 1), -# ), - regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - RESI_INTE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-6), - ITER_INTE_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), - ITER_INTE_PAS =SIMP(statut='f',typ='I',defaut= 0 ), - RESO_INTE =SIMP(statut='f',typ='TXM',defaut="IMPLICITE", - into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")), - TYPE_MATR_TANG =SIMP(statut='f',typ='TXM',into=("PERTURBATION","VERIFICATION","TANGENTE_SECANTE")), - b_perturb = BLOC(condition = " (TYPE_MATR_TANG != None) and (TYPE_MATR_TANG != 'TANGENTE_SECANTE') ", - fr="Calcul de la matrice tangente par perturbation, valeur de la perturbation", - VALE_PERT_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-5), - ), - b_tangsec = BLOC(condition = " TYPE_MATR_TANG == 'TANGENTE_SECANTE' ", - fr="Modification evolutive de la matrice tangente/secante", - SEUIL =SIMP(statut='f',typ='R',defaut= 3. ), - AMPLITUDE =SIMP(statut='f',typ='R',defaut= 1.5 ), - TAUX_RETOUR =SIMP(statut='f',typ='R',defaut= 0.05 ), - ), - PARM_THETA =SIMP(statut='f',typ='R',defaut= 1. ), - ) ; -#& MODIF COMMUN DATE 06/05/2008 AUTEUR CNGUYEN C.NGUYEN -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2008 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE 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 C_CONTACT() : return FACT(statut='f',max='**', - fr="Définit les zones soumises à des conditions de contact unilatéral avec ou sans frottement", - - - METHODE =SIMP(statut='f',typ='TXM',defaut="CONTRAINTE", - into =("VERIF","CONTRAINTE","LAGRANGIEN","PENALISATION","CONTINUE","GCP","XFEM") ), -# -# OPTIONS D'APPARIEMENT -# - - APPARIEMENT =SIMP(statut='f',typ='TXM',defaut="MAIT_ESCL", - into =("NODAL","MAIT_ESCL")), - - LISSAGE =SIMP(statut='f',typ='TXM',defaut="NON", - into =("OUI","NON")), - - NORMALE =SIMP(statut='f',typ='TXM',defaut="MAIT", - into =("MAIT","MAIT_ESCL","ESCL"),), - - VECT_MAIT =SIMP(statut='f',typ='TXM',defaut="AUTO", - into =("AUTO","FIXE","VECT_Y")), - - b_nmait_fixe =BLOC(condition = "VECT_MAIT == 'FIXE'", - MAIT_FIXE =SIMP(statut='f',typ='R',min=3,max=3), - ), - - b_nmait_vecty =BLOC(condition = "VECT_MAIT == 'VECT_Y'", - MAIT_VECT_Y =SIMP(statut='f',typ='R',min=3,max=3), - ), - - VECT_ESCL =SIMP(statut='f',typ='TXM',defaut="AUTO", - into =("AUTO","FIXE","VECT_Y")), - - b_nescl_fixe =BLOC(condition = "VECT_ESCL == 'FIXE'", - ESCL_FIXE =SIMP(statut='f',typ='R',min=3,max=3), - ), - - b_nescl_vecty =BLOC(condition = "VECT_ESCL == 'VECT_Y'", - ESCL_VECT_Y =SIMP(statut='f',typ='R',min=3,max=3), - ), - - - TYPE_APPA =SIMP(statut='f',typ='TXM',defaut="PROCHE", - into =("PROCHE","FIXE")), - - b_appa_fixe =BLOC(condition = "TYPE_APPA == 'FIXE'", - DIRE_APPA =SIMP(statut='f',typ='R',min=3,max=3), - ), - - b_dist_struct =BLOC(condition = "METHODE != 'CONTINUE' and METHODE != 'XFEM' ", - DIST_POUTRE =SIMP(statut='f',typ='TXM',defaut="NON", into=("OUI","NON")), - DIST_COQUE =SIMP(statut='f',typ='TXM',defaut="NON", into=("OUI","NON")), - b_cara =BLOC(condition = "DIST_POUTRE == 'OUI' or DIST_COQUE == 'OUI'", - CARA_ELEM =SIMP(statut='o',typ=(cara_elem) ), - ), - ), - - DIST_MAIT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - DIST_ESCL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - - - TOLE_APPA =SIMP(statut='f',typ='R' ,defaut=-1.0), - TOLE_PROJ_EXT =SIMP(statut='f',typ='R' ,defaut=0.50), - - - b_xfem =BLOC(condition = "METHODE == 'XFEM' ", - FISS_MAIT = SIMP(statut='o',typ=fiss_xfem,max=1), - FISS_ESCL = SIMP(statut='f',typ=fiss_xfem,max=1), - SIGN_MAIT = SIMP(statut='f',typ='TXM',into=("+","-",) ), - SIGN_ESCL = SIMP(statut='f',typ='TXM',into=("+","-",) ), - INTEGRATION = SIMP(statut='f',typ='TXM',defaut="FPG4",into=("GAUSS","FPG2","FPG3","FPG4","FPG6","FPG7","NOEUD",) ), - COEF_REGU_CONT = SIMP(statut='f',typ='R',defaut=100.E+0), - ITER_CONT_MAXI = SIMP(statut='f',typ='I',defaut=30), - ITER_GEOM_MAXI =SIMP(statut='f',typ='I',defaut=0), - - CONTACT_INIT = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ), - ALGO_LAGR = SIMP(statut='f',typ='TXM',defaut="VERSION1",into=("NON","VERSION1","VERSION2" , ) ), - COEF_ECHELLE = SIMP(statut='f',typ='R',defaut=1.E+6), - FROTTEMENT = SIMP(statut='f',typ='TXM',defaut="SANS",into=("SANS","COULOMB",) ), - GLISSIERE = SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), - b_frotxfem =BLOC(condition = "FROTTEMENT == 'COULOMB' ",fr="Paramètres du frottement de Coulomb", - COULOMB = SIMP(statut='o',typ='R',), - ITER_FROT_MAXI = SIMP(statut='f',typ='I',defaut=2), - COEF_REGU_FROT = SIMP(statut='f',typ='R',defaut=100.E+0), - SEUIL_INIT = SIMP(statut='f',typ='R',defaut=0.E+0), - ), - ), - - b_notxfem =BLOC(condition = "METHODE != 'XFEM' ", - regles=(UN_PARMI('GROUP_MA_ESCL','MAILLE_ESCL'),), - GROUP_MA_MAIT =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), - MAILLE_MAIT =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA_ESCL =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), - MAILLE_ESCL =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - ), - - - - b_verif =BLOC(condition = "METHODE == 'VERIF' ", - fr="Paramètres de la méthode sans calcul de contact", - STOP_INTERP =SIMP(statut='f',typ='TXM',defaut="NON", - into=("OUI","NON")), - TOLE_INTERP =SIMP(statut='f',typ='R',defaut = 0.), - - GROUP_MA_FOND =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - ), - - b_active =BLOC(condition = "METHODE == 'CONTRAINTE' ", - fr="Paramètres de la méthode des contraintes actives (contact uniquement)", - GLISSIERE =SIMP(statut='f',typ='TXM',defaut="NON", - into=("OUI","NON")), - b_glissiere =BLOC(condition = "GLISSIERE == 'OUI' ", - ALARME_JEU =SIMP(statut='f',typ='R',defaut=0.), - ), - - STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI", - into=("OUI","NON")), - NB_RESOL =SIMP(statut='f',typ='I', defaut=10 ), - REAC_GEOM =SIMP(statut='f',typ='TXM',defaut="AUTOMATIQUE", - into=("AUTOMATIQUE","CONTROLE","SANS")), - - 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 ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD_QUAD =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - - ), - b_lagrangien =BLOC(condition = "METHODE == 'LAGRANGIEN' ", - fr="Paramètres de la méthode Lagrangienne (contact avec ou sans frottement)", - FROTTEMENT =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SANS","COULOMB",) ), - STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI", - into=("OUI","NON")), - NB_RESOL =SIMP(statut='f',typ='I', defaut=10 ), - ITER_MULT_MAXI =SIMP(statut='f',typ='I' ,defaut=4), - - REAC_GEOM =SIMP(statut='f',typ='TXM',defaut="AUTOMATIQUE", - into=("AUTOMATIQUE","CONTROLE","SANS")), - - 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 ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD_QUAD =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), - - b_frottement =BLOC(condition = "FROTTEMENT == 'COULOMB' ",fr="Paramètres du frottement de Coulomb", - COULOMB =SIMP(statut='o',typ='R',), - COEF_MATR_FROT =SIMP(statut='f',typ='R',defaut=0.E+0), - ),), - - b_penalisation =BLOC(condition = "METHODE == 'PENALISATION' ", - fr="Paramètres de la méthode pénalisée (contact avec ou sans frottement)", - E_N =SIMP(statut='f',typ='R'), - FROTTEMENT =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SANS","COULOMB",) ), - STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI", - into=("OUI","NON")), - NB_RESOL =SIMP(statut='f',typ='I', defaut=10 ), - ITER_MULT_MAXI =SIMP(statut='f',typ='I',defaut=4), - - REAC_GEOM =SIMP(statut='f',typ='TXM',defaut="AUTOMATIQUE", - into=("AUTOMATIQUE","CONTROLE","SANS")), - - 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 ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD_QUAD =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), - - - - b_frottement =BLOC(condition = "FROTTEMENT == 'COULOMB' ",fr="Paramètres du frottement de Coulomb", - 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), - ),), - - b_continue =BLOC(condition = "METHODE == 'CONTINUE' ", - fr="Paramètres de la méthode continue (contact avec ou sans frottement)", -# regles=(UN_PARMI('GLISSIERE','FROTTEMENT'),), - -# -------------------------------- CHOIX DE LA FORMULATION DE LA METHODE CONTINUE - ALGO_CONT =SIMP(statut='f',typ='TXM',defaut="LAGRANGIEN",into=("LAGRANGIEN","AUGMENTE","STABILISE"),), - b_CONT_LAGR =BLOC(condition = "ALGO_CONT == 'LAGRANGIEN' ",fr="Parametres de la formulation Lagrangienne", - COEF_REGU_CONT =SIMP(statut='f',typ='R',defaut=100.E+0),), - b_CONT_STAB =BLOC(condition = "ALGO_CONT == 'STABILISE' ",fr="Parametres du Lagrangien stabilisé", - COEF_REGU_CONT =SIMP(statut='f',typ='R',defaut=100.E+0), - COEF_STAB_CONT =SIMP(statut='f',typ='R',defaut=100.E+0),), - b_CONT_AUGM =BLOC(condition = "ALGO_CONT == 'AUGMENTE' ",fr="Parametres du Lagrangien augmenté", - COEF_REGU_CONT =SIMP(statut='f',typ='R',defaut=100.E+0), - COEF_STAB_CONT =SIMP(statut='f',typ='R',defaut=100.E+0), - COEF_PENA_CONT =SIMP(statut='f',typ='R',defaut=100.E+0),), -# -------------------------------- - GLISSIERE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"),), - b_glissiere =BLOC(condition = "GLISSIERE == 'OUI' ", - ALARME_JEU =SIMP(statut='f',typ='R',defaut=0.),), -# -------------------------------- - COMPLIANCE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ), - b_compliance =BLOC(condition = "COMPLIANCE == 'OUI' ",fr="Parametres de la compliance", - ASPERITE =SIMP(statut='o',typ='R',), - E_N =SIMP(statut='o',typ='R',), - E_V =SIMP(statut='f',typ='R',defaut=0.E+0),), -# -------------------------------- - FOND_FISSURE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ), - b_FOND_FISSURE =BLOC(condition = "FOND_FISSURE == 'OUI' ",fr="TRAITEMENT EN FOND DE FISSURE", - regles=(UN_PARMI('NOEUD_FOND','GROUP_NO_FOND','MAILLE_FOND','GROUP_MA_FOND'),), - NOEUD_FOND =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO_FOND =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - MAILLE_FOND =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - GROUP_MA_FOND =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'),), -# -------------------------------- - RACCORD_LINE_QUAD=SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ), - b_RACCORD_SURF =BLOC(condition = "RACCORD_LINE_QUAD == 'OUI' ",fr="TRAITEMENT DU RACCORD SURFACIQUE", - regles=(UN_PARMI('NOEUD_RACC','GROUP_NO_RACC'),), - NOEUD_RACC =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - GROUP_NO_RACC =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'),), -# -------------------------------- MOTS-CLEF CONTACT - INTEGRATION =SIMP(statut='f',typ='TXM',defaut="NOEUD", - into=("GAUSS","NOEUD","SIMPSON","SIMPSON1","SIMPSON2", - "NCOTES","NCOTES1","NCOTES2"),), - FORMULATION =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL","VITE"),), - - ITER_GEOM_MAXI =SIMP(statut='f',typ='I',defaut=2), - ITER_CONT_MAXI =SIMP(statut='f',typ='I',defaut=30), - CONTACT_INIT =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",),), -# -------------------------------- détection automatique et exclusion des noeuds impliqués dans le pivot nul - EXCLUSION_PIV_NUL=SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",),), -# -------------------------------- exclusion manuelle des noeuds impliqués dans le pivot nul; -# prévaut sur la fonctionnalité précédente sans pour autant interférer avec elle - SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - regles =(EXCLUS('SANS_NOEUD','SANS_GROUP_NO'),), -# -------------------------------- MOTS-CLEF FROTTEMENT - FROTTEMENT =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SANS","COULOMB",) ), - b_frottement =BLOC(condition = "FROTTEMENT == 'COULOMB' ",fr="Paramètres du frottement de Coulomb", - ALGO_FROT =SIMP(statut='f',typ='TXM',defaut="LAGRANGIEN", - into=("LAGRANGIEN","AUGMENTE","STABILISE") ), - b_FROT_LAGR =BLOC(condition = "ALGO_FROT == 'LAGRANGIEN' ",fr="Parametres de la formulation Lagrangienne", - COEF_REGU_FROT =SIMP(statut='f',typ='R',defaut=100.E+0),), - b_FROT_STAB =BLOC(condition = "ALGO_FROT == 'STABILISE' ",fr="Parametres du Lagrangien stabilisé", - COEF_REGU_FROT =SIMP(statut='f',typ='R',defaut=100.E+0), - COEF_STAB_FROT =SIMP(statut='f',typ='R',defaut=100.E+0),), - b_FROT_AUGM =BLOC(condition = "ALGO_FROT == 'AUGMENTE' ",fr="Parametres du Lagrangien augmenté", - COEF_REGU_FROT =SIMP(statut='f',typ='R',defaut=100.E+0), - COEF_STAB_FROT =SIMP(statut='f',typ='R',defaut=100.E+0), - COEF_PENA_FROT =SIMP(statut='f',typ='R',defaut=100.E+0),), - COULOMB =SIMP(statut='o',typ='R',), - SANS_NOEUD_FR =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO_FR =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - regles =(EXCLUS('SANS_NOEUD_FR','SANS_GROUP_NO_FR'),), - b_sans_group_no_frot =BLOC(condition = "SANS_GROUP_NO_FR != None or SANS_NO_FR != None", - fr="Direction(s) de frottement à exclure", - EXCL_FROT_1 =SIMP(statut='f',typ='R',min=3,max=3), - EXCL_FROT_2 =SIMP(statut='f',typ='R',min=3,max=3),), - ITER_FROT_MAXI =SIMP(statut='f',typ='I',defaut=2), - SEUIL_INIT =SIMP(statut='f',typ='R',defaut=0.E+0), - USURE =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SANS","ARCHARD",),), - b_usure =BLOC(condition = "USURE == 'ARCHARD' ",fr="Parametres de la loi d'usure d'Archard", - K =SIMP(statut='o',typ='R',), - H =SIMP(statut='o',typ='R',),),),), - - b_gcp =BLOC(condition = "METHODE == 'GCP' ", - fr="Paramètres de la méthode du gradient conjugué projeté (contact uniquement)", - RESI_ABSO =SIMP(statut='o',typ='R', - fr="Critère de convergence (niveau d'interpénétration autorisé)"), - REAC_ITER =SIMP(statut='f',typ='I',defaut=3, fr="Fréquence de réinitialisation de la conjugaison"), - ITER_GCP_MAXI =SIMP(statut='f',typ='I',defaut=0, fr="Nombre d'itérations maximal pour le GCP"), - STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI", - into=("OUI","NON")), - REAC_GEOM =SIMP(statut='f',typ='TXM',defaut="AUTOMATIQUE", - into=("AUTOMATIQUE","CONTROLE","SANS")), - - 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'), + fr="SD issue de DEFI_COMPOR", + COMPOR =SIMP(statut='o',typ=compor_sdaster,max=1),), + b_zmat = BLOC(condition = "RELATION == 'ZMAT' ", + fr="Comportement de la bibliotheque Zmat", + NB_VARI =SIMP(statut='o',typ='I',max=1), + UNITE =SIMP(statut='o',typ='I',max=1),), +# KITs + b_kit_ddi = BLOC(condition = "RELATION == 'KIT_DDI' ", + fr="relations de couplage fluage-plasticite", + RELATION_KIT =SIMP(statut='o',typ='TXM',min=2,max=2,validators=NoRepeat(), + into=( + "VMIS_CINE_LINE", + "VMIS_ISOT_TRAC", + "VMIS_ISOT_LINE", + "VMIS_ISOT_CINE", + "VMIS_ISOT_PUIS", + "GLRC_DM", + "GRANGER_FP", + "GRANGER_FP_INDT", + "GRANGER_FP_V", + "BETON_UMLV_FP", + "ROUSS_PR", + "NADAI_B", + "BETON_DOUBLE_DP", + "ENDO_ISOT_BETON", + "MAZARS" + ),), + ), + b_kit_thm = BLOC(condition = "RELATION in ['KIT_HHM','KIT_HH','KIT_HM','KIT_THHM','KIT_THH','KIT_THM','KIT_THV']", + fr="lois de comportements thermo-hydro-mecaniques", + RELATION_KIT =SIMP(statut='o',typ='TXM',max=9,validators=NoRepeat(), + into=( +# MECA + "ELAS", + "CJS", + "HUJEUX", + "CAM_CLAY", + "BARCELONE", + "LAIGLE", + "LETK", + "DRUCK_PRAGER", + "DRUCK_PRAG_N_A", + "ELAS_GONF", + "HOEK_BROWN_EFF", + "HOEK_BROWN_TOT", + "MAZARS", + "ENDO_ISOT_BETON", +# THMC + "GAZ", + "LIQU_SATU", + "LIQU_GAZ_ATM", + "LIQU_VAPE_GAZ", + "LIQU_AD_GAZ_VAPE", + "LIQU_VAPE", + "LIQU_GAZ", +# HYDR + "HYDR_UTIL", + "HYDR_VGM", + "HYDR", + "HYDR_ENDO", + ),), + ), + b_kit_meta = BLOC(condition = "RELATION in ('META_LEMA_ANI','META_P_CL_PT_RE','META_P_CL_PT','META_P_CL_RE','META_P_CL',\ + 'META_P_IL_PT_RE','META_P_IL_PT','META_P_IL_RE','META_P_IL','META_P_INL_PT_RE','META_P_INL_PT','META_P_INL_RE','META_P_INL',\ + 'META_V_CL_PT_RE','META_V_CL_PT','META_V_CL_RE','META_V_CL','META_V_IL_PT_RE','META_V_IL_PT','META_V_IL_RE','META_V_IL',\ + 'META_V_INL_PT_RE','META_V_INL_PT','META_V_INL_RE','META_V_INL')", + fr="nombre de phases metallurgiques", + RELATION_KIT =SIMP(statut='o',typ='TXM',max=1,validators=NoRepeat(), + into=("ACIER","ZIRC"),), ), - PRE_COND =SIMP(statut='f',typ='TXM',defaut="SANS", - into=("DIRICHLET","SANS"),fr="Choix d'un préconditionneur (accélère la convergence)"), - ITER_PRE_MAXI =SIMP(statut='f',typ='I',defaut=0, fr="Nombre d'itérations maximal pour le préconditionneur"), - COEF_RESI =SIMP(statut='f',typ='R',defaut = 1., - fr="Critère_Convergence_Préconditionneur = COEF_RESI*Critère_Convergence_GCP",), - RECH_LINEAIRE=SIMP(statut='f',typ='TXM',defaut="ADMISSIBLE",into=("ADMISSIBLE","NON_ADMISSIBLE"), - fr="Autorise-t-on de sortir du domaine admissible lors de la recherche linéaire",), - SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD_QUAD =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), - ), - ); + DEFORMATION =SIMP(statut='f',typ='TXM',defaut="PETIT", + into=("PETIT","PETIT_REAC","SIMO_MIEHE","GREEN_GR","GREEN","COROTATIONNEL", + "REAC_GEOM","EULER_ALMANSI")), + + ALGO_C_PLAN =SIMP(statut='f',typ='TXM',defaut="ANALYTIQUE",into=("DEBORST","ANALYTIQUE",)), + RESI_DEBORST =SIMP(statut='f',typ='R',defaut= 1.0E-6), + ALGO_1D =SIMP(statut='f',typ='TXM',defaut="ANALYTIQUE",into=("DEBORST","ANALYTIQUE",)), + ITER_MAXI_DEBORST =SIMP(statut='f',typ='I',defaut= 1), + + RESI_INTE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-6), + ITER_INTE_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), + b_redec_local = BLOC(condition = "DEFORMATION in ('PETIT','PETIT_REAC','GREEN')", + fr="Nombre de redécoupages internes du pas de temps", + ITER_INTE_PAS =SIMP(statut='f',typ='I',defaut= 0 ), + ), + RESO_INTE =SIMP(statut='f',typ='TXM',defaut="IMPLICITE", + into=("RUNGE_KUTTA_2","RUNGE_KUTTA_4","IMPLICITE")), + TYPE_MATR_TANG =SIMP(statut='f',typ='TXM',into=("PERTURBATION","VERIFICATION","TANGENTE_SECANTE")), + b_perturb = BLOC(condition = " (TYPE_MATR_TANG != None) and (TYPE_MATR_TANG != 'TANGENTE_SECANTE') ", + fr="Calcul de la matrice tangente par perturbation, valeur de la perturbation", + VALE_PERT_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-5), + ), + b_tangsec = BLOC(condition = " TYPE_MATR_TANG == 'TANGENTE_SECANTE' ", + fr="Modification evolutive de la matrice tangente/secante", + SEUIL =SIMP(statut='f',typ='R',defaut= 3. ), + AMPLITUDE =SIMP(statut='f',typ='R',defaut= 1.5 ), + TAUX_RETOUR =SIMP(statut='f',typ='R',defaut= 0.05 ), + ), + PARM_THETA =SIMP(statut='f',typ='R',defaut= 1. ), + 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='**'), -#& MODIF COMMUN DATE 22/04/2008 AUTEUR ABBAS M.ABBAS + ) ; +#& MODIF COMMUN DATE 21/10/2008 AUTEUR DESOZA T.DESOZA # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2008 EDF R&D WWW.CODE-ASTER.ORG @@ -932,8 +498,8 @@ def C_CONTACT() : return FACT(statut='f',max='**', # 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_CONTACT_F() : return FACT(statut='f',max='**', +# RESPONSABLE DESOZA T.DESOZA +def C_CONTACT() : return FACT(statut='f',max='**', fr="Définit les zones soumises à des conditions de contact unilatéral avec ou sans frottement", @@ -981,17 +547,20 @@ def C_CONTACT_F() : return FACT(statut='f',max='**', b_appa_fixe =BLOC(condition = "TYPE_APPA == 'FIXE'", DIRE_APPA =SIMP(statut='f',typ='R',min=3,max=3), ), - - DIST_POUTRE =SIMP(statut='f',typ='TXM',defaut="NON", into=("OUI","NON")), - DIST_COQUE =SIMP(statut='f',typ='TXM',defaut="NON", into=("OUI","NON")), + + b_dist_struct =BLOC(condition = "METHODE != 'CONTINUE' and METHODE != 'XFEM' ", + DIST_POUTRE =SIMP(statut='f',typ='TXM',defaut="NON", into=("OUI","NON")), + DIST_COQUE =SIMP(statut='f',typ='TXM',defaut="NON", into=("OUI","NON")), + b_cara =BLOC(condition = "DIST_POUTRE == 'OUI' or DIST_COQUE == 'OUI'", + CARA_ELEM =SIMP(statut='o',typ=(cara_elem) ), + ), + ), + DIST_MAIT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - DIST_ESCL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + DIST_ESCL =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - b_cara =BLOC(condition = "DIST_POUTRE == 'OUI' or DIST_COQUE == 'OUI'", - CARA_ELEM =SIMP(statut='o',typ=(cara_elem) ), - ), - TOLE_APPA =SIMP(statut='f',typ='R' ,defaut=-1.0), + TOLE_APPA =SIMP(statut='f',typ='R' ,defaut=-1.0), TOLE_PROJ_EXT =SIMP(statut='f',typ='R' ,defaut=0.50), @@ -1000,7 +569,8 @@ def C_CONTACT_F() : return FACT(statut='f',max='**', FISS_ESCL = SIMP(statut='f',typ=fiss_xfem,max=1), SIGN_MAIT = SIMP(statut='f',typ='TXM',into=("+","-",) ), SIGN_ESCL = SIMP(statut='f',typ='TXM',into=("+","-",) ), - INTEGRATION = SIMP(statut='f',typ='TXM',defaut="FPG4",into=("GAUSS","FPG4","FPG6","FPG7",) ), + INTEGRATION = SIMP(statut='f',typ='TXM',defaut="FPG4",into=("GAUSS","FPG2","FPG3","FPG4","FPG6", + "FPG7","NOEUD","SIMPSON","SIMPSON1","NCOTES","NCOTES1","NCOTES2") ), COEF_REGU_CONT = SIMP(statut='f',typ='R',defaut=100.E+0), ITER_CONT_MAXI = SIMP(statut='f',typ='I',defaut=30), ITER_GEOM_MAXI =SIMP(statut='f',typ='I',defaut=0), @@ -1058,7 +628,6 @@ def C_CONTACT_F() : return FACT(statut='f',max='**', SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD_QUAD =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), ), b_lagrangien =BLOC(condition = "METHODE == 'LAGRANGIEN' ", @@ -1080,7 +649,6 @@ def C_CONTACT_F() : return FACT(statut='f',max='**', SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD_QUAD =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), b_frottement =BLOC(condition = "FROTTEMENT == 'COULOMB' ",fr="Paramètres du frottement de Coulomb", COULOMB =SIMP(statut='o',typ='R',), @@ -1105,7 +673,6 @@ def C_CONTACT_F() : return FACT(statut='f',max='**', SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD_QUAD =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), @@ -1224,13 +791,12 @@ def C_CONTACT_F() : return FACT(statut='f',max='**', fr="Autorise-t-on de sortir du domaine admissible lors de la recherche linéaire",), SANS_NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), SANS_GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), - SANS_NOEUD_QUAD =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), ), ); -#& MODIF COMMUN DATE 26/06/2007 AUTEUR REZETTE C.REZETTE +#& MODIF COMMUN DATE 14/10/2008 AUTEUR DELMAS J.DELMAS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG @@ -1386,6 +952,7 @@ def C_NOM_CHAM_INTO() : return ("ACCE", #COMMUN# "SIEF_ELNO_ELGA", "SIEF_NOEU", "SIEF_NOEU_ELGA", + "SIEF_SENO_SEGA", "SIEQ_ELNO_TUYO", "SIGM_ELNO_CART", "SIGM_ELNO_COQU", @@ -1621,7 +1188,7 @@ def C_TYPE_CHAM_INTO() : #COMMUN# l.append(typ+"_"+gd) return tuple(l) -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 23/10/2008 AUTEUR TORKHANI M.TORKHANI # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -1775,6 +1342,7 @@ AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, DISCRET =FACT(statut='f',max='**', REPERE =SIMP(statut='f',typ='TXM',into=("LOCAL","GLOBAL") ), AMOR_HYST =SIMP(statut='f',typ='R' ), + SYME =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), CARA =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=1, fr="Affectation de matrices de rigidité, de masse ou d'amortissement à des mailles ou noeuds", into=("K_T_D_N","K_T_D_L","K_TR_D_N","K_TR_D_L", @@ -1782,7 +1350,11 @@ AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, "M_T_D_N","M_TR_D_N","M_T_N", "M_T_L", "M_TR_N", "M_TR_L", "A_T_D_N","A_TR_D_N","A_T_D_L","A_TR_D_L", - "A_T_N", "A_T_L", "A_TR_N", "A_TR_L") ), + "A_T_N", "A_T_L", "A_TR_N", "A_TR_L", + "K_T_N_NS", "K_T_L_NS", "K_TR_N_NS", "K_TR_L_NS", + "M_T_N_NS", + "M_T_L_NS", "M_TR_N_NS", "M_TR_L_NS", + "A_T_N_NS", "A_T_L_NS", "A_TR_N_NS", "A_TR_L_NS") ), # affection des caractéristiques de RIGIDITE/AMORTISSEMENT b_K_T_D_N =BLOC(condition = "(CARA=='K_T_D_N')or(CARA=='A_T_D_N')", @@ -1849,6 +1421,38 @@ AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), VALE =SIMP(statut='f',typ='R',min=78,max=78), VALE_F =SIMP(statut='f',typ=(para_sensi,),min=78 ,max=78 ),), + b_K_T_N_NS =BLOC(condition = "(CARA=='K_T_N_NS')or(CARA=='A_T_N_NS')", + regles=(UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'), + AU_MOINS_UN('VALE','VALE_F',),PRESENT_ABSENT('VALE','VALE_F',),), + 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='**'), + VALE =SIMP(statut='f',typ='R',min=9 ,max=9 ), + VALE_F =SIMP(statut='f',typ=(para_sensi,),min=9 ,max=9 ),), + b_K_T_L_NS =BLOC(condition = "(CARA=='K_T_L_NS')or(CARA=='A_T_L_NS')", + regles=(UN_PARMI('MAILLE','GROUP_MA'), + AU_MOINS_UN('VALE','VALE_F',),PRESENT_ABSENT('VALE','VALE_F',),), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + VALE =SIMP(statut='f',typ='R',min=36,max=36), + VALE_F =SIMP(statut='f',typ=(para_sensi,),min=36 ,max=36 ),), + b_K_TR_N_NS =BLOC(condition = "(CARA=='K_TR_N_NS')or(CARA=='A_TR_N_NS')", + regles=(UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'), + AU_MOINS_UN('VALE','VALE_F',),PRESENT_ABSENT('VALE','VALE_F',),), + 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='**'), + VALE =SIMP(statut='f',typ='R',min=36,max=36), + VALE_F =SIMP(statut='f',typ=(para_sensi,),min=36 ,max=36 ),), + b_K_TR_L_NS =BLOC(condition = "(CARA=='K_TR_L_NS')or(CARA=='A_TR_L_NS')", + regles=(UN_PARMI('MAILLE','GROUP_MA'), + AU_MOINS_UN('VALE','VALE_F',),PRESENT_ABSENT('VALE','VALE_F',),), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + VALE =SIMP(statut='f',typ='R',min=144,max=144), + VALE_F =SIMP(statut='f',typ=(para_sensi,),min=144 ,max=144 ),), # affection des caractéristiques de MASSE b_M_T_D_N =BLOC(condition = "CARA=='M_T_D_N'", @@ -1907,12 +1511,49 @@ AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), VALE =SIMP(statut='f',typ='R',min=78,max=78), VALE_F =SIMP(statut='f',typ=(para_sensi,),min=78 ,max=78 ),), + b_M_T_N_NS =BLOC(condition = "CARA=='M_T_N_NS'", + fr="NOEUD: 9 valeurs de masse (pleine)", + regles=(UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'), + AU_MOINS_UN('VALE','VALE_F',),PRESENT_ABSENT('VALE','VALE_F',),), + 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='**'), + VALE =SIMP(statut='f',typ='R',min=9 ,max=9 ), + VALE_F =SIMP(statut='f',typ=(para_sensi,),min=9 ,max=9 ),), + b_M_T_L_NS =BLOC(condition = "CARA=='M_T_L_NS'", + fr="SEGMENT: 36 valeurs de masse (pleine)", + regles=(UN_PARMI('MAILLE','GROUP_MA'), + AU_MOINS_UN('VALE','VALE_F',),PRESENT_ABSENT('VALE','VALE_F',),), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + VALE =SIMP(statut='f',typ='R',min=36,max=36), + VALE_F =SIMP(statut='f',typ=(para_sensi,),min=36 ,max=36 ),), + b_M_TR_N_NS =BLOC(condition = "CARA=='M_TR_N_NS'", + fr="NOEUD: 36 valeurs de masse (pleine)", + regles=(UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'), + AU_MOINS_UN('VALE','VALE_F',),PRESENT_ABSENT('VALE','VALE_F',),), + 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='**'), + VALE =SIMP(statut='f',typ='R',min=36,max=36), + VALE_F =SIMP(statut='f',typ=(para_sensi,),min=36 ,max=36 ),), + b_M_TR_L_NS =BLOC(condition = "CARA=='M_TR_L_NS'", + fr="SEGMENT: 144 valeurs de masse (pleine)", + regles=(UN_PARMI('MAILLE','GROUP_MA'), + AU_MOINS_UN('VALE','VALE_F',),PRESENT_ABSENT('VALE','VALE_F',),), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + VALE =SIMP(statut='f',typ='R',min=144,max=144), + VALE_F =SIMP(statut='f',typ=(para_sensi,),min=144 ,max=144 ),), ), #============================================================================ DISCRET_2D =FACT(statut='f',max='**', REPERE =SIMP(statut='f',typ='TXM',into=("LOCAL","GLOBAL") ), AMOR_HYST =SIMP(statut='f',typ='R' ), + SYME =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), CARA =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max=1, fr="Affectation de matrices de rigidité, de masse ou d'amortissement à des mailles ou noeuds", into=("K_T_D_N","K_T_D_L","K_TR_D_N","K_TR_D_L", @@ -1920,7 +1561,10 @@ AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, "M_T_D_N","M_T_N", "M_TR_D_N", "M_T_L", "M_TR_N", "M_TR_L", "A_T_D_N","A_TR_D_N","A_T_D_L","A_TR_D_L", - "A_T_N", "A_T_L", "A_TR_N", "A_TR_L") ), + "A_T_N", "A_T_L", "A_TR_N", "A_TR_L", + "K_T_N_NS", "K_T_L_NS", "K_TR_N_NS", "K_TR_L_NS", + "M_T_N_NS", "M_T_L_NS", "M_TR_N_NS", "M_TR_L_NS", + "A_T_N_NS", "A_T_L_NS", "A_TR_N_NS", "A_TR_L_NS") ), # affection des caractéristiques de RIGIDITE/AMORTISSEMENT b_K_T_D_N =BLOC(condition = "(CARA=='K_T_D_N')or(CARA=='A_T_D_N')", @@ -1987,6 +1631,39 @@ AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), VALE =SIMP(statut='f',typ='R',min=21,max=21), VALE_F =SIMP(statut='f',typ=(para_sensi,),min=21 ,max=21 ),), + + b_K_T_N_NS =BLOC(condition = "(CARA=='K_T_N_NS')or(CARA=='A_T_N_NS')", + regles=(UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'), + AU_MOINS_UN('VALE','VALE_F',),PRESENT_ABSENT('VALE','VALE_F',),), + 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='**'), + VALE =SIMP(statut='f',typ='R',min=4 ,max=4 ), + VALE_F =SIMP(statut='f',typ=(para_sensi,),min=4 ,max=4 ),), + b_K_T_L_NS =BLOC(condition = "(CARA=='K_T_L_NS')or(CARA=='A_T_L_NS')", + regles=(UN_PARMI('MAILLE','GROUP_MA'), + AU_MOINS_UN('VALE','VALE_F',),PRESENT_ABSENT('VALE','VALE_F',),), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + VALE =SIMP(statut='f',typ='R',min=16,max=16), + VALE_F =SIMP(statut='f',typ=(para_sensi,),min=16 ,max=16 ),), + b_K_TR_N_NS =BLOC(condition = "(CARA=='K_TR_N_NS')or(CARA=='A_TR_N_NS')", + regles=(UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'), + AU_MOINS_UN('VALE','VALE_F',),PRESENT_ABSENT('VALE','VALE_F',),), + 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='**'), + VALE =SIMP(statut='f',typ='R',min=9 ,max=9), + VALE_F =SIMP(statut='f',typ=(para_sensi,),min=9 ,max=9 ),), + b_K_TR_L_NS =BLOC(condition = "(CARA=='K_TR_L_NS')or(CARA=='A_TR_L_NS')", + regles=(UN_PARMI('MAILLE','GROUP_MA'), + AU_MOINS_UN('VALE','VALE_F',),PRESENT_ABSENT('VALE','VALE_F',),), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + VALE =SIMP(statut='f',typ='R',min=36,max=36), + VALE_F =SIMP(statut='f',typ=(para_sensi,),min=36 ,max=36 ),), # affection des caractéristiques de MASSE b_M_T_D_N =BLOC(condition = "CARA=='M_T_D_N'", @@ -2045,6 +1722,42 @@ AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), VALE =SIMP(statut='f',typ='R',min=21,max=21), VALE_F =SIMP(statut='f',typ=(para_sensi,),min=21 ,max=21 ),), + b_M_T_N_NS =BLOC(condition = "CARA=='M_T_N_NS'", + fr="NOEUD: 4 valeurs de masse (triangulaire supérieure par colonne)", + regles=(UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'), + AU_MOINS_UN('VALE','VALE_F',),PRESENT_ABSENT('VALE','VALE_F',),), + 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='**'), + VALE =SIMP(statut='f',typ='R',min=4 ,max=4 ), + VALE_F =SIMP(statut='f',typ=(para_sensi,),min=4 ,max=4 ),), + b_M_T_L_NS =BLOC(condition = "CARA=='M_T_L_NS'", + fr="SEGMENT: 16 valeurs de masse (triangulaire supérieure par colonne)", + regles=(UN_PARMI('MAILLE','GROUP_MA'), + AU_MOINS_UN('VALE','VALE_F',),PRESENT_ABSENT('VALE','VALE_F',),), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + VALE =SIMP(statut='f',typ='R',min=16,max=16), + VALE_F =SIMP(statut='f',typ=(para_sensi,),min=16 ,max=16 ),), + b_M_TR_N_NS =BLOC(condition = "CARA=='M_TR_N_NS'", + fr="NOEUD: 9 valeurs de masse (triangulaire supérieure par colonne)", + regles=(UN_PARMI('MAILLE','GROUP_MA','NOEUD','GROUP_NO'), + AU_MOINS_UN('VALE','VALE_F',),PRESENT_ABSENT('VALE','VALE_F',),), + 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='**'), + VALE =SIMP(statut='f',typ='R',min=9 ,max=9 ), + VALE_F =SIMP(statut='f',typ=(para_sensi,),min=9 ,max=9 ),), + b_M_TR_L_NS =BLOC(condition = "CARA=='M_TR_L_NS'", + fr="SEGMENT: 36 valeurs de masse (triangulaire supérieure par colonne)", + regles=(UN_PARMI('MAILLE','GROUP_MA'), + AU_MOINS_UN('VALE','VALE_F',),PRESENT_ABSENT('VALE','VALE_F',),), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + VALE =SIMP(statut='f',typ='R',min=36,max=36), + VALE_F =SIMP(statut='f',typ=(para_sensi,),min=36 ,max=36 ),), ), #============================================================================ @@ -2160,6 +1873,7 @@ AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, GROUP_NO_CENTRE =SIMP(statut='f',typ=grno), NOEUD_CENTRE =SIMP(statut='f',typ=no), COOR_CENTRE =SIMP(statut='f',typ='R',min=2,max=3), + UNITE_EUROPLEXUS=SIMP(statut='f',typ='I'), ), #============================================================================ @@ -2186,23 +1900,23 @@ AFFE_CARA_ELEM=OPER(nom="AFFE_CARA_ELEM",op= 19,sd_prod=cara_elem, ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 16/09/2008 AUTEUR PELLET J.PELLET # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. +# 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 None AFFE_CHAR_ACOU=OPER(nom="AFFE_CHAR_ACOU",op= 68,sd_prod=char_acou, @@ -2212,6 +1926,9 @@ 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_sdaster ), VERI_DDL =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + METHODE =SIMP(statut='c',typ='TXM',fr="Stratégie de résolution pour les pressions imposées", + into=('DUALISATION',),defaut='DUALISATION',), + # METHODE='ELIMINATION' est traité dans le fortran mais dangereux actuellement 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",) ), @@ -2474,7 +2191,7 @@ AFFE_CHAR_CINE_F=OPER(nom="AFFE_CHAR_CINE_F",op= 101,sd_prod=affe_char_cine_f_pr ), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 16/09/2008 AUTEUR PELLET J.PELLET # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -2514,6 +2231,9 @@ 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), + METHODE =SIMP(statut='c',typ='TXM',fr="Stratégie de résolution pour les déplacements imposés", + into=('DUALISATION',),defaut='DUALISATION',), + # METHODE='ELIMINATION' est traité dans le fortran mais dangereux actuellement 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),), @@ -2892,7 +2612,7 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca, CONTACT = C_CONTACT(), # # FORCES -# +# FORCE_NODALE =FACT(statut='f',fr="Applique à des noeuds des forces nodales",max='**', regles=(AU_MOINS_UN('GROUP_NO','NOEUD'), AU_MOINS_UN('FX','FY','FZ','MX','MY','MZ' ),), @@ -3287,23 +3007,23 @@ AFFE_CHAR_MECA=OPER(nom="AFFE_CHAR_MECA",op= 7,sd_prod=char_meca, ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 16/09/2008 AUTEUR PELLET J.PELLET # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. +# 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 DESROCHES X.DESROCHES AFFE_CHAR_MECA_C=OPER(nom="AFFE_CHAR_MECA_C",op= 7,sd_prod=char_meca, @@ -3313,6 +3033,9 @@ 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_sdaster ), VERI_DDL =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + METHODE =SIMP(statut='c',typ='TXM',fr="Stratégie de résolution pour les déplacements imposés", + into=('DUALISATION',),defaut='DUALISATION',), + # METHODE='ELIMINATION' est traité dans le fortran mais dangereux actuellement DDL_IMPO =FACT(statut='f',max='**', fr="Impose à des noeuds une ou plusieurs valeurs de déplacement (ou de certaines grandeurs asscociées)", regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD',), @@ -3322,7 +3045,7 @@ AFFE_CHAR_MECA_C=OPER(nom="AFFE_CHAR_MECA_C",op= 7,sd_prod=char_meca, 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',)), + 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' ), @@ -3366,7 +3089,7 @@ AFFE_CHAR_MECA_C=OPER(nom="AFFE_CHAR_MECA_C",op= 7,sd_prod=char_meca, ), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; -#& MODIF COMMANDE DATE 06/05/2008 AUTEUR CNGUYEN C.NGUYEN +#& MODIF COMMANDE DATE 16/09/2008 AUTEUR PELLET J.PELLET # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -3398,6 +3121,9 @@ AFFE_CHAR_MECA_F=OPER(nom="AFFE_CHAR_MECA_F",op=7,sd_prod=char_meca, VERI_DDL =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), VERI_NORM =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), MODELE =SIMP(statut='o',typ=modele_sdaster), + METHODE =SIMP(statut='c',typ='TXM',fr="Stratégie de résolution pour les déplacements imposés", + into=('DUALISATION',),defaut='DUALISATION',), + # METHODE='ELIMINATION' est traité dans le fortran mais dangereux actuellement DDL_IMPO =FACT(statut='f',max='**', fr="Impose à des noeuds une ou plusieurs valeurs de déplacement (ou de certaines grandeurs asscociées) fournies" @@ -3884,7 +3610,7 @@ AFFE_CHAR_OPS011=OPER(nom="AFFE_CHAR_OPS011",op= 190,sd_prod=char_ther, ), INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 16/09/2008 AUTEUR PELLET J.PELLET # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -3911,6 +3637,9 @@ AFFE_CHAR_THER=OPER(nom="AFFE_CHAR_THER",op=34,sd_prod=char_ther 'ECHANGE_PAROI','GRAD_TEMP_INIT','LIAISON_DDL','LIAISON_GROUP', 'LIAISON_UNIF','LIAISON_CHAMNO','RAYONNEMENT','LIAISON_MAIL' ),), MODELE =SIMP(statut='o',typ=(modele_sdaster) ), + METHODE =SIMP(statut='c',typ='TXM',fr="Stratégie de résolution pour les températures imposées", + into=('DUALISATION',),defaut='DUALISATION',), + # METHODE='ELIMINATION' est traité dans le fortran mais dangereux actuellement TEMP_IMPO =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE','GROUP_NO','NOEUD'), @@ -4089,23 +3818,23 @@ AFFE_CHAR_THER=OPER(nom="AFFE_CHAR_THER",op=34,sd_prod=char_ther INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 16/09/2008 AUTEUR PELLET J.PELLET # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. +# 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 DESROCHES X.DESROCHES AFFE_CHAR_THER_F=OPER(nom="AFFE_CHAR_THER_F",op=34,sd_prod=char_ther, @@ -4120,20 +3849,18 @@ AFFE_CHAR_THER_F=OPER(nom="AFFE_CHAR_THER_F",op=34,sd_prod=char_ther, 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'),), + AU_MOINS_UN('TEMP_SUP','TEMP','TEMP_INF'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), - EVOL_THER =SIMP(statut='f',typ=(evol_ther) ), DDL =SIMP(statut='f',typ='TXM',into=("TEMP",) ), TEMP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), TEMP_INF =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), TEMP_SUP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), ), - + FLUX_REP =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), @@ -4156,8 +3883,8 @@ AFFE_CHAR_THER_F=OPER(nom="AFFE_CHAR_THER_F",op=34,sd_prod=char_ther, 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_sdaster,nappe_sdaster,formule) ), - ), - + ), + RAYONNEMENT =FACT(statut='f',max='**', fr="Attention, exprimer les températures en Celsius si rayonnement", @@ -4170,7 +3897,7 @@ AFFE_CHAR_THER_F=OPER(nom="AFFE_CHAR_THER_F",op=34,sd_prod=char_ther, EPSILON =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), TEMP_EXT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), ), - + ECHANGE =FACT(statut='f',max='**', @@ -4190,7 +3917,7 @@ AFFE_CHAR_THER_F=OPER(nom="AFFE_CHAR_THER_F",op=34,sd_prod=char_ther, COEF_H_SUP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), TEMP_EXT_SUP =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), ), - + SOURCE =FACT(statut='f',max='**', regles=(UN_PARMI('TOUT','GROUP_MA','MAILLE'),), @@ -4199,7 +3926,7 @@ AFFE_CHAR_THER_F=OPER(nom="AFFE_CHAR_THER_F",op=34,sd_prod=char_ther, MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), SOUR =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule) ), ), - + GRAD_TEMP_INIT =FACT(statut='f',max='**', regles=(AU_MOINS_UN('TOUT','GROUP_MA','MAILLE'), PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'), @@ -4211,7 +3938,7 @@ AFFE_CHAR_THER_F=OPER(nom="AFFE_CHAR_THER_F",op=34,sd_prod=char_ther, FLUX_Y =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), FLUX_Z =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule) ), ), - + ECHANGE_PAROI =FACT(statut='f',max='**', regles=(UN_PARMI('GROUP_MA_1','MAILLE_1'), UN_PARMI('GROUP_MA_2','MAILLE_2'),), @@ -4285,7 +4012,7 @@ AFFE_CHAR_THER_F=OPER(nom="AFFE_CHAR_THER_F",op=34,sd_prod=char_ther, INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 22/07/2008 AUTEUR PELLET J.PELLET # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -4456,15 +4183,15 @@ AFFE_MATERIAU=OPER(nom="AFFE_MATERIAU",op=6,sd_prod=cham_mater, VARC_M_ZIRC =FACT(statut='d', NOM_VARC =SIMP(statut='c',typ='TXM',defaut="M_ZIRC"), GRANDEUR =SIMP(statut='c',typ='TXM',defaut="VARI_R"), - CMP_GD =SIMP(statut='c',typ='TXM',max=3,min=3,defaut=("V1","V2","V3")), - CMP_VARC =SIMP(statut='c',typ='TXM',max=3,min=3,defaut=("ALPHPUR","ALPHBETA","TZIRC",)), + CMP_GD =SIMP(statut='c',typ='TXM',max=4,min=4,defaut=("V1","V2","V3","V4")), + CMP_VARC =SIMP(statut='c',typ='TXM',max=4,min=4,defaut=("ALPHPUR","ALPHBETA","TZIRC","TEMPS")), ), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 06/05/2008 AUTEUR PELLET J.PELLET +#& MODIF COMMANDE DATE 01/09/2008 AUTEUR DELMAS J.DELMAS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -4545,22 +4272,22 @@ AFFE_MODELE=OPER(nom="AFFE_MODELE",op=18,sd_prod=modele_sdaster, "3D_GRAD_VARI", # RESP. : MICHEL S.MICHEL "3D_XFEM_CONT", # RESP. : GENIAUT S.GENIAUT "3D_JOINT", # RESP. : LAVERNE J.LAVERNE + "3D_INTERFACE", # RESP. : LAVERNE J.LAVERNE "AXIS", # RESP. : LEFEBVRE J.P.LEFEBVRE "AXIS_FLUI_STRU", # RESP. : GREFFET N.GREFFET "AXIS_FLUIDE", # RESP. : GREFFET N.GREFFET "AXIS_FOURIER", # RESP. : DESROCHES X.DESROCHES "AXIS_INCO", # RESP. : MICHEL S.MICHEL "AXIS_INCO_GD", # RESP. : MICHEL S.MICHEL - "AXIS_NS", # RESP. : BADEL P.BADEL "AXIS_SI", # RESP. : DESROCHES X.DESROCHES "AXIS_GRAD_VARI", # RESP. : MICHEL S.MICHEL "AXIS_JOINT", # RESP. : LAVERNE J.LAVERNE + "AXIS_INTERFACE", # RESP. : LAVERNE J.LAVERNE "AXIS_ELDI", # RESP. : LAVERNE J.LAVERNE "BARRE", # RESP. : FLEJOU J.L.FLEJOU "2D_BARRE", # RESP. : FLEJOU J.L.FLEJOU "C_PLAN", # RESP. : LEFEBVRE J.P.LEFEBVRE "C_PLAN_XFEM_CONT",# RESP. : GENIAUT S.GENIAUT - "C_PLAN_NS", # RESP. : BADEL P.BADEL "C_PLAN_SI", # RESP. : DESROCHES X.DESROCHES "C_PLAN_GRAD_EPSI",# RESP. : MICHEL S.MICHEL "CABLE", # RESP. : FLEJOU J.L.FLEJOU @@ -4573,8 +4300,8 @@ AFFE_MODELE=OPER(nom="AFFE_MODELE",op=18,sd_prod=modele_sdaster, "D_PLAN_XFEM_CONT",# RESP. : GENIAUT S.GENIAUT "D_PLAN_GRAD_EPSI",# RESP. : MICHEL S.MICHEL "D_PLAN_GRAD_VARI",# RESP. : MICHEL S.MICHEL - "D_PLAN_NS", # RESP. : BADEL P.BADEL "PLAN_JOINT", # RESP. : LAVERNE J.LAVERNE + "PLAN_INTERFACE", # RESP. : LAVERNE J.LAVERNE "PLAN_ELDI", # RESP. : LAVERNE J.LAVERNE "D_PLAN_ABSO", # RESP. : DEVESA G.DEVESA "D_PLAN_INCO", # RESP. : MICHEL S.MICHEL @@ -4710,6 +4437,9 @@ AFFE_MODELE=OPER(nom="AFFE_MODELE",op=18,sd_prod=modele_sdaster, ), ),), ), + + VERI_JACOBIEN =SIMP(statut='f',typ='TXM',into=('OUI','NON'),defaut='OUI', + fr ="Vérification de la forme des mailles (jacobiens tous de meme signe).",), ) ; #& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE # CONFIGURATION MANAGEMENT OF EDF VERSION @@ -4812,7 +4542,7 @@ ASSE_MATR_GENE=OPER(nom="ASSE_MATR_GENE",op= 128,sd_prod=asse_matr_gene_prod, OPTION =SIMP(statut='o',typ='TXM',into=("RIGI_GENE","RIGI_GENE_C","MASS_GENE","AMOR_GENE") ), ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 06/10/2008 AUTEUR DEVESA G.DEVESA # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -4844,6 +4574,7 @@ ASSE_MATRICE=OPER(nom="ASSE_MATRICE",op=12,sd_prod=asse_matrice_prod, MATR_ELEM =SIMP(statut='o', typ=(matr_elem_depl_r,matr_elem_depl_c,matr_elem_temp_r,matr_elem_pres_c) ), NUME_DDL =SIMP(statut='o',typ=nume_ddl_sdaster), + SYME =SIMP(statut='f',typ='TXM',into=("OUI",) ), CHAR_CINE =SIMP(statut='f',typ=(char_cine_meca,char_cine_ther,char_cine_acou) ), INFO =SIMP(statut='f',typ='I',into=(1,2) ), ) ; @@ -5099,7 +4830,7 @@ CALC_CHAR_SEISME=OPER(nom="CALC_CHAR_SEISME",op= 92,sd_prod=calc_char_seisme_pr ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -5141,15 +4872,16 @@ CALC_ELEM=OPER(nom="CALC_ELEM",op=58,sd_prod=calc_elem_prod,reentrant='f', NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), NOEUD_CMP =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), NOM_CAS =SIMP(statut='f',typ='TXM' ), - INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8_sdaster), LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R'),), LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', fr="le calcul ne sera effectué que sur ces mailles là"), @@ -5231,8 +4963,11 @@ CALC_ELEM=OPER(nom="CALC_ELEM",op=58,sd_prod=calc_elem_prod,reentrant='f', b_sing =BLOC(condition= "OPTION == 'SING_ELEM' or \ (type(OPTION)==type(()) and 'SING_ELEM' in OPTION)", - PREC_ERR=SIMP(statut='o',typ='R',val_min= 0.,val_max= 1., - fr="precision demandee pour calculer la carte de taille des elements"),), + PREC_ERR=SIMP(statut='o',typ='R',val_min= 0., + fr="precision demandee pour calculer la carte de taille des elements"), + TYPE_ESTI=SIMP(statut='f',typ='TXM',into=("ERRE_ELEM_SIGM","ERZ1_ELEM_SIGM","ERZ2_ELEM_SIGM", + "QIRE_ELEM_SIGM","QIZ1_ELEM_SIGM","QIZ2_ELEM_SIGM",), + fr="choix de l'estimateur d'erreur"),), EXCIT =FACT(statut='f',max='**', fr="Charges contenant les températures, les efforts répartis pour les poutres...", @@ -5370,8 +5105,11 @@ b_charge =BLOC( condition = "OPTION in ('EPME_ELNO_DEPL','EPSI_ELGA_DEPL','EPME_ b_sing =BLOC(condition= "OPTION == 'SING_ELEM' or \ (type(OPTION)==type(()) and 'SING_ELEM' in OPTION)", - PREC_ERR=SIMP(statut='o',typ='R',val_min= 0.,val_max=1., - fr="precision demandee pour calculer la carte de taille des elements" ),), + PREC_ERR=SIMP(statut='o',typ='R',val_min= 0., + fr="precision demandee pour calculer la carte de taille des elements" ), + TYPE_ESTI=SIMP(statut='f',typ='TXM',into=("ERRE_ELEM_SIGM","ERZ1_ELEM_SIGM","ERZ2_ELEM_SIGM", + "QIRE_ELEM_SIGM","QIZ1_ELEM_SIGM","QIZ2_ELEM_SIGM",), + fr="choix de l'estimateur d'erreur"),), EXCIT =FACT(statut='f',max='**',fr="charge contenant les temperatures", CHARGE =SIMP(statut='o',typ=(char_meca,char_ther,char_acou) ),), @@ -5425,8 +5163,11 @@ b_charge =BLOC( condition = "OPTION in ('EPME_ELNO_DEPL','EPSI_ELGA_DEPL','EPME_ b_sing =BLOC(condition= "OPTION == 'SING_ELEM' or \ (type(OPTION)==type(()) and 'SING_ELEM' in OPTION)", - PREC_ERR=SIMP(statut='o',typ='R',val_min= 0.,val_max=1., - fr="precision demandee pour calculer la carte de taille des elements" ),), + PREC_ERR=SIMP(statut='o',typ='R',val_min= 0., + fr="precision demandee pour calculer la carte de taille des elements" ), + TYPE_ESTI=SIMP(statut='f',typ='TXM',into=("ERRE_ELEM_SIGM","ERZ1_ELEM_SIGM","ERZ2_ELEM_SIGM", + "QIRE_ELEM_SIGM","QIZ1_ELEM_SIGM","QIZ2_ELEM_SIGM",), + fr="choix de l'estimateur d'erreur"),), b_extr = BLOC( condition = "OPTION in ('EXTR_ELNO_VARI','EXTR_ELGA_VARI')", @@ -5502,98 +5243,446 @@ b_charge =BLOC( condition = "OPTION in ('EPME_ELNO_DEPL','EPSI_ELGA_DEPL','EPME_ CHARGE =SIMP(statut='o',typ=(char_meca,char_ther,char_acou) ),), ), - b_crit =BLOC( condition = "TYPE_OPTION=='CRIT'", - 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", - "ENDO_ELGA","ENDO_ELNO_ELGA", - "PMPB_ELNO_SIEF","PMPB_ELGA_SIEF","SIEQ_ELNO_TUYO","EPEQ_ELNO_TUYO", - ) ), - ), + b_crit =BLOC( condition = "TYPE_OPTION=='CRIT'", + 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", + "ENDO_ELGA","ENDO_ELNO_ELGA", + "PMPB_ELNO_SIEF","PMPB_ELGA_SIEF","SIEQ_ELNO_TUYO","EPEQ_ELNO_TUYO", + ) ), + ), + + b_autres =BLOC( condition = "TYPE_OPTION=='AUTRES'", + 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',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_erreur =BLOC( condition = "TYPE_OPTION=='INDI_ERREUR'", + OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',defaut="ERRE_ELEM_SIGM", + into=("ERRE_ELEM_SIGM","ERRE_ELNO_ELEM","ERZ1_ELEM_SIGM","ERZ2_ELEM_SIGM", + "DCHA_ELNO_SIGM","DCHA_ELGA_SIGM","RADI_ELNO_SIGM","RADI_ELGA_SIGM", + "QIRE_ELEM_SIGM","QIRE_ELNO_ELEM","QIZ1_ELEM_SIGM","QIZ2_ELEM_SIGM", + "SING_ELEM","SING_ELNO_ELEM",) ), + + b_erre_qi =BLOC(condition = "OPTION in ('QIRE_ELEM_SIGM','QIZ1_ELEM_SIGM','QIZ2_ELEM_SIGM') or \ + (type(OPTION)==type(()) and 'QIRE_ELEM_SIGM' in OPTION) or \ + (type(OPTION)==type(()) and 'QIZ1_ELEM_SIGM' in OPTION) or \ + (type(OPTION)==type(()) and 'QIZ2_ELEM_SIGM' in OPTION)", + RESU_DUAL =SIMP(statut='o',typ=(evol_elas,evol_noli),fr="resultat du probleme dual")), + + b_sing =BLOC(condition= "OPTION == 'SING_ELEM' or \ + (type(OPTION)==type(()) and 'SING_ELEM' in OPTION)", + PREC_ERR=SIMP(statut='o',typ='R',val_min= 0., + fr="precision demandee pour calculer la carte de taille des elements" ), + TYPE_ESTI=SIMP(statut='f',typ='TXM',into=("ERRE_ELEM_SIGM","ERZ1_ELEM_SIGM","ERZ2_ELEM_SIGM", + "QIRE_ELEM_SIGM","QIZ1_ELEM_SIGM","QIZ2_ELEM_SIGM",), + fr="choix de l'estimateur d'erreur"),), + + b_indic = BLOC( condition ="OPTION in ('DCHA_ELNO_SIGM','DCHA_ELGA_SIGM','RADI_ELNO_SIGM','RADI_ELGA_SIGM') or\ + (type(OPTION)==type(()) and 'DCHA_ELNO_SIGM' in OPTION) or\ + (type(OPTION)==type(()) and 'DCHA_ELGA_SIGM' in OPTION) or\ + (type(OPTION)==type(()) and 'RADI_ELNO_SIGM' in OPTION) or\ + (type(OPTION)==type(()) and 'RADI_ELGA_SIGM' in OPTION) ", + NORME =SIMP(statut='f',typ='TXM',defaut="VMIS", + into=("VMIS","TOTAL","VMIS_CINE","TOTAL_CINE") ), + ), + ), + ), +# fin bloc evol_noli + +# thermique : evol_ther, fourier_ther + b_ther =BLOC( condition = "AsType(RESULTAT) in (evol_ther,fourier_ther,)" ,fr="options thermiques", + OPTION =SIMP(statut='o',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","ERRE_ELEM_TEMP","ERRE_ELNO_ELEM",),), + 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_sdaster,nappe_sdaster,formule)), + FONC_MULT_C =SIMP(statut='f',typ=fonction_c), + COEF_MULT =SIMP(statut='f',typ='R'), + COEF_MULT_C =SIMP(statut='f',typ='C'), + PHAS_DEG =SIMP(statut='f',typ='R'), + PUIS_PULS =SIMP(statut='f',typ='I'), + TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",),), + ), + ), + +# acoustique + b_acou =BLOC( condition = "AsType(RESULTAT) in (acou_harmo,mode_acou,)",fr="options acoustiques", + OPTION =SIMP(statut='o',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',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_sdaster,nappe_sdaster,formule)), + FONC_MULT_C =SIMP(statut='f',typ=fonction_c), + COEF_MULT =SIMP(statut='f',typ='R'), + COEF_MULT_C =SIMP(statut='f',typ='C'), + PHAS_DEG =SIMP(statut='f',typ='R'), + PUIS_PULS =SIMP(statut='f',typ='I'), + TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",),),), + ), + + +# Choix du solveur (utilisé actuellement pour estimateur d'erreur ZZ1) : + SOLVEUR =FACT(statut='d', fr="Méthode de résolution des systèmes linéaires", + METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("LDLT","MUMPS","MULT_FRONT",) ), + + + 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") ), + NPREC =SIMP(statut='f',typ='I',defaut=8), + STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + ), + + b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale", + RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), + NPREC =SIMP(statut='f',typ='I',defaut=8), + STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + ), + + + b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", + TYPE_RESOL =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("NONSYM","SYMGEN","SYMDEF","AUTO")), + PRETRAITEMENTS =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("SANS","AUTO")), + RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), + ELIM_LAGR2 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), + PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=10,), + RESI_RELA =SIMP(statut='f',typ='R',defaut=-1.0,), + PARALLELISME =SIMP(statut='f',typ='TXM',defaut="CENTRALISE", + into=("CENTRALISE","DISTRIBUE_MC","DISTRIBUE_MD","DISTRIBUE_SD")), + PARTITION =SIMP(statut='f',typ=sd_feti_sdaster), + CHARGE_PROC0_MA =SIMP(statut='f',typ='I',defaut=100,min=0,max=100), + CHARGE_PROC0_SD =SIMP(statut='f',typ='I',defaut=0,min=0), + OUT_OF_CORE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), + ), + ), + + + + SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', + fr="Liste des paramètres de sensibilité.", + ang="List of sensitivity parameters"), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), + TITRE =SIMP(statut='f',typ='TXM',max='**'), +) ; +#& MODIF COMMANDE DATE 21/10/2008 AUTEUR NISTOR I.NISTOR +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2008 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE 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 NISTOR I.NISTOR + +from Macro.calc_essai_ops import calc_essai_ops + +def calc_essai_prod(self,RESU_FLUDELA,RESU_IDENTIFICATION,RESU_TURBULENT, RESU_MODIFSTRU,**args): + + if RESU_FLUDELA != None: + for res in RESU_FLUDELA: + self.type_sdprod(res['TABLE'],table_sdaster) + if RESU_IDENTIFICATION != None: + for res in RESU_IDENTIFICATION: + self.type_sdprod(res['TABLE'],table_fonction) + if RESU_TURBULENT != None: + for res in RESU_TURBULENT: + self.type_sdprod(res['FONCTION'],fonction_sdaster) + + + MTYPES = { + 'MODELE' : modele_sdaster, + 'MODE_MECA' : mode_meca, + 'NUME_DDL' : nume_ddl_sdaster, + 'MAILLAGE' : maillage_sdaster, + 'MASS_MECA' : matr_asse_depl_r, + 'RIGI_MECA' : matr_asse_depl_r, + 'AMOR_MECA' : matr_asse_depl_r, + 'MACR_ELEM' : macr_elem_stat, + 'PROJ_MESU' : mode_gene, + 'BASE_ES' : base_modale, + 'BASE_LMME' : mode_meca, + 'MODE_STA' : mode_stat_forc, + } + if RESU_MODIFSTRU != None: + for res in RESU_MODIFSTRU: + for mc, typ in MTYPES.items(): + if res[mc]: + self.type_sdprod(res[mc], typ) + return None + + +CALC_ESSAI = MACRO(nom = 'CALC_ESSAI', + op = calc_essai_ops, + sd_prod = calc_essai_prod, + reentrant = 'n', + UIinfo = {"groupes":("Outils métier",)}, + fr = "Outil de post-traitement interactif pour Meidee ", + UNITE_FIMEN = SIMP( statut='f',typ='I',max='**' ), + INTERACTIF = SIMP( statut='f',typ='TXM',into=('OUI','NON'),defaut='OUI' ), + RESU_FLUDELA = FACT( statut='f',max='**', + TABLE = SIMP(statut='f', typ=CO), + ), + RESU_TURBULENT = FACT( statut='f',max=1, + FONCTION = SIMP(statut='f', typ=CO), + ), + RESU_IDENTIFICATION = FACT( statut='f',max='**', + TABLE = SIMP(statut='f', typ=CO), + ), + RESU_MODIFSTRU = FACT( statut='f', max=1, + MODELE=SIMP(statut='f',typ=CO,defaut=None), + MODE_MECA=SIMP(statut='f',typ=CO,defaut=None), + MAILLAGE=SIMP(statut='f',typ=CO,defaut=None), + NUME_DDL=SIMP(statut='f',typ=CO,defaut=None), + MASS_MECA=SIMP(statut='f',typ=CO,defaut=None), + RIGI_MECA=SIMP(statut='f',typ=CO,defaut=None), + AMOR_MECA=SIMP(statut='f',typ=CO,defaut=None), + MACR_ELEM=SIMP(statut='f',typ=CO,defaut=None), + PROJ_MESU=SIMP(statut='f',typ=CO,defaut=None), + BASE_ES=SIMP(statut='f',typ=CO,defaut=None), + BASE_LMME=SIMP(statut='f',typ=CO,defaut=None), + MODE_STA=SIMP(statut='f',typ=CO,defaut=None), + ), + UNITE_RESU = SIMP( statut='f',typ='I'), + + b_inter = BLOC( condition="INTERACTIF=='NON'", + + EXPANSION = FACT( statut='f',max='**', + CALCUL = SIMP(statut='o',typ=mode_meca), + NUME_MODE_CALCUL = SIMP(statut='f',typ='I',validators=NoRepeat(), + max='**',defaut=0), + MESURE = SIMP(statut='o',typ=mode_meca), + NUME_MODE_MESURE = SIMP(statut='f',typ='I',validators=NoRepeat(), + max='**',defaut=0), + RESOLUTION = SIMP(statut='f',typ='TXM',defaut='SVD',into=('SVD','LU')), + b_reso = BLOC(condition = "RESOLUTION=='SVD'", + EPS = SIMP(statut='f',typ='R', defaut = 0.) + ) + ), + MEIDEE_FLUDELA = FACT( statut='f', max='**', + MESURE1 = SIMP(statut='o',typ=mode_meca), + MESURE2 = SIMP(statut='o',typ=mode_meca), + MESURE3 = SIMP(statut='o',typ=mode_meca), + BASE = SIMP(statut='o',typ=mode_meca), + ), + MEIDEE_TURBULENT = FACT( statut='f', max='**', + INTE_SPEC = SIMP(statut='o',typ=table_sdaster), + NUME_MODE_DECONV = SIMP(statut='f',typ='I',validators=NoRepeat(), + max=1,defaut=0), + NUME_MODE_LOCAL = SIMP(statut='f',typ='I',validators=NoRepeat(), + max='**',defaut=0), + BASE = SIMP(statut='o',typ=mode_meca), + MESURE = SIMP(statut='o',typ=(mode_meca,base_modale)), + ), + IDENTIFICATION = FACT( statut='f',max='**', + ALPHA = SIMP(statut='f',typ='R', defaut = 0.), + EPS = SIMP(statut='f',typ='R', defaut = 0.), + OBSERVABILITE = SIMP(statut='o',typ=(mode_meca, base_modale)), + COMMANDABILITE = SIMP(statut='o',typ=(mode_meca, base_modale)), + INTE_SPEC = SIMP(statut='o',typ=table_sdaster), + RESU_EXPANSION = SIMP(statut='f',typ='TXM',defaut='NON',into=('OUI','NON')), + BASE = SIMP(statut='o',typ=mode_meca), + ), + MODIFSTRUCT = FACT( statut='f', max=1, + MESURE = SIMP(statut='o', typ=mode_meca), + MODELE_SUP = SIMP(statut='o', typ=modele_sdaster), + MATR_RIGI = SIMP(statut='o', typ=matr_asse_depl_r), + RESOLUTION = SIMP(statut='o', typ='TXM', + into=('ES', 'LMME')), + b_resol = BLOC( condition = "RESOLUTION=='LMME'", + MATR_MASS = SIMP(statut='o', typ=matr_asse_depl_r), + ), + NUME_MODE_MESU = SIMP(statut='o', typ='I',max='**'), + NUME_MODE_CALCUL = SIMP(statut='o', typ='I',max='**'), + MODELE_MODIF = SIMP(statut='o', typ=modele_sdaster), + ), + + # Si on realise une modification structurale, on donne les DDL capteurs et interface + b_inter = BLOC( condition="MODIFSTRUCT!=None", + GROUP_NO_CAPTEURS = FACT( statut='f', max='**', + GROUP_NO = SIMP(statut='f',typ='TXM', max='**'), + NOM_CMP = SIMP(statut='f',typ='TXM', max='**'), + ), + GROUP_NO_EXTERIEUR = FACT( statut='f', max='**', + GROUP_NO = SIMP(statut='f',typ='TXM', max='**'), + NOM_CMP = SIMP(statut='f',typ='TXM', max='**'), + ), + ), + ), + ); + +#& MODIF COMMANDE DATE 20/10/2008 AUTEUR ASSIRE A.ASSIRE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2008 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE ASSIRE A.ASSIRE +from Macro.calc_europlexus_ops import calc_europlexus_ops + +import types + +def calc_europlexus_prod(self,COURBE=None,**args): + if COURBE is not None: + self.type_sdprod(args['TABLE_COURBE'],table_sdaster) + return evol_noli + +CALC_EUROPLEXUS = MACRO(nom="CALC_EUROPLEXUS",op=calc_europlexus_ops,sd_prod=calc_europlexus_prod, + reentrant='n', + #UIinfo={"groupes":("Dynamique rapide",)}, + fr="Chainage Code_Aster-Europlexus", + + LOGICIEL = SIMP(statut='f', typ='TXM', defaut='/home/europlex/EPXD/EUROPLEXUS_GESTION/runepx_d'), + + MODELE = SIMP(statut='o',typ=modele_sdaster), + CARA_ELEM = SIMP(statut='o',typ=cara_elem), + + FONC_PARASOL = FACT(statut='f', + NFKT = SIMP(statut='o',typ=(fonction_sdaster,)), + NFKR = SIMP(statut='o',typ=(fonction_sdaster,)), + GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + ), + - b_autres =BLOC( condition = "TYPE_OPTION=='AUTRES'", - 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',fr="Nom du champ pour VALE_NCOU_MAXI" ), - NOM_CMP =SIMP(statut='o',typ='TXM',fr="Nom de la composante pour VALE_NCOU_MAXI"),), - ), + CHAM_MATER = SIMP(statut='o',typ=cham_mater), - b_indi_erreur =BLOC( condition = "TYPE_OPTION=='INDI_ERREUR'", - OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',defaut="ERRE_ELEM_SIGM", - into=("ERRE_ELEM_SIGM","ERRE_ELNO_ELEM","ERZ1_ELEM_SIGM","ERZ2_ELEM_SIGM", - "DCHA_ELNO_SIGM","DCHA_ELGA_SIGM","RADI_ELNO_SIGM","RADI_ELGA_SIGM", - "QIRE_ELEM_SIGM","QIRE_ELNO_ELEM","QIZ1_ELEM_SIGM","QIZ2_ELEM_SIGM", - "SING_ELEM","SING_ELNO_ELEM",) ), + EXCIT = FACT(statut='o',max='**', + CHARGE = SIMP(statut='o',typ=(char_meca,)), + FONC_MULT = SIMP(statut='o',typ=(fonction_sdaster,)), + ), - b_erre_qi =BLOC(condition = "OPTION in ('QIRE_ELEM_SIGM','QIZ1_ELEM_SIGM','QIZ2_ELEM_SIGM') or \ - (type(OPTION)==type(()) and 'QIRE_ELEM_SIGM' in OPTION) or \ - (type(OPTION)==type(()) and 'QIZ1_ELEM_SIGM' in OPTION) or \ - (type(OPTION)==type(()) and 'QIZ2_ELEM_SIGM' in OPTION)", - RESU_DUAL =SIMP(statut='o',typ=(evol_elas,evol_noli),fr="resultat du probleme dual")), + DIME = FACT(statut='o', regles=(AU_MOINS_UN('UNITE_DIME','Q4GS','FORCE', + 'PT6L','ZONE','POUT','ECRO', + 'APPU','BLOQ','PRESS','PMAT', + 'DKT3','DEPL','FNOM','TABLE','FTAB', + 'MTTI','NEPE','LIAI',), ), + UNITE_DIME=SIMP(statut='f',typ='I'), + + Q4GS = SIMP(statut='f',typ='I'), + FORCE = SIMP(statut='f',typ='I'), + PT6L = SIMP(statut='f',typ='I'), + ZONE = SIMP(statut='f',typ='I'), + POUT = SIMP(statut='f',typ='I'), + ECRO = SIMP(statut='f',typ='I'), + APPU = SIMP(statut='f',typ='I'), + BLOQ = SIMP(statut='f',typ='I'), + PRESS = SIMP(statut='f',typ='I',min=2,max=2,), + PMAT = SIMP(statut='f',typ='I'), + DKT3 = SIMP(statut='f',typ='I'), + DEPL = SIMP(statut='f',typ='I'), + FNOM = SIMP(statut='f',typ='I'), + TABLE = SIMP(statut='f',typ='I',min=2,max=2,), + FTAB = SIMP(statut='f',typ='I'), + MTTI = SIMP(statut='f',typ='I'), + NEPE = SIMP(statut='f',typ='I'), + LIAI = SIMP(statut='f',typ='I'), + ), - b_sing =BLOC(condition= "OPTION == 'SING_ELEM' or \ - (type(OPTION)==type(()) and 'SING_ELEM' in OPTION)", - PREC_ERR=SIMP(statut='o',typ='R',val_min= 0.,val_max=1., - fr="precision demandee pour calculer la carte de taille des elements" ),), + CALCUL = FACT(statut='o', + TYPE_DISCRETISATION = SIMP(statut='o',typ='TXM',defaut='AUTO',into=('AUTO','UTIL')), + INST_FIN = SIMP(statut='o',typ='R'), + INST_INIT = SIMP(statut='o',typ='R'), + NMAX = SIMP(statut='f',typ='R'), - b_indic = BLOC( condition ="OPTION in ('DCHA_ELNO_SIGM','DCHA_ELGA_SIGM','RADI_ELNO_SIGM','RADI_ELGA_SIGM') or\ - (type(OPTION)==type(()) and 'DCHA_ELNO_SIGM' in OPTION) or\ - (type(OPTION)==type(()) and 'DCHA_ELGA_SIGM' in OPTION) or\ - (type(OPTION)==type(()) and 'RADI_ELNO_SIGM' in OPTION) or\ - (type(OPTION)==type(()) and 'RADI_ELGA_SIGM' in OPTION) ", - NORME =SIMP(statut='f',typ='TXM',defaut="VMIS", - into=("VMIS","TOTAL","VMIS_CINE","TOTAL_CINE") ), - ), - ), - ), -# fin bloc evol_noli + b_auto =BLOC( condition = "TYPE_DISCRETISATION=='AUTO'", + CSTAB = SIMP(statut='o',typ='R',max='**',defaut=0.3), +# DTMAX = SIMP(statut='f',typ='R',max='**'), + ), -# thermique : evol_ther, fourier_ther - b_ther =BLOC( condition = "AsType(RESULTAT) in (evol_ther,fourier_ther,)" ,fr="options thermiques", - OPTION =SIMP(statut='o',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","ERRE_ELEM_TEMP","ERRE_ELNO_ELEM",),), - 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_sdaster,nappe_sdaster,formule)), - FONC_MULT_C =SIMP(statut='f',typ=fonction_c), - COEF_MULT =SIMP(statut='f',typ='R'), - COEF_MULT_C =SIMP(statut='f',typ='C'), - PHAS_DEG =SIMP(statut='f',typ='R'), - PUIS_PULS =SIMP(statut='f',typ='I'), - TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",),), - ), - ), + b_util =BLOC( condition = "TYPE_DISCRETISATION=='UTIL'", + PASFIX = SIMP(statut='o',typ='R',max='**'), + ), + ), -# acoustique - b_acou =BLOC( condition = "AsType(RESULTAT) in (acou_harmo,mode_acou,)",fr="options acoustiques", - OPTION =SIMP(statut='o',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',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_sdaster,nappe_sdaster,formule)), - FONC_MULT_C =SIMP(statut='f',typ=fonction_c), - COEF_MULT =SIMP(statut='f',typ='R'), - COEF_MULT_C =SIMP(statut='f',typ='C'), - PHAS_DEG =SIMP(statut='f',typ='R'), - PUIS_PULS =SIMP(statut='f',typ='I'), - TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",),),), - ), - 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='**'), -) ; + OBSERVATION =FACT(statut='f',max='**', + SUIVI_DDL = SIMP(statut='o',typ='TXM',defaut="OUI",max=1,into=("OUI","NON")), + b_suivi =BLOC(condition = "SUIVI_DDL == 'OUI' ", + regles=( AU_MOINS_UN('PAS_NBRE','PAS_INST',), + EXCLUS('PAS_NBRE','PAS_INST',), + EXCLUS('GROUP_NO','TOUT_GROUP_NO',), + EXCLUS('GROUP_MA','TOUT_GROUP_MA',), ), + NOM_CHAM = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**', defaut = ('DEPL',), + into=('DEPL','VITE','ACCE','SIEF_ELGA','EPSI_ELGA','VARI_ELGA'),), + PAS_INST = SIMP(statut='f',typ='R'), + PAS_NBRE = SIMP(statut='f',typ='I'), + GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + TOUT_GROUP_NO = SIMP(statut='f',typ='TXM',into=('OUI',),), + TOUT_GROUP_MA = SIMP(statut='f',typ='TXM',into=('OUI',),), + ), + ), + + + ARCHIVAGE =FACT(statut='f', regles=( AU_MOINS_UN('PAS_NBRE','PAS_INST',), EXCLUS('PAS_NBRE','PAS_INST',), ), + PAS_INST = SIMP(statut='f',typ='R'), + PAS_NBRE = SIMP(statut='f',typ='I'), + CONT_GENER = SIMP(statut='o',typ='TXM',defaut="NON",max=1,into=("OUI","NON")), + ), + COURBE = FACT(statut='f',max='**', regles=(EXCLUS('GROUP_NO','GROUP_MA')), + UNITE_ALIT = SIMP(statut='f',typ='I'), + NOM_CHAM = SIMP(statut='f',typ='TXM'), + NOM_CMP = SIMP(statut='f',typ='TXM'), +# NOEUD = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), +# MAILLE = SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), + GROUP_NO = SIMP(statut='f',typ=grno,validators=NoRepeat(),max=1), + GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max=1), + + b_maille = BLOC(condition = "MAILLE != None", regles=(AU_MOINS_UN('NUM_GAUSS')), + NUM_GAUSS = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'),), + ), + b_courbe = BLOC(condition = "COURBE != None", + regles=(AU_MOINS_UN('PAS_NBRE_COURBE','PAS_INST_COURBE',), + AU_MOINS_UN('TABLE_COURBE',)), + PAS_INST_COURBE = SIMP(statut='f',typ='R'), + PAS_NBRE_COURBE = SIMP(statut='f',typ='I'), + TABLE_COURBE = SIMP(statut='f', typ=CO), + ), + DOMAINES = FACT(statut='f',max='**', + GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + IDENTIFIANT = SIMP(statut='f',typ='I'),), + INTERFACES = FACT(statut='f',max='**', + GROUP_MA_1 = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + GROUP_MA_2 = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + TOLE = SIMP(statut='f',typ='R'), + IDENT_DOMAINE_1 = SIMP(statut='f',typ='I'), + IDENT_DOMAINE_2 = SIMP(statut='f',typ='I'),), + + INFO =SIMP(statut='f',typ='I',defaut=1,into=( 1, 2 ) ), + ) ; #& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -5945,7 +6034,7 @@ CALC_FONCTION=MACRO(nom="CALC_FONCTION",op=calc_fonction_ops,sd_prod=calc_foncti PROL_GAUCHE_FONC=SIMP(statut='f',typ='TXM',into=("CONSTANT","LINEAIRE","EXCLU") ), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), ) -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -5997,7 +6086,7 @@ CALC_FORC_AJOU=OPER(nom="CALC_FORC_AJOU",op=199,sd_prod=vect_asse_gene, INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ), SOLVEUR =FACT(statut='d', - METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ), + METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC","MUMPS","PETSC") ), 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") ), ), @@ -6015,11 +6104,37 @@ CALC_FORC_AJOU=OPER(nom="CALC_FORC_AJOU",op=199,sd_prod=vect_asse_gene, RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), + ), + b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", + TYPE_RESOL =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("NONSYM","SYMGEN","SYMDEF","AUTO")), + PRETRAITEMENTS =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("SANS","AUTO")), + RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), + ELIM_LAGR2 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), + PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=10,), + RESI_RELA =SIMP(statut='f',typ='R',defaut=1.0E-6,), + PARALLELISME =SIMP(statut='f',typ='TXM',defaut="CENTRALISE", + into=("CENTRALISE","DISTRIBUE_MC","DISTRIBUE_MD","DISTRIBUE_SD")), + PARTITION =SIMP(statut='f',typ=sd_feti_sdaster), + CHARGE_PROC0_MA =SIMP(statut='f',typ='I',defaut=100,min=0,max=100), + CHARGE_PROC0_SD =SIMP(statut='f',typ='I',defaut=0,min=0), + OUT_OF_CORE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), + ), + + b_petsc =BLOC(condition = "METHODE == 'PETSC' ",fr="Paramètres de la méthode PETSC", + ALGORITHME =SIMP(statut='f',typ='TXM',into=("BCGS","BICG","CG","CR","GMRES","TFQMR",),defaut="CG" ), + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC","JACOBI","SOR"),defaut="LDLT_INC" ), + b_petsc_ilu =BLOC(condition = "PRE_COND == 'LDLT_INC' ", + NIVE_REMPLISSAGE = SIMP(statut='f',typ='I',defaut= 0 ), + REMPLISSAGE = SIMP(statut='f',typ='R',defaut= 1.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= -1 ), ), ), ) ; -#& MODIF COMMANDE DATE 13/05/2008 AUTEUR GALENNE E.GALENNE +#& MODIF COMMANDE DATE 20/10/2008 AUTEUR GALENNE E.GALENNE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2006 EDF R&D WWW.CODE-ASTER.ORG @@ -6054,7 +6169,9 @@ CALC_G=OPER(nom="CALC_G",op=100,sd_prod=table_sdaster, FISSURE =SIMP(statut='f',typ=fiss_xfem,max=1), DTAN_ORIG =SIMP(statut='f',typ='R',max='**'), DTAN_EXTR =SIMP(statut='f',typ='R',max='**'), + NB_POINT_FOND =SIMP(statut='f',typ='I',val_min=2), regles=(EXCLUS('FOND_FISS','FISSURE'), + EXCLUS('FOND_FISS','NB_POINT_FOND'), EXCLUS('FOND_FISS','DTAN_ORIG'), EXCLUS('FOND_FISS','DTAN_EXTR'),), b_theta =BLOC(condition="THETA == None",fr="calcul de theta", @@ -6066,7 +6183,7 @@ CALC_G=OPER(nom="CALC_G",op=100,sd_prod=table_sdaster, R_SUP =SIMP(statut='f',typ='R'), MODULE =SIMP(statut='f',typ='R',defaut=1.), DIRE_THETA =SIMP(statut='f',typ=cham_no_sdaster ), - DIRECTION =SIMP(statut='f',typ='R',max='**'), + DIRECTION =SIMP(statut='f',typ='R',max=3,min=3), R_INF_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), R_SUP_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), MODULE_FO =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), @@ -6091,8 +6208,11 @@ CALC_G=OPER(nom="CALC_G",op=100,sd_prod=table_sdaster, FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), b_acce_reel =BLOC(condition="(INST != None)or(LIST_INST != None)or(FREQ != None)or(LIST_FREQ != None)", - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-6), CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R'),), ), ), @@ -6111,10 +6231,7 @@ CALC_G=OPER(nom="CALC_G",op=100,sd_prod=table_sdaster, COMP_ELAS =FACT(statut='f', RELATION =SIMP(statut='f',typ='TXM',defaut="ELAS", into=("ELAS","ELAS_VMIS_LINE","ELAS_VMIS_TRAC","ELAS_VMIS_PUIS") ), - ELAS =SIMP(statut='c',typ='I',defaut=1,into=(1,) ), - ELAS_VMIS_LINE =SIMP(statut='c',typ='I',defaut=1,into=(1,) ), - ELAS_VMIS_TRAC =SIMP(statut='c',typ='I',defaut=1,into=(1,) ), - ELAS_VMIS_PUIS =SIMP(statut='c',typ='I',defaut=1,into=(1,) ), + CALCUL_CONTRAINTE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), 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",) ), @@ -6124,9 +6241,6 @@ CALC_G=OPER(nom="CALC_G",op=100,sd_prod=table_sdaster, 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_VMIS_PUIS") ), - ELAS =SIMP(statut='f',typ='I',defaut=1,into=(1,) ), - VMIS_ISOT_TRAC =SIMP(statut='f',typ='I',defaut=2,into=(2,) ), - VMIS_ISOT_LINE =SIMP(statut='f',typ='I',defaut=2,into=(2,) ), DEFORMATION =SIMP(statut='f',typ='TXM',defaut="PETIT",into=("PETIT","PETIT_REAC") ), regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), @@ -6202,7 +6316,7 @@ CALC_INTE_SPEC=OPER(nom="CALC_INTE_SPEC",op= 120,sd_prod=table_fonction, TITRE =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1 , 2) ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -6245,7 +6359,7 @@ CALC_MATR_AJOU=OPER(nom="CALC_MATR_AJOU",op= 152,sd_prod=matr_asse_gene_r, INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ) ), SOLVEUR =FACT(statut='d', - METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ), + METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC","MUMPS","PETSC") ), 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") ), ), @@ -6264,9 +6378,35 @@ CALC_MATR_AJOU=OPER(nom="CALC_MATR_AJOU",op= 152,sd_prod=matr_asse_gene_r, RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), ), + b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", + TYPE_RESOL =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("NONSYM","SYMGEN","SYMDEF","AUTO")), + PRETRAITEMENTS =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("SANS","AUTO")), + RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), + ELIM_LAGR2 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), + PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=10,), + RESI_RELA =SIMP(statut='f',typ='R',defaut=1.0E-6,), + PARALLELISME =SIMP(statut='f',typ='TXM',defaut="CENTRALISE", + into=("CENTRALISE","DISTRIBUE_MC","DISTRIBUE_MD","DISTRIBUE_SD")), + PARTITION =SIMP(statut='f',typ=sd_feti_sdaster), + CHARGE_PROC0_MA =SIMP(statut='f',typ='I',defaut=100,min=0,max=100), + CHARGE_PROC0_SD =SIMP(statut='f',typ='I',defaut=0,min=0), + OUT_OF_CORE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), + ), + + b_petsc =BLOC(condition = "METHODE == 'PETSC' ",fr="Paramètres de la méthode PETSC", + ALGORITHME =SIMP(statut='f',typ='TXM',into=("BCGS","BICG","CG","CR","GMRES","TFQMR",),defaut="CG" ), + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC","JACOBI","SOR"),defaut="LDLT_INC" ), + b_petsc_ilu =BLOC(condition = "PRE_COND == 'LDLT_INC' ", + NIVE_REMPLISSAGE = SIMP(statut='f',typ='I',defaut= 0 ), + REMPLISSAGE = SIMP(statut='f',typ='R',defaut= 1.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= -1 ), + ), ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 17/11/2008 AUTEUR DELMAS J.DELMAS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -6288,10 +6428,6 @@ CALC_MATR_AJOU=OPER(nom="CALC_MATR_AJOU",op= 152,sd_prod=matr_asse_gene_r, def calc_matr_elem_prod(OPTION,**args): if OPTION == "RIGI_MECA" : return matr_elem_depl_r if OPTION == "RIGI_FLUI_STRU" : return matr_elem_depl_r - if OPTION == "MASS_ID_MDEP_R" : return matr_elem_depl_r - if OPTION == "MASS_ID_MDNS_R" : return matr_elem_depl_r - if OPTION == "MASS_ID_MTEM_R" : return matr_elem_temp_r - if OPTION == "MASS_ID_MTNS_R" : return matr_elem_temp_r if OPTION == "MASS_MECA" : return matr_elem_depl_r if OPTION == "MASS_FLUI_STRU" : return matr_elem_depl_r if OPTION == "RIGI_GEOM" : return matr_elem_depl_r @@ -6319,8 +6455,8 @@ CALC_MATR_ELEM=OPER(nom="CALC_MATR_ELEM",op= 9,sd_prod=calc_matr_elem_prod "AMOR_MECA","RIGI_THER","MASS_THER","IMPE_MECA", "ONDE_FLUI","AMOR_MECA_ABSO","MASS_FLUI_STRU","RIGI_FLUI_STRU", "RIGI_ROTA","MECA_GYRO","MASS_MECA_DIAG","RIGI_ACOU", - "MASS_ID_MDEP_R","MASS_ID_MDNS_R","MASS_ID_MTEM_R","MASS_ID_MTNS_R", "MASS_ACOU","AMOR_ACOU","RIGI_MECA_HYST") ), + MODELE =SIMP(statut='o',typ=modele_sdaster ), # mots clés facultatifs que l'on a du mal à mettre dans les blocs # sans gener MACRO_MATR_ASSE : @@ -6329,48 +6465,30 @@ CALC_MATR_ELEM=OPER(nom="CALC_MATR_ELEM",op= 9,sd_prod=calc_matr_elem_prod b_rigi_meca = BLOC( condition = "OPTION=='RIGI_MECA'", - regles=(AU_MOINS_UN('MODELE','CHARGE' ),), - MODELE =SIMP(statut='f',typ=modele_sdaster ), - b_modele =BLOC(condition = "MODELE != None", - CHAM_MATER =SIMP(statut='f',typ=cham_mater ), - CARA_ELEM =SIMP(statut='f',typ=cara_elem ), - MODE_FOURIER =SIMP(statut='f',typ='I',defaut= 0 ), - ), + CHAM_MATER =SIMP(statut='f',typ=cham_mater ), + CARA_ELEM =SIMP(statut='f',typ=cara_elem ), + MODE_FOURIER =SIMP(statut='f',typ='I',defaut= 0 ), CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**' ), ), - b_mass_meca =BLOC(condition = "(OPTION=='MASS_MECA') or (OPTION=='MASS_MECA_DIAG')", - regles=(AU_MOINS_UN('MODELE','CHARGE'),), - MODELE =SIMP(statut='f',typ=modele_sdaster ), - b_modele =BLOC(condition = "MODELE != None", - CHAM_MATER =SIMP(statut='f',typ=cham_mater ), - CARA_ELEM =SIMP(statut='f',typ=cara_elem ), - ), + b_mass_meca =BLOC(condition = "(OPTION=='MASS_MECA') or (OPTION=='MASS_MECA_DIAG')", + CHAM_MATER =SIMP(statut='f',typ=cham_mater ), + CARA_ELEM =SIMP(statut='f',typ=cara_elem ), CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), ), - b_mass_identite =BLOC(condition = "(OPTION in ('MASS_ID_MDEP_R','MASS_ID_MTEM_R','MASS_ID_MDNS_R','MASS_ID_MTNS_R')) ", - MODELE =SIMP(statut='o',typ=modele_sdaster ), - # j'ajoute ces 2 mot clés inutiles à cause de l'alarme pas assez subtile de MEDOME - CHAM_MATER =SIMP(statut='f',typ=cham_mater ), - CARA_ELEM =SIMP(statut='f',typ=cara_elem ), - ), - b_rigi_geom =BLOC(condition = "OPTION=='RIGI_GEOM'", - MODELE =SIMP(statut='o',typ=modele_sdaster ), CARA_ELEM =SIMP(statut='f',typ=cara_elem ), SIEF_ELGA =SIMP(statut='o',typ=cham_elem ), MODE_FOURIER =SIMP(statut='f',typ='I',defaut= 0 ), ), b_rigi_rota =BLOC(condition = "OPTION=='RIGI_ROTA'", - MODELE =SIMP(statut='o',typ=modele_sdaster ), CHAM_MATER =SIMP(statut='o',typ=cham_mater ), CHARGE =SIMP(statut='o',typ=char_meca,validators=NoRepeat(),max='**' ), ), b_meca_gyro = BLOC( condition = "OPTION=='MECA_GYRO'", - MODELE =SIMP(statut='o',typ=modele_sdaster ), CHAM_MATER =SIMP(statut='o',typ=cham_mater ), CARA_ELEM =SIMP(statut='o',typ=cara_elem ), CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**' ), @@ -6379,27 +6497,24 @@ CALC_MATR_ELEM=OPER(nom="CALC_MATR_ELEM",op= 9,sd_prod=calc_matr_elem_prod b_amor_meca =BLOC(condition = "OPTION=='AMOR_MECA'", regles=(AU_MOINS_UN('CARA_ELEM','RIGI_MECA'), ENSEMBLE('RIGI_MECA','MASS_MECA','CHAM_MATER'), ), - MODELE =SIMP(statut='o',typ=modele_sdaster ), CARA_ELEM =SIMP(statut='f',typ=cara_elem ), 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,validators=NoRepeat(),max='**'), ), - + b_amor_meca_abso =BLOC(condition = "OPTION=='AMOR_MECA_ABSO'", regles=(AU_MOINS_UN('CARA_ELEM','RIGI_MECA'), ENSEMBLE('RIGI_MECA','MASS_MECA','CHAM_MATER'), ), - MODELE =SIMP(statut='o',typ=modele_sdaster ), CARA_ELEM =SIMP(statut='f',typ=cara_elem ), CHAM_MATER =SIMP(statut='o',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,validators=NoRepeat(),max='**'), ), - + b_rigi_meca_hyst =BLOC( condition = "OPTION=='RIGI_MECA_HYST'", - MODELE =SIMP(statut='o',typ=modele_sdaster ), 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 ), @@ -6407,56 +6522,46 @@ CALC_MATR_ELEM=OPER(nom="CALC_MATR_ELEM",op= 9,sd_prod=calc_matr_elem_prod ), b_rigi_ther =BLOC(condition = "OPTION=='RIGI_THER'", - regles=(AU_MOINS_UN('MODELE','CHARGE' ),), - MODELE =SIMP(statut='f',typ=modele_sdaster ), - b_modele =BLOC(condition = "MODELE != None", - CHAM_MATER =SIMP(statut='o',typ=cham_mater ), - CARA_ELEM =SIMP(statut='f',typ=cara_elem ), - MODE_FOURIER =SIMP(statut='f',typ='I',defaut= 0 ), - ), + CHAM_MATER =SIMP(statut='o',typ=cham_mater ), + CARA_ELEM =SIMP(statut='f',typ=cara_elem ), + MODE_FOURIER =SIMP(statut='f',typ='I',defaut= 0 ), CHARGE =SIMP(statut='f',typ=char_ther,validators=NoRepeat(),max='**' ), ), b_mass_ther =BLOC(condition = "OPTION=='MASS_THER'", - MODELE =SIMP(statut='o',typ=modele_sdaster ), CHAM_MATER =SIMP(statut='o',typ=cham_mater ), CARA_ELEM =SIMP(statut='f',typ=cara_elem ), CHARGE =SIMP(statut='f',typ=char_ther ,validators=NoRepeat(),max='**' ), ), b_rigi_acou =BLOC(condition = "OPTION=='RIGI_ACOU'", - MODELE =SIMP(statut='o',typ=modele_sdaster ), CHAM_MATER =SIMP(statut='o',typ=cham_mater ), CHARGE =SIMP(statut='f',typ=char_acou ,validators=NoRepeat(),max='**' ), ), b_mass_acou =BLOC(condition = "(OPTION=='MASS_ACOU') or (OPTION=='AMOR_ACOU')", - MODELE =SIMP(statut='o',typ=modele_sdaster ), CHAM_MATER =SIMP(statut='o',typ=cham_mater ), CHARGE =SIMP(statut='f',typ=char_acou ,validators=NoRepeat(),max='**' ), ), b_rigi_flui =BLOC(condition = "OPTION=='RIGI_FLUI_STRU'", - MODELE =SIMP(statut='o',typ=modele_sdaster ), CARA_ELEM =SIMP(statut='o',typ=cara_elem ), CHAM_MATER =SIMP(statut='o',typ=cham_mater ), CHARGE =SIMP(statut='o',typ=char_meca ,validators=NoRepeat(),max='**' ), ), b_mass_flui =BLOC(condition = "OPTION=='MASS_FLUI_STRU'", - MODELE =SIMP(statut='o',typ=modele_sdaster ), CARA_ELEM =SIMP(statut='o',typ=cara_elem ), CHAM_MATER =SIMP(statut='o',typ=cham_mater ), CHARGE =SIMP(statut='o',typ=char_meca ,validators=NoRepeat(),max='**'), ), b_impe_meca =BLOC(condition = "(OPTION=='IMPE_MECA') or (OPTION=='ONDE_FLUI')", - MODELE =SIMP(statut='o',typ=modele_sdaster ), CHAM_MATER =SIMP(statut='o',typ=cham_mater ), CHARGE =SIMP(statut='o',typ=char_meca,validators=NoRepeat(),max='**' ), ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -6490,24 +6595,139 @@ CALC_META=OPER(nom="CALC_META",op=194,sd_prod=evol_ther,reentrant='o', NUME_INIT =SIMP(statut='f',typ='I'), INST_INIT =SIMP(statut='f',typ='R'), b_inst =BLOC(condition="INST_INIT != None", - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ) + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), ), ), ), - COMP_INCR =FACT(statut='o',max='**', + COMP_INCR =FACT(statut='o',max=1, 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,) ), + ZIRC =SIMP(statut='c',typ='I',defaut=4,into=(4,) ), regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - GROUP_MA =SIMP(statut='f',typ=grma), - MAILLE =SIMP(statut='f',typ=ma), + GROUP_MA =SIMP(statut='f',typ=grma, validators=NoRepeat(), max='**'), + MAILLE =SIMP(statut='f',typ=ma, validators=NoRepeat(), max='**'), ), OPTION =SIMP(statut='f',typ='TXM' ,into=("META_ELNO_TEMP",) ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 14/10/2008 AUTEUR NISTOR I.NISTOR +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2008 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE 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 NISTOR I.NISTOR + +from Macro.calc_modal_ops import calc_modal_ops + +def calc_modal_prod(self,AMORTISEMENT,**args): + if AMORTISEMENT=="NON": return mode_meca + if AMORTISEMENT=="OUI": return mode_meca_c + raise AsException("type de concept resultat non prevu") + + +CALC_MODAL=MACRO(nom="CALC_MODAL",op=calc_modal_ops, + UIinfo={"groupes":("Résolution",)}, + sd_prod=calc_modal_prod, + fr="Calcul des modes propres reels ou complexes dans une seule commande", + MODELE =SIMP(statut='o',typ=modele_sdaster), + AMORTISEMENT =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON" ), + CHAM_MATER =SIMP(statut='o',typ=cham_mater), + INST =SIMP(statut='f',typ='R',defaut=0.), + CARA_ELEM =SIMP(statut='f',typ=cara_elem), + CHARGE =SIMP(statut='f',typ=char_meca,validators=NoRepeat(),max='**'), + 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 associés à la méthode multifrontale", + RENUM =SIMP(statut='f',typ='TXM',into=("MD","MDA","METIS"),defaut="METIS" ), + ), + b_ldlt =BLOC(condition="METHODE=='LDLT'",fr="Paramètres associés à la méthode LDLT", + RENUM =SIMP(statut='f',typ='TXM',into=("RCMK","SANS"),defaut="RCMK" ), + ),), + METHODE =SIMP(statut='f',typ='TXM',defaut="SORENSEN", + into=("TRI_DIAG","JACOBI","SORENSEN","QZ") ), + b_tri_diag =BLOC(condition = "METHODE == 'TRI_DIAG'", + PREC_ORTHO =SIMP(statut='f',typ='R',defaut= 1.E-12,val_min=0.E+0 ), + NMAX_ITER_ORTHO =SIMP(statut='f',typ='I',defaut= 5,val_min=0 ), + PREC_LANCZOS =SIMP(statut='f',typ='R',defaut= 1.E-8,val_min=0.E+0 ), + NMAX_ITER_QR =SIMP(statut='f',typ='I',defaut= 30,val_min=0 ), + ), + b_jacobi =BLOC(condition = "METHODE == 'JACOBI'", + PREC_BATHE =SIMP(statut='f',typ='R',defaut= 1.E-10,val_min=0.E+0 ), + NMAX_ITER_BATHE =SIMP(statut='f',typ='I',defaut= 40,val_min=0 ), + PREC_JACOBI =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0 ), + NMAX_ITER_JACOBI=SIMP(statut='f',typ='I',defaut= 12,val_min=0 ), + ), + b_sorensen =BLOC(condition = "METHODE == 'SORENSEN'", + PREC_SOREN =SIMP(statut='f',typ='R',defaut= 0.E+0,val_min=0.E+0 ), + NMAX_ITER_SOREN =SIMP(statut='f',typ='I',defaut= 20,val_min=0 ), + PARA_ORTHO_SOREN=SIMP(statut='f',typ='R',defaut= 0.717,val_min=0.E+0 ), + ), + b_qz =BLOC(condition = "METHODE == 'QZ'", + TYPE_QZ =SIMP(statut='f',typ='TXM',defaut="QZ_SIMPLE",into=("QZ_QR","QZ_SIMPLE","QZ_EQUI") ), + ), + MODE_RIGIDE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"), + fr="Calcul des modes de corps rigide, uniquement pour la méthode TRI_DIAG" ), + CALC_FREQ =FACT(statut='d',min=0, + OPTION =SIMP(statut='f',typ='TXM',defaut="PLUS_PETITE",into=("PLUS_PETITE","BANDE","CENTRE","TOUT"), + fr="Choix de l option et par conséquent du shift du problème modal" ), + b_plus_petite =BLOC(condition = "OPTION == 'PLUS_PETITE'",fr="Recherche des plus petites valeurs propres", + NMAX_FREQ =SIMP(statut='f',typ='I',defaut= 10,val_min=0 ), + ), + b_centre =BLOC(condition = "OPTION == 'CENTRE'", + fr="Recherche des valeurs propres les plus proches d une valeur donnée", + FREQ =SIMP(statut='o',typ='R', + fr="Fréquence autour de laquelle on cherche les fréquences propres"), + AMOR_REDUIT =SIMP(statut='f',typ='R',), + NMAX_FREQ =SIMP(statut='f',typ='I',defaut= 10,val_min=0 ), + ), + b_bande =BLOC(condition = "(OPTION == 'BANDE')", + fr="Recherche des valeurs propres dans une bande donnée", + FREQ =SIMP(statut='o',typ='R',min=2,validators=NoRepeat(),max=2, + fr="Valeur des deux fréquences délimitant la bande de recherche"), + ), + APPROCHE =SIMP(statut='f',typ='TXM',defaut="REEL",into=("REEL","IMAG","COMPLEXE"), + fr="Choix du pseudo-produit scalaire pour la résolution du problème quadratique" ), + regles=(EXCLUS('DIM_SOUS_ESPACE','COEF_DIM_ESPACE'),), + DIM_SOUS_ESPACE =SIMP(statut='f',typ='I' ), + COEF_DIM_ESPACE =SIMP(statut='f',typ='I' ), + NPREC_SOLVEUR =SIMP(statut='f',typ='I',defaut= 8,val_min=0 ), + NMAX_ITER_SHIFT =SIMP(statut='f',typ='I',defaut= 5,val_min=0 ), + PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-2,val_min=0.E+0 ), + SEUIL_FREQ =SIMP(statut='f',typ='R',defaut= 1.E-2,val_min=0.E+0 ), + STOP_FREQ_VIDE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + ), + + VERI_MODE =FACT(statut='d',min=0, + STOP_ERREUR =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + PREC_SHIFT =SIMP(statut='f',typ='R',defaut= 5.E-3,val_min=0.E+0 ), + SEUIL =SIMP(statut='f',typ='R',defaut= 1.E-6,val_min=0.E+0, + fr="Valeur limite admise pour l ereur a posteriori des modes" ), + STURM =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + ), + + TITRE =SIMP(statut='f',typ='TXM',max='**'), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), +) ; +#& MODIF COMMANDE DATE 06/10/2008 AUTEUR DEVESA G.DEVESA # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -6530,7 +6750,7 @@ def calc_no_prod(RESULTAT,**args): if AsType(RESULTAT) != None : return AsType(RESULTAT) raise AsException("type de concept resultat non prevu") -CALC_NO=OPER(nom="CALC_NO",op= 106,sd_prod=calc_no_prod,reentrant='o', +CALC_NO=OPER(nom="CALC_NO",op= 106,sd_prod=calc_no_prod,reentrant='f', fr="Enrichir une SD Résultat par des champs aux noeuds calculés à partir de champs aux éléments évalués aux noeuds", UIinfo={"groupes":("Post traitements",)}, RESULTAT =SIMP(statut='o',typ=resultat_sdaster), @@ -6551,12 +6771,15 @@ CALC_NO=OPER(nom="CALC_NO",op= 106,sd_prod=calc_no_prod,reentrant='o', FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8_sdaster), LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), - + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**', into=("FORC_NODA","REAC_NODA", + "FORC_NODA_NONL", "DCHA_NOEU_SIGM", "DEGE_NOEU_DEPL", "DETE_NOEU_DLTE", @@ -6593,7 +6816,11 @@ CALC_NO=OPER(nom="CALC_NO",op= 106,sd_prod=calc_no_prod,reentrant='o', (OPTION == 'REAC_NODA') or (type(OPTION) == type(()) and 'REAC_NODA' in OPTION)""", MODELE =SIMP(statut='f',typ=modele_sdaster), ), - + b_forc_nonl =BLOC(condition = """(OPTION == 'FORC_NODA_NONL')""", + MODELE =SIMP(statut='f',typ=modele_sdaster), + COMP_INCR =C_COMP_INCR(), + ), + CHAM_MATER =SIMP(statut='f',typ=cham_mater), CARA_ELEM =SIMP(statut='f',typ=cara_elem), EXCIT =FACT(statut='f',max='**', @@ -6610,7 +6837,7 @@ CALC_NO=OPER(nom="CALC_NO",op= 106,sd_prod=calc_no_prod,reentrant='o', GROUP_NO_RESU =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), NOEUD_RESU =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG @@ -6654,7 +6881,7 @@ CALC_PRECONT=MACRO(nom="CALC_PRECONT",op=calc_precont_ops,sd_prod=evol_noli, LIST_INST =SIMP(statut='o',typ=listr8_sdaster), INST_INIT =SIMP(statut='f',typ='R'), INST_FIN =SIMP(statut='f',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), + PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-6 ), # DEBUT DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS SUBD_METHODE =SIMP( statut='f',typ='TXM', into =("AUCUNE","UNIFORME","EXTRAPOLE"), @@ -6725,13 +6952,16 @@ CALC_PRECONT=MACRO(nom="CALC_PRECONT",op=calc_precont_ops,sd_prod=evol_noli, 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") ), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), NUME_DIDI =SIMP(statut='f',typ='I'), INST_ETAT_INIT =SIMP(statut='f',typ='R'), ), SOLVEUR =FACT(statut='d', - METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ), + METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC","MUMPS","PETSC") ), 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") ), ), @@ -6750,6 +6980,32 @@ CALC_PRECONT=MACRO(nom="CALC_PRECONT",op=calc_precont_ops,sd_prod=evol_noli, RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), ), + b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", + TYPE_RESOL =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("NONSYM","SYMGEN","SYMDEF","AUTO")), + PRETRAITEMENTS =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("SANS","AUTO")), + RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), + ELIM_LAGR2 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), + PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=10,), + RESI_RELA =SIMP(statut='f',typ='R',defaut=1.0E-6,), + PARALLELISME =SIMP(statut='f',typ='TXM',defaut="CENTRALISE", + into=("CENTRALISE","DISTRIBUE_MC","DISTRIBUE_MD","DISTRIBUE_SD")), + PARTITION =SIMP(statut='f',typ=sd_feti_sdaster), + CHARGE_PROC0_MA =SIMP(statut='f',typ='I',defaut=100,min=0,max=100), + CHARGE_PROC0_SD =SIMP(statut='f',typ='I',defaut=0,min=0), + OUT_OF_CORE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), + ), + + b_petsc =BLOC(condition = "METHODE == 'PETSC' ",fr="Paramètres de la méthode PETSC", + ALGORITHME =SIMP(statut='f',typ='TXM',into=("BCGS","BICG","CG","CR","GMRES","TFQMR",),defaut="CG" ), + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC","JACOBI","SOR"),defaut="LDLT_INC" ), + b_petsc_ilu =BLOC(condition = "PRE_COND == 'LDLT_INC' ", + NIVE_REMPLISSAGE = SIMP(statut='f',typ='I',defaut= 0 ), + REMPLISSAGE = SIMP(statut='f',typ='R',defaut= 1.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= -1 ), + ), SYME =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), ), INFO =SIMP(statut='f',typ='I',into=(1,2) ), @@ -6761,6 +7017,69 @@ CALC_PRECONT=MACRO(nom="CALC_PRECONT",op=calc_precont_ops,sd_prod=evol_noli, COMP_INCR =C_COMP_INCR(), ) ; +#& MODIF COMMANDE DATE 21/10/2008 AUTEUR CORUS M.CORUS +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2008 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE 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 CORUS M.CORUS + +from Macro.calc_spec_ops import calc_spec_ops + +CALC_SPEC=MACRO(nom="CALC_SPEC",op= calc_spec_ops,sd_prod=table_fonction, + reentrant='n', + fr="Calcule une matrice interspectrale ou des fonctions de transferts", + UIinfo={"groupes":("Fonction",)}, + TAB_ECHANT =FACT(statut='f', + NOM_TAB =SIMP(statut='o',typ=table_sdaster), + LONGUEUR_ECH =FACT(statut='f', + DUREE =SIMP(statut='f',typ='R'), + POURCENT =SIMP(statut='f',typ='R'), + NB_PTS =SIMP(statut='f',typ='I'), + ), + RECOUVREMENT =FACT(statut='f', + DUREE =SIMP(statut='f',typ='R'), + POURCENT =SIMP(statut='f',typ='R'), + NB_PTS =SIMP(statut='f',typ='I'), + ), + ), + ECHANT =FACT(statut='f',max='**', + NUME_ORDRE_I =SIMP(statut='o',typ='I' ), + NUME_MES =SIMP(statut='o',typ='I' ), + FONCTION =SIMP(statut='o',typ=fonction_sdaster), + ), +#-- Cas de la matrice interspectrale --# + INTERSPE =FACT(statut='f', + FENETRE =SIMP(statut='f',typ='TXM',defaut="RECT",into=("RECT","HAMM","HANN","EXPO","PART",)), + BLOC_DEFI_FENE =BLOC(condition = "FENETRE == 'EXPO' or FENETRE == 'PART' ", +# DEFI_FENE =SIMP(statut='f',typ='R',max='**'), + ), + ), +#-- Cas des transferts - estimateurs H1 / H2 / Hv + Coherence --# + TRANSFERT =FACT(statut='f', + ESTIM =SIMP(statut='f',typ='TXM',defaut="H1",into=("H1","H2","CO",)), + REFER =SIMP(statut='o',typ='I',max='**'), + FENETRE =SIMP(statut='f',typ='TXM',defaut="RECT",into=("RECT","HAMM","HANN","EXPO","PART",)), + DEFI_FENE =SIMP(statut='f',typ='R',max='**'), + + ), + TITRE =SIMP(statut='f',typ='TXM',max='**'), + INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), +); #& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -6948,7 +7267,7 @@ CALC_THETA=OPER(nom="CALC_THETA",op=54,sd_prod=theta_geom,reentrant='n', FORMAT =SIMP(statut='f',typ='TXM',defaut="EXCEL",into=("EXCEL","AGRAF") ), ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 21/10/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2007 EDF R&D WWW.CODE-ASTER.ORG @@ -6968,7 +7287,7 @@ CALC_THETA=OPER(nom="CALC_THETA",op=54,sd_prod=theta_geom,reentrant='n', # ====================================================================== # RESPONSABLE ABBAS M.ABBAS -CALCUL=OPER(nom="CALCUL",op=26,sd_prod=table_container,reentrant='n', +CALCUL=OPER(nom="CALCUL",op=26,sd_prod=table_container,reentrant='f', UIinfo={"groupes":("Résolution",)}, fr="Calculer des objets élémentaires comme une matrice tangente, intégrer une loi de comportement, etc...", OPTION =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',defaut="COMPORTEMENT", @@ -6976,6 +7295,7 @@ CALCUL=OPER(nom="CALCUL",op=26,sd_prod=table_container,reentrant='n', MODELE =SIMP(statut='o',typ=modele_sdaster), CARA_ELEM =SIMP(statut='f',typ=cara_elem), CHAM_MATER =SIMP(statut='o',typ=cham_mater), + TABLE =SIMP(statut='f',typ=table_container), EXCIT =FACT(statut='o',max='**', CHARGE =SIMP(statut='o',typ=(char_meca,char_cine_meca)), FONC_MULT =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), @@ -6999,12 +7319,6 @@ CALCUL=OPER(nom="CALCUL",op=26,sd_prod=table_container,reentrant='n', RELATION =SIMP(statut='o',typ='TXM',defaut="ELAS", into=("ELAS","ELAS_VMIS_LINE","ELAS_VMIS_TRAC", "ELAS_POUTRE_GR","CABLE","ELAS_HYPER")), - ELAS =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_VMIS_TRAC =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_VMIS_LINE =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_HYPER =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_POUTRE_GR =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - CABLE =SIMP(statut='c',typ='I',defaut=1,into=(1,)), DEFORMATION =SIMP(statut='f',typ='TXM',defaut="PETIT" ,into=("PETIT","GREEN","GREEN_GR",) ),), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; @@ -7284,7 +7598,7 @@ COMB_SISM_MODAL=OPER(nom="COMB_SISM_MODAL",op= 109,sd_prod=mode_stat, ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -7319,7 +7633,7 @@ CREA_CHAMP=OPER(nom="CREA_CHAMP",op= 195,sd_prod=crea_champ_prod, UIinfo={"groupes":("Résultats et champs",)}, TYPE_CHAM =SIMP(statut='o',typ='TXM',into=C_TYPE_CHAM_INTO()), # 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 + # 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 : # ------------------------------------------------------------------ regles=(EXCLUS('NUME_DDL','CHAM_NO',)), @@ -7397,7 +7711,7 @@ CREA_CHAMP=OPER(nom="CREA_CHAMP",op= 195,sd_prod=crea_champ_prod, # ------------------------------------------------------------------ b_c2r =BLOC(condition = "OPERATION == 'C2R'", CHAM_GD =SIMP(statut='o',typ=cham_gd_sdaster), - PARTIE =SIMP(statut='o',typ='TXM',into=('REEL','IMAG'),), + PARTIE =SIMP(statut='o',typ='TXM',into=('REEL','IMAG','MODULE','PHASE'),), ), # ------------------------------------------------------------------ b_disc =BLOC(condition = "OPERATION == 'DISC'", @@ -7466,8 +7780,11 @@ CREA_CHAMP=OPER(nom="CREA_CHAMP",op= 195,sd_prod=crea_champ_prod, INTERPOL =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","LIN",) ), ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3), CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), ), # fin bloc b_extr @@ -7478,7 +7795,7 @@ 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 19/05/2008 AUTEUR PELLET J.PELLET +#& MODIF COMMANDE DATE 30/06/2008 AUTEUR PELLET J.PELLET # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -7541,7 +7858,9 @@ CREA_MAILLAGE=OPER(nom="CREA_MAILLAGE",op= 167,sd_prod=maillage_sdaster, fr="Nombre minimal de mailles que doit contenir le groupe pour etre détruit", ), ), RESTREINT =FACT(statut='f',fr="Restreindre un maillage à des groupes de mailles",max=1, - GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), + regles=(AU_MOINS_UN('GROUP_MA','MAILLE',),), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), TOUT_GROUP_MA =SIMP(statut='f',typ='TXM',defaut='NON',into=('OUI','NON'),), GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), TOUT_GROUP_NO =SIMP(statut='f',typ='TXM',defaut='NON',into=('OUI','NON'),), @@ -7562,8 +7881,8 @@ CREA_MAILLAGE=OPER(nom="CREA_MAILLAGE",op= 167,sd_prod=maillage_sdaster, 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,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=ma ,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='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'", @@ -7585,24 +7904,24 @@ CREA_MAILLAGE=OPER(nom="CREA_MAILLAGE",op= 167,sd_prod=maillage_sdaster, 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,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), PREF_NOEUD =SIMP(statut='f',typ='TXM',defaut="NS"), PREF_NUME =SIMP(statut='f',typ='I',defaut= 1 ), ), HEXA20_27 =FACT(statut='f',fr="Passage HEXA20 -> HEXA27", regles=(AU_MOINS_UN('TOUT','MAILLE','GROUP_MA' ),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), PREF_NOEUD =SIMP(statut='f',typ='TXM',defaut="NS"), PREF_NUME =SIMP(statut='f',typ='I',defaut= 1 ), ), QUAD_LINE =FACT(statut='f',fr="Passage quadratique -> linéaire", regles=(AU_MOINS_UN('TOUT','MAILLE','GROUP_MA' ),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), - MAILLE =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - GROUP_MA =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma ,validators=NoRepeat(),max='**'), ), REPERE =FACT(statut='f',max='**', fr="changement de repère servant à déterminer les caractéristiques d'une section de poutre", @@ -7629,7 +7948,7 @@ CREA_MAILLAGE=OPER(nom="CREA_MAILLAGE",op= 167,sd_prod=maillage_sdaster, # INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 20/10/2008 AUTEUR PELLET J.PELLET # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -7653,6 +7972,7 @@ def crea_resu_prod(TYPE_RESU,**args): if TYPE_RESU == "EVOL_NOLI" : return evol_noli if TYPE_RESU == "EVOL_THER" : return evol_ther if TYPE_RESU == "MULT_ELAS" : return mult_elas + if TYPE_RESU == "MODE_MECA" : return mode_meca if TYPE_RESU == "FOURIER_ELAS" : return fourier_elas if TYPE_RESU == "FOURIER_THER" : return fourier_ther if TYPE_RESU == "EVOL_VARC" : return evol_varc @@ -7671,10 +7991,15 @@ CREA_RESU=OPER(nom="CREA_RESU",op=124,sd_prod=crea_resu_prod,reentrant='f', #------------------------------------- b_affe =BLOC(condition = "OPERATION == 'AFFE'", - TYPE_RESU =SIMP(statut='o',position='global',typ='TXM',into=("MULT_ELAS","EVOL_ELAS","EVOL_NOLI","FOURIER_ELAS", - "EVOL_THER","EVOL_VARC","EVOL_CHAR","FOURIER_THER") ), + TYPE_RESU =SIMP(statut='o',position='global',typ='TXM',into=("MODE_MECA","MULT_ELAS","EVOL_ELAS","EVOL_NOLI", + "FOURIER_ELAS","EVOL_THER","EVOL_VARC","EVOL_CHAR","FOURIER_THER") ), NOM_CHAM =SIMP(statut='o',typ='TXM',into=C_NOM_CHAM_INTO()), + b_mode =BLOC(condition = "TYPE_RESU == 'MODE_MECA'", + MATR_A =SIMP(statut='f',typ=matr_asse_depl_r,), + MATR_B =SIMP(statut='f',typ=matr_asse_depl_r,), + ), + AFFE =FACT(statut='o',max='**', CHAM_GD =SIMP(statut='o',typ=(cham_gd_sdaster)), MODELE =SIMP(statut='f',typ=modele_sdaster), @@ -7691,13 +8016,17 @@ CREA_RESU=OPER(nom="CREA_RESU",op=124,sd_prod=crea_resu_prod,reentrant='f', LIST_INST =SIMP(statut='f',typ=listr8_sdaster), NUME_INIT =SIMP(statut='f',typ='I', val_min=1), NUME_FIN =SIMP(statut='f',typ='I', val_min=1), - PRECISION =SIMP(statut='f',typ='R',defaut= 0. ), + PRECISION =SIMP(statut='f',typ='R',defaut= 0.0 ), CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), ), b_fourier =BLOC(condition = "((TYPE_RESU == 'FOURIER_ELAS') or (TYPE_RESU == 'FOURIER_THER')) ", NUME_MODE =SIMP(statut='f',typ='I'), TYPE_MODE =SIMP(statut='f',typ='TXM',defaut="SYME",into=("SYME","ANTI","TOUS") ), ), + b_mode =BLOC(condition = "TYPE_RESU == 'MODE_MECA'", + NUME_MODE =SIMP(statut='f',typ='I'), + FREQ =SIMP(statut='f',typ='R'), + ), ), ), @@ -7731,8 +8060,11 @@ CREA_RESU=OPER(nom="CREA_RESU",op=124,sd_prod=crea_resu_prod,reentrant='f', LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), ), ), @@ -7743,8 +8075,11 @@ CREA_RESU=OPER(nom="CREA_RESU",op=124,sd_prod=crea_resu_prod,reentrant='f', 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), - CRITERE =SIMP(statut='f',typ='TXM',into=('RELATIF','ABSOLU'),defaut='RELATIF'), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), MAILLAGE_INIT =SIMP(statut='o',typ=maillage_sdaster,), RESU_FINAL =SIMP(statut='o',typ=evol_noli,), MAILLAGE_FINAL =SIMP(statut='o',typ=maillage_sdaster,), @@ -7767,8 +8102,11 @@ CREA_RESU=OPER(nom="CREA_RESU",op=124,sd_prod=crea_resu_prod,reentrant='f', INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8_sdaster), b_acce_reel =BLOC(condition="(INST != None)or(LIST_INST != None)", - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-6), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), ), 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",),), @@ -7903,7 +8241,7 @@ DEBUG=PROC(nom="DEBUG",op=137, IMPR_MACRO =SIMP(fr="affichage des sous-commandes produites par les macros dans le fichier mess", statut='f',typ='TXM',into=("OUI","NON")), ); -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 07/10/2008 AUTEUR COURTOIS M.COURTOIS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -7963,7 +8301,7 @@ DEBUT=MACRO(nom="DEBUT",op=ops.build_debut ,repetable='n', ), ERREUR =FACT(fr="comportement en cas d'erreur",statut='f',min=1,max=1, - ERREUR_F =SIMP(statut='f',typ='TXM',into=('ABORT','EXCEPTION'),defaut='ABORT'), + ERREUR_F =SIMP(statut='f',typ='TXM',into=('ABORT','EXCEPTION'),), ), DEBUG =FACT(fr="option de déboggage reservée aux développeurs", @@ -7978,13 +8316,13 @@ DEBUT=MACRO(nom="DEBUT",op=ops.build_debut ,repetable='n', statut='f',typ='TXM',into=('TEST',)), ), - MEMOIRE =FACT(fr="mode de gestion mémoire utilisé",statut='f',min=1,max=1, + MEMOIRE =FACT(fr="mode de gestion mémoire utilisé",statut='d',min=1,max=1, GESTION =SIMP(statut='f',typ='TXM',into=('COMPACTE','RAPIDE'),defaut='RAPIDE'), TYPE_ALLOCATION =SIMP(statut='f',typ='I',into=(1,2,3,4),defaut=1), TAILLE =SIMP(statut='f',typ='I'), TAILLE_BLOC =SIMP(statut='f',typ='R',defaut=800.), PARTITION =SIMP(statut='f',typ='R'), - DYNAMIQUE =SIMP(statut='f',typ='I'), + DYNAMIQUE =SIMP(statut='f',typ='I',defaut=1), ), RESERVE_CPU =FACT(fr="reserve de temps pour terminer une execution",statut='d',max=1, @@ -7999,23 +8337,23 @@ DEBUT=MACRO(nom="DEBUT",op=ops.build_debut ,repetable='n', IGNORE_ALARM = SIMP(statut='f', typ='TXM', max='**', fr="Alarmes que l'utilisateur souhaite délibérément ignorer"), ); -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 22/07/2008 AUTEUR PELLET J.PELLET # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. +# 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 NISTOR I.NISTOR DEFI_BASE_MODALE=OPER(nom="DEFI_BASE_MODALE",op= 99,sd_prod=base_modale, @@ -8053,6 +8391,27 @@ DEFI_BASE_MODALE=OPER(nom="DEFI_BASE_MODALE",op= 99,sd_prod=base_modale, BASE =SIMP(statut='o',typ=(mode_meca,mode_stat_depl,mode_stat_acce,mode_stat_forc,mult_elas,base_modale)), MATRICE =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_gene_r,matr_asse_pres_r ) ), ), + + + SOLVEUR =FACT(statut='d', fr="Méthode de résolution des systèmes linéaires", + METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("LDLT","MULT_FRONT",) ), + # remarque : on ne peut pas utiliser MUMPS tant qu'il ne sait pas faire STOP_SINGULIER="NON" + + 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") ), + NPREC =SIMP(statut='f',typ='I',defaut=8), + STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + ), + + b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale", + RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), + NPREC =SIMP(statut='f',typ='I',defaut=8), + STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), + ), + ), + + + TITRE =SIMP(statut='f',typ='TXM',max='**'), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; @@ -8182,7 +8541,7 @@ DEFI_CABLE_OP=OPER(nom="DEFI_CABLE_OP",op= 180,sd_prod=cabl_precont,reentrant='n PRESENT =SIMP(statut='o',typ='TXM',min=2,max=2,into=("OUI","NON") ), ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/06/2008 AUTEUR PROIX J-M.PROIX # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG @@ -8302,54 +8661,6 @@ DEFI_COMPOR=OPER(nom="DEFI_COMPOR",op=59,sd_prod=compor_sdaster, "ZMAT", "GRAN_IRRA_LOG", ) ), - ELAS =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_HYPER =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - SANS =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - CORR_ACIER =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - VMIS_ISOT_TRAC =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - VISC_ISOT_TRAC =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - VMIS_ISOT_LINE =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - VISC_ISOT_LINE =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - VMIS_ISOT_PUIS =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - VMIS_ECMI_TRAC =SIMP(statut='c',typ='I',defaut=8,into=(8,)), - VMIS_ECMI_LINE =SIMP(statut='c',typ='I',defaut=8,into=(8,)), - LABORD_1D =SIMP(statut='c',typ='I',defaut=5,into=(5,)), - ENDO_FRAGILE =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - ENDO_ISOT_BETON =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - ENDO_ORTH_BETON =SIMP(statut='c',typ='I',defaut=7,into=(7,)), - BETON_REGLE_PR =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - MAZARS =SIMP(statut='c',typ='I',defaut=4,into=(4,)), - RUPT_FRAG =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - VMIS_CINE_LINE =SIMP(statut='c',typ='I',defaut=7,into=(7,)), - VISCOCHAB =SIMP(statut='c',typ='I',defaut=28,into=(28,)), - VMIS_CIN1_CHAB =SIMP(statut='c',typ='I',defaut=8,into=(8,)), - VMIS_CIN2_CHAB =SIMP(statut='c',typ='I',defaut=14,into=(14,)), - VISC_CIN1_CHAB =SIMP(statut='c',typ='I',defaut=8,into=(8,)), - VISC_CIN2_CHAB =SIMP(statut='c',typ='I',defaut=14,into=(14,)), - VISC_TAHERI =SIMP(statut='c',typ='I',defaut=9,into=(9,)), - ROUSSELIER =SIMP(statut='c',typ='I',defaut=9,into=(9,)), - ROUSS_PR =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - ROUSS_VISC =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - VMIS_POU_LINE =SIMP(statut='c',typ='I',defaut=9,into=(9,)), - VMIS_POU_FLEJOU =SIMP(statut='c',typ='I',defaut=9 ,into=(9,)), - ASSE_CORN =SIMP(statut='c',typ='I',defaut=7,into=(7,)), - ARME =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - NORTON_HOFF =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - LEMAITRE =SIMP(statut='c',typ='I',defaut=2,into=(2,)), - VENDOCHAB =SIMP(statut='c',typ='I',defaut=10,into=(10,)), - GRILLE_ISOT_LINE=SIMP(statut='c',typ='I',defaut=4,into=(4,)), - DRUCK_PRAGER =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - DRUCK_PRAG_N_A =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - HOEK_BROWN =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - HOEK_BROWN_EFF =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - HOEK_BROWN_TOT =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - GRANGER_FP =SIMP(statut='c',typ='I',defaut=55,into=(55,)), - GRANGER_FP_INDT =SIMP(statut='c',typ='I',defaut=55,into=(55,)), - GRANGER_FP_V =SIMP(statut='c',typ='I',defaut=55,into=(55,)), - BETON_DOUBLE_DP =SIMP(statut='c',typ='I',defaut=4,into=(4,)), - BETON_UMLV_FP =SIMP(statut='c',typ='I',defaut=21,into=(21,)), - GRAN_IRRA_LOG =SIMP(statut='c',typ='I',defaut=4,into=(4,)), - RELATION_KIT =SIMP(statut='f',typ='TXM',max='**',validators=NoRepeat(), into=( # MECA KIT_DDI @@ -8365,7 +8676,6 @@ DEFI_COMPOR=OPER(nom="DEFI_COMPOR",op=59,sd_prod=compor_sdaster, "NADAI_B", "BETON_DOUBLE_DP", ),), - # on pourrait ajouter TOUT_GROUP_FIBRE ) ); @@ -8499,7 +8809,7 @@ DEFI_FICHIER=MACRO(nom="DEFI_FICHIER",op=ops.build_DEFI_FICHIER,sd_prod=DEFIC_pr INFO =SIMP(statut='f',typ='I',into=(1,2) ), ) -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 14/10/2008 AUTEUR GENIAUT S.GENIAUT # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG @@ -8532,21 +8842,55 @@ DEFI_FISS_XFEM=OPER(nom="DEFI_FISS_XFEM",op= 41,sd_prod=fiss_xfem,reentrant='n' FONC_LN =SIMP(statut='f',typ=(fonction_sdaster,formule) ), GROUP_MA_FISS =SIMP(statut='f',typ=grma,max=01), GROUP_MA_FOND =SIMP(statut='f',typ=grma), - FORM_FISS =SIMP(statut='f',typ='TXM',into=("ELLIPSE",) ), - b_ellipse =BLOC(condition = "FORM_FISS == 'ELLIPSE' ",fr="Paramères de la fissure elliptique", + FORM_FISS =SIMP(statut='f',typ='TXM',into=("ELLIPSE","CYLINDRE","DEMI_PLAN","SEGMENT","DEMI_DROITE") ), + b_ellipse =BLOC(condition = "FORM_FISS == 'ELLIPSE' ",fr="Paramètres de la fissure elliptique", DEMI_GRAND_AXE =SIMP(statut='o',typ='R',val_min=0.E+0), DEMI_PETIT_AXE =SIMP(statut='o',typ='R',val_min=0.E+0), CENTRE =SIMP(statut='o',typ='R',min=3,max=3), VECT_X =SIMP(statut='o',typ='R',min=3,max=3), VECT_Y =SIMP(statut='o',typ='R',min=3,max=3), COTE_FISS =SIMP(statut='f',typ='TXM',defaut="IN",into=("IN","OUT",) ), ), + b_cylindre =BLOC(condition = "FORM_FISS == 'CYLINDRE' ",fr="Paramètres de la fissure cylindrique", + DEMI_GRAND_AXE =SIMP(statut='o',typ='R',val_min=0.E+0), + DEMI_PETIT_AXE =SIMP(statut='o',typ='R',val_min=0.E+0), + CENTRE =SIMP(statut='o',typ='R',min=3,max=3), + VECT_X =SIMP(statut='o',typ='R',min=3,max=3), + VECT_Y =SIMP(statut='o',typ='R',min=3,max=3),), + b_demiplan =BLOC(condition = "FORM_FISS == 'DEMI_PLAN' ",fr="Paramètres de la fissure plane à front droit", + PFON =SIMP(statut='o',typ='R',min=3,max=3), + NORMALE =SIMP(statut='o',typ='R',min=3,max=3), + DTAN =SIMP(statut='o',typ='R',min=3,max=3),), + b_segment =BLOC(condition = "FORM_FISS == 'SEGMENT' ",fr="Paramètres de la fissure 2D segment", + PFON_ORIG =SIMP(statut='o',typ='R',min=3,max=3), + PFON_EXTR =SIMP(statut='o',typ='R',min=3,max=3),), + b_demidroite =BLOC(condition = "FORM_FISS == 'DEMI_DROITE' ",fr="Paramètres de la fissure 2D demi-droite", + PFON =SIMP(statut='o',typ='R',min=3,max=3), + DTAN =SIMP(statut='o',typ='R',min=3,max=3),), + b_droite =BLOC(condition = "FORM_FISS == 'DROITE' ",fr="Paramètres de l'interface 2D (fissure traversante)", + POINT =SIMP(statut='o',typ='R',min=3,max=3), + DTAN =SIMP(statut='o',typ='R',min=3,max=3),), + b_inclusion =BLOC(condition = "FORM_FISS == 'INCLUSION' ",fr="Paramètres de l'interface 2D (inclusion)", + DEMI_GRAND_AXE =SIMP(statut='o',typ='R',val_min=0.E+0), + DEMI_PETIT_AXE =SIMP(statut='o',typ='R',val_min=0.E+0), + CENTRE =SIMP(statut='o',typ='R',min=3,max=3), + VECT_X =SIMP(statut='o',typ='R',min=3,max=3), + VECT_Y =SIMP(statut='o',typ='R',min=3,max=3),), ), GROUP_MA_ENRI =SIMP(statut='o',typ=grma,max=01), - RAYON_ENRI =SIMP(statut='f',typ='R',defaut=0.E+0), + TYPE_ENRI_FOND =SIMP(statut='f',typ='TXM',into=("TOPOLOGIQUE","GEOMETRIQUE"),defaut="TOPOLOGIQUE" ), + b_enri_geom =BLOC(condition = "TYPE_ENRI_FOND == 'GEOMETRIQUE' ",fr="Paramètres de l enrichissement geometrique", + RAYON_ENRI =SIMP(statut='f',typ='R',val_min=0.E+0), + + b_enri_couches =BLOC(condition = "(RAYON_ENRI == None) ",fr="Paramètres de l enrichissement à n couches", + NB_COUCHES =SIMP(statut='f',typ='I',defaut=4,val_min=1), + ), + + ), + ORIE_FOND =FACT(statut='f',max=01, PFON_INI =SIMP(statut='o',typ='R',max=03), VECT_ORIE =SIMP(statut='o',typ='R',max=03), - PT_ORIGIN =SIMP(statut='o',typ='R',max=03), + POINT_ORIG =SIMP(statut='o',typ='R',max=03), ), INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2,3,) ), ) ; @@ -8982,7 +9326,7 @@ DEFI_GEOM_FIBRE=OPER(nom="DEFI_GEOM_FIBRE",op= 119, sd_prod=gfibre_sdaster, ) ; -#& MODIF COMMANDE DATE 19/05/2008 AUTEUR MARKOVIC D.MARKOVIC +#& MODIF COMMANDE DATE 20/10/2008 AUTEUR ASSIRE A.ASSIRE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2008 EDF R&D WWW.CODE-ASTER.ORG @@ -9029,6 +9373,11 @@ DEFI_GLRC=OPER(nom="DEFI_GLRC",op=57,sd_prod=mater_sdaster,reentrant='f', C2M1 =SIMP(statut='o',typ='R',val_min=0.E+0), C2M2 =SIMP(statut='o',typ='R',val_min=0.E+0), C2M3 =SIMP(statut='o',typ='R',val_min=0.E+0), + + MP1X =SIMP(statut='f',typ=('R',listr8_sdaster)), + MP2X =SIMP(statut='f',typ=('R',listr8_sdaster)), + MP1Y =SIMP(statut='f',typ=('R',listr8_sdaster)), + MP2Y =SIMP(statut='f',typ=('R',listr8_sdaster)), ), NAPPE =FACT(statut='o',max=10, MATER =SIMP(statut='o',typ=(mater_sdaster) ), @@ -9036,6 +9385,7 @@ DEFI_GLRC=OPER(nom="DEFI_GLRC",op=57,sd_prod=mater_sdaster,reentrant='f', OMY =SIMP(statut='o',typ='R',val_min=0.E+0), RX =SIMP(statut='o',typ='R',val_min=-1.E+0,val_max=1.E+0), RY =SIMP(statut='o',typ='R',val_min=-1.E+0,val_max=1.E+0), + FS =SIMP(statut='f',typ='R',val_min=0.E+0), ), CABLE_PREC =FACT(statut='f',max=1, MATER =SIMP(statut='o',typ=(mater_sdaster) ), @@ -9531,7 +9881,7 @@ DEFI_MAILLAGE=OPER(nom="DEFI_MAILLAGE",op= 88,sd_prod=maillage_sdaster, GROUP_NO_FIN =SIMP(statut='f',typ=grno), ), ) ; -#& MODIF COMMANDE DATE 06/05/2008 AUTEUR MARKOVIC D.MARKOVIC +#& MODIF COMMANDE DATE 20/10/2008 AUTEUR MICHEL S.MICHEL # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -9576,10 +9926,10 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater_sdaster, PRESENT_PRESENT('BPEL_ACIER','ELAS'), EXCLUS('RCCM','RCCM_FO'), EXCLUS('WEIBULL','WEIBULL_FO'), - PRESENT_PRESENT('BARCELONE','CAM_CLAY'), PRESENT_PRESENT('LAIGLE','ELAS'), PRESENT_PRESENT('LETK','ELAS'), PRESENT_PRESENT('DRUCK_PRAGER','ELAS'), + PRESENT_PRESENT('ELAS_GONF','ELAS'), PRESENT_PRESENT('HOEK_BROWN','ELAS'), EXCLUS('MAZARS','MAZARS_FO'), PRESENT_PRESENT('JOINT_BA','ELAS'), @@ -10273,7 +10623,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater_sdaster, C_MRZ_RZ =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), F_MTZ_TZ =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), C_MTZ_TZ =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - ), + ), VMIS_POUTRE =FACT(statut='f', NP =SIMP(statut='o',typ='R'), MEY =SIMP(statut='o',typ='R'), @@ -10399,6 +10749,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater_sdaster, BC =SIMP(statut='o',typ='R'), AT =SIMP(statut='o',typ='R'), BT =SIMP(statut='o',typ='R'), + CHI =SIMP(statut='f',typ='R',val_min=0.0E+0,val_max=1.0E+0), ), MAZARS_FO=FACT(statut='f',min=0 , EPSD0 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), @@ -10408,6 +10759,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater_sdaster, AT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), BT =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), VERI_P =SIMP(statut='c',typ='TXM',max='**',defaut=("TEMP","SECH","HYDR") ), + CHI =SIMP(statut='f',typ='R'), ), JOINT_BA=FACT(statut='f',min=0 ,max=1, HPEN =SIMP(statut='o',typ='R',defaut= 1.E+0,val_min=0.E+0), @@ -10426,23 +10778,23 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater_sdaster, BDN =SIMP(statut='o',typ='R',defaut= 1.E+0,val_min=1.E-1), ), VENDOCHAB =FACT(statut='f', - S_VP =SIMP(statut='o',typ='R'), - SEDVP1 =SIMP(statut='o',typ='R'), - SEDVP2 =SIMP(statut='o',typ='R'), - N_VP =SIMP(statut='o',typ='R'), - M_VP =SIMP(statut='o',typ='R'), - K_VP =SIMP(statut='o',typ='R'), + S =SIMP(statut='o',typ='R',defaut= 0.E+0), + ALPHA_D =SIMP(statut='o',typ='R',defaut= 0.E+0), + BETA_D =SIMP(statut='o',typ='R',defaut= 0.E+0), + N =SIMP(statut='o',typ='R'), + UN_SUR_M =SIMP(statut='o',typ='R',defaut= 0.E+0), + UN_SUR_K =SIMP(statut='o',typ='R'), R_D =SIMP(statut='o',typ='R'), A_D =SIMP(statut='o',typ='R'), K_D =SIMP(statut='o',typ='R'), ), VENDOCHAB_FO =FACT(statut='f', - S_VP =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - SEDVP1 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - SEDVP2 =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - N_VP =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - M_VP =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), - K_VP =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + S =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + ALPHA_D =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + BETA_D =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + N =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + UN_SUR_M =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), + UN_SUR_K =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), R_D =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), A_D =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), K_D =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), @@ -10482,9 +10834,18 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater_sdaster, KAPA =SIMP(statut='o',typ='R'), M =SIMP(statut='o',typ='R'), PRES_CRIT =SIMP(statut='o',typ='R'), - PA =SIMP(statut='o',typ='R'), + KCAM =SIMP(statut='f',typ='R',val_min=0.E+0), + PTRAC =SIMP(statut='f',typ='R',val_max=0.E+0), + regles=(PRESENT_PRESENT('PTRAC','KCAM',),), ), BARCELONE =FACT(statut='f', + MU =SIMP(statut='o',typ='R'), + PORO =SIMP(statut='o',typ='R'), + LAMBDA =SIMP(statut='o',typ='R'), + KAPA =SIMP(statut='o',typ='R'), + M =SIMP(statut='o',typ='R'), + PRES_CRIT =SIMP(statut='o',typ='R'), + PA =SIMP(statut='o',typ='R'), R =SIMP(statut='o',typ='R'), BETA =SIMP(statut='o',typ='R'), KC =SIMP(statut='o',typ='R'), @@ -10839,11 +11200,13 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater_sdaster, TDEQ =SIMP(statut='o',typ='R'), N =SIMP(statut='o',typ='R'), K =SIMP(statut='o',typ='R'), - TDC =SIMP(statut='o',typ='R'), + T1C =SIMP(statut='o',typ='R'), + T2C =SIMP(statut='o',typ='R'), AC =SIMP(statut='o',typ='R'), M =SIMP(statut='o',typ='R'), - QSR_K =SIMP(statut='f',typ='R'), - TDR =SIMP(statut='o',typ='R'), + QSR_K =SIMP(statut='o',typ='R'), + T1R =SIMP(statut='o',typ='R'), + T2R =SIMP(statut='o',typ='R'), AR =SIMP(statut='o',typ='R'), BR =SIMP(statut='o',typ='R'), ), @@ -12159,8 +12522,10 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater_sdaster, RUPT_FRAG =FACT(statut='f', GC =SIMP(statut='o',typ='R'), SIGM_C =SIMP(statut='f',typ='R'), - PENA_ADHERENCE =SIMP(statut='f',typ='R'), + PENA_ADHERENCE =SIMP(statut='f',typ='R',val_min=1.E-12,val_max=1.E+0), PENA_CONTACT =SIMP(statut='f',typ='R',defaut=1.), + PENA_LAGR =SIMP(statut='f',typ='R',defaut=1.0E2,val_min=1.01E+0), + RIGI_GLIS =SIMP(statut='f',typ='R',defaut=1.0E1), ), RUPT_FRAG_FO =FACT(statut='f', GC =SIMP(statut='o',typ=(fonction_sdaster,nappe_sdaster,formule)), @@ -12258,7 +12623,7 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater_sdaster, TYPE_DP =SIMP(statut='c',typ='R',defaut= 2.0,), ), DILAT =SIMP(statut='f',typ='R',defaut=0.0), - ), + ), HOEK_BROWN =FACT(statut='f', GAMMA_RUP =SIMP(statut='o',typ='R'), GAMMA_RES =SIMP(statut='o',typ='R'), @@ -12272,6 +12637,10 @@ DEFI_MATERIAU=OPER(nom="DEFI_MATERIAU",op=5,sd_prod=mater_sdaster, PHI_RES =SIMP(statut='o',typ='R'), PHI_END =SIMP(statut='f',typ='R'), ), + ELAS_GONF =FACT(statut='f', + BETAM =SIMP(statut='o',typ='R'), + PREF =SIMP(statut='o',typ='R'), + ), #### MONOCRISTAL ECOU_VISC1 =FACT(statut='f', @@ -12952,7 +13321,7 @@ DEFI_TRC=OPER(nom="DEFI_TRC",op=94,sd_prod=table_sdaster,reentrant='n', A =SIMP(statut='f',typ='R'), ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 21/10/2008 AUTEUR NISTOR I.NISTOR # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -12977,13 +13346,14 @@ def depl_interne_prod(DEPL_GLOBAL,**args ): if AsType(DEPL_GLOBAL) == dyna_trans : return dyna_trans if AsType(DEPL_GLOBAL) == dyna_harmo : return dyna_harmo if AsType(DEPL_GLOBAL) == mode_meca : return mode_meca + if AsType(DEPL_GLOBAL) == mode_meca_c : return mode_meca_c if AsType(DEPL_GLOBAL) == base_modale : return base_modale raise AsException("type de concept resultat non prevu") DEPL_INTERNE=OPER(nom="DEPL_INTERNE",op=89,sd_prod=depl_interne_prod,reentrant='n', UIinfo={"groupes":("Matrices/vecteurs",)}, fr="Calculer le champ de déplacement à l'intérieur d'une sous-structure statique", - DEPL_GLOBAL =SIMP(statut='o',typ=(cham_no_sdaster,mode_meca,base_modale,evol_elas,dyna_trans,dyna_harmo),), + DEPL_GLOBAL =SIMP(statut='o',typ=(cham_no_sdaster,mode_meca,mode_meca_c,base_modale,evol_elas,dyna_trans,dyna_harmo),), SUPER_MAILLE =SIMP(statut='o',typ=ma,), NOM_CAS =SIMP(statut='f',typ='TXM',defaut=" "), ) ; @@ -13183,7 +13553,7 @@ DYNA_ISS_VARI=MACRO(nom="DYNA_ISS_VARI",op=dyna_iss_vari_ops ,sd_prod=table_fonc # INFO =SIMP(statut='f',typ='I' ,defaut=1,into=( 1 , 2)), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 06/10/2008 AUTEUR DEVESA G.DEVESA # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -13219,7 +13589,6 @@ DYNA_LINE_HARM=OPER(nom="DYNA_LINE_HARM",op= 60,sd_prod=dyna_line_harm_prod, PRESENT_ABSENT('MATR_AMOR','LIST_AMOR'), UN_PARMI('FREQ','LIST_FREQ'), CONCEPT_SENSIBLE('ENSEMBLE'),), - MODELE =SIMP(statut='f',typ=modele_sdaster ), CHAM_MATER =SIMP(statut='f',typ=cham_mater ), CARA_ELEM =SIMP(statut='f',typ=cara_elem ), MATR_MASS =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_pres_c,matr_asse_gene_r ) ), @@ -13240,8 +13609,8 @@ DYNA_LINE_HARM=OPER(nom="DYNA_LINE_HARM",op= 60,sd_prod=dyna_line_harm_prod, 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_sdaster,vect_asse_gene) ), - CHARGE =SIMP(statut='f',typ=char_meca ), + VECT_ASSE =SIMP(statut='f',position='global',typ=(cham_no_sdaster,vect_asse_gene) ), + CHARGE =SIMP(statut='f',position='global', typ=char_meca ), TYPE_CHARGE =SIMP(statut='f',typ='TXM',defaut="FIXE",into=("FIXE",) ), FONC_MULT_C =SIMP(statut='f',typ=(fonction_c,formule_c) ), COEF_MULT_C =SIMP(statut='f',typ='C' ), @@ -13250,7 +13619,16 @@ DYNA_LINE_HARM=OPER(nom="DYNA_LINE_HARM",op= 60,sd_prod=dyna_line_harm_prod, PHAS_DEG =SIMP(statut='f',typ='R',defaut= 0.E+0 ), PUIS_PULS =SIMP(statut='f',typ='I',defaut= 0 ), ), - + b_modele_char =BLOC(condition = " CHARGE != None ", + MODELE =SIMP(statut='o',typ=modele_sdaster ), + ), + b_modele_vect =BLOC(condition = " VECT_ASSE != None ", + MODELE =SIMP(statut='f',typ=modele_sdaster ), + ), + EXCIT_RESU =FACT(statut='f',max='**', + RESULTAT =SIMP(statut='o',typ=(dyna_harmo,harm_gene)), + COEF_MULT_C =SIMP(statut='o',typ='C' ), + ), b_matr_gene =BLOC(condition = "AsType(MATR_MASS) in (matr_asse_gene_r,)", fr="Methode de resolution matrice generalisee", SOLVEUR =FACT(statut='d', @@ -13274,6 +13652,7 @@ DYNA_LINE_HARM=OPER(nom="DYNA_LINE_HARM",op= 60,sd_prod=dyna_line_harm_prod, PARTITION =SIMP(statut='f',typ=sd_feti_sdaster), CHARGE_PROC0_MA =SIMP(statut='f',typ='I',defaut=0,min=0), CHARGE_PROC0_SD =SIMP(statut='f',typ='I',defaut=0,min=0), + OUT_OF_CORE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), ), ), ), @@ -13307,6 +13686,7 @@ DYNA_LINE_HARM=OPER(nom="DYNA_LINE_HARM",op= 60,sd_prod=dyna_line_harm_prod, PARTITION =SIMP(statut='f',typ=sd_feti_sdaster), CHARGE_PROC0_MA =SIMP(statut='f',typ='I',defaut=0,min=0), CHARGE_PROC0_SD =SIMP(statut='f',typ='I',defaut=0,min=0), + OUT_OF_CORE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), ), ), ), @@ -13319,7 +13699,7 @@ DYNA_LINE_HARM=OPER(nom="DYNA_LINE_HARM",op= 60,sd_prod=dyna_line_harm_prod, # 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 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 06/10/2008 AUTEUR DEVESA G.DEVESA # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -13372,8 +13752,11 @@ DYNA_LINE_TRAN=OPER(nom="DYNA_LINE_TRAN",op= 48,sd_prod=dyna_trans, NUME_INIT =SIMP(statut='f',typ='I' ), INST_INIT =SIMP(statut='f',typ='R' ), b_inst_init =BLOC(condition = "INST_INIT != None", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), ), ), DEPL_INIT =SIMP(statut='f',typ=cham_no_sdaster), @@ -13402,6 +13785,10 @@ DYNA_LINE_TRAN=OPER(nom="DYNA_LINE_TRAN",op= 48,sd_prod=dyna_trans, NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), ), + EXCIT_RESU =FACT(statut='f',max='**', + RESULTAT =SIMP(statut='o',typ=dyna_trans ), + COEF_MULT =SIMP(statut='o',typ='R' ), + ), AMOR_MODAL =FACT(statut='f', MODE_MECA =SIMP(statut='f',typ=mode_meca ), AMOR_REDUIT =SIMP(statut='f',typ='R',max='**'), @@ -13440,13 +13827,18 @@ DYNA_LINE_TRAN=OPER(nom="DYNA_LINE_TRAN",op= 48,sd_prod=dyna_trans, PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=10,), RESI_RELA =SIMP(statut='f',typ='R',defaut=-1.0,), PARALLELISME =SIMP(statut='f',typ='TXM',defaut="CENTRALISE",into=("CENTRALISE","CENTRALISE")), + OUT_OF_CORE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), ), b_petsc =BLOC(condition = "METHODE == 'PETSC' ",fr="Paramètres de la méthode PETSC", - VARIANTE =SIMP(statut='f',typ='TXM',into=("GMRES","BCGS","CR","CG","BICG","CHEBYCHEV",),defaut="GMRES" ), - PRE_COND =SIMP(statut='f',typ='TXM',into=("ILU","SOR","BJACOBI"),defaut="ILU" ), + ALGORITHME =SIMP(statut='f',typ='TXM',into=("BCGS","BICG","CG","CR","GMRES","TFQMR",),defaut="CG" ), + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC","JACOBI","SOR"),defaut="LDLT_INC" ), + b_petsc_ilu =BLOC(condition = "PRE_COND == 'LDLT_INC' ", + NIVE_REMPLISSAGE = SIMP(statut='f',typ='I',defaut= 0 ), + REMPLISSAGE = SIMP(statut='f',typ='R',defaut= 1.0), + ), RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), - RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-8), + RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), NMAX_ITER =SIMP(statut='f',typ='I',defaut= -1 ), ), ), @@ -13486,7 +13878,7 @@ DYNA_LINE_TRAN=OPER(nom="DYNA_LINE_TRAN",op= 48,sd_prod=dyna_trans, TITRE =SIMP(statut='f',typ='TXM',max='**'), INFO =SIMP(statut='f',typ='I',into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 18/11/2008 AUTEUR ABBAS M.ABBAS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -13505,6 +13897,7 @@ DYNA_LINE_TRAN=OPER(nom="DYNA_LINE_TRAN",op= 48,sd_prod=dyna_trans, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== # RESPONSABLE GREFFET N.GREFFET +# DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', fr="Calcul de l'évolution dynamique d'une structure dont le matériau ou la géométrie ont un comportement non linéaire", UIinfo={"groupes":("Résolution",)}, @@ -13552,7 +13945,7 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', REAC_VITE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), ), PROJ_MODAL =FACT(statut='f',max='**', - MODE_MECA =SIMP(statut='o',typ=mode_meca), + MODE_MECA =SIMP(statut='o',typ=(mode_meca,base_modale)), NB_MODE =SIMP(statut='f',typ='I',defaut= 9999 ), regles=(PRESENT_PRESENT('MASS_GENE','RIGI_GENE'),), MASS_GENE =SIMP(statut='f',typ=matr_asse_gene_r), @@ -13565,12 +13958,6 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', into=("ELAS","ELAS_VMIS_LINE","ELAS_VMIS_TRAC","ELAS_VMIS_PUIS", "ELAS_POUTRE_GR","CABLE","ELAS_HYPER")), ELAS =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_VMIS_TRAC =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_VMIS_LINE =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_VMIS_PUIS =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_HYPER =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_POUTRE_GR =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - CABLE =SIMP(statut='c',typ='I',defaut=1,into=(1,)), DEFORMATION =SIMP(statut='f',typ='TXM',defaut="PETIT" ,into=("PETIT","GREEN","GREEN_GR",) ), regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), @@ -13600,8 +13987,11 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', 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") ), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), NUME_DIDI =SIMP(statut='f',typ='I'), INST_ETAT_INIT =SIMP(statut='f',typ='R'), ),), @@ -13622,8 +14012,11 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', 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") ), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), NUME_DIDI =SIMP(statut='f',typ='I'), INST_ETAT_INIT =SIMP(statut='f',typ='R'), ),), @@ -13632,17 +14025,15 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', regles=(EXCLUS('NUME_INST_INIT','INST_INIT'), EXCLUS('NUME_INST_FIN','INST_FIN'),), LIST_INST =SIMP(statut='o',typ=listr8_sdaster), - EVOLUTION =SIMP(statut='f',typ='TXM',defaut="CHRONOLOGIQUE", - into=("CHRONOLOGIQUE","RETROGRADE","SANS",) ), NUME_INST_INIT =SIMP(statut='f',typ='I'), INST_INIT =SIMP(statut='f',typ='R'), NUME_INST_FIN =SIMP(statut='f',typ='I'), INST_FIN =SIMP(statut='f',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), + PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-6 ), # DEBUT DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS SUBD_METHODE =SIMP( statut='f',typ='TXM', into =("AUCUNE","UNIFORME","EXTRAPOLE"), - defaut="AUCUNE", + defaut="UNIFORME", fr="Méthode de subdivision des pas de temps en cas de non-convergence" ), b_subd_unif=BLOC(condition = "SUBD_METHODE == 'UNIFORME'", @@ -13651,7 +14042,7 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', fr="Coefficient multiplicateur de la 1ère subdivision"), SUBD_PAS =SIMP(statut='f',typ='I',defaut=4,val_min=2, fr="Nombre de subdivision d'un pas de temps"), - SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, + SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2,defaut=3, fr="Nombre maximum de niveau de subdivision d'un pas de temps"), SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, fr="Pas de temps en dessous duquel on ne subdivise plus"), @@ -13676,10 +14067,6 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', fr="% itération autorisée en plus"), ), # FIN DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS - OPTI_LIST_INST =SIMP(statut='f',typ='TXM',into=("INCR_MAXI",),), - NOM_CHAM =SIMP(statut='f',typ='TXM',), - NOM_CMP =SIMP(statut='f',typ='TXM',), - VALE =SIMP(statut='f',typ='R'), ), #------------------------------------------------------------------- SCHEMA_TEMPS =FACT(statut='o', @@ -13687,30 +14074,35 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', into=("DIFF_CENT","TCHAMWA","NEWMARK","HHT","THETA_METHODE"),), b_tchamwa = BLOC(condition="SCHEMA=='TCHAMWA'", PHI =SIMP(statut='f',typ='R',defaut= 1.05),), + b_newmark = BLOC(condition="SCHEMA=='NEWMARK'", - ALPHA =SIMP(statut='f',typ='R',defaut= 0.25), - DELTA =SIMP(statut='f',typ='R',defaut= 0.5),), + BETA =SIMP(statut='f',typ='R',defaut= 0.25), + GAMMA =SIMP(statut='f',typ='R',defaut= 0.5),), + b_hht = BLOC(condition="SCHEMA=='HHT'", ALPHA =SIMP(statut='f',typ='R',defaut= -0.3 ), MODI_EQUI =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON"),),), + b_theta = BLOC(condition="SCHEMA=='THETA_METHODE'", THETA =SIMP(statut='f',typ='R',defaut= 1.,val_min=0.5,val_max=1. ),), + b_explicit= BLOC(condition="SCHEMA=='TCHAMWA'or SCHEMA=='DIFF_CENT'", STOP_CFL =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON"),), FORMULATION =SIMP(statut='o',typ='TXM',into=("ACCELERATION",),),), + b_implicit= BLOC(condition="SCHEMA!='TCHAMWA'and SCHEMA!='DIFF_CENT'", - FORMULATION =SIMP(statut='o',max=1,typ='TXM',into=("DEPLACEMENT","VITESSE",),),), + FORMULATION =SIMP(statut='o',max=1,typ='TXM',into=("DEPLACEMENT","VITESSE","ACCELERATION"),),), ), NEWTON =FACT(statut='d', - REAC_INCR =SIMP(statut='f',typ='I',defaut= 1 ), + REAC_INCR =SIMP(statut='f',typ='I',defaut= 1,val_min=0 ), PREDICTION =SIMP(statut='f',typ='TXM',into=("TANGENTE","ELASTIQUE") ), MATRICE =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE") ), - REAC_ITER =SIMP(statut='f',typ='I',defaut= 0), - REAC_ITER_ELAS =SIMP(statut='f',typ='I',defaut=0), + REAC_ITER =SIMP(statut='f',typ='I',defaut= 0,val_min=0), + REAC_ITER_ELAS =SIMP(statut='f',typ='I',defaut=0,val_min=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","MUMPS","PETSC") ), + METHODE=SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC","MUMPS","FETI","PETSC") ), 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") ), ), @@ -13734,6 +14126,7 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', PARTITION =SIMP(statut='f',typ=sd_feti_sdaster), CHARGE_PROC0_MA =SIMP(statut='f',typ='I',defaut=100,min=0,max=100), CHARGE_PROC0_SD =SIMP(statut='f',typ='I',defaut=0,min=0), + OUT_OF_CORE =SIMP(statut='f',typ='TXM',defaut="NON",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" ), @@ -13743,12 +14136,16 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), ), b_petsc =BLOC(condition = "METHODE == 'PETSC' ",fr="Paramètres de la méthode PETSC", - VARIANTE =SIMP(statut='f',typ='TXM',into=("GMRES","BCGS","CR","CG","BICG","CHEBYCHEV",),defaut="GMRES" ), - PRE_COND =SIMP(statut='f',typ='TXM',into=("ILU","SOR","BJACOBI"),defaut="ILU" ), + ALGORITHME =SIMP(statut='f',typ='TXM',into=("BCGS","BICG","CG","CR","GMRES","TFQMR",),defaut="CG" ), + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC","JACOBI","SOR"),defaut="LDLT_INC" ), + b_petsc_ilu =BLOC(condition = "PRE_COND == 'LDLT_INC' ", + NIVE_REMPLISSAGE = SIMP(statut='f',typ='I',defaut= 0 ), + REMPLISSAGE = SIMP(statut='f',typ='R',defaut= 1.0), + ), RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), - RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-8), + RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6), NMAX_ITER =SIMP(statut='f',typ='I',defaut= -1 ), - ), + ), SYME =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), ), #------------------------------------------------------------------- @@ -13762,14 +14159,21 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', FLUX_THER_REFE =SIMP(statut='f',typ='R'), FLUX_HYD1_REFE =SIMP(statut='f',typ='R'), FLUX_HYD2_REFE =SIMP(statut='f',typ='R'), - VARI_REFE =SIMP(statut='f',typ='R'), + VARI_REFE =SIMP(statut='f',typ='R'), ), RESI_REFE_RELA =SIMP(statut='f',typ='R'), RESI_GLOB_MAXI =SIMP(statut='f',typ='R'), RESI_GLOB_RELA =SIMP(statut='f',typ='R'), ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut=10), ITER_GLOB_ELAS =SIMP(statut='f',typ='I',defaut=25), + TYPE =SIMP(statut='f',typ='TXM',defaut="PIC",into=("PIC","PLATEAU")), + b_plateau =BLOC(condition = "TYPE == 'PLATEAU' ", + + PLATEAU_ITER =SIMP(statut='f',typ='I',defaut=3, val_min =2), + PLATEAU_RELA =SIMP(statut='f',typ='R',defaut=1E-3), + ), ARRET =SIMP(statut='f',typ='TXM',defaut="OUI"), + ), #------------------------------------------------------------------- OBSERVATION =FACT(statut='f',max='**', @@ -13801,8 +14205,11 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', LIST_INST =SIMP(statut='f',typ=listr8_sdaster), PAS_OBSE =SIMP(statut='f',typ='I'), LIST_ARCH =SIMP(statut='f',typ=listis_sdaster), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),),), ), AFFICHAGE = FACT(statut='f',max=16, @@ -13825,7 +14232,7 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', "LAGR_ECAR","LAGR_INCR","LAGR_ITER", "MATR_ASSE", "ITER_DEBO", - "CTCD_ITER","CTCD_INFO","CTCD_GEOM","CTCD_NOEU", + "CTCD_ITER","CTCD_GEOM","CTCD_NOEU", "CTCC_GEOM","CTCC_FROT","CTCC_CONT", "SUIV_1","SUIV_2","SUIV_3","SUIV_4", ), @@ -13845,7 +14252,7 @@ DYNA_NON_LINE=OPER(nom="DYNA_NON_LINE",op= 70,sd_prod=evol_noli,reentrant='f', LIST_INST =SIMP(statut='f',typ=(listr8_sdaster) ), INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), PAS_ARCH =SIMP(statut='f',typ='I' ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-6), 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",)), @@ -13906,23 +14313,23 @@ DYNA_SPEC_MODAL=OPER(nom="DYNA_SPEC_MODAL",op= 147,sd_prod=table_fonction, OPTION =SIMP(statut='f',typ='TXM',defaut="TOUT",into=("TOUT","DIAG") ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== # RESPONSABLE BOYERE E.BOYERE DYNA_TRAN_MODAL=OPER(nom="DYNA_TRAN_MODAL",op= 74,sd_prod=tran_gene, @@ -13930,7 +14337,7 @@ DYNA_TRAN_MODAL=OPER(nom="DYNA_TRAN_MODAL",op= 74,sd_prod=tran_gene, +" par superposition modale ou par sous structuration", reentrant='f', UIinfo={"groupes":("Résolution",)}, - regles=(EXCLUS('AMOR_REDUIT','AMOR_GENE','LIST_AMOR'), + regles=(EXCLUS('AMOR_REDUIT','AMOR_GENE','LIST_AMOR'), PRESENT_ABSENT('MODE_STAT','MODE_CORR'),), METHODE =SIMP(statut='f',typ='TXM',defaut="EULER", into=("EULER","NEWMARK","DEVOGE","ADAPT","ITMI") ), @@ -13941,15 +14348,18 @@ DYNA_TRAN_MODAL=OPER(nom="DYNA_TRAN_MODAL",op= 74,sd_prod=tran_gene, LIST_AMOR =SIMP(statut='f',typ=listr8_sdaster ), MODE_STAT =SIMP(statut='f',typ=(mode_stat_depl,mode_stat_acce,mode_stat_forc) ), MODE_CORR =SIMP(statut='f',typ=(mult_elas,mode_stat_acce) ,), - + ETAT_INIT =FACT(statut='f', regles=(EXCLUS('RESU_GENE','DEPL_INIT_GENE'), EXCLUS('RESU_GENE','VITE_INIT_GENE'),), RESU_GENE =SIMP(statut='f',typ=tran_gene ), b_resu_gene =BLOC(condition = "RESU_GENE != None", INST_INIT =SIMP(statut='f',typ='R' ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), ), DEPL_INIT_GENE =SIMP(statut='f',typ=vect_asse_gene ), VITE_INIT_GENE =SIMP(statut='f',typ=vect_asse_gene ), @@ -13971,11 +14381,11 @@ DYNA_TRAN_MODAL=OPER(nom="DYNA_TRAN_MODAL",op= 74,sd_prod=tran_gene, LIST_ARCH =SIMP(statut='f',typ=listis_sdaster ), PAS_ARCH =SIMP(statut='f',typ='I' ), ), - + NMAX_ITER =SIMP(statut='f',typ='I',defaut= 20 ), RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), LAMBDA =SIMP(statut='f',typ='R',defaut= 10. ), - + EXCIT =FACT(statut='f',max='**', regles=(UN_PARMI('FONC_MULT','COEF_MULT','ACCE'), PRESENT_PRESENT('ACCE','VITE','DEPL'), @@ -14113,6 +14523,42 @@ DYNA_TRAN_MODAL=OPER(nom="DYNA_TRAN_MODAL",op= 74,sd_prod=tran_gene, INST_INIT =SIMP(statut='f',typ='R' ), INST_FIN =SIMP(statut='f',typ='R' ), ), + + + SOLVEUR =FACT(statut='d', fr="Méthode de résolution des systèmes linéaires", + METHODE =SIMP(statut='f',typ='TXM',defaut="LDLT",into=("LDLT","MUMPS","MULT_FRONT",) ), + + + 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") ), + NPREC =SIMP(statut='f',typ='I',defaut=8), + STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + ), + + b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale", + RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), + NPREC =SIMP(statut='f',typ='I',defaut=8), + STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + ), + + + b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", + TYPE_RESOL =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("NONSYM","SYMGEN","SYMDEF","AUTO")), + PRETRAITEMENTS =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("SANS","AUTO")), + RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), + ELIM_LAGR2 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), + PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=10,), + RESI_RELA =SIMP(statut='f',typ='R',defaut=-1.0,), + PARALLELISME =SIMP(statut='f',typ='TXM',defaut="CENTRALISE", + into=("CENTRALISE","DISTRIBUE_MC","DISTRIBUE_MD","DISTRIBUE_SD")), + PARTITION =SIMP(statut='f',typ=sd_feti_sdaster), + CHARGE_PROC0_MA =SIMP(statut='f',typ='I',defaut=100,min=0,max=100), + CHARGE_PROC0_SD =SIMP(statut='f',typ='I',defaut=0,min=0), + OUT_OF_CORE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), + ), + ), + + TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; #& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE @@ -14262,7 +14708,7 @@ EXTR_MODE=OPER(nom="EXTR_MODE",op= 168,sd_prod=extr_mode_prod, CRIT_EXTR =SIMP(statut='f',typ='TXM',defaut="MASS_EFFE_UN",into=("MASS_EFFE_UN","MASS_GENE") ), ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -14319,8 +14765,11 @@ EXTR_RESU=OPER(nom="EXTR_RESU",op=176,sd_prod=extr_resu_prod,reentrant='f', EXCLUS( 'CHAM_EXCLU','NOM_CHAM' ), ), CHAM_EXCLU =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**'), NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max='**',into=C_NOM_CHAM_INTO()), - PRECISION =SIMP(statut='f',typ='R',defaut=1.E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',into=("RELATIF","ABSOLU"),defaut="RELATIF"), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), LIST_ARCH =SIMP(statut='f',typ=listis_sdaster), PAS_ARCH =SIMP(statut='f',typ='I'), NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), @@ -14390,7 +14839,7 @@ EXTR_TABLE=OPER(nom="EXTR_TABLE",op=173,sd_prod=extr_table_prod,reentrant='n', TITRE =SIMP(statut='f',typ='TXM',max='**' ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2007 EDF R&D WWW.CODE-ASTER.ORG @@ -14443,10 +14892,14 @@ FACTORISER=OPER(nom="FACTORISER",op=14,sd_prod=factoriser_prod, PRETRAITEMENTS =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("SANS","AUTO")), PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=10,), ELIM_LAGR2 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), - - # mots clés pour solveur GCPC : - PRE_COND =SIMP(statut='f',typ='TXM',defaut="LDLT_INC",into=("LDLT_INC",) ), - NIVE_REMPLISSAGE=SIMP(statut='f',typ='I',defaut= 0 ), + OUT_OF_CORE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), + + # mots clés pour solveur GCPC et PETSc : + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC","JACOBI","SOR"),defaut="LDLT_INC" ), + b_petsc_ilu =BLOC(condition = "PRE_COND == 'LDLT_INC' ", + NIVE_REMPLISSAGE = SIMP(statut='f',typ='I',defaut= 0 ), + REMPLISSAGE = SIMP(statut='f',typ='R',defaut= 1.0), + ), TITRE =SIMP(statut='f',typ='TXM',max='**'), INFO =SIMP(statut='f',typ='I',into=(1,2) ), @@ -14682,32 +15135,6 @@ GENE_VARI_ALEA=MACRO(nom="GENE_VARI_ALEA", ), INIT_ALEA =SIMP(statut='f',typ='I'), ) -#& MODIF COMMANDE DATE 23/08/2004 AUTEUR CIBHHLV L.VIVAN -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -IMPR_CHARGE=PROC(nom="IMPR_CHARGE",op= 158, - fr="Impression des charges mécaniques de type ddl imposés et relations linéaires entre les ddl", - UIinfo={"groupes":("Fonction",)}, - UNITE =SIMP(statut='f',typ='I',defaut=30), - FORMAT =SIMP(statut='f',typ='TXM',defaut="IDEAS",into=("IDEAS",) ), - VERSION =SIMP(statut='f',typ='I',defaut= 5,into=( 5 ,) ), - CHARGE =SIMP(statut='o',typ=char_meca,validators=NoRepeat(),max='**', ), -) ; #& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -14884,7 +15311,7 @@ IMPR_FONCTION=MACRO(nom="IMPR_FONCTION",op=impr_fonction_ops,sd_prod=None, ), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -14930,9 +15357,11 @@ IMPR_GENE=PROC(nom="IMPR_GENE",op= 157, LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster ), TOUT_MODE =SIMP(statut='f',typ='TXM',into=("OUI",) ), NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF", - into=("RELATIF","ABSOLU") ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), TOUT_CMP_GENE =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), NUME_CMP_GENE =SIMP(statut='f',typ='I',max='**'), TOUT_CHAM =SIMP(statut='f',typ='TXM',into=("OUI","NON") ), @@ -15226,7 +15655,7 @@ IMPR_OAR =MACRO(nom="IMPR_OAR",op= impr_oar_ops, sd_prod=None, UNITE = SIMP(statut='f',typ='I',defaut=38), AJOUT = SIMP(statut='f', typ='TXM', defaut='NON', into=('OUI', 'NON')), ); -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -15254,36 +15683,47 @@ IMPR_RESU=PROC(nom="IMPR_RESU",op=39, into=("RESULTAT","IDEAS","ASTER","CASTEM","ENSIGHT","MED","GMSH") ), b_format_resultat =BLOC(condition="FORMAT=='RESULTAT'",fr="unité logique d'impression au format RESULTAT", - UNITE =SIMP(statut='f',typ='I',defaut=8), + UNITE =SIMP(statut='f',typ='I',defaut=8), ), b_format_ideas =BLOC(condition="FORMAT=='IDEAS'",fr="unité logique d'impression et version IDEAS", - UNITE =SIMP(statut='f',typ='I',defaut=30), + UNITE =SIMP(statut='f',typ='I',defaut=30), VERSION =SIMP(statut='f',typ='I',defaut=5,into=(4,5)), ), b_format_aster =BLOC(condition="FORMAT=='ASTER'",fr="unité logique d'impression au format ASTER", - UNITE =SIMP(statut='f',typ='I',defaut=26), + UNITE =SIMP(statut='f',typ='I',defaut=26), ), b_format_castem =BLOC(condition="FORMAT=='CASTEM'",fr="unité logique d'impression et version CASTEM", - UNITE =SIMP(statut='f',typ='I',defaut=37), + UNITE =SIMP(statut='f',typ='I',defaut=37), NIVE_GIBI =SIMP(statut='f',typ='I',defaut=10,into=(3,10)), ), b_format_ensight =BLOC(condition="FORMAT=='ENSIGHT'",fr="unité logique d'impression au format ENSIGHT", - UNITE =SIMP(statut='f',typ='I',defaut=31), + UNITE =SIMP(statut='f',typ='I',defaut=31), ), b_format_med =BLOC(condition="FORMAT=='MED'",fr="unité logique d'impression au format MED", - UNITE =SIMP(statut='f',typ='I',defaut=80), + UNITE =SIMP(statut='f',typ='I',defaut=80), ), b_format_gmsh =BLOC(condition="FORMAT=='GMSH'",fr="unité logique d'impression et version GMSH", - UNITE =SIMP(statut='f',typ='I',defaut=37), + UNITE =SIMP(statut='f',typ='I',defaut=37), VERSION =SIMP(statut='f',typ='R',defaut=1.2,into=(1.0,1.2)), ), + RESTREINT =FACT(statut='f',fr="Réduire le maillage et les champs imprimés sur un ensemble de mailles",max=1, + regles=(AU_MOINS_UN('GROUP_MA','MAILLE',),), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma,validators=NoRepeat(),max='**'), + TOUT_GROUP_MA =SIMP(statut='f',typ='TXM',defaut='NON',into=('OUI','NON'),), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + TOUT_GROUP_NO =SIMP(statut='f',typ='TXM',defaut='NON',into=('OUI','NON'),), + MODELE =SIMP(statut='f',typ=modele_sdaster, + fr="Nécessaire s'il y a des cham_elem dans la sd_resultat à imprimer."), + ), + RESU =FACT(statut='o',max='**', regles=(AU_MOINS_UN('CHAM_GD','RESULTAT','MAILLAGE'), @@ -15304,7 +15744,7 @@ IMPR_RESU=PROC(nom="IMPR_RESU",op=39, fr="Liste des paramètres de sensibilité.", ang="List of sensitivity parameters"),), - b_partie =BLOC(condition="""(AsType(RESULTAT) in (dyna_harmo, acou_harmo) or + b_partie =BLOC(condition="""(AsType(RESULTAT) in (dyna_harmo, acou_harmo) or AsType(CHAM_GD) != carte_sdaster) and FORMAT in ('CASTEM', 'GMSH', 'MED')""", PARTIE =SIMP(statut='f',typ='TXM',into=("REEL","IMAG") ), ), @@ -15329,8 +15769,11 @@ IMPR_RESU=PROC(nom="IMPR_RESU",op=39, LIST_INST =SIMP(statut='f',typ=listr8_sdaster), b_acce_reel =BLOC(condition="(FREQ != None)or(LIST_FREQ != None)or(INST != None)or(LIST_INST != None)", - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), ), ), ### @@ -15659,7 +16102,7 @@ INFO_EXEC_ASTER=OPER(nom="INFO_EXEC_ASTER",op=35,sd_prod=table_sdaster, TITRE =SIMP(statut='f',typ='TXM',max='**'), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2005 EDF R&D WWW.CODE-ASTER.ORG @@ -15697,8 +16140,11 @@ INFO_FONCTION=MACRO(nom="INFO_FONCTION",op=info_fonction_ops,sd_prod=info_foncti FONCTION =SIMP(statut='o',typ=fonction_sdaster ), INST_INIT =SIMP(statut='f',typ='R',fr="Instant initial définissant le début du signal" ), INST_FIN =SIMP(statut='f',typ='R',fr="Instant final définissant la fin du signal" ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3,val_min=0.E+0 ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,val_min=0.E+0),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R'),), ), NOCI_SEISME =FACT(statut='f', regles=(UN_PARMI('FONCTION','SPEC_OSCI',),), @@ -15728,8 +16174,11 @@ INFO_FONCTION=MACRO(nom="INFO_FONCTION",op=info_fonction_ops,sd_prod=info_foncti BORNE_INF =SIMP(statut='f',typ='R',defaut= 0.05E+0 ), BORNE_SUP =SIMP(statut='f',typ='R',defaut= 0.95E+0 ), b_acce_reel =BLOC(condition="(INST_INIT != None)or(INST_FIN != None)or(FREQ_INIT != None)or(FREQ_FIN != None)", - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3,val_min=0.E+0), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,val_min=0.E+0),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R'),), ), ), MAX =FACT(statut='f',fr="Extrémas locaux d'une fonction", @@ -15743,8 +16192,11 @@ INFO_FONCTION=MACRO(nom="INFO_FONCTION",op=info_fonction_ops,sd_prod=info_foncti FONCTION =SIMP(statut='o',typ=fonction_sdaster), INST_INIT =SIMP(statut='f',typ='R',fr="Instant initial définissant le début du signal" ), INST_FIN =SIMP(statut='f',typ='R',fr="Instant final définissant la fin du signal" ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3,val_min=0.E+0 ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,val_min=0.E+0),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R'),), ), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), ) @@ -15869,7 +16321,7 @@ INTE_MAIL_3D=OPER(nom="INTE_MAIL_3D",op=96,sd_prod=surface_sdaster, PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-6), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -15920,11 +16372,15 @@ LIRE_CHAMP=OPER(nom="LIRE_CHAMP",op= 192,sd_prod=lire_champ_prod, 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" ),), + 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" ), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6, + fr="Précision sur le choix de l'instant associé",ang="Accuracy over instant choice" ),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R', + fr="Précision sur le choix de l'instant associé",ang="Accuracy over instant choice" ),),), # NOM_MAIL_MED =SIMP(statut='f',typ='TXM',), ), @@ -16198,7 +16654,7 @@ 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 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16234,13 +16690,14 @@ LIRE_PLEXUS=OPER(nom="LIRE_PLEXUS",op= 184,sd_prod=evol_char, INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), b_prec_crit =BLOC(condition = "LIST_INST != None or INST != None", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF", - into=("RELATIF","ABSOLU") ), - ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),),), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 02/06/2008 AUTEUR PELLET J.PELLET +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16385,6 +16842,8 @@ LIRE_RESU=OPER(nom="LIRE_RESU",op=150,sd_prod=lire_resu_prod,reentrant='n', UNITE =SIMP(statut='f',typ='I',defaut= 19 ), # TEST =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON" ), NOM_CHAM =SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**',into=l_nom_cham_pas_elga()), + PROL_ZERO =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",), + fr="Affecte des valeurs nulles la ou le champ n'est pas defini"), FORMAT_IDEAS =FACT(statut='f',max='**', regles=(UN_PARMI('POSI_INST','POSI_FREQ'),), NOM_CHAM =SIMP(statut='o',typ='TXM',into=l_nom_cham_pas_elga()), @@ -16400,6 +16859,12 @@ LIRE_RESU=OPER(nom="LIRE_RESU",op=150,sd_prod=lire_resu_prod,reentrant='n', POSI_FREQ =SIMP(statut='f',typ='I',min=2,max=2), NOM_CMP =SIMP(statut='o',typ='TXM',max='**'),), ), + + b_mode =BLOC(condition="((TYPE_RESU=='MODE_MECA')or(TYPE_RESU=='MODE_MECA_C') )and (FORMAT=='IDEAS')", + NUME_DDL =SIMP(statut='f',typ=(nume_ddl_sdaster),max=1, + fr="Utile en dynamique pour pouvoir imposer la numérotation des cham_no."), + ), + # 1-3 ensight : # ------------- b_ensight =BLOC(condition="FORMAT=='ENSIGHT'", @@ -16443,8 +16908,11 @@ LIRE_RESU=OPER(nom="LIRE_RESU",op=150,sd_prod=lire_resu_prod,reentrant='n', LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), b_acce_reel =BLOC(condition="(INST != None)or(LIST_INST != None)or(FREQ != None)or(LIST_FREQ != None)", - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), ), ), ) ; @@ -16481,7 +16949,7 @@ LIRE_TABLE=MACRO(nom="LIRE_TABLE",op=lire_table_ops,sd_prod=table_sdaster, TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 21/10/2008 AUTEUR NISTOR I.NISTOR # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2005 EDF R&D WWW.CODE-ASTER.ORG @@ -16502,16 +16970,18 @@ LIRE_TABLE=MACRO(nom="LIRE_TABLE",op=lire_table_ops,sd_prod=table_sdaster, # RESPONSABLE ANDRIAM H.ANDRIAMBOLOLONA MAC_MODES=OPER(nom="MAC_MODES",op= 141,sd_prod=table_sdaster, - fr="Normalisation de modes propres", + fr="Critere orthogonalite de modes propres", reentrant='n', - UIinfo={"groupes":("Résolution",)}, - BASE_1 =SIMP(statut='o',typ=(mode_meca,mode_flamb,base_modale) ), - BASE_2 =SIMP(statut='o',typ=(mode_meca,mode_flamb,base_modale) ), - MATR_ASSE =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_depl_c) ), + UIinfo={"groupes":("Résolution",)}, + regles=(PRESENT_PRESENT('IERI','MATR_ASSE'),), + BASE_1 =SIMP(statut='o',typ=(mode_meca,mode_meca_c,mode_flamb,base_modale) ), + BASE_2 =SIMP(statut='o',typ=(mode_meca,mode_meca_c,mode_flamb,base_modale) ), + MATR_ASSE =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_depl_c) ), + IERI =SIMP(statut='f',typ='TXM',into=("OUI",),), TITRE =SIMP(statut='f',typ='TXM',max='**'), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2) ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 20/10/2008 AUTEUR PELLET J.PELLET # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -16561,12 +17031,12 @@ MACR_ADAP_MAIL=MACRO(nom="MACR_ADAP_MAIL",op=macr_adap_mail_ops,sd_prod=macr_ada # # 1. Le niveau d'information # - INFO = SIMP(statut='f',typ='I',defaut=1,into=(1,2)), + INFO = SIMP(statut='f',typ='I',defaut=1,into=(1,2,3,4)), # # 2. Version de HOMARD # - VERSION_HOMARD = SIMP(statut='f',typ='TXM',defaut="V8_11", - into=("V8_11", "V8_N", "V8_N_PERSO"), + VERSION_HOMARD = SIMP(statut='f',typ='TXM',defaut="V9_5", + into=("V9_5", "V9_N", "V9_N_PERSO"), fr="Version de HOMARD", ang="HOMARD release"), # @@ -16692,12 +17162,17 @@ MACR_ADAP_MAIL=MACRO(nom="MACR_ADAP_MAIL",op=macr_adap_mail_ops,sd_prod=macr_ada b_precision = BLOC(condition="(INST != None)", fr="Choix de la précision du choix de l'instant", ang="Selection for instant choice", - PRECISION = SIMP(statut='f',typ='R',defaut=1.0E-3, - fr="Précision sur le choix de l'instant associé", - ang="Accuracy over instant choice" ), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU"), + 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" ), + ang="Accuracy criterium over instant choice"), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6, + fr="Précision relative sur le choix de l'instant associé", + ang="Relative accuracy over instant choice"),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R', + fr="Précision absolue sur le choix de l'instant associé", + ang="Absolute accuracy over instant choice"),), ), # ), @@ -16969,13 +17444,17 @@ MACR_ADAP_MAIL=MACRO(nom="MACR_ADAP_MAIL",op=macr_adap_mail_ops,sd_prod=macr_ada fr="Choix de la précision du choix de l'instant", ang="Selection for instant choice", # - PRECISION = SIMP(statut='f',typ='R',defaut=1.0E-3, - fr="Précision sur le choix de l'instant associé", - ang="Accuracy over instant choice" ), -# - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU"), - fr="Critère de précision sur le choix de l'instant associé", - ang="Accuracy criterium over instant choice" ), + 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"), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6, + fr="Précision relative sur le choix de l'instant associé", + ang="Relative accuracy over instant choice"),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R', + fr="Précision absolue sur le choix de l'instant associé", + ang="Absolute accuracy over instant choice"),), # ), # @@ -17022,7 +17501,7 @@ MACR_ADAP_MAIL=MACRO(nom="MACR_ADAP_MAIL",op=macr_adap_mail_ops,sd_prod=macr_ada ang="Incompatible elements for HOMARD" ), # ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -17110,7 +17589,6 @@ MACR_ASCOUF_CALC=MACRO(nom="MACR_ASCOUF_CALC",op=macr_ascouf_calc_ops,sd_prod=ma COMP_INCR =FACT(statut='f', RELATION =SIMP(statut='o',typ='TXM',into=("VMIS_ISOT_TRAC",) ), - VMIS_ISOT_TRAC =SIMP(statut='c',typ='I',defaut= 2,into=( 2 ,) ), RESI_INTE_RELA =SIMP(statut='f',typ='R' ,defaut= 1.0E-6), ITER_INTE_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), @@ -17121,8 +17599,6 @@ MACR_ASCOUF_CALC=MACRO(nom="MACR_ASCOUF_CALC",op=macr_ascouf_calc_ops,sd_prod=ma COMP_ELAS =FACT(statut='f', RELATION =SIMP(statut='o',typ='TXM',into=("ELAS","ELAS_VMIS_TRAC") ), - ELAS =SIMP(statut='c',typ='I',defaut= 1,into=( 1 ,) ), - ELAS_VMIS_TRAC =SIMP(statut='c',typ='I',defaut= 1,into=( 1 ,) ), RESI_INTE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-6), ITER_INTE_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), ITER_INTE_PAS =SIMP(statut='f',typ='I',defaut= 0 ), @@ -17131,7 +17607,33 @@ MACR_ASCOUF_CALC=MACRO(nom="MACR_ASCOUF_CALC",op=macr_ascouf_calc_ops,sd_prod=ma ), SOLVEUR =FACT(statut='d', - METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ), + METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC","MUMPS","PETSC") ), + b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", + TYPE_RESOL =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("NONSYM","SYMGEN","SYMDEF","AUTO")), + PRETRAITEMENTS =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("SANS","AUTO")), + RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), + ELIM_LAGR2 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), + PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=10,), + RESI_RELA =SIMP(statut='f',typ='R',defaut=1.0E-6,), + PARALLELISME =SIMP(statut='f',typ='TXM',defaut="CENTRALISE", + into=("CENTRALISE","DISTRIBUE_MC","DISTRIBUE_MD","DISTRIBUE_SD")), + PARTITION =SIMP(statut='f',typ=sd_feti_sdaster), + CHARGE_PROC0_MA =SIMP(statut='f',typ='I',defaut=100,min=0,max=100), + CHARGE_PROC0_SD =SIMP(statut='f',typ='I',defaut=0,min=0), + OUT_OF_CORE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), + ), + + b_petsc =BLOC(condition = "METHODE == 'PETSC' ",fr="Paramètres de la méthode PETSC", + ALGORITHME =SIMP(statut='f',typ='TXM',into=("BCGS","BICG","CG","CR","GMRES","TFQMR",),defaut="CG" ), + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC","JACOBI","SOR"),defaut="LDLT_INC" ), + b_petsc_ilu =BLOC(condition = "PRE_COND == 'LDLT_INC' ", + NIVE_REMPLISSAGE = SIMP(statut='f',typ='I',defaut= 0 ), + REMPLISSAGE = SIMP(statut='f',typ='R',defaut= 1.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= -1 ), + ), 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") ), ), @@ -17177,13 +17679,11 @@ MACR_ASCOUF_CALC=MACRO(nom="MACR_ASCOUF_CALC",op=macr_ascouf_calc_ops,sd_prod=ma regles=(EXCLUS('NUME_INST_INIT','INST_INIT'), EXCLUS('NUME_INST_FIN','INST_FIN'),), LIST_INST =SIMP(statut='o',typ=listr8_sdaster), - EVOLUTION =SIMP(statut='f',typ='TXM',defaut="CHRONOLOGIQUE", - into=("CHRONOLOGIQUE","RETROGRADE","SANS",) ), NUME_INST_INIT =SIMP(statut='f',typ='I'), INST_INIT =SIMP(statut='f',typ='R'), NUME_INST_FIN =SIMP(statut='f',typ='I'), INST_FIN =SIMP(statut='f',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), + PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-6 ), # DEBUT DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS SUBD_METHODE =SIMP( statut='f',typ='TXM', into =("AUCUNE","UNIFORME","EXTRAPOLE"), @@ -17415,7 +17915,7 @@ MACR_ASCOUF_MAIL=MACRO(nom="MACR_ASCOUF_MAIL",op=macr_ascouf_mail_ops,sd_prod=ma INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -17519,7 +18019,6 @@ MACR_ASPIC_CALC=MACRO(nom="MACR_ASPIC_CALC",op=macr_aspic_calc_ops,sd_prod=macr_ COMP_INCR =FACT(statut='f', RELATION =SIMP(statut='o',typ='TXM',into=("VMIS_ISOT_TRAC",) ), - VMIS_ISOT_TRAC =SIMP(statut='c',typ='I',defaut= 2,into=( 2 ,) ), RESI_INTE_RELA =SIMP(statut='f',typ='R',defaut=1.0E-6), ITER_INTE_MAXI =SIMP(statut='f',typ='I',defaut=10), ITER_INTE_PAS =SIMP(statut='f',typ='I',defaut=0), @@ -17529,8 +18028,6 @@ MACR_ASPIC_CALC=MACRO(nom="MACR_ASPIC_CALC",op=macr_aspic_calc_ops,sd_prod=macr_ COMP_ELAS =FACT(statut='f', RELATION =SIMP(statut='o',typ='TXM',into=("ELAS","ELAS_VMIS_TRAC") ), - ELAS =SIMP(statut='c',typ='I',defaut= 1,into=( 1 ,) ), - ELAS_VMIS_TRAC =SIMP(statut='c',typ='I',defaut= 1,into=( 1 ,) ), RESI_INTE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-6), ITER_INTE_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), ITER_INTE_PAS =SIMP(statut='f',typ='I',defaut= 0 ), @@ -17551,7 +18048,33 @@ MACR_ASPIC_CALC=MACRO(nom="MACR_ASPIC_CALC",op=macr_aspic_calc_ops,sd_prod=macr_ ), SOLVEUR =FACT(statut='d', - METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ), + METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC","MUMPS","PETSC") ), + b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", + TYPE_RESOL =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("NONSYM","SYMGEN","SYMDEF","AUTO")), + PRETRAITEMENTS =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("SANS","AUTO")), + RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), + ELIM_LAGR2 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), + PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=10,), + RESI_RELA =SIMP(statut='f',typ='R',defaut=1.0E-6,), + PARALLELISME =SIMP(statut='f',typ='TXM',defaut="CENTRALISE", + into=("CENTRALISE","DISTRIBUE_MC","DISTRIBUE_MD","DISTRIBUE_SD")), + PARTITION =SIMP(statut='f',typ=sd_feti_sdaster), + CHARGE_PROC0_MA =SIMP(statut='f',typ='I',defaut=100,min=0,max=100), + CHARGE_PROC0_SD =SIMP(statut='f',typ='I',defaut=0,min=0), + OUT_OF_CORE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), + ), + + b_petsc =BLOC(condition = "METHODE == 'PETSC' ",fr="Paramètres de la méthode PETSC", + ALGORITHME =SIMP(statut='f',typ='TXM',into=("BCGS","BICG","CG","CR","GMRES","TFQMR",),defaut="CG" ), + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC","JACOBI","SOR"),defaut="LDLT_INC" ), + b_petsc_ilu =BLOC(condition = "PRE_COND == 'LDLT_INC' ", + NIVE_REMPLISSAGE = SIMP(statut='f',typ='I',defaut= 0 ), + REMPLISSAGE = SIMP(statut='f',typ='R',defaut= 1.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= -1 ), + ), 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") ), ), @@ -17596,13 +18119,11 @@ MACR_ASPIC_CALC=MACRO(nom="MACR_ASPIC_CALC",op=macr_aspic_calc_ops,sd_prod=macr_ regles=(EXCLUS('NUME_INST_INIT','INST_INIT'), EXCLUS('NUME_INST_FIN','INST_FIN'),), LIST_INST =SIMP(statut='o',typ=listr8_sdaster), - EVOLUTION =SIMP(statut='f',typ='TXM',defaut="CHRONOLOGIQUE", - into=("CHRONOLOGIQUE","RETROGRADE","SANS",) ), NUME_INST_INIT =SIMP(statut='f',typ='I'), INST_INIT =SIMP(statut='f',typ='R'), NUME_INST_FIN =SIMP(statut='f',typ='I'), INST_FIN =SIMP(statut='f',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), + PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-6 ), # DEBUT DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS SUBD_METHODE =SIMP( statut='f',typ='TXM', into =("AUCUNE","UNIFORME","EXTRAPOLE"), @@ -17769,23 +18290,23 @@ MACR_ASPIC_MAIL=MACRO(nom="MACR_ASPIC_MAIL",op= macr_aspic_mail_ops,sd_prod=mail INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/06/2008 AUTEUR FLEJOU J-L.FLEJOU # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2003 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE 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 FLEJOU J.L.FLEJOU @@ -17793,47 +18314,60 @@ from Macro.macr_cara_poutre_ops import macr_cara_poutre_ops MACR_CARA_POUTRE=MACRO(nom="MACR_CARA_POUTRE",op=macr_cara_poutre_ops,sd_prod=table_sdaster, reentrant='n', - UIinfo={"groupes":("Modélisation",)}, - fr="Calculer les caractéristiques d'une section transversale de poutre à partir d'un maillage 2D de la section", - regles=(EXCLUS('SYME_X','GROUP_MA_BORD'), - EXCLUS('SYME_Y','GROUP_MA_BORD'),), - - UNITE_MAILLAGE =SIMP(statut='f',typ='I',defaut= 20 ), - ORIG_INER =SIMP(statut='f',typ='R',max=3,defaut=(0.E+0,0.E+0), - fr="Point par rapport auquel sont calculées les inerties"), - INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), - - SYME_X =SIMP(statut='f',typ='TXM',into=("OUI",),fr="demi maillage par rapport a x=0"), - SYME_Y =SIMP(statut='f',typ='TXM',into=("OUI",),fr="demi maillage par rapport a y=0"), - - GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', - fr="Calcul des caractéristiques équivalentes a plusieurs sections disjointes"), - - GROUP_MA_BORD =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', - fr="Groupe(s) de mailles linéiques, bord(s) de(s) section(s)"), - - b_gma_bord = BLOC( condition = "GROUP_MA_BORD != None", - fr=" calcul des carac. mecaniques", - regles=(UN_PARMI('NOEUD','GROUP_NO')), - - NOEUD =SIMP(statut='f',typ=no, max='**', - fr="Simplement pour empecher des pivots nuls le cas echeant. Fournir un noeud quelconque"), - GROUP_NO =SIMP(statut='f',typ=grno,max='**', - fr="Simplement pour empecher des pivots nuls le cas echeant. Fournir un noeud quelconque"), - GROUP_MA_INTE =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', - fr="groupes de mailles linéiques bordant des trous dans la section"), - ), - - b_reseau = BLOC( condition ="""(GROUP_MA_BORD != None) and (GROUP_MA != None)""", - fr=" calcul des coef de cisaillement équivalents a un reseau de poutres", - regles=(ENSEMBLE('LONGUEUR','LIAISON','MATERIAU') ,), - LONGUEUR =SIMP(statut='f',typ='R',fr="Longueur du réseau de poutres"), - MATERIAU =SIMP(statut='f',typ=mater_sdaster,fr="Materiau elastique lineaire du reseau"), - LIAISON =SIMP(statut='f',typ='TXM',into=("ROTULE","ENCASTREMENT"), - fr="type de conditions aux limites sur le plancher supérieur" ), - ), - ) -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE + UIinfo={"groupes":("Modélisation",)}, + fr="Calculer les caractéristiques d'une section transversale de poutre à partir d'un maillage 2D de la section", + regles=( EXCLUS('SYME_X','GROUP_MA_BORD'), + EXCLUS('SYME_Y','GROUP_MA_BORD'), + ), + + MAILLAGE =SIMP(statut='f',typ=maillage_sdaster, + fr="Nom du concept maillage"), + b_maillage=BLOC( condition = "MAILLAGE == None", + regles=( PRESENT_PRESENT('FORMAT','UNITE') ), + FORMAT =SIMP(statut='f',typ='TXM',defaut="ASTER",into=("ASTER","MED"), + fr="Format du fichier"), + UNITE =SIMP(statut='f',typ='I',defaut= 20, + fr="Unite correspondant au format du fichier maillage"), + ), + + ORIG_INER =SIMP(statut='f',typ='R',max=3,defaut=(0.E+0,0.E+0), + fr="Point par rapport auquel sont calculées les inerties"), + INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), + + SYME_X =SIMP(statut='f',typ='TXM',into=("OUI",), + fr="demi maillage par rapport a x=0"), + SYME_Y =SIMP(statut='f',typ='TXM',into=("OUI",), + fr="demi maillage par rapport a y=0"), + + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', + fr="Calcul des caractéristiques équivalentes a plusieurs sections disjointes"), + + GROUP_MA_BORD =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', + fr="Groupe(s) de mailles linéiques, bord(s) de(s) section(s)"), + + b_gma_bord =BLOC( condition = "GROUP_MA_BORD != None", + fr=" calcul des carac. mecaniques", + regles=(UN_PARMI('NOEUD','GROUP_NO')), + NOEUD =SIMP(statut='f',typ=no, max='**', + fr="Simplement pour empecher des pivots nuls le cas echeant. Fournir un noeud quelconque"), + GROUP_NO =SIMP(statut='f',typ=grno,max='**', + fr="Simplement pour empecher des pivots nuls le cas echeant. Fournir un noeud quelconque"), + GROUP_MA_INTE =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', + fr="groupes de mailles linéiques bordant des trous dans la section"), + ), + + b_reseau = BLOC( condition ="""(GROUP_MA_BORD != None) and (GROUP_MA != None)""", + fr=" calcul des coef de cisaillement équivalents a un reseau de poutres", + regles=(ENSEMBLE('LONGUEUR','LIAISON','MATERIAU') ,), + LONGUEUR =SIMP(statut='f',typ='R', + fr="Longueur du réseau de poutres"), + MATERIAU =SIMP(statut='f',typ=mater_sdaster, + fr="Materiau elastique lineaire du reseau"), + LIAISON =SIMP(statut='f',typ='TXM',into=("ROTULE","ENCASTREMENT"), + fr="type de conditions aux limites sur le plancher supérieur" ), + ), +) +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2004 EDF R&D WWW.CODE-ASTER.ORG @@ -17891,8 +18425,11 @@ MACR_ECLA_PG=MACRO(nom="MACR_ECLA_PG",op=macr_ecla_pg_ops,sd_prod=macr_ecla_pg_p LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), ) #& MODIF COMMANDE DATE 06/05/2008 AUTEUR CORUS M.CORUS # CONFIGURATION MANAGEMENT OF EDF VERSION @@ -17936,7 +18473,7 @@ MACR_ELEM_DYNA=OPER(nom="MACR_ELEM_DYNA",op= 81,sd_prod=macr_elem_dyna, VECT_ASSE_GENE =SIMP(statut='o',typ=vect_asse_gene ), ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 21/10/2008 AUTEUR NISTOR I.NISTOR # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -17981,6 +18518,8 @@ MACR_ELEM_STAT=OPER(nom="MACR_ELEM_STAT",op=86,sd_prod=macr_elem_stat,reentrant= ), MASS_MECA =FACT(statut='f', ), + AMOR_MECA =FACT(statut='f', + ), CAS_CHARGE =FACT(statut='f',max='**', NOM_CAS =SIMP(statut='o',typ='TXM'), SUIV =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), @@ -18438,7 +18977,7 @@ MACR_FIAB_IMPR=MACRO(nom="MACR_FIAB_IMPR",op=macr_fiab_impr_ops, ), # ); -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 20/10/2008 AUTEUR PELLET J.PELLET # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -18467,12 +19006,12 @@ MACR_INFO_MAIL=MACRO(nom="MACR_INFO_MAIL",op=macr_adap_mail_ops, # # 1. Le niveau d'information # - INFO = SIMP(statut='f',typ='I',defaut=1,into=(1,2)), + INFO = SIMP(statut='f',typ='I',defaut=1,into=(1,2,3,4)), # # 2. Version de HOMARD # - VERSION_HOMARD = SIMP(statut='f',typ='TXM',defaut="V8_11", - into=("V8_11", "V8_N", "V8_N_PERSO"), + VERSION_HOMARD = SIMP(statut='f',typ='TXM',defaut="V9_5", + into=("V9_5", "V9_N", "V9_N_PERSO"), fr="Version de HOMARD", ang="HOMARD release"), # @@ -18499,9 +19038,9 @@ MACR_INFO_MAIL=MACRO(nom="MACR_INFO_MAIL",op=macr_adap_mail_ops, fr="Information complémentaire sur la frontière", ang="Further information about boundary", # - GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', - fr="Groupes de mailles définissant la frontière", - ang="Mesh groups which define the boundary" ), + GROUP_MA_FRONT = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**', + fr="Groupes de mailles définissant la frontière", + ang="Mesh groups which define the boundary" ), # ) , # @@ -18544,7 +19083,7 @@ MACR_INFO_MAIL=MACRO(nom="MACR_INFO_MAIL",op=macr_adap_mail_ops, fr="Acceptation d'éléments incompatibles avec HOMARD", ang="Incompatible elements for HOMARD" ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG @@ -18582,8 +19121,11 @@ MACR_LIGN_COUPE=MACRO(nom="MACR_LIGN_COUPE",op=macr_lign_coupe_ops,sd_prod=table LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-6), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), ), # extraction des résultats @@ -18664,10 +19206,6 @@ MACR_LIGN_COUPE=MACRO(nom="MACR_LIGN_COUPE",op=macr_lign_coupe_ops,sd_prod=table ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE -#MACRO_BASCULE_SCHEMA = MACRO(nom="MACRO_BASCULE_SCHEMA", op=macro_bascule_schema_ops, sd_prod=evol_noli,reentrant='f', - - #& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -18753,7 +19291,7 @@ 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 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 21/10/2008 AUTEUR NISTOR I.NISTOR # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2006 EDF R&D WWW.CODE-ASTER.ORG @@ -18777,7 +19315,8 @@ from Macro.macro_expans_ops import macro_expans_ops def macro_expans_prod(self, MODELE_MESURE, RESU_NX, RESU_EX, RESU_ET, RESU_RD, **args): RESU_EXP = MODELE_MESURE['MESURE'] - for res in (RESU_NX, RESU_EX, RESU_ET, RESU_RD): + self.type_sdprod(RESU_NX, mode_meca) + for res in (RESU_EX, RESU_ET, RESU_RD): if isinstance(res, CO): if AsType(RESU_EXP) == mode_meca: self.type_sdprod(res, mode_meca) @@ -18797,6 +19336,8 @@ MACRO_EXPANS=MACRO(nom="MACRO_EXPANS", MODELE = SIMP(statut='o',typ=(modele_sdaster) ), BASE = SIMP(statut='o',typ=(mode_meca,base_modale,) ), NUME_MODE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**',defaut=0), + NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**',defaut=0), + ), MODELE_MESURE = FACT(statut='o', MODELE = SIMP(statut='o',typ=(modele_sdaster) ), @@ -18804,6 +19345,8 @@ MACRO_EXPANS=MACRO(nom="MACRO_EXPANS", NOM_CHAM = SIMP(statut='f',typ='TXM',defaut="DEPL", into=("DEPL","VITE","ACCE","SIEF_NOEU","EPSI_NOEU_DEPL",) ), NUME_MODE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**',defaut=0), + NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**',defaut=0), + ), NUME_DDL = SIMP(statut='f',typ=(nume_ddl_sdaster)), RESU_NX = SIMP(statut='f',typ=(mode_meca,dyna_harmo, CO)), @@ -18823,7 +19366,7 @@ MACRO_EXPANS=MACRO(nom="MACRO_EXPANS", ), ), ) -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -18906,7 +19449,7 @@ MACRO_MATR_AJOU=MACRO(nom="MACRO_MATR_AJOU",op=macro_matr_ajou_ops,sd_prod=macro VECTEUR =SIMP(statut='o',typ=CO), ), SOLVEUR =FACT(statut='d', - METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC") ), + METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC","MUMPS","PETSC") ), 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") ), ), @@ -18925,12 +19468,38 @@ MACRO_MATR_AJOU=MACRO(nom="MACRO_MATR_AJOU",op=macro_matr_ajou_ops,sd_prod=macro RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), ), + b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", + TYPE_RESOL =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("NONSYM","SYMGEN","SYMDEF","AUTO")), + PRETRAITEMENTS =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("SANS","AUTO")), + RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), + ELIM_LAGR2 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), + PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=10,), + RESI_RELA =SIMP(statut='f',typ='R',defaut=1.0E-6,), + PARALLELISME =SIMP(statut='f',typ='TXM',defaut="CENTRALISE", + into=("CENTRALISE","DISTRIBUE_MC","DISTRIBUE_MD","DISTRIBUE_SD")), + PARTITION =SIMP(statut='f',typ=sd_feti_sdaster), + CHARGE_PROC0_MA =SIMP(statut='f',typ='I',defaut=100,min=0,max=100), + CHARGE_PROC0_SD =SIMP(statut='f',typ='I',defaut=0,min=0), + OUT_OF_CORE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), + ), + + b_petsc =BLOC(condition = "METHODE == 'PETSC' ",fr="Paramètres de la méthode PETSC", + ALGORITHME =SIMP(statut='f',typ='TXM',into=("BCGS","BICG","CG","CR","GMRES","TFQMR",),defaut="CG" ), + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC","JACOBI","SOR"),defaut="LDLT_INC" ), + b_petsc_ilu =BLOC(condition = "PRE_COND == 'LDLT_INC' ", + NIVE_REMPLISSAGE = SIMP(statut='f',typ='I',defaut= 0 ), + REMPLISSAGE = SIMP(statut='f',typ='R',defaut= 1.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= -1 ), + ), ), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), NOEUD_DOUBLE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), AVEC_MODE_STAT =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), ) -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 17/11/2008 AUTEUR DELMAS J.DELMAS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -18964,13 +19533,13 @@ def macro_matr_asse_prod(self,NUME_DDL,MATR_ASSE,**args): if opti in ( "RIGI_MECA","RIGI_FLUI_STRU","RIGI_MECA_LAGR" , "MASS_MECA" , "MASS_FLUI_STRU" ,"RIGI_GEOM" ,"RIGI_ROTA", - "AMOR_MECA","IMPE_MECA","MASS_ID_MDEP_R","MASS_ID_MDNS_R", + "AMOR_MECA","IMPE_MECA", "ONDE_FLUI","MASS_MECA_DIAG","MECA_GYRO" ) : t=matr_asse_depl_r if opti in ( "RIGI_ACOU","MASS_ACOU","AMOR_ACOU",) : t=matr_asse_pres_c if opti in ( "RIGI_THER","MASS_THER","RIGI_THER_CONV" , - "RIGI_THER_CONV_D","MASS_ID_MTEM_R","MASS_ID_MTNS_R",) : t=matr_asse_temp_r + "RIGI_THER_CONV_D",) : t=matr_asse_temp_r if opti == "RIGI_MECA_HYST" : t= matr_asse_depl_c @@ -18989,19 +19558,23 @@ MACRO_MATR_ASSE=MACRO(nom="MACRO_MATR_ASSE",op=macro_matr_asse_ops, CHAR_CINE =SIMP(statut='f',typ=(char_cine_meca,char_cine_ther,char_cine_acou) ), NUME_DDL =SIMP(statut='o',typ=(nume_ddl_sdaster,CO)), SOLVEUR =FACT(statut='d', - METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC","MUMPS") ), + METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC","MUMPS","PETSC") ), b_mult_front =BLOC(condition="METHODE=='MULT_FRONT'",fr="Paramètres associés à la méthode multifrontale", RENUM =SIMP(statut='f',typ='TXM',into=("MD","MDA","METIS"),defaut="METIS" ), ), b_ldlt =BLOC(condition="METHODE=='LDLT'",fr="Paramètres associés à la méthode LDLT", RENUM =SIMP(statut='f',typ='TXM',into=("RCMK","SANS"),defaut="RCMK" ), ), - b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", - RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), + b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", + RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), + OUT_OF_CORE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), ), b_gcpc =BLOC(condition="METHODE=='GCPC'",fr="Paramètres associés à la méthode gradient conjugué", RENUM =SIMP(statut='f',typ='TXM',into=("RCMK","SANS"),defaut="RCMK" ), ), + b_petsc =BLOC(condition = "METHODE == 'PETSC'",fr="Paramètres de la méthode PETSC", + RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), + ), ), MATR_ASSE =FACT(statut='o',max='**', @@ -19012,8 +19585,7 @@ MACRO_MATR_ASSE=MACRO(nom="MACRO_MATR_ASSE",op=macro_matr_asse_ops, "ONDE_FLUI","RIGI_FLUI_STRU","MASS_FLUI_STRU", "RIGI_ROTA","RIGI_GEOM","RIGI_MECA_LAGR","MECA_GYRO", "RIGI_THER","MASS_THER", - "RIGI_ACOU","MASS_ACOU","AMOR_ACOU", - "MASS_ID_MTEM_R","MASS_ID_MTNS_R","MASS_ID_MDEP_R","MASS_ID_MDNS_R",) + "RIGI_ACOU","MASS_ACOU","AMOR_ACOU",) ), b_rigi_meca = BLOC( condition = "OPTION=='RIGI_MECA'", @@ -19252,146 +19824,6 @@ MACRO_PROJ_BASE=MACRO(nom="MACRO_PROJ_BASE",op=macro_proj_base_ops, ), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), ) ; -#& MODIF COMMANDE DATE 03/06/2008 AUTEUR BODEL C.BODEL -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2006 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE BODEL C.BODEL - -from Macro.macro_visu_meidee_ops import macro_visu_meidee_ops - -def macro_visu_meidee_prod(self,RESU_FLUDELA,RESU_TURBULENT,RESU_MODIFSTRU,**args): - - if RESU_FLUDELA != None: - for res in RESU_FLUDELA: - self.type_sdprod(res['TABLE'],table_sdaster) - if RESU_TURBULENT != None: - for res in RESU_TURBULENT: - self.type_sdprod(res['TABLE'],table_fonction) - - MTYPES = { - 'MODELE' : modele_sdaster, - 'MODE_MECA' : mode_meca, - 'NUME_DDL' : nume_ddl_sdaster, - 'MAILLAGE' : maillage_sdaster, - 'MASS_MECA' : matr_asse_depl_r, - 'RIGI_MECA' : matr_asse_depl_r, - 'AMOR_MECA' : matr_asse_depl_r, - 'MACR_ELEM' : macr_elem_stat, - 'PROJ_MESU' : mode_gene, - } - if RESU_MODIFSTRU != None: - for res in RESU_MODIFSTRU: - for mc, typ in MTYPES.items(): - if res[mc]: - self.type_sdprod(res[mc], typ) - return None - - -MACRO_VISU_MEIDEE=MACRO(nom = 'MACRO_VISU_MEIDEE', - op = macro_visu_meidee_ops, - sd_prod = macro_visu_meidee_prod, - reentrant = 'n', - UIinfo = {"groupes":("Outils métier",)}, - fr = "Outil de post-traitement interactif pour Meidee ", - UNITE_FIMEN = SIMP( statut='f',typ='I',max='**' ), - INTERACTIF = SIMP( statut='f',typ='TXM',into=('OUI','NON'),defaut='OUI' ), - RESU_FLUDELA = FACT( statut='f',max='**', - TABLE = SIMP(statut='f', typ=CO), - ), - RESU_TURBULENT = FACT( statut='f',max='**', - TABLE = SIMP(statut='f', typ=CO), - ), - RESU_MODIFSTRU = FACT( statut='f', max=1, - MODELE=SIMP(statut='f',typ=CO,defaut=None), - MODE_MECA=SIMP(statut='f',typ=CO,defaut=None), - MAILLAGE=SIMP(statut='f',typ=CO,defaut=None), - NUME_DDL=SIMP(statut='f',typ=CO,defaut=None), - MASS_MECA=SIMP(statut='f',typ=CO,defaut=None), - RIGI_MECA=SIMP(statut='f',typ=CO,defaut=None), - AMOR_MECA=SIMP(statut='f',typ=CO,defaut=None), - MACR_ELEM=SIMP(statut='f',typ=CO,defaut=None), - PROJ_MESU=SIMP(statut='f',typ=CO,defaut=None), - ), - UNITE_RESU = SIMP( statut='f',typ='I'), - - b_inter = BLOC( condition="INTERACTIF=='NON'", - - EXPANSION = FACT( statut='f',max='**', - CALCUL = SIMP(statut='o',typ=mode_meca), - NUME_MODE_CALCUL = SIMP(statut='f',typ='I',validators=NoRepeat(), - max='**',defaut=0), - MESURE = SIMP(statut='o',typ=mode_meca), - NUME_MODE_MESURE = SIMP(statut='f',typ='I',validators=NoRepeat(), - max='**',defaut=0), - RESOLUTION = SIMP(statut='f',typ='TXM',defaut='SVD',into=('SVD','LU')), - b_reso = BLOC(condition = "RESOLUTION=='SVD'", - EPS = SIMP(statut='f',typ='R', defaut = 0.) - ) - ), - FLUIDE_ELASTIQUE = FACT( statut='f', max='**', - MESURE1 = SIMP(statut='o',typ=mode_meca), - MESURE2 = SIMP(statut='o',typ=mode_meca), - MESURE3 = SIMP(statut='o',typ=mode_meca), - RESU_EXPANSION = SIMP(statut='f',typ='TXM',defaut='NON',into=('OUI','NON')), - b_base = BLOC(condition = "RESU_EXPANSION=='NON'", - BASE = SIMP(statut='o',typ=mode_meca), - ) - ), - TURBULENT = FACT( statut='f',max='**', - ALPHA = SIMP(statut='f',typ='R', defaut = 0.), - EPS = SIMP(statut='f',typ='R', defaut = 0.), - OBSERVABILITE = SIMP(statut='o',typ=(mode_meca, base_modale)), - COMMANDABILITE = SIMP(statut='o',typ=(mode_meca, base_modale)), - INTE_SPEC = SIMP(statut='o',typ=table_sdaster), - RESU_EXPANSION = SIMP(statut='f',typ='TXM',defaut='NON',into=('OUI','NON')), - b_base = BLOC(condition = "RESU_EXPANSION=='NON'", - BASE = SIMP(statut='o',typ=mode_meca), - ), - ), - MODIFSTRUCT = FACT( statut='f', max=1, - MESURE = SIMP(statut='o', typ=mode_meca), - MODELE_SUP = SIMP(statut='o', typ=modele_sdaster), - MATR_RIGI = SIMP(statut='o', typ=matr_asse_depl_r), - RESOLUTION = SIMP(statut='o', typ='TXM', - into=('ES', 'LMME')), - b_resol = BLOC( condition = "RESOLUTION=='LMME'", - MATR_MASS = SIMP(statut='o', typ=matr_asse_depl_r), - ), - NUME_MODE_MESU = SIMP(statut='o', typ='I',max='**'), - NUME_MODE_CALCUL = SIMP(statut='o', typ='I',max='**'), - MAILLE_MODIF = SIMP(statut='o', typ=maillage_sdaster), - MODELE_MODIF = SIMP(statut='o', typ=modele_sdaster), - ), - - # Si on realise une modification structurale, on donne les DDL capteurs et interface - b_inter = BLOC( condition="MODIFSTRUCT!=None", - GROUP_NO_CAPTEURS = FACT( statut='f', max='**', - GROUP_NO = SIMP(statut='f',typ='TXM', max='**'), - NOM_CMP = SIMP(statut='f',typ='TXM', max='**'), - ), - GROUP_NO_EXTERIEUR = FACT( statut='f', max='**', - GROUP_NO = SIMP(statut='f',typ='TXM', max='**'), - NOM_CMP = SIMP(statut='f',typ='TXM', max='**'), - ), - ), - ), - ); - #& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -19560,7 +19992,7 @@ MAJ_CATA=PROC(nom="MAJ_CATA",op=20, ELEMENT =FACT(statut='f',), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -19658,19 +20090,24 @@ MECA_STATIQUE=OPER(nom="MECA_STATIQUE",op=46,sd_prod=evol_elas, RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), ELIM_LAGR2 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=10,), - RESI_RELA =SIMP(statut='f',typ='R',defaut=-1.0,), + RESI_RELA =SIMP(statut='f',typ='R',defaut=1.0E-6,), PARALLELISME =SIMP(statut='f',typ='TXM',defaut="CENTRALISE", into=("CENTRALISE","DISTRIBUE_MC","DISTRIBUE_MD","DISTRIBUE_SD")), PARTITION =SIMP(statut='f',typ=sd_feti_sdaster), CHARGE_PROC0_MA =SIMP(statut='f',typ='I',defaut=100,min=0,max=100), CHARGE_PROC0_SD =SIMP(statut='f',typ='I',defaut=0,min=0), + OUT_OF_CORE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), ), b_petsc =BLOC(condition = "METHODE == 'PETSC' ",fr="Paramètres de la méthode PETSC", - VARIANTE =SIMP(statut='f',typ='TXM',into=("GMRES","BCGS","CR","CG","BICG","CHEBYCHEV",),defaut="GMRES" ), - PRE_COND =SIMP(statut='f',typ='TXM',into=("ILU","SOR","BJACOBI"),defaut="ILU" ), + ALGORITHME =SIMP(statut='f',typ='TXM',into=("BCGS","BICG","CG","CR","GMRES","TFQMR",),defaut="CG" ), + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC","JACOBI","SOR"),defaut="LDLT_INC" ), + b_petsc_ilu =BLOC(condition = "PRE_COND == 'LDLT_INC' ", + NIVE_REMPLISSAGE = SIMP(statut='f',typ='I',defaut= 0 ), + REMPLISSAGE = SIMP(statut='f',typ='R',defaut= 1.0), + ), RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), - RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-8), + RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), NMAX_ITER =SIMP(statut='f',typ='I',defaut= -1 ), ), ), @@ -19980,23 +20417,23 @@ 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 05/05/2008 AUTEUR NISTOR I.NISTOR +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== # RESPONSABLE NISTOR I.NISTOR @@ -20045,9 +20482,66 @@ MODE_STATIQUE=OPER(nom="MODE_STATIQUE",op= 93,sd_prod=mode_stat_prod, regles=(UN_PARMI('TOUT_CMP','AVEC_CMP','SANS_CMP'),), TOUT_CMP =SIMP(statut='f',typ='TXM',into=("OUI",) ), AVEC_CMP =SIMP(statut='f',typ='TXM',max='**'), - SANS_CMP =SIMP(statut='f',typ='TXM',max='**'), - ), + SANS_CMP =SIMP(statut='f',typ='TXM',max='**'), + ), + ), + + + SOLVEUR =FACT(statut='d', fr="Méthode de résolution des systèmes linéaires", + METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC","MUMPS","PETSC") ), + + + 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") ), + NPREC =SIMP(statut='f',typ='I',defaut=8), + STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + ), + + b_mult_front =BLOC(condition = "METHODE == 'MULT_FRONT' ",fr="Paramètres de la méthode multi frontale", + RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), + NPREC =SIMP(statut='f',typ='I',defaut=8), + STOP_SINGULIER =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + ), + + + b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", + TYPE_RESOL =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("NONSYM","SYMGEN","SYMDEF","AUTO")), + PRETRAITEMENTS =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("SANS","AUTO")), + RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), + ELIM_LAGR2 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), + PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=10,), + RESI_RELA =SIMP(statut='f',typ='R',defaut=-1.0,), + PARALLELISME =SIMP(statut='f',typ='TXM',defaut="CENTRALISE", + into=("CENTRALISE","DISTRIBUE_MC","DISTRIBUE_MD","DISTRIBUE_SD")), + PARTITION =SIMP(statut='f',typ=sd_feti_sdaster), + CHARGE_PROC0_MA =SIMP(statut='f',typ='I',defaut=100,min=0,max=100), + CHARGE_PROC0_SD =SIMP(statut='f',typ='I',defaut=0,min=0), + OUT_OF_CORE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), + ), + + b_petsc =BLOC(condition = "METHODE == 'PETSC' ",fr="Paramètres de la méthode PETSC", + ALGORITHME =SIMP(statut='f',typ='TXM',into=("BCGS","BICG","CG","CR","GMRES","TFQMR",),defaut="CG" ), + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC","JACOBI","SOR"),defaut="LDLT_INC" ), + b_petsc_ilu =BLOC(condition = "PRE_COND == 'LDLT_INC' ", + NIVE_REMPLISSAGE = SIMP(statut='f',typ='I',defaut= 0 ), + REMPLISSAGE = SIMP(statut='f',typ='R',defaut= 1.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= -1 ), + ), + + 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 ), + ), ), + + + TITRE =SIMP(statut='f',typ='TXM',max='**'), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ,) ), ) ; @@ -20085,23 +20579,23 @@ MODI_BASE_MODALE=OPER(nom="MODI_BASE_MODALE",op= 149,sd_prod=mode_meca, INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 06/05/2008 AUTEUR KHAM M.KHAM +#& MODIF COMMANDE DATE 14/10/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== # RESPONSABLE PELLET J.PELLET MODI_MAILLAGE=OPER(nom="MODI_MAILLAGE",op= 154,sd_prod=maillage_sdaster, @@ -20111,7 +20605,7 @@ MODI_MAILLAGE=OPER(nom="MODI_MAILLAGE",op= 154,sd_prod=maillage_sdaster, UIinfo={"groupes":("Maillage",)}, regles=(AU_MOINS_UN('ORIE_FISSURE','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D', 'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE','MODI_MAILLE', - 'TRANSLATION','ROTATION','MODI_BASE','ECHELLE','ORIE_SHB8','SYMETRIE', + 'TRANSLATION','ROTATION','MODI_BASE','ECHELLE','ORIE_SHB','SYMETRIE', 'ORIE_LIGNE',), PRESENT_ABSENT('ORIE_FISSURE','DEFORME','EQUE_PIQUA','ORIE_PEAU_2D', 'ORIE_PEAU_3D','ORIE_NORM_COQUE','PLAQ_TUBE','MODI_MAILLE', @@ -20150,7 +20644,7 @@ MODI_MAILLAGE=OPER(nom="MODI_MAILLAGE",op= 154,sd_prod=maillage_sdaster, DEFORME =FACT(statut='f', OPTION =SIMP(statut='o',typ='TXM',into=("TRAN","TRAN_APPUI") ), DEPL =SIMP(statut='o',typ=cham_no_sdaster ), - b_deform =BLOC(condition = "OPTION=='TRAN_APPUI'", + b_deform =BLOC(condition = "OPTION=='TRAN_APPUI'", GROUP_NO_APPUI = SIMP(statut='o',typ=grno,validators=NoRepeat(),max='**' ), GROUP_NO_STRU = SIMP(statut='o',typ=grno,validators=NoRepeat(),max='**' ),), ), @@ -20173,31 +20667,32 @@ MODI_MAILLAGE=OPER(nom="MODI_MAILLAGE",op= 154,sd_prod=maillage_sdaster, ), ORIE_PEAU_2D =FACT(statut='f',max='**', GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), + GROUP_MA_SURF =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), ), ORIE_PEAU_3D =FACT(statut='f',max='**', GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), GROUP_MA_VOLU =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), ), - ORIE_SHB8 =FACT(statut='f',max=1, + ORIE_SHB =FACT(statut='f',max=1, GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), ), ORIE_NORM_COQUE =FACT(statut='f',max='**', - regles=(EXCLUS('NOEUD','GROUP_NO'), - PRESENT_PRESENT('NOEUD','VECT_NORM'), - PRESENT_PRESENT('GROUP_NO','VECT_NORM'),), GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), VECT_NORM =SIMP(statut='f',typ='R',max=3), - NOEUD =SIMP(statut='f',typ=no), - GROUP_NO =SIMP(statut='f',typ=grno), + b_vect_norm =BLOC(condition = "VECT_NORM != None", + regles=UN_PARMI('NOEUD','GROUP_NO'), + NOEUD =SIMP(statut='f',typ=no), + GROUP_NO =SIMP(statut='f',typ=grno), + ), ), ORIE_LIGNE =FACT(statut='f',max='**', - regles=(EXCLUS('NOEUD','GROUP_NO'), - PRESENT_PRESENT('NOEUD','VECT_TANG'), - PRESENT_PRESENT('GROUP_NO','VECT_TANG'),), GROUP_MA =SIMP(statut='o',typ=grma,validators=NoRepeat(),max='**'), VECT_TANG =SIMP(statut='f',typ='R',max=3), - NOEUD =SIMP(statut='f',typ=no), - GROUP_NO =SIMP(statut='f',typ=grno), + b_vect_tang =BLOC(condition = "VECT_TANG != None", + regles=UN_PARMI('NOEUD','GROUP_NO'), + NOEUD =SIMP(statut='f',typ=no), + GROUP_NO =SIMP(statut='f',typ=grno), + ), ), PLAQ_TUBE =FACT(statut='f', DEXT =SIMP(statut='o',typ='R' ), @@ -20223,7 +20718,7 @@ MODI_MAILLAGE=OPER(nom="MODI_MAILLAGE",op= 154,sd_prod=maillage_sdaster, 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',), + ECHELLE =SIMP(statut='f',typ='R',), TRANSLATION =SIMP(statut='f',typ='R',min=2,max=3), ROTATION =FACT(statut='f',max='**', POIN_1 =SIMP(statut='o',typ='R',min=2,max=3), @@ -20309,7 +20804,7 @@ MODI_OBSTACLE=OPER(nom="MODI_OBSTACLE",op=182,sd_prod=table_fonction, V_USUR_OBST =SIMP(statut='f',typ='R',max='**'), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -20349,8 +20844,11 @@ MODI_REPERE=OPER(nom="MODI_REPERE",op=191,sd_prod=modi_repere_prod,reentrant='n' LIST_INST =SIMP(statut='f',typ=listr8_sdaster), LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), MODI_CHAM =FACT(statut='o',max='**', GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), @@ -20443,7 +20941,7 @@ 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 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 08/08/2008 AUTEUR DESOZA T.DESOZA # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -20472,7 +20970,7 @@ NUME_DDL=OPER(nom="NUME_DDL",op=11,sd_prod=nume_ddl_sdaster,reentrant='n', b_modele =BLOC(condition = "MODELE != None", 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","MUMPS") ), + METHODE =SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC","PETSC","MUMPS") ), b_mult_front =BLOC(condition="METHODE=='MULT_FRONT'",fr="paramètres associés à la méthode multifrontale", RENUM =SIMP(statut='f',typ='TXM',into=("MD","MDA","METIS"),defaut="METIS" ), ), @@ -20482,7 +20980,7 @@ NUME_DDL=OPER(nom="NUME_DDL",op=11,sd_prod=nume_ddl_sdaster,reentrant='n', b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), ), - b_gcpc =BLOC(condition="METHODE=='GCPC'",fr="paramètres associés à la méthode gradient conjugué", + b_gcpc =BLOC(condition="METHODE=='GCPC' or METHODE=='PETSC'",fr="paramètres associés à la GCPC ou PETSc", RENUM =SIMP(statut='f',typ='TXM',into=("RCMK","SANS"),defaut="RCMK" ), ), INFO =SIMP(statut='f',typ='I',into=(1,2)), @@ -20806,23 +21304,23 @@ POST_DYNA_MODA_T=OPER(nom="POST_DYNA_MODA_T",op= 130,sd_prod=table_sdaster, INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2) ), TITRE =SIMP(statut='f',typ='TXM',max='**' ), ) ; -#& MODIF COMMANDE DATE 20/05/2008 AUTEUR MAHFOUZ D.MAHFOUZ +#& MODIF COMMANDE DATE 03/11/2008 AUTEUR PELLET J.PELLET # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. +# 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 DESROCHES X.DESROCHES POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=table_sdaster,reentrant='n', @@ -20859,8 +21357,11 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=table_sdaster,reentrant='n', CHAM_GD = SIMP(statut='f',typ=(cham_no_sdaster,cham_elem) ), RESULTAT = SIMP(statut='f',typ=(mode_meca,evol_elas,evol_noli,mult_elas, fourier_elas,dyna_trans) ), - PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), NUME_ORDRE = SIMP(statut='f',typ='I',), LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), @@ -20895,8 +21396,11 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=table_sdaster,reentrant='n', MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), CHAM_GD = SIMP(statut='f',typ=(cham_no_sdaster,cham_elem) ), RESULTAT = SIMP(statut='f',typ=(mode_meca,evol_elas,evol_ther,evol_noli,dyna_trans,mult_elas) ), - PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), @@ -20934,8 +21438,11 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=table_sdaster,reentrant='n', MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), CHAM_GD = SIMP(statut='f',typ=(cham_no_sdaster,cham_elem) ), RESULTAT = SIMP(statut='f',typ=(mode_meca,evol_elas,evol_ther,evol_noli,dyna_trans) ), - PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), @@ -20966,8 +21473,11 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=table_sdaster,reentrant='n', 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")), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), @@ -20993,8 +21503,11 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=table_sdaster,reentrant='n', 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")), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), @@ -21007,16 +21520,20 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=table_sdaster,reentrant='n', TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), MAILLE = SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), GROUP_MA = SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), - NOM_CHAM = SIMP(statut='o',typ='TXM',into=C_NOM_CHAM_INTO()), - NOM_CMP = SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**'), + NOM_CHAM = SIMP(statut='o',typ='TXM',into=C_NOM_CHAM_INTO()), + NOM_CMP = SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**'), + DEJA_INTEGRE = SIMP(statut='f',typ='TXM',into=("OUI","NON",),), ), b_integrale = BLOC(condition = "( INTEGRALE != None )", fr="calcul de la moyenne d'une composante", regles=(EXCLUS('TOUT_ORDRE','NUME_ORDRE','LIST_ORDRE','INST','LIST_INST'),), MODELE = SIMP(statut='f',typ=modele_sdaster), - RESULTAT = SIMP(statut='o',typ=(evol_noli,evol_ther,evol_elas) ), - PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), + RESULTAT = SIMP(statut='o',typ=(evol_noli,evol_ther,evol_elas,evol_char) ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), @@ -21031,17 +21548,20 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=table_sdaster,reentrant='n', PRESENT_PRESENT('CHAM_GD','MODELE'), PRESENT_PRESENT('RESULTAT','NOM_CHAM'), AU_MOINS_UN('TOUT','GROUP_MA'),), - TOUT = SIMP(statut='f',typ='TXM',into=("OUI",) ), - 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,validators=NoRepeat(),max='**'), RESULTAT = SIMP(statut='f',typ=(evol_noli,evol_ther,evol_elas) ), - NOM_CHAM = SIMP(statut='f',typ='TXM',into=C_NOM_CHAM_INTO()), + NOM_CHAM = SIMP(statut='f',typ='TXM',into=C_NOM_CHAM_INTO()), CHAM_GD = SIMP(statut='f',typ=(cham_no_sdaster,cham_elem) ), MODELE = SIMP(statut='f',typ=modele_sdaster), - NOM_CMP = SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**'), + NOM_CMP = SIMP(statut='o',typ='TXM',validators=NoRepeat(),max='**'), b_minmax = BLOC(condition = "( RESULTAT != None )", 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")), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), @@ -21075,8 +21595,11 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=table_sdaster,reentrant='n', MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), CHAM_GD = SIMP(statut='f',typ=(cham_no_sdaster,cham_elem) ), RESULTAT = SIMP(statut='f',typ=(evol_noli) ), - PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), @@ -21108,8 +21631,11 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=table_sdaster,reentrant='n', MODE_FOURIER = SIMP(statut='f',typ='I',defaut=0), CHAM_GD = SIMP(statut='f',typ=(cham_no_sdaster,cham_elem) ), RESULTAT = SIMP(statut='f',typ=(evol_noli) ), - PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), @@ -21132,8 +21658,11 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=table_sdaster,reentrant='n', 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")), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), @@ -21156,8 +21685,11 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=table_sdaster,reentrant='n', 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")), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), @@ -21178,8 +21710,11 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=table_sdaster,reentrant='n', 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")), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), NUME_ORDRE = SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), LIST_ORDRE = SIMP(statut='f',typ=listis_sdaster), @@ -21243,8 +21778,11 @@ POST_ELEM=OPER(nom="POST_ELEM",op=107,sd_prod=table_sdaster,reentrant='n', b_trav_ext = BLOC(condition = "( TRAV_EXT != None )", fr="calcul du travail des efforts extérieurs", RESULTAT = SIMP(statut='o',typ=(evol_elas,evol_noli,dyna_trans) ), - PRECISION = SIMP(statut='f',typ='R',defaut= 1.0E-3), - CRITERE = SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), TOUT_ORDRE = SIMP(statut='f',typ='TXM',into=("OUI",) ), ), @@ -21486,7 +22024,7 @@ POST_GP=MACRO(nom="POST_GP", op=post_gp_ops, sd_prod=post_gp_prod, INFO = SIMP(statut='f', typ='I', defaut=1, into=(1, 2),), ) -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 20/10/2008 AUTEUR GALENNE E.GALENNE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -21539,6 +22077,8 @@ POST_K1_K2_K3=MACRO(nom="POST_K1_K2_K3",op=post_k1_k2_k3_ops,sd_prod=table_sdast b_fissure =BLOC (condition="(FISSURE!= None)", MAILLAGE = SIMP(statut='o',typ=maillage_sdaster), NB_NOEUD_COUPE = SIMP(statut='f',typ='I' ,defaut=5 ), + NB_POINT_FOND = SIMP(statut='f',typ='I' ,), + NUME_FOND = SIMP(statut='f',typ='I',defaut=1), DTAN_ORIG = SIMP(statut='f',typ='R',max='**'), DTAN_EXTR = SIMP(statut='f',typ='R',max='**'), ), @@ -21550,7 +22090,7 @@ POST_K1_K2_K3=MACRO(nom="POST_K1_K2_K3",op=post_k1_k2_k3_ops,sd_prod=table_sdast fr="Table issue de post_releve_t sur les noeuds de la lèvre supérieure"), TABL_DEPL_INF =SIMP(statut='f',typ=table_sdaster, fr="Table issue de post_releve_t sur les noeuds de la lèvre inférieure"), - ABSC_CURV_MAXI=SIMP(statut='f',typ='R', + ABSC_CURV_MAXI=SIMP(statut='o',typ='R', fr="Distance maximum à partir du fond de fissure à utiliser pour le calcul"), PREC_VIS_A_VIS= SIMP(statut='f',typ='R',defaut=0.1), TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), @@ -21559,12 +22099,15 @@ POST_K1_K2_K3=MACRO(nom="POST_K1_K2_K3",op=post_k1_k2_k3_ops,sd_prod=table_sdast INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8_sdaster), b_acce_reel =BLOC(condition="(INST != None)or(LIST_INST != None)", - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-6), CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), ), SYME_CHAR =SIMP(statut='f',typ='TXM',defaut="SANS",into=("SYME","SANS") ), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), - VECT_K1 =SIMP(statut='f',typ='R',max=3, + VECT_K1 =SIMP(statut='f',typ='R',max=3,min=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='**'), ) ; @@ -21610,7 +22153,7 @@ POST_K_BETA=OPER(nom="POST_K_BETA",op=198,sd_prod=table_sdaster, ), TITRE = SIMP(statut='f',typ='TXM',max='**'), ); -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2006 EDF R&D WWW.CODE-ASTER.ORG @@ -21667,9 +22210,11 @@ POST_K_TRANS=MACRO(nom="POST_K_TRANS",op=post_k_trans_ops,sd_prod=table_sdaster, LIST_ORDRE =SIMP(statut='f',typ=listis_sdaster), INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3), CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",) ), - + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R'),), INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), TITRE =SIMP(statut='f',typ='TXM'), ) @@ -21706,7 +22251,7 @@ POST_MAIL_XFEM=OPER(nom="POST_MAIL_XFEM",op= 187,sd_prod=maillage_sdaster, INFO =SIMP(statut='f',typ='I',defaut= 1,into=(1,2,) ), ); -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 03/11/2008 AUTEUR MACOCCO K.MACOCCO # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -21759,10 +22304,12 @@ POST_RCCM=OPER(nom="POST_RCCM",op= 165,sd_prod=table_sdaster, INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), b_inst =BLOC(condition = "(INST != None) or (LIST_INST != None)" , - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("ABSOLU","RELATIF") ), - ), - ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),),), + ), ), # ====================================================================== @@ -21779,7 +22326,6 @@ POST_RCCM=OPER(nom="POST_RCCM",op= 165,sd_prod=table_sdaster, regles=(UN_PARMI('MX','MX_TUBU'),), NUME_CHAR =SIMP(statut='o',typ='I',fr="numéro du chargement" ), NOM_CHAR =SIMP(statut='f',typ='TXM',fr="nom du chargement" ), - TYPE_CHAR =SIMP(statut='f',typ='TXM',fr="nature du chargement",into=( "SEISME","AUTRE"),defaut="AUTRE",), MX =SIMP(statut='f',typ='R',fr="moment suivant x", ), MX_TUBU =SIMP(statut='f',typ='R',fr="moment suivant x, tubulure", ), b_1_tenseur =BLOC( condition = "MX != None", @@ -21855,15 +22401,25 @@ POST_RCCM=OPER(nom="POST_RCCM",op= 165,sd_prod=table_sdaster, TABL_RESU_THER =SIMP(statut='o',typ=table_sdaster, fr="table relevé des contraintes sous chargement thermique seul" ), ), + SEISME =FACT(statut='f',max='**',fr="Situation séisme",ang="situation_ang", + NB_OCCUR =SIMP(statut='o',typ='I',fr="nombre d'occurences de la situation" ), + NB_CYCL_SEISME =SIMP(statut='o',typ='I',fr="nombre de cycles associé au séisme" ), + NUME_SITU =SIMP(statut='o',typ='I',fr="numéro de la situation" ), + NOM_SITU =SIMP(statut='f',typ='TXM',fr="nom de la situation" ), + NUME_GROUPE =SIMP(statut='o',typ='I',fr="numéros du groupe de la situation" ), + CHAR_ETAT =SIMP(statut='o',typ='I',max='**',fr="numeros de chargements etat A" ), + NUME_RESU_THER =SIMP(statut='f',typ='I',max='**',fr="numeros de transitoires thermiques" ), + ), SITUATION =FACT(statut='o',max='**',fr="Situation",ang="situation_ang", NB_OCCUR =SIMP(statut='o',typ='I',fr="nombre d'occurences de la situation" ), - NB_CYCL_SEISME =SIMP(statut='f',typ='I',fr="nombre de cycles associé au séisme" ), NUME_SITU =SIMP(statut='o',typ='I',fr="numéro de la situation" ), NOM_SITU =SIMP(statut='f',typ='TXM',fr="nom de la situation" ), COMBINABLE =SIMP(statut='f',typ='TXM',defaut= "OUI",into=("OUI","NON"),fr="non = sous-cycle" ), - NUME_GROUPE =SIMP(statut='f',typ='I',max=2, - fr="numéro du groupe de la situation,si 2 numéros cette situation est une situation de passage" ), - NUME_RESU_THER =SIMP(statut='f',typ='I',max='**',fr="numeros de transitoires thermiques" ), + NUME_GROUPE =SIMP(statut='f',typ='I', + fr="numéros des groupes de la situation" ), + NUME_PASSAGE =SIMP(statut='f',typ='I',min=2,max=2, + fr="numéro des situations de passage" ), + NUME_RESU_THER =SIMP(statut='f',typ='I',max=1,fr="numeros de transitoires thermiques" ), CHAR_ETAT_A =SIMP(statut='o',typ='I',max='**',fr="numeros de chargements etat A" ), CHAR_ETAT_B =SIMP(statut='o',typ='I',max='**',fr="numeros de chargements etat B" ), PRES_A =SIMP(statut='o',typ='R',fr="pression etat A"), @@ -21891,7 +22447,6 @@ POST_RCCM=OPER(nom="POST_RCCM",op= 165,sd_prod=table_sdaster, regles=(UN_PARMI('CHAM_GD','RESULTAT'),), NUME_CHAR =SIMP(statut='o',typ='I',fr="numéro du chargement" ), NOM_CHAR =SIMP(statut='f',typ='TXM',fr="nom du chargement" ), - TYPE_CHAR =SIMP(statut='f',typ='TXM',fr="nature du chargement",into=( "SEISME","AUTRE"),defaut="AUTRE",), CHAM_GD =SIMP(statut='f',typ=cham_gd_sdaster), RESULTAT =SIMP(statut='f',typ=resultat_sdaster), b_extrac =BLOC(condition="RESULTAT != None", @@ -21903,8 +22458,11 @@ POST_RCCM=OPER(nom="POST_RCCM",op= 165,sd_prod=table_sdaster, 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"), ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), ), ), ), @@ -21943,14 +22501,25 @@ POST_RCCM=OPER(nom="POST_RCCM",op= 165,sd_prod=table_sdaster, NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), ), ), + SEISME =FACT(statut='f',max='**',fr="Situation séisme",ang="situation_ang", + NB_OCCUR =SIMP(statut='o',typ='I',fr="nombre d'occurences de la situation" ), + NB_CYCL_SEISME =SIMP(statut='o',typ='I',fr="nombre de cycles associé au séisme" ), + NUME_SITU =SIMP(statut='o',typ='I',fr="numéro de la situation" ), + NOM_SITU =SIMP(statut='f',typ='TXM',fr="nom de la situation" ), + NUME_GROUPE =SIMP(statut='o',typ='I',fr="numéros du groupe de la situation" ), + CHAR_ETAT =SIMP(statut='o',typ='I',max='**',fr="numeros de chargements etat A" ), + NUME_RESU_THER =SIMP(statut='f',typ='I',max='**',fr="numeros de transitoires thermiques" ), + TEMP_REF =SIMP(statut='f',typ='R',fr="temperature référence"), + ), SITUATION =FACT(statut='o',max='**',fr="Situation",ang="situation_ang", NB_OCCUR =SIMP(statut='o',typ='I',fr="nombre d'occurences de la situation" ), - NB_CYCL_SEISME =SIMP(statut='f',typ='I',fr="nombre de cycles associé au séisme" ), NUME_SITU =SIMP(statut='o',typ='I',fr="numéro de la situation" ), NOM_SITU =SIMP(statut='f',typ='TXM',fr="nom de la situation" ), COMBINABLE =SIMP(statut='f',typ='TXM',defaut= "OUI",into=("OUI","NON"),fr="non = sous-cycle" ), - NUME_GROUPE =SIMP(statut='f',typ='I',max=2, - fr="numéro du groupe de la situation,si 2 numéros cette situation est une situation de passage" ), + NUME_GROUPE =SIMP(statut='f',typ='I', + fr="numéros des groupes de la situation" ), + NUME_PASSAGE =SIMP(statut='f',typ='I',min=2,max=2, + fr="numéro des situations de passage" ), NUME_RESU_THER =SIMP(statut='f',typ='I',max='**',fr="numeros de transitoires thermiques" ), CHAR_ETAT_A =SIMP(statut='o',typ='I',max='**',fr="numeros de chargements etat A" ), CHAR_ETAT_B =SIMP(statut='o',typ='I',max='**',fr="numeros de chargements etat B" ), @@ -21961,7 +22530,7 @@ POST_RCCM=OPER(nom="POST_RCCM",op= 165,sd_prod=table_sdaster, ), ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # ====================================================================== # CONFIGURATION MANAGEMENT OF EDF VERSION # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -22049,8 +22618,11 @@ POST_RELEVE_T=OPER(nom="POST_RELEVE_T",op=51,sd_prod=table_sdaster,reentrant='f' LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster), INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**'), LIST_INST =SIMP(statut='f',typ=listr8_sdaster), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-6), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), ), b_extrema =BLOC(condition="OPERATION == 'EXTREMA'", @@ -22235,7 +22807,7 @@ POST_USURE=OPER(nom="POST_USURE",op=153,sd_prod=table_sdaster,reentrant='f', INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2)), TITRE =SIMP(statut='f',typ='TXM',max='**' ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -22277,11 +22849,13 @@ POST_ZAC=OPER(nom="POST_ZAC",op= 175,sd_prod=mult_elas,reentrant='n', b_evol_noli =BLOC(condition="EVOL_NOLI != None", INST_MAX =SIMP(statut='o',typ='R'), ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU")), - + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 16/09/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -22344,13 +22918,13 @@ POURSUITE=MACRO(nom="POURSUITE",op=ops.build_poursuite,repetable='n', ENVIMA =SIMP(fr="imprime les valeurs définies dans ENVIMA", statut='f',typ='TXM',into=('TEST',)), ), - MEMOIRE =FACT(fr="mode de gestion mémoire utilisé",statut='f',min=1,max=1, + MEMOIRE =FACT(fr="mode de gestion mémoire utilisé",statut='d',min=1,max=1, GESTION =SIMP(statut='f',typ='TXM',into=('COMPACTE','RAPIDE'),defaut='RAPIDE'), TYPE_ALLOCATION =SIMP(statut='f',typ='I',into=(1,2,3,4),defaut=1), TAILLE =SIMP(statut='f',typ='I'), TAILLE_BLOC =SIMP(statut='f',typ='R',defaut=800.), PARTITION =SIMP(statut='f',typ='R' ), - DYNAMIQUE =SIMP(statut='f',typ='I'), + DYNAMIQUE =SIMP(statut='f',typ='I',defaut=1), ), RESERVE_CPU =FACT(fr="reserve de temps pour terminer une execution",statut='d',max=1, @@ -22637,7 +23211,7 @@ PROJ_MATR_BASE=OPER(nom="PROJ_MATR_BASE",op= 71,sd_prod=matr_asse_gene_prod, MATR_ASSE_GENE =SIMP(statut='f',typ=(matr_asse_gene_r,matr_asse_gene_c) ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 21/10/2008 AUTEUR NISTOR I.NISTOR # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -22661,7 +23235,7 @@ def proj_mesu_modal_prod(MODELE_MESURE,**args): if AsType(vale) == dyna_trans : return tran_gene if AsType(vale) == dyna_harmo : return harm_gene if AsType(vale) == mode_meca : return mode_gene -# if AsType(vale) == mode_meca_c : return mode_gene_c + if AsType(vale) == mode_meca_c : return mode_gene if AsType(vale) == base_modale : return mode_gene raise AsException("type de concept resultat non prevu") @@ -22771,6 +23345,97 @@ PROJ_VECT_BASE=OPER(nom="PROJ_VECT_BASE",op= 72,sd_prod=vect_asse_gene, VECT_ASSE =SIMP(statut='f',typ=cham_no_sdaster), VECT_ASSE_GENE =SIMP(statut='f',typ=vect_asse_gene ), ) ; +#& MODIF COMMANDE DATE 20/10/2008 AUTEUR GALENNE E.GALENNE +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2008 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE GALENNE E.GALENNE + + +from Macro.propa_fiss_ops import propa_fiss_ops + +def propa_fiss_prod(self,**args): + if args.has_key('MA_TOT2') : + MA_TOT2 = args['MA_TOT2'] + self.type_sdprod(MA_TOT2,maillage_sdaster) + if args.has_key('MA_XFEM2') : + MA_XFEM2 = args['MA_XFEM2'] + self.type_sdprod(MA_XFEM2,maillage_sdaster) + if args.has_key('FISSURE') : + FISSURE = args['FISSURE'] + self.type_sdprod(FISSURE,fiss_xfem) + return None + +PROPA_FISS=MACRO(nom="PROPA_FISS",op=propa_fiss_ops,sd_prod=propa_fiss_prod, + fr="Propagation de fissure avec X-FEM",reentrant='n', + UIinfo={"groupes":("Post traitements",)}, + + METHODE_PROPA = SIMP(statut='o',typ='TXM', + into=("HAMILTON","MAILLAGE","INITIALISATION") ), + + b_hamilton =BLOC(condition="(METHODE_PROPA=='HAMILTON')", + MODELE =SIMP(statut='o',typ=modele_sdaster), + RAYON =SIMP(statut='o',typ='R',), + METHODE =SIMP(statut='f',typ='TXM',into=("SIMPLEXE","UPWIND",),defaut="SIMPLEXE"), + FISSURE = SIMP(statut='o',typ=CO), + TABLE = SIMP(statut='o',typ=table_sdaster), + ), + + b_maillage =BLOC(condition="(METHODE_PROPA=='MAILLAGE')", + MA_STRUC = SIMP(statut='o',typ=maillage_sdaster), + MA_XFEM1 = SIMP(statut='o',typ=maillage_sdaster), + FISSURE1 = SIMP(statut='o',typ=fiss_xfem), + DTAN_ORIG = SIMP(statut='f',typ='R',max=3), + DTAN_EXTR = SIMP(statut='f',typ='R',max=3), + METHODE_POSTK = SIMP(statut='f',typ='I',into=(1,2,3),max=1), + ITERATION = SIMP(statut='o',typ='I',max=1), + HYPOTHESE = SIMP(statut='f',typ='TXM',into=("PLAN","NON_PLAN"),defaut="NON_PLAN"), + MA_XFEM2 = SIMP(statut='f',typ=CO), + MA_TOT2 = SIMP(statut='o',typ=CO), + TABLE = SIMP(statut='o',typ=table_sdaster), + ), + + b_init =BLOC(condition="(METHODE_PROPA=='INITIALISATION')", + MA_STRUC = SIMP(statut='o',typ=maillage_sdaster), + FORM_FISS = SIMP(statut='o',typ='TXM', into=("DEMI_DROITE","DEMI_PLAN"), ), + PFON = SIMP(statut='f',typ='R',max=3), + DTAN = SIMP(statut='o',typ='R',min=3,max=3), + POINT_ORIG = SIMP(statut='f',typ='R',min=3,max=3), + POINT_EXTR = SIMP(statut='f',typ='R',min=3,max=3), + NB_POINT_FOND = SIMP(statut='f',typ='I',), + regles=(PRESENT_PRESENT('POINT_ORIG','POINT_EXTR',), + UN_PARMI('PFON','POINT_ORIG'),), + MA_TOT2 = SIMP(statut='o',typ=CO), + MA_XFEM2 = SIMP(statut='f',typ=CO), + ), + + LOI_PROPA =FACT(statut='f',max=1, + LOI =SIMP(statut='o',typ='TXM',into=("PARIS",),defaut="PARIS"), + b_paris =BLOC( condition = "LOI=='PARIS'", + C = SIMP(statut='f',typ='R',), + M = SIMP(statut='o',typ='R',), + DA_MAX = SIMP(statut='f',typ='R',max=1), + regles=(UN_PARMI('C','DA_MAX'),), + ), + ), + + INFO = SIMP(statut='f',typ='I',defaut=1,into=(1,2)), +) + #& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -22861,7 +23526,7 @@ RECA_WEIBULL=OPER(nom="RECA_WEIBULL",op= 197,sd_prod=table_sdaster, ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut= 10 ), INFO =SIMP(statut='f',typ='I',defaut= 1,into=( 1 , 2 ,) ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -22926,8 +23591,11 @@ RECU_FONCTION=OPER(nom="RECU_FONCTION",op=90,sd_prod=recu_fonction_prod, LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster ), NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**'), b_prec = BLOC ( condition = "(INST != None) or (LIST_INST != None) or (FREQ != None) or (LIST_FREQ != None)", - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), INTERP_NUME =SIMP(statut='f',typ='TXM',into=("NON","LIN") ), ), ), @@ -23091,7 +23759,7 @@ 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 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -23118,8 +23786,11 @@ RECU_GENE=OPER(nom="RECU_GENE",op= 76,sd_prod=vect_asse_gene,reentrant='n', INST =SIMP(statut='o',typ='R' ), NOM_CHAM =SIMP(statut='f',typ='TXM',defaut="DEPL",into=("DEPL","VITE","ACCE") ), INTERPOL =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","LIN") ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF" ,into=("ABSOLU","RELATIF") ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU",),), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), ) ; #& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE # CONFIGURATION MANAGEMENT OF EDF VERSION @@ -23150,10 +23821,189 @@ RECU_TABLE=OPER(nom="RECU_TABLE",op= 174,sd_prod=table_sdaster, NOM_PARA =SIMP(statut='f',typ='TXM',max='**'), TITRE =SIMP(statut='f',typ='TXM',max='**'), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 08/08/2008 AUTEUR DESOZA T.DESOZA +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2007 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# RESPONSABLE PELLET J.PELLET + +RESOUDRE=OPER(nom="RESOUDRE",op=15,sd_prod=cham_no_sdaster,reentrant='f', + fr="Résolution par méthode directe un système d'équations linéaires préalablement factorisé par FACT_LDLT"+ + "ou Résolution d'un système linéaire par la méthode du gradient conjugué préconditionné", + UIinfo={"groupes":("Résolution",)}, + MATR =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_temp_r, + matr_asse_temp_c,matr_asse_pres_r,matr_asse_pres_c) ), + CHAM_NO =SIMP(statut='o',typ=cham_no_sdaster), + CHAM_CINE =SIMP(statut='f',typ=cham_no_sdaster), + + # mot-clé commun aux solveurs MUMPS, GCPC et PETSc: + RESI_RELA =SIMP(statut='f',typ='R',defaut=1.E-6), + + # mot-clé commun aux solveurs GCPC et PETSc: + NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), + MATR_PREC =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r ) ), + + # mots-clés pour solveur PETSc: + ALGORITHME =SIMP(statut='f',typ='TXM',into=("BCGS","BICG","CG","CR","GMRES","TFQMR",),defaut="CG" ), + + TITRE =SIMP(statut='f',typ='TXM',max='**'), + INFO =SIMP(statut='f',typ='I',into=(1,2) ), +) ; +#& MODIF COMMANDE DATE 21/10/2008 AUTEUR NISTOR I.NISTOR +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2008 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE 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 DEVESA G.DEVESA +def rest_cond_tran_prod(RESULTAT,**args ): + + if AsType(RESULTAT) == evol_noli : return dyna_trans + if AsType(RESULTAT) == dyna_trans : return dyna_trans + + raise AsException("type de concept resultat non prevu") + +REST_COND_TRAN=OPER(nom="REST_COND_TRAN",op= 78,sd_prod=rest_cond_tran_prod, + fr="Restituer dans la base physique des résultats issus d'un calcul" + +"non-lineaire avec projection modale ou d'un calcul transitoire linear" + +"avec condensation dynamique", + reentrant='n', + UIinfo={"groupes":("Matrices/vecteurs",)}, + regles=( + EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST','TOUT_INST'), + EXCLUS('NOEUD','GROUP_NO'), + EXCLUS('MAILLE','GROUP_MA'), + EXCLUS('MACR_ELEM_DYNA','BASE_MODALE'),), + RESULTAT =SIMP(statut='f',typ=(evol_noli,dyna_trans) ), + BASE_MODALE =SIMP(statut='f',typ=(base_modale,mode_meca) ), + NUME_DDL =SIMP(statut='f',typ=nume_ddl_sdaster ), + MACR_ELEM_DYNA =SIMP(statut='f',typ=macr_elem_dyna), + TOUT_INST =SIMP(statut='f',typ='TXM',into=("OUI",) ), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), + LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), + TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("ABSOLU","RELATIF") ), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), + INTERPOL =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","LIN") ), + NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=8,defaut="ACCE", + into=("DEPL","VITE","ACCE","ACCE_ABSOLU","EFGE_ELNO_DEPL","SIPO_ELNO_DEPL", + "SIGM_ELNO_DEPL","FORC_NODA",) ), + TOUT_CHAM =SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + TITRE =SIMP(statut='f',typ='TXM',max='**' ), +) ; +#& MODIF COMMANDE DATE 21/10/2008 AUTEUR NISTOR I.NISTOR +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2008 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== + +# RESPONSABLE BOYERE E.BOYERE + +def rest_gene_phys_prod(RESU_GENE,**args ): + if AsType(RESU_GENE) == tran_gene : return dyna_trans + if AsType(RESU_GENE) == mode_gene : return mode_meca + if AsType(RESU_GENE) == harm_gene : return dyna_harmo + + raise AsException("type de concept resultat non prevu") + +REST_GENE_PHYS=OPER(nom="REST_GENE_PHYS",op= 75,sd_prod=rest_gene_phys_prod, + fr="Restituer dans la base physique des résultats en coordonnées généralisées", + reentrant='n', + UIinfo={"groupes":("Matrices/vecteurs",)}, + regles=( + EXCLUS('INST','LIST_INST','TOUT_INST'), + EXCLUS('TOUT_ORDRE','NUME_ORDRE','NUME_MODE'), + EXCLUS('FREQ','LIST_FREQ'), + EXCLUS('MULT_APPUI','CORR_STAT'), + EXCLUS('MULT_APPUI','NOEUD','GROUP_NO'), + EXCLUS('CORR_STAT','NOEUD','GROUP_NO'), + EXCLUS('NOEUD','GROUP_NO'), + EXCLUS('MAILLE','GROUP_MA'), + PRESENT_PRESENT('ACCE_MONO_APPUI','DIRECTION'),), + RESU_GENE =SIMP(statut='f',typ=(tran_gene,mode_gene,harm_gene) ), + MODE_MECA =SIMP(statut='f',typ=mode_meca ), + BASE_MODALE =SIMP(statut='f',typ=(base_modale,mode_meca) ), + NUME_DDL =SIMP(statut='f',typ=nume_ddl_sdaster ), + TOUT_INST =SIMP(statut='f',typ='TXM',into=("OUI",) ), + INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), + LIST_INST =SIMP(statut='f',typ=listr8_sdaster ), + TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), + NUME_MODE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), + FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), + LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster ), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("ABSOLU","RELATIF") ), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), + INTERPOL =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","LIN") ), + MULT_APPUI =SIMP(statut='f',typ='TXM',into=("OUI",) ), + CORR_STAT =SIMP(statut='f',typ='TXM',into=("OUI",) ), + NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=8,defaut="ACCE", + into=("DEPL","VITE","ACCE","ACCE_ABSOLU","EFGE_ELNO_DEPL","SIPO_ELNO_DEPL", + "SIGM_ELNO_DEPL","FORC_NODA",) ), + TOUT_CHAM =SIMP(statut='f',typ='TXM',into=("OUI",) ), + GROUP_NO =SIMP(statut='f',typ=grno,validators=NoRepeat(),max='**'), + NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), + GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), + MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), + ACCE_MONO_APPUI =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), + DIRECTION =SIMP(statut='f',typ='R',min=3,max=3 ), + TITRE =SIMP(statut='f',typ='TXM',max='**' ), +) ; +#& MODIF COMMANDE DATE 21/10/2008 AUTEUR NISTOR I.NISTOR # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== -# COPYRIGHT (C) 1991 - 2007 EDF R&D WWW.CODE-ASTER.ORG +# COPYRIGHT (C) 1991 - 2008 EDF R&D WWW.CODE-ASTER.ORG # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR @@ -23168,85 +24018,37 @@ RECU_TABLE=OPER(nom="RECU_TABLE",op= 174,sd_prod=table_sdaster, # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== -# RESPONSABLE PELLET J.PELLET - -RESOUDRE=OPER(nom="RESOUDRE",op=15,sd_prod=cham_no_sdaster,reentrant='f', - fr="Résolution par méthode directe un système d'équations linéaires préalablement factorisé par FACT_LDLT"+ - "ou Résolution d'un système linéaire par la méthode du gradient conjugué préconditionné", - UIinfo={"groupes":("Résolution",)}, - MATR =SIMP(statut='o',typ=(matr_asse_depl_r,matr_asse_depl_c,matr_asse_temp_r, - matr_asse_temp_c,matr_asse_pres_r,matr_asse_pres_c) ), - CHAM_NO =SIMP(statut='o',typ=cham_no_sdaster), - CHAM_CINE =SIMP(statut='f',typ=cham_no_sdaster), - - # mot-clé commun aux solveurs MUMPS et GCPC: - RESI_RELA =SIMP(statut='f',typ='R',defaut=1.E-6), - # mots-clés pour solver GCPC: - MATR_PREC =SIMP(statut='f',typ=(matr_asse_depl_r,matr_asse_temp_r,matr_asse_pres_r ) ), - NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), - REPRISE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), - - TITRE =SIMP(statut='f',typ='TXM',max='**'), - INFO =SIMP(statut='f',typ='I',into=(1,2) ), -) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE -# CONFIGURATION MANAGEMENT OF EDF VERSION -# ====================================================================== -# COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. -# -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. -# -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. -# ====================================================================== -# RESPONSABLE BOYERE E.BOYERE -def rest_base_phys_prod(RESU_GENE,RESU_PHYS,RESULTAT,**args ): +# RESPONSABLE CORUS M.CORUS +def rest_sous_struc_prod(RESU_GENE,RESULTAT,**args ): if AsType(RESU_GENE) == tran_gene : return dyna_trans if AsType(RESU_GENE) == mode_gene : return mode_meca if AsType(RESU_GENE) == mode_cycl : return mode_meca if AsType(RESU_GENE) == harm_gene : return dyna_harmo - if AsType(RESU_PHYS) == evol_noli : return dyna_trans - if AsType(RESULTAT) == evol_elas : return evol_elas if AsType(RESULTAT) == evol_noli : return evol_noli - if AsType(RESULTAT) == evol_char : return evol_char if AsType(RESULTAT) == dyna_trans : return dyna_trans if AsType(RESULTAT) == mode_meca : return mode_meca - if AsType(RESULTAT) == mode_stat_depl : return mode_stat_depl if AsType(RESULTAT) == base_modale : return base_modale raise AsException("type de concept resultat non prevu") -REST_BASE_PHYS=OPER(nom="REST_BASE_PHYS",op= 75,sd_prod=rest_base_phys_prod, - fr="Restituer dans la base physique des résultats en coordonnées généralisées", +REST_SOUS_STRUC=OPER(nom="REST_SOUS_STRUC",op= 77,sd_prod=rest_sous_struc_prod, + fr="Restituer dans la base physique des résultats obtenus par sous-structuration", reentrant='n', UIinfo={"groupes":("Matrices/vecteurs",)}, - regles=(UN_PARMI('RESU_GENE','RESU_PHYS','RESULTAT'), + regles=(UN_PARMI('RESU_GENE','RESULTAT'), EXCLUS('TOUT_ORDRE','NUME_ORDRE','INST','LIST_INST','TOUT_INST'), EXCLUS('TOUT_INST','NUME_ORDRE','INST','LIST_INST','TOUT_ORDRE'), # Doc U à revoir - EXCLUS('MULT_APPUI','CORR_STAT'), - EXCLUS('MULT_APPUI','NOEUD','GROUP_NO'), - EXCLUS('CORR_STAT','NOEUD','GROUP_NO'), - EXCLUS('NOEUD','GROUP_NO'), - EXCLUS('MACR_ELEM_DYNA','BASE_MODALE'), + EXCLUS('NOEUD','GROUP_NO'), + EXCLUS('MAILLE','GROUP_MA'), PRESENT_PRESENT('RESULTAT','SQUELETTE'), - PRESENT_PRESENT('ACCE_MONO_APPUI','DIRECTION'),), - RESULTAT =SIMP(statut='f',typ=(evol_elas,evol_noli,dyna_trans,evol_char, - mode_meca,mode_stat_depl,base_modale) ), - + + ), + RESULTAT =SIMP(statut='f',typ=(evol_noli,dyna_trans, + mode_meca,base_modale) ), RESU_GENE =SIMP(statut='f',typ=(tran_gene,mode_gene,mode_cycl,harm_gene) ), - RESU_PHYS =SIMP(statut='f',typ=evol_noli ), BASE_MODALE =SIMP(statut='f',typ=(base_modale,mode_meca) ), NUME_DDL =SIMP(statut='f',typ=nume_ddl_sdaster ), - MACR_ELEM_DYNA =SIMP(statut='f',typ=macr_elem_dyna), MODE_MECA =SIMP(statut='f',typ=mode_meca ), TOUT_ORDRE =SIMP(statut='f',typ='TXM',into=("OUI",) ), NUME_ORDRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max='**' ), @@ -23257,10 +24059,11 @@ REST_BASE_PHYS=OPER(nom="REST_BASE_PHYS",op= 75,sd_prod=rest_base_phys_prod, FREQ =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), LIST_FREQ =SIMP(statut='f',typ=listr8_sdaster ), CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("ABSOLU","RELATIF") ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-3 ), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), INTERPOL =SIMP(statut='f',typ='TXM',defaut="NON",into=("NON","LIN") ), - MULT_APPUI =SIMP(statut='f',typ='TXM',into=("OUI",) ), - CORR_STAT =SIMP(statut='f',typ='TXM',into=("OUI",) ), NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=8,defaut="ACCE", into=("DEPL","VITE","ACCE","ACCE_ABSOLU","EFGE_ELNO_DEPL","SIPO_ELNO_DEPL", "SIGM_ELNO_DEPL","FORC_NODA",) ), @@ -23269,10 +24072,6 @@ REST_BASE_PHYS=OPER(nom="REST_BASE_PHYS",op= 75,sd_prod=rest_base_phys_prod, NOEUD =SIMP(statut='f',typ=no ,validators=NoRepeat(),max='**'), GROUP_MA =SIMP(statut='f',typ=grma,validators=NoRepeat(),max='**'), MAILLE =SIMP(statut='f',typ=ma ,validators=NoRepeat(),max='**'), - - ACCE_MONO_APPUI =SIMP(statut='f',typ=(fonction_sdaster,nappe_sdaster,formule)), - DIRECTION =SIMP(statut='f',typ='R',min=3,max=3 ), - CYCLIQUE =FACT(statut='f',max='**', NB_SECTEUR =SIMP(statut='f',typ='I',validators=NoRepeat(),max=1 ), NUME_DIAMETRE =SIMP(statut='f',typ='I',validators=NoRepeat(),max=1 ), @@ -23331,7 +24130,46 @@ REST_SPEC_PHYS=OPER(nom="REST_SPEC_PHYS",op= 148,sd_prod=table_fonction, into=("DIAG_TOUT","DIAG_DIAG","TOUT_TOUT","TOUT_DIAG") ), TITRE =SIMP(statut='f',typ='TXM',max='**' ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 06/10/2008 AUTEUR DEVESA G.DEVESA +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2008 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE 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 DEVESA G.DEVESA +def rest_spec_temp_prod(RESU_GENE,RESULTAT,**args): + if AsType(RESULTAT) == dyna_harmo : return dyna_trans + if AsType(RESU_GENE) == harm_gene : return tran_gene + if AsType(RESULTAT) == dyna_trans : return dyna_harmo + if AsType(RESU_GENE) == tran_gene : return harm_gene + raise AsException("type de concept resultat non prevu") + + +REST_SPEC_TEMP=OPER(nom="REST_SPEC_TEMP",op=181,sd_prod=rest_spec_temp_prod, + fr="Transformée de Fourier d'un résultat", + reentrant='n', + UIinfo={"groupes":("Matrices/vecteurs",)}, + regles=UN_PARMI('RESU_GENE','RESULTAT'), + RESU_GENE =SIMP(statut='f',typ=(harm_gene,tran_gene,) ), + RESULTAT =SIMP(statut='f',typ=(dyna_harmo,dyna_trans,) ), + METHODE =SIMP(statut='f',typ='TXM',defaut="PROL_ZERO",into=("PROL_ZERO","TRONCATURE") ), + SYMETRIE =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), + TOUT_CHAM =SIMP(statut='f',typ='TXM',into=("OUI",)), + NOM_CHAM =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=3,into=("DEPL","VITE","ACCE") ), +); +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2006 EDF R&D WWW.CODE-ASTER.ORG @@ -23365,10 +24203,6 @@ SIMU_POINT_MAT=MACRO(nom="SIMU_POINT_MAT", op=simu_point_mat_ops,sd_prod=table_s RELATION =SIMP(statut='o',typ='TXM',defaut="ELAS", into=("ELAS","ELAS_VMIS_LINE","ELAS_VMIS_TRAC", "ELAS_POUTRE_GR","CABLE","ELAS_HYPER")), - ELAS =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_VMIS_TRAC =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_VMIS_LINE =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_HYPER =SIMP(statut='c',typ='I',defaut=1,into=(1,)), DEFORMATION =SIMP(statut='f',typ='TXM',defaut="PETIT" ,into=("PETIT","GREEN","GREEN_GR",) ), ), MATER =SIMP(statut='o',typ=mater_sdaster,max=30), @@ -23378,7 +24212,7 @@ SIMU_POINT_MAT=MACRO(nom="SIMU_POINT_MAT", op=simu_point_mat_ops,sd_prod=table_s 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 ), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,), # DEBUT DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS SUBD_METHODE =SIMP( statut='f',typ='TXM', into =("AUCUNE","UNIFORME","EXTRAPOLE"), @@ -23456,7 +24290,7 @@ SIMU_POINT_MAT=MACRO(nom="SIMU_POINT_MAT", op=simu_point_mat_ops,sd_prod=table_s LIST_INST =SIMP(statut='f',typ=(listr8_sdaster) ), INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), PAS_ARCH =SIMP(statut='f',typ='I' ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6), 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",)), @@ -23578,7 +24412,7 @@ STANLEY=MACRO(nom="STANLEY",op=stanley_ops,sd_prod=None, fr="Unité logique définissant le fichier (fort.N) dans lequel on écrit les md5"), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 18/11/2008 AUTEUR ABBAS M.ABBAS # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -23597,6 +24431,7 @@ STANLEY=MACRO(nom="STANLEY",op=stanley_ops,sd_prod=None, # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. # ====================================================================== # RESPONSABLE ABBAS M.ABBAS +# STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, fr="Calcul de l'évolution mécanique ou thermo-hydro-mécanique couplée, en quasi-statique," +" d'une structure en non linéaire", @@ -23630,13 +24465,7 @@ STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, RELATION =SIMP(statut='o',typ='TXM',defaut="ELAS", into=("ELAS","ELAS_VMIS_LINE","ELAS_VMIS_TRAC","ELAS_VMIS_PUIS", "ELAS_POUTRE_GR","CABLE","ELAS_HYPER")), - ELAS =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_VMIS_TRAC =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_VMIS_LINE =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_VMIS_PUIS =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_HYPER =SIMP(statut='c',typ='I',defaut=1,into=(1,)), - ELAS_POUTRE_GR =SIMP(statut='c',typ='I',defaut=3,into=(3,)), - CABLE =SIMP(statut='c',typ='I',defaut=1,into=(1,)), + DEFORMATION =SIMP(statut='f',typ='TXM',defaut="PETIT" ,into=("PETIT","GREEN","GREEN_GR",) ), regles=(PRESENT_ABSENT('TOUT','GROUP_MA','MAILLE'),), TOUT =SIMP(statut='f',typ='TXM',into=("OUI",) ), @@ -23656,8 +24485,11 @@ STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, 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") ), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), NUME_DIDI =SIMP(statut='f',typ='I'), INST_ETAT_INIT =SIMP(statut='f',typ='R'), ),), @@ -23674,8 +24506,11 @@ STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, 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") ), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), NUME_DIDI =SIMP(statut='f',typ='I'), INST_ETAT_INIT =SIMP(statut='f',typ='R'), ),), @@ -23683,8 +24518,6 @@ STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, regles=(EXCLUS('NUME_INST_INIT','INST_INIT'), EXCLUS('NUME_INST_FIN','INST_FIN'),), LIST_INST =SIMP(statut='o',typ=listr8_sdaster), - EVOLUTION =SIMP(statut='f',typ='TXM',defaut="CHRONOLOGIQUE", - into=("CHRONOLOGIQUE","RETROGRADE","SANS",) ), NUME_INST_INIT =SIMP(statut='f',typ='I'), INST_INIT =SIMP(statut='f',typ='R'), NUME_INST_FIN =SIMP(statut='f',typ='I'), @@ -23692,11 +24525,11 @@ STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, ERRE_TEMPS =SIMP(statut='f',typ='TXM',into=("OUI","NON"),defaut="NON", fr="Adaptation temporelle pour les modélisations HM instationnaires", ang="Time adaptation for unstationary HM models"), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), + PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-6 ), # DEBUT DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS SUBD_METHODE =SIMP( statut='f',typ='TXM', into =("AUCUNE","UNIFORME","EXTRAPOLE"), - defaut="AUCUNE", + defaut="UNIFORME", fr="Méthode de subdivision des pas de temps en cas de non-convergence" ), b_subd_unif=BLOC(condition = "SUBD_METHODE == 'UNIFORME'", @@ -23705,7 +24538,7 @@ STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, fr="Coefficient multiplicateur de la 1ère subdivision"), SUBD_PAS =SIMP(statut='f',typ='I',defaut=4,val_min=2, fr="Nombre de subdivision d'un pas de temps"), - SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, + SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2,defaut=3, fr="Nombre maximum de niveau de subdivision d'un pas de temps"), SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, fr="Pas de temps en dessous duquel on ne subdivise plus"), @@ -23730,24 +24563,20 @@ STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, fr="% itération autorisée en plus"), ), # FIN DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS - OPTI_LIST_INST =SIMP(statut='f',typ='TXM',into=("INCR_MAXI",),), - NOM_CHAM =SIMP(statut='f',typ='TXM',), - NOM_CMP =SIMP(statut='f',typ='TXM',), - VALE =SIMP(statut='f',typ='R'), ), NEWTON =FACT(statut='d', - REAC_INCR =SIMP(statut='f',typ='I',defaut= 1 ), + REAC_INCR =SIMP(statut='f',typ='I',defaut= 1,val_min=0), PREDICTION =SIMP(statut='f',typ='TXM',into=("DEPL_CALCULE","TANGENTE","ELASTIQUE","EXTRAPOL") ), MATRICE =SIMP(statut='f',typ='TXM',defaut="TANGENTE",into=("TANGENTE","ELASTIQUE") ), - PAS_MINI_ELAS =SIMP(statut='f',typ='R',defaut=0.0E+0), - REAC_ITER =SIMP(statut='f',typ='I',defaut=0), - REAC_ITER_ELAS =SIMP(statut='f',typ='I',defaut=0), + PAS_MINI_ELAS =SIMP(statut='f',typ='R',val_min=0.0), + REAC_ITER =SIMP(statut='f',typ='I',defaut=0,val_min=0), + REAC_ITER_ELAS =SIMP(statut='f',typ='I',defaut=0,val_min=0), EVOL_NOLI =SIMP(statut='f',typ=evol_noli), ), RECH_LINEAIRE =FACT(statut='f', METHODE =SIMP(statut='f',typ='TXM',defaut="CORDE",into=("CORDE","MIXTE") ), RESI_LINE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-1 ), - ITER_LINE_MAXI =SIMP(statut='f',typ='I',defaut= 3), + ITER_LINE_MAXI =SIMP(statut='f',typ='I',defaut= 3,val_max=999), 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), @@ -23775,29 +24604,34 @@ STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, regles=(PRESENT_ABSENT('RESI_REFE_RELA','RESI_GLOB_MAXI','RESI_GLOB_RELA'),), b_refe_rela =BLOC(condition = "RESI_REFE_RELA != None", regles=(AU_MOINS_UN('SIGM_REFE','EPSI_REFE','FLUX_THER_REFE','FORC_REFE', - 'FLUX_HYD1_REFE','FLUX_HYD2_REFE','VARI_REFE'),), + 'FLUX_HYD1_REFE','FLUX_HYD2_REFE','VARI_REFE','DEPL_REFE'),), FORC_REFE =SIMP(statut='f',typ='R',min=2,max=2, fr="Force et Moment de référence pour les éléments de structure."), SIGM_REFE =SIMP(statut='f',typ='R'), + DEPL_REFE =SIMP(statut='f',typ='R'), EPSI_REFE =SIMP(statut='f',typ='R'), FLUX_THER_REFE =SIMP(statut='f',typ='R'), FLUX_HYD1_REFE =SIMP(statut='f',typ='R'), FLUX_HYD2_REFE =SIMP(statut='f',typ='R'), VARI_REFE =SIMP(statut='f',typ='R'), ), - - - RESI_REFE_RELA =SIMP(statut='f',typ='R'), RESI_GLOB_MAXI =SIMP(statut='f',typ='R'), RESI_GLOB_RELA =SIMP(statut='f',typ='R'), ITER_GLOB_MAXI =SIMP(statut='f',typ='I',defaut=10), ITER_GLOB_ELAS =SIMP(statut='f',typ='I',defaut=25), + TYPE =SIMP(statut='f',typ='TXM',defaut="PIC",into=("PIC","PLATEAU")), + b_plateau =BLOC(condition = "TYPE == 'PLATEAU' ", + + PLATEAU_ITER =SIMP(statut='f',typ='I',defaut=3, val_min =2), + PLATEAU_RELA =SIMP(statut='f',typ='R',defaut=1E-3), + ), + + ARRET =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), ), SOLVEUR =FACT(statut='d', METHODE=SIMP(statut='f',typ='TXM',defaut="MULT_FRONT",into=("MULT_FRONT","LDLT","GCPC","MUMPS","FETI","PETSC") ), - 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") ), ), @@ -23828,14 +24662,8 @@ STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, PARTITION =SIMP(statut='f',typ=sd_feti_sdaster), CHARGE_PROC0_MA =SIMP(statut='f',typ='I',defaut=100,min=0,max=100), CHARGE_PROC0_SD =SIMP(statut='f',typ='I',defaut=0,min=0), + OUT_OF_CORE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), ), - b_petsc =BLOC(condition = "METHODE == 'PETSC' ",fr="Paramètres de la méthode PETSC", - VARIANTE =SIMP(statut='f',typ='TXM',into=("GMRES","BCGS","CR","CG","BICG","CHEBYCHEV",),defaut="GMRES" ), - PRE_COND =SIMP(statut='f',typ='TXM',into=("ILU","SOR","BJACOBI"),defaut="ILU" ), - RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), - RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-8), - NMAX_ITER =SIMP(statut='f',typ='I',defaut= -1 ), - ), b_feti =BLOC(condition = "METHODE == 'FETI' ",fr="Paramètres de la méthode FETI 1", PARTITION =SIMP(statut='o',typ=sd_feti_sdaster), RENUM =SIMP(statut='f',typ='TXM',defaut="METIS",into=("MD","MDA","METIS") ), @@ -23854,6 +24682,18 @@ STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, NB_SD_PROC0 =SIMP(statut='f',typ='I',defaut=0,val_min=0), ACCELERATION_SM =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON") ), ), + b_petsc =BLOC(condition = "METHODE == 'PETSC' ",fr="Paramètres de la méthode PETSC", + ALGORITHME =SIMP(statut='f',typ='TXM',into=("BCGS","BICG","CG","CR","GMRES","TFQMR",),defaut="CG" ), + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC","JACOBI","SOR"),defaut="LDLT_INC" ), + b_petsc_ilu =BLOC(condition = "PRE_COND == 'LDLT_INC' ", + NIVE_REMPLISSAGE = SIMP(statut='f',typ='I',defaut= 0 ), + REMPLISSAGE = SIMP(statut='f',typ='R',defaut= 1.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= -1 ), + ), + + SYME =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), ), ARCHIVAGE =FACT(statut='f', @@ -23862,7 +24702,7 @@ STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, LIST_INST =SIMP(statut='f',typ=(listr8_sdaster) ), INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), PAS_ARCH =SIMP(statut='f',typ='I' ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-6), 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",)), @@ -23898,8 +24738,11 @@ STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, LIST_INST =SIMP(statut='f',typ=listr8_sdaster), PAS_OBSE =SIMP(statut='f',typ='I'), LIST_ARCH =SIMP(statut='f',typ=listis_sdaster), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),),), ), AFFICHAGE = FACT(statut='f',max=16, @@ -23922,7 +24765,7 @@ STAT_NON_LINE=OPER(nom="STAT_NON_LINE",op=70,sd_prod=evol_noli, "LAGR_ECAR","LAGR_INCR","LAGR_ITER", "MATR_ASSE", "ITER_DEBO", - "CTCD_ITER","CTCD_INFO","CTCD_GEOM","CTCD_NOEU", + "CTCD_ITER","CTCD_GEOM","CTCD_NOEU", "CTCC_GEOM","CTCC_FROT","CTCC_CONT", "SUIV_1","SUIV_2","SUIV_3","SUIV_4","ITER_FETI", ), @@ -24315,7 +25158,55 @@ TEST_TABLE=PROC(nom="TEST_TABLE",op= 177, INFO =SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 05/09/2008 AUTEUR COURTOIS M.COURTOIS +# CONFIGURATION MANAGEMENT OF EDF VERSION +# ====================================================================== +# COPYRIGHT (C) 1991 - 2008 EDF R&D WWW.CODE-ASTER.ORG +# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY +# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY +# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR +# (AT YOUR OPTION) ANY LATER VERSION. +# +# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT +# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF +# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU +# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# +# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE +# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, +# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# ====================================================================== +# -*- coding: iso-8859-1 -*- +# RESPONSABLE COURTOIS M.COURTOIS + + +from Macro.test_temps_ops import test_temps_ops + +TEST_TEMPS=MACRO(nom="TEST_TEMPS",op=test_temps_ops, sd_prod=None, + fr="Permet de vérifier le temps passé dans les commandes", + reentrant='n', + + RESU = FACT(statut='o',max='**', + COMMANDE = SIMP(statut='o', typ='TXM', + fr="Nom de la commande testee"), + NUME_ORDRE = SIMP(statut='f', typ='I', defaut=1, val_min=1, + fr="Numero de l'occurrence de la commande testee"), + MACHINE = SIMP(statut='o', typ='TXM', max='**', + fr="Liste des machines dont on a la référence"), + VALE = SIMP(statut='o', typ='R', max='**', + fr="Temps CPU sur les machines listees en secondes"), + CRITERE = SIMP(statut='f', typ='TXM', defaut='RELATIF', into=('ABSOLU', 'RELATIF')), + PRECISION = SIMP(statut='f', typ='R', defaut=0.01, max='**', + fr="Ecart admissible pour chaque machine"), + TYPE_TEST = SIMP(statut='o', typ='TXM', into=('USER', 'SYSTEM', 'USER+SYS', 'ELAPSED'), + defaut='USER+SYS', + fr="Valeur testee parmi 'USER', 'SYSTEM', 'USER+SYS', 'ELAPSED'"), + ), + + INFO = SIMP(statut='f',typ='I',defaut=1,into=(1,2) ), +) + +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -24349,13 +25240,11 @@ THER_LINEAIRE=OPER(nom="THER_LINEAIRE",op=25,sd_prod=evol_ther,reentrant='f', regles=(EXCLUS('NUME_INST_INIT','INST_INIT'), EXCLUS('NUME_INST_FIN','INST_FIN'),), LIST_INST =SIMP(statut='o',typ=listr8_sdaster), - EVOLUTION =SIMP(statut='f',typ='TXM',defaut="CHRONOLOGIQUE", - into=("CHRONOLOGIQUE","RETROGRADE","SANS",) ), NUME_INST_INIT =SIMP(statut='f',typ='I'), INST_INIT =SIMP(statut='f',typ='R'), NUME_INST_FIN =SIMP(statut='f',typ='I'), INST_FIN =SIMP(statut='f',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), + PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-6 ), ), ETAT_INIT =FACT(statut='f', regles=(EXCLUS('STATIONNAIRE','EVOL_THER','CHAM_NO','VALE'),), @@ -24365,8 +25254,11 @@ THER_LINEAIRE=OPER(nom="THER_LINEAIRE",op=25,sd_prod=evol_ther,reentrant='f', VALE =SIMP(statut='f',typ='R'), 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") ), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), INST_ETAT_INIT =SIMP(statut='f',typ='R'), ), SENSIBILITE =SIMP(statut='f',typ=(para_sensi,theta_geom),validators=NoRepeat(),max='**', @@ -24411,13 +25303,18 @@ THER_LINEAIRE=OPER(nom="THER_LINEAIRE",op=25,sd_prod=evol_ther,reentrant='f', PARTITION =SIMP(statut='f',typ=sd_feti_sdaster), CHARGE_PROC0_MA =SIMP(statut='f',typ='I',defaut=100,min=0,max=100), CHARGE_PROC0_SD =SIMP(statut='f',typ='I',defaut=0,min=0), + OUT_OF_CORE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), ), b_petsc =BLOC(condition = "METHODE == 'PETSC' ",fr="Paramètres de la méthode PETSC", - VARIANTE =SIMP(statut='f',typ='TXM',into=("GMRES","BCGS","CR","CG","BICG","CHEBYCHEV",),defaut="GMRES" ), - PRE_COND =SIMP(statut='f',typ='TXM',into=("ILU","SOR","BJACOBI"),defaut="ILU" ), + ALGORITHME =SIMP(statut='f',typ='TXM',into=("BCGS","BICG","CG","CR","GMRES","TFQMR",),defaut="CG" ), + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC","JACOBI","SOR"),defaut="LDLT_INC" ), + b_petsc_ilu =BLOC(condition = "PRE_COND == 'LDLT_INC' ", + NIVE_REMPLISSAGE = SIMP(statut='f',typ='I',defaut= 0 ), + REMPLISSAGE = SIMP(statut='f',typ='R',defaut= 1.0), + ), RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), - RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-8), + RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6), NMAX_ITER =SIMP(statut='f',typ='I',defaut= -1 ), ), ), @@ -24428,7 +25325,7 @@ THER_LINEAIRE=OPER(nom="THER_LINEAIRE",op=25,sd_prod=evol_ther,reentrant='f', LIST_INST =SIMP(statut='f',typ=(listr8_sdaster) ), INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), PAS_ARCH =SIMP(statut='f',typ='I' ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-6), 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",)), @@ -24438,7 +25335,7 @@ THER_LINEAIRE=OPER(nom="THER_LINEAIRE",op=25,sd_prod=evol_ther,reentrant='f', TITRE =SIMP(statut='f',typ='TXM',max='**'), INFO =SIMP(statut='f',typ='I',into=(1,2)), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -24488,50 +25385,11 @@ THER_NON_LINE=OPER(nom="THER_NON_LINE",op= 186,sd_prod=evol_ther,reentrant='f', regles=(EXCLUS('NUME_INST_INIT','INST_INIT'), EXCLUS('NUME_INST_FIN','INST_FIN'),), LIST_INST =SIMP(statut='o',typ=listr8_sdaster), - EVOLUTION =SIMP(statut='f',typ='TXM',defaut="CHRONOLOGIQUE", - into=("CHRONOLOGIQUE","RETROGRADE","SANS",) ), NUME_INST_INIT =SIMP(statut='f',typ='I'), INST_INIT =SIMP(statut='f',typ='R'), NUME_INST_FIN =SIMP(statut='f',typ='I'), INST_FIN =SIMP(statut='f',typ='R'), - PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-3 ), - # DEBUT DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS - SUBD_METHODE =SIMP( statut='f',typ='TXM', - into =("AUCUNE","UNIFORME","EXTRAPOLE"), - defaut="AUCUNE", - fr="Méthode de subdivision des pas de temps en cas de non-convergence" - ), - b_subd_unif=BLOC(condition = "SUBD_METHODE == 'UNIFORME'", - regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), - SUBD_COEF_PAS_1=SIMP(statut='f',typ='R',defaut=1.0,val_min=0.0, - fr="Coefficient multiplicateur de la 1ère subdivision"), - SUBD_PAS =SIMP(statut='f',typ='I',defaut=4,val_min=2, - fr="Nombre de subdivision d'un pas de temps"), - SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, - fr="Nombre maximum de niveau de subdivision d'un pas de temps"), - SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, - fr="Pas de temps en dessous duquel on ne subdivise plus"), - ), - b_subd_extr=BLOC(condition = "SUBD_METHODE == 'EXTRAPOLE'", - regles=(AU_MOINS_UN('SUBD_NIVEAU','SUBD_PAS_MINI'),), - SUBD_OPTION =SIMP(statut='f',typ='TXM', - into =("IGNORE_PREMIERES","GARDE_DERNIERES",), - defaut="IGNORE_PREMIERES", - fr="Technique d'extrapolation : les 1ere itérations sont ignorées ou les dernières sont gardées"), - SUBD_ITER_IGNO =SIMP(statut='c',typ='I',defaut=3,val_min=0, - fr="Les n premières itérations sont ignorées pour l'extrapolation"), - SUBD_ITER_FIN =SIMP(statut='c',typ='I',defaut=8,val_min=3, - fr="Seules les n dernières itérations sont prises pour l'extrapolation"), - SUBD_PAS =SIMP(statut='c',typ='I',defaut=4,val_min=2, - fr="Nombre de subdivision d'un pas de temps en cas divergence"), - SUBD_NIVEAU=SIMP(statut='f',typ='I',val_min=2, - fr="Nombre maximum de niveau de subdivision d'un pas de temps"), - SUBD_PAS_MINI=SIMP(statut='f',typ='R',val_min=0.0, - fr="Pas de temps en dessous duquel on ne subdivise plus"), - SUBD_ITER_PLUS =SIMP(statut='c',typ='I',defaut=50,val_min=20, - fr="% itération autorisée en plus"), - ), - # FIN DE BLOC POUR LA SUBDIVISION DES PAS DE TEMPS + PRECISION =SIMP(statut='f',typ='R',defaut=1.0E-6 ), ), ETAT_INIT =FACT(statut='f', regles=(EXCLUS('STATIONNAIRE','EVOL_THER','CHAM_NO','VALE'),), @@ -24541,12 +25399,15 @@ THER_NON_LINE=OPER(nom="THER_NON_LINE",op= 186,sd_prod=evol_ther,reentrant='f', VALE =SIMP(statut='f',typ='R'), 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") ), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),), INST_ETAT_INIT =SIMP(statut='f',typ='R'), ), NEWTON =FACT(statut='d', - REAC_ITER =SIMP(statut='f',typ='I',defaut= 0 ), + REAC_ITER =SIMP(statut='f',typ='I',defaut= 0 ,val_min=0), RESI_LINE_RELA =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), ITER_LINE_MAXI =SIMP(statut='f',typ='I',defaut= 0 ), ), @@ -24591,13 +25452,18 @@ THER_NON_LINE=OPER(nom="THER_NON_LINE",op= 186,sd_prod=evol_ther,reentrant='f', PARTITION =SIMP(statut='f',typ=sd_feti_sdaster), CHARGE_PROC0_MA =SIMP(statut='f',typ='I',defaut=100,min=0,max=100), CHARGE_PROC0_SD =SIMP(statut='f',typ='I',defaut=0,min=0), + OUT_OF_CORE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), ), b_petsc =BLOC(condition = "METHODE == 'PETSC' ",fr="Paramètres de la méthode PETSC", - VARIANTE =SIMP(statut='f',typ='TXM',into=("GMRES","BCGS","CR","CG","BICG","CHEBYCHEV",),defaut="GMRES" ), - PRE_COND =SIMP(statut='f',typ='TXM',into=("ILU","SOR","BJACOBI"),defaut="ILU" ), + ALGORITHME =SIMP(statut='f',typ='TXM',into=("BCGS","BICG","CG","CR","GMRES","TFQMR",),defaut="CG" ), + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC","JACOBI","SOR"),defaut="LDLT_INC" ), + b_petsc_ilu =BLOC(condition = "PRE_COND == 'LDLT_INC' ", + NIVE_REMPLISSAGE = SIMP(statut='f',typ='I',defaut= 0 ), + REMPLISSAGE = SIMP(statut='f',typ='R',defaut= 1.0), + ), RENUM =SIMP(statut='f',typ='TXM',defaut="RCMK",into=("SANS","RCMK") ), - RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-8), + RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6), NMAX_ITER =SIMP(statut='f',typ='I',defaut= -1 ), ), SYME =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON",) ), @@ -24609,7 +25475,7 @@ THER_NON_LINE=OPER(nom="THER_NON_LINE",op= 186,sd_prod=evol_ther,reentrant='f', LIST_INST =SIMP(statut='f',typ=(listr8_sdaster) ), INST =SIMP(statut='f',typ='R',validators=NoRepeat(),max='**' ), PAS_ARCH =SIMP(statut='f',typ='I' ), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3), + PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-6), 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",)), @@ -24628,8 +25494,11 @@ THER_NON_LINE=OPER(nom="THER_NON_LINE",op= 186,sd_prod=evol_ther,reentrant='f', LIST_INST =SIMP(statut='f',typ=listr8_sdaster), PAS_OBSE =SIMP(statut='f',typ='I'), LIST_ARCH =SIMP(statut='f',typ=listis_sdaster), - PRECISION =SIMP(statut='f',typ='R',defaut= 1.0E-3 ), - CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ),), + CRITERE =SIMP(statut='f',typ='TXM',defaut="RELATIF",into=("RELATIF","ABSOLU") ), + b_prec_rela=BLOC(condition="(CRITERE=='RELATIF')", + PRECISION =SIMP(statut='f',typ='R',defaut= 1.E-6,),), + b_prec_abso=BLOC(condition="(CRITERE=='ABSOLU')", + PRECISION =SIMP(statut='o',typ='R',),),), ), TITRE =SIMP(statut='f',typ='TXM',max='**'), OPTION =SIMP(statut='f',typ='TXM',validators=NoRepeat(),max=2, @@ -24637,7 +25506,7 @@ THER_NON_LINE=OPER(nom="THER_NON_LINE",op= 186,sd_prod=evol_ther,reentrant='f', INFO =SIMP(statut='f',typ='I',into=(1,2) ), ) ; -#& MODIF COMMANDE DATE 21/04/2008 AUTEUR LEFEBVRE J-P.LEFEBVRE +#& MODIF COMMANDE DATE 30/09/2008 AUTEUR REZETTE C.REZETTE # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG @@ -24698,6 +25567,31 @@ THER_NON_LINE_MO=OPER(nom="THER_NON_LINE_MO",op= 171,sd_prod=evol_ther, RESI_RELA =SIMP(statut='f',typ='R',defaut= 1.E-6 ), NMAX_ITER =SIMP(statut='f',typ='I',defaut= 0 ), ), + b_mumps =BLOC(condition = "METHODE == 'MUMPS' ",fr="Paramètres de la méthode MUMPS", + TYPE_RESOL =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("NONSYM","SYMGEN","SYMDEF","AUTO")), + PRETRAITEMENTS =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("SANS","AUTO")), + RENUM =SIMP(statut='f',typ='TXM',defaut="AUTO",into=("AMD","AMF","PORD","METIS","QAMD","AUTO")), + ELIM_LAGR2 =SIMP(statut='f',typ='TXM',defaut="OUI",into=("OUI","NON")), + PCENT_PIVOT =SIMP(statut='f',typ='I',defaut=10,), + RESI_RELA =SIMP(statut='f',typ='R',defaut=-1.0,), + PARALLELISME =SIMP(statut='f',typ='TXM',defaut="CENTRALISE", + into=("CENTRALISE","DISTRIBUE_MC","DISTRIBUE_MD","DISTRIBUE_SD")), + PARTITION =SIMP(statut='f',typ=sd_feti_sdaster), + CHARGE_PROC0_MA =SIMP(statut='f',typ='I',defaut=100,min=0,max=100), + CHARGE_PROC0_SD =SIMP(statut='f',typ='I',defaut=0,min=0), + OUT_OF_CORE =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON")), + ), + b_petsc =BLOC(condition = "METHODE == 'PETSC' ",fr="Paramètres de la méthode PETSC", + ALGORITHME =SIMP(statut='f',typ='TXM',into=("BCGS","BICG","CG","CR","GMRES","TFQMR",),defaut="CG" ), + PRE_COND =SIMP(statut='f',typ='TXM',into=("LDLT_INC","JACOBI","SOR"),defaut="LDLT_INC" ), + b_petsc_ilu =BLOC(condition = "PRE_COND == 'LDLT_INC' ", + NIVE_REMPLISSAGE = SIMP(statut='f',typ='I',defaut= 0 ), + REMPLISSAGE = SIMP(statut='f',typ='R',defaut= 1.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= -1 ), + ), SYME =SIMP(statut='f',typ='TXM',defaut="NON",into=("OUI","NON") ), ), TITRE =SIMP(statut='f',typ='TXM',max='**' ), diff --git a/Aster/Cata/cataSTA9/ops.py b/Aster/Cata/cataSTA9/ops.py index 90a38f53..fd42ddb9 100644 --- a/Aster/Cata/cataSTA9/ops.py +++ b/Aster/Cata/cataSTA9/ops.py @@ -1,4 +1,4 @@ -#@ MODIF ops Cata DATE 02/06/2008 AUTEUR COURTOIS M.COURTOIS +#@ MODIF ops Cata DATE 03/11/2008 AUTEUR PELLET J.PELLET # -*- coding: iso-8859-1 -*- # CONFIGURATION MANAGEMENT OF EDF VERSION # ====================================================================== @@ -69,6 +69,12 @@ def commun_DEBUT_POURSUITE(jdc, PAR_LOT, IMPR_MACRO, CODE, DEBUG, IGNORE_ALARM): IGNORE_ALARM = [IGNORE_ALARM] for idmess in IGNORE_ALARM: MessageLog.disable_alarm(idmess) + + # en POURSUITE, conserver le catalogue de comportement picklé + if not hasattr(jdc, 'catalc'): + from Comportement import catalc + jdc.catalc = catalc + jdc.msg_init = True @@ -171,6 +177,8 @@ def POURSUITE(self, PAR_LOT, IMPR_MACRO, CODE, DEBUG, IGNORE_ALARM, **args): # on rattache chaque assd au nouveau jdc courant (en poursuite) pickle_context[elem].jdc=self.jdc pickle_context[elem].parent=self.jdc + # le marquer comme 'executed' + pickle_context[elem].executed = 1 # pour que sds_dict soit cohérent avec g_context self.jdc.sds_dict[elem] = pickle_context[elem] assert elem == pickle_context[elem].nom