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 --- Trivac/data/Ktests_proc/dual12_biv.c2m | 144 +++++++++++++++++++++++++++++++++ 1 file changed, 144 insertions(+) create mode 100755 Trivac/data/Ktests_proc/dual12_biv.c2m (limited to 'Trivac/data/Ktests_proc/dual12_biv.c2m') diff --git a/Trivac/data/Ktests_proc/dual12_biv.c2m b/Trivac/data/Ktests_proc/dual12_biv.c2m new file mode 100755 index 0000000..0ada58d --- /dev/null +++ b/Trivac/data/Ktests_proc/dual12_biv.c2m @@ -0,0 +1,144 @@ +*---- +* TEST CASE ene6103 +* +* REF: A. Hebert, "Applied Reactor Physics", Presses Internationales +* Polytechnique, Problem 5.12 (2009). +* +*---- +* Define STRUCTURES and MODULES used +*---- +LINKED_LIST GEOM MACRO MACROP TRACK SYSTEM SYSTEMP FLUX EDIT KINET ; +MODULE GEO: MAC: BIVACT: BIVACA: FLUD: OUT: INIKIN: KINSOL: DELETE: + GREP: END: ; +REAL FNORM ; +REAL TIME := 0.0 ; +PROCEDURE assertS assertS2 ; +* +GEOM := GEO: :: CAR1D 4 + X- ZERO X+ ZERO + MIX 2 1 3 2 + MESHX 0.0 40.0 350.0 660.0 700.0 + SPLITX 1 4 4 1 + ; +*---- +* Macroscopic cross sections +*---- +MACRO := MAC: :: + EDIT 2 NGRO 2 NMIX 3 NIFI 1 + READ INPUT + MIX 1 + DIFF 1.264E+00 0.9328E+00 + TOTAL 8.154E-03 4.1000E-03 + NUSIGF 0.000E+00 4.5620E-03 + CHI 1.000E+00 0.000E+00 + H-FACTOR 0.000E+00 4.5620E-03 + SCAT 1 1 0.0 2 2 0.0 7.368E-03 + OVERV 1.000E-07 5.000E-06 + MIX 2 + DIFF 1.310E+00 0.8695E+00 + TOTAL 1.018E-02 2.1170E-04 + SCAT 1 1 0.0 2 2 0.0 1.0180E-02 + OVERV 1.000E-07 5.000E-06 + MIX 3 + DIFF 1.264E+00 0.9328E+00 + TOTAL 8.154E-03 4.1000E-03 + NUSIGF 0.000E+00 4.5620E-03 + CHI 1.000E+00 0.000E+00 + H-FACTOR 0.000E+00 4.5620E-03 + SCAT 1 1 0.0 2 2 0.0 7.368E-03 + OVERV 1.000E-07 5.000E-06 + ; +*---- +* Steady-state calculation +*---- +MACROP := MAC: MACRO :: + EDIT 2 + READ INPUT + MIX 1 + TOTAL 8.154E-03 4.0800E-03 + ; +TRACK := BIVACT: GEOM :: + TITLE 'BENCHMARK ENE6103' + EDIT 99 MAXR 18 DUAL 1 2 ; +SYSTEM := BIVACA: MACRO TRACK :: EDIT 5 UNIT ; +FLUX := FLUD: SYSTEM TRACK :: EDIT 2 EXTE 5.0E-7 ; +GREP: FLUX :: STEP UP FLUX GETVAL 2 10 >>FNORM<< ; +assertS FLUX :: 'K-EFFECTIVE' 1 0.9977701 ; +EVALUATE FNORM := 1.0 FNORM / ; +ECHO "Flux normalization factor=" FNORM ; +EDIT := OUT: FLUX TRACK MACRO GEOM :: EDIT 2 INTG IN ; +SYSTEMP := BIVACA: MACROP TRACK :: EDIT 5 UNIT ; +*---- +* Implicit space-time kinetics +*---- +KINET := INIKIN: MACRO TRACK SYSTEM FLUX :: EDIT 6 + NDEL 6 + BETA 0.000266 0.001491 0.001316 + 0.002849 0.000896 0.000182 + LAMBDA 0.0127 0.0317 0.1150 + 0.3110 1.4000 3.8700 + CHID 1.0 1.0 1.0 1.0 1.0 1.0 + 0.0 0.0 0.0 0.0 0.0 0.0 + NORM <> ; +WHILE TIME 10.0 <= DO + KINET := KINSOL: KINET MACROP TRACK SYSTEMP :: + EDIT 5 DELTA 0.1 + SCHEME FLUX IMPLIC PREC IMPLIC EXTE 5.0E-7 ; + GREP: KINET :: GETVAL 'TOTAL-TIME' 1 >>TIME<< ; + ECHO "TIME=" TIME "S" ; + IF TIME 0.1 - ABS 1.0E-3 < THEN + assertS2 KINET :: 'CTRL-FLUX' 1 1.188076 ; + assertS2 KINET :: 'CTRL-PREC' 1 9.578693E-05 ; + ELSEIF TIME 0.5 - ABS 1.0E-3 < THEN + assertS2 KINET :: 'CTRL-FLUX' 1 1.566191 ; + assertS2 KINET :: 'CTRL-PREC' 1 9.600593E-05 ; + ELSEIF TIME 1.0 - ABS 1.0E-3 < THEN + assertS2 KINET :: 'CTRL-FLUX' 1 1.785692 ; + assertS2 KINET :: 'CTRL-PREC' 1 9.643316E-05 ; + ELSEIF TIME 5.0 - ABS 1.0E-3 < THEN + assertS2 KINET :: 'CTRL-FLUX' 1 2.910200 ; + assertS2 KINET :: 'CTRL-PREC' 1 1.028781E-04 ; + ELSEIF TIME 10.0 - ABS 1.0E-3 < THEN + assertS2 KINET :: 'CTRL-FLUX' 1 4.719470 ; + assertS2 KINET :: 'CTRL-PREC' 1 1.188469E-04 ; + ENDIF ; +ENDWHILE ; +KINET := DELETE: KINET ; +*---- +* Crank-Nicholson space-time kinetics +*---- +EVALUATE TIME := 0.0 ; +KINET := INIKIN: MACRO TRACK SYSTEM FLUX :: EDIT 6 + NDEL 6 + BETA 0.000266 0.001491 0.001316 + 0.002849 0.000896 0.000182 + LAMBDA 0.0127 0.0317 0.1150 + 0.3110 1.4000 3.8700 + CHID 1.0 1.0 1.0 1.0 1.0 1.0 + 0.0 0.0 0.0 0.0 0.0 0.0 + NORM <> ; +WHILE TIME 10.0 <= DO + KINET := KINSOL: KINET MACROP TRACK SYSTEMP :: + EDIT 5 DELTA 0.1 + SCHEME FLUX CRANK PREC CRANK EXTE 5.0E-7 ; + GREP: KINET :: GETVAL 'TOTAL-TIME' 1 >>TIME<< ; + ECHO "TIME=" TIME "S" ; + IF TIME 0.1 - ABS 1.0E-3 < THEN + assertS2 KINET :: 'CTRL-FLUX' 1 1.225747 ; + assertS2 KINET :: 'CTRL-PREC' 1 9.577780E-05 ; + ELSEIF TIME 0.5 - ABS 1.0E-3 < THEN + assertS2 KINET :: 'CTRL-FLUX' 1 1.594242 ; + assertS2 KINET :: 'CTRL-PREC' 1 9.598913E-05 ; + ELSEIF TIME 1.0 - ABS 1.0E-3 < THEN + assertS2 KINET :: 'CTRL-FLUX' 1 1.795113 ; + assertS2 KINET :: 'CTRL-PREC' 1 9.641382E-05 ; + ELSEIF TIME 5.0 - ABS 1.0E-3 < THEN + assertS2 KINET :: 'CTRL-FLUX' 1 2.905498 ; + assertS2 KINET :: 'CTRL-PREC' 1 1.027946E-04 ; + ELSEIF TIME 10.0 - ABS 1.0E-3 < THEN + assertS2 KINET :: 'CTRL-FLUX' 1 4.702715 ; + assertS2 KINET :: 'CTRL-PREC' 1 1.186118E-04 ; + ENDIF ; +ENDWHILE ; +ECHO "test dual12_biv completed" ; +END: ; -- cgit v1.2.3