diff options
Diffstat (limited to 'Dragon/data/testVVER7_proc/vverBU.c2m')
| -rw-r--r-- | Dragon/data/testVVER7_proc/vverBU.c2m | 209 |
1 files changed, 209 insertions, 0 deletions
diff --git a/Dragon/data/testVVER7_proc/vverBU.c2m b/Dragon/data/testVVER7_proc/vverBU.c2m new file mode 100644 index 0000000..b5dd7c3 --- /dev/null +++ b/Dragon/data/testVVER7_proc/vverBU.c2m @@ -0,0 +1,209 @@ +******************************************************************************************************* +* * +* Procedure : vverBU.c2m * +* Purpose : BU iteration calculus * +* Author : L.Fede * +* * +* CALL : * +* COMPO := vverBU LIBRARY TRACK TF_EXC TRACK_SS TF_EXC_SS StepList :: <<Multicompo>> <<name_geom>> * +* <<name_compo>> <<ss>> * +* * +******************************************************************************************************* + +* --- +* INPUT & OUTPUT PARAMETERS +* --- +PARAMETER COMPO LIBRARY TRACK TF_EXC TRACK_SS TF_EXC_SS StepList :: +::: LINKED_LIST COMPO ; +::: LINKED_LIST LIBRARY ; +::: LINKED_LIST TRACK ; +::: SEQ_BINARY TF_EXC ; +::: LINKED_LIST TRACK_SS ; +::: SEQ_BINARY TF_EXC_SS ; +::: LINKED_LIST StepList ; ; +INTEGER Multicompo ; +:: >>Multicompo<< ; +STRING name_geom name_compo ss ; +:: >>name_geom<< >>name_compo<< >>ss<< ; + +* --- +* STRUCTURES AND MODULES +* --- +MODULE MAC: DELETE: UTL: AUTO: USS: ASM: FLU: EVO: GREP: EXCELT: PSP: + COMPO: EDI: END: ABORT: ; +LINKED_LIST SYS FLUX BURNUP FIG EDIBU LIBRARY2 ; +SEQ_ASCII _COMPO :: FILE <<name_compo>> ; + +************************************************************************ +* 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<< ; +ECHO "nstep=" nstep "nauto=" nauto "maxcompo=" maxcompo "ss=" ss ; +************************************************************************ +* END DECLARATION * +************************************************************************ +************************************************************************ +* BEGIN COMPO INITIALIZATION * +************************************************************************ +COMPO := COMPO: :: + EDIT 10 + STEP UP 'EDIBU' + MAXCAL 5 + COMM 'Evolution burnup pincell' ENDC + PARA 'Burnup' IRRA + ISOT 11 U235 U236 U238 Pu239 Pu240 Pu241 Pu242 Gd155 Gd157 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 := 36.8577 ; ! SPECIFIC POWER MW/t +REAL BUend Tend := 0. 0. ; +INTEGER istep := 0 ; +INTEGER iauto := 1 ; +INTEGER iCompo := 1 ; +ECHO "start burnup loop" ; +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" ; + +*---- +* AUTO +*---- + IF istep 1 = THEN + ECHO ".perform self-shielding at" Tbeg "days" ; + IF ss 'auto' = THEN + LIBRARY2 := AUTO: LIBRARY TRACK_SS TF_EXC_SS :: EDIT 1 PASS 1 MAXT 60000 SEED 1111 + CALC REGI W1 U235 ALL + ENDC ; + ELSEIF ss 'uss' = THEN + LIBRARY2 := USS: LIBRARY TRACK_SS TF_EXC_SS :: EDIT 1 PASS 3 + CALC REGI W1 U235 ALL + ENDC ; + ELSE + ECHO "vverBU: self shielding" ss "not available" ; + ABORT: ; + ENDIF ; + ELSE + GREP: StepList :: GETVAL "ListAutop" <<iauto>> >>BUautop<< ; + GREP: StepList :: GETVAL "ListBU" <<istep>> >>BU<< ; + IF BUautop BU = THEN + ECHO "perform self-shielding at" Tbeg "days" ; + IF ss 'auto' = THEN + LIBRARY2 := AUTO: LIBRARY LIBRARY2 TRACK_SS TF_EXC_SS :: EDIT 1 + CALC REGI W1 U235 ALL + ENDC ; + ELSEIF ss 'uss' = THEN + LIBRARY2 := USS: LIBRARY LIBRARY2 TRACK_SS TF_EXC_SS :: EDIT 1 + CALC REGI W1 U235 ALL + ENDC ; + ELSE + ECHO "vverBU: self shielding" ss "not available" ; + ABORT: ; + ENDIF ; + EVALUATE iauto := iauto 1 + ; + ENDIF ; + ENDIF ; + +************************************************************************ +* BEGIN MOC FLUX CALCULATION * +************************************************************************ + SYS := ASM: LIBRARY2 TRACK TF_EXC :: ARM 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 11 U235 U236 U238 Pu239 Pu240 Pu241 Pu242 Gd155 Gd157 Xe135 Sm149 + MERG MIX 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 + COND + SAVE ON FUEL ; + 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 * +************************************************************************ + +************************************************************************ +* EXPORT MULTICOMPO IN ASCII FORMAT * +************************************************************************ +_COMPO := COMPO ; + +END: ; +QUIT . |
