summaryrefslogtreecommitdiff
path: root/Donjon/data/rep900_iram.x2m
diff options
context:
space:
mode:
authorstainer_t <thomas.stainer@oecd-nea.org>2025-09-08 13:48:49 +0200
committerstainer_t <thomas.stainer@oecd-nea.org>2025-09-08 13:48:49 +0200
commit7dfcc480ba1e19bd3232349fc733caef94034292 (patch)
tree03ee104eb8846d5cc1a981d267687a729185d3f3 /Donjon/data/rep900_iram.x2m
Initial commit from Polytechnique Montreal
Diffstat (limited to 'Donjon/data/rep900_iram.x2m')
-rw-r--r--Donjon/data/rep900_iram.x2m111
1 files changed, 111 insertions, 0 deletions
diff --git a/Donjon/data/rep900_iram.x2m b/Donjon/data/rep900_iram.x2m
new file mode 100644
index 0000000..797d373
--- /dev/null
+++ b/Donjon/data/rep900_iram.x2m
@@ -0,0 +1,111 @@
+*----
+* Nom : rep900_iram.x2m
+* Type : fichier DONJON
+*----
+* Definition STRUCTURES, MODULES et PROCEDURES
+*----
+LINKED_LIST GeoRes MacroF Track System Flux Cpo L0 Reseau Matex
+ Lib Macro1 Macro2 Fmap Micro ;
+MODULE TRIVAT: TRIVAA: FLUD: GREP: MACINI: NCR: DELETE:
+ ABORT: END: ;
+
+PROCEDURE GetDim GeoCo SetFuelMap SetParam ;
+PROCEDURE assertS ;
+SEQ_ASCII _ACompo ;
+REAL keff1 ;
+*----
+* Parametres Locaux
+*----
+REAL densB1 := 2000.0 ;
+*----
+* Options de calcul
+*----
+INTEGER Splitx Splitz := 2 1 ;
+STRING Dir := "EDI2B" ;
+
+REAL Rcomb1 Rcomb2 Rcomb3 Rcomb4
+ R_int_TG R_ext_TG R_int_TI R_ext_TI R_int_G R_ext_G
+ Cote Lame CoteL
+ RmodeN1 RmodeN2
+ R_ext_G2 R_ext_TGm R_ext_TIm
+ N_U5_UOX N_U5_MOX
+ N_Pu8 N_Pu9 N_Pu0 N_Pu1 N_Pu2 N_Am1
+ densU_UOX densU_MOX densPu_MOX
+ teneur1_Pu teneur2_Pu teneur3_Pu
+ temp_comb temp_mode dens_mode ;
+
+*----
+* Recover the Multicompo
+*----
+Cpo := _ACompo ;
+
+*----
+* Enchainement du calcul
+*----
+ GetDim ::
+ >>Rcomb1<< >>Rcomb2<< >>Rcomb3<< >>Rcomb4<<
+ >>R_int_TG<< >>R_ext_TG<< >>R_int_TI<< >>R_ext_TI<<
+ >>R_int_G<< >>R_ext_G<< >>Cote<< >>Lame<< >>CoteL<<
+ >>RmodeN1<< >>RmodeN2<< >>R_ext_G2<< >>R_ext_TGm<< >>R_ext_TIm<<
+ >>N_U5_UOX<< >>N_U5_MOX<< >>N_Pu8<< >>N_Pu9<< >>N_Pu0<<
+ >>N_Pu1<< >>N_Pu2<< >>N_Am1<< >>densU_UOX<< >>densU_MOX<<
+ >>densPu_MOX<< >>teneur1_Pu<< >>teneur2_Pu<< >>teneur3_Pu<<
+ >>temp_comb<< >>temp_mode<< >>dens_mode<< ;
+
+REAL rPavX := 17.0 ; ! assemblage 17 x 17
+INTEGER iPavX := 17 ; ! assemblage 17 x 17
+REAL dx := rPavX Cote * 2.0 Lame * + ;
+INTEGER MaxR := iPavX iPavX * 33 * Splitx * Splitx * Splitz * ;
+GeoRes Matex := GeoCo ::
+ <<Splitx>> <<Splitz>> <<MaxR>> <<dx>> ;
+
+Track := TRIVAT: GeoRes ::
+ MAXR <<MaxR>> DUAL 1 3 ;
+
+*--
+* Definition de la map de combustible et zones de combustion
+*--
+Fmap Matex := SetFuelMap Matex :: <<dx>> ;
+
+Fmap := SetParam Fmap :: <<densB1>> <<temp_comb>> <<temp_mode>>
+ <<dens_mode>> ;
+
+Micro := NCR: Cpo Fmap ::
+ EDIT 2
+ LINEAR
+ TABLE Cpo <<Dir>> 'burnup'
+ MIX 1 INST-BURN ENDMIX
+;
+MacroF := Micro :: STEP UP MACROLIB ;
+Micro := DELETE: Micro ;
+
+Micro := NCR: Cpo ::
+* dummy reflector -- please use more realistic data
+ EDIT 2
+ LINEAR NMIX 2
+ COMPO Cpo <<Dir>>
+ MIX 2 SET 'burnup' 0.0
+ SET 'ppmBore' <<densB1>>
+ ENDMIX
+;
+Macro1 := Micro :: STEP UP MACROLIB ;
+Micro := DELETE: Micro ;
+
+Macro2 Matex := MACINI: Matex Macro1 MacroF ;
+
+System := TRIVAA: Macro2 Track ;
+
+Macro1 Macro2 := DELETE: Macro1 Macro2 ;
+
+Flux := FLUD: System Track ::
+ EDIT 2 IRAM 3 7 10 ;
+
+GREP: Flux ::
+ GETVAL 'K-EFFECTIVE ' 1 >>keff1<< ;
+
+ECHO "densB1=" densB1 "K-effective 1 = " keff1 ;
+assertS Flux :: 'K-EFFECTIVE' 1 0.9901783 ;
+
+ECHO "test rep900_iram.x2m completed" ;
+END: ;
+QUIT "LIST" .