From 7dfcc480ba1e19bd3232349fc733caef94034292 Mon Sep 17 00:00:00 2001 From: stainer_t Date: Mon, 8 Sep 2025 13:48:49 +0200 Subject: Initial commit from Polytechnique Montreal --- Dragon/data/OSC_CASEA_2level_rse.x2m | 320 +++++++++++++++++++++++++++++++++++ 1 file changed, 320 insertions(+) create mode 100644 Dragon/data/OSC_CASEA_2level_rse.x2m (limited to 'Dragon/data/OSC_CASEA_2level_rse.x2m') diff --git a/Dragon/data/OSC_CASEA_2level_rse.x2m b/Dragon/data/OSC_CASEA_2level_rse.x2m new file mode 100644 index 0000000..2ff0d74 --- /dev/null +++ b/Dragon/data/OSC_CASEA_2level_rse.x2m @@ -0,0 +1,320 @@ +*---- +* case OSC_CASEA_2level_rse +* 99 group eighth assembly in DRAGON -- 1-level scheme +* Author: A. Hebert +*---- +LINKED_LIST GEOSS GEON1 GEON2 TRACKSS TRACKN1 TRACKN2 LIBRARY LIBRARY2 + SYS FLUX FLUX2 EDITION LIBEQ DONNEES LIBHOM BURNUP EDIHOM + RES EDIOBJ MCOMPO ; +MODULE SYBILT: G2S: SALT: MCCGT: USS: ASM: FLU: EDI: SPH: UTL: DELETE: + END: EVO: GREP: LIB: COMPO: ABORT: ; +SEQ_BINARY TF_EXC ; +SEQ_ASCII UOX_TBH :: FILE './UOX_TBH_g2s.txt' ; +SEQ_ASCII FIG_UOX :: FILE './FIG_UOX.ps' ; +SEQ_ASCII _MCOMPO :: FILE './MCOMPO_UOX_TBH.txt' ; +INTEGER an2d := 8 ; +REAL densur := 20.0 ; +INTEGER istep istepNext iAutop iCompo := 0 0 1 1 ; +REAL delr BUbeg BUend Tbeg Tend := 0.01 0.0 0.0 0.0 0.0 ; +REAL Fuelpwr Kinf := 39.0 0.0 ; +REAL BU BUautop BUcompo := 0.0 0.0 0.0 ; +STRING Library := "DLIB_99" ; +PROCEDURE Geo_SS Geo_N1 Geo_N2 Mix_UOX MultLIBEQ ; +PROCEDURE assertS ; +************************************************************************ +* BEGIN COMPO INITIALIZATION * +************************************************************************ +MCOMPO := COMPO: :: + EDIT 10 + STEP UP 'COND2' + MAXCAL 5 + COMM 'evolution burnup CASEA Assembly' ENDC + PARA 'burnup' IRRA + INIT +; +************************************************************************ +* BEGIN GEOMETRY * +************************************************************************ +REAL Rcomb4 := 0.4083 ; +REAL Rcomb1 := 0.5 SQRT Rcomb4 * ; +REAL Rcomb2 := 0.8 SQRT Rcomb4 * ; +REAL Rcomb3 := 0.95 SQRT Rcomb4 * ; +REAL R_int_TG := 0.5691 ; +REAL R_ext_TG := 0.6095 ; +REAL R_int_TI := 0.5691 ; +REAL R_ext_TI := 0.6095 ; +REAL R_int_G := 0.4165 ; +REAL R_ext_G := 0.4775 ; +REAL Cote := 1.26 ; +REAL CoteL := 1.302 ; +REAL Lame := CoteL Cote - ; +REAL RmodeN1 := 0.670 ; + +GEOSS := Geo_SS :: <> <> <> <> + <> <> <> + <> <> <> <> + <> ; + +GEON1 := Geo_N1 :: <> <> <> <> + <> <> <> + <> <> <> <> + <> <> ; + +GEON2 := Geo_N2 :: <> <> <> <> + <> <> <> + <> <> <> <> + <> ; +UOX_TBH FIG_UOX := G2S: GEON2 ; +************************************************************************ +* END GEOMETRY * +************************************************************************ +************************************************************************ +* BEGIN DECLARATION * +************************************************************************ +INTEGER maxstep := 9 ; +DONNEES := UTL: :: + CREA + BURN <> = + 0.0 10.0 30.0 50.0 75.0 150.0 + 250.0 375.0 500.0 + ; +INTEGER maxautop := 1 ; +DONNEES := UTL: DONNEES :: + CREA + AUTOP <> = + 500.0 + ; +INTEGER maxcompo := 5 ; +DONNEES := UTL: DONNEES :: + CREA + BCOMPO <> = + 0.0 50.0 75.0 150.0 500.0 + ; +************************************************************************ +* END DECLARATION * +************************************************************************ +************************************************************************ +* BEGIN TRACKING * +************************************************************************ +! Level One +TRACKSS := SYBILT: GEOSS :: + EDIT 0 + MAXR 500 + MAXZ 1000000 + TITLE 'TRACKING FOR ASSEMBLY SS' + QUA2 20 3 + DP01 ; +TRACKN1 := SYBILT: GEON1 :: + EDIT 0 + MAXR 500 + MAXZ 1000000 + TITLE 'TRACKING FOR ASSEMBLY N1' + QUA2 20 3 + DP01 ; +! Level two +TRACKN2 TF_EXC := SALT: UOX_TBH :: + EDIT 3 + ALLG + TSPC EQW2 <> <> REND +; +TRACKN2 := MCCGT: TRACKN2 TF_EXC :: + CACB 4 AAC 80 TMT EPSI 1E-5 MCU 10000 ; + +************************************************************************ +* END TRACKING * +************************************************************************ +************************************************************************ +* BEGIN LIBRARY READING * +************************************************************************ +LIBRARY := Mix_UOX :: <> ; + +************************************************************************ +* END LIBRARY READING * +************************************************************************ +************************************************************************ +* BEGIN DEPLETION * +************************************************************************ +WHILE istep maxstep < DO + +************************************************************************ +* BEGIN FIRST LEVEL FLUX CALCULATION * +************************************************************************ + + EVALUATE istep := istep 1 + ; + ECHO "istep: " istep "/" maxstep ; + + EVALUATE BUbeg Tbeg := BUend Tend ; + GREP: DONNEES :: GETVAL 'BURN' <> >>BUend<< ; + ECHO "Tbeg=" Tbeg ; + +*---- +* USS +*---- + IF istep 1 = THEN + LIBRARY2 := USS: LIBRARY TRACKSS :: EDIT 1 PASS 2 ARM GRMIN 18 + CALC REGI W1 U235 ALL REGI W1 Pu238 ALL REGI W1 Pu239 ALL + REGI W1 Pu240 ALL REGI W1 Pu241 ALL REGI W1 Pu242 ALL + ENDC ; + ELSE + GREP: DONNEES :: GETVAL "AUTOP" <> >>BUautop<< ; + GREP: DONNEES :: GETVAL "BURN" <> >>BU<< ; + IF BUautop BU = THEN + LIBRARY2 := USS: LIBRARY LIBRARY2 TRACKSS BURNUP :: EDIT 1 PASS 2 + ARM GRMIN 18 + CALC REGI W1 U235 ALL REGI W1 Pu238 ALL REGI W1 Pu239 ALL + REGI W1 Pu240 ALL REGI W1 Pu241 ALL REGI W1 Pu242 ALL + ENDC ; + EVALUATE iAutop := iAutop 1 + ; + ENDIF ; + ENDIF ; + +************************************************************************ +* BEGIN FIRST LEVEL FLUX CALCULATION * +************************************************************************ + IF istep 1 > THEN +* homogenize from 162 mixtures to 38 mixtures and condense to 1-group +* in order to average number densities + EDIHOM := EDI: FLUX2 LIBEQ TRACKN2 :: EDIT 0 + MICR ALL + COND + MERG MIX + 1 2 3 4 5 6 7 8 9 10 11 12 3 4 5 6 9 + 10 11 12 9 10 11 12 25 3 4 5 6 3 4 5 6 3 + 4 5 6 9 10 11 12 9 10 11 12 3 4 5 6 9 10 + 11 12 3 4 5 6 9 10 11 12 9 10 11 12 3 4 5 + 6 3 4 5 6 3 4 5 6 3 4 5 6 3 4 5 6 + 3 4 5 6 9 10 11 12 94 95 96 97 9 10 11 12 9 + 10 11 12 94 95 96 97 9 10 11 12 114 115 116 117 114 115 + 116 117 122 123 124 125 126 127 128 129 126 127 128 129 126 127 128 + 129 126 127 128 129 126 127 128 129 126 127 128 129 126 127 128 129 + 154 155 156 157 158 159 160 161 162 + SAVE ON HOMOGENE + ; + LIBHOM := EDIHOM :: STEP UP HOMOGENE ; + +* recover number densities from LIBHOM and copy them in LIBRARY2 + EDIHOM := DELETE: EDIHOM ; + LIBRARY2 := LIB: LIBRARY2 LIBHOM :: EDIT 0 + MAXS + MIX 3 MIX 4 MIX 5 MIX 6 MIX 9 MIX 10 MIX 11 MIX 12 + MIX 94 MIX 95 MIX 96 MIX 97 MIX 114 MIX 115 MIX 116 MIX 117 + MIX 122 MIX 123 MIX 124 MIX 125 MIX 126 MIX 127 MIX 128 MIX 129 + MIX 154 MIX 155 MIX 156 MIX 157 MIX 158 MIX 159 MIX 160 MIX 161 + MIX 162 + ; + LIBEQ LIBHOM := DELETE: LIBEQ LIBHOM ; + ENDIF ; + + SYS := ASM: LIBRARY2 TRACKN1 :: EDIT 0 ARM ; + FLUX := FLU: LIBRARY2 SYS TRACKN1 :: + EDIT 1 TYPE K ; + +*---- +* 26 groups energy condensation +*---- + EDITION := EDI: FLUX LIBRARY2 TRACKN1 :: + EDIT 0 + MICR ALL + MERG MIX + COND 4 7 10 16 18 21 24 27 31 38 50 63 65 67 68 70 + 72 75 80 83 87 90 93 96 + SAVE ON COND26 ; + + LIBEQ := EDITION :: STEP UP COND26 ; + + LIBEQ := SPH: LIBEQ TRACKN1 :: EDIT 2 ; + + FLUX SYS EDITION := DELETE: FLUX SYS EDITION ; +************************************************************************ +* END FIRST LEVEL FLUX CALCULATION * +************************************************************************ +************************************************************************ +* BEGIN SECOND LEVEL FLUX CALCULATION * +************************************************************************ + LIBEQ := MultLIBEQ LIBEQ ; + SYS := ASM: LIBEQ TRACKN2 TF_EXC :: EDIT 1 ARM ; + + IF istep 1 = THEN + FLUX2 := FLU: LIBEQ SYS TRACKN2 TF_EXC :: + EDIT 1 TYPE K ; + ELSE + FLUX2 := FLU: FLUX2 LIBEQ SYS TRACKN2 TF_EXC :: + EDIT 1 TYPE K ; + ENDIF ; + + SYS := DELETE: SYS ; + + IF istep maxstep < THEN + EVALUATE istepNext := istep 1 + ; + GREP: DONNEES :: GETVAL 'BURN' <> >>BUend<< ; + EVALUATE Tend := BUend Fuelpwr / ; + + IF istep 1 = THEN + BURNUP LIBEQ := EVO: LIBEQ FLUX2 TRACKN2 :: + EDIT 0 + SAVE <> DAY POWR <> + ; + ELSE + BURNUP LIBEQ := EVO: BURNUP LIBEQ FLUX2 TRACKN2 :: + EDIT 0 + SAVE <> DAY POWR <> + ; + ENDIF ; + + GREP: DONNEES :: GETVAL "BCOMPO" <> >>BUcompo<< ; + GREP: DONNEES :: GETVAL "BURN" <> >>BU<< ; + IF BUcompo BU = THEN + EDIOBJ := EDI: FLUX2 LIBEQ TRACKN2 :: EDIT 1 + MICR 35 U234 U235 U236 U237 U238 Np237 Np238 Np239 Pu238 Pu239 + Pu240 Pu241 Pu242 Cm242 Cm243 Cm244 Cm245 Am241 Am242m Am243 + Pm147 Pm148 Pm148m Pm149 Sm147 Sm148 Sm149 Sm150 Nd146 Nd147 + Nd148 B10 B11 Xe135 I135 + MERG COMP + COND 0.625 + ADF * 'FD_B' MIX 162 ENDM + SAVE ON COND2 + ; + +************************************************************************ +* MULTICOMPO FEEDING * +************************************************************************ + MCOMPO := COMPO: MCOMPO EDIOBJ BURNUP LIBRARY :: + EDIT 2 + STEP UP 'COND2' + SET <> DAY ; + EDIOBJ := DELETE: EDIOBJ ; + EVALUATE iCompo := iCompo 1 + ; + ENDIF ; + + GREP: FLUX2 :: GETVAL 'K-INFINITY ' 1 1 1 >>Kinf<< ; + ECHO "+++ Burnup=" BUend " Kinf=" Kinf " at step" istep ; + + IF istep maxstep < THEN + EVALUATE istepNext := istep 1 + ; + GREP: DONNEES :: GETVAL 'BURN' <> >>BUend<< ; + EVALUATE Tend := BUend Fuelpwr / ; + + BURNUP LIBEQ := EVO: BURNUP LIBEQ FLUX2 TRACKN2 :: + EDIT 1 DEPL <> <> DAY POWR <> + EXPM 1.0E15 GLOB ; + ENDIF ; + + ENDIF ; + +************************************************************************ +* END SECOND LEVEL FLUX CALCULATION * +************************************************************************ + +ENDWHILE ; +assertS FLUX2 :: K-EFFECTIVE 1 0.8974965 ; +************************************************************************ +* END SECOND LEVEL FLUX CALCULATION * +************************************************************************ + +************************************************************************ +* EXPORT MULTICOMPO IN ASCII FORMAT * +************************************************************************ +_MCOMPO := MCOMPO ; + +ECHO "test OSC_CASEA_2level_rse completed" ; +END: ; -- cgit v1.2.3