From: Pascale Noyret Date: Fri, 23 Jul 2010 13:46:14 +0000 (+0000) Subject: modif domi X-Git-Tag: V2_0~5 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=ea65b3b3195c8aae2ad7179689612f3365e7c2ca;p=modules%2Feficas.git modif domi --- diff --git a/Cuve2dg/DefaillCUVE_Cata.py b/Cuve2dg/DefaillCUVE_Cata.py index 6ba33e59..f07d4af0 100644 --- a/Cuve2dg/DefaillCUVE_Cata.py +++ b/Cuve2dg/DefaillCUVE_Cata.py @@ -161,10 +161,10 @@ OPTIONS = PROC ( nom = "OPTIONS", into=( "OUI", "NON",), ), # RESU_FILE - FichierResultats = SIMP (statut="o", typ="TXM", defaut="NON", - fr="Fichier resultat : template_DEFAILLCUVE", - into=( "OUI", "NON",), - ), + #FichierResultats = SIMP (statut="o", typ="TXM", defaut="NON", + # fr="Fichier resultat : template_DEFAILLCUVE", + # into=( "OUI", "NON",), + # ), # CSV_FILE FichierCSV = SIMP (statut="o", typ="TXM", defaut="NON", fr="Fichier resultat au format CSV : template_DEFAILLCUVE.CSV", diff --git a/Cuve2dg/DefaillCUVE_Cata.py_V1 b/Cuve2dg/DefaillCUVE_Cata.py_V1 new file mode 100644 index 00000000..c8dcfb98 --- /dev/null +++ b/Cuve2dg/DefaillCUVE_Cata.py_V1 @@ -0,0 +1,1427 @@ +# -*- coding: utf-8 -*- + +# -------------------------------------------------- +# Definition de variables sous forme de tuple +# -------------------------------------------------- + +import types +class Tuple: + def __init__(self,ntuple): + self.ntuple=ntuple + + def __convert__(self,valeur): + if type(valeur) == types.StringType: + return None + if len(valeur) != self.ntuple: + return None + return valeur + + def info(self): + return "Tuple de %s elements" % self.ntuple + + __repr__=info + __str__=info + +# -------------------------------------------------- +# debut entete +# -------------------------------------------------- + +import Accas +from Accas import * + +class loi ( ASSD ) : pass +class variable ( ASSD ) : pass + + +#CONTEXT.debug = 1 +JdC = JDC_CATA ( code = 'CUVE1D-DEFAILLGLOB', + execmodul = None, + regles = ( AU_MOINS_UN ('OPTIONS'), + AU_MOINS_UN ('INITIALISATION'), + AU_MOINS_UN ('REVETEMENT'), + AU_MOINS_UN ('METAL_BASE'), + AU_MOINS_UN ('TRANSITOIRE'), + ) + ) # Fin JDC_CATA + +# -------------------------------------------------- +# fin entete +# -------------------------------------------------- + +# -------------------------------------------------- +# RESPONSABLE D. THAI VAN +# Ce fichier contient la liste des coefficients pour un +# modele de Weibull generalise +def Coef_WeibGen() : return FACT(statut='o',min=1,max='**', + + # A1 + A1 = SIMP ( statut="o", typ="R", defaut=21.263, + fr="coef du coef a(T) d'une Weibull générale", ), + # A2 + A2 = SIMP ( statut="o", typ="R", defaut=9.159, + fr="coef du coef a(T) d'une Weibull générale", ), + # A3 + A3 = SIMP ( statut="o", typ="R", defaut=0.04057, + fr="coef du coef a(T) d'une Weibull générale", ), + # B1 + B1 = SIMP ( statut="o", typ="R", defaut=17.153, + fr="coef du coef b(T) d'une Weibull générale", ), + # B2 + B2 = SIMP ( statut="o", typ="R", defaut=55.089, + fr="coef du coef b(T) d'une Weibull générale", ), + # B3 + B3 = SIMP ( statut="o", typ="R", defaut=0.0144, + fr="coef du coef b(T) d'une Weibull générale", ), + # C1 + C1 = SIMP ( statut="o", typ="R", defaut=4., + fr="coef du coef c(T) d'une Weibull générale", ), + # C2 + C2 = SIMP ( statut="o", typ="R", defaut=0., + fr="coef du coef c(T) d'une Weibull générale", ), + # C3 + C3 = SIMP ( statut="o", typ="R", defaut=0., + fr="coef du coef c(T) d'une Weibull générale", ), + +); # FIN def Coef_WeibGen + + +# -------------------------------------------------- +# RESPONSABLE D. THAI VAN +# Ce fichier contient la liste des coefficients +def Coef_Fluence() : return FACT(statut='o',min=1,max='**', + + # COEFFLUENCE1 + Azimut_0deg = SIMP ( statut="o", typ="R", defaut=5.8, + fr="Fluence à l'azimut 0 (10^19 n/cm2)", ), + # COEFFLUENCE2 + Azimut_5deg = SIMP ( statut="o", typ="R", defaut=5.48, + fr="Fluence à l'azimut 5 (10^19 n/cm2)", ), + # COEFFLUENCE3 + Azimut_10deg = SIMP ( statut="o", typ="R", defaut=4.46, + fr="Fluence à l'azimut 10 (10^19 n/cm2)", ), + # COEFFLUENCE4 + Azimut_15deg = SIMP ( statut="o", typ="R", defaut=3.41, + fr="Fluence à l'azimut 15 (10^19 n/cm2)", ), + # COEFFLUENCE5 + Azimut_20deg = SIMP ( statut="o", typ="R", defaut=3.37, + fr="Fluence à l'azimut 20 (10^19 n/cm2)", ), + # COEFFLUENCE6 + Azimut_25deg = SIMP ( statut="o", typ="R", defaut=3.16, + fr="Fluence à l'azimut 25 (10^19 n/cm2)", ), + # COEFFLUENCE7 + Azimut_30deg = SIMP ( statut="o", typ="R", defaut=2.74, + fr="Fluence à l'azimut 30 (10^19 n/cm2)", ), + # COEFFLUENCE8 + Azimut_35deg = SIMP ( statut="o", typ="R", defaut=2.25, + fr="Fluence à l'azimut 35 (10^19 n/cm2)", ), + # COEFFLUENCE9 + Azimut_40deg = SIMP ( statut="o", typ="R", defaut=1.89, + fr="Fluence à l'azimut 40 (10^19 n/cm2)", ), + # COEFFLUENCE10 + Azimut_45deg = SIMP ( statut="o", typ="R", defaut=1.78, + fr="Fluence à l'azimut 45 (10^19 n/cm2)", ), + +); # FIN def Coef_Fluence + +#================================ +# 1. Definition des OPTIONS +#================================ + +OPTIONS = PROC ( nom = "OPTIONS", + op = 68, + repetable = 'n', + fr = "Définitions des options", + +#=== +# Liste des paramètres +#=== + + SortieEcran = FACT (statut="o", + + # MESSAGE_LEVEL + NiveauImpression = SIMP (statut="o", typ="TXM", defaut="Temps total", + fr="Niveau d impression a l ecran", + into=( "Aucune impression", # 0 + "Temps total", # 1 + "Temps intermediaires",), # 2 + ), + + ), # FIN FACT SortieEcran + + SortieFichier = FACT (statut="o", + + # DATARESUME_FILE + FichierDataIn = SIMP (statut="o", typ="TXM", defaut="NON", + fr="Fichier recapitulatif des donnees d entree : template.IN", + into=( "OUI", "NON",), + ), + # TEMPSIG_FILE + FichierTempSigma = SIMP (statut="o", typ="TXM", defaut="NON", + fr="Fichiers de temperature et de contraintes : template.TEMP et template.SIG", + into=( "OUI", "NON",), + ), + # RESU_FILE + FichierResultats = SIMP (statut="o", typ="TXM", defaut="NON", + fr="Fichier resultat : template_DEFAILLCUVE", + into=( "OUI", "NON",), + ), + # CSV_FILE + FichierCSV = SIMP (statut="o", typ="TXM", defaut="NON", + fr="Fichier resultat au format CSV : template_DEFAILLCUVE.CSV", + into=( "OUI", "NON",), + ), + # CREARE_FILE + FichierCREARE = SIMP (statut="o", typ="TXM", defaut="NON", + fr="Fichier Tfluide et coefficients d echange : template.CREA", + into=( "OUI", "NON",), + ), + + ), # FIN FACT SortieFichier + + # GRANDEUR + GrandeurEvaluee = SIMP (statut="o", typ="TXM", defaut="Facteur de marge KIc/KCP", + fr="Grandeur sous critere", + into=( "Facteur de marge KIc/KCP", # FM_KICSURKCP + "Marge KIc-KI", # MARGE_KI + "Marge KIc-KCP", ), # MARGE_KCP + ), + + AutresParametres = FACT (statut="o", + + # INCRTPS + IncrementTemporel = SIMP ( statut="o", typ="I", defaut=1, + fr="Incrément temporel (=1 pour calcul déterministe)", ), + # DTPREC + IncrementMaxTemperature = SIMP ( statut="o", typ="R", val_min=0.1, val_max=1., defaut=0.1, + fr="Incrément maximum d'évolution de la température par noeud et par instant (°C)", ), + # DTARCH + IncrementMaxTempsAffichage = SIMP ( statut="o", typ="R", val_min=0., val_max=1000., defaut=1000., + fr="Incrément maximum de temps pour l'affichage (s)", ), + # + ListeInstants = SIMP ( statut="o", typ="R", max="**", + fr = "Liste des instants pour lesquels la température et les contraintes seront archivés", ), + + ), # FIN FACT AutresParametres + +) # Fin PROC OPTIONS + +#================================ +# 2. Caracteristiques de la CUVE +#================================ + +CUVE = PROC (nom = "CUVE", + op = 68, + repetable = 'n', + fr = "Caractéristiques de la cuve", + +#=== +# Liste des paramètres +#=== + + # TYPEGEOM + TraitementGeometrie = SIMP ( statut="o", typ="TXM", defaut="Topologie", + fr="Choix de la définition de la geométrie d'une cuve", + into=( "Topologie", # GEOMETRIE + "Maillage"), # MAILLAGE + ), + +#==== +# Definition des parametres selon le type de traitement de la geometrie +#==== + + Geometrie = BLOC ( condition = "TraitementGeometrie=='Topologie'", + + # RINT + RayonInterne = SIMP ( statut="o", typ="R", val_min=0., defaut=1.994, + fr="Rayon interne de la cuve (en m)", ), + # RINT_MESSAGE + RayonInterne_mess = SIMP ( statut="o", typ="TXM", defaut="NON", + fr="Affichage ecran du rayon interne de la cuve (en m)", + into=( "NON", "OUI" ), ), + + # DTV : comment preciser que REXT > RINT ? + # REXT + RayonExterne = SIMP ( statut="o", typ="R", defaut=2.2015, + fr="Rayon externe de la cuve (en m)", ), + # REXT_MESSAGE + RayonExterne_mess = SIMP ( statut="o", typ="TXM", defaut="NON", + fr="Affichage ecran du rayon externe de la cuve (en m)", + into=( "NON", "OUI" ), ), + + # DTV : comment preciser que LREV < RINT ? + # LREV + EpaisseurRevetement = SIMP ( statut="o", typ="R", defaut=0.0075, + fr="Epaisseur du revêtement (m)", ), + # LREV_MESSAGE + EpaisseurRevetement_mess = SIMP ( statut="o", typ="TXM", defaut="NON", + fr="Affichage ecran de l'epaisseur du revêtement (m)", + into=( "NON", "OUI" ), ), + + # LIGMIN + LigamentExterneMin = SIMP ( statut="o", typ="R", defaut=0.75, + fr="Ligament externe minimal avant rupture (% de l'épaisseur de cuve)", ), + # LIGMIN_MESSAGE + LigamentExterneMin_mess = SIMP ( statut="o", typ="TXM", defaut="NON", + fr="Affichage ecran du ligament externe minimal avant rupture (% de l'épaisseur de cuve)", + into=( "NON", "OUI" ), ), + + # NBNO + NombreNoeudsMaillage = SIMP ( statut="o", typ="I", defaut=300, max=1, val_min=1, val_max=1000, + fr = "Nombre de noeuds à considérer dans le maillage interne", ), + + ), # Fin BLOC Geometrie + + Maillage = BLOC ( condition = "TraitementGeometrie=='Maillage'", + + # DTV : comment preciser que c'est une suite de liste de nombres croissants ? + # Question : NBO depend-il de TYPGEOM ?? + NombreNoeudsMaillage = SIMP ( statut="o", typ="I", defaut=300, max=1, val_min=1, val_max=1000, + fr = "Nombre de noeuds à considérer dans le maillage interne", ), + + ListeAbscisses = SIMP ( statut="o", typ="R", max="**", + fr = "Liste des abscisses", ), + ), # Fin BLOC Maillage + +) # Fin PROC CUVE + +#================================ +# 3. Caracteristiques du DEFAUT +#================================ + +DEFAUT = PROC ( nom = "DEFAUT", + op = 68, + repetable = 'n', + fr = "Caractéristiques du défaut", + +#=== +# Liste des paramètres +#=== + +# TYPEDEF + TypeInitial = SIMP ( statut="o", typ="TXM", defaut="Defaut Sous Revetement", + fr="Type initial du défaut : sous revêtement, decale ou débouchant", + into=( "Defaut Sous Revetement", # DSR + "Defaut Decale", # DECALE + "Defaut Debouchant", ), # DEBOUCHANT + ), + +#==== +# Definition des parametres selon le type du defaut +#==== + + SousRevetement = BLOC ( condition = "TypeInitial=='Defaut Sous Revetement'", + + # ORIEDEF into LONGITUD, CIRCONF + Orientation = SIMP ( statut="o", typ="TXM", defaut="Longitudinale", + fr="Orientation du défaut", + into=( "Longitudinale", + "Circonferentielle" ), ), + + Profondeur_parametres = FACT (statut="o", + # PROFDEF + # dtv : taille max d'un defaut ? Ici, 0.2 = epaisseur approximative de cuve + ProfondeurRadiale = SIMP ( statut="o", typ="R", max=1, val_min=0., val_max=0.2, defaut=0.006, + fr="Profondeur radiale du défaut (m)", ), + # PROFDEF_MESSAGE + ProfondeurRadiale_mess = SIMP ( statut="o", typ="TXM", defaut="NON", + fr="Affichage ecran de la profondeur radiale du défaut (m)", + into=( "NON", "OUI" ), ), + ), # Fin FACT Profondeur_parametres + + Longueur_parametres = FACT (statut="o", + # OPTLONG into VALEUR, FCTAFFINE + ModeCalculLongueur = SIMP ( statut="o", typ="TXM", defaut="Valeur", + fr="Option pour caractériser la longueur du défaut : soit par valeur, soit par une fonction affine de la profondeur", + into = ( "Valeur", "Fonction affine de la profondeur" ), ), + Mode_Valeur = BLOC ( condition = "ModeCalculLongueur=='Valeur'", + # LONGDEF + Longueur = SIMP ( statut="o", typ="R", max=1, val_min=0., val_max=1., defaut = 0.060, + fr = "Longueur du défaut sous revêtement (m)", ), + # LONGDEF_MESSAGE + Longueur_mess = SIMP ( statut="o", typ="TXM", defaut = "NON", + fr = "Affichage ecran de la longueur du défaut sous revêtement (m)", + into=( "NON", "OUI" ), ), + ), # Fin BLOC Mode_Valeur + Mode_Fctaffine = BLOC ( condition = "ModeCalculLongueur=='Fonction affine de la profondeur'", + # PROFSURLONG + CoefDirecteur = SIMP ( statut="o", typ="R", max=1, val_max=100., defaut=10., + fr="Inverse a1 du coefficient directeur de la fonction affine l=h/a1 + a0", ), + # LONGCONST + Constante = SIMP ( statut="o", typ="R", max=1, val_max=100., defaut=0., + fr="constante a0 de la fonction affine l=pente*h + a0", ), + ), # Fin BLOC Mode_Fctaffine + ), # FIN FACT Longueur_parametres + + Azimut_parametres = FACT (statut="o", + # ANGLDEF + Azimut = SIMP ( statut="o", typ="R", defaut=0., + fr="Position angulaire du défaut dans le cylindre de cuve (en degrés)", ), + # ANGLDEF_MESSAGE + Azimut_mess = SIMP ( statut="o", typ="TXM", defaut="NON", + fr="Affichage ecran de la position angulaire du défaut dans le cylindre de cuve (en degrés)", + into = ( "NON", "OUI" ), ), + ), # Fin FACT Azimut_parametres + + Altitude_parametres = FACT (statut="o", + # ALTIDEF + # dtv : altitude entre -7m et 0m ? zone Vestale : -6.601 RINT ? + # REXT + RayonExterne = SIMP ( statut="o", typ="R", defaut=2.2015, + fr="Rayon externe de la cuve (en m)", ), + # REXT_MESSAGE + RayonExterne_mess = SIMP ( statut="o", typ="TXM", defaut="NON", + fr="Affichage ecran du rayon externe de la cuve (en m)", + into=( "NON", "OUI" ), ), + + # DTV : comment preciser que LREV < RINT ? + # LREV + EpaisseurRevetement = SIMP ( statut="o", typ="R", defaut=0.0075, + fr="Epaisseur du revêtement (m)", ), + # LREV_MESSAGE + EpaisseurRevetement_mess = SIMP ( statut="o", typ="TXM", defaut="NON", + fr="Affichage ecran de l'epaisseur du revêtement (m)", + into=( "NON", "OUI" ), ), + + # LIGMIN + LigamentExterneMin = SIMP ( statut="o", typ="R", defaut=0.75, + fr="Ligament externe minimal avant rupture (% de l'épaisseur de cuve)", ), + # LIGMIN_MESSAGE + LigamentExterneMin_mess = SIMP ( statut="o", typ="TXM", defaut="NON", + fr="Affichage ecran du ligament externe minimal avant rupture (% de l'épaisseur de cuve)", + into=( "NON", "OUI" ), ), + + # NBNO + NombreNoeudsMaillage = SIMP ( statut="o", typ="I", defaut=300, max=1, val_min=1, val_max=1000, + fr = "Nombre de noeuds à considérer dans le maillage interne", ), + + ), # Fin BLOC Geometrie + + Maillage = BLOC ( condition = "TraitementGeometrie=='Maillage'", + + # DTV : comment preciser que c'est une suite de liste de nombres croissants ? + # Question : NBO depend-il de TYPGEOM ?? + NombreNoeudsMaillage = SIMP ( statut="o", typ="I", defaut=300, max=1, val_min=1, val_max=1000, + fr = "Nombre de noeuds à considérer dans le maillage interne", ), + + ListeAbscisses = SIMP ( statut="o", typ="R", max="**", + fr = "Liste des abscisses", ), + ), # Fin BLOC Maillage + +) # Fin PROC CUVE + +#================================ +# 3. Caracteristiques du DEFAUT +#================================ + +DEFAUT = PROC ( nom = "DEFAUT", + op = 68, + repetable = 'n', + fr = "Caractéristiques du défaut", + +#=== +# Liste des paramètres +#=== + +# TYPEDEF + TypeInitial = SIMP ( statut="o", typ="TXM", defaut="Defaut Sous Revetement", + fr="Type initial du défaut : sous revêtement, decale ou débouchant", + into=( "Defaut Sous Revetement", # DSR + "Defaut Decale", # DECALE + "Defaut Debouchant", ), # DEBOUCHANT + ), + +#==== +# Definition des parametres selon le type du defaut +#==== + + SousRevetement = BLOC ( condition = "TypeInitial=='Defaut Sous Revetement'", + + # ORIEDEF into LONGITUD, CIRCONF + Orientation = SIMP ( statut="o", typ="TXM", defaut="Longitudinale", + fr="Orientation du défaut", + into=( "Longitudinale", + "Circonferentielle" ), ), + + Profondeur_parametres = FACT (statut="o", + # PROFDEF + # dtv : taille max d'un defaut ? Ici, 0.2 = epaisseur approximative de cuve + ProfondeurRadiale = SIMP ( statut="o", typ="R", max=1, val_min=0., val_max=0.2, defaut=0.006, + fr="Profondeur radiale du défaut (m)", ), + # PROFDEF_MESSAGE + ProfondeurRadiale_mess = SIMP ( statut="o", typ="TXM", defaut="NON", + fr="Affichage ecran de la profondeur radiale du défaut (m)", + into=( "NON", "OUI" ), ), + ), # Fin FACT Profondeur_parametres + + Longueur_parametres = FACT (statut="o", + # OPTLONG into VALEUR, FCTAFFINE + ModeCalculLongueur = SIMP ( statut="o", typ="TXM", defaut="Valeur", + fr="Option pour caractériser la longueur du défaut : soit par valeur, soit par une fonction affine de la profondeur", + into = ( "Valeur", "Fonction affine de la profondeur" ), ), + Mode_Valeur = BLOC ( condition = "ModeCalculLongueur=='Valeur'", + # LONGDEF + Longueur = SIMP ( statut="o", typ="R", max=1, val_min=0., val_max=1., defaut = 0.060, + fr = "Longueur du défaut sous revêtement (m)", ), + # LONGDEF_MESSAGE + Longueur_mess = SIMP ( statut="o", typ="TXM", defaut = "NON", + fr = "Affichage ecran de la longueur du défaut sous revêtement (m)", + into=( "NON", "OUI" ), ), + ), # Fin BLOC Mode_Valeur + Mode_Fctaffine = BLOC ( condition = "ModeCalculLongueur=='Fonction affine de la profondeur'", + # PROFSURLONG + CoefDirecteur = SIMP ( statut="o", typ="R", max=1, val_max=100., defaut=10., + fr="Inverse a1 du coefficient directeur de la fonction affine l=h/a1 + a0", ), + # LONGCONST + Constante = SIMP ( statut="o", typ="R", max=1, val_max=100., defaut=0., + fr="constante a0 de la fonction affine l=pente*h + a0", ), + ), # Fin BLOC Mode_Fctaffine + ), # FIN FACT Longueur_parametres + + Azimut_parametres = FACT (statut="o", + # ANGLDEF + Azimut = SIMP ( statut="o", typ="R", defaut=0., + fr="Position angulaire du défaut dans le cylindre de cuve (en degrés)", ), + # ANGLDEF_MESSAGE + Azimut_mess = SIMP ( statut="o", typ="TXM", defaut="NON", + fr="Affichage ecran de la position angulaire du défaut dans le cylindre de cuve (en degrés)", + into = ( "NON", "OUI" ), ), + ), # Fin FACT Azimut_parametres + + Altitude_parametres = FACT (statut="o", + # ALTIDEF + # dtv : altitude entre -7m et 0m ? zone Vestale : -6.601-17.°C et js=>42.°C (HT-56/05/038 : p.52)", + "MoyenneRTndt" : "moyenne de la RTNDT initiale : virole C1 de cuve Chinon : mdb=>-17.degC et js=>42.degC (HT-56/05/038 : p.52)", "MoyenneRTndt_mess" : "affichage ecran de la moyenne de la RTNDT initiale", "CoefVariationRTndt" : "coef de variation de la RTNDT initiale", "CoefVariationRTndt_mess" : "affichage ecran du coef de variation de la RTNDT initiale", @@ -280,7 +278,7 @@ class Cuve2dgGenerator(PythonGenerator): "CoefficientVariation_KIc" : "coef de variation de la loi normale de K1c", "Fractile_KIc" : "valeur caracteristique de KIc exprimee en ordre de fractile (%)", "Fractile_KIc_mess" : "affichage ecran de la valeur caracteristique de KIc exprimee en ordre de fractile (%)", - "Temperature_KIc100" : "parametre T0 du modele Wallin (°C)", + "Temperature_KIc100" : "parametre T0 du modele Wallin (degC)", "A1" : "coef des coefs d une WEIBULL generale", "A2" : "", "A3" : "", @@ -300,12 +298,12 @@ class Cuve2dgGenerator(PythonGenerator): "CoefficientVariation_KIa" : "coef de variation de la loi normale de K1a", "InstantInitialisation" : "instant initial (s)", "ConditionLimiteThermiqueREV" : "Option 'ENTHALPIE' ou 'CHALEUR'", - "TemperatureDeformationNulleREV" : "temperature de deformation nulle (°C)", - "TemperaturePourCoefDilatThermREV" : "temperature de definition du coefficient de dilatation thermique (°C)", + "TemperatureDeformationNulleREV" : "temperature de deformation nulle (degC)", + "TemperaturePourCoefDilatThermREV" : "temperature de definition du coefficient de dilatation thermique (degC)", "CoefficientPoissonREV" : "coefficient de Poisson", "ConditionLimiteThermiqueMDB" : "Option 'ENTHALPIE' ou 'CHALEUR'", - "TemperatureDeformationNulleMDB" : "temperature de deformation nulle (°C)", - "TemperaturePourCoefDilatThermMDB" : "temperature de definition du coefficient de dilatation thermique (°C)", + "TemperatureDeformationNulleMDB" : "temperature de deformation nulle (degC)", + "TemperaturePourCoefDilatThermMDB" : "temperature de definition du coefficient de dilatation thermique (degC)", "CoefficientPoissonMDB" : "coefficient de Poisson", "TypeConditionLimiteThermique" : "Type de condition thermique en paroi interne {TEMP_IMPO,FLUX_REP,ECHANGE,DEBIT,TEMP_FLU,APRP}", "Instant_1" : "Borne inferieure de l intervalle de temps du 2nd palier T1", @@ -334,7 +332,6 @@ class Cuve2dgGenerator(PythonGenerator): "NiveauImpression" : "1", "FichierDataIn" : "NON", "FichierTempSigma" : "NON", - "FichierResultats" : "NON", "FichierCSV" : "NON", "FichierCREARE" : "NON", "GrandeurEvaluee" : "FM_KICSURKCP", @@ -466,7 +463,6 @@ class Cuve2dgGenerator(PythonGenerator): "NiveauImpression" : "OPTIONS", "FichierDataIn" : "OPTIONS", "FichierTempSigma" : "OPTIONS", - "FichierResultats" : "OPTIONS", "FichierCSV" : "OPTIONS", "FichierCREARE" : "OPTIONS", "GrandeurEvaluee" : "OPTIONS", @@ -593,7 +589,7 @@ class Cuve2dgGenerator(PythonGenerator): "SurfaceEchange_FluideStructure_mess" : "TRANSITOIRE", } - def gener(self,obj,format='brut',config=None): + def gener(self,obj,format='brut'): self.text='' self.textCuve='' self.dico_mot={} @@ -610,13 +606,16 @@ class Cuve2dgGenerator(PythonGenerator): s=PythonGenerator.generMCSIMP(self,obj) return s - def writeCuve2DG(self): + def writeCuve2DG(self, filename): print "je passe dans writeCuve2DG" self.genereTexteCuve() - f = open( "/tmp/data_template", 'wb') + f = open( filename, 'wb') print self.texteCuve f.write( self.texteCuve ) f.close() + ftmp = open( "/tmp/data_template", 'wb') + ftmp.write( self.texteCuve ) + ftmp.close() def entete(self): ''' @@ -731,7 +730,6 @@ class Cuve2dgGenerator(PythonGenerator): self.texteCuve += self.sousRubrique('Generation de fichiers', '') self.texteCuve += self.ecritVariable('FichierDataIn') self.texteCuve += self.ecritVariable('FichierTempSigma') - self.texteCuve += self.ecritVariable('FichierResultats') self.texteCuve += self.ecritVariable('FichierCSV') self.texteCuve += self.ecritVariable('FichierCREARE') @@ -1054,7 +1052,7 @@ class Cuve2dgGenerator(PythonGenerator): if str(self.dico_mot["ModeleTenacite"])=='Weibull n\xb03': self.texteCuve += self.affecteValeur('ModeleTenacite', 'WEIB3') if str(self.dico_mot["ModeleTenacite"])=='Weibull generalisee': - self.texteCuve += self.affecteValeur('ModeleTenacite', 'WEIB_GEN') + self.texteCuve += self.affecteValeur('ModeleTenacite', 'WEIB-GEN') if str(self.dico_mot["ModeleTenacite"])=='Exponentielle n\xb01 (Frama)': self.texteCuve += self.affecteValeur('ModeleTenacite', 'Frama') if str(self.dico_mot["ModeleTenacite"])=='Exponentielle n\xb02 (LOGWOLF)': @@ -1161,7 +1159,7 @@ class Cuve2dgGenerator(PythonGenerator): self.texteCuve+="CC"+"\n" self.texteCuve+="#"+"\n" - self.texteCuve+="# Profils radiaux des contraintes résiduelles dans la cuve"+"\n" + self.texteCuve+="# Profils radiaux des contraintes residuelles dans la cuve"+"\n" self.texteCuve+="# abscisse (m) / sigma rr / sigma tt / sigma zz"+"\n" self.texteCuve+="# Prolongation aux frontieres amont et aval: C = constant / E = exclu / L = lineaire"+"\n" if self.dico_mot.has_key('ProfilRadial_ContraintesInitiales'): @@ -1179,20 +1177,20 @@ class Cuve2dgGenerator(PythonGenerator): self.texteCuve += self.rubrique('CARACTERISTIQUES DU REVETEMENT') self.texteCuve += self.ecritVariable('ConditionLimiteThermiqueREV') - self.texteCuve+="# - si CHALEUR, fournir Temperature (°C) / chaleur volumique (J/kg/K)"+"\n" - self.texteCuve+="# - si ENTHALPIE, fournir Temperature (°C) / enthalpie (J/kg)"+"\n" + self.texteCuve+="# - si CHALEUR, fournir Temperature (degC) / chaleur volumique (J/kg/K)"+"\n" + self.texteCuve+="# - si ENTHALPIE, fournir Temperature (degC) / enthalpie (J/kg)"+"\n" self.texteCuve+="# Finir chacune des listes par la prolongation aux frontieres amont et aval: C = constant / E = exclu / L = lineaire"+"\n" self.texteCuve+="#"+"\n" if self.dico_mot.has_key('ChaleurREV_Fct_Temperature'): - self.texteCuve+="# Temperature (°C) / chaleur volumique (J/kg/K)"+"\n" + self.texteCuve+="# Temperature (degC) / chaleur volumique (J/kg/K)"+"\n" self.imprime(2,(self.dico_mot["ChaleurREV_Fct_Temperature"])) self.texteCuve += self.amontAval('Amont_ChaleurREV','Aval_ChaleurREV') elif self.dico_mot.has_key('EnthalpieREV_Fct_Temperature'): - self.texteCuve+="# Temperature (°C) / enthalpie (J/kg)"+"\n" + self.texteCuve+="# Temperature (degC) / enthalpie (J/kg)"+"\n" self.imprime(2,(self.dico_mot["EnthalpieREV_Fct_Temperature"])) self.texteCuve += self.amontAval('Amont_EnthalpieREV','Aval_EnthalpieREV') else : - self.texteCuve+="# Temperature (°C) / chaleur volumique (J/kg/K)"+"\n" + self.texteCuve+="# Temperature (degC) / chaleur volumique (J/kg/K)"+"\n" self.texteCuve+="0. 36.03E5 "+"\n" self.texteCuve+="20. 36.03E5 "+"\n" self.texteCuve+="200. 41.65E5 "+"\n" @@ -1200,7 +1198,7 @@ class Cuve2dgGenerator(PythonGenerator): self.texteCuve+="CC"+"\n" self.texteCuve+="#"+"\n" - self.texteCuve+="# Temperature (°C) / conductivite thermique (W/m/°C)"+"\n" + self.texteCuve+="# Temperature (degC) / conductivite thermique (W/m/degC)"+"\n" if self.dico_mot.has_key('ConductiviteREV_Fct_Temperature'): self.imprime(2,(self.dico_mot["ConductiviteREV_Fct_Temperature"])) self.texteCuve += self.amontAval('Amont_ConductiviteREV','Aval_ConductiviteREV') @@ -1212,7 +1210,7 @@ class Cuve2dgGenerator(PythonGenerator): self.texteCuve+="CC"+"\n" self.texteCuve+="#"+"\n" - self.texteCuve+="# Temperature (°C) / module d'Young (MPa)"+"\n" + self.texteCuve+="# Temperature (degC) / module d'Young (MPa)"+"\n" if self.dico_mot.has_key('ModuleYoungREV_Fct_Temperature'): self.imprime(2,(self.dico_mot["ModuleYoungREV_Fct_Temperature"])) self.texteCuve += self.amontAval('Amont_ModuleYoungREV','Aval_ModuleYoungREV') @@ -1224,7 +1222,7 @@ class Cuve2dgGenerator(PythonGenerator): self.texteCuve+="CC"+"\n" self.texteCuve+="#"+"\n" - self.texteCuve+="# Temperature (°C) / coefficient de dilatation thermique (°C-1)"+"\n" + self.texteCuve+="# Temperature (degC) / coefficient de dilatation thermique (degC-1)"+"\n" if self.dico_mot.has_key('CoeffDilatThermREV_Fct_Temperature'): self.imprime(2,(self.dico_mot["CoeffDilatThermREV_Fct_Temperature"])) self.texteCuve += self.amontAval('Amont_CoeffDilatThermREV','Aval_CoeffDilatThermREV') @@ -1236,7 +1234,7 @@ class Cuve2dgGenerator(PythonGenerator): self.texteCuve+="CC"+"\n" self.texteCuve+="#"+"\n" - self.texteCuve+="# Temperature (°C) / limite d'elasticite (MPa)"+"\n" + self.texteCuve+="# Temperature (degC) / limite d'elasticite (MPa)"+"\n" if self.dico_mot.has_key('LimiteElasticiteREV_Fct_Temperature'): self.imprime(2,(self.dico_mot["LimiteElasticiteREV_Fct_Temperature"])) self.texteCuve += self.amontAval('Amont_LimiteElasticiteREV','Aval_LimiteElasticiteREV') @@ -1257,21 +1255,21 @@ class Cuve2dgGenerator(PythonGenerator): self.texteCuve += self.ecritVariable('ConditionLimiteThermiqueMDB') - self.texteCuve+="# - si CHALEUR, fournir Temperature (°C) / chaleur volumique (J/kg/K)"+"\n" - self.texteCuve+="# - si ENTHALPIE, fournir Temperature (°C) / enthalpie (J/kg)"+"\n" + self.texteCuve+="# - si CHALEUR, fournir Temperature (degC) / chaleur volumique (J/kg/K)"+"\n" + self.texteCuve+="# - si ENTHALPIE, fournir Temperature (degC) / enthalpie (J/kg)"+"\n" self.texteCuve+="# Finir chacune des listes par la prolongation aux frontieres amont et aval: C = constant / E = exclu / L = lineaire"+"\n" self.texteCuve+="#"+"\n" if self.dico_mot.has_key('ChaleurMDB_Fct_Temperature'): - self.texteCuve+="# Temperature (°C) / chaleur volumique (J/kg/K)"+"\n" + self.texteCuve+="# Temperature (degC) / chaleur volumique (J/kg/K)"+"\n" self.imprime(2,(self.dico_mot["ChaleurMDB_Fct_Temperature"])) self.texteCuve += self.amontAval('Amont_ChaleurMDB','Aval_ChaleurMDB') elif self.dico_mot.has_key('EnthalpieMDB_Fct_Temperature'): - self.texteCuve+="# Temperature (°C) / enthalpie (J/kg)"+"\n" + self.texteCuve+="# Temperature (degC) / enthalpie (J/kg)"+"\n" self.imprime(2,(self.dico_mot["EnthalpieMDB_Fct_Temperature"])) self.texteCuve += self.amontAval('Amont_EnthalpieMDB','Aval_EnthalpieMDB') else : - self.texteCuve+="# Temperature (°C) / chaleur volumique (J/kg/K)"+"\n" + self.texteCuve+="# Temperature (degC) / chaleur volumique (J/kg/K)"+"\n" self.texteCuve+="0. 34.88E+05 "+"\n" self.texteCuve+="20. 34.88E+05 "+"\n" self.texteCuve+="200. 40.87E+05 "+"\n" @@ -1279,7 +1277,7 @@ class Cuve2dgGenerator(PythonGenerator): self.texteCuve+="CC"+"\n" self.texteCuve+="#"+"\n" - self.texteCuve+="# Temperature (°C) / conductivite thermique (W/m/°C)"+"\n" + self.texteCuve+="# Temperature (degC) / conductivite thermique (W/m/degC)"+"\n" if self.dico_mot.has_key('ConductiviteMDB_Fct_Temperature'): self.imprime(2,(self.dico_mot["ConductiviteMDB_Fct_Temperature"])) self.texteCuve += self.amontAval('Amont_ConductiviteMDB','Aval_ConductiviteMDB') @@ -1291,7 +1289,7 @@ class Cuve2dgGenerator(PythonGenerator): self.texteCuve+="CC"+"\n" self.texteCuve+="#"+"\n" - self.texteCuve+="# Temperature (°C) / module d'Young (MPa)"+"\n" + self.texteCuve+="# Temperature (degC) / module d'Young (MPa)"+"\n" if self.dico_mot.has_key('ModuleYoungMDB_Fct_Temperature'): self.imprime(2,(self.dico_mot["ModuleYoungMDB_Fct_Temperature"])) self.texteCuve += self.amontAval('Aval_ModuleYoungMDB','Aval_ModuleYoungMDB') @@ -1303,7 +1301,7 @@ class Cuve2dgGenerator(PythonGenerator): self.texteCuve+="CC"+"\n" self.texteCuve+="#"+"\n" - self.texteCuve+="# Temperature (°C) / coefficient de dilatation thermique (°C-1)"+"\n" + self.texteCuve+="# Temperature (degC) / coefficient de dilatation thermique (degC-1)"+"\n" if self.dico_mot.has_key('CoeffDilatThermMDB_Fct_Temperature'): self.imprime(2,(self.dico_mot["CoeffDilatThermMDB_Fct_Temperature"])) self.texteCuve += self.amontAval('Amont_CoeffDilatThermMDB','Aval_CoeffDilatThermMDB') @@ -1352,20 +1350,20 @@ class Cuve2dgGenerator(PythonGenerator): else : self.texteCuve += self.affecteValeurDefaut('TypeConditionLimiteThermique') - self.texteCuve+="# - si TEMP_IMPO, fournir Instant (s) / Temperature imposee (°C)"+"\n" + self.texteCuve+="# - si TEMP_IMPO, fournir Instant (s) / Temperature imposee (degC)"+"\n" self.texteCuve+="# - si FLUX_REP, fournir Instant (s) / Flux de chaleur impose (W/m2)"+"\n" - self.texteCuve+="# - si ECHANGE, fournir Instant (s) / Temperature impose (°C)"+"\n" + self.texteCuve+="# - si ECHANGE, fournir Instant (s) / Temperature impose (degC)"+"\n" self.texteCuve+="# puis Instant (s) / Coefficient d echange (W/m2/K)"+"\n" self.texteCuve+="# - si DEBIT, fournir Instant (s) / Debit massique (kg/s)"+"\n" - self.texteCuve+="# puis Instant (s) / Temperature d injection de securite (°C)"+"\n" + self.texteCuve+="# puis Instant (s) / Temperature d injection de securite (degC)"+"\n" self.texteCuve+="# puis Modele VESTALE : (DH, DH_MESSAGE), (SECTION, SECTION_MESSAGE), (DELTA, DELTA_MESSAGE), EPS, COEFVESTALE"+"\n" self.texteCuve+="# puis Modele CREARE : (VM, VM_MESSAGE), (T0, T0_MESSAGE), (SE, SE_MESSAGE)"+"\n" - self.texteCuve+="# - si TEMP_FLU, fournir Instant (s) / Temperature du fluide (°C)"+"\n" + self.texteCuve+="# - si TEMP_FLU, fournir Instant (s) / Temperature du fluide (degC)"+"\n" self.texteCuve+="# puis Instant (s) / Debit d injection de securite (kg/s)"+"\n" self.texteCuve+="# puis Modele VESTALE : (DH, DH_MESSAGE), (SECTION, SECTION_MESSAGE), (DELTA, DELTA_MESSAGE), EPS, COEFVESTALE"+"\n" self.texteCuve+="# - si APRP, fournir INSTANT1, INSTANT2, QACCU, QIS"+"\n" self.texteCuve+="# puis TIS_MESSAGE"+"\n" - self.texteCuve+="# puis Instant (s) / Temperature du fluide (°C) tel que dans l'exemple ci-dessous"+"\n" + self.texteCuve+="# puis Instant (s) / Temperature du fluide (degC) tel que dans l'exemple ci-dessous"+"\n" self.texteCuve+="# 0. 286."+"\n" self.texteCuve+="# 12. 20. # 1er palier à T=TACCU"+"\n" self.texteCuve+="# 20. 20. # idem que ci-dessus"+"\n" @@ -1399,7 +1397,7 @@ class Cuve2dgGenerator(PythonGenerator): if str(self.dico_mot["TypeConditionLimiteThermique"])=='Temperature imposee en paroi' or str(self.dico_mot["TypeConditionLimiteThermique"])=='Temperature imposee du fluide et coefficient echange' or str(self.dico_mot["TypeConditionLimiteThermique"])=='Temperature imposee du fluide et debit d injection de securite' or str(self.dico_mot["TypeConditionLimiteThermique"])=='Courbe APRP' : self.texteCuve+="#"+"\n" - self.texteCuve+="# instant (s) / temperature imposee du fluide (°C)"+"\n" + self.texteCuve+="# instant (s) / temperature imposee du fluide (degC)"+"\n" if self.dico_mot.has_key('ProfilTemporel_TemperatureImposeeFluide'): self.imprime(2,(self.dico_mot["ProfilTemporel_TemperatureImposeeFluide"])) self.texteCuve += self.amontAval('Amont_TemperatureImposeeFluide','Aval_TemperatureImposeeFluide') @@ -1464,7 +1462,7 @@ class Cuve2dgGenerator(PythonGenerator): self.texteCuve+="CC"+"\n" self.texteCuve+="#"+"\n" - self.texteCuve+="# instant (s) / Temperature d injection de securite (°C)"+"\n" + self.texteCuve+="# instant (s) / Temperature d injection de securite (degC)"+"\n" if self.dico_mot.has_key('ProfilTemporel_TemperatureInjection'): self.imprime(2,(self.dico_mot["ProfilTemporel_TemperatureInjection"])) self.texteCuve += self.amontAval('Amont_TemperatureInjection','Aval_TemperatureInjection') @@ -1504,7 +1502,7 @@ class Cuve2dgGenerator(PythonGenerator): self.texteCuve += self.ecritVariable('SurfaceEchange_FluideStructure_mess') else : self.texteCuve+="#"+"\n" - self.texteCuve+="# instant (s) / temperature imposee du fluide (°C)"+"\n" + self.texteCuve+="# instant (s) / temperature imposee du fluide (degC)"+"\n" self.texteCuve+="0. 286. "+"\n" self.texteCuve+="20. 20. "+"\n" self.texteCuve+="200. 7. "+"\n"