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/Axial_Refl.c2m | 147 +++++++++++++++++++++++++ Donjon/data/channel_mphy_proc/GeoCo.c2m | 99 +++++++++++++++++ Donjon/data/channel_mphy_proc/GetDim.c2m | 119 ++++++++++++++++++++ Donjon/data/channel_mphy_proc/IniPowCompo.c2m | 97 ++++++++++++++++ Donjon/data/channel_mphy_proc/PowComponent.c2m | 105 ++++++++++++++++++ Donjon/data/channel_mphy_proc/SetFuelMap.c2m | 82 ++++++++++++++ Donjon/data/channel_mphy_proc/ThmComponent.c2m | 52 +++++++++ 7 files changed, 701 insertions(+) create mode 100755 Donjon/data/channel_mphy_proc/Axial_Refl.c2m create mode 100644 Donjon/data/channel_mphy_proc/GeoCo.c2m create mode 100644 Donjon/data/channel_mphy_proc/GetDim.c2m create mode 100644 Donjon/data/channel_mphy_proc/IniPowCompo.c2m create mode 100644 Donjon/data/channel_mphy_proc/PowComponent.c2m create mode 100644 Donjon/data/channel_mphy_proc/SetFuelMap.c2m create mode 100644 Donjon/data/channel_mphy_proc/ThmComponent.c2m (limited to 'Donjon/data/channel_mphy_proc') diff --git a/Donjon/data/channel_mphy_proc/Axial_Refl.c2m b/Donjon/data/channel_mphy_proc/Axial_Refl.c2m new file mode 100755 index 0000000..f6fe4aa --- /dev/null +++ b/Donjon/data/channel_mphy_proc/Axial_Refl.c2m @@ -0,0 +1,147 @@ +*********************************************************** +* * +* Procedure : Axial_Refl.c2m * +* Purpose : Set the PWR axial reflector properties * +* * +* CALL : CpRefl := Axial_Refl ; * +* * +*********************************************************** + +PARAMETER CpRefl :: + ::: LINKED_LIST + CpRefl ; ; + +MODULE MAC: UTL: EDI: COMPO: DELETE: END: ; +LINKED_LIST Macro Edition ; + +REAL TOTAL1_inf TOTAL2_inf + DIFF1_inf DIFF2_inf + SCAT1to1_inf SCAT2to2_inf + SCAT1to2_inf SCAT2to1_inf ; + +REAL TOTAL1_sup TOTAL2_sup + DIFF1_sup DIFF2_sup + SCAT1to1_sup SCAT2to2_sup + SCAT1to2_sup SCAT2to1_sup ; + +*--- +* Inferior (Foot) +*--- +EVALUATE TOTAL1_inf TOTAL2_inf := + .141535E+01 .261305E-01 + + .511240E+00 .198432E-01 + ; + +EVALUATE DIFF1_inf DIFF2_inf := + 1. 3. TOTAL1_inf * / + 1. 3. TOTAL2_inf * / ; + +EVALUATE SCAT1to1_inf SCAT2to2_inf := + .141535E+01 .511240E+00 ; + +EVALUATE SCAT1to2_inf SCAT2to1_inf := + .187184E-01 .742590E-04 ; + +*--- +* Superior (Head) +*--- +EVALUATE TOTAL1_sup TOTAL2_sup := + .158287E+01 .276758E-01 + + .503068E+00 .282751E-01 + ; + +EVALUATE DIFF1_sup DIFF2_sup := + 1. 3. TOTAL1_sup * / + 1. 3. TOTAL2_sup * / ; + +EVALUATE SCAT1to1_sup SCAT2to2_sup := + .158287E+01 .503068E+00 ; + +EVALUATE SCAT1to2_sup SCAT2to1_sup := + .200239E-01 .955672E-04 ; + +INTEGER BoronIndex := 1 ; +REAL BoronConc ; + +WHILE BoronIndex 5 <= DO +*--- +* BoronIndex BoronConc [ppm] +* ---------- -------------- +* 1 0. +* 2 100. +* 3 600. +* 4 1800. +* 5 2200. +*--- + IF BoronIndex 1 = THEN + + EVALUATE BoronConc := 0. ; + + ELSEIF BoronIndex 2 = THEN + + EVALUATE BoronConc := 100. ; + + ELSEIF BoronIndex 3 = THEN + + EVALUATE BoronConc := 600. ; + + ELSEIF BoronIndex 4 = THEN + + EVALUATE BoronConc := 1800. ; + + ELSEIF BoronIndex 5 = THEN + + EVALUATE BoronConc := 2200. ; + + ENDIF ; + +*--- +* Reflector definition +*--- + + Macro := MAC: :: + EDIT 1 NGRO 2 NMIX 1 NIFI 0 + ANIS 1 CTRA NONE + ENER 2.E7 0.625 1.E-3 + VOLUME 1. + READ INPUT + + MIX 1 ! Lower Reflector + FLUX-INTG 1. 1. + TOTAL <> <> + DIFF <> <> + SCAT 2 2 (*2->1*) 0. (*1->1*) <> + 2 2 (*2->2*) <> (*1->2*) <> + + NORM + ; + + Edition := EDI: Macro :: + EDIT 1 + SAVE + ; + + IF BoronIndex 1 = THEN + + CpRefl := COMPO: :: + EDIT 1 + COMM + 'light reflector XS' + ENDC + PARA 'C-BORE' VALU REAL + INIT + ; + ENDIF ; + + CpRefl := COMPO: CpRefl Edition :: + EDIT 1 + C-BORE <> + MACRO + ; + + Macro Edition := DELETE: Macro Edition ; + + EVALUATE BoronIndex := BoronIndex 1 + ; + +ENDWHILE ; + +END: ; +QUIT . diff --git a/Donjon/data/channel_mphy_proc/GeoCo.c2m b/Donjon/data/channel_mphy_proc/GeoCo.c2m new file mode 100644 index 0000000..41a6e2d --- /dev/null +++ b/Donjon/data/channel_mphy_proc/GeoCo.c2m @@ -0,0 +1,99 @@ +*DECK GeoCo.c2m +*---- +* Name : GeoCo.c2m +* Type : DONJON procedure +* Use : Core Geometry +* Procedure called as: +* +* Bench := GeoCo :: +* <> <> <> ; +* +* Parameters of the procedure +* Bench : Core Geometry +* Input data: +* Splitx : cartesian splitting +* Splitz : axial splitting +*---- +* Definition of the input and output data structures and +* of the input and output parameters for this procedure +*---- +PARAMETER GeoRes Matex :: +::: LINKED_LIST GeoRes Matex ; ; +*---- +* Local modules, procedures and structures +*---- +MODULE USPLIT: GEO: END: ; +LINKED_LIST GeoCoeur ; +*---- +* Get calculation options +*---- +INTEGER Splitx Splitz MaxR ; +:: >>Splitx<< >>Splitz<< >>MaxR<< ; + +REAL x1 := 21.6 ; + +REAL z1 dz := 20.0 23.0 ; + +REAL z2 z3 z4 z5 z6 z7 z8 z9 z10 z11 z12 z13 z14 + z15 z16 z17 := + z1 dz + z1 2. dz * + z1 3. dz * + z1 4. dz * + + z1 5. dz * + z1 6. dz * + z1 7. dz * + z1 8. dz * + + z1 9. dz * + z1 10. dz * + z1 11. dz * + z1 12. dz * + + z1 13. dz * + z1 14. dz * + z1 15. dz * + z1 16. dz * + ; + +REAL z18 := z17 z1 + ; + +GeoCoeur := GEO: :: CAR3D 1 1 18 + EDIT 3 + X+ REFL X- REFL + Y+ REFL Y- REFL + Z+ VOID Z- VOID + MIX + +PLANE 1 (* lower core *) + 2 +PLANE 2 + 1 +PLANE 3 SAME 2 +PLANE 4 SAME 2 +PLANE 5 SAME 2 +PLANE 6 SAME 2 +PLANE 7 SAME 2 +PLANE 8 SAME 2 +PLANE 9 SAME 2 +PLANE 10 SAME 2 +PLANE 11 SAME 2 +PLANE 12 SAME 2 +PLANE 13 SAME 2 +PLANE 14 SAME 2 +PLANE 15 SAME 2 +PLANE 16 SAME 2 +PLANE 17 SAME 2 +PLANE 18 (* higher core *) + 2 + + MESHX 0. <> + + MESHY 0. <> + + MESHZ 0.0 <> <> <> <> <> <> <> + <> <> <> <> <> <> <> + <> <> <> <> + + SPLITX <> + SPLITY <> + + SPLITZ <> <> <> <> <> + <> <> <> <> <> + <> <> <> <> <> + <> <> <> +; + +GeoRes Matex := USPLIT: GeoCoeur :: NGRP 2 MAXR <> + NREFL 1 RMIX 2 + NFUEL 1 FMIX 1 +; + +END: ; + +QUIT "LIST" . diff --git a/Donjon/data/channel_mphy_proc/GetDim.c2m b/Donjon/data/channel_mphy_proc/GetDim.c2m new file mode 100644 index 0000000..94d46b0 --- /dev/null +++ b/Donjon/data/channel_mphy_proc/GetDim.c2m @@ -0,0 +1,119 @@ +*DECK GetDim.c2m +*---- +* Name : GetDim.c2m +* Type : DRAGON procedure +* Use : Public dimensions for assembly calculation +* +* Procedure called as: +* +* GetDim :: +* >>Rcomb1<< >>Rcomb2<< >>Rcomb3<< >>Rcomb4<< +* >>R_int_TG<< >>R_ext_TG<< >>R_int_TI<< >>R_ext_TI<< +* >>R_int_G<< >>R_ext_G<< >>Cote<< >>Lame<< >>CoteL<< +* >>RmodeN1<< >>RmodeN2<< >>R_ext_G2<< >>R_ext_TGm<< >>R_ext_TIm<< +* >>N_U5_UOX<< >>N_U5_MOX<< >>N_Pu8<< >>N_Pu9<< >>N_Pu0<< +* >>N_Pu1<< >>N_Pu2<< >>N_Am1<< >>densU_UOX<< >>densU_MOX<< +* >>densPu_MOX<< >>teneur1_Pu<< >>teneur2_Pu<< >>teneur3_Pu<< +* >>temp_comb<< >>temp_mode<< >>dens_mod<< ; +* +* Input data : none +* +* Output data: +* Rcomb1 : 50/100 of outer radius of fuel (cm) +* Rcomb2 : 80/100 of outer radius of fuel (cm) +* Rcomb3 : 95/100 of outer radius of fuel (cm) +* Rcomb4 : 100/100 of outer radius of fuel (cm) +* R_int_TG : Inner radius of cladding of guide tube (cm) +* R_ext_TG : Outer radius of cladding of guide tube (cm) +* R_int_TI : Inner radius of cladding of guide tube (cm) +* R_ext_TI : Outer radius of cladding of guide tube (cm) +* R_int_G : Inner radius of cladding of fuel tube (cm) +* R_ext_G : Outer radius of cladding of fuel tube (cm) +* Cote : Lattice pitch (cm) +* Lame : Water space on the side of the assembly (cm) +* CoteL : Lattice pitch + Water space (cm) +* RmodeN1 : Parameter for flux calculation in Level 1 (cm) +* RmodeN2 : Parameter for flux calculation in Level 2 (cm) +* R_ext_G2 : R_ext_G * 2 (cm) +* R_ext_TGm : -R_ext_TGm (cm) +* R_ext_TIm : -R_ext_TIm (cm) +* N_U5_UOX : U235 enrichment in UOX-Fuel +* N_U5_MOX : U235 enrichment in MOX-Fuel +* N_Pu8 : Pu238 percentage in Pu-vector +* N_Pu9 : Pu239 percentage in Pu-vector +* N_Pu0 : Pu240 percentage in Pu-vector +* N_Pu1 : Pu241 percentage in Pu-vector +* N_Pu2 : Pu242 percentage in Pu-vector +* N_Am1 : Am241 percentage in Pu-vector +* densU_UOX : Theoretical density of Uranium in UOX-Fuel +* densU_MOX : Theoretical density of Uranium in MOX-Fuel +* densPu_MOX : Theoretical density of Plutonium in MOX-Fuel +* teneur1_Pu : Plutonium content in MOX-high enrichment region +* teneur2_Pu : Plutonium content in MOX-medium enrichment region +* teneur3_Pu : Plutonium content in MOX-low enrichment region +* temp_comb : Theoretical Fuel temperature (K) +* temp_mode : Theoretical moderator temperature (K) +* dens_mod : Theoretical moderator density (g/cc) + +MODULE + END: ; + +REAL Rcomb1 Rcomb2 Rcomb3 Rcomb4 + R_int_TG R_ext_TG R_int_TI R_ext_TI R_int_G R_ext_G + Cote Lame CoteL + RmodeN1 RmodeN2 + R_ext_G2 R_ext_TGm R_ext_TIm + N_U5_UOX N_U5_MOX + N_Pu8 N_Pu9 N_Pu0 N_Pu1 N_Pu2 N_Am1 + densU_UOX densU_MOX densPu_MOX + teneur1_Pu teneur2_Pu teneur3_Pu + temp_comb temp_mode dens_mod ; + + +EVALUATE Rcomb4 := 0.41 ; +EVALUATE Rcomb1 := 0.5 SQRT Rcomb4 * ; +EVALUATE Rcomb2 := 0.8 SQRT Rcomb4 * ; +EVALUATE Rcomb3 := 0.95 SQRT Rcomb4 * ; + +EVALUATE R_int_TG := 0.56 ; +EVALUATE R_ext_TG := 0.62 ; +EVALUATE R_int_TI := 0.56 ; +EVALUATE R_ext_TI := 0.62 ; +EVALUATE R_int_G := 0.418 ; +EVALUATE R_ext_G := 0.48 ; + +EVALUATE Cote := 1.26 ; +EVALUATE Lame := 0.04 ; +EVALUATE CoteL := Cote Lame + ; + +EVALUATE RmodeN1 := 0.60 ; +EVALUATE RmodeN2 := 0.627 ; + +EVALUATE R_ext_G2 := R_ext_G 2.0 * ; +EVALUATE R_ext_TGm := R_ext_TG -1.0 * ; +EVALUATE R_ext_TIm := R_ext_TI -1.0 * ; + +EVALUATE N_U5_UOX := 3.70E-02 ; +EVALUATE N_U5_MOX := 0.25E-02 ; + +EVALUATE N_Pu8 N_Pu9 N_Pu0 N_Pu1 N_Pu2 N_Am1 := + 1.20E-02 59.50E-02 24.10E-02 9.00E-02 4.70E-02 1.50E-02 ; + +EVALUATE densU_UOX densU_MOX densPu_MOX := 10.0 10.0 10.5 ; + +EVALUATE teneur1_Pu teneur2_Pu teneur3_Pu := + 7.50E-02 4.90E-02 2.80E-02 ; + +EVALUATE temp_comb temp_mode dens_mod := 800.0 600.0 0.659 ; + + +:: <> <> <> <> <> <> + <> <> <> <> <> <> + <> <> <> <> <> + <> <> <> <> <> <> + <> <> <> <> <> + <> <> <> <> + <> <> <> ; + +END: ; +QUIT . diff --git a/Donjon/data/channel_mphy_proc/IniPowCompo.c2m b/Donjon/data/channel_mphy_proc/IniPowCompo.c2m new file mode 100644 index 0000000..3300e9c --- /dev/null +++ b/Donjon/data/channel_mphy_proc/IniPowCompo.c2m @@ -0,0 +1,97 @@ +**************************************************************** +* * +* Procedure : IniPowCompo.c2m * +* Purpose : Initialization component * +* Author : A. Hebert * +* * +* CALL : * +* Fmap Matex Track := IniPowCompo ; * +* * +**************************************************************** +PARAMETER Fmap Matex Track :: + ::: LINKED_LIST Fmap Matex Track ; ; + +LINKED_LIST GeoCoeur ; +MODULE TRIVAT: RESINI: UTL: END: ; + +PROCEDURE GetDim GeoCo SetFuelMap ; +*---- +* Local Parameters +*---- +REAL densB1 := 2000.0 ; +REAL densB2 := 1000.0 ; +INTEGER Splitx Splitz := 4 4 ; +REAL powi := 0.0 ; + +REAL Rcomb1 Rcomb2 Rcomb3 Rcomb4 + R_int_TG R_ext_TG R_int_TI R_ext_TI R_int_G R_ext_G + Cote CoteL + RmodeN1 RmodeN2 + R_ext_G2 R_ext_TGm R_ext_TIm + N_U5_UOX N_U5_MOX + N_Pu8 N_Pu9 N_Pu0 N_Pu1 N_Pu2 N_Am1 + densU_UOX densU_MOX densPu_MOX + teneur1_Pu teneur2_Pu teneur3_Pu + temp_comb temp_mode dens_mode + temp_comb_0 temp_mode_0 dens_mode_0 ; + +REAL ORF IRC ORC IRCGT ORCGT ORAG ORAN + IRCA ORCA ORDET ORDETC Lame LPitch Height ; + +REAL pbore_0 := 500. ; ! natural boron concentration in ppm +REAL bVal := 8000. ; ! uniform burnup value + + GetDim :: + >>Rcomb1<< >>Rcomb2<< >>Rcomb3<< >>Rcomb4<< + >>R_int_TG<< >>R_ext_TG<< >>R_int_TI<< >>R_ext_TI<< + >>R_int_G<< >>R_ext_G<< >>Cote<< >>Lame<< >>CoteL<< + >>RmodeN1<< >>RmodeN2<< >>R_ext_G2<< >>R_ext_TGm<< >>R_ext_TIm<< + >>N_U5_UOX<< >>N_U5_MOX<< >>N_Pu8<< >>N_Pu9<< >>N_Pu0<< + >>N_Pu1<< >>N_Pu2<< >>N_Am1<< >>densU_UOX<< >>densU_MOX<< + >>densPu_MOX<< >>teneur1_Pu<< >>teneur2_Pu<< >>teneur3_Pu<< + >>temp_comb_0<< >>temp_mode_0<< >>dens_mode_0<< ; + +EVALUATE temp_comb temp_mode dens_mode := 800.0 600.0 0.659 ; + +EVALUATE + ORF IRC ORC IRCGT ORCGT + ORAG ORAN IRCA ORCA + ORDET ORDETC + Lame LPitch Height + := + Rcomb4 R_int_TG R_ext_TG R_int_TI R_ext_TI + R_int_TG R_ext_TG R_int_TI R_ext_TI + R_int_TG R_ext_TG + Lame Cote 10.0 + ; + +REAL rPavX := 17.0 ; ! assemblage 17 x 17 +INTEGER iPavX := 17 ; ! assemblage 17 x 17 + +INTEGER MaxR := iPavX iPavX * 33 * Splitx * Splitx * Splitz * ; + +GeoCoeur Matex := GeoCo :: + <> <> <> ; + +Track := TRIVAT: GeoCoeur :: + EDIT 1 MAXR <> DUAL 3 3 ; + +*-- +* Fuel map definition +*-- +Fmap Matex := SetFuelMap Matex ; + +UTL: Fmap :: STEP UP GEOMAP DIR IMPR MESHX * IMPR MESHY * IMPR MESHZ * ; + +Fmap := RESINI: Fmap :: EDIT 1 + + BTYPE INST-BURN + INST-BVAL SAME <> + SET-PARAM 'C-BORE' <> + SET-PARAM 'T-FUEL' <> + SET-PARAM 'T-COOL' <> + SET-PARAM 'D-COOL' <> + ; + +END: ; +QUIT "LIST" . 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: ; diff --git a/Donjon/data/channel_mphy_proc/SetFuelMap.c2m b/Donjon/data/channel_mphy_proc/SetFuelMap.c2m new file mode 100644 index 0000000..3dad643 --- /dev/null +++ b/Donjon/data/channel_mphy_proc/SetFuelMap.c2m @@ -0,0 +1,82 @@ +*********************************************************** +* * +* Procedure : SetFuelMap.c2m * +* Purpose : Fuel-map specifications for REP900 * +* Author(s) : M. Guyot (2010) * +* Modified by : A. Hebert (2011) * +* * +* CALL : FMAP MATEX := SetFuelMap MATEX ; * +* * +*********************************************************** + +PARAMETER FMAP MATEX :: + ::: LINKED_LIST + FMAP MATEX ; ; + +MODULE RESINI: END: ; + +REAL x1 := 21.6 ; + +REAL z1 dz := 20.0 23.0 ; + +REAL z2 z3 z4 z5 z6 z7 z8 z9 z10 z11 z12 z13 z14 + z15 z16 z17 := + z1 dz + z1 2. dz * + z1 3. dz * + z1 4. dz * + + z1 5. dz * + z1 6. dz * + z1 7. dz * + z1 8. dz * + + z1 9. dz * + z1 10. dz * + z1 11. dz * + z1 12. dz * + + z1 13. dz * + z1 14. dz * + z1 15. dz * + z1 16. dz * + ; + +REAL z18 := z17 z1 + ; + +FMAP MATEX := RESINI: MATEX :: + ::: GEO: CAR3D 1 1 18 + EDIT 0 + X- REFL X+ REFL + Y- REFL Y+ REFL + Z- VOID Z+ VOID +MIX +PLANE 1 + 0 +PLANE 2 + 1 +PLANE 3 SAME 2 +PLANE 4 SAME 2 +PLANE 5 SAME 2 +PLANE 6 SAME 2 +PLANE 7 SAME 2 +PLANE 8 SAME 2 +PLANE 9 SAME 2 +PLANE 10 SAME 2 +PLANE 11 SAME 2 +PLANE 12 SAME 2 +PLANE 13 SAME 2 +PLANE 14 SAME 2 +PLANE 15 SAME 2 +PLANE 16 SAME 2 +PLANE 17 SAME 2 +PLANE 18 SAME 1 +! +MESHX 0.0 <> + +MESHY 0.0 <> + +MESHZ 0.0 <> <> <> <> <> <> <> + <> <> <> <> <> <> <> + <> <> <> <> +; +! +NXNAME '01' +! +NYNAME 'A' +! +NCOMB 1 +B-ZONE 1 + + ADD-PARAM PNAME 'C-BORE' PARKEY 'ppmBore' GLOBAL + ADD-PARAM PNAME 'T-FUEL' PARKEY 'TF' GLOBAL + ADD-PARAM PNAME 'T-COOL' PARKEY 'TCA' GLOBAL + ADD-PARAM PNAME 'D-COOL' PARKEY 'DCA' GLOBAL +; + +END: ; +QUIT . diff --git a/Donjon/data/channel_mphy_proc/ThmComponent.c2m b/Donjon/data/channel_mphy_proc/ThmComponent.c2m new file mode 100644 index 0000000..9bc94f1 --- /dev/null +++ b/Donjon/data/channel_mphy_proc/ThmComponent.c2m @@ -0,0 +1,52 @@ +**************************************************************** +* * +* Procedure : ThmComponent.c2m * +* Purpose : Thermo-hydraulics component * +* Author : A. Hebert * +* * +* CALL : * +* Fmap Thm := ThmComponent Fmap Thm * +* :: <> <> >>CONV<< ; * +* * +**************************************************************** +PARAMETER Fmap Thm :: + ::: LINKED_LIST Fmap Thm ; ; +MODULE THM: GREP: END: ; +INTEGER iter ; + :: >>iter<< ; +REAL densB ; + :: >>densB<< ; + +REAL erra1 ; +LOGICAL CONV ; + +IF iter 1 = THEN + Thm Fmap := THM: Fmap :: + EDIT 1 + TIME 0.0 (* s *) + CONV 50 50 50 0.5 1.0E-3 + CRITFL 1.80E+6 (* W/m^2 *) + ASSMB 264 25 + CWSECT 3.86 (* m^2 *) 67398.0 (* m^3/hr *) + INLET 15500000.0 (* Pa *) 560.95 (* K *) + RADIUS 0.4095E-2 0.418E-2 0.475E-2 0.6025E-2 (* m *) + SET-PARAM 'C-BORE' <> + RODMESH 5 10 + CONV 50 50 50 1.0 1.0E-4 + RELAX 0.5 + ; + +ELSE + Thm Fmap := THM: Thm Fmap :: EDIT 1 ; +ENDIF ; +*-- +* Convergence test +*-- +GREP: Thm :: GETVAL 'ERROR-T-FUEL' 1 >>erra1<< ; +ECHO "error on fuel temperature at iteration" iter "=" erra1 ; +EVALUATE CONV := erra1 1.0 < iter 50 > + ; +ECHO "at iter=" iter ", CONV =" CONV ; +ECHO "-------------------------------" ; + :: <> ; + +END: ; -- cgit v1.2.3