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 --- Donjon/data/channel_mphy_proc/PowComponent.c2m | 105 +++++++++++++++++++++++++ 1 file changed, 105 insertions(+) create mode 100644 Donjon/data/channel_mphy_proc/PowComponent.c2m (limited to 'Donjon/data/channel_mphy_proc/PowComponent.c2m') diff --git a/Donjon/data/channel_mphy_proc/PowComponent.c2m b/Donjon/data/channel_mphy_proc/PowComponent.c2m new file mode 100644 index 0000000..11948c4 --- /dev/null +++ b/Donjon/data/channel_mphy_proc/PowComponent.c2m @@ -0,0 +1,105 @@ +**************************************************************** +* * +* Procedure : PowComponent.c2m * +* Purpose : Reactor Physics component * +* Author : A. Hebert * +* * +* CALL : * +* Fmap Matex MacroP Flux := PowComponent Fmap Matex Flux Cpo * +* CpRefl Track :: <> <> <> ; * +* * +**************************************************************** +PARAMETER Fmap Matex MacroP Flux Cpo CpRefl Track :: + ::: LINKED_LIST Fmap Matex MacroP Flux Cpo CpRefl Track ; ; +MODULE NCR: MACINI: TRIVAA: FLUD: FLPOW: GREP: DELETE: END: ; +LINKED_LIST MacroF System Macro1 Macro2 Power ; +INTEGER iter ; + :: >>iter<< ; +REAL powi densB ; + :: >>powi<< >>densB<< ; + +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 1 + 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: CpRefl :: + EDIT 1 + MACRO LINEAR NMIX 2 + COMPO CpRefl 'default' + MIX 2 FROM 1 SET 'C-BORE' <> ENDMIX (*lower*) +; + +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 ; + +MacroP := Macro2 ; +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