diff options
| author | stainer_t <thomas.stainer@oecd-nea.org> | 2025-09-08 13:48:49 +0200 |
|---|---|---|
| committer | stainer_t <thomas.stainer@oecd-nea.org> | 2025-09-08 13:48:49 +0200 |
| commit | 7dfcc480ba1e19bd3232349fc733caef94034292 (patch) | |
| tree | 03ee104eb8846d5cc1a981d267687a729185d3f3 /PyGan/data/simplePOW_proc/PowComponent.c2m | |
Initial commit from Polytechnique Montreal
Diffstat (limited to 'PyGan/data/simplePOW_proc/PowComponent.c2m')
| -rw-r--r-- | PyGan/data/simplePOW_proc/PowComponent.c2m | 113 |
1 files changed, 113 insertions, 0 deletions
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 * +* :: <<iter>> <<powi>> <<densB>> ; * +* * +**************************************************************** +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 <<Dir>> 'burnup' + MIX 1 INST-BURN + SET LINEAR 'burnup' MAP + SET LINEAR 'ppmBore' <<pbore_0>> + SET CUBIC 'TF' <<temp_comb_0>> + SET CUBIC 'TCA' <<temp_mode_0>> + SET CUBIC 'DCA' <<dens_mode_0>> + ADD 'ppmBore' <<pbore_0>> MAP + REF 'burnup' SAMEASREF + 'TF' <<temp_comb_0>> + 'TCA' <<temp_mode_0>> + 'DCA' <<dens_mode_0>> + ENDREF + ADD 'TCA' <<temp_mode_0>> MAP + REF 'burnup' SAMEASREF + 'ppmBore' <<pbore_0>> + 'TF' <<temp_comb_0>> + 'DCA' <<dens_mode_0>> + ENDREF + ADD 'TF' <<temp_comb_0>> MAP + REF 'burnup' SAMEASREF + 'ppmBore' <<pbore_0>> + 'TCA' <<temp_mode_0>> + 'DCA' <<dens_mode_0>> + ENDREF + ADD 'DCA' <<dens_mode_0>> MAP + REF 'burnup' SAMEASREF + 'ppmBore' <<pbore_0>> + 'TCA' <<temp_mode_0>> + 'TF' <<temp_comb_0>> + ENDREF + ENDMIX +; + +Macro1 := NCR: Cpo :: +* dummy reflector -- please use more realistic data + EDIT 0 + MACRO LINEAR NMIX 2 + COMPO Cpo <<Dir>> + MIX 2 SET LINEAR 'burnup' 15000.0 + SET LINEAR 'ppmBore' <<densB>> + SET CUBIC 'TF' <<temp_comb_0>> + SET CUBIC 'TCA' <<temp_mode_0>> + SET CUBIC 'DCA' <<dens_mode_0>> + 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 <<powi>> ; + +Power := DELETE: Power ; +GREP: Flux :: + GETVAL 'K-EFFECTIVE ' 1 >>keffn<< ; +ECHO "K-effective = " keffn " densB=" densB ; + +END: ; |
