1 # -*- coding: utf-8 -*-
2 # CONFIGURATION MANAGEMENT OF EDF VERSION
3 # ======================================================================
4 # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG
5 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
6 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
7 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR
8 # (AT YOUR OPTION) ANY LATER VERSION.
10 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT
11 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF
12 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU
13 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.
15 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE
16 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,
17 # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.
20 # ======================================================================
22 Ce module contient le plugin generateur de fichier au format
23 DefaillCUVE pour EFICAS.
27 import types,string,re
29 from Noyau import N_CR
30 from Accas import MCSIMP
31 from generator_python import PythonGenerator
35 Retourne les informations nécessaires pour le chargeur de plugins
37 Ces informations sont retournées dans un dictionnaire
42 # La factory pour créer une instance du plugin
43 'factory' : Cuve2dgGenerator,
47 class Cuve2dgGenerator(PythonGenerator):
49 Ce generateur parcourt un objet de type JDC et produit
50 un texte au format eficas et
51 un texte au format DefaillCUVE
54 # Les extensions de fichier préconisées
57 def __init__(self,cr=None):
58 # Si l'objet compte-rendu n'est pas fourni, on utilise le compte-rendu standard
62 self.cr=N_CR.CR(debut='CR generateur format DefaillCUVE pour DefaillCUVE',
63 fin='fin CR format DefaillCUVE pour DefaillCUVE')
64 # Le texte au format DefaillCUVE est stocké dans l'attribut textCuve
67 # Ce dictionnaire liste le nom des variables utilisees dans le script
69 "NiveauImpression" : "MESSAGE_LEVEL",
70 "FichierDataIn" : "DATARESUME_FILE",
71 "FichierTempSigma" : "TEMPSIG_FILE",
72 "FichierCSV" : "CSV_FILE",
73 "FichierCREARE" : "CREARE_FILE",
74 "GrandeurEvaluee" : "GRANDEUR",
75 "IncrementTemporel" : "INCRTPS",
76 "IncrementMaxTemperature" : "DTPREC",
77 "IncrementMaxTempsAffichage" : "DTARCH",
78 "TraitementGeometrie" : "TYPEGEOM",
79 "RayonInterne" : "RINT",
80 "RayonInterne_mess" : "RINT_MESSAGE",
81 "RayonExterne" : "REXT",
82 "RayonExterne_mess" : "REXT_MESSAGE",
83 "EpaisseurRevetement" : "LREV",
84 "EpaisseurRevetement_mess" : "LREV_MESSAGE",
85 "LigamentExterneMin" : "LIGMIN",
86 "LigamentExterneMin_mess" : "LIGMIN_MESSAGE",
87 "NombreNoeudsMaillage" : "NBNO",
88 "TypeInitial" : "TYPEDEF",
89 "Orientation" : "ORIEDEF",
90 "ProfondeurRadiale" : "PROFDEF",
91 "ProfondeurRadiale_mess" : "PROFDEF_MESSAGE",
92 "ModeCalculLongueur" : "OPTLONG",
93 "Longueur" : "LONGDEF",
94 "Longueur_mess" : "LONGDEF_MESSAGE",
95 "CoefDirecteur" : "PROFSURLONG",
96 "CoefDirecteur_mess" : "PROFSURLONG_MESSAGE",
97 "Constante" : "LONGCONST",
98 "ModeCalculDecalage" : "DECATYP",
99 "DecalageNormalise" : "DECANOR",
100 "DecalageNormalise_mess" : "DECANOR_MESSAGE",
101 "DecalageRadial" : "DECADEF",
102 "DecalageRadial_mess" : "DECADEF_MESSAGE",
103 "Azimut" : "ANGLDEF",
104 "Azimut_mess" : "ANGLDEF_MESSAGE",
105 "Altitude_mess" : "ANGLDEF_MESSAGE",
106 "Altitude" : "ALTIDEF",
107 "Altitude_mess" : "ALTIDEF_MESSAGE",
108 "Pointe" : "POINDEF",
109 "ModeleFluence" : "MODELFLUENCE",
110 "ZoneActiveCoeur_AltitudeSup" : "H1COEUR",
111 "ZoneActiveCoeur_AltitudeInf" : "H2COEUR",
112 "FluenceMax" : "fmax",
113 "KPFrance" : "KPFRANCE",
115 "Azimut_0deg" : "COEFFLUENCE1",
116 "Azimut_5deg" : "COEFFLUENCE2",
117 "Azimut_10deg" : "COEFFLUENCE3",
118 "Azimut_15deg" : "COEFFLUENCE4",
119 "Azimut_20deg" : "COEFFLUENCE5",
120 "Azimut_25deg" : "COEFFLUENCE6",
121 "Azimut_30deg" : "COEFFLUENCE7",
122 "Azimut_35deg" : "COEFFLUENCE8",
123 "Azimut_40deg" : "COEFFLUENCE9",
124 "Azimut_45deg" : "COEFFLUENCE10",
125 "TypeIrradiation" : "TYPEIRR",
127 "ModeleIrradiation" : "MODELIRR",
128 "TeneurCuivre" : "CU",
129 "TeneurCuivre_mess" : "CU_MESSAGE",
130 "TeneurNickel" : "NI",
131 "TeneurNickel_mess" : "NI_MESSAGE",
132 "TeneurPhosphore" : "P",
133 "TeneurPhosphore_mess" : "P_MESSAGE",
134 "MoyenneRTndt" : "RTimoy",
135 "MoyenneRTndt_mess" : "RTimoy_MESSAGE",
136 "CoefVariationRTndt" : "RTicov",
137 "CoefVariationRTndt_mess" : "RTicov_MESSAGE",
138 "EcartTypeRTndt" : "USectDRT",
139 "EcartTypeRTndt_mess" : "USectDRT_MESSAGE",
140 "NombreEcartTypeRTndt" : "nbectDRTNDT",
141 "NombreEcartTypeRTndt_mess" : "nbectDRTNDT_MESSAGE",
142 "ModeleTenacite" : "MODELKIC",
143 "NBRE_CARACTERISTIQUE" : "NBCARAC",
144 "NbEcartType_MoyKIc" : "nbectKIc",
145 "NbEcartType_MoyKIc_mess" : "nbectKIc_MESSAGE",
146 "PalierDuctile_KIc" : "KICPAL",
147 "CoefficientVariation_KIc" : "KICCDV",
148 "Fractile_KIc" : "fractKIc",
149 "Fractile_KIc_mess" : "fractKIc_MESSAGE",
150 "Temperature_KIc100" : "T0WALLIN",
160 "AttnCorrBeta" : "ATTNCORRBETA",
161 "CorrIrwin" : "CORRIRWIN",
162 "ArretDeFissure" : "ARRETFISSURE",
163 "IncrementTailleFissure" : "INCRDEF",
164 "IncrementTailleFissure_mess" : "INCRDEF_MESSAGE",
165 "NbEcartType_MoyKIa" : "nbectKIa",
166 "PalierDuctile_KIa" : "KIAPAL",
167 "CoefficientVariation_KIa" : "KIACDV",
168 "InstantInitialisation" : "INSTINIT",
169 "ConditionLimiteThermiqueREV" : "KTHREV",
170 "TemperatureDeformationNulleREV" : "TREFREV",
171 "TemperaturePourCoefDilatThermREV" : "TDETREV",
172 "CoefficientPoissonREV" : "NUREV",
173 "ConditionLimiteThermiqueMDB" : "KTHMDB",
174 "TemperatureDeformationNulleMDB" : "TREFMDB",
175 "TemperaturePourCoefDilatThermMDB" : "TDETMDB",
176 "CoefficientPoissonMDB" : "NUMDB",
177 "TypeConditionLimiteThermique" : "TYPCLTH",
178 "Instant_1" : "INSTANT1",
179 "Instant_2" : "INSTANT2",
180 "DebitAccumule" : "QACCU",
181 "DebitInjectionSecurite" : "QIS",
182 "TempInjectionSecurite_mess" : "TIS_MESSAGE",
183 "DiametreHydraulique" : "DH",
184 "DiametreHydraulique_mess" : "DH_MESSAGE",
185 "SectionEspaceAnnulaire" : "SECTION",
186 "SectionEspaceAnnulaire_mess" : "SECTION_MESSAGE",
187 "HauteurCaracConvectionNaturelle" : "DELTA",
188 "HauteurCaracConvectionNaturelle_mess" : "DELTA_MESSAGE",
189 "CritereConvergenceRelative" : "EPS",
190 "CoefficientsVestale" : "COEFVESTALE",
191 "VolumeMelange_CREARE" : "VM",
192 "VolumeMelange_CREARE_mess" : "VM_MESSAGE",
193 "TemperatureInitiale_CREARE" : "T0",
194 "TemperatureInitiale_CREARE_mess" : "T0_MESSAGE",
195 "SurfaceEchange_FluideStructure" : "SE",
196 "SurfaceEchange_FluideStructure_mess" : "SE_MESSAGE",
199 # Ce dictionnaire liste le commentaire des variables utilisees dans le script
201 "NiveauImpression" : "Niveau d impression des messages a l ecran (=0 : rien, =1 : temps calcul total, =2 : temps intermediaires)",
202 "FichierDataIn" : "sortie du fichier recapitulatif des donnees d entree {OUI ; NON}",
203 "FichierTempSigma" : "sortie des fichiers temperature et contraintes {OUI ; NON}",
204 "FichierCSV" : "sortie du fichier resultat template_DEFAILLCUVE.CSV {OUI ; NON}",
205 "FichierCREARE" : "sortie du fichier Tfluide et Coef Echange {OUI ; NON}",
206 "GrandeurEvaluee" : "choix de la grandeur sous critere evaluee {FM_KICSURKCP ; MARGE_KI ; MARGE_KCP}",
207 "IncrementTemporel" : "increment temporel pour l analyse PROBABILISTE (si DETERMINISTE, fixer a 1)",
208 "IncrementMaxTemperature" : "increment max de temp/noeud/instant (degC)",
209 "IncrementMaxTempsAffichage" : "increment max de temps pour affichage (s)",
210 "TraitementGeometrie" : "traitement de la geometrie de la cuve : {GEOMETRIE, MAILLAGE}",
211 "RayonInterne" : "rayon interne (m)",
212 "RayonInterne_mess" : "affichage ecran du rayon interne (m)",
213 "RayonExterne" : "rayon externe (m)",
214 "RayonExterne_mess" : "affichage ecran du rayon externe (m)",
215 "EpaisseurRevetement" : "epaisseur revetement (m)",
216 "EpaisseurRevetement_mess" : "affichage ecran de l epaisseur revetement (m)",
217 "LigamentExterneMin" : "ligament externe minimal avant rupture (% de l'epaisseur de cuve)",
218 "LigamentExterneMin_mess" : "affichage ecran du ligament externe minimal avant rupture (% de l'epaisseur de cuve)",
219 "NombreNoeudsMaillage" : "nbre de noeuds dans l'epaisseur de la cuve",
220 "TypeInitial" : "type initial du defaut : DEBOUCHANT=Defaut Debouchant, DSR=Defaut Sous Revetement, DECALE=Defaut Decale",
221 "Orientation" : "orientation (LONGITUD / CIRCONF)",
222 "ProfondeurRadiale" : "profondeur radiale ou encore hauteur (m)",
223 "ProfondeurRadiale_mess" : "affichage ecran de la profondeur radiale ou encore hauteur (m)",
224 "ModeCalculLongueur" : "option pour definir la longueur du defaut (VALEUR pour une valeur fixe, FCTAFFINE pour une fct affine de la profondeur)",
225 "Longueur" : "longueur (m) pour defaut Sous Revetement",
226 "Longueur_mess" : "affichage ecran de la longueur (m) pour defaut Sous Revetement",
227 "CoefDirecteur" : "pente de la fonction affine l = h/profsurlong + a0",
228 "CoefDirecteur_mess" : "affichage ecran de la pente de la fonction affine l = h/profsurlong + a0",
229 "Constante" : "constante de la fonction affine a0",
230 "ModeCalculDecalage" : "type de decalage : normalise (NORMALISE) ou reel (VALEUR)",
231 "DecalageNormalise" : "decalage radial normalise (valeur comprise entre 0. et 1.) pour defaut Sous Revetement",
232 "DecalageNormalise_mess" : "affichage ecran du decalage radial normalise (valeur comprise entre 0. et 1.) pour defaut Sous Revetement",
233 "DecalageRadial" : "decalage radial reel (m) pour defaut decale",
234 "DecalageRadial_mess" : "affichage ecran du decalage radial reel (m) pour defaut decale",
235 "Azimut" : "coordonnee angulaire (degre)",
236 "Azimut_mess" : "affichage ecran de la coordonnee angulaire (degre)",
237 "Altitude" : "altitude (m) : valeur negative",
238 "Altitude_mess" : "affichage ecran de l altitude (m) : valeur negative",
239 "Pointe" : "choix du(des) point(s) du defaut considere {'A','B','BOTH'} pour DSR et DECALE (pour DEBOUCHANT : automatiquement 'B')",
240 "ModeleFluence" : "modele de fluence : {Reglementaire, France, ValeurImposee, SDM, USNRC, REV_2, SDM_Lissage, GrandeDev, GD_Cuve, Cuve1D}",
241 "ZoneActiveCoeur_AltitudeSup" : "cote superieure de la zone active de coeur (ici pour cuve palier 900Mw)",
242 "ZoneActiveCoeur_AltitudeInf" : "cote inferieure de la zone active de coeur (ici pour cuve palier 900Mw)",
243 "FluenceMax" : "fluence maximale assimilee par la cuve (n/cm2)",
244 "KPFrance" : "parametre exponentiel du modele France",
245 "KPUS" : "parametre exponentiel du modele US",
246 "Azimut_0deg" : "fluence a l'azimut 0 (10^19 n/cm)",
247 "Azimut_5deg" : "fluence a l'azimut 5 (10^19 n/cm)",
248 "Azimut_10deg" : "fluence a l'azimut 10 (10^19 n/cm)",
249 "Azimut_15deg" : "fluence a l'azimut 15 (10^19 n/cm)",
250 "Azimut_20deg" : "fluence a l'azimut 20 (10^19 n/cm)",
251 "Azimut_25deg" : "fluence a l'azimut 25 (10^19 n/cm)",
252 "Azimut_30deg" : "fluence a l'azimut 30 (10^19 n/cm)",
253 "Azimut_35deg" : "fluence a l'azimut 35 (10^19 n/cm)",
254 "Azimut_40deg" : "fluence a l'azimut 40 (10^19 n/cm)",
255 "Azimut_45deg" : "fluence a l'azimut 45 (10^19 n/cm)",
256 "TypeIrradiation" : "type irradiation : {RTNDT, FLUENCE}",
257 "RTNDT" : "RTNDT finale (degC)",
258 "ModeleIrradiation" : "modele d irradiation : {HOUSSIN, PERSOZ, LEFEBVRE, USNRCmdb} pour virole et {BRILLAUD,USNRCsoud} pour jointsoude",
259 "TeneurCuivre" : "teneur en cuivre (%)",
260 "TeneurCuivre_mess" : "affichage ecran de la teneur en cuivre (%)",
261 "TeneurNickel" : "teneur en nickel (%)",
262 "TeneurNickel_mess" : "affichage ecran de la teneur en nickel (%)",
263 "TeneurPhosphore" : "teneur en phosphore (%)",
264 "TeneurPhosphore_mess" : "affichage ecran de la teneur en phosphore (%)",
265 "MoyenneRTndt" : "moyenne de la RTNDT initiale : virole C1 de cuve Chinon : mdb=>-17.degC et js=>42.degC (HT-56/05/038 : p.52)",
266 "MoyenneRTndt_mess" : "affichage ecran de la moyenne de la RTNDT initiale",
267 "CoefVariationRTndt" : "coef de variation de la RTNDT initiale",
268 "CoefVariationRTndt_mess" : "affichage ecran du coef de variation de la RTNDT initiale",
269 "EcartTypeRTndt" : "pour modeles USNRCsoud ou USNRCmdb, ecart-type du decalage de RTNDT (°F) (28. pour js et 17. pour mdb)",
270 "EcartTypeRTndt_mess" : "affichage ecran, pour modeles USNRCsoud ou USNRCmdb, ecart-type du decalage de RTNDT (°F) (28. pour js et 17. pour mdb)",
271 "NombreEcartTypeRTndt" : "Nbre d ecart-type par rapport a la moyenne de DRTNDT si analyse PROBABILISTE (en DETERMINISTE, fixer a 2.)",
272 "NombreEcartTypeRTndt_mess" : "affichage ecran du nbre d ecart-type par rapport a la moyenne de DRTNDT si analyse PROBABILISTE",
273 "ModeleTenacite" : "modele de tenacite : {RCC-M, RCC-M_pal, RCC-M_exp, RCC-M_simpl, Houssin_RC, Wallin, REME, ORNL, Frama, WEIB3, WEIB2, LOGWOLF, WEIB-GEN}",
274 "NBRE_CARACTERISTIQUE" : "Nb caracteristique : ORDRE ou QUANTILE",
275 "NbEcartType_MoyKIc" : "Nbre d ecart-type par rapport a la moyenne de KIc si analyse PROBABILISTE (en DETERMINISTE, fixer a -2.)",
276 "NbEcartType_MoyKIc_mess" : "affichage ecran du nbre d ecart-type par rapport a la moyenne de KIc si analyse PROBABILISTE",
277 "PalierDuctile_KIc" : "palier deterministe de K1c (MPa(m^0.5))",
278 "CoefficientVariation_KIc" : "coef de variation de la loi normale de K1c",
279 "Fractile_KIc" : "valeur caracteristique de KIc exprimee en ordre de fractile (%)",
280 "Fractile_KIc_mess" : "affichage ecran de la valeur caracteristique de KIc exprimee en ordre de fractile (%)",
281 "Temperature_KIc100" : "parametre T0 du modele Wallin (degC)",
282 "A1" : "coef des coefs d une WEIBULL generale",
291 "AttnCorrBeta" : "Attenuation de la correction plastique : {OUI, NON} ==> uniquement pour DSR ou DECALE",
292 "CorrIrwin" : "Correction plastique IRWIN : {OUI, NON} ==> uniquement pour DEBOUCHANT",
293 "ArretDeFissure" : "prise en compte de l arret de fissure {OUI, NON} (en PROBABILISTE, fixer a NON)",
294 "IncrementTailleFissure" : "increment de la taille de fissure (m)",
295 "IncrementTailleFissure_mess" : "affichage ecran de l increment de la taille de fissure (m)",
296 "NbEcartType_MoyKIa" : "Nbre d ecart-type par rapport a la moyenne de KIa (nb sigma)",
297 "PalierDuctile_KIa" : "palier deterministe de K1a quand modele RCC-M (MPa(m^0.5))",
298 "CoefficientVariation_KIa" : "coef de variation de la loi normale de K1a",
299 "InstantInitialisation" : "instant initial (s)",
300 "ConditionLimiteThermiqueREV" : "Option 'ENTHALPIE' ou 'CHALEUR'",
301 "TemperatureDeformationNulleREV" : "temperature de deformation nulle (degC)",
302 "TemperaturePourCoefDilatThermREV" : "temperature de definition du coefficient de dilatation thermique (degC)",
303 "CoefficientPoissonREV" : "coefficient de Poisson",
304 "ConditionLimiteThermiqueMDB" : "Option 'ENTHALPIE' ou 'CHALEUR'",
305 "TemperatureDeformationNulleMDB" : "temperature de deformation nulle (degC)",
306 "TemperaturePourCoefDilatThermMDB" : "temperature de definition du coefficient de dilatation thermique (degC)",
307 "CoefficientPoissonMDB" : "coefficient de Poisson",
308 "TypeConditionLimiteThermique" : "Type de condition thermique en paroi interne {TEMP_IMPO,FLUX_REP,ECHANGE,DEBIT,TEMP_FLU,APRP}",
309 "Instant_1" : "Borne inferieure de l intervalle de temps du 2nd palier T1",
310 "Instant_2" : "Borne superieure de l intervalle de temps du 2nd palier T1",
311 "DebitAccumule" : "Debit accumule (en m3/h)",
312 "DebitInjectionSecurite" : "Debit injection de securite (en m3/h)",
313 "TempInjectionSecurite_mess" : "affichage ecran de la temperature injection de securite",
314 "DiametreHydraulique" : "Diametre hydraulique (m)",
315 "DiametreHydraulique_mess" : "affichage ecran du diametre hydraulique (m)",
316 "SectionEspaceAnnulaire" : "Section espace annulaire (m2)",
317 "SectionEspaceAnnulaire_mess" : "affichage ecran de la section espace annulaire (m2)",
318 "HauteurCaracConvectionNaturelle" : "Hauteur caracteristique convection naturelle (m)",
319 "HauteurCaracConvectionNaturelle_mess" : "affichage ecran de la hauteur caracteristique convection naturelle (m)",
320 "CritereConvergenceRelative" : "Critere convergence relative (-)",
321 "CoefficientsVestale" : "Application des coefs de Vestale {OUI;NON}",
322 "VolumeMelange_CREARE" : "Volume de melange CREARE (m3)",
323 "VolumeMelange_CREARE_mess" : "affichage ecran du volume de melange CREARE (m3)",
324 "TemperatureInitiale_CREARE" : "Temperature initiale CREARE (degC)",
325 "TemperatureInitiale_CREARE_mess" : "affichage ecran de la temperature initiale CREARE (degC)",
326 "SurfaceEchange_FluideStructure" : "Surface d'echange fluide/structure (m2)",
327 "SurfaceEchange_FluideStructure_mess" : "affichage ecran de la surface d'echange fluide/structure (m2)",
330 # Ce dictionnaire liste la valeur par defaut des variables utilisees dans le script
332 "NiveauImpression" : "1",
333 "FichierDataIn" : "NON",
334 "FichierTempSigma" : "NON",
335 "FichierCSV" : "NON",
336 "FichierCREARE" : "NON",
337 "GrandeurEvaluee" : "FM_KICSURKCP",
338 "IncrementTemporel" : "1",
339 "IncrementMaxTemperature" : "0.1",
340 "IncrementMaxTempsAffichage" : "1000.",
341 "TraitementGeometrie" : "GEOMETRIE",
342 "RayonInterne" : "1.994",
343 "RayonInterne_mess" : "NON",
344 "RayonExterne" : "2.2015",
345 "RayonExterne_mess" : "NON",
346 "EpaisseurRevetement" : "0.0075",
347 "EpaisseurRevetement_mess" : "NON",
348 "LigamentExterneMin" : "0.75",
349 "LigamentExterneMin_mess" : "NON",
350 "NombreNoeudsMaillage" : "300",
351 "TypeInitial" : "DSR",
352 "Orientation" : "LONGITUD",
353 "ProfondeurRadiale" : "0.006",
354 "ProfondeurRadiale_mess" : "NON",
355 "ModeCalculLongueur" : "VALEUR",
356 "Longueur" : "0.060",
357 "Longueur_mess" : "NON",
358 "CoefDirecteur" : "10.",
359 "CoefDirecteur_mess" : "NON",
361 "ModeCalculDecalage" : "VALEUR",
362 "DecalageNormalise" : "0.1",
363 "DecalageNormalise_mess" : "NON",
364 "DecalageRadial" : "0.",
365 "DecalageRadial_mess" : "NON",
367 "Azimut_mess" : "NON",
369 "Altitude_mess" : "NON",
371 "ModeleFluence" : "Reglementaire",
372 "ZoneActiveCoeur_AltitudeSup" : "-3.536",
373 "ZoneActiveCoeur_AltitudeInf" : "-7.194",
374 "FluenceMax" : "6.5",
377 "Azimut_0deg" : "5.8",
378 "Azimut_5deg" : "5.48",
379 "Azimut_10deg" : "4.46",
380 "Azimut_15deg" : "3.41",
381 "Azimut_20deg" : "3.37",
382 "Azimut_25deg" : "3.16",
383 "Azimut_30deg" : "2.74",
384 "Azimut_35deg" : "2.25",
385 "Azimut_40deg" : "1.89",
386 "Azimut_45deg" : "1.78",
387 "TypeIrradiation" : "RTNDT",
389 "ModeleIrradiation" : "HOUSSIN",
390 "TeneurCuivre" : "0.0972",
391 "TeneurCuivre_mess" : "NON",
392 "TeneurNickel" : "0.72",
393 "TeneurNickel_mess" : "NON",
394 "TeneurPhosphore" : "0.00912",
395 "TeneurPhosphore_mess" : "NON",
396 "MoyenneRTndt" : "-12.0",
397 "MoyenneRTndt_mess" : "NON",
398 "CoefVariationRTndt" : "0.1",
399 "CoefVariationRTndt_mess" : "NON",
400 "EcartTypeRTndt" : "-2.",
401 "EcartTypeRTndt_mess" : "NON",
402 "NombreEcartTypeRTndt" : "2.",
403 "NombreEcartTypeRTndt_mess" : "NON",
404 "ModeleTenacite" : "RCC-M",
405 "NBRE_CARACTERISTIQUE" : "QUANTILE",
406 "NbEcartType_MoyKIc" : "-2.",
407 "NbEcartType_MoyKIc_mess" : "NON",
408 "PalierDuctile_KIc" : "195.",
409 "CoefficientVariation_KIc" : "0.15",
410 "Fractile_KIc" : "5.",
411 "Fractile_KIc_mess" : "NON",
412 "Temperature_KIc100" : "-27.",
422 "AttnCorrBeta" : "NON",
424 "ArretDeFissure" : "NON",
425 "IncrementTailleFissure" : "0.",
426 "IncrementTailleFissure_mess" : "NON",
427 "NbEcartType_MoyKIa" : "0.",
428 "PalierDuctile_KIa" : "0.",
429 "CoefficientVariation_KIa" : "0.",
430 "InstantInitialisation" : "-1.",
431 "ConditionLimiteThermiqueREV" : "CHALEUR",
432 "TemperatureDeformationNulleREV" : "20.",
433 "TemperaturePourCoefDilatThermREV" : "287.",
434 "CoefficientPoissonREV" : "0.3",
435 "ConditionLimiteThermiqueMDB" : "CHALEUR",
436 "TemperatureDeformationNulleMDB" : "20.",
437 "TemperaturePourCoefDilatThermMDB" : "287.",
438 "CoefficientPoissonMDB" : "0.3",
439 "TypeConditionLimiteThermique" : "TEMP_IMPO",
442 "DebitAccumule" : "2.3",
443 "DebitInjectionSecurite" : "0.375",
444 "TempInjectionSecurite_mess" : "NON",
445 "DiametreHydraulique" : "0.3816",
446 "DiametreHydraulique_mess" : "NON",
447 "SectionEspaceAnnulaire" : "0.21712",
448 "SectionEspaceAnnulaire_mess" : "NON",
449 "HauteurCaracConvectionNaturelle" : "6.",
450 "HauteurCaracConvectionNaturelle_mess" : "NON",
451 "CritereConvergenceRelative" : "0.00001",
452 "CoefficientsVestale" : "NON",
453 "VolumeMelange_CREARE" : "14.9",
454 "VolumeMelange_CREARE_mess" : "NON",
455 "TemperatureInitiale_CREARE" : "250.",
456 "TemperatureInitiale_CREARE_mess" : "NON",
457 "SurfaceEchange_FluideStructure" : "0.",
458 "SurfaceEchange_FluideStructure_mess" : "NON",
461 # Ce dictionnaire liste la rubrique d'appartenance des variables utilisees dans le script
463 "NiveauImpression" : "OPTIONS",
464 "FichierDataIn" : "OPTIONS",
465 "FichierTempSigma" : "OPTIONS",
466 "FichierCSV" : "OPTIONS",
467 "FichierCREARE" : "OPTIONS",
468 "GrandeurEvaluee" : "OPTIONS",
469 "IncrementTemporel" : "OPTIONS",
470 "IncrementMaxTemperature" : "OPTIONS",
471 "IncrementMaxTempsAffichage" : "OPTIONS",
472 "TraitementGeometrie" : "DONNEES DE LA CUVE",
473 "RayonInterne" : "DONNEES DE LA CUVE",
474 "RayonInterne_mess" : "DONNEES DE LA CUVE",
475 "RayonExterne" : "DONNEES DE LA CUVE",
476 "RayonExterne_mess" : "DONNEES DE LA CUVE",
477 "EpaisseurRevetement" : "DONNEES DE LA CUVE",
478 "EpaisseurRevetement_mess" : "DONNEES DE LA CUVE",
479 "LigamentExterneMin" : "DONNEES DE LA CUVE",
480 "LigamentExterneMin_mess" : "DONNEES DE LA CUVE",
481 "NombreNoeudsMaillage" : "DONNEES DE LA CUVE",
482 "TypeInitial" : "CARACTERISTIQUES DU DEFAUT",
483 "Orientation" : "CARACTERISTIQUES DU DEFAUT",
484 "ProfondeurRadiale" : "CARACTERISTIQUES DU DEFAUT",
485 "ProfondeurRadiale_mess" : "CARACTERISTIQUES DU DEFAUT",
486 "ModeCalculLongueur" : "CARACTERISTIQUES DU DEFAUT",
487 "Longueur" : "CARACTERISTIQUES DU DEFAUT",
488 "Longueur_mess" : "CARACTERISTIQUES DU DEFAUT",
489 "CoefDirecteur" : "CARACTERISTIQUES DU DEFAUT",
490 "CoefDirecteur_mess" : "CARACTERISTIQUES DU DEFAUT",
491 "Constante" : "CARACTERISTIQUES DU DEFAUT",
492 "ModeCalculDecalage" : "CARACTERISTIQUES DU DEFAUT",
493 "DecalageNormalise" : "CARACTERISTIQUES DU DEFAUT",
494 "DecalageNormalise_mess" : "CARACTERISTIQUES DU DEFAUT",
495 "DecalageRadial" : "CARACTERISTIQUES DU DEFAUT",
496 "DecalageRadial_mess" : "CARACTERISTIQUES DU DEFAUT",
497 "Azimut" : "CARACTERISTIQUES DU DEFAUT",
498 "Azimut_mess" : "CARACTERISTIQUES DU DEFAUT",
499 "Altitude" : "CARACTERISTIQUES DU DEFAUT",
500 "Altitude_mess" : "CARACTERISTIQUES DU DEFAUT",
501 "Pointe" : "CARACTERISTIQUES DU DEFAUT",
502 "ModeleFluence" : "MODELES",
503 "ZoneActiveCoeur_AltitudeSup" : "MODELES",
504 "ZoneActiveCoeur_AltitudeInf" : "MODELES",
505 "FluenceMax" : "MODELES",
506 "KPFrance" : "MODELES",
508 "Azimut_0deg" : "MODELES",
509 "Azimut_5deg" : "MODELES",
510 "Azimut_10deg" : "MODELES",
511 "Azimut_15deg" : "MODELES",
512 "Azimut_20deg" : "MODELES",
513 "Azimut_25deg" : "MODELES",
514 "Azimut_30deg" : "MODELES",
515 "Azimut_35deg" : "MODELES",
516 "Azimut_40deg" : "MODELES",
517 "Azimut_45deg" : "MODELES",
518 "TypeIrradiation" : "MODELES",
520 "ModeleIrradiation" : "MODELES",
521 "TeneurCuivre" : "MODELES",
522 "TeneurCuivre_mess" : "MODELES",
523 "TeneurNickel" : "MODELES",
524 "TeneurNickel_mess" : "MODELES",
525 "TeneurPhosphore" : "MODELES",
526 "TeneurPhosphore_mess" : "MODELES",
527 "MoyenneRTndt" : "MODELES",
528 "MoyenneRTndt_mess" : "MODELES",
529 "CoefVariationRTndt" : "MODELES",
530 "CoefVariationRTndt_mess" : "MODELES",
531 "EcartTypeRTndt" : "MODELES",
532 "EcartTypeRTndt_mess" : "MODELES",
533 "NombreEcartTypeRTndt" : "MODELES",
534 "NombreEcartTypeRTndt_mess" : "MODELES",
535 "ModeleTenacite" : "MODELES",
536 "NBRE_CARACTERISTIQUE" : "MODELES",
537 "NbEcartType_MoyKIc" : "MODELES",
538 "NbEcartType_MoyKIc_mess" : "MODELES",
539 "PalierDuctile_KIc" : "MODELES",
540 "CoefficientVariation_KIc" : "MODELES",
541 "Fractile_KIc" : "MODELES",
542 "Fractile_KIc_mess" : "MODELES",
543 "Temperature_KIc100" : "MODELES",
553 "AttnCorrBeta" : "MODELES",
554 "CorrIrwin" : "MODELES",
555 "ArretDeFissure" : "MODELES",
556 "IncrementTailleFissure" : "MODELES",
557 "IncrementTailleFissure_mess" : "MODELES",
558 "NbEcartType_MoyKIa" : "MODELES",
559 "PalierDuctile_KIa" : "MODELES",
560 "CoefficientVariation_KIa" : "MODELES",
561 "InstantInitialisation" : "ETAT INITIAL",
562 "ConditionLimiteThermiqueREV" : "CARACTERISTIQUES DU REVETEMENT",
563 "TemperatureDeformationNulleREV" : "CARACTERISTIQUES DU REVETEMENT",
564 "TemperaturePourCoefDilatThermREV" : "CARACTERISTIQUES DU REVETEMENT",
565 "CoefficientPoissonREV" : "CARACTERISTIQUES DU REVETEMENT",
566 "ConditionLimiteThermiqueMDB" : "CARACTERISTIQUES DU MDB",
567 "TemperatureDeformationNulleMDB" : "CARACTERISTIQUES DU MDB",
568 "TemperaturePourCoefDilatThermMDB" : "CARACTERISTIQUES DU MDB",
569 "CoefficientPoissonMDB" : "CARACTERISTIQUES DU MDB",
570 "TypeConditionLimiteThermique" : "TRANSITOIRE",
571 "Instant_1" : "TRANSITOIRE",
572 "Instant_2" : "TRANSITOIRE",
573 "DebitAccumule" : "TRANSITOIRE",
574 "DebitInjectionSecurite" : "TRANSITOIRE",
575 "TempInjectionSecurite_mess" : "TRANSITOIRE",
576 "DiametreHydraulique" : "TRANSITOIRE",
577 "DiametreHydraulique_mess" : "TRANSITOIRE",
578 "SectionEspaceAnnulaire" : "TRANSITOIRE",
579 "SectionEspaceAnnulaire_mess" : "TRANSITOIRE",
580 "HauteurCaracConvectionNaturelle" : "TRANSITOIRE",
581 "HauteurCaracConvectionNaturelle_mess" : "TRANSITOIRE",
582 "CritereConvergenceRelative" : "TRANSITOIRE",
583 "CoefficientsVestale" : "TRANSITOIRE",
584 "VolumeMelange_CREARE" : "TRANSITOIRE",
585 "VolumeMelange_CREARE_mess" : "TRANSITOIRE",
586 "TemperatureInitiale_CREARE" : "TRANSITOIRE",
587 "TemperatureInitiale_CREARE_mess" : "TRANSITOIRE",
588 "SurfaceEchange_FluideStructure" : "TRANSITOIRE",
589 "SurfaceEchange_FluideStructure_mess" : "TRANSITOIRE",
592 def gener(self,obj,format='brut',config=None):
597 self.text=PythonGenerator.gener(self,obj,format)
600 def generMCSIMP(self,obj) :
601 self.dico_mot[obj.nom]=obj.valeur
603 for i in obj.get_genealogie() :
605 self.dico_genea[clef]=obj.valeur
606 s=PythonGenerator.generMCSIMP(self,obj)
609 def writeDefault(self, fn):
610 filename = fn[:fn.rfind(".")] + '.don'
611 print "je passe dans writeCuve2DG"
612 self.genereTexteCuve()
613 f = open( filename, 'wb')
615 f.write( self.texteCuve )
617 ftmp = open( "/tmp/data_template", 'wb')
618 ftmp.write( self.texteCuve )
623 Ecrit l'entete du fichier data_template
625 texte = "############################################################################################"+"\n"
627 texte += "# OUTIL D'ANALYSE PROBABILISTE DE LA DUREE DE VIE DES CUVES REP"+"\n"
628 texte += "# ---------------"+"\n"
629 texte += "# FICHIER DE MISE EN DONNEES"+"\n"
631 texte += "# SI CALCUL DETERMINISTE :"+"\n"
632 texte += "# - fixer INCRTPS=1, nbectDRTNDT=2., nbectKIc=-2."+"\n"
633 texte += "# - les calculs ne sont possibles qu'en une seule pointe du defaut (POINDEF<>BOTH)"+"\n"
634 texte += "# SI CALCUL PROBABILISTE :"+"\n"
635 texte += "# - fixer ARRETFISSURE=NON"+"\n"
637 texte += "############################################################################################"+"\n"
641 def rubrique(self, titre):
646 texte += "############################################################################################"+"\n"
647 texte += "# " + titre + "\n"
648 texte += "############################################################################################"+"\n"
652 def sousRubrique(self, soustitre, numtitre):
657 texte += "# " + numtitre + soustitre + "\n"
658 texte += "#==========================================================================================="+"\n"
662 def ecritLigne(self, variablelue):
664 Ecrit l'affectation d'une valeur a sa variable, suivie d'un commentaire
666 texte = "%s = %s # %s\n" % (self.variable[variablelue], str(self.dico_mot[variablelue]), self.comment[variablelue])
669 def affecteValeurDefaut(self, variablelue):
671 Affecte une valeur par defaut a une variable, suivie d'un commentaire
673 print "Warning ==> Dans la rubrique",self.bloc[variablelue],", valeur par defaut pour ",variablelue," = ",self.default[variablelue]
674 texte = "%s = %s # %s\n" % (self.variable[variablelue], self.default[variablelue], self.comment[variablelue])
677 def affecteValeur(self, variablelue, valeuraffectee):
679 Affecte une valeur a une variable, suivie d'un commentaire
681 texte = "%s = %s # %s\n" % (self.variable[variablelue], valeuraffectee, self.comment[variablelue])
684 def ecritVariable(self, variablelue):
685 if self.dico_mot.has_key(variablelue):
686 texte = self.ecritLigne(variablelue)
688 texte = self.affecteValeurDefaut(variablelue)
691 def amontAval(self, amont, aval):
692 if str(self.dico_mot[amont])=='Continu':
693 if str(self.dico_mot[aval])=='Continu':
695 if str(self.dico_mot[aval])=='Lineaire':
697 if str(self.dico_mot[aval])=='Exclu':
699 if str(self.dico_mot[amont])=='Lineaire':
700 if str(self.dico_mot[aval])=='Continu':
702 if str(self.dico_mot[aval])=='Lineaire':
704 if str(self.dico_mot[aval])=='Exclu':
706 if str(self.dico_mot[amont])=='Exclu':
707 if str(self.dico_mot[aval])=='Continu':
709 if str(self.dico_mot[aval])=='Lineaire':
711 if str(self.dico_mot[aval])=='Exclu':
715 def genereTexteCuve(self):
717 self.texteCuve += self.entete()
720 self.texteCuve += self.rubrique('OPTIONS')
722 self.texteCuve += self.sousRubrique('Impression a l ecran', '')
723 if self.dico_mot.has_key('NiveauImpression'):
724 if str(self.dico_mot["NiveauImpression"])=='Aucune impression':
725 self.texteCuve += self.affecteValeur('NiveauImpression', '0')
726 if str(self.dico_mot["NiveauImpression"])=='Temps total':
727 self.texteCuve += self.affecteValeur('NiveauImpression', '1')
728 if str(self.dico_mot["NiveauImpression"])=='Temps intermediaires':
729 self.texteCuve += self.affecteValeur('NiveauImpression', '2')
731 self.texteCuve += self.sousRubrique('Generation de fichiers', '')
732 self.texteCuve += self.ecritVariable('FichierDataIn')
733 self.texteCuve += self.ecritVariable('FichierTempSigma')
734 self.texteCuve += self.ecritVariable('FichierCSV')
735 self.texteCuve += self.ecritVariable('FichierCREARE')
737 self.texteCuve += self.sousRubrique('Grandeur evaluee', '')
738 if self.dico_mot.has_key('GrandeurEvaluee'):
739 if str(self.dico_mot["GrandeurEvaluee"])=='Facteur de marge KIc/KCP':
740 self.texteCuve += self.affecteValeur('GrandeurEvaluee', 'FM_KICSURKCP')
741 if str(self.dico_mot["GrandeurEvaluee"])=='Marge KIc-KI':
742 self.texteCuve += self.affecteValeur('GrandeurEvaluee', 'MARGE_KI')
743 if str(self.dico_mot["GrandeurEvaluee"])=='Marge KIc-KCP':
744 self.texteCuve += self.affecteValeur('GrandeurEvaluee', 'MARGE_KCP')
746 self.texteCuve += self.sousRubrique('Divers', '')
747 self.texteCuve += self.ecritVariable('IncrementTemporel')
748 self.texteCuve += self.ecritVariable('IncrementMaxTemperature')
749 self.texteCuve += self.ecritVariable('IncrementMaxTempsAffichage')
750 if self.dico_mot.has_key('ListeInstants'):
751 self.texteCuve += "# liste des instants pour ecriture des resultats (s)"+"\n"
752 self.imprime(1,(self.dico_mot["ListeInstants"]))
754 print "Warning ==> Dans la rubrique OPTIONS, fournir ListeInstants."
755 self.texteCuve += "# liste des instants pour ecriture des resultats (s)"+"\n"
756 self.texteCuve += " 0.\n"
757 self.texteCuve += " 1.\n"
760 # Rubrique DONNEES DE LA CUVE
761 self.texteCuve += self.rubrique('DONNEES DE LA CUVE')
762 if self.dico_mot.has_key('TraitementGeometrie'):
763 if str(self.dico_mot["TraitementGeometrie"])=='Topologie':
764 self.texteCuve += self.affecteValeur('TraitementGeometrie', 'GEOMETRIE')
765 self.texteCuve+="# - si MAILLAGE, fournir NBNO et liste des abscisses (m)"+"\n"
766 self.texteCuve+="# - si GEOMETRIE, fournir (RINT, RINT_MESSAGE),"+"\n"
767 self.texteCuve+="# (REXT, REXT_MESSAGE),"+"\n"
768 self.texteCuve+="# (LREV, LREV_MESSAGE),"+"\n"
769 self.texteCuve+="# (LIGMIN, LIGMIN_MESSAGE),"+"\n"
770 self.texteCuve+="# NBNO"+"\n"
771 self.texteCuve+="#"+"\n"
772 self.texteCuve += self.ecritVariable('RayonInterne')
773 self.texteCuve += self.ecritVariable('RayonInterne_mess')
774 self.texteCuve += self.ecritVariable('RayonExterne')
775 self.texteCuve += self.ecritVariable('RayonExterne_mess')
776 self.texteCuve += self.ecritVariable('EpaisseurRevetement')
777 self.texteCuve += self.ecritVariable('EpaisseurRevetement_mess')
778 self.texteCuve+="#"+"\n"
779 self.texteCuve += self.ecritVariable('LigamentExterneMin')
780 self.texteCuve += self.ecritVariable('LigamentExterneMin_mess')
781 self.texteCuve+="#"+"\n"
782 self.texteCuve += self.ecritVariable('NombreNoeudsMaillage')
783 if str(self.dico_mot["TraitementGeometrie"])=='Maillage':
784 self.texteCuve += self.affecteValeur('TraitementGeometrie', 'MAILLAGE')
785 self.texteCuve+="# - si MAILLAGE, fournir NBNO et liste des abscisses (m)"+"\n"
786 self.texteCuve+="# - si GEOMETRIE, fournir (RINT, RINT_MESSAGE),"+"\n"
787 self.texteCuve+="# (REXT, REXT_MESSAGE),"+"\n"
788 self.texteCuve+="# (LREV, LREV_MESSAGE),"+"\n"
789 self.texteCuve+="# (LIGMIN, LIGMIN_MESSAGE),"+"\n"
790 self.texteCuve+="# NBNO"+"\n"
791 self.texteCuve+="#"+"\n"
792 self.texteCuve += self.ecritVariable('NombreNoeudsMaillage')
793 self.imprime(1,(self.dico_mot["ListeAbscisses"]))
795 self.texteCuve += self.affecteValeurDefaut('TraitementGeometrie')
796 self.texteCuve+="# - si MAILLAGE, fournir NBNO et liste des abscisses (m)"+"\n"
797 self.texteCuve+="# - si GEOMETRIE, fournir (RINT, RINT_MESSAGE),"+"\n"
798 self.texteCuve+="# (REXT, REXT_MESSAGE),"+"\n"
799 self.texteCuve+="# (LREV, LREV_MESSAGE),"+"\n"
800 self.texteCuve+="# (LIGMIN, LIGMIN_MESSAGE),"+"\n"
801 self.texteCuve+="# NBNO"+"\n"
802 self.texteCuve+="#"+"\n"
803 self.texteCuve += self.affecteValeurDefaut('RayonInterne')
804 self.texteCuve += self.affecteValeurDefaut('RayonInterne_mess')
805 self.texteCuve += self.affecteValeurDefaut('RayonExterne')
806 self.texteCuve += self.affecteValeurDefaut('RayonExterne_mess')
807 self.texteCuve += self.affecteValeurDefaut('EpaisseurRevetement')
808 self.texteCuve += self.affecteValeurDefaut('EpaisseurRevetement_mess')
809 self.texteCuve+="#"+"\n"
810 self.texteCuve += self.affecteValeurDefaut('LigamentExterneMin')
811 self.texteCuve += self.affecteValeurDefaut('LigamentExterneMin_mess')
812 self.texteCuve+="#"+"\n"
813 self.texteCuve += self.affecteValeurDefaut('NombreNoeudsMaillage')
816 # Rubrique CARACTERISTIQUES DU DEFAUT
817 self.texteCuve += self.rubrique('CARACTERISTIQUES DU DEFAUT')
819 if self.dico_mot.has_key('TypeInitial'):
820 if str(self.dico_mot["TypeInitial"])=='Defaut Sous Revetement':
821 self.texteCuve += self.affecteValeur('TypeInitial', 'DSR')
822 if str(self.dico_mot["TypeInitial"])=='Defaut Decale':
823 self.texteCuve += self.affecteValeur('TypeInitial', 'DECALE')
824 if str(self.dico_mot["TypeInitial"])=='Defaut Debouchant':
825 self.texteCuve += self.affecteValeur('TypeInitial', 'DEBOUCHANT')
827 self.texteCuve += self.affecteValeurDefaut('TypeInitial')
829 self.texteCuve+="# Fournir ORIEDEF, (PROFDEF, PROFDEF_MESSAGE)"+"\n"
830 self.texteCuve+="# - Si DSR, fournir OPTLONG, (LONGDEF,LONGDEF_MESSAGE) ou (PROFSURLONG,PROFSURLONG_MESSAGE,LONGCONST)"+"\n"
831 self.texteCuve+="# - Si DECALE, fournir OPTLONG, (LONGDEF,LONGDEF_MESSAGE) ou (PROFSURLONG,PROFSURLONG_MESSAGE,LONGCONST), DECATYP, (DECANOR,DECANOR_MESSAGE) ou (DECADEF,DECADEF_MESSAGE)"+"\n"
832 self.texteCuve+="# - Si DEBOUCHANT, fournir IRWIN"+"\n"
833 self.texteCuve+="# Fournir (ANGLDEF, ANGLDEF_MESSAGE), (ALTIDEF, ALTIDEF_MESSAGE)"+"\n"
834 self.texteCuve+="# - Si DSR ou DECALE, fournir POINDEF"+"\n"
835 self.texteCuve+="#"+"\n"
836 self.texteCuve+="# Remarque :"+"\n"
837 self.texteCuve+="# - si DSR ou DECALE, dans la rubrique 'Modele de tenacite', fournir ATTNCORRBETA (ne pas fournir CORRIRWIN)"+"\n"
838 self.texteCuve+="# - si DEBOUCHANT, dans la rubrique 'Modele de tenacite', fournir CORRIRWIN (ne pas fournir ATTNCORRBETA)"+"\n"
840 self.texteCuve+="#"+"\n"
842 if self.dico_mot.has_key('Orientation'):
843 if str(self.dico_mot["Orientation"])=='Longitudinale':
844 self.texteCuve += self.affecteValeur('Orientation', 'LONGITUD')
845 if str(self.dico_mot["Orientation"])=='Circonferentielle':
846 self.texteCuve += self.affecteValeur('Orientation', 'CIRCONF')
848 self.texteCuve += self.affecteValeurDefaut('Orientation')
850 self.texteCuve+="#"+"\n"
851 self.texteCuve += self.ecritVariable('ProfondeurRadiale')
852 self.texteCuve += self.ecritVariable('ProfondeurRadiale_mess')
854 self.texteCuve+="#"+"\n"
855 if self.dico_mot.has_key('ModeCalculLongueur'):
856 if str(self.dico_mot["ModeCalculLongueur"])=='Valeur':
857 self.texteCuve += self.affecteValeur('ModeCalculLongueur', 'VALEUR')
858 self.texteCuve+="# - Si VALEUR, fournir (LONGDEF, LONGDEF_MESSAGE)"+"\n"
859 self.texteCuve+="# - Si FCTAFFINE, fournir (PROFSURLONG, PROFSURLONG_MESSAGE) et LONGCONST : LONGDEF=PROFDEF/PROFSURLONG + LONGCONST"+"\n"
860 self.texteCuve += self.ecritVariable('Longueur')
861 self.texteCuve += self.ecritVariable('Longueur_mess')
862 if str(self.dico_mot["ModeCalculLongueur"])=='Fonction affine de la profondeur':
863 self.texteCuve += self.affecteValeur('ModeCalculLongueur', 'FCTAFFINE')
864 self.texteCuve+="# - Si VALEUR, fournir (LONGDEF, LONGDEF_MESSAGE)"+"\n"
865 self.texteCuve+="# - Si FCTAFFINE, fournir (PROFSURLONG, PROFSURLONG_MESSAGE) et LONGCONST : LONGDEF=PROFDEF/PROFSURLONG + LONGCONST"+"\n"
866 self.texteCuve += self.ecritVariable('CoefDirecteur')
867 self.texteCuve += self.ecritVariable('CoefDirecteur_mess')
868 self.texteCuve += self.ecritVariable('Constante')
870 self.texteCuve += self.affecteValeurDefaut('ModeCalculLongueur')
871 self.texteCuve+="# - Si VALEUR, fournir (LONGDEF, LONGDEF_MESSAGE)"+"\n"
872 self.texteCuve+="# - Si FCTAFFINE, fournir (PROFSURLONG, PROFSURLONG_MESSAGE) et LONGCONST : LONGDEF=PROFDEF/PROFSURLONG + LONGCONST"+"\n"
873 self.texteCuve += self.affecteValeurDefaut('Longueur')
874 self.texteCuve += self.affecteValeurDefaut('Longueur_mess')
876 if self.dico_mot.has_key('TypeInitial'):
877 if str(self.dico_mot["TypeInitial"])!='Defaut Sous Revetement':
878 self.texteCuve+="#"+"\n"
879 if self.dico_mot.has_key('ModeCalculDecalage'):
880 if str(self.dico_mot["ModeCalculDecalage"])=='Valeur normalisee':
881 self.texteCuve += self.affecteValeur('ModeCalculDecalage', 'NORMALISE')
882 self.texteCuve+="# - Si NORMALISE, fournir (DECANOR, DECANOR_MESSAGE)"+"\n"
883 self.texteCuve+="# - Si VALEUR, fournir (DECADEF, DECADEF_MESSAGE)"+"\n"
884 self.texteCuve += self.ecritVariable('DecalageNormalise')
885 self.texteCuve += self.ecritVariable('DecalageNormalise_mess')
886 if str(self.dico_mot["ModeCalculDecalage"])=='Valeur':
887 self.texteCuve += self.affecteValeur('ModeCalculDecalage', 'VALEUR')
888 self.texteCuve+="# - Si NORMALISE, fournir (DECANOR, DECANOR_MESSAGE)"+"\n"
889 self.texteCuve+="# - Si VALEUR, fournir (DECADEF, DECADEF_MESSAGE)"+"\n"
890 self.texteCuve += self.ecritVariable('DecalageRadial')
891 self.texteCuve += self.ecritVariable('DecalageRadial_mess')
893 self.texteCuve += self.affecteValeurDefaut('ModeCalculDecalage')
894 self.texteCuve+="# - Si NORMALISE, fournir (DECANOR, DECANOR_MESSAGE)"+"\n"
895 self.texteCuve+="# - Si VALEUR, fournir (DECADEF, DECADEF_MESSAGE)"+"\n"
896 self.texteCuve += self.affecteValeurDefaut('DecalageRadial')
897 self.texteCuve += self.affecteValeurDefaut('DecalageRadial_mess')
899 self.texteCuve+="#"+"\n"
900 self.texteCuve += self.ecritVariable('Azimut')
901 self.texteCuve += self.ecritVariable('Azimut_mess')
902 self.texteCuve+="#"+"\n"
903 self.texteCuve += self.ecritVariable('Altitude')
904 self.texteCuve += self.ecritVariable('Altitude_mess')
905 self.texteCuve+="#"+"\n"
906 if self.dico_mot.has_key('Pointe'):
907 if str(self.dico_mot["Pointe"])=='A':
908 self.texteCuve += self.affecteValeur('Pointe', 'A')
909 if str(self.dico_mot["Pointe"])=='B':
910 self.texteCuve += self.affecteValeur('Pointe', 'B')
911 if str(self.dico_mot["Pointe"])=='A et B':
912 self.texteCuve += self.affecteValeur('Pointe', 'BOTH')
914 self.texteCuve += self.affecteValeurDefaut('Pointe')
916 # Rubrique MODELES FLUENCE, IRRADIATION, TENACITE
917 self.texteCuve += self.rubrique('MODELES FLUENCE, IRRADIATION, TENACITE')
918 self.texteCuve += self.sousRubrique('Modele d attenuation de la fluence dans l epaisseur','A.')
920 if self.dico_mot.has_key('ModeleFluence'):
921 if str(self.dico_mot["ModeleFluence"])=='Exponentiel sans revetement k=9.7 (Reglementaire)':
922 self.texteCuve += self.affecteValeur('ModeleFluence', 'Reglementaire')
923 if str(self.dico_mot["ModeleFluence"])=='Exponentiel sans revetement k=12.7 (France)':
924 self.texteCuve += self.affecteValeur('ModeleFluence', 'France')
925 if str(self.dico_mot["ModeleFluence"])=='Exponentiel sans revetement k=0. (ValeurImposee)':
926 self.texteCuve += self.affecteValeur('ModeleFluence', 'ValeurImposee')
927 if str(self.dico_mot["ModeleFluence"])=='Donnees francaises du palier CPY (SDM)':
928 self.texteCuve += self.affecteValeur('ModeleFluence', 'SDM')
929 if str(self.dico_mot["ModeleFluence"])=='Regulatory Guide 1.99 rev 2 (USNRC)':
930 self.texteCuve += self.affecteValeur('ModeleFluence', 'USNRC')
931 if str(self.dico_mot["ModeleFluence"])=='Dossier 900 MWe AP9701 rev 2 (REV_2)':
932 self.texteCuve += self.affecteValeur('ModeleFluence', 'REV_2')
933 if str(self.dico_mot["ModeleFluence"])=='Lissage du modele ajuste (SDM_Lissage)':
934 self.texteCuve += self.affecteValeur('ModeleFluence', 'SDM_Lissage')
935 if str(self.dico_mot["ModeleFluence"])=='Donnees francaises du palier CPY ajustees par secteur angulaire (GrandeDev)':
936 self.texteCuve += self.affecteValeur('ModeleFluence', 'GrandeDev')
937 if str(self.dico_mot["ModeleFluence"])=='Grand developpement (GD_Cuve)':
938 self.texteCuve += self.affecteValeur('ModeleFluence', 'GD_Cuve')
939 if str(self.dico_mot["ModeleFluence"])=='Exponentiel sans revetement k=9.7 (Reglementaire CUVE1D)':
940 self.texteCuve += self.affecteValeur('ModeleFluence', 'Cuve1D')
942 self.texteCuve += self.affecteValeurDefaut('ModeleFluence')
944 self.texteCuve+="# - si France, fournir KPFRANCE"+"\n"
945 self.texteCuve+="# - si USNRC, fournir KPUS"+"\n"
946 self.texteCuve+="# - si modele GD_Cuve, fournir COEFFLUENCE1, COEFFLUENCE2, ..., COEFFLUENCE9, COEFFLUENCE10"+"\n"
947 self.texteCuve+="#"+"\n"
949 self.texteCuve += self.ecritVariable('ZoneActiveCoeur_AltitudeSup')
950 self.texteCuve += self.ecritVariable('ZoneActiveCoeur_AltitudeInf')
951 self.texteCuve += self.ecritVariable('FluenceMax')
952 if self.dico_mot.has_key('ModeleFluence'):
953 if str(self.dico_mot["ModeleFluence"])=='Exponentiel sans revetement k=12.7 (France)':
954 self.texteCuve += self.ecritVariable('KPFrance')
955 if str(self.dico_mot["ModeleFluence"])=='Regulatory Guide 1.99 rev 2 (USNRC)':
956 self.texteCuve += self.ecritVariable('KPUS')
957 if str(self.dico_mot["ModeleFluence"])=='Grand developpement (GD_Cuve)':
958 self.texteCuve += self.ecritVariable('Azimut_0deg')
959 self.texteCuve += self.ecritVariable('Azimut_5deg')
960 self.texteCuve += self.ecritVariable('Azimut_10deg')
961 self.texteCuve += self.ecritVariable('Azimut_15deg')
962 self.texteCuve += self.ecritVariable('Azimut_20deg')
963 self.texteCuve += self.ecritVariable('Azimut_25deg')
964 self.texteCuve += self.ecritVariable('Azimut_30deg')
965 self.texteCuve += self.ecritVariable('Azimut_35deg')
966 self.texteCuve += self.ecritVariable('Azimut_40deg')
967 self.texteCuve += self.ecritVariable('Azimut_45deg')
969 self.texteCuve += self.sousRubrique('Irradiation','B.')
971 if self.dico_mot.has_key('TypeIrradiation'):
973 if str(self.dico_mot["TypeIrradiation"])=='RTndt de la cuve a l instant de l analyse':
974 self.texteCuve += self.affecteValeur('TypeIrradiation', 'RTNDT')
975 self.texteCuve+="# - si RTNDT, fournir RTNDT"+"\n"
976 self.texteCuve+="# - si FLUENCE, fournir MODELIRR, et autres parametres selon MODELIRR (voir ci-dessous)"+"\n"
977 self.texteCuve+="#"+"\n"
978 self.texteCuve += self.ecritVariable('RTNDT')
980 if str(self.dico_mot["TypeIrradiation"])=='Modele d irradiation':
981 self.texteCuve += self.affecteValeur('TypeIrradiation', 'FLUENCE')
982 self.texteCuve+="# - si RTNDT, fournir RTNDT"+"\n"
983 self.texteCuve+="# - si FLUENCE, fournir MODELIRR, et autres parametres selon MODELIRR (voir ci-dessous)"+"\n"
984 self.texteCuve+="#"+"\n"
985 if self.dico_mot.has_key('ModeleIrradiation'):
986 if str(self.dico_mot["ModeleIrradiation"])=='Metal de Base : formule de FIM/FIS Houssin':
987 self.texteCuve += self.affecteValeur('ModeleIrradiation', 'HOUSSIN')
988 if str(self.dico_mot["ModeleIrradiation"])=='Metal de Base : formule de FIM/FIS Persoz':
989 self.texteCuve += self.affecteValeur('ModeleIrradiation', 'PERSOZ')
990 if str(self.dico_mot["ModeleIrradiation"])=='Metal de Base : formule de FIM/FIS Lefebvre':
991 self.texteCuve += self.affecteValeur('ModeleIrradiation', 'LEFEBVRE')
992 if str(self.dico_mot["ModeleIrradiation"])=='Metal de Base : Regulatory Guide 1.00 rev 2':
993 self.texteCuve += self.affecteValeur('ModeleIrradiation', 'USNRCmdb')
994 if str(self.dico_mot["ModeleIrradiation"])=='Joint Soude : formulation de FIM/FIS Brillaud':
995 self.texteCuve += self.affecteValeur('ModeleIrradiation', 'BRILLAUD')
996 if str(self.dico_mot["ModeleIrradiation"])=='Joint Soude : Regulatory Guide 1.00 rev 2':
997 self.texteCuve += self.affecteValeur('ModeleIrradiation', 'USNRCsoud')
999 self.texteCuve += self.affecteValeurDefaut('ModeleIrradiation')
1000 self.texteCuve+="# - pour tout modele, fournir (CU, CU_MESSAGE),"+"\n"
1001 self.texteCuve+="# (NI, NI_MESSAGE),"+"\n"
1002 self.texteCuve+="# - si HOUSSIN, PERSOZ, LEFEBVRE, BRILLAUD, fournir (P, P_MESSAGE)"+"\n"
1003 self.texteCuve+="# - pour tout modele, fournir (RTimoy, RTimoy_MESSAGE),"+"\n"
1004 self.texteCuve+="# - si USNRCsoud ou USNRCmdb, fournir (RTicov, RTicov_MESSAGE)"+"\n"
1005 self.texteCuve+="# (USectDRT, USectDRT_MESSAGE)"+"\n"
1006 self.texteCuve+="# - pour tout modele, fournir (nbectDRTNDT, nbectDRTNDT_MESSAGE)"+"\n"
1007 self.texteCuve+="#"+"\n"
1008 self.texteCuve += self.ecritVariable('TeneurCuivre')
1009 self.texteCuve += self.ecritVariable('TeneurCuivre_mess')
1010 self.texteCuve += self.ecritVariable('TeneurNickel')
1011 self.texteCuve += self.ecritVariable('TeneurNickel_mess')
1012 if str(self.dico_mot["ModeleIrradiation"])=='Metal de Base : formule de FIM/FIS Houssin' or str(self.dico_mot["ModeleIrradiation"])=='Metal de Base : formule de FIM/FIS Persoz' or str(self.dico_mot["ModeleIrradiation"])=='Metal de Base : formule de FIM/FIS Lefebvre' or str(self.dico_mot["ModeleIrradiation"])=='Joint Soude : formulation de FIM/FIS Brillaud':
1013 self.texteCuve += self.ecritVariable('TeneurPhosphore')
1014 self.texteCuve += self.ecritVariable('TeneurPhosphore_mess')
1015 self.texteCuve += self.ecritVariable('MoyenneRTndt')
1016 self.texteCuve += self.ecritVariable('MoyenneRTndt_mess')
1017 if str(self.dico_mot["ModeleIrradiation"])=='Metal de Base : Regulatory Guide 1.00 rev 2' or str(self.dico_mot["ModeleIrradiation"])=='Joint Soude : Regulatory Guide 1.00 rev 2':
1018 self.texteCuve += self.ecritVariable('CoefVariationRTndt')
1019 self.texteCuve += self.ecritVariable('CoefVariationRTndt_mess')
1020 self.texteCuve += self.ecritVariable('EcartTypeRTndt')
1021 self.texteCuve += self.ecritVariable('EcartTypeRTndt_mess')
1022 self.texteCuve += self.ecritVariable('NombreEcartTypeRTndt')
1023 self.texteCuve += self.ecritVariable('NombreEcartTypeRTndt_mess')
1025 self.texteCuve += self.affecteValeurDefaut('TypeIrradiation')
1026 self.texteCuve+="# - si RTNDT, fournir RTNDT"+"\n"
1027 self.texteCuve+="# - si FLUENCE, fournir MODELIRR, et autres parametres selon MODELIRR (voir ci-dessous)"+"\n"
1028 self.texteCuve+="#"+"\n"
1029 self.texteCuve += self.affecteValeurDefaut('RTNDT')
1031 self.texteCuve += self.sousRubrique('Modele de tenacite','C.')
1032 self.texteCuve+="# tenacite d amorcage"+"\n"
1034 if self.dico_mot.has_key('ModeleTenacite'):
1035 if str(self.dico_mot["ModeleTenacite"])=='RCC-M/ASME coefficient=2':
1036 self.texteCuve += self.affecteValeur('ModeleTenacite', 'RCC-M')
1037 if str(self.dico_mot["ModeleTenacite"])=='RCC-M/ASME coefficient=2 CUVE1D':
1038 self.texteCuve += self.affecteValeur('ModeleTenacite', 'RCC-M_simpl')
1039 if str(self.dico_mot["ModeleTenacite"])=='RCC-M/ASME coefficient=2.33 (Houssin)':
1040 self.texteCuve += self.affecteValeur('ModeleTenacite', 'Houssin_RC')
1041 if str(self.dico_mot["ModeleTenacite"])=='RCC-M/ASME avec KI=KIpalier':
1042 self.texteCuve += self.affecteValeur('ModeleTenacite', 'RCC-M_pal')
1043 if str(self.dico_mot["ModeleTenacite"])=='RCC-M/ASME avec KI~exponentiel':
1044 self.texteCuve += self.affecteValeur('ModeleTenacite', 'RCC-M_exp')
1045 if str(self.dico_mot["ModeleTenacite"])=='Weibull basee sur la master cuve':
1046 self.texteCuve += self.affecteValeur('ModeleTenacite', 'Wallin')
1047 if str(self.dico_mot["ModeleTenacite"])=='Weibull basee sur la master cuve (REME)':
1048 self.texteCuve += self.affecteValeur('ModeleTenacite', 'REME')
1049 if str(self.dico_mot["ModeleTenacite"])=='Weibull n\xb01 (etude ORNL)':
1050 self.texteCuve += self.affecteValeur('ModeleTenacite', 'ORNL')
1051 if str(self.dico_mot["ModeleTenacite"])=='Weibull n\xb02':
1052 self.texteCuve += self.affecteValeur('ModeleTenacite', 'WEIB2')
1053 if str(self.dico_mot["ModeleTenacite"])=='Weibull n\xb03':
1054 self.texteCuve += self.affecteValeur('ModeleTenacite', 'WEIB3')
1055 if str(self.dico_mot["ModeleTenacite"])=='Weibull generalisee':
1056 self.texteCuve += self.affecteValeur('ModeleTenacite', 'WEIB-GEN')
1057 if str(self.dico_mot["ModeleTenacite"])=='Exponentielle n\xb01 (Frama)':
1058 self.texteCuve += self.affecteValeur('ModeleTenacite', 'Frama')
1059 if str(self.dico_mot["ModeleTenacite"])=='Exponentielle n\xb02 (LOGWOLF)':
1060 self.texteCuve += self.affecteValeur('ModeleTenacite', 'LOGWOLF')
1062 self.texteCuve += self.affecteValeurDefaut('ModeleTenacite')
1063 self.texteCuve+="# - si RCC-M, RCC-M_pal, Houssin_RC, fournir (nbectKIc, nbectKIc_MESSAGE), KICPAL, KICCDV"+"\n"
1064 self.texteCuve+="# - si RCC-M_exp, fournir (nbectKIc, nbectKIc_MESSAGE), KICCDV"+"\n"
1065 self.texteCuve+="# - si RCC-M_simpl, ne rien fournir"+"\n"
1066 self.texteCuve+="# - si Frama, LOGWOLF, fournir (nbectKIc, nbectKIc_MESSAGE)"+"\n"
1067 self.texteCuve+="# - si REME, ORNL, WEIB3, WEIB2, fournir NBCARAC, puis (nbectKIc, nbectKIc_MESSAGE) ou (fractKIc, fractKIc_MESSAGE) selon valeur de NBCARAC"+"\n"
1068 self.texteCuve+="# - si Wallin, fournir NBCARAC, puis (nbectKIc, nbectKIc_MESSAGE) ou (fractKIc, fractKIc_MESSAGE) selon valeur de NBCARAC,"+"\n"
1069 self.texteCuve+="# puis T0WALLIN"+"\n"
1070 self.texteCuve+="# - si WEIB-GEN, fournir NBCARAC, puis (nbectKIc, nbectKIc_MESSAGE) ou (fractKIc, fractKIc_MESSAGE) selon valeur de NBCARAC,"+"\n"
1071 self.texteCuve+="# puis A1, A2, A3, B1, B2, B3, C1, C2, C3"+"\n"
1072 self.texteCuve+="# loi de Weibull P(K<x) = 1 - exp{-[ (x-a(T)) / b(T) ]^c(T) }"+"\n"
1073 self.texteCuve+="# avec a(T) = A1 + A2*exp[A3*(T-RTNDT)]"+"\n"
1074 self.texteCuve+="# b(T) = B1 + B2*exp[B3*(T-RTNDT)]"+"\n"
1075 self.texteCuve+="# c(T) = C1 + C2*exp[C3*(T-RTNDT)]"+"\n"
1076 self.texteCuve+="#"+"\n"
1077 if self.dico_mot.has_key('ModeleTenacite'):
1078 if str(self.dico_mot["ModeleTenacite"])=='Weibull basee sur la master cuve' or str(self.dico_mot["ModeleTenacite"])=='Weibull n\xb01 (etude ORNL)' or str(self.dico_mot["ModeleTenacite"])=='Weibull n\xb03' or str(self.dico_mot["ModeleTenacite"])=='Weibull n\xb02' :
1079 self.texteCuve += self.ecritVariable('NBRE_CARACTERISTIQUE')
1080 self.texteCuve+="# - Si CARAC = QUANTILE, fournir (nbectKIc, nbectKIc_MESSAGE)"+"\n"
1081 self.texteCuve+="# - Si CARAC = ORDRE, fournir (fractKIc, fractKIc_MESSAGE)"+"\n"
1083 if str(self.dico_mot["ModeleTenacite"])=='RCC-M/ASME coefficient=2' or str(self.dico_mot["ModeleTenacite"])=='RCC-M/ASME avec KI=KIpalier' or str(self.dico_mot["ModeleTenacite"])=='RCC-M/ASME coefficient=2.33 (Houssin)' :
1084 self.texteCuve += self.ecritVariable('NbEcartType_MoyKIc')
1085 self.texteCuve += self.ecritVariable('NbEcartType_MoyKIc_mess')
1086 self.texteCuve += self.ecritVariable('PalierDuctile_KIc')
1087 self.texteCuve += self.ecritVariable('CoefficientVariation_KIc')
1089 if str(self.dico_mot["ModeleTenacite"])=='Exponentielle n\xb01 (Frama)' or str(self.dico_mot["ModeleTenacite"])=='Exponentielle n\xb02 (LOGWOLF)' :
1090 self.texteCuve += self.ecritVariable('NbEcartType_MoyKIc')
1091 self.texteCuve += self.ecritVariable('NbEcartType_MoyKIc_mess')
1093 if str(self.dico_mot["ModeleTenacite"])=='Weibull basee sur la master cuve (REME)' or str(self.dico_mot["ModeleTenacite"])=='Weibull n\xb01 (etude ORNL)' or str(self.dico_mot["ModeleTenacite"])=='Weibull n\xb03' or str(self.dico_mot["ModeleTenacite"])=='Weibull n\xb02' or str(self.dico_mot["ModeleTenacite"])=='Weibull basee sur la master cuve' or str(self.dico_mot["ModeleTenacite"])=='Weibull generalisee':
1094 if str(self.dico_mot["NBRE_CARACTERISTIQUE"])=='QUANTILE' :
1095 self.texteCuve += self.ecritVariable('NbEcartType_MoyKIc')
1096 self.texteCuve += self.ecritVariable('NbEcartType_MoyKIc_mess')
1097 if str(self.dico_mot["NBRE_CARACTERISTIQUE"])=='ORDRE' :
1098 self.texteCuve += self.ecritVariable('Fractile_KIc')
1099 self.texteCuve += self.ecritVariable('Fractile_KIc_mess')
1101 if str(self.dico_mot["ModeleTenacite"])=='Weibull basee sur la master cuve' :
1102 self.texteCuve += self.ecritVariable('Temperature_KIc100')
1104 if str(self.dico_mot["ModeleTenacite"])=='Weibull generalisee' :
1105 self.texteCuve += self.ecritVariable('A1')
1106 self.texteCuve += self.ecritVariable('A2')
1107 self.texteCuve += self.ecritVariable('A3')
1108 self.texteCuve += self.ecritVariable('B1')
1109 self.texteCuve += self.ecritVariable('B2')
1110 self.texteCuve += self.ecritVariable('B3')
1111 self.texteCuve += self.ecritVariable('C1')
1112 self.texteCuve += self.ecritVariable('C2')
1113 self.texteCuve += self.ecritVariable('C3')
1115 self.texteCuve += self.affecteValeurDefaut('NbEcartType_MoyKIc')
1116 self.texteCuve += self.affecteValeurDefaut('NbEcartType_MoyKIc_mess')
1117 self.texteCuve += self.affecteValeurDefaut('PalierDuctile_KIc')
1118 self.texteCuve += self.affecteValeurDefaut('CoefficientVariation_KIc')
1120 self.texteCuve+="#"+"\n"
1121 self.texteCuve+="# Correction plastique"+"\n"
1123 if self.dico_mot.has_key('CorrectionPlastique'):
1124 if str(self.dico_mot["CorrectionPlastique"])=='Correction plastique BETA (pour DSR et defaut decale)':
1125 self.texteCuve += self.affecteValeur('AttnCorrBeta','NON')
1126 if str(self.dico_mot["CorrectionPlastique"])=='Correction plastique BETA attenuee (pour DSR et defaut decale)':
1127 self.texteCuve += self.affecteValeur('AttnCorrBeta','OUI')
1128 if str(self.dico_mot["CorrectionPlastique"])=='Correction plastique IRWIN (pour defaut debouchant)':
1129 self.texteCuve += self.affecteValeur('CorrIrwin','OUI')
1131 self.texteCuve += self.affecteValeurDefaut('AttnCorrBeta')
1133 self.texteCuve+="#"+"\n"
1134 self.texteCuve+="# Prise en compte de l'arret de fissure si DETERMINISTE"+"\n"
1136 self.texteCuve += self.ecritVariable('ArretDeFissure')
1137 self.texteCuve+="# - si ARRETFISSURE=OUI, fournir (INCRDEF, INCRDEF_MESSAGE), nbectKIa, KIAPAL, KIACDV"+"\n"
1138 if self.dico_mot.has_key('ArretDeFissure'):
1139 if str(self.dico_mot["ArretDeFissure"])=='OUI':
1140 self.texteCuve+="#"+"\n"
1141 self.texteCuve += self.ecritVariable('IncrementTailleFissure')
1142 self.texteCuve += self.ecritVariable('IncrementTailleFissure_mess')
1143 self.texteCuve+="#"+"\n"
1144 self.texteCuve+="# Parametres pour le calcul de la tenacite a l arret"+"\n"
1145 self.texteCuve += self.ecritVariable('NbEcartType_MoyKIa')
1146 self.texteCuve += self.ecritVariable('PalierDuctile_KIa')
1147 self.texteCuve += self.ecritVariable('CoefficientVariation_KIa')
1149 # Rubrique Etat initial
1150 self.texteCuve += self.rubrique('ETAT INITIAL')
1152 self.texteCuve+="# Profil radial de la temperature initiale dans la cuve"+"\n"
1153 self.texteCuve+="# abscisse (m) / temp initiale dans la cuve"+"\n"
1154 self.texteCuve+="# Prolongation aux frontieres amont et aval: C = constant / E = exclu / L = lineaire"+"\n"
1155 if self.dico_mot.has_key('ProfilRadial_TemperatureInitiale'):
1156 self.imprime(2,(self.dico_mot["ProfilRadial_TemperatureInitiale"]))
1157 self.texteCuve += self.amontAval('Amont_TemperatureInitiale','Aval_TemperatureInitiale')
1159 self.texteCuve+=" 1.9940 287."+"\n"
1160 self.texteCuve+="CC"+"\n"
1162 self.texteCuve+="#"+"\n"
1163 self.texteCuve+="# Profils radiaux des contraintes residuelles dans la cuve"+"\n"
1164 self.texteCuve+="# abscisse (m) / sigma rr / sigma tt / sigma zz"+"\n"
1165 self.texteCuve+="# Prolongation aux frontieres amont et aval: C = constant / E = exclu / L = lineaire"+"\n"
1166 if self.dico_mot.has_key('ProfilRadial_ContraintesInitiales'):
1167 self.imprime(4,(self.dico_mot["ProfilRadial_ContraintesInitiales"]))
1168 self.texteCuve += self.amontAval('Amont_ContraintesInitiales','Aval_ContraintesInitiales')
1170 self.texteCuve+="1.994 0. 0. 0."+"\n"
1171 self.texteCuve+="CC"+"\n"
1173 self.texteCuve+="#"+"\n"
1174 self.texteCuve+="# Instant initial"+"\n"
1175 self.texteCuve += self.ecritVariable('InstantInitialisation')
1177 # Rubrique CARACTERISTIQUES DU REVETEMENT
1178 self.texteCuve += self.rubrique('CARACTERISTIQUES DU REVETEMENT')
1180 self.texteCuve += self.ecritVariable('ConditionLimiteThermiqueREV')
1181 self.texteCuve+="# - si CHALEUR, fournir Temperature (degC) / chaleur volumique (J/kg/K)"+"\n"
1182 self.texteCuve+="# - si ENTHALPIE, fournir Temperature (degC) / enthalpie (J/kg)"+"\n"
1183 self.texteCuve+="# Finir chacune des listes par la prolongation aux frontieres amont et aval: C = constant / E = exclu / L = lineaire"+"\n"
1184 self.texteCuve+="#"+"\n"
1185 if self.dico_mot.has_key('ChaleurREV_Fct_Temperature'):
1186 self.texteCuve+="# Temperature (degC) / chaleur volumique (J/kg/K)"+"\n"
1187 self.imprime(2,(self.dico_mot["ChaleurREV_Fct_Temperature"]))
1188 self.texteCuve += self.amontAval('Amont_ChaleurREV','Aval_ChaleurREV')
1189 elif self.dico_mot.has_key('EnthalpieREV_Fct_Temperature'):
1190 self.texteCuve+="# Temperature (degC) / enthalpie (J/kg)"+"\n"
1191 self.imprime(2,(self.dico_mot["EnthalpieREV_Fct_Temperature"]))
1192 self.texteCuve += self.amontAval('Amont_EnthalpieREV','Aval_EnthalpieREV')
1194 self.texteCuve+="# Temperature (degC) / chaleur volumique (J/kg/K)"+"\n"
1195 self.texteCuve+="0. 36.03E5 "+"\n"
1196 self.texteCuve+="20. 36.03E5 "+"\n"
1197 self.texteCuve+="200. 41.65E5 "+"\n"
1198 self.texteCuve+="350. 43.47E5 "+"\n"
1199 self.texteCuve+="CC"+"\n"
1201 self.texteCuve+="#"+"\n"
1202 self.texteCuve+="# Temperature (degC) / conductivite thermique (W/m/degC)"+"\n"
1203 if self.dico_mot.has_key('ConductiviteREV_Fct_Temperature'):
1204 self.imprime(2,(self.dico_mot["ConductiviteREV_Fct_Temperature"]))
1205 self.texteCuve += self.amontAval('Amont_ConductiviteREV','Aval_ConductiviteREV')
1207 self.texteCuve+="0. 14.7 "+"\n"
1208 self.texteCuve+="20. 14.7 "+"\n"
1209 self.texteCuve+="200. 17.2 "+"\n"
1210 self.texteCuve+="350. 19.3 "+"\n"
1211 self.texteCuve+="CC"+"\n"
1213 self.texteCuve+="#"+"\n"
1214 self.texteCuve+="# Temperature (degC) / module d'Young (MPa)"+"\n"
1215 if self.dico_mot.has_key('ModuleYoungREV_Fct_Temperature'):
1216 self.imprime(2,(self.dico_mot["ModuleYoungREV_Fct_Temperature"]))
1217 self.texteCuve += self.amontAval('Amont_ModuleYoungREV','Aval_ModuleYoungREV')
1219 self.texteCuve+="0. 198500. "+"\n"
1220 self.texteCuve+="20. 197000. "+"\n"
1221 self.texteCuve+="200. 184000. "+"\n"
1222 self.texteCuve+="350. 172000. "+"\n"
1223 self.texteCuve+="CC"+"\n"
1225 self.texteCuve+="#"+"\n"
1226 self.texteCuve+="# Temperature (degC) / coefficient de dilatation thermique (degC-1)"+"\n"
1227 if self.dico_mot.has_key('CoeffDilatThermREV_Fct_Temperature'):
1228 self.imprime(2,(self.dico_mot["CoeffDilatThermREV_Fct_Temperature"]))
1229 self.texteCuve += self.amontAval('Amont_CoeffDilatThermREV','Aval_CoeffDilatThermREV')
1231 self.texteCuve+="0. 16.40E-6 "+"\n"
1232 self.texteCuve+="20. 16.40E-6 "+"\n"
1233 self.texteCuve+="200. 17.20E-6 "+"\n"
1234 self.texteCuve+="350. 17.77E-6 "+"\n"
1235 self.texteCuve+="CC"+"\n"
1237 self.texteCuve+="#"+"\n"
1238 self.texteCuve+="# Temperature (degC) / limite d'elasticite (MPa)"+"\n"
1239 if self.dico_mot.has_key('LimiteElasticiteREV_Fct_Temperature'):
1240 self.imprime(2,(self.dico_mot["LimiteElasticiteREV_Fct_Temperature"]))
1241 self.texteCuve += self.amontAval('Amont_LimiteElasticiteREV','Aval_LimiteElasticiteREV')
1243 self.texteCuve+="0. 380. "+"\n"
1244 self.texteCuve+="20. 370. "+"\n"
1245 self.texteCuve+="100. 330. "+"\n"
1246 self.texteCuve+="300. 270. "+"\n"
1247 self.texteCuve+="LL"+"\n"
1249 self.texteCuve+="#"+"\n"
1250 self.texteCuve += self.ecritVariable('TemperatureDeformationNulleREV')
1251 self.texteCuve += self.ecritVariable('TemperaturePourCoefDilatThermREV')
1252 self.texteCuve += self.ecritVariable('CoefficientPoissonREV')
1254 # Rubrique CARACTERISTIQUES DU METAL DE BASE
1255 self.texteCuve += self.rubrique('CARACTERISTIQUES DU METAL DE BASE')
1257 self.texteCuve += self.ecritVariable('ConditionLimiteThermiqueMDB')
1259 self.texteCuve+="# - si CHALEUR, fournir Temperature (degC) / chaleur volumique (J/kg/K)"+"\n"
1260 self.texteCuve+="# - si ENTHALPIE, fournir Temperature (degC) / enthalpie (J/kg)"+"\n"
1261 self.texteCuve+="# Finir chacune des listes par la prolongation aux frontieres amont et aval: C = constant / E = exclu / L = lineaire"+"\n"
1262 self.texteCuve+="#"+"\n"
1264 if self.dico_mot.has_key('ChaleurMDB_Fct_Temperature'):
1265 self.texteCuve+="# Temperature (degC) / chaleur volumique (J/kg/K)"+"\n"
1266 self.imprime(2,(self.dico_mot["ChaleurMDB_Fct_Temperature"]))
1267 self.texteCuve += self.amontAval('Amont_ChaleurMDB','Aval_ChaleurMDB')
1268 elif self.dico_mot.has_key('EnthalpieMDB_Fct_Temperature'):
1269 self.texteCuve+="# Temperature (degC) / enthalpie (J/kg)"+"\n"
1270 self.imprime(2,(self.dico_mot["EnthalpieMDB_Fct_Temperature"]))
1271 self.texteCuve += self.amontAval('Amont_EnthalpieMDB','Aval_EnthalpieMDB')
1273 self.texteCuve+="# Temperature (degC) / chaleur volumique (J/kg/K)"+"\n"
1274 self.texteCuve+="0. 34.88E+05 "+"\n"
1275 self.texteCuve+="20. 34.88E+05 "+"\n"
1276 self.texteCuve+="200. 40.87E+05 "+"\n"
1277 self.texteCuve+="350. 46.02E+05 "+"\n"
1278 self.texteCuve+="CC"+"\n"
1280 self.texteCuve+="#"+"\n"
1281 self.texteCuve+="# Temperature (degC) / conductivite thermique (W/m/degC)"+"\n"
1282 if self.dico_mot.has_key('ConductiviteMDB_Fct_Temperature'):
1283 self.imprime(2,(self.dico_mot["ConductiviteMDB_Fct_Temperature"]))
1284 self.texteCuve += self.amontAval('Amont_ConductiviteMDB','Aval_ConductiviteMDB')
1286 self.texteCuve+="0. 37.7 "+"\n"
1287 self.texteCuve+="20. 37.7 "+"\n"
1288 self.texteCuve+="200. 40.5 "+"\n"
1289 self.texteCuve+="350. 38.7 "+"\n"
1290 self.texteCuve+="CC"+"\n"
1292 self.texteCuve+="#"+"\n"
1293 self.texteCuve+="# Temperature (degC) / module d'Young (MPa)"+"\n"
1294 if self.dico_mot.has_key('ModuleYoungMDB_Fct_Temperature'):
1295 self.imprime(2,(self.dico_mot["ModuleYoungMDB_Fct_Temperature"]))
1296 self.texteCuve += self.amontAval('Aval_ModuleYoungMDB','Aval_ModuleYoungMDB')
1298 self.texteCuve+="0. 205000. "+"\n"
1299 self.texteCuve+="20. 204000. "+"\n"
1300 self.texteCuve+="200. 193000. "+"\n"
1301 self.texteCuve+="350. 180000. "+"\n"
1302 self.texteCuve+="CC"+"\n"
1304 self.texteCuve+="#"+"\n"
1305 self.texteCuve+="# Temperature (degC) / coefficient de dilatation thermique (degC-1)"+"\n"
1306 if self.dico_mot.has_key('CoeffDilatThermMDB_Fct_Temperature'):
1307 self.imprime(2,(self.dico_mot["CoeffDilatThermMDB_Fct_Temperature"]))
1308 self.texteCuve += self.amontAval('Amont_CoeffDilatThermMDB','Aval_CoeffDilatThermMDB')
1310 self.texteCuve+="0. 11.22E-6 "+"\n"
1311 self.texteCuve+="20. 11.22E-6 "+"\n"
1312 self.texteCuve+="200. 12.47E-6 "+"\n"
1313 self.texteCuve+="350. 13.08E-6 "+"\n"
1314 self.texteCuve+="CC"+"\n"
1316 self.texteCuve+="#"+"\n"
1317 self.texteCuve += self.ecritVariable('TemperatureDeformationNulleMDB')
1318 self.texteCuve += self.ecritVariable('TemperaturePourCoefDilatThermMDB')
1319 self.texteCuve += self.ecritVariable('CoefficientPoissonMDB')
1321 # Rubrique CARACTERISTIQUES DU TRANSITOIRE MECANIQUE-THERMOHYDRAULIQUE
1322 self.texteCuve += self.rubrique('CARACTERISTIQUES DU TRANSITOIRE MECANIQUE-THERMOHYDRAULIQUE')
1323 self.texteCuve += self.sousRubrique('Chargement mecanique : transitoire de pression','')
1325 self.texteCuve+="# instant (s) / pression (MPa)"+"\n"
1326 self.texteCuve+="# Prolongation aux frontieres amont et aval: C = constant / E = exclu / L = lineaire"+"\n"
1327 if self.dico_mot.has_key('ProfilTemporel_Pression'):
1328 self.imprime(2,(self.dico_mot["ProfilTemporel_Pression"]))
1329 self.texteCuve += self.amontAval('Amont_Pression','Aval_Pression')
1331 self.texteCuve+="0. 15.5 "+"\n"
1332 self.texteCuve+="20. 0.1 "+"\n"
1333 self.texteCuve+="200. 0.1 "+"\n"
1334 self.texteCuve+="1000. 0.1 "+"\n"
1335 self.texteCuve+="CC"+"\n"
1337 self.texteCuve += self.sousRubrique('Chargement thermo-hydraulique','')
1338 if self.dico_mot.has_key('TypeConditionLimiteThermique'):
1339 if str(self.dico_mot["TypeConditionLimiteThermique"])=='Temperature imposee en paroi':
1340 self.texteCuve += self.affecteValeur('TypeConditionLimiteThermique', 'TEMP_IMPO')
1341 if str(self.dico_mot["TypeConditionLimiteThermique"])=='Flux de chaleur impose en paroi':
1342 self.texteCuve += self.affecteValeur('TypeConditionLimiteThermique', 'FLUX_REP')
1343 if str(self.dico_mot["TypeConditionLimiteThermique"])=='Temperature imposee du fluide et coefficient echange':
1344 self.texteCuve += self.affecteValeur('TypeConditionLimiteThermique', 'ECHANGE')
1345 if str(self.dico_mot["TypeConditionLimiteThermique"])=='Debit massique et temperature d injection de securite':
1346 self.texteCuve += self.affecteValeur('TypeConditionLimiteThermique', 'DEBIT')
1347 if str(self.dico_mot["TypeConditionLimiteThermique"])=='Temperature imposee du fluide et debit d injection de securite':
1348 self.texteCuve += self.affecteValeur('TypeConditionLimiteThermique', 'TEMP_FLU')
1349 if str(self.dico_mot["TypeConditionLimiteThermique"])=='Courbe APRP':
1350 self.texteCuve += self.affecteValeur('TypeConditionLimiteThermique', 'APRP')
1352 self.texteCuve += self.affecteValeurDefaut('TypeConditionLimiteThermique')
1354 self.texteCuve+="# - si TEMP_IMPO, fournir Instant (s) / Temperature imposee (degC)"+"\n"
1355 self.texteCuve+="# - si FLUX_REP, fournir Instant (s) / Flux de chaleur impose (W/m2)"+"\n"
1356 self.texteCuve+="# - si ECHANGE, fournir Instant (s) / Temperature impose (degC)"+"\n"
1357 self.texteCuve+="# puis Instant (s) / Coefficient d echange (W/m2/K)"+"\n"
1358 self.texteCuve+="# - si DEBIT, fournir Instant (s) / Debit massique (kg/s)"+"\n"
1359 self.texteCuve+="# puis Instant (s) / Temperature d injection de securite (degC)"+"\n"
1360 self.texteCuve+="# puis Modele VESTALE : (DH, DH_MESSAGE), (SECTION, SECTION_MESSAGE), (DELTA, DELTA_MESSAGE), EPS, COEFVESTALE"+"\n"
1361 self.texteCuve+="# puis Modele CREARE : (VM, VM_MESSAGE), (T0, T0_MESSAGE), (SE, SE_MESSAGE)"+"\n"
1362 self.texteCuve+="# - si TEMP_FLU, fournir Instant (s) / Temperature du fluide (degC)"+"\n"
1363 self.texteCuve+="# puis Instant (s) / Debit d injection de securite (kg/s)"+"\n"
1364 self.texteCuve+="# puis Modele VESTALE : (DH, DH_MESSAGE), (SECTION, SECTION_MESSAGE), (DELTA, DELTA_MESSAGE), EPS, COEFVESTALE"+"\n"
1365 self.texteCuve+="# - si APRP, fournir INSTANT1, INSTANT2, QACCU, QIS"+"\n"
1366 self.texteCuve+="# puis TIS_MESSAGE"+"\n"
1367 self.texteCuve+="# puis Instant (s) / Temperature du fluide (degC) tel que dans l'exemple ci-dessous"+"\n"
1368 self.texteCuve+="# 0. 286."+"\n"
1369 self.texteCuve+="# 12. 20. # 1er palier à T=TACCU"+"\n"
1370 self.texteCuve+="# 20. 20. # idem que ci-dessus"+"\n"
1371 self.texteCuve+="# 21. 18. # 2nd palier à T=T1 : sera remplace par nouvelle valeur calculee par fonction idoine"+"\n"
1372 self.texteCuve+="# 45. 18. # idem que ci-dessus"+"\n"
1373 if self.dico_mot.has_key('TypeConditionLimiteThermique'):
1374 if str(self.dico_mot["TypeConditionLimiteThermique"])=='Courbe APRP':
1375 self.texteCuve+="# 46. 9999999999. # 3eme palier à T=Tis, temperature d injection de securite"+"\n"
1377 self.texteCuve+="# 46. %INLET-TIS% # 3eme palier à T=Tis, temperature d injection de securite"+"\n"
1379 self.texteCuve+="# 46. %INLET-TIS% # 3eme palier à T=Tis, temperature d injection de securite"+"\n"
1380 self.texteCuve+="# 1870. 9999999999. # idem que ci-dessus"+"\n"
1381 self.texteCuve+="# 1871. 80."+"\n"
1382 self.texteCuve+="# 3871. 80."+"\n"
1383 self.texteCuve+="# puis Instant (s) / Debit d injection de securite (kg/s)"+"\n"
1384 self.texteCuve+="# puis Modele VESTALE : (DH, DH_MESSAGE), (SECTION, SECTION_MESSAGE), (DELTA, DELTA_MESSAGE), EPS, COEFVESTALE"+"\n"
1385 self.texteCuve+="# Finir chacune des listes par la prolongation aux frontieres amont et aval: C = constant / E = exclu / L = lineaire"+"\n"
1386 self.texteCuve+="#"+"\n"
1388 if self.dico_mot.has_key('TypeConditionLimiteThermique'):
1390 if str(self.dico_mot["TypeConditionLimiteThermique"])=='Courbe APRP':
1391 self.texteCuve+="#"+"\n"
1392 self.texteCuve+="# Definition de parametres pour le cas d un transitoire APRP"+"\n"
1393 self.texteCuve += self.ecritVariable('Instant_1')
1394 self.texteCuve += self.ecritVariable('Instant_2')
1395 self.texteCuve += self.ecritVariable('DebitAccumule')
1396 self.texteCuve += self.ecritVariable('DebitInjectionSecurite')
1397 self.texteCuve += self.ecritVariable('TempInjectionSecurite_mess')
1399 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' :
1400 self.texteCuve+="#"+"\n"
1401 self.texteCuve+="# instant (s) / temperature imposee du fluide (degC)"+"\n"
1402 if self.dico_mot.has_key('ProfilTemporel_TemperatureImposeeFluide'):
1403 self.imprime(2,(self.dico_mot["ProfilTemporel_TemperatureImposeeFluide"]))
1404 self.texteCuve += self.amontAval('Amont_TemperatureImposeeFluide','Aval_TemperatureImposeeFluide')
1406 self.texteCuve+="0. 286. "+"\n"
1407 self.texteCuve+="20. 20. "+"\n"
1408 self.texteCuve+="200. 7. "+"\n"
1409 self.texteCuve+="1000. 80. "+"\n"
1410 self.texteCuve+="CC"+"\n"
1412 if str(self.dico_mot["TypeConditionLimiteThermique"])=='Flux de chaleur impose en paroi':
1413 self.texteCuve+="#"+"\n"
1414 self.texteCuve+="# instant (s) / flux de chaleur impose (W/m2)"+"\n"
1415 if self.dico_mot.has_key('ProfilTemporel_FluxChaleur'):
1416 self.imprime(2,(self.dico_mot["ProfilTemporel_FluxChaleur"]))
1417 self.texteCuve += self.amontAval('Amont_FluxChaleur','Aval_FluxChaleur')
1418 self.texteCuve+="#"+"\n"
1420 self.texteCuve+="0. -0. "+"\n"
1421 self.texteCuve+="20. -366290. "+"\n"
1422 self.texteCuve+="200. -121076. "+"\n"
1423 self.texteCuve+="1000. -56372."+"\n"
1424 self.texteCuve+="CC"+"\n"
1426 if str(self.dico_mot["TypeConditionLimiteThermique"])=='Temperature imposee du fluide et debit d injection de securite' or str(self.dico_mot["TypeConditionLimiteThermique"])=='Courbe APRP':
1427 self.texteCuve+="#"+"\n"
1428 self.texteCuve+="# instant (s) / Debit d injection de securite (kg/s)"+"\n"
1429 if self.dico_mot.has_key('ProfilTemporel_DebitInjection'):
1430 self.imprime(2,(self.dico_mot["ProfilTemporel_DebitInjection"]))
1431 self.texteCuve += self.amontAval('Amont_DebitInjection','Aval_DebitInjection')
1433 self.texteCuve+="0. 4590. "+"\n"
1434 self.texteCuve+="20. 4590. "+"\n"
1435 self.texteCuve+="200. 340. "+"\n"
1436 self.texteCuve+="1000. 31.1 "+"\n"
1437 self.texteCuve+="CC"+"\n"
1439 if str(self.dico_mot["TypeConditionLimiteThermique"])=='Temperature imposee du fluide et coefficient echange' :
1440 self.texteCuve+="#"+"\n"
1441 self.texteCuve+="# instant (s) / Coefficient d echange (W/m2/K)"+"\n"
1442 if self.dico_mot.has_key('ProfilTemporel_CoefficientEchange'):
1443 self.imprime(2,(self.dico_mot["ProfilTemporel_CoefficientEchange"]))
1444 self.texteCuve += self.amontAval('Amont_CoefficientEchange','Aval_CoefficientEchange')
1446 self.texteCuve+="0. 138454. "+"\n"
1447 self.texteCuve+="20. 19972. "+"\n"
1448 self.texteCuve+="200. 2668. "+"\n"
1449 self.texteCuve+="1000. 2668. "+"\n"
1450 self.texteCuve+="CC"+"\n"
1452 if str(self.dico_mot["TypeConditionLimiteThermique"])=='Debit massique et temperature d injection de securite' :
1453 self.texteCuve+="#"+"\n"
1454 self.texteCuve+="# instant (s) / Debit massique (kg/s)"+"\n"
1455 if self.dico_mot.has_key('ProfilTemporel_DebitMassique'):
1456 self.imprime(2,(self.dico_mot["ProfilTemporel_DebitMassique"]))
1457 self.texteCuve += self.amontAval('Amont_DebitMassique','Aval_DebitMassique')
1459 self.texteCuve+="0. 18.4 "+"\n"
1460 self.texteCuve+="20. 18.4 "+"\n"
1461 self.texteCuve+="200. 31.1 "+"\n"
1462 self.texteCuve+="1000. 31.1 "+"\n"
1463 self.texteCuve+="CC"+"\n"
1465 self.texteCuve+="#"+"\n"
1466 self.texteCuve+="# instant (s) / Temperature d injection de securite (degC)"+"\n"
1467 if self.dico_mot.has_key('ProfilTemporel_TemperatureInjection'):
1468 self.imprime(2,(self.dico_mot["ProfilTemporel_TemperatureInjection"]))
1469 self.texteCuve += self.amontAval('Amont_TemperatureInjection','Aval_TemperatureInjection')
1471 self.texteCuve+="0. 7.0 "+"\n"
1472 self.texteCuve+="20. 7.0 "+"\n"
1473 self.texteCuve+="200. 7.0 "+"\n"
1474 self.texteCuve+="1000. 7.0 "+"\n"
1475 self.texteCuve+="CC"+"\n"
1477 if str(self.dico_mot["TypeConditionLimiteThermique"])=='Debit massique et temperature d injection de securite' or str(self.dico_mot["TypeConditionLimiteThermique"])=='Temperature imposee du fluide et debit d injection de securite' or str(self.dico_mot["TypeConditionLimiteThermique"])=='Courbe APRP' :
1478 self.texteCuve+="#"+"\n"
1479 self.texteCuve+="# Transitoire des coefficients d echange : modele VESTALE"+"\n"
1480 self.texteCuve+="#"+"\n"
1481 self.texteCuve += self.ecritVariable('DiametreHydraulique')
1482 self.texteCuve += self.ecritVariable('DiametreHydraulique_mess')
1483 self.texteCuve+="#"+"\n"
1484 self.texteCuve += self.ecritVariable('SectionEspaceAnnulaire')
1485 self.texteCuve += self.ecritVariable('SectionEspaceAnnulaire_mess')
1486 self.texteCuve+="#"+"\n"
1487 self.texteCuve += self.ecritVariable('HauteurCaracConvectionNaturelle')
1488 self.texteCuve += self.ecritVariable('HauteurCaracConvectionNaturelle_mess')
1489 self.texteCuve+="#"+"\n"
1490 self.texteCuve += self.ecritVariable('CritereConvergenceRelative')
1491 self.texteCuve += self.ecritVariable('CoefficientsVestale')
1492 if str(self.dico_mot["TypeConditionLimiteThermique"])=='Debit massique et temperature d injection de securite':
1493 self.texteCuve+="#"+"\n"
1494 self.texteCuve+="# Transitoire de temperature fluide locale : modele CREARE"+"\n"
1495 self.texteCuve+="#"+"\n"
1496 self.texteCuve += self.ecritVariable('VolumeMelange_CREARE')
1497 self.texteCuve += self.ecritVariable('VolumeMelange_CREARE_mess')
1498 self.texteCuve+="#"+"\n"
1499 self.texteCuve += self.ecritVariable('TemperatureInitiale_CREARE')
1500 self.texteCuve += self.ecritVariable('TemperatureInitiale_CREARE_mess')
1501 self.texteCuve+="#"+"\n"
1502 self.texteCuve += self.ecritVariable('SurfaceEchange_FluideStructure')
1503 self.texteCuve += self.ecritVariable('SurfaceEchange_FluideStructure_mess')
1505 self.texteCuve+="#"+"\n"
1506 self.texteCuve+="# instant (s) / temperature imposee du fluide (degC)"+"\n"
1507 self.texteCuve+="0. 286. "+"\n"
1508 self.texteCuve+="20. 20. "+"\n"
1509 self.texteCuve+="200. 7. "+"\n"
1510 self.texteCuve+="1000. 80. "+"\n"
1511 self.texteCuve+="CC"+"\n"
1512 self.texteCuve+="#"+"\n"
1513 self.texteCuve+="############################################################################################"+"\n"
1516 def imprime(self,nbdeColonnes,valeur):
1518 self.transforme(valeur)
1520 while i < len(self.liste):
1521 for k in range(nbdeColonnes) :
1522 self.texteCuve+=str(self.liste[i+k]) +" "
1523 self.texteCuve+="\n"
1527 def transforme(self,valeur):
1529 if type(i) == tuple :
1532 self.liste.append(i)