From 2ee0146a60cc03e0fb3ee084112326ce0a697e2b Mon Sep 17 00:00:00 2001 From: Yohann Pipeau Date: Fri, 22 Apr 2022 17:57:33 +0200 Subject: [PATCH] Add objects to declare DKLib files into the data model --- ReacteurNumerique/cata_RN_EDG.py | 64 +++++++++++++++++++++++++ ReacteurNumerique/edg_REP1300_FULL.comm | 16 ++++++- 2 files changed, 79 insertions(+), 1 deletion(-) diff --git a/ReacteurNumerique/cata_RN_EDG.py b/ReacteurNumerique/cata_RN_EDG.py index 05be320d..120b9812 100644 --- a/ReacteurNumerique/cata_RN_EDG.py +++ b/ReacteurNumerique/cata_RN_EDG.py @@ -503,6 +503,70 @@ Techno_data = OPER( typ="R")) +class _AssemblyDKLibFile(ASSD): + """Manage informations about a fuel assembly DKLib file.""" + + +class _ReflectorDKLibFile(ASSD): + """Manage informations about a reflector DKLib file.""" + + +AssemblyDKLibFile = OPER( + nom="AssemblyDKLibFile", + sd_prod=_AssemblyDKLibFile, + fr="Description d'un fichier DKLib assemblage combustible", + ang="Description of a fuel assembly DKLib file", + filename=SIMP( + fr="Nom du fichier DKLib", + ang="DKLib filename", + statut="o", + typ="TXM"), + pattern=SIMP( + fr="Nom du pattern à utiliser dans le fichier DKLib", + ang="Name of the pattern to use in the DKLib file", + statut="o", + typ="TXM"), + rod_bank_names=SIMP( + fr=("Nom de la configuration de grappe dans la DKLib pour chaque type " + "de matériaux absorbants disponibles dans le modèle sous la forme " + "({{{}}}, nom dans la DKLib)").format(", ".join(ROD_COMPOSITIONS)), + ang=("Name of the rod cluster configuration in the DKLib file for any " + "type of absorbing materials available in the model under the form " + "({{{}}}, name in the DKLib)").format(", ".join(ROD_COMPOSITIONS)), + statut="o", + typ=Tuple(2), + # TODO: Check if the first string is ROD_COMPOSITIONS + validators=VerifTypeTuple(("TXM", "TXM")), + max="**")) + + +ReflectorDKLibFile = OPER( + nom="ReflectorDKLibFile", + sd_prod=_ReflectorDKLibFile, + fr="Description d'un fichier DKLib réflecteur", + ang="Description of a reflector DKLib file", + filename=SIMP( + fr="Nom du fichier DKLib", + ang="DKLib filename", + statut="o", + typ="TXM"), + radial_pattern=SIMP( + fr="Nom du pattern contenant les données du réflecteur radial", + ang="Name of the pattern containing the radial reflector data", + statut="o", + typ="TXM"), + lower_pattern=SIMP( + fr="Nom du pattern contenant les données du réflecteur axial bas", + ang="Name of the pattern containing the lower reflector data", + statut="o", + typ="TXM"), + upper_pattern=SIMP( + fr="Nom du pattern contenant les données du réflecteur axial haut", + ang="Name of the pattern containing the upper reflector data", + statut="o", + typ="TXM")) + + # TODO: Split this class in two: neutronic and thermalhydraulic) # TODO: Or split this class in N classes (one for each code) Model_data = OPER( diff --git a/ReacteurNumerique/edg_REP1300_FULL.comm b/ReacteurNumerique/edg_REP1300_FULL.comm index 4ec727b3..c47a2f89 100644 --- a/ReacteurNumerique/edg_REP1300_FULL.comm +++ b/ReacteurNumerique/edg_REP1300_FULL.comm @@ -160,6 +160,20 @@ techno_data=Techno_data(assembly_list=(REF,U1,UGD,), by_pass=0.07, core_volumic_flowrate=90940.0,); +AF3R_400=AssemblyDKLibFile(filename='cocagne_data/dklib/AF3R_400.dklib', + pattern='PALU_AF3R_17_4.00_0P_0P_100_100__535_306.5_0.7127__500____________________________P13', + rod_bank_names=(('Black','black_rods'),('Grey','grey_rods'),('B4C','b4c_rods')),); + +AF3R_400_12G_GD80U071=AssemblyDKLibFile(filename='cocagne_data/dklib/AF3R_400_12G_GD80U071.dklib', + pattern=\ + 'PALU_AF3R_17_4.0012G12G_100_100__535_306.5_0.7127__500___________GD__8_U_0.71_____P13', + rod_bank_names=(('Black','black_rods'),('Grey','grey_rods'),('B4C','b4c_rods')),); + +REFL_PWR1300=ReflectorDKLibFile(filename='cocagne_data/dklib/Reflecteur_REP1300.dkzip', + radial_pattern='R', + lower_pattern='lower', + upper_pattern='upper',); + neutro_model=Model_data(physics='Neutronics', scale='component', code='APOLLO3', @@ -197,4 +211,4 @@ scenario_data=Scenario_data(initial_power=0.1, complete_SCRAM_time=1.0, post_processing=(('Fuel temperature@Thermalhydraulics','MAX'),('Neutronic power@Neutronics','SUM'),('Fuel temperature@Thermalhydraulics','MED'),('Neutronic power@Neutronics','MED')),); #VERSION_CATALOGUE:V_0:FIN VERSION_CATALOGUE -#CHECKSUM:c6a0aa70858da55b318f3863e3458adc:FIN CHECKSUM \ No newline at end of file +#CHECKSUM:4a4101bf9abcdf69683620a7bfb47939:FIN CHECKSUM \ No newline at end of file -- 2.39.2