*---- * * TEST CASE lumpSS * DISTRIBUTED SELF-SHIELDING ON LUMPED ASSEMBLIES * 295-GROUP JEFF3.1.1 DRAGLIB * * Author: A. Hebert * *---- * Define STRUCTURES and MODULES used *---- LINKED_LIST GEOM1 GEOM2 GEOM12 TRACK_SS1 TRACK_SS2 TRACK_2L LIBRARY LIBRARY2A LIBRARY2B LIBRARY2 ASB FLUX EDIBU BURNUP MCOMPO StepList ; MODULE LIB: GEO: SYBILT: ASM: FLU: COMPO: EDI: EVO: UTL: GREP: DELETE: END: ; PROCEDURE assertS ; PROCEDURE mixA1_lumpSS ; REAL P_Zr90 P_Zr91 P_Zr92 P_Zr94 P_Zr96 := 51.45E-02 11.22E-02 17.15E-02 17.38E-02 2.80E-02 ; REAL N_Zr0 := 4.3241E-2 ; REAL N_Zr90 N_Zr91 N_Zr92 N_Zr94 N_Zr96 := N_Zr0 P_Zr90 * N_Zr0 P_Zr91 * N_Zr0 P_Zr92 * N_Zr0 P_Zr94 * N_Zr0 P_Zr96 * ; ************************************************************************ * BEGIN DECLARATION * ************************************************************************ INTEGER maxstep := 3 ; StepList := UTL: :: CREA ListBU <> = 0.0 10.0 30.0 ; INTEGER maxautop := 1 ; StepList := UTL: StepList :: CREA ListAutop <> = 30.0 ; ************************************************************************ * END DECLARATION * ************************************************************************ ************************************************************************ * COMPO INITIALIZATION * ************************************************************************ MCOMPO := COMPO: :: EDIT 10 STEP UP 'EDIBU_HOM' MAXCAL 5 COMM 'Evolution burnup - Condensed - Assembly scale homogenized' ENDC PARA 'Burnup' IRRA ISOT 11 U235 U236 U238 Pu239 Pu240 Pu241 Pu242 Gd155 Gd157 Xe135 Sm149 INIT ; ************************************************************************ * DRAGLIB PROCESSING * ************************************************************************ LIBRARY := LIB: :: EDIT 1 NMIX 11 (*MAXIMUM OF MATERIAL MIXTURES*) CTRA APOL (*APOLLO TYPE TRANSPORT CORRECTION*) ANIS 2 (*PROCESS SCATTERING DATA TO P1 ORDER*) PT (*CALENDF TYPE PROBABILITY TABLES*) * DEPL LIB: DRAGON FIL: DLIB_295 MIXS LIB: DRAGON FIL: DLIB_295 MIX 1 293.0 O16 = O16 4.6624E-2 U235 = U235 7.0803E-4 1 U238 = U238 2.2604E-2 1 Pu239 = Pu239 1.0000E-9 1 MIX 2 COMB 1 1.0 MIX 3 COMB 1 1.0 MIX 4 COMB 1 1.0 MIX 5 293.0 Zr90 = Zr90 <> 2 IRSET PT NONE Zr91 = Zr91 <> 2 IRSET PT NONE Zr92 = Zr92 <> 2 IRSET PT NONE Zr94 = Zr94 <> Zr96 = Zr96 <> MIX 6 293.0 NOEV H1 = H1_H2O 4.6892E-2 O16 = O16 2.3446E-2 MIX 7 293.0 O16 = O16 4.6624E-2 U235 = U235 7.0803E-4 1 U238 = U238 2.2604E-2 1 Pu239 = Pu239 1.0000E-9 1 MIX 8 COMB 7 1.0 MIX 9 COMB 7 1.0 MIX 10 COMB 7 1.0 MIX 11 COMB 5 1.0 ; ************************************************************************ * GEOMETRY DEFINITION AND TRACKING * ************************************************************************ GEOM1 := GEO: :: CARCEL 6 X- REFL X+ REFL Y- REFL Y+ REFL MESHX 0.0 1.2 MESHY 0.0 1.2 RADIUS 0.0 0.288712 0.365195 0.397962 0.4083 0.45 0.5748331 MIX 1 2 3 4 5 6 6 ; TRACK_SS1 := SYBILT: GEOM1 :: MAXR 20 MAXZ 15000 DP00 QUA2 20 3 ; GEOM2 := GEO: :: CARCEL 6 X- REFL X+ REFL Y- REFL Y+ REFL MESHX 0.0 1.2 MESHY 0.0 1.2 RADIUS 0.0 0.288712 0.365195 0.397962 0.4083 0.45 0.5748331 MIX 7 8 9 10 11 6 6 ; TRACK_SS2 := SYBILT: GEOM2 :: MAXR 20 MAXZ 15000 DP00 QUA2 20 3 ; GEOM12 := GEO: :: CAR2D 2 1 X- REFL X+ REFL Y- REFL Y+ REFL CELL GEOM1 GEOM2 ::: GEOM1 := GEO: CARCEL 6 MESHX 0.0 1.2 MESHY 0.0 1.2 RADIUS 0.0 0.288712 0.365195 0.397962 0.4083 0.45 0.5748331 MIX 1 2 3 4 5 6 6 ; ::: GEOM2 := GEO: CARCEL 6 MESHX 0.0 1.2 MESHY 0.0 1.2 RADIUS 0.0 0.288712 0.365195 0.397962 0.4083 0.45 0.5748331 MIX 7 8 9 10 11 6 6 ; ; TRACK_2L := SYBILT: GEOM12 :: MAXR 20 MAXZ 30000 DP00 QUA2 20 3 ; ************************************************************************ * NOMINAL REFERENCE CALCULATION * ************************************************************************ INTEGER istepNext ; REAL BUbeg Tbeg ; REAL BU BUautop BUcompo := 0.0 0.0 0.0 ; REAL Norm_f2 := 39.0 ; ! SPECIFIC POWER MW/t REAL BUend Tend := 0. 0. ; INTEGER istep := 0 ; INTEGER iauto := 1 ; ********************************************** * BEGIN DEPLETION * ********************************************** ECHO "start burnup loop" ; WHILE istep maxstep < DO EVALUATE istep := istep 1 + ; ECHO "burnup step: " istep "/" maxstep ; EVALUATE BUbeg Tbeg := BUend Tend ; GREP: StepList :: GETVAL 'ListBU' <> >>BUend<< ; EVALUATE Tend := BUend Norm_f2 / ; ECHO "Nominal depletion between" Tbeg " and" Tend "days" ; **************************** * BEGIN SELF-SHIELDING * **************************** IF istep 1 = THEN ECHO "perform initial self-shielding at" Tbeg "days" ; ECHO "$$$ ------------- begin : mixAUTOP1 " ; LIBRARY := UTL: LIBRARY :: DIR ; LIBRARY2 LIBRARY2A LIBRARY2B := mixA1_lumpSS LIBRARY TRACK_SS1 TRACK_SS2 :: <> ; ECHO "$$$ ------------- end : mixAUTOP1 " ; ELSE GREP: StepList :: GETVAL "ListAutop" <> >>BUautop<< ; GREP: StepList :: GETVAL "ListBU" <> >>BU<< ; IF BUautop BU = THEN ECHO "perform self-shielding at" Tbeg "days" ; ECHO "$$$ ----------- begin : mixAUTOP2 " ; LIBRARY2 LIBRARY2A LIBRARY2B := mixA1_lumpSS LIBRARY2 LIBRARY2A LIBRARY2B LIBRARY TRACK_SS1 TRACK_SS2 :: <> ; ECHO "$$$ ----------- end : mixAUTOP2 " ; EVALUATE iauto := iauto 1 + ; ENDIF ; ENDIF ; **************************** * END OF SELF-SHIELDING * **************************** ************************************************************ * BEGIN FLUX CALCULATION * ************************************************************ ECHO "flux calculation at" Tbeg "days" ; ASB := ASM: LIBRARY2 TRACK_2L :: PIJ ; IF istep 1 = THEN FLUX := FLU: LIBRARY2 TRACK_2L ASB :: TYPE K ; ELSE FLUX := FLU: FLUX LIBRARY2 TRACK_2L ASB :: TYPE K ; ENDIF ; ASB := DELETE: ASB ; ************************************************************ * NON-REGRESSION * ************************************************************ IF istep 1 = THEN assertS FLUX :: K-EFFECTIVE 1 1.329378 ; ELSEIF istep 2 = THEN assertS FLUX :: K-EFFECTIVE 1 1.314567 ; ELSEIF istep 3 = THEN assertS FLUX :: K-EFFECTIVE 1 1.291854 ; ENDIF ; ************************************************************ * BEGIN FLUX NORMALIZATION * ************************************************************ IF istep 1 = THEN BURNUP LIBRARY2 := EVO: LIBRARY2 FLUX TRACK_2L :: EDIT 3 SAVE <> DAY POWR <> ; ELSE BURNUP LIBRARY2 := EVO: BURNUP LIBRARY2 FLUX TRACK_2L :: EDIT 3 SAVE <> DAY POWR <> ; ENDIF ; ************************************************************ * EDITION * ************************************************************ EDIBU := EDI: FLUX LIBRARY2 TRACK_2L :: EDIT 0 MICR 11 U235 U236 U238 Pu239 Pu240 Pu241 Pu242 Gd155 Gd157 Xe135 Sm149 MERG MIX 1 1 1 1 0 0 1 1 1 1 0 COND SAVE ON FUEL ; ************************************************************ * FILL MULTICOMPO * ************************************************************ ECHO "fill multicompo at" Tbeg "days" ; MCOMPO := COMPO: MCOMPO EDIBU BURNUP LIBRARY2 :: EDIT 0 STEP UP 'EDIBU_HOM' SET <> DAY ; EDIBU := DELETE: EDIBU ; ********************************************************* * BEGIN DEPLETION * ********************************************************* IF istep maxstep < THEN EVALUATE istepNext := istep 1 + ; GREP: StepList :: GETVAL 'ListBU' <> >>BUend<< ; EVALUATE Tend := BUend Norm_f2 / ; BURNUP LIBRARY2 := EVO: BURNUP LIBRARY2 FLUX TRACK_2L :: EDIT 0 NOEX DEPL <> <> DAY POWR <> EXPM 1.0E15 GLOB ; ENDIF ; ********************************************************* * END BURNUP LOOP * ********************************************************* ENDWHILE ; ECHO "test lumpSS completed" ; END: ;