summaryrefslogtreecommitdiff
path: root/Donjon/data/fbr_core.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/fbr_core.x2m
Initial commit from Polytechnique Montreal
Diffstat (limited to 'Donjon/data/fbr_core.x2m')
-rw-r--r--Donjon/data/fbr_core.x2m144
1 files changed, 144 insertions, 0 deletions
diff --git a/Donjon/data/fbr_core.x2m b/Donjon/data/fbr_core.x2m
new file mode 100644
index 0000000..fd2654e
--- /dev/null
+++ b/Donjon/data/fbr_core.x2m
@@ -0,0 +1,144 @@
+***********************************************************************
+* *
+* Purpose : Full-core calculation for a pankake FBR *
+* Author(s) : Charlotte Bay (2012) *
+* *
+***********************************************************************
+PROCEDURE fbr_geom fbr_fuelmap ;
+MODULE DELETE: END: LIB: SCR: MACINI: USPLIT: TRIVAT: TRIVAA:
+ FLUD: FLPOW: RESINI: GREP: ;
+LINKED_LIST GEOM MATEX MACRO1 MACRO2 CPO1 TRACK SYSTEM FLUX POWER
+ FLMAP MACFL SAP1 SAP2 SAP3 ;
+
+REAL Keff mbp mcp ;
+
+REAL N_Na := 2.89155432E-02 ; ! Number density of Sodium
+PROCEDURE assertS ;
+
+*--
+* Saphyb files:
+*--
+SEQ_ASCII Sap1_txt :: FILE 'Saphyb_fissile' ;
+SEQ_ASCII Sap2_txt :: FILE 'Saphyb_fertile' ;
+SEQ_ASCII Sap3_txt :: FILE 'Saphyb_solide' ;
+SAP1 := Sap1_txt ;
+SAP2 := Sap2_txt ;
+SAP3 := Sap3_txt ;
+
+*----------------------------------------------------------
+*
+* FULL-CORE CALCULATION
+* ======================
+*---
+* Geometry construction:
+*---
+
+GEOM := fbr_geom ;
+
+*---
+* Reactor material index:
+*---
+
+GEOM MATEX := USPLIT: GEOM :: EDIT 0 NGRP 33 MAXR 40000
+ NREFL 7 RMIX 4 5 6 7 8 9 10
+ NFUEL 3 FMIX 1 2 3 ;
+
+*---
+* Fuel Map construction
+*---
+
+FLMAP MATEX := fbr_fuelmap MATEX ;
+
+*---
+* Macrolib for the fuel
+*---
+
+*------------
+* Mix number assignments in Saphybs
+* 1 : internal fissile fuel assembly
+* 2 : external fertile fuel assembly
+* 3 : internal fertile fuel assembly
+* 4 : COSU control rod
+* 5 : COSV control rod follower
+* 6 : ARRE shutdown rod
+* 7 : ARSV shutdown rod follower
+* 8 : REFS reflector
+* 9 : PLNA sodium plenum
+* 10 : VSXP expansion bellow
+*-------------
+
+*---
+*Fuel-map macrolib
+*---
+MACFL := SCR: SAP1 SAP2 FLMAP :: EDIT 1
+* Fissile fuel
+ TABLE SAP1 'BURN'
+ MIX 1 FROM 1
+ INST-BURN
+ SET DCA <<N_Na>>
+ ENDMIX
+
+* Fertile fuel
+ TABLE SAP2 'BURN'
+ MIX 2 FROM 1
+ INST-BURN
+ SET DCA <<N_Na>>
+ ENDMIX
+ MIX 3 FROM 1
+ INST-BURN
+ SET DCA <<N_Na>>
+ ENDMIX
+;
+*---
+*Reflector macrolib
+*---
+MACRO1 := SCR: SAP3 :: EDIT 1
+ NMIX 16 SAPHYB SAP3
+ MIX 4 FROM 1 SET 'LEGO' COSU SET DCA <<N_Na>> ENDMIX
+ MIX 5 FROM 1 SET 'LEGO' COSV SET DCA <<N_Na>> ENDMIX
+ MIX 6 FROM 1 SET 'LEGO' ARRE SET DCA <<N_Na>> ENDMIX
+ MIX 7 FROM 1 SET 'LEGO' ARSV SET DCA <<N_Na>> ENDMIX
+ MIX 8 FROM 1 SET 'LEGO' REFS SET DCA <<N_Na>> ENDMIX
+ MIX 9 FROM 1 SET 'LEGO' PLNA SET DCA <<N_Na>> ENDMIX
+ MIX 10 FROM 1 SET 'LEGO' VSXP SET DCA <<N_Na>> ENDMIX
+;
+SAP1 SAP2 SAP3 := DELETE: SAP1 SAP2 SAP3 ;
+
+*---
+* Extended macrolib (=complete because no device)
+*---
+MACRO2 MATEX := MACINI: MATEX MACRO1 MACFL :: EDIT 0 ;
+
+MACFL MACRO1 := DELETE: MACFL MACRO1 ;
+
+*---
+*Tracking, Raviart-Thomas-Schneider method
+*---
+
+TRACK := TRIVAT: GEOM :: EDIT 0
+ MAXR 40000 DUAL 1 3
+ SPN 3 SCAT 4 ;
+
+*---
+* Numerical solution
+*---
+
+SYSTEM := TRIVAA: MACRO2 TRACK :: EDIT 0 ;
+
+MACRO2 := DELETE: MACRO2 ;
+
+FLUX := FLUD: SYSTEM TRACK :: EDIT 2
+ ACCE 3 3 EXTE 1000 1E-04 ADI 6 ;
+
+POWER := FLPOW: FLMAP FLUX TRACK MATEX ::
+ EDIT 1 PTOT 1500.0 ;
+
+GREP: POWER :: GETVAL 'PMAX-BUND' 1 >>mbp<< ;
+GREP: POWER :: GETVAL 'PMAX-CHAN' 1 >>mcp<< ;
+GREP: POWER :: GETVAL 'K-EFFECTIVE' 1 >>Keff<< ;
+ECHO "PMAX-BUND=" mbp "PMAX-CHAN=" mcp "Keff=" Keff ;
+
+assertS POWER :: 'K-EFFECTIVE' 1 1.013796 ;
+
+END: ;
+QUIT "LIST" .