- dwireWire diameter [m]
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Wire diameter [m]
- flat_to_flatFlat to flat distance for the hexagonal assembly [m]
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Flat to flat distance for the hexagonal assembly [m]
- heated_lengthHeated length [m]
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Heated length [m]
- hwireWire lead length [m]
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Wire lead length [m]
- n_cellsThe number of cells in the axial direction
C++ Type:unsigned int
Controllable:No
Description:The number of cells in the axial direction
- nringsNumber of fuel-pin rings per assembly, counting the center pin as the first ring [-]
C++ Type:unsigned int
Controllable:No
Description:Number of fuel-pin rings per assembly, counting the center pin as the first ring [-]
- pin_diameterRod diameter [m]
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Rod diameter [m]
- pitchPitch [m]
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Pitch [m]
SCMTriAssemblyMeshGenerator
Creates a mesh of 1D subchannels and 1D pins in a triangular lattice arrangement
Overview
This mesh generator creates the 1D subchannel and pin meshes for a triangular lattice arrangement. The generated subdomains are named subchannel and fuel_pins. The center of the mesh is the origin.
This object replaces the old chained SCMTriSubChannelMeshGenerator and SCMTriPinMeshGenerator input pattern. See the SubChannel mesh generator migration page for old-to-new input examples.
Example Input File Syntax
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
pin_diameter = 0.01
dwire = 0.002
hwire = 0.0833
spacer_z = '0'
spacer_k = '5.0'
[]
[duct]
type = SCMTriDuctMeshGenerator
input = subchannel
[]
[](modules/subchannel/test/tests/problems/SFR/sodium-19pin/test19_monolithic.i)Input Parameters
- Kij0.5Lateral form loss coefficient [-]
Default:0.5
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Lateral form loss coefficient [-]
- index_blockage0 index of subchannels affected by blockage
Default:0
C++ Type:std::vector<unsigned int>
Controllable:No
Description:index of subchannels affected by blockage
- k_blockage0 Form loss coefficient of subchannels affected by blockage
Default:0
C++ Type:std::vector<double>
Unit:(no unit assumed)
Controllable:No
Description:Form loss coefficient of subchannels affected by blockage
- pin_block_id1Fuel Pin block id
Default:1
C++ Type:unsigned int
Controllable:No
Description:Fuel Pin block id
- reduction_blockage1 Area reduction of subchannels affected by blockage (number to muliply the area)
Default:1
C++ Type:std::vector<double>
Unit:(no unit assumed)
Controllable:No
Description:Area reduction of subchannels affected by blockage (number to muliply the area)
- spacer_kK-loss coefficient of spacers/vanes/mixing vanes [-]
C++ Type:std::vector<double>
Unit:(no unit assumed)
Controllable:No
Description:K-loss coefficient of spacers/vanes/mixing vanes [-]
- spacer_zAxial location of spacers/vanes/mixing vanes [m]
C++ Type:std::vector<double>
Unit:(no unit assumed)
Controllable:No
Description:Axial location of spacers/vanes/mixing vanes [m]
- subchannel_block_id0Subchannel block id
Default:0
C++ Type:unsigned int
Controllable:No
Description:Subchannel block id
- unheated_length_entry0Unheated length at entry [m]
Default:0
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Unheated length at entry [m]
- unheated_length_exit0Unheated length at exit [m]
Default:0
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Unheated length at exit [m]
- z_blockage0 0 axial location of blockage (inlet, outlet) [m]
Default:0 0
C++ Type:std::vector<double>
Unit:(no unit assumed)
Controllable:No
Description:axial location of blockage (inlet, outlet) [m]
Optional Parameters
- enableTrueSet the enabled status of the MooseObject.
Default:True
C++ Type:bool
Controllable:No
Description:Set the enabled status of the MooseObject.
- save_with_nameKeep the mesh from this mesh generator in memory with the name specified
C++ Type:std::string
Controllable:No
Description:Keep the mesh from this mesh generator in memory with the name specified
Advanced Parameters
- nemesisFalseWhether or not to output the mesh file in the nemesisformat (only if output = true)
Default:False
C++ Type:bool
Controllable:No
Description:Whether or not to output the mesh file in the nemesisformat (only if output = true)
- outputFalseWhether or not to output the mesh file after generating the mesh
Default:False
C++ Type:bool
Controllable:No
Description:Whether or not to output the mesh file after generating the mesh
- show_infoFalseWhether or not to show mesh info after generating the mesh (bounding box, element types, sidesets, nodesets, subdomains, etc)
Default:False
C++ Type:bool
Controllable:No
Description:Whether or not to show mesh info after generating the mesh (bounding box, element types, sidesets, nodesets, subdomains, etc)
Debugging Parameters
Input Files
- (modules/combined/test/tests/subchannel_thm_coupling/subchannel.i)
- (modules/subchannel/test/tests/problems/SFR/sodium-19pin/test19_monolithic.i)
- (modules/subchannel/test/tests/mesh/tri_assembly/tricoords3.i)
- (modules/subchannel/validation/Blockage/THORS/FFM-5B_high.i)
- (modules/subchannel/validation/Blockage/THORS/FFM-3A.i)
- (modules/subchannel/test/tests/problems/Lead-LBE-19pin/test_LEAD-19pin.i)
- (modules/subchannel/examples/MultiApp/fuel_assembly.i)
- (modules/subchannel/test/tests/problems/heat_transfer_correlations/XX09_SCM_SS17.i)
- (modules/subchannel/test/tests/problems/SFR/sodium-19pin/test19_implicit.i)
- (modules/subchannel/validation/Blockage/THORS/FFM-5B_low.i)
- (modules/subchannel/validation/EBR-II/XX09_SCM_TR17.i)
- (modules/subchannel/test/tests/SCMTriPower/test_with_pins.i)
- (modules/subchannel/validation/Toshiba_37_pin/toshiba_37_pin.i)
- (modules/subchannel/validation/EBR-II/XX09_SCM_TR45R.i)
- (modules/subchannel/validation/EBR-II/XX09_SCM_SS45R_corrected.i)
- (modules/subchannel/test/tests/problems/SFR/EBR-II/XX09_SS_SHRT17.i)
- (modules/subchannel/examples/duct/test.i)
- (modules/subchannel/test/tests/multiapp/sc_core.i)
- (modules/subchannel/test/tests/positions/pin_positions.i)
- (modules/subchannel/test/tests/problems/deformation/tri_pin_diameter.i)
- (modules/subchannel/validation/EBR-II/XX09_SCM_SS45R.i)
- (modules/subchannel/test/tests/ics/tri_flow_area/test.i)
- (modules/subchannel/test/tests/mesh/tri_duct/coords.i)
- (modules/subchannel/validation/ORNL_19_pin/test_ORNL_19.i)
- (modules/subchannel/test/tests/postprocessors/trisubchannelpointvalue/test.i)
- (modules/subchannel/validation/EBR-II/XX09_SCM_SS17_corrected.i)
- (modules/subchannel/test/tests/ics/tri_wetted_perimeter/test.i)
- (modules/subchannel/test/tests/problems/SFR/sodium-19pin/test19_explicit.i)
- (modules/subchannel/validation/areva_FCTF/FCTF_deformed.i)
- (modules/subchannel/validation/EBR-II/XX09_SCM_SS17.i)
- (modules/subchannel/validation/areva_FCTF/FCTF_non_deformed.i)
- (modules/subchannel/test/tests/ics/FCTFdisplacementIC/test.i)
- (modules/subchannel/test/tests/problems/Lead-LBE-19pin/test_LBE-19pin.i)
- (modules/subchannel/test/tests/ics/marvel/test.i)
(modules/subchannel/test/tests/problems/SFR/sodium-19pin/test19_monolithic.i)
T_in = 660
mass_flux_in = '${fparse 1e+6 * 300.00 / 36000.*0.5}'
P_out = 2.0e5 # Pa
[GlobalParams]
nrings = 3
n_cells = 5
flat_to_flat = 0.056
heated_length = 0.5
pitch = 0.012
[]
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
pin_diameter = 0.01
dwire = 0.002
hwire = 0.0833
spacer_z = '0'
spacer_k = '5.0'
[]
[duct]
type = SCMTriDuctMeshGenerator
input = subchannel
[]
[]
[FluidProperties]
[sodium]
type = PBSodiumFluidProperties
[]
[]
[SubChannel]
type = TriSubChannel1PhaseProblem
fp = sodium
n_blocks = 1
P_out = 2.0e5
compute_density = true
compute_viscosity = true
compute_power = true
T_tol = 1.0e-6
P_tol = 1.0e-6
implicit = true
segregated = false
duct_HTC_closure = 'gnielinski'
pin_HTC_closure = 'Dittus-Boelter'
friction_closure = 'cheng'
mixing_closure = 'cheng_todreas'
[]
[SCMClosures]
[cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[gnielinski]
type = SCMHTCGnielinski
[]
[cheng_todreas]
type = SCMMixingChengTodreas
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[]
[ICs]
[q_prime_IC]
type = SCMTriPowerIC
variable = q_prime
power = 1000.0 # W
filename = "pin_power_profile19.txt"
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = 0.01
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = sodium
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = sodium
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = sodium
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Outputs]
exodus = true
csv = true
[]
[Postprocessors]
[T1]
type = SubChannelPointValue
variable = T
index = 37
execute_on = "timestep_end"
height = 0.5
[]
[T2]
type = SubChannelPointValue
variable = T
index = 36
execute_on = "timestep_end"
height = 0.5
[]
[T3]
type = SubChannelPointValue
variable = T
index = 20
execute_on = "timestep_end"
height = 0.5
[]
[T4]
type = SubChannelPointValue
variable = T
index = 10
execute_on = "timestep_end"
height = 0.5
[]
[T5]
type = SubChannelPointValue
variable = T
index = 4
execute_on = "timestep_end"
height = 0.5
[]
[T6]
type = SubChannelPointValue
variable = T
index = 1
execute_on = "timestep_end"
height = 0.5
[]
[T7]
type = SubChannelPointValue
variable = T
index = 14
execute_on = "timestep_end"
height = 0.5
[]
[T8]
type = SubChannelPointValue
variable = T
index = 28
execute_on = "timestep_end"
height = 0.5
[]
####### Assembly pressure drop
[DP_SubchannelDelta]
type = SubChannelDelta
variable = P
execute_on = 'TIMESTEP_END'
[]
#####
[Mean_Temp]
type = SCMPlanarMean
variable = T
height = 2
[]
[Total_power]
type = ElementIntegralVariablePostprocessor
variable = q_prime
block = fuel_pins
[]
[mdot-8]
type = SubChannelPointValue
variable = mdot
index = 28
execute_on = 'TIMESTEP_END'
height = 0.5
[]
[]
[Executioner]
type = Steady
[]
(modules/combined/test/tests/subchannel_thm_coupling/subchannel.i)
# Based on M. Fontana, et al. this arbitrary subassembly is used for THM-SC coupling
T_in = 583.0 #K
flow_area = 0.0004980799633447909 #m2
mass_flux_in = '${fparse 1.0/flow_area}'
P_out = 2e5 # Pa
###################################################
# Geometric parameters
###################################################
n_cells = 25
n_rings = 3
fuel_pin_pitch = 7.26e-3
fuel_pin_diameter = 5.84e-3
wire_z_spacing = 0.3048
wire_diameter = 1.42e-3
inner_duct_in = 3.41e-2
heated_length = 1.0
###################################################
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = ${n_rings}
n_cells = ${n_cells}
flat_to_flat = ${inner_duct_in}
heated_length = ${heated_length}
pin_diameter = ${fuel_pin_diameter}
pitch = ${fuel_pin_pitch}
dwire = ${wire_diameter}
hwire = ${wire_z_spacing}
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[FluidProperties]
[Sodium]
type = PBSodiumFluidProperties
[]
[]
[SubChannel]
type = TriSubChannel1PhaseProblem
fp = Sodium
n_blocks = 1
P_out = report_pressure_outlet
compute_density = true
compute_viscosity = true
compute_power = true
P_tol = 1.0e-3
T_tol = 1.0e-3
implicit = true
segregated = false
staggered_pressure = false
verbose_multiapps = true
verbose_subchannel = false
interpolation_scheme = 'upwind'
pin_HTC_closure = 'gnielinski'
friction_closure = 'Cheng'
mixing_closure = 'Cheng_Todreas'
[]
[SCMClosures]
[Cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[gnielinski]
type = SCMHTCGnielinski
[]
[Cheng_Todreas]
type = SCMMixingChengTodreas
CT = 2.6
[]
[]
[ICs]
[S_IC]
type = SCMTriFlowAreaIC
variable = S
[]
[w_perim_IC]
type = SCMTriWettedPerimIC
variable = w_perim
[]
[q_prime_IC]
type = SCMTriPowerIC
variable = q_prime
power = 10000 #W
filename = "pin_power_profile19.txt"
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = ${fuel_pin_diameter}
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = Sodium
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = Sodium
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = Sodium
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[]
[AuxKernels]
[T_in_bc]
type = FunctorAux
functor = report_temperature_inlet
variable = T
boundary = inlet
execute_on = 'timestep_begin'
block = subchannel
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = report_mass_flux_inlet
execute_on = 'timestep_begin'
block = subchannel
[]
[]
[Outputs]
csv = true
[]
[Executioner]
type = Steady
[]
[Postprocessors]
[total_pressure_drop_SC]
type = SubChannelDelta
variable = P
execute_on = "timestep_end"
[]
[total_pressure_drop_SC_limited]
type = ParsedPostprocessor
pp_names = 'total_pressure_drop_SC'
expression = 'min(total_pressure_drop_SC, 1e6)'
execute_on = "timestep_end"
[]
[Total_power]
type = ElementIntegralVariablePostprocessor
variable = q_prime
block = fuel_pins
[]
[report_mass_flux_inlet]
type = Receiver
default = ${mass_flux_in}
[]
[report_temperature_inlet]
type = Receiver
default = ${T_in}
force_preaux = true
[]
[report_pressure_outlet]
type = Receiver
default = ${P_out}
[]
[]
################################################################################
# A multiapp that projects data to a detailed mesh
################################################################################
[MultiApps]
[viz]
type = FullSolveMultiApp
input_files = '3D.i'
execute_on = 'FINAL'
[]
[]
[Transfers]
[subchannel_transfer]
type = SCMSolutionTransfer
transfer_type = subchannel
to_multi_app = viz
variable = 'mdot SumWij P h T rho mu S'
[]
[pin_transfer]
type = SCMSolutionTransfer
transfer_type = pin
to_multi_app = viz
variable = 'Tpin q_prime Dpin'
[]
[]
(modules/subchannel/test/tests/problems/SFR/sodium-19pin/test19_monolithic.i)
T_in = 660
mass_flux_in = '${fparse 1e+6 * 300.00 / 36000.*0.5}'
P_out = 2.0e5 # Pa
[GlobalParams]
nrings = 3
n_cells = 5
flat_to_flat = 0.056
heated_length = 0.5
pitch = 0.012
[]
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
pin_diameter = 0.01
dwire = 0.002
hwire = 0.0833
spacer_z = '0'
spacer_k = '5.0'
[]
[duct]
type = SCMTriDuctMeshGenerator
input = subchannel
[]
[]
[FluidProperties]
[sodium]
type = PBSodiumFluidProperties
[]
[]
[SubChannel]
type = TriSubChannel1PhaseProblem
fp = sodium
n_blocks = 1
P_out = 2.0e5
compute_density = true
compute_viscosity = true
compute_power = true
T_tol = 1.0e-6
P_tol = 1.0e-6
implicit = true
segregated = false
duct_HTC_closure = 'gnielinski'
pin_HTC_closure = 'Dittus-Boelter'
friction_closure = 'cheng'
mixing_closure = 'cheng_todreas'
[]
[SCMClosures]
[cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[gnielinski]
type = SCMHTCGnielinski
[]
[cheng_todreas]
type = SCMMixingChengTodreas
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[]
[ICs]
[q_prime_IC]
type = SCMTriPowerIC
variable = q_prime
power = 1000.0 # W
filename = "pin_power_profile19.txt"
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = 0.01
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = sodium
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = sodium
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = sodium
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Outputs]
exodus = true
csv = true
[]
[Postprocessors]
[T1]
type = SubChannelPointValue
variable = T
index = 37
execute_on = "timestep_end"
height = 0.5
[]
[T2]
type = SubChannelPointValue
variable = T
index = 36
execute_on = "timestep_end"
height = 0.5
[]
[T3]
type = SubChannelPointValue
variable = T
index = 20
execute_on = "timestep_end"
height = 0.5
[]
[T4]
type = SubChannelPointValue
variable = T
index = 10
execute_on = "timestep_end"
height = 0.5
[]
[T5]
type = SubChannelPointValue
variable = T
index = 4
execute_on = "timestep_end"
height = 0.5
[]
[T6]
type = SubChannelPointValue
variable = T
index = 1
execute_on = "timestep_end"
height = 0.5
[]
[T7]
type = SubChannelPointValue
variable = T
index = 14
execute_on = "timestep_end"
height = 0.5
[]
[T8]
type = SubChannelPointValue
variable = T
index = 28
execute_on = "timestep_end"
height = 0.5
[]
####### Assembly pressure drop
[DP_SubchannelDelta]
type = SubChannelDelta
variable = P
execute_on = 'TIMESTEP_END'
[]
#####
[Mean_Temp]
type = SCMPlanarMean
variable = T
height = 2
[]
[Total_power]
type = ElementIntegralVariablePostprocessor
variable = q_prime
block = fuel_pins
[]
[mdot-8]
type = SubChannelPointValue
variable = mdot
index = 28
execute_on = 'TIMESTEP_END'
height = 0.5
[]
[]
[Executioner]
type = Steady
[]
(modules/subchannel/test/tests/mesh/tri_assembly/tricoords3.i)
[TriSubChannelMesh]
[sub_channel]
type = SCMTriAssemblyMeshGenerator
nrings = 3
n_cells = 2
flat_to_flat = 0.60
heated_length = 1.0
pin_diameter = 0.1
pitch = 0.13
dwire = 0.03
hwire = 0.3
spacer_k = '0.5'
spacer_z = '0'
[]
[]
(modules/subchannel/validation/Blockage/THORS/FFM-5B_high.i)
################################################################################
## THORS bundle 5B partial edge blockage benchmark ##
## SCM simulation, high flow case ##
## POC : Vasileios Kyriakopoulos, vasileios.kyriakopoulos@inl.gov ##
################################################################################
# Details on the experimental facility modeled can be found at:
# Han, J. T. "Blockages in LMFBR fuel assemblies: A review of experimental and theoretical studies." (1977).
# This input file models a block next to the duct of the of the assembly
# 102 mm above the start of the heated section.
# Boundary conditions
T_in = 596.75 # K, high flow case
A12 = 1.00423e3
A13 = -0.21390
A14 = -1.1046e-5
rho = '${fparse A12 + A13 * T_in + A14 * T_in * T_in}'
inlet_vel = 6.93 #m/sec, high flow case
mass_flux_in = '${fparse rho * inlet_vel}'
P_out = 2.0e5 # Pa
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = 3
n_cells = 50
flat_to_flat = 0.0324290
heated_length = 0.4572
unheated_length_entry = 0.4064
unheated_length_exit = 0.1524
pin_diameter = 0.005842
pitch = 7.2644e-3
dwire = 0.0014224
hwire = 0.3048
z_blockage = '0.49 0.52'
index_blockage = '29 31 30 32 34 33 35 15 16 8 17 18 9 19'
reduction_blockage = '0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08'
k_blockage = '4 4 4 4 4 4 4 4 4 4 4 4 4 4 '
[]
[]
[FluidProperties]
[sodium]
type = PBSodiumFluidProperties
[]
[]
[SubChannel]
type = TriSubChannel1PhaseProblem
fp = sodium
n_blocks = 1
P_out = 2.0e5
compute_density = true
compute_viscosity = true
compute_power = true
P_tol = 1.0e-4
T_tol = 1.0e-4
implicit = true
segregated = false
verbose_subchannel = true
interpolation_scheme = exponential
pin_HTC_closure = 'Dittus-Boelter'
# friction model
friction_closure = 'cheng'
full_output = true
mixing_closure = 'cheng_todreas'
[]
[SCMClosures]
[cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[cheng_todreas]
type = SCMMixingChengTodreas
CT = 2.0
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[]
[ICs]
[q_prime_IC]
type = SCMTriPowerIC
variable = q_prime
power = 145000 #W, high flow case
filename = "pin_power_profile_19.txt"
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = 0.005842
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[DP_ic]
type = ConstantIC
variable = DP
value = 0.0
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = sodium
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = sodium
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = sodium
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Outputs]
exodus = true
csv = true
[]
[Postprocessors]
[1]
type = SubChannelPointValue
variable = T
index = 34
execute_on = 'initial timestep_end'
height = 0.94
[]
[2]
type = SubChannelPointValue
variable = T
index = 33
execute_on = 'initial timestep_end'
height = 0.94
[]
[3]
type = SubChannelPointValue
variable = T
index = 18
execute_on = 'initial timestep_end'
height = 0.94
[]
[4]
type = SubChannelPointValue
variable = T
index = 9
execute_on = 'initial timestep_end'
height = 0.94
[]
[5]
type = SubChannelPointValue
variable = T
index = 3
execute_on = 'initial timestep_end'
height = 0.94
[]
[6]
type = SubChannelPointValue
variable = T
index = 0
execute_on = 'initial timestep_end'
height = 0.94
[]
[7]
type = SubChannelPointValue
variable = T
index = 12
execute_on = 'initial timestep_end'
height = 0.94
[]
[8]
type = SubChannelPointValue
variable = T
index = 25
execute_on = 'initial timestep_end'
height = 0.94
[]
[]
[Executioner]
type = Steady
[]
################################################################################
# A multiapp that projects data to a detailed mesh
################################################################################
[MultiApps]
[viz]
type = FullSolveMultiApp
input_files = "FFM-5B_viz.i"
execute_on = "timestep_end"
[]
[]
[Transfers]
[xfer_subchannel]
type = SCMSolutionTransfer
to_multi_app = viz
transfer_type = subchannel
variable = 'mdot SumWij P DP h T rho mu S displacement w_perim'
[]
[xfer_q_prime]
type = SCMSolutionTransfer
to_multi_app = viz
transfer_type = pin
variable = q_prime
[]
[]
(modules/subchannel/validation/Blockage/THORS/FFM-3A.i)
################################################################################
## THORS bundle 3A central blockage benchmark ##
## SCM simulation ##
## POC : Vasileios Kyriakopoulos, vasileios.kyriakopoulos@inl.gov ##
################################################################################
# Details on the experimental facility modeled can be found at:
# Han, J. T. "Blockages in LMFBR fuel assemblies: A review of experimental and theoretical studies." (1977).
# The affected subchannels get an area reduction and a form loss coefficient
T_in = 714.261
A12 = 1.00423e3
A13 = -0.21390
A14 = -1.1046e-5
rho = '${fparse A12 + A13 * T_in + A14 * T_in * T_in}'
Total_surface_area = 0.000452826 #m2
Blocked_surface_area = 0.0 #m2
Flow_area = '${fparse Total_surface_area - Blocked_surface_area}'
vol_flow = 3.4E-03 #m3/s
mass_flux_in = '${fparse rho * vol_flow / Flow_area}'
P_out = 2.0e5 # Pa
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = 3
n_cells = 36
flat_to_flat = 0.0338514
heated_length = 0.5334
unheated_length_entry = 0.3048
unheated_length_exit = 0.0762
pin_diameter = 0.005842
pitch = 7.2644e-3
dwire = 0.0014224
hwire = 0.3048
spacer_z = '0.0'
spacer_k = '0.0'
z_blockage = '0.6858 0.69215'
index_blockage = '0 1 2 3 4 5'
reduction_blockage = '0.08 0.08 0.08 0.08 0.08 0.08'
k_blockage = '2.0 2.0 2.0 2.0 2.0 2.0'
[]
[]
[FluidProperties]
[sodium]
type = PBSodiumFluidProperties
[]
[]
[SubChannel]
type = TriSubChannel1PhaseProblem
fp = sodium
n_blocks = 1
P_out = 2.0e5
compute_density = true
compute_viscosity = true
compute_power = true
P_tol = 1.0e-4
T_tol = 1.0e-4
implicit = true
segregated = false
verbose_subchannel = true
interpolation_scheme = exponential
pin_HTC_closure = 'Dittus-Boelter'
# friction model
friction_closure = 'cheng'
full_output = true
mixing_closure = 'cheng_todreas'
[]
[SCMClosures]
[cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[cheng_todreas]
type = SCMMixingChengTodreas
CT = 2.0
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[]
[ICs]
[q_prime_IC]
type = SCMTriPowerIC
variable = q_prime
power = 332500.0 #W
filename = "pin_power_profile_19.txt"
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = 0.005842
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[DP_ic]
type = ConstantIC
variable = DP
value = 0.0
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = sodium
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = sodium
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = sodium
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Outputs]
exodus = true
csv = true
[]
[Executioner]
type = Steady
[]
[Postprocessors]
[1]
type = SubChannelPointValue
variable = T
index = 37
execute_on = 'TIMESTEP_END'
height = 0.9144
[]
[2]
type = SubChannelPointValue
variable = T
index = 36
execute_on = 'TIMESTEP_END'
height = 0.9144
[]
[3]
type = SubChannelPointValue
variable = T
index = 20
execute_on = 'TIMESTEP_END'
height = 0.9144
[]
[4]
type = SubChannelPointValue
variable = T
index = 10
execute_on = 'TIMESTEP_END'
height = 0.9144
[]
[5]
type = SubChannelPointValue
variable = T
index = 4
execute_on = 'TIMESTEP_END'
height = 0.9144
[]
[6]
type = SubChannelPointValue
variable = T
index = 1
execute_on = 'TIMESTEP_END'
height = 0.9144
[]
[7]
type = SubChannelPointValue
variable = T
index = 14
execute_on = 'TIMESTEP_END'
height = 0.9144
[]
[8]
type = SubChannelPointValue
variable = T
index = 28
execute_on = 'TIMESTEP_END'
height = 0.9144
[]
[]
(modules/subchannel/test/tests/problems/Lead-LBE-19pin/test_LEAD-19pin.i)
T_in = 673.15
flow_area = 0.00128171 #m2
rho_in = 10453.21705
# [10 m^3/hour] turns into kg/m^2-sec
mass_flux_in = '${fparse 10*rho_in/3600/flow_area}'
P_out = 1.0e5 # Pa
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = 3
n_cells = 50
flat_to_flat = 0.05319936
heated_length = 0.87
unheated_length_entry = 0.0
unheated_length_exit = 0.402
pin_diameter = 8.2e-3
pitch = 0.01148
dwire = 0.0
hwire = 0.0
spacer_z = '0.177 0.547 0.870'
spacer_k = '1.1719 1.1719 1.1719'
[]
[]
[FluidProperties]
[LEAD]
type = LeadFluidProperties
[]
[]
[SubChannel]
type = TriSubChannel1PhaseProblem
fp = LEAD
n_blocks = 1
P_out = 1.0e5
compute_density = true
compute_viscosity = true
compute_power = true
P_tol = 1.0e-4
T_tol = 1.0e-4
implicit = true
segregated = false
staggered_pressure = false
verbose_multiapps = true
verbose_subchannel = true
interpolation_scheme = upwind
pin_HTC_closure = 'Dittus-Boelter'
# friction model
friction_closure = 'cheng'
full_output = true
mixing_closure = 'Kim_and_Chung'
[]
[SCMClosures]
[cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[Kim_and_Chung]
type = SCMMixingKimAndChung
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[]
[ICs]
[q_prime_IC]
type = SCMTriPowerIC
variable = q_prime
power = '${fparse 250000}'
filename = "pin_power_profile19.txt"
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = 8.2e-3
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[DP_ic]
type = ConstantIC
variable = DP
value = 0.0
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = LEAD
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = LEAD
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = LEAD
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Outputs]
csv = true
[]
[Postprocessors]
[T1]
type = SubChannelPointValue
variable = T
index = 37
execute_on = "timestep_end"
height = 0.87
[]
[T2]
type = SubChannelPointValue
variable = T
index = 36
execute_on = "timestep_end"
height = 0.87
[]
[T3]
type = SubChannelPointValue
variable = T
index = 20
execute_on = "timestep_end"
height = 0.87
[]
[T4]
type = SubChannelPointValue
variable = T
index = 10
execute_on = "timestep_end"
height = 0.87
[]
[T5]
type = SubChannelPointValue
variable = T
index = 4
execute_on = "timestep_end"
height = 0.87
[]
[T6]
type = SubChannelPointValue
variable = T
index = 1
execute_on = "timestep_end"
height = 0.87
[]
[T7]
type = SubChannelPointValue
variable = T
index = 14
execute_on = "timestep_end"
height = 0.87
[]
[T8]
type = SubChannelPointValue
variable = T
index = 28
execute_on = "timestep_end"
height = 0.87
[]
####### Assembly pressure drop
[DP_SubchannelDelta]
type = SubChannelDelta
variable = P
execute_on = 'TIMESTEP_END'
[]
#####
[Mean_Temp]
type = SCMPlanarMean
variable = T
height = 2
[]
[Total_power]
type = ElementIntegralVariablePostprocessor
variable = q_prime
block = fuel_pins
[]
[]
[Executioner]
type = Steady
[]
# ################################################################################
# # A multiapp that projects data to a detailed mesh
# ################################################################################
# [MultiApps]
# [viz]
# type = FullSolveMultiApp
# input_files = "3d_LBE_19.i"
# execute_on = "timestep_end"
# max_procs_per_app = 1
# []
# []
# [Transfers]
# [xfer]
# type = SCMSolutionTransfer
# to_multi_app = viz
# variable = 'mdot SumWij P DP h T rho mu q_prime S'
# []
# []
(modules/subchannel/examples/MultiApp/fuel_assembly.i)
###################################################
# Thermal-hydraulics parameters
###################################################
T_in = 628.15 # K
P_out = 758423 # Pa
reactor_power = 250e6 #WTh
fuel_assemblies_per_power_unit = '${fparse 2.5}'
fuel_pins_per_assembly = 217
pin_power = '${fparse reactor_power/(fuel_assemblies_per_power_unit*fuel_pins_per_assembly)}' # Approx.
mass_flux_in = '${fparse 2786}' # kg/(m2.s)
###################################################
# Geometric parameters
###################################################
n_cells = 50
# units are cm - do not forget to convert to meter
scale_factor = 0.01
fuel_element_pitch = '${fparse 14.598*scale_factor}'
inter_assembly_gap = '${fparse 0.4*scale_factor}'
duct_thickness = '${fparse 0.3*scale_factor}'
fuel_pin_pitch = '${fparse 0.904*scale_factor}'
fuel_pin_diameter = '${fparse 0.8*scale_factor}'
wire_z_spacing = '${fparse 20.32*scale_factor}'
wire_diameter = '${fparse 0.103*scale_factor}'
n_rings = 9
# Reduced height for convenience
length_entry_fuel = '${fparse 20*scale_factor}'
length_heated_fuel = '${fparse 40*scale_factor}'
length_outlet_fuel = '${fparse 20*scale_factor}'
# height = '${fparse length_entry_fuel+length_heated_fuel+length_outlet_fuel}'
orifice_plate_height = '${fparse 5*scale_factor}'
duct_outside = '${fparse fuel_element_pitch - inter_assembly_gap}'
duct_inside = '${fparse duct_outside - 2 * duct_thickness}'
###################################################
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = '${fparse n_rings}'
n_cells = ${n_cells}
flat_to_flat = '${fparse duct_inside}'
unheated_length_entry = '${fparse length_entry_fuel}'
heated_length = '${fparse length_heated_fuel}'
unheated_length_exit = '${fparse length_outlet_fuel}'
pin_diameter = '${fparse fuel_pin_diameter}'
pitch = '${fparse fuel_pin_pitch}'
dwire = '${fparse wire_diameter}'
hwire = '${fparse wire_z_spacing}'
spacer_z = '${fparse orifice_plate_height} ${fparse length_entry_fuel}'
spacer_k = '0.5 0.5'
[]
[duct]
type = SCMTriDuctMeshGenerator
input = subchannel
nrings = '${fparse n_rings}'
n_cells = ${n_cells}
flat_to_flat = '${fparse duct_inside}'
unheated_length_entry = '${fparse length_entry_fuel}'
heated_length = '${fparse length_heated_fuel}'
unheated_length_exit = '${fparse length_outlet_fuel}'
pitch = '${fparse fuel_pin_pitch}'
[]
[]
[FluidProperties]
[sodium]
type = PBSodiumFluidProperties
[]
[]
[SubChannel]
type = TriSubChannel1PhaseProblem
fp = sodium
P_out = ${P_out}
# Solver parameters
n_blocks = 10
implicit = false
segregated = true
staggered_pressure = false
# Tolerances
P_tol = 1.0e-4
T_tol = 1.0e-8
# Heat Transfer Correlation
pin_HTC_closure = 'gnielinski'
duct_HTC_closure = 'gnielinski'
# Friction Correlation
friction_closure = 'Cheng'
# Turbulent mixing Correlation
mixing_closure = 'cheng_todreas'
# Output
compute_density = true
compute_viscosity = true
compute_power = true
verbose_multiapps = true
verbose_subchannel = false
full_output = true
[]
[SCMClosures]
[Cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[gnielinski]
type = SCMHTCGnielinski
[]
[cheng_todreas]
type = SCMMixingChengTodreas
[]
[]
[ICs]
# Geometry
# Operating conditions
[q_prime_IC]
type = SCMTriPowerIC
variable = q_prime
power = ${pin_power} # W
filename = "pin_power_profile217.txt"
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[DP_ic]
type = ConstantIC
variable = DP
value = 0.0
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[T_duct_ic]
type = ConstantIC
variable = Tduct
value = ${T_in}
[]
# Fluid properties
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = sodium
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = sodium
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = sodium
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
block = subchannel
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
block = subchannel
[]
[]
[Outputs]
exodus = true
csv = true
[]
[Executioner]
type = Transient
num_steps = 1
[]
################################################################################
# A multiapp that projects data to a detailed mesh
################################################################################
[MultiApps]
[viz]
type = TransientMultiApp
input_files = "3d.i"
execute_on = "final"
[]
[]
[Transfers]
[subchannel_transfer]
type = SCMSolutionTransfer
to_multi_app = viz
variable = 'mdot SumWij P DP h T rho mu S'
[]
[pin_transfer]
type = SCMSolutionTransfer
transfer_type = pin
to_multi_app = viz
variable = 'Tpin q_prime'
[]
[]
(modules/subchannel/test/tests/problems/heat_transfer_correlations/XX09_SCM_SS17.i)
# Following Benchmark Specifications and Data Requirements for EBR-II Shutdown Heat Removal Tests SHRT-17 and SHRT-45R
# Available at: https://publications.anl.gov/anlpubs/2012/06/73647.pdf
###################################################
# Steady state subchannel calcultion
# Thermal-hydraulics parameters
###################################################
T_in = 624.70556 #Kelvin
Total_Surface_Area = 0.000854322 #m2
Mass_In = 2.45 #kg/sec
mass_flux_in = '${fparse Mass_In / Total_Surface_Area}' #kg/m2
P_out = 2.0e5 #Pa
Power_initial = 486200 #W (Page 26,35 of ANL document)
###################################################
# Geometric parameters
###################################################
scale_factor = 0.01
fuel_pin_pitch = '${fparse 0.5664*scale_factor}'
fuel_pin_diameter = '${fparse 0.4419*scale_factor}'
wire_z_spacing = '${fparse 15.24*scale_factor}'
wire_diameter = '${fparse 0.1244*scale_factor}'
inner_duct_in = '${fparse 4.64*scale_factor}'
n_rings = 5
heated_length = '${fparse 34.3*scale_factor}'
unheated_length_exit = '${fparse 26.9*scale_factor}'
###################################################
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = ${n_rings}
n_cells = 20
flat_to_flat = ${inner_duct_in}
unheated_length_exit = ${unheated_length_exit}
heated_length = ${heated_length}
pin_diameter = ${fuel_pin_diameter}
pitch = ${fuel_pin_pitch}
dwire = ${wire_diameter}
hwire = ${wire_z_spacing}
[]
[duct]
type = SCMTriDuctMeshGenerator
input = subchannel
nrings = ${n_rings}
n_cells = 20
flat_to_flat = ${inner_duct_in}
unheated_length_exit = ${unheated_length_exit}
heated_length = ${heated_length}
pitch = ${fuel_pin_pitch}
[]
[]
[Functions]
[axial_heat_rate]
type = ParsedFunction
expression = '(pi/2)*sin(pi*z/L)*exp(-alpha*z)/(1.0/alpha*(1.0 - exp(-alpha*L)))*L'
symbol_names = 'L alpha'
symbol_values = '${heated_length} 1.8012'
[]
[]
[FluidProperties]
[sodium]
type = PBSodiumFluidProperties
[]
[]
[SubChannel]
type = TriSubChannel1PhaseProblem
fp = sodium
n_blocks = 1
P_out = ${P_out}
compute_density = true
compute_viscosity = true
compute_power = true
P_tol = 1.0e-4
T_tol = 1.0e-5
implicit = true
segregated = false
interpolation_scheme = 'upwind'
verbose_subchannel = true
friction_closure = 'cheng'
full_output = true
mixing_closure = 'cheng_todreas'
[]
[SCMClosures]
[cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[dittus-boelter]
type = SCMHTCDittusBoelter
[]
[gnielinski]
type = SCMHTCGnielinski
[]
[kazimi-carelli]
type = SCMHTCKazimiCarelli
[]
[schad-modified]
type = SCMHTCSchadModified
[]
[graber-rieger]
type = SCMHTCGraberRieger
[]
[borishanskii]
type = SCMHTCBorishanskii
[]
[cheng_todreas]
type = SCMMixingChengTodreas
CT = 2.6
[]
[]
# Keep T manually declared and unrestricted so this legacy regression continues
# to compare against the pre-scoped AuxVariable golds. The automatic
# SubChannelAddVariablesAction path remains block-restricted for normal inputs.
[AuxVariables]
[T]
[]
[]
[ICs]
[q_prime_IC]
type = SCMTriPowerIC
variable = q_prime
power = ${Power_initial}
filename = "pin_power_profile61_uniform.txt"
axial_heat_rate = axial_heat_rate
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[DP_ic]
type = ConstantIC
variable = DP
value = 0.0
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = sodium
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = sodium
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = sodium
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
block = subchannel
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Outputs]
csv = true
[]
[Postprocessors]
### Central pin inlet temperature
[Pin_Temp_0_Inlet]
type = SCMPinSurfaceTemperature
index = 0
height = ${fparse heated_length*0.01}
[]
### Central pin center temperature
[Pin_Temp_1_Center]
type = SCMPinSurfaceTemperature
index = 0
height = ${fparse heated_length*0.5}
[]
### Central pin outlet temperature
[Pin_Temp_2_Outlet]
type = SCMPinSurfaceTemperature
index = 0
height = ${fparse heated_length*0.99}
[]
[]
[Executioner]
type = Steady
[]
(modules/subchannel/test/tests/problems/SFR/sodium-19pin/test19_implicit.i)
T_in = 660
mass_flux_in = '${fparse 1e+6 * 300.00 / 36000.*0.5}'
P_out = 2.0e5 # Pa
[GlobalParams]
nrings = 3
n_cells = 5
flat_to_flat = 0.056
heated_length = 0.5
pitch = 0.012
[]
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
pin_diameter = 0.01
dwire = 0.002
hwire = 0.0833
spacer_z = '0'
spacer_k = '5.0'
[]
[duct]
type = SCMTriDuctMeshGenerator
input = subchannel
[]
[]
[FluidProperties]
[sodium]
type = PBSodiumFluidProperties
[]
[]
[SubChannel]
type = TriSubChannel1PhaseProblem
fp = sodium
n_blocks = 1
P_out = 2.0e5
compute_density = true
compute_viscosity = true
compute_power = true
implicit = true
segregated = true
verbose_subchannel = true
duct_HTC_closure = 'gnielinski'
pin_HTC_closure = 'Dittus-Boelter'
friction_closure = 'cheng'
full_output = true
mixing_closure = 'cheng_todreas'
[]
[SCMClosures]
[cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[gnielinski]
type = SCMHTCGnielinski
[]
[cheng_todreas]
type = SCMMixingChengTodreas
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[]
[ICs]
[q_prime_IC]
type = SCMTriPowerIC
variable = q_prime
power = 1000.0 # W
filename = "pin_power_profile19.txt"
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = 0.01
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[duct_heat_flux_ic]
type = ConstantIC
variable = duct_heat_flux #W/m2
value = 1000.0
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[DP_ic]
type = ConstantIC
variable = DP
value = 0.0
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = sodium
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = sodium
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = sodium
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Outputs]
exodus = true
csv = true
[]
[Postprocessors]
[T1]
type = SubChannelPointValue
variable = T
index = 37
execute_on = "timestep_end"
height = 0.5
[]
[T2]
type = SubChannelPointValue
variable = T
index = 36
execute_on = "timestep_end"
height = 0.5
[]
[T3]
type = SubChannelPointValue
variable = T
index = 20
execute_on = "timestep_end"
height = 0.5
[]
[T4]
type = SubChannelPointValue
variable = T
index = 10
execute_on = "timestep_end"
height = 0.5
[]
[T5]
type = SubChannelPointValue
variable = T
index = 4
execute_on = "timestep_end"
height = 0.5
[]
[T6]
type = SubChannelPointValue
variable = T
index = 1
execute_on = "timestep_end"
height = 0.5
[]
[T7]
type = SubChannelPointValue
variable = T
index = 14
execute_on = "timestep_end"
height = 0.5
[]
[T8]
type = SubChannelPointValue
variable = T
index = 28
execute_on = "timestep_end"
height = 0.5
[]
####### Assembly pressure drop
[DP_SubchannelDelta]
type = SubChannelDelta
variable = P
execute_on = 'TIMESTEP_END'
[]
#####
[Mean_Temp]
type = SCMPlanarMean
variable = T
height = 2
[]
[mdot-8]
type = SubChannelPointValue
variable = mdot
index = 28
execute_on = 'TIMESTEP_END'
height = 0.5
[]
[Total_power]
type = ElementIntegralVariablePostprocessor
variable = q_prime
block = fuel_pins
[]
[Total_power_SCMDuctPowerPostprocessor]
type = SCMDuctHeatRatePostprocessor
[]
[Total_power_SCMTHPowerPostprocessor]
type = SCMTHPowerPostprocessor
[]
[]
[Executioner]
type = Steady
[]
(modules/subchannel/validation/Blockage/THORS/FFM-5B_low.i)
################################################################################
## THORS bundle 5B partial edge blockage benchmark ##
## SCM simulation, low flow casenn ##
## POC : Vasileios Kyriakopoulos, vasileios.kyriakopoulos@inl.gov ##
################################################################################
# Details on the experimental facility modeled can be found at:
# Han, J. T. "Blockages in LMFBR fuel assemblies: A review of experimental and theoretical studies." (1977).
# This input file models a block next to the duct of the of the assembly
# 102 mm above the start of the heated section.
# Boundary conditions
T_in = 541.55 #K, low flow case
A12 = 1.00423e3
A13 = -0.21390
A14 = -1.1046e-5
rho = '${fparse A12 + A13 * T_in + A14 * T_in * T_in}'
inlet_vel = 0.48 #m/sec, low flow case
mass_flux_in = '${fparse rho * inlet_vel}'
P_out = 2.0e5 # Pa
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = 3
n_cells = 50
flat_to_flat = 0.0324290
heated_length = 0.4572
unheated_length_entry = 0.4064
unheated_length_exit = 0.1524
pin_diameter = 0.005842
pitch = 7.2644e-3
dwire = 0.0014224
hwire = 0.3048
z_blockage = '0.49 0.52'
index_blockage = '29 31 30 32 34 33 35 15 16 8 17 18 9 19'
reduction_blockage = '0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08'
k_blockage = '4 4 4 4 4 4 4 4 4 4 4 4 4 4 '
[]
[]
[FluidProperties]
[sodium]
type = PBSodiumFluidProperties
[]
[]
[SubChannel]
type = TriSubChannel1PhaseProblem
fp = sodium
n_blocks = 1
P_out = 2.0e5
compute_density = true
compute_viscosity = true
compute_power = true
P_tol = 1.0e-4
T_tol = 1.0e-4
implicit = true
segregated = false
verbose_subchannel = true
interpolation_scheme = exponential
pin_HTC_closure = 'Dittus-Boelter'
# friction model
friction_closure = 'cheng'
full_output = true
mixing_closure = 'cheng_todreas'
[]
[SCMClosures]
[cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[cheng_todreas]
type = SCMMixingChengTodreas
CT = 2.0
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[]
[ICs]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[DP_ic]
type = ConstantIC
variable = DP
value = 0.0
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = 0.005842
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = sodium
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = sodium
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = sodium
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[q_prime_Aux]
type = SCMTriPowerAux
variable = q_prime
power = 52800 #W, low flow case
filename = "pin_power_profile_19.txt"
execute_on = 'initial timestep_begin'
[]
[]
[Outputs]
exodus = true
csv = true
[]
[Postprocessors]
[1]
type = SubChannelPointValue
variable = T
index = 34
execute_on = 'initial timestep_end'
height = 0.94
[]
[2]
type = SubChannelPointValue
variable = T
index = 33
execute_on = 'initial timestep_end'
height = 0.94
[]
[3]
type = SubChannelPointValue
variable = T
index = 18
execute_on = 'initial timestep_end'
height = 0.94
[]
[4]
type = SubChannelPointValue
variable = T
index = 9
execute_on = 'initial timestep_end'
height = 0.94
[]
[5]
type = SubChannelPointValue
variable = T
index = 3
execute_on = 'initial timestep_end'
height = 0.94
[]
[6]
type = SubChannelPointValue
variable = T
index = 0
execute_on = 'initial timestep_end'
height = 0.94
[]
[7]
type = SubChannelPointValue
variable = T
index = 12
execute_on = 'initial timestep_end'
height = 0.94
[]
[8]
type = SubChannelPointValue
variable = T
index = 25
execute_on = 'initial timestep_end'
height = 0.94
[]
[]
[Executioner]
type = Steady
[]
################################################################################
# A multiapp that projects data to a detailed mesh
################################################################################
[MultiApps]
[viz]
type = FullSolveMultiApp
input_files = "FFM-5B_viz.i"
execute_on = "timestep_end"
[]
[]
[Transfers]
[xfer_subchannel]
type = SCMSolutionTransfer
to_multi_app = viz
transfer_type = subchannel
variable = 'mdot SumWij P DP h T rho mu S displacement w_perim'
[]
[xfer_q_prime]
type = SCMSolutionTransfer
to_multi_app = viz
transfer_type = pin
variable = q_prime
[]
[]
(modules/subchannel/validation/EBR-II/XX09_SCM_TR17.i)
# Following Benchmark Specifications and Data Requirements for EBR-II Shutdown Heat Removal Tests SHRT-17 and SHRT-45R
# Available at: https://publications.anl.gov/anlpubs/2012/06/73647.pdf
# Transient subchannel calculation
###################################################
# Thermal-hydraulics parameters
###################################################
T_in = 624.7 #Kelvin
Total_Surface_Area = 0.000854322 #m3
mass_flux_in = '${fparse 2.45 / Total_Surface_Area}'
P_out = 2.0e5
Power_initial = 486200 #W (Page 26,35 of ANL document)
###################################################
# Geometric parameters
###################################################
scale_factor = 0.01
fuel_pin_pitch = '${fparse 0.5664*scale_factor}'
fuel_pin_diameter = '${fparse 0.4419*scale_factor}'
wire_z_spacing = '${fparse 15.24*scale_factor}'
wire_diameter = '${fparse 0.1244*scale_factor}'
inner_duct_in = '${fparse 4.64*scale_factor}'
n_rings = 5
heated_length = '${fparse 34.3*scale_factor}'
unheated_length_exit = '${fparse 26.9*scale_factor}'
###################################################
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = ${n_rings}
n_cells = 50
flat_to_flat = ${inner_duct_in}
unheated_length_exit = ${unheated_length_exit}
heated_length = ${heated_length}
pin_diameter = ${fuel_pin_diameter}
pitch = ${fuel_pin_pitch}
dwire = ${wire_diameter}
hwire = ${wire_z_spacing}
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[FluidProperties]
[sodium]
type = PBSodiumFluidProperties
[]
[]
[AuxVariables]
[q_prime_init]
block = fuel_pins
[]
[power_history_field]
block = fuel_pins
[]
[q_prime]
block = fuel_pins
[]
[]
[SubChannel]
type = TriSubChannel1PhaseProblem
fp = sodium
n_blocks = 1
P_out = ${P_out}
compute_density = true
compute_viscosity = true
compute_power = true
P_tol = 1.0e-4
T_tol = 1.0e-4
implicit = true
segregated = false
interpolation_scheme = 'upwind'
pin_HTC_closure = 'gnielinski'
friction_closure = 'cheng'
full_output = true
mixing_closure = 'cheng_todreas'
[]
[SCMClosures]
[cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[gnielinski]
type = SCMHTCGnielinski
[]
[cheng_todreas]
type = SCMMixingChengTodreas
CT = 2.6
[]
[]
[ICs]
[q_prime_IC]
type = SCMTriPowerIC
variable = q_prime_init
power = ${Power_initial}
filename = "pin_power_profile61_uniform.txt"
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[DP_ic]
type = ConstantIC
variable = DP
value = 0.0
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = sodium
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = sodium
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = sodium
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[]
[Functions]
[power_func]
type = PiecewiseLinear
data_file = 'power_history_SHRT17.csv'
format = "columns"
scale_factor = 1.0
[]
[mass_flux_in]
type = PiecewiseLinear
data_file = 'massflow_SHRT17.csv'
format = "columns"
scale_factor = '${fparse mass_flux_in / 2.45}'
[]
[time_step_limiting]
type = PiecewiseLinear
xy_data = '0.1 0.1
10.0 10.0'
[]
[]
[Controls]
[mass_flux_ctrl]
type = RealFunctionControl
parameter = 'Postprocessors/mass_flux_PP/value'
function = 'mass_flux_in'
execute_on = 'initial timestep_begin'
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
block = subchannel
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = mass_flux_PP
execute_on = 'timestep_begin'
[]
[populate_power_history]
type = FunctionAux
variable = power_history_field
function = 'power_func'
execute_on = 'INITIAL TIMESTEP_BEGIN'
[]
[change_q_prime]
type = ParsedAux
variable = q_prime
coupled_variables = 'q_prime_init power_history_field'
expression = 'q_prime_init*power_history_field'
execute_on = 'INITIAL TIMESTEP_BEGIN'
[]
[]
[Outputs]
csv = true
[]
[Postprocessors]
[report_pressure_outlet]
type = Receiver
default = ${P_out}
[]
[TTC-31]
type = SubChannelPointValue
variable = T
index = 0
execute_on = 'initial timestep_end'
height = 0.322
[]
[post_func]
type = ElementIntegralVariablePostprocessor
block = fuel_pins
variable = q_prime
execute_on = 'INITIAL TIMESTEP_BEGIN'
[]
[mass_flux_PP]
type = ConstantPostprocessor
value = ${mass_flux_in}
[]
[mass_flow_PP]
type = ParsedPostprocessor
expression = '${Total_Surface_Area} * mass_flux_PP'
pp_names = 'mass_flux_PP'
[]
[]
[Executioner]
type = Transient
start_time = -1.0
end_time = 900.0
[TimeStepper]
type = IterationAdaptiveDT
dt = 0.1
iteration_window = 5
optimal_iterations = 6
growth_factor = 1.1
cutback_factor = 0.8
timestep_limiting_function = 'time_step_limiting'
[]
dtmax = 20
[]
################################################################################
# A multiapp that projects data to a detailed mesh
################################################################################
[MultiApps]
[viz]
type = TransientMultiApp
input_files = '3d_SCM_TR.i'
execute_on = 'INITIAL TIMESTEP_END'
catch_up = true
[]
[]
[Transfers]
[subchannel_transfer]
type = SCMSolutionTransfer
to_multi_app = viz
variable = 'mdot SumWij P DP h T rho mu S'
[]
[pin_transfer]
type = SCMSolutionTransfer
transfer_type = pin
to_multi_app = viz
variable = 'Tpin q_prime'
[]
[]
(modules/subchannel/test/tests/SCMTriPower/test_with_pins.i)
T_in = 588.5
flow_area = 0.0004980799633447909 #m2
mass_flux_in = '${fparse 55*3.78541/10/60/flow_area}'
P_out = 2.0e5 # Pa
length = 0.5
num_cells = 40
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = 3
n_cells = ${num_cells}
flat_to_flat = 3.41e-2
heated_length = 0.5
unheated_length_entry = 0.4
unheated_length_exit = 0.1
pin_diameter = 5.84e-3
pitch = 7.26e-3
dwire = 1.42e-3
hwire = 0.3048
[]
[]
[AuxVariables]
[q_prime_aux]
block = fuel_pins
[]
[]
[Functions]
[axial_heat_rate]
type = ParsedFunction
expression = '(pi/2)*sin(pi*z/L)'
symbol_names = 'L'
symbol_values = '${length}'
[]
[]
[FluidProperties]
[sodium]
type = PBSodiumFluidProperties
[]
[]
[SubChannel]
type = TriSubChannel1PhaseProblem
fp = sodium
n_blocks = 1
P_out = 2.0e5
compute_density = true
compute_viscosity = true
compute_power = true
implicit = true
segregated = false
verbose_subchannel = true
interpolation_scheme = upwind
pin_HTC_closure = 'gnielinski'
friction_closure = 'cheng'
full_output = true
mixing_closure = 'cheng_todreas'
[]
[SCMClosures]
[cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[gnielinski]
type = SCMHTCGnielinski
[]
[cheng_todreas]
type = SCMMixingChengTodreas
CT = 2.6
[]
[]
[ICs]
[q_prime_ic]
type = SCMTriPowerIC
variable = q_prime
power = 20000 # W
filename = "pin_power_profile.txt"
axial_heat_rate = axial_heat_rate
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[DP_ic]
type = ConstantIC
variable = DP
value = 0.0
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = sodium
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = sodium
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = sodium
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[q_prime_AUX]
type = SCMTriPowerAux
variable = q_prime_aux
power = 20000 # W
filename = "pin_power_profile.txt" #type in name of file that describes radial power profile
axial_heat_rate = axial_heat_rate
execute_on = 'initial'
[]
[]
[Executioner]
type = Steady
[]
[Postprocessors]
[Total_power_IC_defaultPP]
type = ElementIntegralVariablePostprocessor
variable = q_prime
block = fuel_pins
[]
[Total_power_Aux_defaultPP]
type = ElementIntegralVariablePostprocessor
variable = q_prime_aux
block = fuel_pins
[]
[Total_power_SCMPinPowerPostprocessor]
type = SCMPinPowerPostprocessor
[]
[Total_power_SCMTHPowerPostprocessor]
type = SCMTHPowerPostprocessor
[]
[]
[VectorPostprocessors]
[line_check]
type = LineValueSampler
variable = 'q_prime q_prime_aux'
execute_on = 'TIMESTEP_END'
sort_by = 'z'
start_point = '0 0 0'
end_point = '0 0 1.0'
num_points = ${fparse num_cells + 1}
[]
[]
[Outputs]
csv = true
[]
(modules/subchannel/validation/Toshiba_37_pin/toshiba_37_pin.i)
T_in = 660
# [1e+6 kg/m^2-hour] turns into kg/m^2-sec
mass_flux_in = '${fparse 1e+6 * 37.00 / 36000.*0.5}'
P_out = 2.0e5 # Pa
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = 4
n_cells = 20
flat_to_flat = 0.085
heated_length = 1.0
pin_diameter = 0.01
pitch = 0.012
dwire = 0.002
hwire = 0.0833
spacer_z = '0 0.2 0.4 0.6 0.8'
spacer_k = '0.1 0.1 0.1 0.1 0.10'
[]
[]
[FluidProperties]
[sodium]
type = PBSodiumFluidProperties
[]
[]
[AuxVariables]
[mdot]
block = subchannel
[]
[SumWij]
block = subchannel
[]
[P]
block = subchannel
[]
[DP]
block = subchannel
[]
[h]
block = subchannel
[]
[T]
block = subchannel
[]
[Tpin]
block = fuel_pins
[]
[Dpin]
block = fuel_pins
[]
[rho]
block = subchannel
[]
[mu]
block = subchannel
[]
[S]
block = subchannel
[]
[w_perim]
block = subchannel
[]
[q_prime]
block = fuel_pins
[]
[]
[SubChannel]
type = TriSubChannel1PhaseProblem
fp = sodium
n_blocks = 1
P_out = 2.0e5
compute_density = true
compute_viscosity = true
compute_power = true
P_tol = 1.0e-6
T_tol = 1.0e-3
implicit = true
segregated = false
staggered_pressure = false
verbose_multiapps = true
verbose_subchannel = false
pin_HTC_closure = 'Dittus-Boelter'
# friction model
friction_closure = 'cheng'
full_output = true
mixing_closure = 'cheng_todreas'
[]
[SCMClosures]
[cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[cheng_todreas]
type = SCMMixingChengTodreas
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[]
[ICs]
[q_prime_IC]
type = SCMTriPowerIC
variable = q_prime
power = 1.000e5 # W
filename = "pin_power_profile_37.txt"
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = 0.01
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[DP_ic]
type = ConstantIC
variable = DP
value = 0.0
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = sodium
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = sodium
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = sodium
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Outputs]
exodus = true
csv = true
[]
[Executioner]
type = Steady
[]
[Postprocessors]
[T_Planar_Mean]
type = SCMPlanarMean
variable = T
execute_on = 'TIMESTEP_END'
height = 1.0
[]
[DP_SubchannelDelta]
type = SubChannelDelta
variable = P
execute_on = 'TIMESTEP_END'
[]
[]
################################################################################
# A multiapp that projects data to a detailed mesh
################################################################################
[MultiApps]
[viz]
type = FullSolveMultiApp
input_files = "toshiba_37_pin_viz.i"
execute_on = "timestep_end"
[]
[]
###### Transfers to the detailedMesh at the end of the coupled simulations
[Transfers]
[subchannel_transfer]
type = SCMSolutionTransfer
to_multi_app = viz
variable = 'mdot SumWij P DP h T rho mu S'
[]
[pin_transfer]
type = SCMSolutionTransfer
transfer_type = pin
to_multi_app = viz
variable = 'Tpin q_prime'
[]
[]
(modules/subchannel/validation/EBR-II/XX09_SCM_TR45R.i)
# Following Benchmark Specifications and Data Requirements for EBR-II Shutdown Heat Removal Tests SHRT-17 and SHRT-45R
# Available at: https://publications.anl.gov/anlpubs/2012/06/73647.pdf
# Transient subchannel calculation
###################################################
# Thermal-hydraulics parameters
###################################################
T_in = 616.4 #Kelvin
Total_Surface_Area = 0.000854322 #m3
mass_flux_in = '${fparse 2.427 / Total_Surface_Area}'
P_out = 2.0e5
Power_initial = 379800 #W (Page 26,35 of ANL document)
###################################################
# Geometric parameters
###################################################
scale_factor = 0.01
fuel_pin_pitch = '${fparse 0.5664*scale_factor}'
fuel_pin_diameter = '${fparse 0.4419*scale_factor}'
wire_z_spacing = '${fparse 15.24*scale_factor}'
wire_diameter = '${fparse 0.1244*scale_factor}'
inner_duct_in = '${fparse 4.64*scale_factor}'
n_rings = 5
heated_length = '${fparse 34.3*scale_factor}'
unheated_length_exit = '${fparse 26.9*scale_factor}'
###################################################
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = ${n_rings}
n_cells = 50
flat_to_flat = ${inner_duct_in}
unheated_length_exit = ${unheated_length_exit}
heated_length = ${heated_length}
pin_diameter = ${fuel_pin_diameter}
pitch = ${fuel_pin_pitch}
dwire = ${wire_diameter}
hwire = ${wire_z_spacing}
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[FluidProperties]
[sodium]
type = PBSodiumFluidProperties
[]
[]
[AuxVariables]
[q_prime_init]
block = fuel_pins
[]
[power_history_field]
block = fuel_pins
[]
[q_prime]
block = fuel_pins
[]
[]
[SubChannel]
type = TriSubChannel1PhaseProblem
fp = sodium
n_blocks = 1
P_out = ${P_out}
compute_density = true
compute_viscosity = true
compute_power = true
P_tol = 1.0e-4
T_tol = 1.0e-4
implicit = true
segregated = false
interpolation_scheme = 'upwind'
pin_HTC_closure = 'gnielinski'
friction_closure = 'cheng'
full_output = true
mixing_closure = 'cheng_todreas'
[]
[SCMClosures]
[cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[gnielinski]
type = SCMHTCGnielinski
[]
[cheng_todreas]
type = SCMMixingChengTodreas
CT = 2.6
[]
[]
[ICs]
[q_prime_IC]
type = SCMTriPowerIC
variable = q_prime_init
power = ${Power_initial}
filename = "pin_power_profile61_uniform.txt"
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[DP_ic]
type = ConstantIC
variable = DP
value = 0.0
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = sodium
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = sodium
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = sodium
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[]
[Functions]
[power_func]
type = PiecewiseLinear
data_file = 'power_history_SHRT45.csv'
format = "columns"
scale_factor = 1.0
[]
[mass_flux_in]
type = PiecewiseLinear
data_file = 'massflow_SHRT45.csv'
format = "columns"
scale_factor = '${fparse mass_flux_in / 2.427}'
[]
[dts]
type = PiecewiseLinear
xy_data = '0.0 0.1
5.0 2.0
100 2.0
110 20.0
900 20.0'
[]
[]
[Controls]
[mass_flux_ctrl]
type = RealFunctionControl
parameter = 'Postprocessors/mass_flux_PP/value'
function = 'mass_flux_in'
execute_on = 'initial timestep_begin'
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
block = subchannel
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = mass_flux_PP
execute_on = 'timestep_begin'
[]
[populate_power_history]
type = FunctionAux
variable = power_history_field
function = 'power_func'
execute_on = 'INITIAL TIMESTEP_BEGIN'
[]
[change_q_prime]
type = ParsedAux
variable = q_prime
coupled_variables = 'q_prime_init power_history_field'
expression = 'q_prime_init*power_history_field'
execute_on = 'INITIAL TIMESTEP_BEGIN'
[]
[]
[Outputs]
csv = true
[]
[Postprocessors]
[report_pressure_outlet]
type = Receiver
default = ${P_out}
[]
[TTC-31]
type = SubChannelPointValue
variable = T
index = 0
execute_on = 'initial timestep_end'
height = 0.322
[]
[post_func]
type = ElementIntegralVariablePostprocessor
block = fuel_pins
variable = q_prime
execute_on = 'INITIAL TIMESTEP_BEGIN'
[]
[mass_flux_PP]
type = ConstantPostprocessor
value = ${mass_flux_in}
[]
[mass_flow_PP]
type = ParsedPostprocessor
expression = '${Total_Surface_Area} * mass_flux_PP'
pp_names = 'mass_flux_PP'
[]
[]
[Executioner]
type = Transient
start_time = -1
end_time = 900.0
[TimeStepper]
type = FunctionDT
function = dts
min_dt = 0.1
growth_factor = 2.0
[]
dtmax = 20
# num_steps = 15
[]
################################################################################
# A multiapp that projects data to a detailed mesh
################################################################################
[MultiApps]
[viz]
type = TransientMultiApp
input_files = '3d_SCM_TR.i'
execute_on = 'INITIAL TIMESTEP_END'
catch_up = true
[]
[]
[Transfers]
[subchannel_transfer]
type = SCMSolutionTransfer
to_multi_app = viz
variable = 'mdot SumWij P DP h T rho mu S'
[]
[pin_transfer]
type = SCMSolutionTransfer
transfer_type = pin
to_multi_app = viz
variable = 'Tpin q_prime'
[]
[]
(modules/subchannel/validation/EBR-II/XX09_SCM_SS45R_corrected.i)
# Following Benchmark Specifications and Data Requirements for EBR-II Shutdown Heat Removal Tests SHRT-17 and SHRT-45R
# Available at: https://publications.anl.gov/anlpubs/2012/06/73647.pdf
###################################################
# Steady state subchannel calculation
# Thermal-hydraulics parameters
###################################################
T_in = 616.4 #Kelvin
Total_Surface_Area = 0.000854322 #m2
Mass_In = 2.427 #kg/sec
mass_flux_in = '${fparse Mass_In / Total_Surface_Area}' #kg/m2
P_out = 2.0e5
Power_initial = 379800 #W (Page 26,35 of ANL document)
###################################################
# Geometric parameters
###################################################
scale_factor = 0.01
fuel_pin_pitch = '${fparse 0.5664*scale_factor}'
fuel_pin_diameter = '${fparse 0.4419*scale_factor}'
wire_z_spacing = '${fparse 15.24*scale_factor}'
wire_diameter = '${fparse 0.1244*scale_factor}'
inner_duct_in = '${fparse 4.64*scale_factor}'
n_rings = 5
heated_length = '${fparse 34.3*scale_factor}'
unheated_length_exit = '${fparse 26.9*scale_factor}'
###################################################
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = ${n_rings}
n_cells = 50
flat_to_flat = ${inner_duct_in}
unheated_length_exit = ${unheated_length_exit}
heated_length = ${heated_length}
pin_diameter = ${fuel_pin_diameter}
pitch = ${fuel_pin_pitch}
dwire = ${wire_diameter}
hwire = ${wire_z_spacing}
[]
[duct]
type = SCMTriDuctMeshGenerator
input = subchannel
nrings = ${n_rings}
n_cells = 50
flat_to_flat = ${inner_duct_in}
unheated_length_exit = ${unheated_length_exit}
heated_length = ${heated_length}
pitch = ${fuel_pin_pitch}
[]
[]
[Functions]
[axial_heat_rate]
type = ParsedFunction
expression = '(pi/2)*sin(pi*z/L)*exp(-alpha*z)/(1.0/alpha*(1.0 - exp(-alpha*L)))*L'
symbol_names = 'L alpha'
symbol_values = '${heated_length} 1.8012'
[]
[]
[FluidProperties]
[sodium]
type = PBSodiumFluidProperties
[]
[]
[SubChannel]
type = TriSubChannel1PhaseProblem
fp = sodium
n_blocks = 1
P_out = ${P_out}
compute_density = true
compute_viscosity = true
compute_power = true
P_tol = 1.0e-4
T_tol = 1.0e-5
implicit = true
segregated = false
interpolation_scheme = 'upwind'
verbose_subchannel = true
pin_HTC_closure = 'gnielinski'
duct_HTC_closure = 'gnielinski'
friction_closure = 'cheng'
full_output = true
mixing_closure = 'cheng_todreas'
[]
[SCMClosures]
[cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[gnielinski]
type = SCMHTCGnielinski
[]
[cheng_todreas]
type = SCMMixingChengTodreas
CT = 2.6
[]
[]
[ICs]
[q_prime_IC]
type = SCMTriPowerIC
variable = q_prime
power = ${Power_initial}
filename = "pin_power_profile61.txt"
axial_heat_rate = axial_heat_rate
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[DP_ic]
type = ConstantIC
variable = DP
value = 0.0
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = sodium
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = sodium
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = sodium
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
block = subchannel
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Outputs]
csv = true
[]
[Postprocessors]
[TTC-27]
type = SubChannelPointValue
variable = T
index = 91
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-28]
type = SubChannelPointValue
variable = T
index = 50
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-29]
type = SubChannelPointValue
variable = T
index = 21
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-30]
type = SubChannelPointValue
variable = T
index = 4
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-31]
type = SubChannelPointValue
variable = T
index = 2
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-32]
type = SubChannelPointValue
variable = T
index = 16
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-33]
type = SubChannelPointValue
variable = T
index = 42
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-34]
type = SubChannelPointValue
variable = T
index = 80
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-35]
type = SubChannelPointValue
variable = T
index = 107
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[MTC-20]
type = SubChannelPointValue
variable = T
index = 33
execute_on = 'TIMESTEP_END'
height = 0.172
[]
[MTC-22]
type = SubChannelPointValue
variable = T
index = 3
execute_on = 'TIMESTEP_END'
height = 0.172
[]
[MTC-24]
type = SubChannelPointValue
variable = T
index = 28
execute_on = 'TIMESTEP_END'
height = 0.172
[]
[MTC-25]
type = SubChannelPointValue
variable = T
index = 60
execute_on = 'TIMESTEP_END'
height = 0.172
[]
[MTC-26]
type = SubChannelPointValue
variable = T
index = 106
execute_on = 'TIMESTEP_END'
height = 0.172
[]
[14TC-37]
type = SubChannelPointValue
variable = T
index = 52
execute_on = 'TIMESTEP_END'
height = 0.480
[]
[14TC-39]
type = SubChannelPointValue
variable = T
index = 6
execute_on = 'TIMESTEP_END'
height = 0.480
[]
[14TC-41]
type = SubChannelPointValue
variable = T
index = 40
execute_on = 'TIMESTEP_END'
height = 0.480
[]
[14TC-43]
type = SubChannelPointValue
variable = T
index = 105
execute_on = 'TIMESTEP_END'
height = 0.480
[]
[]
[Executioner]
type = Steady
[]
################################################################################
# A multiapp that projects data to a detailed mesh
################################################################################
[MultiApps]
[viz]
type = FullSolveMultiApp
input_files = '3d_SCM_SS.i'
execute_on = 'FINAL'
[]
[]
[Transfers]
[subchannel_transfer]
type = SCMSolutionTransfer
to_multi_app = viz
variable = 'mdot SumWij P DP h T rho mu S'
[]
[pin_transfer]
type = SCMSolutionTransfer
transfer_type = pin
to_multi_app = viz
variable = 'Tpin q_prime'
[]
[]
(modules/subchannel/test/tests/problems/SFR/EBR-II/XX09_SS_SHRT17.i)
# Following Benchmark Specifications and Data Requirements for EBR-II Shutdown Heat Removal Tests SHRT-17 and SHRT-45R
# Available at: https://publications.anl.gov/anlpubs/2012/06/73647.pdf
###################################################
#Steady state subchannel calcultion,with adapted massflow rate
# Thermal-hydraulics parameters
###################################################
T_in = 624.70556 #Kelvin
Total_Surface_Area = 0.000854322 #m3
mass_flux_in = '${fparse 2.6923 / Total_Surface_Area}' #
P_out = 2.0e5
Power_initial = 486200 #W (Page 26,35 of ANL document)
###################################################
# Geometric parameters
###################################################
scale_factor = 0.01
fuel_pin_pitch = '${fparse 0.5664*scale_factor}'
fuel_pin_diameter = '${fparse 0.4419*scale_factor}'
wire_z_spacing = '${fparse 15.24*scale_factor}'
wire_diameter = '${fparse 0.1244*scale_factor}'
inner_duct_in = '${fparse 4.64*scale_factor}'
n_rings = 5
heated_length = '${fparse 34.3*scale_factor}'
unheated_length_exit = '${fparse 26.9*scale_factor}'
###################################################
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = ${n_rings}
n_cells = 50
flat_to_flat = ${inner_duct_in}
unheated_length_exit = ${unheated_length_exit}
heated_length = ${heated_length}
pin_diameter = ${fuel_pin_diameter}
pitch = ${fuel_pin_pitch}
dwire = ${wire_diameter}
hwire = ${wire_z_spacing}
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[FluidProperties]
[sodium]
type = PBSodiumFluidProperties
[]
[]
[SubChannel]
type = TriSubChannel1PhaseProblem
fp = sodium
n_blocks = 1
P_out = ${P_out}
compute_density = true
compute_viscosity = true
compute_power = true
P_tol = 1.0e-4
T_tol = 1.0e-5
implicit = true
segregated = false
interpolation_scheme = 'upwind'
verbose_subchannel = true
pin_HTC_closure = 'gnielinski'
friction_closure = 'cheng'
full_output = true
mixing_closure = 'cheng_todreas'
[]
[SCMClosures]
[cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[gnielinski]
type = SCMHTCGnielinski
[]
[cheng_todreas]
type = SCMMixingChengTodreas
CT = 2.6
[]
[]
[ICs]
[q_prime_IC]
type = SCMTriPowerIC
variable = q_prime
power = ${Power_initial}
filename = "pin_power_profile61_uniform.txt"
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[DP_ic]
type = ConstantIC
variable = DP
value = 0.0
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = sodium
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = sodium
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = sodium
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
block = subchannel
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Postprocessors]
[TTC-27]
type = SubChannelPointValue
variable = T
index = 91
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-28]
type = SubChannelPointValue
variable = T
index = 50
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-29]
type = SubChannelPointValue
variable = T
index = 21
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-30]
type = SubChannelPointValue
variable = T
index = 4
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-31]
type = SubChannelPointValue
variable = T
index = 2
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-32]
type = SubChannelPointValue
variable = T
index = 16
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-33]
type = SubChannelPointValue
variable = T
index = 42
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-34]
type = SubChannelPointValue
variable = T
index = 80
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-35]
type = SubChannelPointValue
variable = T
index = 107
execute_on = 'TIMESTEP_END'
height = 0.322
[]
####### Assembly pressure drop
[DP_SubchannelDelta]
type = SubChannelDelta
variable = P
execute_on = 'TIMESTEP_END'
[]
#####
[Mean_Temp]
type = SCMPlanarMean
variable = T
height = 2
[]
#####
[mdot-35]
type = SubChannelPointValue
variable = mdot
index = 107
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[]
[Outputs]
exodus = true
csv = true
[]
[Executioner]
type = Steady
[]
(modules/subchannel/examples/duct/test.i)
T_in = 660
mass_flux_in = '${fparse 1e+6 * 37.00 / 36000.*0.5}'
P_out = 2.0e5 # Pa
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = 4
n_cells = 100
flat_to_flat = 0.085
heated_length = 1.0
pin_diameter = 0.01
pitch = 0.012
dwire = 0.002
hwire = 0.0833
spacer_z = '0 0.2 0.4 0.6 0.8'
spacer_k = '0.1 0.1 0.1 0.1 0.10'
[]
[duct]
type = SCMTriDuctMeshGenerator
input = subchannel
nrings = 4
n_cells = 100
flat_to_flat = 0.085
heated_length = 1.0
pitch = 0.012
[]
[]
[AuxVariables]
[mdot]
block = subchannel
[]
[SumWij]
block = subchannel
[]
[P]
block = subchannel
[]
[DP]
block = subchannel
[]
[h]
block = subchannel
[]
[T]
block = subchannel
[]
[rho]
block = subchannel
[]
[S]
block = subchannel
[]
[w_perim]
block = subchannel
[]
[q_prime]
block = subchannel
[]
[mu]
block = subchannel
[]
[displacement]
block = subchannel
[]
[duct_heat_flux]
block = duct
[]
[Tduct]
block = duct
[]
[]
[FluidProperties]
[sodium]
type = PBSodiumFluidProperties
[]
[]
[Problem]
type = TriSubChannel1PhaseProblem
fp = sodium
n_blocks = 1
P_out = 2.0e5
compute_density = false
compute_viscosity = false
compute_power = true
P_tol = 1.0e-5
T_tol = 1.0e-5
implicit = true
segregated = false
staggered_pressure = false
verbose_multiapps = true
verbose_subchannel = false
duct_HTC_closure = 'gnielinski'
friction_closure = 'cheng'
mixing_closure = 'cheng_todreas'
[]
[SCMClosures]
[cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[gnielinski]
type = SCMHTCGnielinski
[]
[cheng_todreas]
type = SCMMixingChengTodreas
CT = 1.0
[]
[]
[ICs]
[S_IC]
type = SCMTriFlowAreaIC
variable = S
[]
[w_perim_IC]
type = SCMTriWettedPerimIC
variable = w_perim
[]
[q_prime_IC]
type = SCMTriPowerIC
variable = q_prime
power = 1e5 #1.000e5 # W
filename = "pin_power_profile37.txt"
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[DP_ic]
type = ConstantIC
variable = DP
value = 0.0
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = sodium
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = sodium
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = sodium
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[T_duct_ic]
type = ConstantIC
variable = Tduct
value = ${T_in}
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[UserObjects]
[Tduct_avg_uo]
type = NearestPointLayeredAverage
direction = z
num_layers = 1000
variable = Tduct
block = duct
points = '0 0 0'
execute_on = 'TIMESTEP_END'
[]
[]
[Outputs]
exodus = true
[]
[Executioner]
type = Steady
petsc_options_iname = '-pc_type -pc_hypre_type'
petsc_options_value = 'hypre boomeramg'
fixed_point_max_its = 2
fixed_point_min_its = 2
fixed_point_rel_tol = 1e-6
[]
################################################################################
# A multiapp that projects data to a detailed mesh
################################################################################
[MultiApps]
# Multiapp to duct heat conduction module
[duct_map]
type = FullSolveMultiApp
input_files = wrapper.i # seperate file for multiapps due to radial power profile
execute_on = 'timestep_end'
positions = '0 0 0' #center of assembly
bounding_box_padding = '10.0 10.0 10.0'
[]
# Multiapp to detailed mesh for vizualization
[viz]
type = FullSolveMultiApp
input_files = "3d.i"
execute_on = 'timestep_end'
[]
[]
[Transfers]
[duct_temperature_transfer] # Send duct temperature to heat conduction
type = MultiAppInterpolationTransfer
to_multi_app = duct_map
source_variable = Tduct
variable = duct_surface_temperature
[]
[displacement_transfer]
type = MultiAppGeneralFieldNearestNodeTransfer
from_multi_app = duct_map
source_variable = disp_magnitude
variable = displacement
[]
[q_prime] # Recover q_prime from heat conduction solve
type = MultiAppInterpolationTransfer
from_multi_app = duct_map
source_variable = q_prime
variable = duct_heat_flux
[]
[xfer]
type = SCMSolutionTransfer
to_multi_app = viz
variable = 'mdot SumWij P DP h T rho mu q_prime S displacement'
[]
[]
(modules/subchannel/test/tests/multiapp/sc_core.i)
# Following Advanced Burner Test Reactor Preconceptual Design Report
# Vailable at: https://www.ne.anl.gov/eda/ABTR_1cv2_ws.pdf
###################################################
# Thermal-hydraulics parameters
###################################################
T_in = 866.0
P_out = 253727.1 # Pa
reactor_power = 671337.24 #WTh
mass_flow = '${fparse 6.15}' # kg/(s)
###################################################
# Geometric parameters
###################################################
# units are cm - do not forget to convert to meter
scale_factor = 0.01
fuel_pin_pitch = '${fparse 1.4478*scale_factor}'
fuel_pin_diameter = '${fparse 1.4268*scale_factor}'
wire_z_spacing = '${fparse 0*scale_factor}'
wire_diameter = '${fparse 0*scale_factor}'
n_rings = 8
length_heated_fuel = '${fparse 35.56*scale_factor}'
entry_length = 0
duct_inside = '${fparse 11.43*2*scale_factor}'
###################################################
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = '${fparse n_rings}'
n_cells = 10
flat_to_flat = '${fparse duct_inside}'
heated_length = '${fparse length_heated_fuel}'
pin_diameter = '${fparse fuel_pin_diameter}'
pitch = '${fparse fuel_pin_pitch}'
dwire = '${fparse wire_diameter}'
hwire = '${fparse wire_z_spacing}'
spacer_z = '0'
spacer_k = '0'
[]
[duct]
type = SCMTriDuctMeshGenerator
input = subchannel
nrings = '${fparse n_rings}'
n_cells = 10
flat_to_flat = '${fparse duct_inside}'
heated_length = '${fparse length_heated_fuel}'
pitch = '${fparse fuel_pin_pitch}'
[]
[]
# All needed aux variables are automatically loaded if [SubChannel] block exists
# [AuxVariables]
# [mdot]
# block = subchannel
# []
# [SumWij]
# block = subchannel
# []
# [P]
# block = subchannel
# []
# [DP]
# block = subchannel
# []
# [h]
# block = subchannel
# []
# [T]
# block = subchannel
# []
# [Tpin]
# block = fuel_pins
# []
# [Dpin]
# block = fuel_pins
# []
# [rho]
# block = subchannel
# []
# [S]
# block = subchannel
# []
# [w_perim]
# block = subchannel
# []
# [q_prime]
# block = fuel_pins
# []
# [mu]
# block = subchannel
# []
# [q_prime_duct]
# block = duct
# initial_condition = 0
# []
# [Tduct]
# block = duct
# []
# [displacement]
# block = subchannel
# initial_condition = 0
# []
# []
[FluidProperties]
[sodium]
type = SimpleFluidProperties
molar_mass = 0.0355
cp = 873.0
cv = 873.0
specific_entropy = 1055
viscosity = 0.0001582
thermal_conductivity = 25.9
thermal_expansion = 2.77e-4
[]
[]
[SubChannel]
type = TriSubChannel1PhaseProblem
fp = sodium
n_blocks = 1
P_out = ${P_out}
P_tol = 1.0e-2
T_tol = 1.0e-2
# Solver settings
implicit = true
segregated = false
# Output
verbose_multiapps = true
verbose_subchannel = true
compute_density = false
compute_viscosity = false
compute_power = false
# Heat Transfer Correlations
pin_HTC_closure = 'gnielinski'
duct_HTC_closure = 'gnielinski'
# Friction Correlation
friction_closure = 'Cheng'
full_output = true
# Mixing Correlation
mixing_closure = 'Kim'
[]
[SCMClosures]
[Cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[gnielinski]
type = SCMHTCGnielinski
[]
[Kim]
type = SCMMixingKimAndChung
[]
[]
[ICs]
[q_prime_IC]
type = SCMTriPowerIC
variable = q_prime
power = ${reactor_power} # W
filename = 'pin_p.txt'
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[DP_ic]
type = ConstantIC
variable = DP
value = 0.0
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = sodium
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = sodium
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = sodium
[]
[T_duct_ic]
type = ConstantIC
variable = Tduct
value = ${T_in}
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
block = subchannel
[]
[mdot_in_bc]
type = SCMFlatMassFlowRateAux
variable = mdot
boundary = inlet
mass_flow = ${mass_flow}
execute_on = 'timestep_begin'
block = subchannel
[]
[]
[Executioner]
type = Steady
[]
[VectorPostprocessors]
[sub]
type = LineValueSampler
start_point = '0 -0.00835888 ${entry_length}'
end_point = '0 -0.00835888 ${fparse entry_length + length_heated_fuel}'
num_points = 10
variable = 'h rho P'
sort_by = 'z'
execute_on = 'timestep_end'
[]
[]
[Outputs]
csv = true
[]
(modules/subchannel/test/tests/positions/pin_positions.i)
###################################################
# Thermal-hydraulics parameters
###################################################
P_out = 758423 # Pa
###################################################
# Geometric parameters
###################################################
n_cells = 50
# units are cm - do not forget to convert to meter
scale_factor = 0.01
fuel_element_pitch = '${fparse 14.598*scale_factor}'
inter_assembly_gap = '${fparse 0.4*scale_factor}'
duct_thickness = '${fparse 0.3*scale_factor}'
fuel_pin_pitch = '${fparse 0.904*scale_factor}'
fuel_pin_diameter = '${fparse 0.8*scale_factor}'
wire_z_spacing = '${fparse 20.32*scale_factor}'
wire_diameter = '${fparse 0.103*scale_factor}'
n_rings = 9
# Reduced height for convenience
length_entry_fuel = '${fparse 20*scale_factor}'
length_heated_fuel = '${fparse 40*scale_factor}'
length_outlet_fuel = '${fparse 20*scale_factor}'
# height = '${fparse length_entry_fuel+length_heated_fuel+length_outlet_fuel}'
orifice_plate_height = '${fparse 5*scale_factor}'
duct_outside = '${fparse fuel_element_pitch - inter_assembly_gap}'
duct_inside = '${fparse duct_outside - 2 * duct_thickness}'
###################################################
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = '${fparse n_rings}'
n_cells = ${n_cells}
flat_to_flat = '${fparse duct_inside}'
unheated_length_entry = '${fparse length_entry_fuel}'
heated_length = '${fparse length_heated_fuel}'
unheated_length_exit = '${fparse length_outlet_fuel}'
pin_diameter = '${fparse fuel_pin_diameter}'
pitch = '${fparse fuel_pin_pitch}'
dwire = '${fparse wire_diameter}'
hwire = '${fparse wire_z_spacing}'
spacer_z = '${fparse orifice_plate_height} ${fparse length_entry_fuel}'
spacer_k = '0.5 0.5'
[]
[duct]
type = SCMTriDuctMeshGenerator
input = subchannel
nrings = '${fparse n_rings}'
n_cells = ${n_cells}
flat_to_flat = '${fparse duct_inside}'
unheated_length_entry = '${fparse length_entry_fuel}'
heated_length = '${fparse length_heated_fuel}'
unheated_length_exit = '${fparse length_outlet_fuel}'
pitch = '${fparse fuel_pin_pitch}'
[]
[]
[AuxVariables]
[mdot]
block = subchannel
[]
[SumWij]
block = subchannel
[]
[P]
block = subchannel
initial_condition = 0
[]
[DP]
block = subchannel
[]
[h]
block = subchannel
[]
[T]
block = subchannel
[]
[Tpin]
block = fuel_pins
[]
[Dpin]
block = fuel_pins
[]
[rho]
block = subchannel
[]
[S]
block = subchannel
[]
[w_perim]
block = subchannel
[]
[displacement]
block = subchannel
[]
[ff]
block = subchannel
[]
[HTC]
block = subchannel
[]
[q_prime]
block = fuel_pins
[]
[mu]
block = subchannel
[]
[duct_heat_flux]
block = duct
initial_condition = 0
[]
[Tduct]
block = duct
[]
[]
[FluidProperties]
[sodium]
type = PBSodiumFluidProperties
[]
[]
[Problem]
type = TriSubChannel1PhaseProblem
fp = sodium
P_out = ${P_out}
solve = false
# Solver parameters
n_blocks = 10
implicit = false
segregated = true
staggered_pressure = false
# Tolerances
P_tol = 1.0e-4
T_tol = 1.0e-8
# Output
compute_density = true
compute_viscosity = true
compute_power = true
verbose_multiapps = true
verbose_subchannel = false
# friction model
friction_closure = 'cheng'
# HTC
pin_HTC_closure = Dittus-Boelter
duct_HTC_closure = Dittus-Boelter
# mixing model (beta)
mixing_closure = 'cheng_todreas'
[]
[SCMClosures]
[Cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[cheng_todreas]
type = SCMMixingChengTodreas
[]
[]
[SCMClosures]
[cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[]
[Executioner]
type = Steady
[]
[Positions]
[pin_positions]
type = SCMPinPositions
outputs = json
[]
[]
[Outputs]
json = true
[]
(modules/subchannel/test/tests/problems/deformation/tri_pin_diameter.i)
T_in = 588.5
P_out = 2.0e5
flow_area = 0.0004980799633447909
mass_flux_in = '${fparse 55*3.78541/10/60/flow_area}'
[TriSubChannelMesh]
[assembly]
type = SCMTriAssemblyMeshGenerator
nrings = 3
n_cells = 5
flat_to_flat = 3.41e-2
heated_length = 0.5
pin_diameter = 5.5e-3
pitch = 7.26e-3
dwire = 1.42e-3
hwire = 0.3048
[]
[]
[FluidProperties]
[sodium]
type = PBSodiumFluidProperties
[]
[]
[SubChannel]
type = TriSubChannel1PhaseProblem
fp = sodium
n_blocks = 1
P_out = ${P_out}
compute_density = true
compute_viscosity = true
compute_power = false
implicit = true
segregated = false
interpolation_scheme = upwind
friction_closure = 'cheng'
mixing_closure = 'cheng_todreas'
pin_HTC_closure = 'gnielinski'
full_output = true
[]
[SCMClosures]
[cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[gnielinski]
type = SCMHTCGnielinski
[]
[cheng_todreas]
type = SCMMixingChengTodreas
CT = 2.6
[]
[]
[ICs]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = 5.84e-3
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[DP_ic]
type = ConstantIC
variable = DP
value = 0.0
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = sodium
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = sodium
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = sodium
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Postprocessors]
[S_deformed]
type = SubChannelPointValue
variable = S
index = 0
height = 0.25
execute_on = 'timestep_end'
[]
[w_perim_deformed]
type = SubChannelPointValue
variable = w_perim
index = 0
height = 0.25
execute_on = 'timestep_end'
[]
[]
[Executioner]
type = Steady
[]
[Outputs]
console = true
csv = true
[]
(modules/subchannel/validation/EBR-II/XX09_SCM_SS45R.i)
# Following Benchmark Specifications and Data Requirements for EBR-II Shutdown Heat Removal Tests SHRT-17 and SHRT-45R
# Available at: https://publications.anl.gov/anlpubs/2012/06/73647.pdf
###################################################
# Steady state subchannel calculation
# Thermal-hydraulics parameters
###################################################
T_in = 616.4 #Kelvin
Total_Surface_Area = 0.000854322 #m2
Mass_In = 2.427 #kg/sec
mass_flux_in = '${fparse Mass_In / Total_Surface_Area}' #kg/m2
P_out = 2.0e5
Power_initial = 379800 #W (Page 26,35 of ANL document)
###################################################
# Geometric parameters
###################################################
scale_factor = 0.01
fuel_pin_pitch = '${fparse 0.5664*scale_factor}'
fuel_pin_diameter = '${fparse 0.4419*scale_factor}'
wire_z_spacing = '${fparse 15.24*scale_factor}'
wire_diameter = '${fparse 0.1244*scale_factor}'
inner_duct_in = '${fparse 4.64*scale_factor}'
n_rings = 5
heated_length = '${fparse 34.3*scale_factor}'
unheated_length_exit = '${fparse 26.9*scale_factor}'
###################################################
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = ${n_rings}
n_cells = 50
flat_to_flat = ${inner_duct_in}
unheated_length_exit = ${unheated_length_exit}
heated_length = ${heated_length}
pin_diameter = ${fuel_pin_diameter}
pitch = ${fuel_pin_pitch}
dwire = ${wire_diameter}
hwire = ${wire_z_spacing}
[]
[duct]
type = SCMTriDuctMeshGenerator
input = subchannel
nrings = ${n_rings}
n_cells = 50
flat_to_flat = ${inner_duct_in}
unheated_length_exit = ${unheated_length_exit}
heated_length = ${heated_length}
pitch = ${fuel_pin_pitch}
[]
[]
[AuxVariables]
[q_prime_init]
block = fuel_pins
[]
[power_history_field]
block = fuel_pins
[]
[]
[Functions]
[axial_heat_rate]
type = ParsedFunction
expression = '(pi/2)*sin(pi*z/L)*exp(-alpha*z)/(1.0/alpha*(1.0 - exp(-alpha*L)))*L'
symbol_names = 'L alpha'
symbol_values = '${heated_length} 1.8012'
[]
[]
[FluidProperties]
[sodium]
type = PBSodiumFluidProperties
[]
[]
[SubChannel]
type = TriSubChannel1PhaseProblem
fp = sodium
n_blocks = 1
P_out = ${P_out}
compute_density = true
compute_viscosity = true
compute_power = true
P_tol = 1.0e-4
T_tol = 1.0e-5
implicit = true
segregated = false
interpolation_scheme = 'upwind'
verbose_subchannel = true
pin_HTC_closure = 'gnielinski'
duct_HTC_closure = 'gnielinski'
friction_closure = 'cheng'
full_output = true
mixing_closure = 'cheng_todreas'
[]
[SCMClosures]
[cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[gnielinski]
type = SCMHTCGnielinski
[]
[cheng_todreas]
type = SCMMixingChengTodreas
CT = 2.6
[]
[]
[ICs]
[q_prime_IC]
type = SCMTriPowerIC
variable = q_prime
power = ${Power_initial}
filename = "pin_power_profile61_uniform.txt"
axial_heat_rate = axial_heat_rate
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[DP_ic]
type = ConstantIC
variable = DP
value = 0.0
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = sodium
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = sodium
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = sodium
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
block = subchannel
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Outputs]
csv = true
[]
[Postprocessors]
[TTC-27]
type = SubChannelPointValue
variable = T
index = 91
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-28]
type = SubChannelPointValue
variable = T
index = 50
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-29]
type = SubChannelPointValue
variable = T
index = 21
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-30]
type = SubChannelPointValue
variable = T
index = 4
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-31]
type = SubChannelPointValue
variable = T
index = 2
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-32]
type = SubChannelPointValue
variable = T
index = 16
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-33]
type = SubChannelPointValue
variable = T
index = 42
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-34]
type = SubChannelPointValue
variable = T
index = 80
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-35]
type = SubChannelPointValue
variable = T
index = 107
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[MTC-20]
type = SubChannelPointValue
variable = T
index = 33
execute_on = 'TIMESTEP_END'
height = 0.172
[]
[MTC-22]
type = SubChannelPointValue
variable = T
index = 3
execute_on = 'TIMESTEP_END'
height = 0.172
[]
[MTC-24]
type = SubChannelPointValue
variable = T
index = 28
execute_on = 'TIMESTEP_END'
height = 0.172
[]
[MTC-25]
type = SubChannelPointValue
variable = T
index = 60
execute_on = 'TIMESTEP_END'
height = 0.172
[]
[MTC-26]
type = SubChannelPointValue
variable = T
index = 106
execute_on = 'TIMESTEP_END'
height = 0.172
[]
[14TC-37]
type = SubChannelPointValue
variable = T
index = 52
execute_on = 'TIMESTEP_END'
height = 0.480
[]
[14TC-39]
type = SubChannelPointValue
variable = T
index = 6
execute_on = 'TIMESTEP_END'
height = 0.480
[]
[14TC-41]
type = SubChannelPointValue
variable = T
index = 40
execute_on = 'TIMESTEP_END'
height = 0.480
[]
[14TC-43]
type = SubChannelPointValue
variable = T
index = 105
execute_on = 'TIMESTEP_END'
height = 0.480
[]
[]
[Executioner]
type = Steady
[]
################################################################################
# A multiapp that projects data to a detailed mesh
################################################################################
[MultiApps]
[viz]
type = FullSolveMultiApp
input_files = '3d_SCM_SS.i'
execute_on = 'FINAL'
[]
[]
[Transfers]
[subchannel_transfer]
type = SCMSolutionTransfer
to_multi_app = viz
variable = 'mdot SumWij P DP h T rho mu S'
[]
[pin_transfer]
type = SCMSolutionTransfer
transfer_type = pin
to_multi_app = viz
variable = 'Tpin q_prime'
[]
[]
(modules/subchannel/test/tests/ics/tri_flow_area/test.i)
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
n_cells = 2
nrings = 3
flat_to_flat = 0.60
heated_length = 1.0
pin_diameter = 0.1
pitch = 0.13
dwire = 0.03
hwire = 0.3
spacer_k = '0.5'
spacer_z = '0'
[]
[]
[Variables]
[S]
block = subchannel
[]
[]
[ICs]
[S_IC]
type = SCMTriFlowAreaIC
variable = S
block = subchannel
[]
[]
[Postprocessors]
[center]
type = SubChannelPointValue
variable = S
index = 0
execute_on = 'timestep_end'
height = 0.5
[]
[edge]
type = SubChannelPointValue
variable = S
index = 24
execute_on = 'timestep_end'
height = 0.5
[]
[corner]
type = SubChannelPointValue
variable = S
index = 25
execute_on = 'timestep_end'
height = 0.5
[]
[]
[Problem]
solve = false
[]
[Executioner]
type = Steady
[]
[Outputs]
exodus = false
csv = true
[]
(modules/subchannel/test/tests/mesh/tri_duct/coords.i)
[GlobalParams]
heated_length = 1.0
nrings = 5
flat_to_flat = 1.2
pitch = 0.13
n_cells = 2
[]
[TriSubChannelMesh]
[sub_channel]
type = SCMTriAssemblyMeshGenerator
pin_diameter = 0.1
dwire = 0.03
hwire = 0.3
spacer_k = '0.5'
spacer_z = '0'
[]
[duct]
type = SCMTriDuctMeshGenerator
input = sub_channel
[]
[]
(modules/subchannel/validation/ORNL_19_pin/test_ORNL_19.i)
# M. Fontana, et al,
# "Temperature distribution in the duct wall and at the exit of a 19-pin simulated lmfbr fuel assembly (ffm bundle 2a),
# "Nuclear Technology, vol. 24, no. 2, pp. 176-200, 1974.
T_in = 588.5
A12 = 1.00423e3
A13 = -0.21390
A14 = -1.1046e-5
rho = '${fparse A12 + A13 * T_in + A14 * T_in * T_in}'
flow_area = 0.000467906 #m2
vol_flow = 4.67E-05 #low flow case
mass_flux_in = '${fparse rho * vol_flow / flow_area}'
P_out = 2.0e5 # Pa
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = 3
n_cells = 40
flat_to_flat = 3.41e-2
heated_length = 0.5334
unheated_length_entry = 0.4064
unheated_length_exit = 0.0762
pin_diameter = 5.84e-3
pitch = 7.26e-3
dwire = 1.42e-3
hwire = 0.3048
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[FluidProperties]
[sodium]
type = PBSodiumFluidProperties
[]
[]
[SubChannel]
type = TriSubChannel1PhaseProblem
fp = sodium
n_blocks = 1
P_out = 2.0e5
compute_density = true
compute_viscosity = true
compute_power = true
P_tol = 1.0e-5
T_tol = 1.0e-4
implicit = true
segregated = false
verbose_multiapps = true
verbose_subchannel = true
interpolation_scheme = upwind
pin_HTC_closure = 'Dittus-Boelter'
# friction model
friction_closure = 'cheng'
full_output = true
mixing_closure = 'cheng_todreas'
[]
[SCMClosures]
[cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[cheng_todreas]
type = SCMMixingChengTodreas
CT = 2.6
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[]
[ICs]
[q_prime_IC]
type = SCMTriPowerIC
variable = q_prime
power = 4966 #W
filename = "pin_power_profile19.txt"
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = 5.84e-3
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[DP_ic]
type = ConstantIC
variable = DP
value = 0.0
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = sodium
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = sodium
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = sodium
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Outputs]
exodus = true
csv = true
[]
[Executioner]
type = Steady
[]
[Postprocessors]
[T1]
type = SubChannelPointValue
variable = T
index = 37
execute_on = "timestep_end"
height = 1.016
[]
[T2]
type = SubChannelPointValue
variable = T
index = 36
execute_on = "timestep_end"
height = 1.016
[]
[T3]
type = SubChannelPointValue
variable = T
index = 20
execute_on = "timestep_end"
height = 1.016
[]
[T4]
type = SubChannelPointValue
variable = T
index = 10
execute_on = "timestep_end"
height = 1.016
[]
[T5]
type = SubChannelPointValue
variable = T
index = 4
execute_on = "timestep_end"
height = 1.016
[]
[T6]
type = SubChannelPointValue
variable = T
index = 1
execute_on = "timestep_end"
height = 1.016
[]
[T7]
type = SubChannelPointValue
variable = T
index = 14
execute_on = "timestep_end"
height = 1.016
[]
[T8]
type = SubChannelPointValue
variable = T
index = 28
execute_on = "timestep_end"
height = 1.016
[]
####### Assembly pressure drop
[DP_SubchannelDelta]
type = SubChannelDelta
variable = P
execute_on = 'TIMESTEP_END'
[]
#####
[Mean_Temp]
type = SCMPlanarMean
variable = T
height = 2
[]
[Total_power]
type = ElementIntegralVariablePostprocessor
variable = q_prime
block = fuel_pins
[]
[]
################################################################################
# A multiapp that projects data to a detailed mesh
################################################################################
[MultiApps]
[viz]
type = FullSolveMultiApp
input_files = "3d_ORNL_19.i"
execute_on = "timestep_end"
[]
[]
[Transfers]
[subchannel_transfer]
type = SCMSolutionTransfer
to_multi_app = viz
variable = 'mdot SumWij P DP h T rho mu S'
[]
[pin_transfer]
type = SCMSolutionTransfer
transfer_type = pin
to_multi_app = viz
variable = q_prime
[]
[]
(modules/subchannel/test/tests/postprocessors/trisubchannelpointvalue/test.i)
T_in = 359.15
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = 3
n_cells = 10
flat_to_flat = 3.41e-2
heated_length = 1.0
pin_diameter = 5.84e-3
pitch = 7.26e-3
dwire = 1.42e-3
hwire = 0.3048
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[AuxVariables]
[T]
[]
[]
[ICs]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[]
[Problem]
type = NoSolveProblem
[]
[Postprocessors]
[T]
type = SubChannelPointValue
variable = T
index = 0
execute_on = 'initial timestep_end'
height = 0.5
[]
[]
[Outputs]
csv = true
[]
[Executioner]
type = Transient
start_time = 0.0
end_time = 10.0
dt = 1.0
[]
(modules/subchannel/validation/EBR-II/XX09_SCM_SS17_corrected.i)
# Following Benchmark Specifications and Data Requirements for EBR-II Shutdown Heat Removal Tests SHRT-17 and SHRT-45R
# Available at: https://publications.anl.gov/anlpubs/2012/06/73647.pdf
###################################################
# Steady state subchannel calculation
# Thermal-hydraulics parameters
###################################################
T_in = 624.70556 #Kelvin
Total_Surface_Area = 0.000854322 #m2
Mass_In = 2.45 #kg/sec
mass_flux_in = '${fparse Mass_In / Total_Surface_Area}' #kg/m2
P_out = 2.0e5 #Pa
Power_initial = 486200 #W (Page 26,35 of ANL document)
###################################################
# Geometric parameters
###################################################
scale_factor = 0.01
fuel_pin_pitch = '${fparse 0.5664*scale_factor}'
fuel_pin_diameter = '${fparse 0.4419*scale_factor}'
wire_z_spacing = '${fparse 15.24*scale_factor}'
wire_diameter = '${fparse 0.1244*scale_factor}'
inner_duct_in = '${fparse 4.64*scale_factor}'
n_rings = 5
heated_length = '${fparse 34.3*scale_factor}'
unheated_length_exit = '${fparse 26.9*scale_factor}'
###################################################
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = ${n_rings}
n_cells = 50
flat_to_flat = ${inner_duct_in}
unheated_length_exit = ${unheated_length_exit}
heated_length = ${heated_length}
pin_diameter = ${fuel_pin_diameter}
pitch = ${fuel_pin_pitch}
dwire = ${wire_diameter}
hwire = ${wire_z_spacing}
[]
[duct]
type = SCMTriDuctMeshGenerator
input = subchannel
nrings = ${n_rings}
n_cells = 50
flat_to_flat = ${inner_duct_in}
unheated_length_exit = ${unheated_length_exit}
heated_length = ${heated_length}
pitch = ${fuel_pin_pitch}
[]
[]
[Functions]
[axial_heat_rate]
type = ParsedFunction
expression = '(pi/2)*sin(pi*z/L)*exp(-alpha*z)/(1.0/alpha*(1.0 - exp(-alpha*L)))*L'
symbol_names = 'L alpha'
symbol_values = '${heated_length} 1.8012'
[]
[]
[FluidProperties]
[sodium]
type = PBSodiumFluidProperties
[]
[]
[SubChannel]
type = TriSubChannel1PhaseProblem
fp = sodium
n_blocks = 1
P_out = ${P_out}
compute_density = true
compute_viscosity = true
compute_power = true
P_tol = 1.0e-4
T_tol = 1.0e-5
implicit = true
segregated = false
interpolation_scheme = 'upwind'
verbose_subchannel = true
pin_HTC_closure = 'gnielinski'
duct_HTC_closure = 'gnielinski'
friction_closure = 'cheng'
full_output = true
mixing_closure = 'cheng_todreas'
[]
[SCMClosures]
[cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[gnielinski]
type = SCMHTCGnielinski
[]
[cheng_todreas]
type = SCMMixingChengTodreas
CT = 2.6
[]
[]
[ICs]
[q_prime_IC]
type = SCMTriPowerIC
variable = q_prime
power = ${Power_initial}
filename = "pin_power_profile61.txt"
axial_heat_rate = axial_heat_rate
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[DP_ic]
type = ConstantIC
variable = DP
value = 0.0
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = sodium
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = sodium
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = sodium
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
block = subchannel
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Outputs]
csv = true
[]
[Postprocessors]
[TTC-27]
type = SubChannelPointValue
variable = T
index = 91
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-28]
type = SubChannelPointValue
variable = T
index = 50
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-29]
type = SubChannelPointValue
variable = T
index = 21
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-30]
type = SubChannelPointValue
variable = T
index = 4
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-31]
type = SubChannelPointValue
variable = T
index = 2
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-32]
type = SubChannelPointValue
variable = T
index = 16
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-33]
type = SubChannelPointValue
variable = T
index = 42
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-34]
type = SubChannelPointValue
variable = T
index = 80
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-35]
type = SubChannelPointValue
variable = T
index = 107
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[MTC-20]
type = SubChannelPointValue
variable = T
index = 33
execute_on = 'TIMESTEP_END'
height = 0.172
[]
[MTC-22]
type = SubChannelPointValue
variable = T
index = 3
execute_on = 'TIMESTEP_END'
height = 0.172
[]
[MTC-24]
type = SubChannelPointValue
variable = T
index = 28
execute_on = 'TIMESTEP_END'
height = 0.172
[]
[MTC-25]
type = SubChannelPointValue
variable = T
index = 60
execute_on = 'TIMESTEP_END'
height = 0.172
[]
[MTC-26]
type = SubChannelPointValue
variable = T
index = 106
execute_on = 'TIMESTEP_END'
height = 0.172
[]
[14TC-37]
type = SubChannelPointValue
variable = T
index = 52
execute_on = 'TIMESTEP_END'
height = 0.480
[]
[14TC-39]
type = SubChannelPointValue
variable = T
index = 6
execute_on = 'TIMESTEP_END'
height = 0.480
[]
[14TC-41]
type = SubChannelPointValue
variable = T
index = 40
execute_on = 'TIMESTEP_END'
height = 0.480
[]
[14TC-43]
type = SubChannelPointValue
variable = T
index = 105
execute_on = 'TIMESTEP_END'
height = 0.480
[]
[]
[Executioner]
type = Steady
[]
################################################################################
# A multiapp that projects data to a detailed mesh
################################################################################
[MultiApps]
[viz]
type = FullSolveMultiApp
input_files = '3d_SCM_SS.i'
execute_on = 'FINAL'
[]
[]
[Transfers]
[subchannel_transfer]
type = SCMSolutionTransfer
to_multi_app = viz
variable = 'mdot SumWij P DP h T rho mu S'
[]
[pin_transfer]
type = SCMSolutionTransfer
transfer_type = pin
to_multi_app = viz
variable = 'Tpin q_prime'
[]
[]
(modules/subchannel/test/tests/ics/tri_wetted_perimeter/test.i)
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = 3
n_cells = 2
flat_to_flat = 0.60
heated_length = 1.0
pin_diameter = 0.1
pitch = 0.13
dwire = 0.03
hwire = 0.3
spacer_k = '0.5'
spacer_z = '0'
[]
[]
[Variables]
[w_perim]
block = subchannel
[]
[]
[ICs]
[w_perim_IC]
type = SCMTriWettedPerimIC
variable = w_perim
block = subchannel
[]
[]
[Postprocessors]
[center]
type = SubChannelPointValue
variable = w_perim
index = 0
execute_on = 'timestep_end'
height = 0.5
[]
[edge]
type = SubChannelPointValue
variable = w_perim
index = 24
execute_on = 'timestep_end'
height = 0.5
[]
[corner]
type = SubChannelPointValue
variable = w_perim
index = 25
execute_on = 'timestep_end'
height = 0.5
[]
[]
[Problem]
solve = false
[]
[Executioner]
type = Steady
[]
[Outputs]
exodus = false
csv = true
[]
(modules/subchannel/test/tests/problems/SFR/sodium-19pin/test19_explicit.i)
T_in = 660
mass_flux_in = '${fparse 1e+6 * 300.00 / 36000.*0.5}'
P_out = 2.0e5 # Pa
[GlobalParams]
nrings = 3
n_cells = 5
flat_to_flat = 0.056
heated_length = 0.5
pitch = 0.012
[]
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
pin_diameter = 0.01
dwire = 0.002
hwire = 0.0833
spacer_z = '0'
spacer_k = '5.0'
[]
[duct]
type = SCMTriDuctMeshGenerator
input = subchannel
[]
[]
[FluidProperties]
[sodium]
type = PBSodiumFluidProperties
[]
[]
[SubChannel]
type = TriSubChannel1PhaseProblem
fp = sodium
n_blocks = 1
P_out = 2.0e5
compute_density = true
compute_viscosity = true
compute_power = true
implicit = false
segregated = true
verbose_subchannel = true
duct_HTC_closure = 'gnielinski'
pin_HTC_closure = 'Dittus-Boelter'
friction_closure = 'cheng'
full_output = true
mixing_closure = 'cheng_todreas'
[]
[SCMClosures]
[cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[gnielinski]
type = SCMHTCGnielinski
[]
[cheng_todreas]
type = SCMMixingChengTodreas
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[]
[ICs]
[q_prime_IC]
type = SCMTriPowerIC
variable = q_prime
power = 1000.0 # W
filename = "pin_power_profile19.txt"
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = 0.01
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[DP_ic]
type = ConstantIC
variable = DP
value = 0.0
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = sodium
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = sodium
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = sodium
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Outputs]
exodus = true
csv = true
[]
[Postprocessors]
[T1]
type = SubChannelPointValue
variable = T
index = 37
execute_on = "timestep_end"
height = 0.5
[]
[T2]
type = SubChannelPointValue
variable = T
index = 36
execute_on = "timestep_end"
height = 0.5
[]
[T3]
type = SubChannelPointValue
variable = T
index = 20
execute_on = "timestep_end"
height = 0.5
[]
[T4]
type = SubChannelPointValue
variable = T
index = 10
execute_on = "timestep_end"
height = 0.5
[]
[T5]
type = SubChannelPointValue
variable = T
index = 4
execute_on = "timestep_end"
height = 0.5
[]
[T6]
type = SubChannelPointValue
variable = T
index = 1
execute_on = "timestep_end"
height = 0.5
[]
[T7]
type = SubChannelPointValue
variable = T
index = 14
execute_on = "timestep_end"
height = 0.5
[]
[T8]
type = SubChannelPointValue
variable = T
index = 28
execute_on = "timestep_end"
height = 0.5
[]
####### Assembly pressure drop
[DP_SubchannelDelta]
type = SubChannelDelta
variable = P
execute_on = 'TIMESTEP_END'
[]
#####
[Mean_Temp]
type = SCMPlanarMean
variable = T
height = 2
[]
[Total_power]
type = ElementIntegralVariablePostprocessor
variable = q_prime
block = fuel_pins
[]
[mdot-8]
type = SubChannelPointValue
variable = mdot
index = 28
execute_on = 'TIMESTEP_END'
height = 0.5
[]
[]
[Executioner]
type = Steady
[]
(modules/subchannel/validation/areva_FCTF/FCTF_deformed.i)
# Following Benchmark Specifications and Data Requirements for the AREVA heated-bundle test in its Fuel Cooling Test Facility (FCTF)
# as part of a U.S. DOE funded project: Towards a Longer-Life Core. In partnership with TerraPower, TAMU and ANL,
# AREVA NP tested a wire-wrapped pin bundle. The bundle consists of electrically heated pins and non-heated pins.
# This test collected measurements to evaluate thermal hydraulic performance of a wire wrapped bundle, useful for CFD and other software validation.
# Available at: https://www.osti.gov/servlets/purl/1346027/
###################################################
# Steady state subchannel calculation
# Thermal-hydraulics parameters
###################################################
T_in = 305.68 #Kelvin (32.53 C)
# mu = 0.0007646 #Pas
# Re = 20500
# Dh = 0.004535
Total_Surface_Area_SC = 0.00285294 #m2
Total_Surface_Area_EXP = 0.002808 #m2
P_out = 829370.355 # Pa (120.29 psia)
Power = 90640 # Watt Each heater pin had a max power of 30kW
# Heater 17 (18) not working.
# test:19 power = 22613 22610 22754 22663 [W], Total Power = 90640 [W], mdot_average = 9.576 [kg/s], Re = 20300
# Index of heated pins per silicon controled rectifiers (Areva notation):1 3 6 7 || 4 5 11 15 ||2 9 19 40 60 || 13 44 48 52 56 (from bottom to top)
# Index of heated pins per silicon controled rectifiers (SC notation):0 3 6 1 || 4 5 12 16 || 2 10 8 43 39 || 14 47 51 55 59 (from top to bottom) 38 areva->41 SC
# Relative power of pin per rectifier: 1.12266659312 || 1.12251765225 || 0.90373345101 || 0.90011915269
mdot_average = '${fparse 9.43 * Total_Surface_Area_SC / Total_Surface_Area_EXP}'
mass_flux_in = '${fparse mdot_average / Total_Surface_Area_SC}' #kg/m2
###################################################
# Geometric parameters (non-deformed heated bundle)
###################################################
fuel_pin_pitch = 0.01122652 #m
fuel_pin_diameter = 0.009514 #m
wire_z_spacing = 0.285 #m
wire_diameter = 0.0017062 #m
inner_duct_in = 0.092 #m
n_rings = 5
unheated_length_entry = 1.14 #m
heated_length = 1.71 #m
unheated_length_exit = 0.855 #m
###################################################
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = ${n_rings}
n_cells = 65
flat_to_flat = ${inner_duct_in}
unheated_length_entry = ${unheated_length_entry}
heated_length = ${heated_length}
unheated_length_exit = ${unheated_length_exit}
pin_diameter = ${fuel_pin_diameter}
pitch = ${fuel_pin_pitch}
dwire = ${wire_diameter}
hwire = ${wire_z_spacing}
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[Functions]
[axial_heat_rate]
type = ParsedFunction
expression = '(0.4*pi/(pi-2))*sin(pi*z/L) + 1.4 - (0.4*pi/(pi-2))'
symbol_names = 'L'
symbol_values = '${heated_length}'
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = TriSubChannel1PhaseProblem
fp = water
n_blocks = 1
P_out = ${P_out}
compute_density = true
compute_viscosity = true
compute_power = true
P_tol = 1.0e-4
T_tol = 1.0e-4
implicit = true
segregated = false
interpolation_scheme = 'upwind'
verbose_subchannel = true
# Heat Transfer Correlations
pin_HTC_closure = 'gnielinski'
# friction model
friction_closure = 'cheng'
full_output = true
# Turbulent mixing Correlation
mixing_closure = 'cheng_todreas'
[]
[SCMClosures]
[cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[gnielinski]
type = SCMHTCGnielinski
[]
[cheng_todreas]
type = SCMMixingChengTodreas
CT = 2.6
[]
[]
[ICs]
[q_prime_IC]
type = SCMTriPowerIC
variable = q_prime
power = ${Power}
filename = "pin_power_profile61.txt"
axial_heat_rate = axial_heat_rate
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[DP_ic]
type = ConstantIC
variable = DP
value = 0.0
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = water
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = water
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = water
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[displacement_ic]
type = FCTFdisplacementIC
variable = displacement
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
block = subchannel
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Outputs]
exodus = true
csv = true
[]
!include deformed_duct_pp.i
[Executioner]
type = Steady
[]
################################################################################
# A multiapp that projects data to a detailed mesh
################################################################################
[MultiApps]
[viz]
type = FullSolveMultiApp
input_files = '3D.i'
execute_on = 'FINAL'
[]
[]
[Transfers]
[subchannel_transfer]
type = SCMSolutionTransfer
to_multi_app = viz
variable = 'mdot SumWij P DP h T rho mu S displacement'
[]
[pin_transfer]
type = SCMSolutionTransfer
transfer_type = pin
to_multi_app = viz
variable = 'Dpin Tpin q_prime'
[]
[]
(modules/subchannel/validation/EBR-II/XX09_SCM_SS17.i)
# Following Benchmark Specifications and Data Requirements for EBR-II Shutdown Heat Removal Tests SHRT-17 and SHRT-45R
# Available at: https://publications.anl.gov/anlpubs/2012/06/73647.pdf
###################################################
# Steady state subchannel calculation
# Thermal-hydraulics parameters
###################################################
T_in = 624.70556 #Kelvin
Total_Surface_Area = 0.000854322 #m2
Mass_In = 2.45 #kg/sec
mass_flux_in = '${fparse Mass_In / Total_Surface_Area}' #kg/m2
P_out = 2.0e5 #Pa
Power_initial = 486200 #W (Page 26,35 of ANL document)
###################################################
# Geometric parameters
###################################################
scale_factor = 0.01
fuel_pin_pitch = '${fparse 0.5664*scale_factor}'
fuel_pin_diameter = '${fparse 0.4419*scale_factor}'
wire_z_spacing = '${fparse 15.24*scale_factor}'
wire_diameter = '${fparse 0.1244*scale_factor}'
inner_duct_in = '${fparse 4.64*scale_factor}'
n_rings = 5
heated_length = '${fparse 34.3*scale_factor}'
unheated_length_exit = '${fparse 26.9*scale_factor}'
###################################################
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = ${n_rings}
n_cells = 50
flat_to_flat = ${inner_duct_in}
unheated_length_exit = ${unheated_length_exit}
heated_length = ${heated_length}
pin_diameter = ${fuel_pin_diameter}
pitch = ${fuel_pin_pitch}
dwire = ${wire_diameter}
hwire = ${wire_z_spacing}
[]
[duct]
type = SCMTriDuctMeshGenerator
input = subchannel
nrings = ${n_rings}
n_cells = 50
flat_to_flat = ${inner_duct_in}
unheated_length_exit = ${unheated_length_exit}
heated_length = ${heated_length}
pitch = ${fuel_pin_pitch}
[]
[]
[Functions]
[axial_heat_rate]
type = ParsedFunction
expression = '(pi/2)*sin(pi*z/L)*exp(-alpha*z)/(1.0/alpha*(1.0 - exp(-alpha*L)))*L'
symbol_names = 'L alpha'
symbol_values = '${heated_length} 1.8012'
[]
[]
[FluidProperties]
[sodium]
type = PBSodiumFluidProperties
[]
[]
[SubChannel]
type = TriSubChannel1PhaseProblem
fp = sodium
n_blocks = 1
P_out = ${P_out}
compute_density = true
compute_viscosity = true
compute_power = true
P_tol = 1.0e-4
T_tol = 1.0e-5
implicit = true
segregated = false
interpolation_scheme = 'upwind'
verbose_subchannel = true
pin_HTC_closure = 'gnielinski'
duct_HTC_closure = 'gnielinski'
friction_closure = 'cheng'
full_output = true
mixing_closure = 'cheng_todreas'
[]
[SCMClosures]
[cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[gnielinski]
type = SCMHTCGnielinski
[]
[cheng_todreas]
type = SCMMixingChengTodreas
CT = 2.6
[]
[]
[ICs]
[q_prime_IC]
type = SCMTriPowerIC
variable = q_prime
power = ${Power_initial}
filename = "pin_power_profile61_uniform.txt"
axial_heat_rate = axial_heat_rate
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[DP_ic]
type = ConstantIC
variable = DP
value = 0.0
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = sodium
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = sodium
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = sodium
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
block = subchannel
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Outputs]
csv = true
[]
[Postprocessors]
[TTC-27]
type = SubChannelPointValue
variable = T
index = 91
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-28]
type = SubChannelPointValue
variable = T
index = 50
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-29]
type = SubChannelPointValue
variable = T
index = 21
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-30]
type = SubChannelPointValue
variable = T
index = 4
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-31]
type = SubChannelPointValue
variable = T
index = 2
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-32]
type = SubChannelPointValue
variable = T
index = 16
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-33]
type = SubChannelPointValue
variable = T
index = 42
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-34]
type = SubChannelPointValue
variable = T
index = 80
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[TTC-35]
type = SubChannelPointValue
variable = T
index = 107
execute_on = 'TIMESTEP_END'
height = 0.322
[]
[MTC-20]
type = SubChannelPointValue
variable = T
index = 33
execute_on = 'TIMESTEP_END'
height = 0.172
[]
[MTC-22]
type = SubChannelPointValue
variable = T
index = 3
execute_on = 'TIMESTEP_END'
height = 0.172
[]
[MTC-24]
type = SubChannelPointValue
variable = T
index = 28
execute_on = 'TIMESTEP_END'
height = 0.172
[]
[MTC-25]
type = SubChannelPointValue
variable = T
index = 60
execute_on = 'TIMESTEP_END'
height = 0.172
[]
[MTC-26]
type = SubChannelPointValue
variable = T
index = 106
execute_on = 'TIMESTEP_END'
height = 0.172
[]
[14TC-37]
type = SubChannelPointValue
variable = T
index = 52
execute_on = 'TIMESTEP_END'
height = 0.480
[]
[14TC-39]
type = SubChannelPointValue
variable = T
index = 6
execute_on = 'TIMESTEP_END'
height = 0.480
[]
[14TC-41]
type = SubChannelPointValue
variable = T
index = 40
execute_on = 'TIMESTEP_END'
height = 0.480
[]
[14TC-43]
type = SubChannelPointValue
variable = T
index = 105
execute_on = 'TIMESTEP_END'
height = 0.480
[]
[]
[Executioner]
type = Steady
[]
################################################################################
# A multiapp that projects data to a detailed mesh
################################################################################
[MultiApps]
[viz]
type = FullSolveMultiApp
input_files = '3d_SCM_SS.i'
execute_on = 'FINAL'
[]
[]
[Transfers]
[subchannel_transfer]
type = SCMSolutionTransfer
to_multi_app = viz
variable = 'mdot SumWij P DP h T rho mu S'
[]
[pin_transfer]
type = SCMSolutionTransfer
transfer_type = pin
to_multi_app = viz
variable = 'Tpin q_prime'
[]
[]
(modules/subchannel/validation/areva_FCTF/FCTF_non_deformed.i)
# Following Benchmark Specifications and Data Requirements for the AREVA heated-bundle test in its Fuel Cooling Test Facility (FCTF)
# as part of a U.S. DOE funded project: Towards a Longer-Life Core. In partnership with TerraPower, TAMU and ANL,
# AREVA NP tested a wire-wrapped pin bundle. The bundle consists of electrically heated pins and non-heated pins.
# This test collected measurements to evaluate thermal hydraulic performance of a wire wrapped bundle, useful for CFD and other software validation.
# Available at: https://www.osti.gov/servlets/purl/1346027/
###################################################
# Steady state subchannel calculation
# Thermal-hydraulics parameters
###################################################
T_in = 305.44 #Kelvin (32.29 C)
# mu = 0.0007646 #Pas
# Re = 20500
# Dh = 0.004535
Total_Surface_Area_SC = 0.00285294 #m2
Total_Surface_Area_EXP = 0.002808 #m2
P_out = 829370.355 # Pa (120.29 psia)
Power = 90640 # Watt Each heater pin had a max power of 30kW
# Heater 17 (18) not working.
# test:19 power = 22613 22610 22754 22663 [W], Total Power = 90640 [W], mdot_average = 9.576 [kg/s], Re = 20300
# Index of heated pins per silicon controled rectifiers (Areva notation):1 3 6 7 || 4 5 11 15 ||2 9 19 40 60 || 13 44 48 52 56 (from bottom to top)
# Index of heated pins per silicon controled rectifiers (SC notation):0 3 6 1 || 4 5 12 16 || 2 10 8 43 39 || 14 47 51 55 59 (from top to bottom) 38 areva->41 SC
# Relative power of pin per rectifier: 1.12266659312 || 1.12251765225 || 0.90373345101 || 0.90011915269
mdot_average = '${fparse 9.33 * Total_Surface_Area_SC / Total_Surface_Area_EXP}'
mass_flux_in = '${fparse mdot_average / Total_Surface_Area_SC}' #kg/m2
###################################################
# Geometric parameters (non-deformed heated bundle)
###################################################
fuel_pin_pitch = 0.01122652 #m
fuel_pin_diameter = 0.009514 #m
wire_z_spacing = 0.285 #m
wire_diameter = 0.0017062 #m
inner_duct_in = 0.092 #m
n_rings = 5
unheated_length_entry = 1.14 #m
heated_length = 1.71 #m
unheated_length_exit = 0.855 #m
###################################################
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = ${n_rings}
n_cells = 65
flat_to_flat = ${inner_duct_in}
unheated_length_entry = ${unheated_length_entry}
heated_length = ${heated_length}
unheated_length_exit = ${unheated_length_exit}
pin_diameter = ${fuel_pin_diameter}
pitch = ${fuel_pin_pitch}
dwire = ${wire_diameter}
hwire = ${wire_z_spacing}
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[Functions]
[axial_heat_rate]
type = ParsedFunction
expression = '(0.4*pi/(pi-2))*sin(pi*z/L) + 1.4 - (0.4*pi/(pi-2))'
symbol_names = 'L'
symbol_values = '${heated_length}'
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = TriSubChannel1PhaseProblem
fp = water
n_blocks = 1
P_out = ${P_out}
compute_density = true
compute_viscosity = true
compute_power = true
P_tol = 1.0e-4
T_tol = 1.0e-4
implicit = true
segregated = false
interpolation_scheme = 'upwind'
verbose_subchannel = true
# Heat Transfer Correlations
pin_HTC_closure = 'gnielinski'
# friction model
friction_closure = 'cheng'
full_output = true
# Turbulent mixing Correlation
mixing_closure = 'cheng_todreas'
[]
[SCMClosures]
[cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[gnielinski]
type = SCMHTCGnielinski
[]
[cheng_todreas]
type = SCMMixingChengTodreas
CT = 2.6
[]
[]
[ICs]
[q_prime_IC]
type = SCMTriPowerIC
variable = q_prime
power = ${Power}
filename = "pin_power_profile61.txt"
axial_heat_rate = axial_heat_rate
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[DP_ic]
type = ConstantIC
variable = DP
value = 0.0
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = water
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = water
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = water
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
block = subchannel
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Outputs]
exodus = true
csv = true
[]
!include non_deformed_duct_pp.i
[Executioner]
type = Steady
[]
################################################################################
# A multiapp that projects data to a detailed mesh
################################################################################
[MultiApps]
[viz]
type = FullSolveMultiApp
input_files = '3D.i'
execute_on = 'FINAL'
[]
[]
[Transfers]
[subchannel_transfer]
type = SCMSolutionTransfer
to_multi_app = viz
variable = 'mdot SumWij P DP h T rho mu S displacement'
[]
[pin_transfer]
type = SCMSolutionTransfer
transfer_type = pin
to_multi_app = viz
variable = 'Dpin Tpin q_prime'
[]
[]
(modules/subchannel/test/tests/ics/FCTFdisplacementIC/test.i)
# Following Benchmark Specifications and Data Requirements for the AREVA heated-bundle test in its Fuel Cooling Test Facility (FCTF)
# as part of a U.S. DOE funded project: Towards a Longer-Life Core. In partnership with TerraPower, TAMU and ANL,
# AREVA NP tested a wire-wrapped pin bundle. The bundle consists of electrically heated pins and non-heated pins.
# This test collected measurements to evaluate thermal hydraulic performance of a wire wrapped bundle, useful for CFD and other software validation.
# Available at: https://www.osti.gov/servlets/purl/1346027/
###################################################
# This input file tests the ICs kernel that populates discplament for the FCTF deformed assembly.
###################################################
# Steady state sub_channel calculation
# Thermal-hydraulics parameters
###################################################
T_in = 305.68 #Kelvin (32.53 C)
Total_Surface_Area_SC = 0.00285294 #m2
Total_Surface_Area_EXP = 0.002808 #m2
P_out = 829370.355 # Pa (120.29 psia)
Power = 90640 # Watt Each heater pin had a max power of 30kW
mdot_average = '${fparse 9.58 * Total_Surface_Area_SC / Total_Surface_Area_EXP}'
mass_flux_in = '${fparse mdot_average / Total_Surface_Area_SC / 1.5}' #kg/m2
###################################################
# Geometric parameters (non-deformed heated bundle)
###################################################
fuel_pin_pitch = 0.01122652 #m
fuel_pin_diameter = 0.009514 #m
wire_z_spacing = 0.285 #m
wire_diameter = 0.0017062 #m
inner_duct_in = 0.092 #m
n_rings = 5
unheated_length_entry = 1.14 #m
heated_length = 1.71 #m
unheated_length_exit = 0.855 #m
###################################################
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = ${n_rings}
n_cells = 10
flat_to_flat = ${inner_duct_in}
unheated_length_entry = ${unheated_length_entry}
heated_length = ${heated_length}
unheated_length_exit = ${unheated_length_exit}
pin_diameter = ${fuel_pin_diameter}
pitch = ${fuel_pin_pitch}
dwire = ${wire_diameter}
hwire = ${wire_z_spacing}
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[Functions]
[axial_heat_rate]
type = ParsedFunction
expression = '(0.4*pi/(pi-2))*sin(pi*z/L) + 1.4 - (0.4*pi/(pi-2))'
symbol_names = 'L'
symbol_values = '${heated_length}'
[]
[]
[AuxVariables]
[mdot]
block = subchannel
[]
[SumWij]
block = subchannel
[]
[P]
block = subchannel
[]
[DP]
block = subchannel
[]
[h]
block = subchannel
[]
[T]
block = subchannel
[]
[rho]
block = subchannel
[]
[mu]
block = subchannel
[]
[S]
block = subchannel
[]
[w_perim]
block = subchannel
[]
[displacement]
block = subchannel
[]
[q_prime]
block = fuel_pins
[]
[Tpin]
block = fuel_pins
[]
[Dpin]
block = fuel_pins
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[Problem]
type = NoSolveProblem
[]
[ICs]
[S_IC]
type = SCMTriFlowAreaIC
variable = S
[]
[w_perim_IC]
type = SCMTriWettedPerimIC
variable = w_perim
[]
[q_prime_IC]
type = SCMTriPowerIC
variable = q_prime
power = ${Power}
filename = "pin_power_profile61.txt"
axial_heat_rate = axial_heat_rate
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = ${fuel_pin_diameter}
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[DP_ic]
type = ConstantIC
variable = DP
value = 0.0
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = water
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = water
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = water
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[displacement_ic]
type = FCTFdisplacementIC
variable = displacement
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
block = subchannel
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Postprocessors]
[center_S]
type = SubChannelPointValue
variable = S
index = 0
execute_on = 'timestep_end'
height = 0.5
[]
[edge_S]
type = SubChannelPointValue
variable = S
index = 96
execute_on = 'timestep_end'
height = 0.5
[]
[corner_S]
type = SubChannelPointValue
variable = S
index = 97
execute_on = 'timestep_end'
height = 0.5
[]
[center_w_perim]
type = SubChannelPointValue
variable = w_perim
index = 0
execute_on = 'timestep_end'
height = 0.5
[]
[edge_w_perim]
type = SubChannelPointValue
variable = w_perim
index = 96
execute_on = 'timestep_end'
height = 0.5
[]
[corner_w_perim]
type = SubChannelPointValue
variable = w_perim
index = 97
execute_on = 'timestep_end'
height = 0.5
[]
[]
[Executioner]
type = Steady
[]
[Outputs]
exodus = false
csv = true
[]
(modules/subchannel/test/tests/problems/Lead-LBE-19pin/test_LBE-19pin.i)
T_in = 673.15
flow_area = 0.00128171 #m2
rho_in = 10453.21705
# [10 m^3/hour] turns into kg/m^2-sec
mass_flux_in = '${fparse 10*rho_in/3600/flow_area}'
P_out = 1.0e5 # Pa
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = 3
n_cells = 50
flat_to_flat = 0.05319936
heated_length = 0.87
unheated_length_entry = 0.0
unheated_length_exit = 0.402
pin_diameter = 8.2e-3
pitch = 0.01148
dwire = 0.0
hwire = 0.0
spacer_z = '0.177 0.547 0.870'
spacer_k = '1.1719 1.1719 1.1719'
[]
[]
[FluidProperties]
[LBE]
type = LeadBismuthFluidProperties
[]
[]
[SubChannel]
type = TriSubChannel1PhaseProblem
fp = LBE
n_blocks = 1
P_out = 1.0e5
compute_density = true
compute_viscosity = true
compute_power = true
implicit = true
segregated = false
verbose_subchannel = true
interpolation_scheme = upwind
pin_HTC_closure = 'Dittus-Boelter'
# friction model
friction_closure = 'cheng'
full_output = true
mixing_closure = 'Kim_and_Chung'
[]
[SCMClosures]
[cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[Kim_and_Chung]
type = SCMMixingKimAndChung
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[]
[ICs]
[q_prime_IC]
type = SCMTriPowerIC
variable = q_prime
power = '${fparse 250000}'
filename = "pin_power_profile19.txt"
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = 8.2e-3
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[DP_ic]
type = ConstantIC
variable = DP
value = 0.0
[]
[Viscosity_ic]
type = ViscosityIC
variable = mu
p = ${P_out}
T = T
fp = LBE
[]
[rho_ic]
type = RhoFromPressureTemperatureIC
variable = rho
p = ${P_out}
T = T
fp = LBE
[]
[h_ic]
type = SpecificEnthalpyFromPressureTemperatureIC
variable = h
p = ${P_out}
T = T
fp = LBE
[]
[mdot_ic]
type = ConstantIC
variable = mdot
value = 0.0
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Postprocessors]
[T1]
type = SubChannelPointValue
variable = T
index = 37
execute_on = "timestep_end"
height = 0.87
[]
[T2]
type = SubChannelPointValue
variable = T
index = 36
execute_on = "timestep_end"
height = 0.87
[]
[T3]
type = SubChannelPointValue
variable = T
index = 20
execute_on = "timestep_end"
height = 0.87
[]
[T4]
type = SubChannelPointValue
variable = T
index = 10
execute_on = "timestep_end"
height = 0.87
[]
[T5]
type = SubChannelPointValue
variable = T
index = 4
execute_on = "timestep_end"
height = 0.87
[]
[T6]
type = SubChannelPointValue
variable = T
index = 1
execute_on = "timestep_end"
height = 0.87
[]
[T7]
type = SubChannelPointValue
variable = T
index = 14
execute_on = "timestep_end"
height = 0.87
[]
[T8]
type = SubChannelPointValue
variable = T
index = 28
execute_on = "timestep_end"
height = 0.87
[]
####### Assembly pressure drop
[DP_SubchannelDelta]
type = SubChannelDelta
variable = P
execute_on = 'TIMESTEP_END'
[]
#####
[Mean_Temp]
type = SCMPlanarMean
variable = T
height = 2
[]
[Total_power]
type = ElementIntegralVariablePostprocessor
variable = q_prime
block = fuel_pins
[]
[]
[Outputs]
csv = true
[]
[Executioner]
type = Steady
[]
# ################################################################################
# # A multiapp that projects data to a detailed mesh
# ################################################################################
# [MultiApps]
# [viz]
# type = FullSolveMultiApp
# input_files = "3d_LBE_19.i"
# execute_on = "timestep_end"
# max_procs_per_app = 1
# []
# []
# [Transfers]
# [xfer]
# type = SCMSolutionTransfer
# to_multi_app = viz
# variable = 'mdot SumWij P DP h T rho mu q_prime S'
# []
# []
(modules/subchannel/test/tests/ics/marvel/test.i)
################################################################################
## MARVEL-type SCM geometry setup simulation ##
## POC : Vasileios Kyriakopoulos, vasileios.kyriakopoulos@inl.gov ##
################################################################################
heated_length = 0.51
[TriSubChannelMesh]
[subchannel]
type = SCMTriAssemblyMeshGenerator
nrings = 4
n_cells = 40
flat_to_flat = 0.22
heated_length = ${heated_length}
unheated_length_entry = 0.2
unheated_length_exit = 0.2
pin_diameter = 0.03269
pitch = 0.0346514
dwire = 0.0
hwire = 0.0
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[AuxVariables]
[S]
block = subchannel
[]
[w_perim]
block = subchannel
[]
[]
[Problem]
type = NoSolveProblem
[]
[ICs]
[S_IC]
type = MarvelTriFlowAreaIC
variable = S
[]
[w_perim_IC]
type = MarvelTriWettedPerimIC
variable = w_perim
[]
[]
[Postprocessors]
[center_S]
type = SubChannelPointValue
variable = S
index = 0
execute_on = 'timestep_end'
height = 0.5
[]
[edge_S]
type = SubChannelPointValue
variable = S
index = 54
execute_on = 'timestep_end'
height = 0.5
[]
[corner_S]
type = SubChannelPointValue
variable = S
index = 55
execute_on = 'timestep_end'
height = 0.5
[]
[center_w_perim]
type = SubChannelPointValue
variable = w_perim
index = 0
execute_on = 'timestep_end'
height = 0.5
[]
[edge_w_perim]
type = SubChannelPointValue
variable = w_perim
index = 54
execute_on = 'timestep_end'
height = 0.5
[]
[corner_w_perim]
type = SubChannelPointValue
variable = w_perim
index = 55
execute_on = 'timestep_end'
height = 0.5
[]
[]
[Executioner]
type = Steady
[]
[Outputs]
exodus = false
csv = true
[]