summaryrefslogtreecommitdiff
path: root/Donjon/data/TC_XENON.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/TC_XENON.x2m
Initial commit from Polytechnique Montreal
Diffstat (limited to 'Donjon/data/TC_XENON.x2m')
-rw-r--r--Donjon/data/TC_XENON.x2m138
1 files changed, 138 insertions, 0 deletions
diff --git a/Donjon/data/TC_XENON.x2m b/Donjon/data/TC_XENON.x2m
new file mode 100644
index 0000000..853be95
--- /dev/null
+++ b/Donjon/data/TC_XENON.x2m
@@ -0,0 +1,138 @@
+***********************************************************
+* *
+* Input file : TC_XENON.x2m *
+* Purpose : Test-case for time-instantaneous *
+* calculation using XENON: *
+* Author(s) : M. Guyot (2010) *
+* *
+* To run : rdonjon4 TC_XENON.x2m TC_EVO_CPOs *
+* assertS.c2m *
+* *
+***********************************************************
+
+LINKED_LIST GEOM GEOM2 MATEX TRACK FMAP MICROLIB MACROLIB SYSTEM
+ FLUX CPO CPO2 POWER MICRO MACRO MACRO2 ;
+MODULE GEO: USPLIT: TRIVAT: RESINI: NCR: TRIVAA: FLUD: MACINI:
+ TINST: XENON: FLPOW: DELETE: GREP: END: ;
+PROCEDURE assertS ;
+REAL Power eps := 31.9713 0.001 ; ! criterion for convergence in $
+REAL Keff1 Keff2 DKeff ;
+INTEGER iter ;
+
+*---
+* Set the 3D Geometry
+*---
+GEOM := GEO: :: CAR3D 6 6 1
+ X- REFL X+ REFL MESHX 0.0 28.575 57.15 85.725 114.30 142.875 171.45
+ SPLITX 1 1 1 1 1 1
+ Y- REFL Y+ REFL MESHY 0.0 28.575 57.15 85.725 114.30 142.875 171.45
+ SPLITY 1 1 1 1 1 1
+ Z- REFL Z+ REFL MESHZ 0.0 49.53 SPLITZ 1
+ MIX
+ 1 1 1 1 1 2
+ 1 1 1 1 1 2
+ 1 1 1 1 1 2
+ 1 1 1 1 1 2
+ 1 1 1 1 1 2
+ 2 2 2 2 2 2 ;
+GEOM2 MATEX := USPLIT: GEOM :: NGRP 2 MAXR 100
+ NREFL 1 RMIX 2
+ NFUEL 1 FMIX 1 ;
+TRACK := TRIVAT: GEOM2 :: MAXR 100 MCFD 1 ;
+
+*---
+* Set the fuel-map and the burnup of the cell
+*---
+FMAP MATEX := RESINI: MATEX ::
+ ::: GEO: CAR3D 6 6 1
+ EDIT 0
+ X- REFL X+ REFL MESHX 0.0 28.575 57.15 85.725 114.30 142.875 171.45
+ SPLITX 1 1 1 1 1 1
+ Y- REFL Y+ REFL MESHY 0.0 28.575 57.15 85.725 114.30 142.875 171.45
+ SPLITY 1 1 1 1 1 1
+ Z- REFL Z+ REFL MESHZ 0.0 49.53 SPLITZ 1
+ MIX
+ 1 1 1 1 1 0
+ 1 1 1 1 1 0
+ 1 1 1 1 1 0
+ 1 1 1 1 1 0
+ 1 1 1 1 1 0
+ 0 0 0 0 0 0 ;
+ NXNAME "01" "02" "03" "04" "05" "06"
+ NYNAME "A" "B" "C" "D" "E" "F"
+ NCOMB ALL
+ FUEL WEIGHT 19.85 ;
+FMAP := RESINI: FMAP ::
+ EDIT 1
+ BTYPE INST-BURN
+ INST-BVAL SAME 3000.0 ;
+
+*---
+* Recover the reflector and fuel properties
+*---
+SEQ_ASCII CPOFUEL CPOREFL ;
+CPO := CPOFUEL ;
+CPO2 := CPOREFL ;
+
+MICRO := NCR: CPO2 :: EDIT 0
+ NMIX 2
+ COMPO CPO2 'moderator'
+ MIX 2 FROM 1
+ SET 'BURN' 0.
+ MICRO ALL
+ ENDMIX ;
+MICROLIB := NCR: CPO FMAP :: EDIT 0
+ TABLE CPO 'fuel' BURN
+ MIX 1
+ INST-BURN
+ MICRO ALL
+ ENDMIX ;
+MACRO := MICRO :: STEP UP "MACROLIB" ;
+
+*---
+* Initialisation of the Xenon distribution := 0
+*---
+MICROLIB := XENON: MICROLIB :: EDIT 0 INIT ;
+EVALUATE Keff1 := 0.0 ;
+EVALUATE Keff2 := 0.0 ;
+EVALUATE DKeff := 1.0 ;
+EVALUATE iter := 0 ;
+*---
+* Perform the recursive procedure to obtain the new distribution
+*---
+WHILE DKeff eps > DO
+ EVALUATE iter := iter 1 + ;
+ EVALUATE Keff2 := Keff1 ;
+
+ MACROLIB := MICROLIB :: STEP UP "MACROLIB" ;
+ MACRO2 MATEX := MACINI: MATEX MACRO MACROLIB :: EDIT 1 ;
+ SYSTEM := TRIVAA: MACRO2 TRACK :: EDIT 0 ;
+ FLUX := FLUD: SYSTEM TRACK :: EDIT 0 EXTE 300 1.E-6 ;
+
+ GREP: FLUX :: GETVAL "K-EFFECTIVE" 1 >>Keff1<< ;
+* assertS for each iteration
+ IF iter 1 = THEN
+ assertS FLUX :: "K-EFFECTIVE" 1 1.058867 ;
+ ENDIF ;
+ IF iter 2 = THEN
+ assertS FLUX :: "K-EFFECTIVE" 1 1.042204 ;
+ ENDIF ;
+ IF iter 3 = THEN
+ assertS FLUX :: "K-EFFECTIVE" 1 1.042220 ;
+ ENDIF ;
+
+ POWER := FLPOW: FMAP FLUX TRACK MATEX :: EDIT 1
+ PTOT 15.866 ;
+* Update the microlib according to the bundle fluxes
+ MICROLIB := XENON: MICROLIB POWER :: EDIT 0 ;
+* Compute the new delta k_eff
+ EVALUATE DKeff := Keff1 Keff2 - ABS ;
+* Delete files
+ MACROLIB FLUX SYSTEM MACRO2 POWER := DELETE:
+ MACROLIB FLUX SYSTEM MACRO2 POWER ;
+
+ENDWHILE ;
+
+ECHO "test TC_XENON completed" ;
+END: ;
+QUIT .