diff options
Diffstat (limited to 'PyGan/data/testVVER_proc/vverBU.c2m')
| -rw-r--r-- | PyGan/data/testVVER_proc/vverBU.c2m | 178 |
1 files changed, 178 insertions, 0 deletions
diff --git a/PyGan/data/testVVER_proc/vverBU.c2m b/PyGan/data/testVVER_proc/vverBU.c2m new file mode 100644 index 0000000..bcaf0fa --- /dev/null +++ b/PyGan/data/testVVER_proc/vverBU.c2m @@ -0,0 +1,178 @@ +******************************************************************** +* * +* Procedure : vverBU.c2m * +* Purpose : BU iteration calculus * +* Author : L.Fede * +* * +* CALL : * +* COMPO := vverBU LIBRARY TRACK StepList TF_EXC :: <<Multicompo>> * +* * +******************************************************************** + +* --- +* INPUT & OUTPUT PARAMETERS +* --- +PARAMETER COMPO LIBRARY TRACK TF_EXC StepList :: +::: LINKED_LIST COMPO ; +::: LINKED_LIST LIBRARY ; +::: LINKED_LIST TRACK ; +::: SEQ_BINARY TF_EXC ; +::: LINKED_LIST StepList ; ; +INTEGER Multicompo ; +:: >>Multicompo<< ; + +* --- +* STRUCTURES AND MODULES +* --- +MODULE MAC: DELETE: UTL: USS: ASM: FLU: EVO: GREP: EXCELT: PSP: COMPO: + EDI: END: ; + +LINKED_LIST SYS FLUX BURNUP FIG EDIBU LIBRARY2 ; + +************************************************************************ +* REFERENCE LOCAL PARAMETERS * +************************************************************************ +SEQ_ASCII TDT_VVER :: FILE './testVVER_1level_g2s.txt' ; +SEQ_ASCII FIG_VVER :: FILE './FIG_VVER_1level.ps' ; +STRING Library := "DLIB_J3p1p1" ; +REAL Kinf ; +ECHO "vverBU: Multicompo=" Multicompo ; + +************************************************************************ +* BEGIN DECLARATION * +************************************************************************ +INTEGER nstep nauto maxcompo ; +GREP: StepList :: LENGTH ListBU >>nstep<< ; +GREP: StepList :: LENGTH ListAutop >>nauto<< ; +GREP: StepList :: LENGTH ListCompo >>maxcompo<< ; +************************************************************************ +* END DECLARATION * +************************************************************************ +************************************************************************ +* BEGIN COMPO INITIALIZATION * +************************************************************************ +COMPO := COMPO: :: + EDIT 10 + STEP UP 'EDIBU' + MAXCAL 5 + COMM 'Evolution burnup pincell' ENDC + PARA 'Burnup' IRRA + ISOT 14 U235 U236 U238 Pu239 Pu240 Pu241 Pu242 Gd154 Gd155 Gd156 + Gd157 Gd158 Xe135 Sm149 + INIT +; +************************************************************************ +* END COMPO INITIALIZATION * +************************************************************************ + +************************************************************************ +* NOMINAL REFERENCE CALCULATION * +************************************************************************ +INTEGER istepNext ; +REAL BUbeg Tbeg ; +REAL BU BUautop BUcompo := 0.0 0.0 0.0 ; +REAL Norm_f2 := 41.9107 ; ! POWER NORM 41.9107 kW/kg +REAL BUend Tend := 0. 0. ; +INTEGER istep := 0 ; +INTEGER iauto := 1 ; +INTEGER iCompo := 1 ; +WHILE istep nstep < DO + + EVALUATE istep := istep 1 + ; + ECHO "burnup step: " istep "/" nstep ; + + EVALUATE BUbeg Tbeg := BUend Tend ; + GREP: StepList :: GETVAL 'ListBU' <<istep>> >>BUend<< ; + EVALUATE Tend := BUend Norm_f2 / ; + ECHO "Nominal depletion between" Tbeg " and" Tend "days" ; + +*---- +* USS +*---- + IF istep 1 = THEN + ECHO ".perform self-shielding at" Tbeg "days" ; + LIBRARY2 := USS: LIBRARY TRACK TF_EXC :: EDIT 1 PASS 3 GRMIN 52 ; + ELSE + GREP: StepList :: GETVAL "ListAutop" <<iauto>> >>BUautop<< ; + GREP: StepList :: GETVAL "ListBU" <<istep>> >>BU<< ; + IF BUautop BU = THEN + ECHO "perform self-shielding at" Tbeg "days" ; + LIBRARY2 := USS: LIBRARY LIBRARY2 TRACK TF_EXC :: EDIT 0 PASS 3 GRMIN 52 ; + EVALUATE iauto := iauto 1 + ; + ENDIF ; + ENDIF ; + +************************************************************************ +* BEGIN MOC FLUX CALCULATION * +************************************************************************ + SYS := ASM: LIBRARY2 TRACK TF_EXC :: EDIT 1 ; + + IF istep 1 = THEN + FLUX := FLU: LIBRARY2 SYS TRACK TF_EXC :: + EDIT 1 TYPE K B1 SIGS ; + ELSE + FLUX := FLU: FLUX LIBRARY2 SYS TRACK TF_EXC :: + EDIT 1 TYPE K B1 SIGS ; + ENDIF ; + + SYS := DELETE: SYS ; + + IF istep 1 = THEN + BURNUP LIBRARY2 := EVO: LIBRARY2 FLUX TRACK :: + EDIT 0 + SAVE <<Tbeg>> DAY POWR <<Norm_f2>> + ; + ELSE + BURNUP LIBRARY2 := EVO: BURNUP LIBRARY2 FLUX TRACK :: + EDIT 0 + SAVE <<Tbeg>> DAY POWR <<Norm_f2>> + ; + ENDIF ; + + GREP: StepList :: GETVAL "ListCompo" <<iCompo>> >>BUcompo<< ; + GREP: StepList :: GETVAL "ListBU" <<istep>> >>BU<< ; + IF BUcompo BU = THEN + EDIBU := EDI: FLUX LIBRARY2 TRACK :: + EDIT 5 + MICR 15 U235 U238 U236 Pu238 Pu239 Pu240 Pu241 Pu242 + Gd154 Gd155 Gd156 Gd157 Gd158 Xe135 Sm149 + MERG MIX 1 0 0 0 1 1 1 + COND + SAVE ON FUEL ; + +************************************************************************ +* MULTICOMPO FEEDING * +************************************************************************ + COMPO := COMPO: COMPO EDIBU BURNUP LIBRARY :: + EDIT 2 + STEP UP 'EDIBU' + SET <<Tbeg>> DAY ; + + EDIBU := DELETE: EDIBU ; + EVALUATE iCompo := iCompo 1 + ; + ENDIF ; + + GREP: FLUX :: GETVAL 'K-INFINITY ' 1 1 1 >>Kinf<< ; + ECHO "+++ Burnup=" BUend " Kinf=" Kinf " at step" istep ; + + IF istep nstep < THEN + EVALUATE istepNext := istep 1 + ; + GREP: StepList :: GETVAL 'ListBU' <<istepNext>> >>BUend<< ; + EVALUATE Tend := BUend Norm_f2 / ; + + BURNUP LIBRARY2 := EVO: BURNUP LIBRARY2 FLUX TRACK :: + EDIT 3 DEPL <<Tbeg>> <<Tend>> DAY POWR <<Norm_f2>> + EXPM 1.0E15 GLOB ; + + ENDIF ; + +************************************************************************ +* END FLUX CALCULATION * +************************************************************************ + +ENDWHILE ; +************************************************************************ +* END OF REFERENCE BURNUP LOOP WITH DEPLETION * + +END: ; +QUIT . |
