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 --- PyGan/data/simplePOW_proc/PowComponent.c2m | 113 +++++++++++++++++++++++++++++ 1 file changed, 113 insertions(+) create mode 100644 PyGan/data/simplePOW_proc/PowComponent.c2m (limited to 'PyGan/data/simplePOW_proc/PowComponent.c2m') diff --git a/PyGan/data/simplePOW_proc/PowComponent.c2m b/PyGan/data/simplePOW_proc/PowComponent.c2m new file mode 100644 index 0000000..703a019 --- /dev/null +++ b/PyGan/data/simplePOW_proc/PowComponent.c2m @@ -0,0 +1,113 @@ +**************************************************************** +* * +* Procedure : PowComponent.c2m * +* Purpose : Reactor Physics component * +* Author : A. Hebert * +* * +* CALL : * +* Fmap Matex Flux := PowComponent Fmap Matex Flux Cpo Track * +* :: <> <> <> ; * +* * +**************************************************************** +PARAMETER Fmap Matex Flux Cpo Track :: + ::: LINKED_LIST Fmap Matex Flux Cpo Track ; ; +MODULE NCR: MACINI: TRIVAA: FLUD: FLPOW: GREP: DELETE: END: ; +LINKED_LIST MacroF System Macro1 Macro2 Power ; +INTEGER iter ; + :: >>iter<< ; +DOUBLE Dpowi DdensB ; + :: >>Dpowi<< >>DdensB<< ; + +REAL powi := Dpowi D_TO_R ; +REAL densB := DdensB D_TO_R ; + +STRING Dir := "EDI2B" ; +REAL keffn ; + +*-- +* Reference parameter values +*-- +REAL pbore_0 temp_comb_0 temp_mode_0 dens_mode_0 := + 500.0 800.0 600.0 0.659 ; +*-- +* Cross-section database interpolation +*-- +ECHO "uniform Boron concentration=" densB ; +MacroF := NCR: Cpo Fmap :: + EDIT 0 + MACRO LINEAR + TABLE Cpo <> 'burnup' + MIX 1 INST-BURN + SET LINEAR 'burnup' MAP + SET LINEAR 'ppmBore' <> + SET CUBIC 'TF' <> + SET CUBIC 'TCA' <> + SET CUBIC 'DCA' <> + ADD 'ppmBore' <> MAP + REF 'burnup' SAMEASREF + 'TF' <> + 'TCA' <> + 'DCA' <> + ENDREF + ADD 'TCA' <> MAP + REF 'burnup' SAMEASREF + 'ppmBore' <> + 'TF' <> + 'DCA' <> + ENDREF + ADD 'TF' <> MAP + REF 'burnup' SAMEASREF + 'ppmBore' <> + 'TCA' <> + 'DCA' <> + ENDREF + ADD 'DCA' <> MAP + REF 'burnup' SAMEASREF + 'ppmBore' <> + 'TCA' <> + 'TF' <> + ENDREF + ENDMIX +; + +Macro1 := NCR: Cpo :: +* dummy reflector -- please use more realistic data + EDIT 0 + MACRO LINEAR NMIX 2 + COMPO Cpo <> + MIX 2 SET LINEAR 'burnup' 15000.0 + SET LINEAR 'ppmBore' <> + SET CUBIC 'TF' <> + SET CUBIC 'TCA' <> + SET CUBIC 'DCA' <> + ENDMIX +; + +Macro2 Matex := MACINI: Matex Macro1 MacroF ; +*-- +* Steady-state diffusion calculation +*-- +System := TRIVAA: Macro2 Track ; + +IF iter 1 = THEN + Flux := FLUD: System Track :: + EDIT 1 ADI 4 ACCE 5 3 ; +ELSE + Flux := FLUD: Flux System Track :: + EDIT 1 ; +ENDIF ; + +System MacroF Macro1 Macro2 := DELETE: System MacroF Macro1 Macro2 ; +*-- +* Power distribution calculation +*-- +ECHO "total reactor power=" powi "MW" ; +Power Fmap := FLPOW: Fmap Flux Track Matex + :: EDIT 0 PTOT <> ; + +Power := DELETE: Power ; +GREP: Flux :: + GETVAL 'K-EFFECTIVE ' 1 >>keffn<< ; +ECHO "K-effective = " keffn " densB=" densB ; + +END: ; -- cgit v1.2.3