- heated_lengthHeated length [m]
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Heated 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
- nxNumber of channels in the x direction [-]
C++ Type:unsigned int
Controllable:No
Description:Number of channels in the x direction [-]
- nyNumber of channels in the y direction [-]
C++ Type:unsigned int
Controllable:No
Description:Number of channels in the y direction [-]
- 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]
- side_gapThe side gap, not to be confused with the gap between pins; this refers to the gap next to the duct or else the distance between the subchannel centroid and the duct wall. distance(edge pin center, duct wall) = pitch / 2 + side_gap [m]
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:The side gap, not to be confused with the gap between pins; this refers to the gap next to the duct or else the distance between the subchannel centroid and the duct wall. distance(edge pin center, duct wall) = pitch / 2 + side_gap [m]
SCMQuadAssemblyMeshGenerator
Creates one mesh containing both 1D subchannels and 1D pins in a square lattice arrangement
Overview
This mesh generator creates the 1D subchannel and pin meshes for a square 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 SCMQuadSubChannelMeshGenerator and SCMQuadPinMeshGenerator input pattern. See the SubChannel mesh generator migration page for old-to-new input examples.
Example Input File Syntax
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
pin_diameter = ${pin_diameter}
side_gap = 0.00095
heated_length = 1.0
spacer_z = '0.0'
spacer_k = '0.0'
[]
[](modules/subchannel/test/tests/problems/psbt/psbt_explicit.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 blocked subchannels
Default:0
C++ Type:std::vector<double>
Unit:(no unit assumed)
Controllable:No
Description:Form loss coefficient of blocked subchannels
- 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
Default:1
C++ Type:std::vector<double>
Unit:(no unit assumed)
Controllable:No
Description:Area reduction of subchannels affected by blockage
- 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/subchannel/test/tests/SCMQuadPower/test_with_pins.i)
- (modules/subchannel/verification/friction_model_verification/two_channel2.i)
- (modules/subchannel/test/tests/transfers/multiapp_detailed_solution_transfer/quad.i)
- (modules/subchannel/test/tests/auxkernels/mass_flow_rate/blocked_test.i)
- (modules/subchannel/validation/Blockage/PNNL_7x7/7X7blockage90.i)
- (modules/subchannel/test/tests/problems/psbt/psbt_explicit_staggered.i)
- (modules/subchannel/test/tests/postprocessors/quadsubchannelpointvalue/test.i)
- (modules/subchannel/test/tests/problems/psbt/psbt_explicit_v2.i)
- (modules/subchannel/examples/mesh_generator/psbt_mesh_generator_test.i)
- (modules/subchannel/test/tests/problems/coupling/main.i)
- (modules/subchannel/test/tests/problems/psbt/psbt_implicit.i)
- (modules/subchannel/test/tests/gravity/one_pin_problem.i)
- (modules/subchannel/validation/Blockage/PNNL_7x7/7X7blockage70.i)
- (modules/subchannel/test/tests/ics/mass_flow/test.i)
- (modules/subchannel/test/tests/auxkernels/uniform_mass_flow_rate/test.i)
- (modules/subchannel/test/tests/mesh/quad_duct/coords.i)
- (modules/subchannel/verification/enthalpy_mixing_verification/two_channel.i)
- (modules/subchannel/test/tests/problems/deformation/quad_pin_diameter.i)
- (modules/subchannel/test/tests/problems/psbt/psbt_monolithic.i)
- (modules/subchannel/validation/psbt/psbt_ss/psbt.i)
- (modules/subchannel/verification/friction_model_verification/two_channel.i)
- (modules/subchannel/validation/psbt/psbt_null_transient/psbt_transient.i)
- (modules/subchannel/test/tests/mesh/quad_assembly/coords.i)
- (modules/subchannel/test/tests/mesh/quad_assembly/subchannel_number.i)
- (modules/subchannel/test/tests/postprocessors/quadsubchannelpointvalue/test_error.i)
- (modules/subchannel/test/tests/ics/quad_wetted_perimeter/test.i)
- (modules/subchannel/validation/psbt/psbt_null_transient/psbt_ss.i)
- (modules/subchannel/test/tests/restart/steady.i)
- (modules/subchannel/validation/PNNL_12_pin/transient/2X6_transient.i)
- (modules/subchannel/validation/PNNL_12_pin/steady_state/2X6_ss.i)
- (modules/subchannel/test/tests/restart/transient.i)
- (modules/subchannel/examples/heating_test/3X3_channel.i)
- (modules/subchannel/examples/coupling/thermo_mech/quad/one_pin_problem.i)
- (modules/subchannel/test/tests/problems/psbt/psbt_explicit.i)
- (modules/subchannel/test/tests/ics/quad_flow_area/test.i)
- (modules/subchannel/test/tests/outputs/normalslicevalues/test.i)
(modules/subchannel/test/tests/problems/psbt/psbt_explicit.i)
T_in = 359.15
# [1e+6 kg/m^2-hour] turns into kg/m^2-sec
mass_flux_in = '${fparse 1e+6 * 17.00 / 3600.}'
P_out = 4.923e6 # Pa
pin_diameter = 0.00950
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
pin_diameter = ${pin_diameter}
side_gap = 0.00095
heated_length = 1.0
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
verbose_subchannel = true
friction_closure = 'MATRA'
pin_HTC_closure = 'Dittus-Boelter'
full_output = true
mixing_closure ='constant_beta'
[]
[SCMClosures]
[MATRA]
type = SCMFrictionMATRA
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[constant_beta]
type = SCMMixingConstantBeta
beta = 0.006
CT = 2.6
[]
[]
[ICs]
[q_prime_IC]
type = SCMQuadPowerIC
variable = q_prime
power = 1.0e6 # W
filename = "power_profile.txt" #type in name of file that describes radial power profile
block = fuel_pins
[]
[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 = report_mass_flux_inlet
execute_on = 'timestep_begin'
block = subchannel
[]
[]
[Postprocessors]
[report_mass_flux_inlet]
type = Receiver
default = ${mass_flux_in}
[]
[total_pressure_drop]
type = SubChannelDelta
variable = P
execute_on = "timestep_end"
[]
[T1]
type = SubChannelPointValue
variable = T
index = 0
execute_on = "timestep_end"
height = 1
[]
[T2]
type = SubChannelPointValue
variable = T
index = 7
execute_on = "timestep_end"
height = 1
[]
[T3]
type = SubChannelPointValue
variable = T
index = 14
execute_on = "timestep_end"
height = 1
[]
[T4]
type = SubChannelPointValue
variable = T
index = 21
execute_on = "timestep_end"
height = 1
[]
[T5]
type = SubChannelPointValue
variable = T
index = 28
execute_on = "timestep_end"
height = 1
[]
[T6]
type = SubChannelPointValue
variable = T
index = 35
execute_on = "timestep_end"
height = 1
[]
[]
[Outputs]
csv = true
[]
[Executioner]
type = Steady
[]
(modules/subchannel/test/tests/SCMQuadPower/test_with_pins.i)
num_cells = 15
T_in = 359.15
# [1e+6 kg/m^2-hour] turns into kg/m^2-sec
mass_flux_in = '${fparse 1e+6 * 17.00 / 3600.}'
P_out = 4.923e6 # Pa
length = 0.5
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 3
ny = 3
n_cells = ${num_cells}
pitch = 0.25
pin_diameter = 0.125
side_gap = 0.1
unheated_length_entry = 0.5
heated_length = 0.5
unheated_length_exit = 0.5
[]
[]
[Functions]
[axial_heat_rate]
type = ParsedFunction
expression = '(pi/2)*sin(pi*z/L)'
symbol_names = 'L'
symbol_values = '${length}'
[]
[]
[AuxVariables]
[q_prime_aux]
block = fuel_pins
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
verbose_subchannel = true
implicit = true
segregated = false
friction_closure = 'MATRA'
pin_HTC_closure = 'Dittus-Boelter'
full_output = true
mixing_closure ='constant_beta'
[]
[SCMClosures]
[MATRA]
type = SCMFrictionMATRA
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[constant_beta]
type = SCMMixingConstantBeta
beta = 0.08
CT = 2.6
[]
[]
[AuxKernels]
[q_prime_AUX]
type = SCMQuadPowerAux
variable = q_prime_aux
power = 1e6 # W
filename = "power_profile.txt" #type in name of file that describes radial power profile
execute_on = 'initial'
axial_heat_rate = axial_heat_rate
[]
[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'
[]
[]
[ICs]
[q_prime_IC]
type = SCMQuadPowerIC
variable = q_prime
power = 1e6 # W
filename = "power_profile.txt" #type in name of file that describes radial power profile
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
[]
[]
[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.125 0.125 0'
end_point = '0.125 0.125 1.5'
num_points = ${fparse num_cells + 1}
[]
[]
[Outputs]
csv = true
[]
(modules/subchannel/verification/friction_model_verification/two_channel2.i)
T_in = 473.15 # K
mass_flux_in = 3500 # kg /sec m2
P_out = 155e+5 # Pa
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 2
ny = 1
n_cells = 100
pitch = 0.0126
pin_diameter = 0.00950
side_gap = 0.00095
heated_length = 10.0
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[Functions]
[S_fn]
type = ParsedFunction
expression = if(x>0.0,0.002,0.001)
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
friction_closure = 'cheng'
full_output = true
mixing_closure ='constant_beta'
[]
[SCMClosures]
[cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[constant_beta]
type = SCMMixingConstantBeta
beta = 0.006
CT = 0.0
[]
[]
[ICs]
[S_ic]
type = FunctionIC
variable = S
function = S_fn
[]
[w_perim_IC]
type = ConstantIC
variable = w_perim
value = 0.34188034
[]
[q_prime_IC]
type = ConstantIC
variable = q_prime
value = 0.0
[]
[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'
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Postprocessors]
[mdot_1]
type = SubChannelPointValue
variable = mdot
index = 0
execute_on = 'initial timestep_end'
height = 10.0
[]
[mdot_2]
type = SubChannelPointValue
variable = mdot
index = 1
execute_on = 'initial timestep_end'
height = 10.0
[]
[]
[Outputs]
csv = true
[]
[Executioner]
type = Steady
[]
(modules/subchannel/test/tests/transfers/multiapp_detailed_solution_transfer/quad.i)
[GlobalParams]
nx = 3
ny = 3
n_cells = 3
pitch = 1
heated_length = 0.2
[]
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
pin_diameter = 0.5
side_gap = 0.1
spacer_z = '0'
spacer_k = '0'
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[AuxVariables]
[P]
block = subchannel
[]
[T]
block = fuel_pins
[]
[]
[AuxKernels]
[P_ak]
type = ParsedAux
variable = P
expression = 'pow(x + 1, 2) + pow(2*(y + 1), 2) - (50 * z)'
use_xyzt = true
execute_on = 'INITIAL TIMESTEP_BEGIN'
[]
[T_ak]
type = ParsedAux
variable = T
expression = 'pow(x + 0.5, 2) + pow(2*(y + 0.5), 2) + (50 * z)'
use_xyzt = true
execute_on = 'INITIAL TIMESTEP_BEGIN'
[]
[]
[Variables]
[u]
[]
[]
[Kernels]
[td]
type = TimeDerivative
variable = u
[]
[]
[MultiApps]
[viz]
type = TransientMultiApp
input_files = 'quad_viz.i'
max_procs_per_app = 1
[]
[]
[Transfers]
[P_transfer]
type = SCMSolutionTransfer
to_multi_app = viz
variable = 'P'
[]
[T_transfer]
type = SCMSolutionTransfer
transfer_type = pin
to_multi_app = viz
variable = 'T'
[]
[]
[Executioner]
type = Transient
num_steps = 1
[]
[Outputs]
exodus = true
[]
(modules/subchannel/test/tests/auxkernels/mass_flow_rate/blocked_test.i)
[QuadSubChannelMesh]
[subchannel]
type = SCMQuadAssemblyMeshGenerator
nx = 6
ny = 6
n_cells = 3
pitch = 0.0126
pin_diameter = 0.00950
side_gap = 0.00095
heated_length = 1.0
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[AuxVariables]
[S]
[]
[mdot]
[]
[]
[ICs]
[S_IC]
type = ConstantIC
variable = S
value = 0.5
[]
[]
[AuxKernels]
[mdot_ak]
type = SCMBlockedMassFlowRateAux
variable = mdot
area = S
index_blockage = '0'
unblocked_mass_flux = 4722
blocked_mass_flux = 1.0
execute_on = 'initial'
[]
[]
[Postprocessors]
[blocked_inlet]
type = SubChannelPointValue
variable = mdot
index = 0
height = 0.0
execute_on = 'timestep_end'
[]
[central_inlet]
type = SubChannelPointValue
variable = mdot
index = 14
height = 0.0
execute_on = 'timestep_end'
[]
[]
[Problem]
solve = false
[]
[Executioner]
type = Steady
[]
[Outputs]
csv = true
[]
(modules/subchannel/validation/Blockage/PNNL_7x7/7X7blockage90.i)
T_in = 302.594
mass_flux_in = 1730.0950134985335
P_out = 101325 # Pa
# Creer et. al 1976
# Blockage is modeled with area reduction and form loss coefficient distributed on the
# affected subchannels
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 8
ny = 8
n_cells = 84
pitch = 0.0136906
Kij = 0.5
pin_diameter = 0.0099568
side_gap = 0.0036957
heated_length = 1.4224
z_blockage = '0.60325 0.67945'
index_blockage = '18 19 20 21 26 27 28 29 34 35 36 37 42 43 44 45'
reduction_blockage = '0.78 0.55 0.55 0.78 0.55 0.10 0.10 0.55 0.55 0.10 0.10 0.55 0.78 0.55 0.55 0.78'
k_blockage = '0.0 0.0 0.0 0.0 0.0 0.9 0.9 0.0 0.0 0.9 0.9 0.0 0.0 0.0 0.0 0.0'
spacer_z = '0.4064 1.4224'
spacer_k = '1.14 1.14'
[]
[]
[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
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
compute_density = true
compute_viscosity = true
compute_power = false
P_out = ${P_out}
implicit = true
segregated = false
staggered_pressure = false
interpolation_scheme = central_difference
friction_closure = 'MATRA'
mixing_closure ='constant_beta'
pin_HTC_closure = 'Dittus-Boelter'
[]
[SCMClosures]
[MATRA]
type = SCMFrictionMATRA
[]
[constant_beta]
type = SCMMixingConstantBeta
beta = 0.006
CT = 2.6
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[]
[ICs]
[q_prime_IC]
type = SCMQuadPowerIC
variable = q_prime
power = 0.0 # W
filename = "power_profile.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 = 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'
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Outputs]
exodus = true
[]
[Executioner]
type = Steady
[]
[MultiApps]
[viz]
type = FullSolveMultiApp
input_files = "detailedMesh.i"
execute_on = "final"
[]
[]
[Transfers]
###### Transfers to the detailedMesh at the end of the coupled simulations
[subchannel_transfer]
type = SCMSolutionTransfer
to_multi_app = viz
variable = 'mdot SumWij P DP h T rho mu S'
[]
[]
(modules/subchannel/test/tests/problems/psbt/psbt_explicit_staggered.i)
T_in = 359.15
# [1e+6 kg/m^2-hour] turns into kg/m^2-sec
mass_flux_in = '${fparse 1e+6 * 17.00 / 3600.}'
P_out = 4.923e6 # Pa
pin_diameter = 0.00950
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
pin_diameter = ${pin_diameter}
side_gap = 0.00095
heated_length = 1.0
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
verbose_subchannel = true
staggered_pressure = true
friction_closure = 'MATRA'
pin_HTC_closure = 'Dittus-Boelter'
full_output = true
mixing_closure ='constant_beta'
[]
[SCMClosures]
[MATRA]
type = SCMFrictionMATRA
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[constant_beta]
type = SCMMixingConstantBeta
beta = 0.006
CT = 2.6
[]
[]
[ICs]
[q_prime_IC]
type = SCMQuadPowerIC
variable = q_prime
power = 1.0e6 # W
filename = "power_profile.txt" #type in name of file that describes radial power profile
block = fuel_pins
[]
[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 = report_mass_flux_inlet
execute_on = 'timestep_begin'
block = subchannel
[]
[]
[Postprocessors]
[report_mass_flux_inlet]
type = Receiver
default = ${mass_flux_in}
[]
[total_pressure_drop]
type = SubChannelDelta
variable = P
execute_on = "timestep_end"
[]
[T1]
type = SubChannelPointValue
variable = T
index = 0
execute_on = "timestep_end"
height = 1
[]
[T2]
type = SubChannelPointValue
variable = T
index = 7
execute_on = "timestep_end"
height = 1
[]
[T3]
type = SubChannelPointValue
variable = T
index = 14
execute_on = "timestep_end"
height = 1
[]
[T4]
type = SubChannelPointValue
variable = T
index = 21
execute_on = "timestep_end"
height = 1
[]
[T5]
type = SubChannelPointValue
variable = T
index = 28
execute_on = "timestep_end"
height = 1
[]
[T6]
type = SubChannelPointValue
variable = T
index = 35
execute_on = "timestep_end"
height = 1
[]
[]
[Outputs]
csv = true
[]
[Executioner]
type = Steady
[]
(modules/subchannel/test/tests/postprocessors/quadsubchannelpointvalue/test.i)
T_in = 359.15
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 3
ny = 3
n_cells = 10
pitch = 0.25
pin_diameter = 0.125
side_gap = 0.1
heated_length = 1
spacer_k = '0.0'
spacer_z = '0'
[]
[]
[AuxVariables]
[T]
[]
[]
[ICs]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[]
[Problem]
type = NoSolveProblem
[]
[Postprocessors]
[T]
type = SubChannelPointValue
variable = T
index = 4
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/test/tests/problems/psbt/psbt_explicit_v2.i)
T_in = 359.15
# [1e+6 kg/m^2-hour] turns into kg/m^2-sec
mass_flux_in = '${fparse 1e+6 * 17.00 / 3600.}'
P_out = 4.923e6 # Pa
pin_diameter = 0.00950
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
pin_diameter = ${pin_diameter}
side_gap = 0.00095
heated_length = 1.0
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
compute_density = true
compute_viscosity = true
compute_power = true
P_out = report_pressure_outlet
verbose_subchannel = true
mixing_closure = 'Kim_and_Chung'
friction_closure = 'Cheng'
pin_HTC_closure = 'Dittus-Boelter'
full_output = true
[]
[SCMClosures]
[Cheng]
type = SCMFrictionUpdatedChengTodreas
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[Kim_and_Chung]
type = SCMMixingKimAndChung
CT = 2.6
[]
[]
[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
[]
[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 = report_mass_flux_inlet
execute_on = 'timestep_begin'
block = subchannel
[]
[q_prime_IC]
type = SCMQuadPowerAux
variable = q_prime
power = 1.0e6 # W
filename = "power_profile.txt" #type in name of file that describes radial power profile
execute_on = 'initial timestep_begin'
[]
[]
[Postprocessors]
[report_mass_flux_inlet]
type = Receiver
default = ${mass_flux_in}
[]
[report_pressure_outlet]
type = Receiver
default = ${P_out}
[]
[total_pressure_drop]
type = SubChannelDelta
variable = P
execute_on = "timestep_end"
[]
[T1]
type = SubChannelPointValue
variable = T
index = 0
execute_on = "timestep_end"
height = 1
[]
[T2]
type = SubChannelPointValue
variable = T
index = 7
execute_on = "timestep_end"
height = 1
[]
[T3]
type = SubChannelPointValue
variable = T
index = 14
execute_on = "timestep_end"
height = 1
[]
[T4]
type = SubChannelPointValue
variable = T
index = 21
execute_on = "timestep_end"
height = 1
[]
[T5]
type = SubChannelPointValue
variable = T
index = 28
execute_on = "timestep_end"
height = 1
[]
[T6]
type = SubChannelPointValue
variable = T
index = 35
execute_on = "timestep_end"
height = 1
[]
[]
[Outputs]
csv = true
[Temp_Out_MATRIX]
type = QuadSubChannelNormalSliceValues
variable = T
execute_on = final
file_base = "Temp_Out_Explicit.txt"
height = 1.0
[]
[]
[Executioner]
type = Steady
[]
(modules/subchannel/examples/mesh_generator/psbt_mesh_generator_test.i)
T_in = 359.15
# [1e+6 kg/m^2-hour] turns into kg/m^2-sec
mass_flux_in = '${fparse 1e+6 * 17.0 / 3600.}'
P_out = 4.923e6 # Pa
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 6
ny = 6
n_cells = 20
pitch = 0.0126
pin_diameter = 0.00950
side_gap = 0.00095
heated_length = 1.00
spacer_z = '0.5'
spacer_k = '0.5'
[]
[]
[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 = subchannel
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
P_tol = 1e-6
T_tol = 1e-6
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
friction_closure = 'MATRA'
pin_HTC_closure = 'Dittus-Boelter'
mixing_closure ='constant_beta'
[]
[SCMClosures]
[MATRA]
type = SCMFrictionMATRA
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[constant_beta]
type = SCMMixingConstantBeta
beta = 0.08
CT = 2.6
[]
[]
[ICs]
[q_prime_IC]
type = SCMQuadPowerIC
variable = q_prime
power = 1.00e6 # W
filename = "power_profile.txt" #
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[Tpin_ic]
type = ConstantIC
variable = Tpin
value = 0.0
[]
[P_ic]
type = ConstantIC
variable = P
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'
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Outputs]
exodus = true
checkpoint = false
[Temp_Out_MATRIX]
type = QuadSubChannelNormalSliceValues
variable = T
execute_on = final
file_base = "Temp_Out.txt"
height = 3.658
[]
[mdot_Out_MATRIX]
type = QuadSubChannelNormalSliceValues
variable = mdot
execute_on = final
file_base = "mdot_Out.txt"
height = 3.658
[]
[mdot_In_MATRIX]
type = QuadSubChannelNormalSliceValues
variable = mdot
execute_on = final
file_base = "mdot_In.txt"
height = 0.0
[]
[]
[Executioner]
type = Steady
[]
################################################################################
# A multiapp that projects data to a detailed mesh
################################################################################
[MultiApps]
[viz]
type = FullSolveMultiApp
input_files = "3d.i"
execute_on = "timestep_end"
[]
[]
[Transfers]
[xfer]
type = SCMSolutionTransfer
to_multi_app = viz
variable = 'mdot SumWij P DP h T rho mu q_prime S'
[]
[]
(modules/subchannel/test/tests/problems/coupling/main.i)
T_in = 297.039 # K
P_out = 101325 # Pa
heated_length = 1.0
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 2
ny = 2
n_cells = 10
pitch = 0.014605
pin_diameter = 0.012065
side_gap = 0.0015875
heated_length = ${heated_length}
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[Functions]
[axial_heat_rate]
type = ParsedFunction
expression = '(pi/2)*sin(pi*z/L)'
symbol_names = 'L'
symbol_values = '${heated_length}'
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
n_blocks = 1
fp = water
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
pin_HTC_closure = 'dittus-boelter'
friction_closure = 'MATRA'
full_output = true
mixing_closure = 'constant'
[]
[SCMClosures]
[MATRA]
type = SCMFrictionMATRA
[]
[dittus-boelter]
type = SCMHTCDittusBoelter
correction_factor = none
[]
[constant]
type = SCMMixingConstantBeta
beta = 0.006
CT = 2.6
[]
[]
[ICs]
[q_prime_IC]
type = SCMQuadPowerIC
variable = q_prime
power = 1000 # W
filename = "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 = 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'
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = 131.43435930715006
execute_on = 'timestep_begin'
[]
[]
[Outputs]
exodus = true
[]
[Executioner]
type = Steady
petsc_options_iname = '-pc_type -pc_hypre_type'
petsc_options_value = 'hypre boomeramg'
fixed_point_max_its = 30
fixed_point_min_its = 2
fixed_point_rel_tol = 1e-6
[]
################################################################################
# A multiapp that transfers data to heat conduction simulations
################################################################################
[MultiApps] # I have as many multiapps as pins
[sub]
type = FullSolveMultiApp
input_files = sub.i # seperate file for multiapps due to radial power profile
execute_on = 'timestep_end'
positions = '0 0 0 '
bounding_box_padding = '0 0 0.01'
max_procs_per_app = 1
[]
[viz]
type = FullSolveMultiApp
input_files = '3d.i'
execute_on = 'timestep_end'
max_procs_per_app = 1
[]
[]
[Transfers]
[Tpin] # send pin surface temperature to heat conduction,
type = MultiAppGeneralFieldNearestLocationTransfer
to_multi_app = sub
variable = Pin_surface_temperature
source_variable = Tpin
execute_on = 'timestep_end'
[]
[from_sub] # send heat flux from heat conduction to subchannel
type = MultiAppGeneralFieldNearestLocationTransfer
from_multi_app = sub
variable = q_prime
source_variable = q_prime
from_boundaries = right
execute_on = 'timestep_end'
[]
[subchannel_transfer]
type = SCMSolutionTransfer
to_multi_app = viz
variable = 'mdot SumWij P DP h T rho mu S'
execute_on = 'timestep_end'
[]
[pin_transfer]
type = SCMSolutionTransfer
transfer_type = pin
to_multi_app = viz
variable = 'Tpin q_prime Dpin'
execute_on = 'timestep_end'
[]
[]
(modules/subchannel/test/tests/problems/psbt/psbt_implicit.i)
T_in = 359.15
# [1e+6 kg/m^2-hour] turns into kg/m^2-sec
mass_flux_in = '${fparse 1e+6 * 17.00 / 3600.}'
P_out = 4.923e6 # Pa
pin_diameter = 0.00950
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
pin_diameter = ${pin_diameter}
side_gap = 0.00095
heated_length = 1.0
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
verbose_subchannel = true
implicit = true
segregated = true
friction_closure = 'MATRA'
pin_HTC_closure = 'Dittus-Boelter'
full_output = true
mixing_closure ='constant_beta'
[]
[SCMClosures]
[MATRA]
type = SCMFrictionMATRA
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[constant_beta]
type = SCMMixingConstantBeta
beta = 0.006
CT = 2.6
[]
[]
[ICs]
[q_prime_IC]
type = SCMQuadPowerIC
variable = q_prime
power = 1.0e6 # W
filename = "power_profile.txt" #type in name of file that describes radial power profile
block = fuel_pins
[]
[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 = report_mass_flux_inlet
execute_on = 'timestep_begin'
block = subchannel
[]
[]
[Postprocessors]
[report_mass_flux_inlet]
type = Receiver
default = ${mass_flux_in}
[]
[total_pressure_drop]
type = SubChannelDelta
variable = P
execute_on = "timestep_end"
[]
[T1]
type = SubChannelPointValue
variable = T
index = 0
execute_on = "timestep_end"
height = 1
[]
[T2]
type = SubChannelPointValue
variable = T
index = 7
execute_on = "timestep_end"
height = 1
[]
[T3]
type = SubChannelPointValue
variable = T
index = 14
execute_on = "timestep_end"
height = 1
[]
[T4]
type = SubChannelPointValue
variable = T
index = 21
execute_on = "timestep_end"
height = 1
[]
[T5]
type = SubChannelPointValue
variable = T
index = 28
execute_on = "timestep_end"
height = 1
[]
[T6]
type = SubChannelPointValue
variable = T
index = 35
execute_on = "timestep_end"
height = 1
[]
[]
[Outputs]
csv = true
[]
[Executioner]
type = Steady
[]
(modules/subchannel/test/tests/gravity/one_pin_problem.i)
######## BC's #################
T_in = 359.15
# [1e+6 kg/m^2-hour] turns into kg/m^2-sec
mass_flux_in = '${fparse 1e+6 * 17.00 / 3600.}'
P_out = 4.923e6 # Pa
heated_length = 1.0
######## Geometry #
[GlobalParams]
nx = 2
ny = 2
n_cells = 20
pitch = 0.0126
pin_diameter = 0.00950
side_gap = 0.00095
heated_length = ${heated_length}
spacer_z = '0.0'
spacer_k = '0.0'
power = 10000.0 # W
[]
[QuadSubChannelMesh]
[subchannel]
type = SCMQuadAssemblyMeshGenerator
[]
[]
[Functions]
[axial_heat_rate]
type = ParsedFunction
expression = '(pi/2)*sin(pi*z/L)'
symbol_names = 'L'
symbol_values = '${heated_length}'
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
verbose_subchannel = true
friction_closure = 'MATRA'
pin_HTC_closure = 'Dittus-Boelter'
full_output = true
mixing_closure ='constant_beta'
[]
[SCMClosures]
[MATRA]
type = SCMFrictionMATRA
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[constant_beta]
type = SCMMixingConstantBeta
beta = 0.006
CT = 2.6
[]
[]
[ICs]
[q_prime_IC]
type = SCMQuadPowerIC
variable = q_prime
filename = "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 = 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'
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Postprocessors]
[DP]
type = SubChannelDelta
variable = P
execute_on = 'timestep_end'
[]
[]
[Outputs]
csv = true
[]
[Executioner]
type = Steady
[]
(modules/subchannel/validation/Blockage/PNNL_7x7/7X7blockage70.i)
T_in = 302.594
mass_flux_in = 1730.0950134985335
P_out = 101325 # Pa
# Creer et. al 1976
# Blockage is modeled with area reduction and form loss coefficient distributed on the
# affected subchannels
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 8
ny = 8
n_cells = 36
pitch = 0.0136906
Kij = 0.5
pin_diameter = 0.0099568
side_gap = 0.0036957
heated_length = 1.4224
z_blockage = '0.60325 0.67945'
index_blockage = '18 19 20 21 26 27 28 29 34 35 36 37 42 43 44 45'
reduction_blockage = '0.83 0.65 0.65 0.83 0.65 0.30 0.30 0.65 0.65 0.30 0.30 0.65 0.83 0.65 0.65 0.83'
k_blockage = '0.0 0.0 0.0 0.0 0.0 1 1 0.0 0.0 1 1 0.0 0.0 0.0 0.0 0.0'
spacer_z = '0.3683 1.3843'
spacer_k = '1.14 1.14'
[]
[]
[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
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
compute_density = true
compute_viscosity = true
compute_power = false
P_out = ${P_out}
implicit = true
segregated = false
staggered_pressure = false
interpolation_scheme = 'upwind'
friction_closure = 'MATRA'
mixing_closure ='constant_beta'
pin_HTC_closure = 'Dittus-Boelter'
[]
[SCMClosures]
[MATRA]
type = SCMFrictionMATRA
[]
[constant_beta]
type = SCMMixingConstantBeta
beta = 0.006
CT = 2.6
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[]
[ICs]
[q_prime_IC]
type = SCMQuadPowerIC
variable = q_prime
power = 0.0 # W
filename = "power_profile.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 = 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'
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Outputs]
exodus = true
[]
[Executioner]
type = Steady
[]
[MultiApps]
[viz]
type = FullSolveMultiApp
input_files = "detailedMesh.i"
execute_on = "final"
[]
[]
[Transfers]
###### Transfers to the detailedMesh at the end of the coupled simulations
[subchannel_transfer]
type = SCMSolutionTransfer
to_multi_app = viz
variable = 'mdot SumWij P DP h T rho mu S'
[]
[]
(modules/subchannel/test/tests/ics/mass_flow/test.i)
mass_flux_in = ${fparse 1e+6 * 17.00 / 3600.}
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 3
ny = 3
n_cells = 10
pitch = 0.25
pin_diameter = 0.125
side_gap = 0.1
heated_length = 1
spacer_k = '0.0'
spacer_z = '0'
[]
[]
[Variables]
[S]
[]
[mdot]
[]
[]
[ICs]
[S_IC]
type = SCMQuadFlowAreaIC
variable = S
[]
[mdot_ic]
type = SCMMassFlowRateIC
variable = mdot
area = S
mass_flux = ${mass_flux_in}
[]
[]
[Postprocessors]
[center]
type = SubChannelPointValue
variable = mdot
index = 4
execute_on = 'timestep_end'
height = 0.5
[]
[edge]
type = SubChannelPointValue
variable = mdot
index = 1
execute_on = 'timestep_end'
height = 0.5
[]
[corner]
type = SubChannelPointValue
variable = mdot
index = 0
execute_on = 'timestep_end'
height = 0.5
[]
[]
[Problem]
solve = false
[]
[Executioner]
type = Steady
[]
[Outputs]
exodus = false
csv = true
[]
(modules/subchannel/test/tests/auxkernels/uniform_mass_flow_rate/test.i)
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
pin_diameter = 0.00950
side_gap = 0.00095
heated_length = 1.0
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[AuxVariables]
[mdot]
[]
[]
[AuxKernels]
[mdot_uniform]
type = SCMFlatMassFlowRateAux
variable = mdot
boundary = inlet
mass_flow = 36.0 #kg/sec
execute_on = 'initial'
[]
[]
[Postprocessors]
[total_mass_flow_rate]
type = NodalSum
boundary = inlet
variable = mdot
execute_on = 'initial'
[]
[]
[Problem]
solve = false
[]
[Executioner]
type = Steady
[]
[Outputs]
csv = true
[]
(modules/subchannel/test/tests/mesh/quad_duct/coords.i)
[GlobalParams]
nx = 5
ny = 4
n_cells = 10
pitch = 0.25
pin_diameter = 0.125
side_gap = 0.1
heated_length = 1
spacer_k = '0.0'
spacer_z = '0'
[]
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
[]
[duct]
type = SCMQuadDuctMeshGenerator
input = sub_channel
[]
[]
(modules/subchannel/verification/enthalpy_mixing_verification/two_channel.i)
mass_flux_in = 3500 # kg /sec m2
P_out = 155e+5 # Pa
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 2
ny = 1
n_cells = 100
pitch = 0.0126
pin_diameter = 0.00950
side_gap = 0.00095
heated_length = 10.0
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[Functions]
[T_fn]
type = ParsedFunction
expression = if(x>0.0,483.10,473.10)
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
P_tol = 1e-6
T_tol = 1e-6
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
friction_closure = 'MATRA'
full_output = true
mixing_closure ='constant_beta'
[]
[SCMClosures]
[MATRA]
type = SCMFrictionMATRA
[]
[constant_beta]
type = SCMMixingConstantBeta
beta = 0.006
CT = 2.0
[]
[]
[ICs]
[S_ic]
type = ConstantIC
variable = S
value = 8.78778158e-05
[]
[T_ic]
type = FunctionIC
variable = T
function = T_fn
[]
[w_perim_IC]
type = ConstantIC
variable = w_perim
value = 0.34188034
[]
[q_prime_IC]
type = ConstantIC
variable = q_prime
value = 0.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 = 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]
[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]
[Temp_1]
type = SubChannelPointValue
variable = T
index = 0
execute_on = 'initial timestep_end'
height = 10.0
[]
[Temp_2]
type = SubChannelPointValue
variable = T
index = 1
execute_on = 'initial timestep_end'
height = 10.0
[]
[]
[Executioner]
type = Steady
[]
################################################################################
# A multiapp that projects data to a detailed mesh
################################################################################
[MultiApps]
[viz]
type = FullSolveMultiApp
input_files = "3d.i"
execute_on = "timestep_end"
[]
[]
[Transfers]
[xfer]
type = SCMSolutionTransfer
to_multi_app = viz
variable = 'mdot SumWij P DP h T rho mu q_prime S'
[]
[]
(modules/subchannel/test/tests/problems/deformation/quad_pin_diameter.i)
T_in = 359.15
P_out = 4.923e6
mass_flux_in = '${fparse 1e+6 * 17.00 / 3600.}'
[QuadSubChannelMesh]
[assembly]
type = SCMQuadAssemblyMeshGenerator
nx = 3
ny = 3
n_cells = 5
pitch = 0.014605
pin_diameter = 0.012
side_gap = 0.0015875
heated_length = 0.5
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
compute_density = true
compute_viscosity = true
compute_power = false
P_out = ${P_out}
implicit = true
segregated = false
friction_closure = 'MATRA'
mixing_closure = 'constant_beta'
pin_HTC_closure = 'Dittus-Boelter'
full_output = true
[]
[SCMClosures]
[MATRA]
type = SCMFrictionMATRA
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[constant_beta]
type = SCMMixingConstantBeta
beta = 0.08
CT = 2.6
[]
[]
[ICs]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = 0.012065
[]
[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'
[]
[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 = 4
height = 0.25
execute_on = 'timestep_end'
[]
[w_perim_deformed]
type = SubChannelPointValue
variable = w_perim
index = 4
height = 0.25
execute_on = 'timestep_end'
[]
[]
[Executioner]
type = Steady
[]
[Outputs]
console = true
csv = true
[]
(modules/subchannel/test/tests/problems/psbt/psbt_monolithic.i)
T_in = 359.15
# [1e+6 kg/m^2-hour] turns into kg/m^2-sec
mass_flux_in = '${fparse 1e+6 * 17.00 / 3600.}'
P_out = 4.923e6 # Pa
pin_diameter = 0.00950
[QuadSubChannelMesh]
[assembly]
type = SCMQuadAssemblyMeshGenerator
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
pin_diameter = ${pin_diameter}
side_gap = 0.00095
heated_length = 1.0
spacer_z = '0.0'
spacer_k = '0.0'
subchannel_block_id = 0
pin_block_id = 1
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
verbose_subchannel = true
implicit = true
segregated = false
friction_closure = 'MATRA'
pin_HTC_closure = 'Dittus-Boelter'
full_output = true
mixing_closure ='constant_beta'
[]
[SCMClosures]
[MATRA]
type = SCMFrictionMATRA
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[constant_beta]
type = SCMMixingConstantBeta
beta = 0.006
CT = 2.6
[]
[]
[ICs]
[q_prime_IC]
type = SCMQuadPowerIC
variable = q_prime
power = 1.0e6 # W
filename = "power_profile.txt" #type in name of file that describes radial power profile
block = fuel_pins
[]
[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 = report_mass_flux_inlet
execute_on = 'timestep_begin'
block = subchannel
[]
[]
[Postprocessors]
[report_mass_flux_inlet]
type = Receiver
default = ${mass_flux_in}
[]
[total_pressure_drop]
type = SubChannelDelta
variable = P
execute_on = "timestep_end"
[]
[T1]
type = SubChannelPointValue
variable = T
index = 0
execute_on = "timestep_end"
height = 1
[]
[T2]
type = SubChannelPointValue
variable = T
index = 7
execute_on = "timestep_end"
height = 1
[]
[T3]
type = SubChannelPointValue
variable = T
index = 14
execute_on = "timestep_end"
height = 1
[]
[T4]
type = SubChannelPointValue
variable = T
index = 21
execute_on = "timestep_end"
height = 1
[]
[T5]
type = SubChannelPointValue
variable = T
index = 28
execute_on = "timestep_end"
height = 1
[]
[T6]
type = SubChannelPointValue
variable = T
index = 35
execute_on = "timestep_end"
height = 1
[]
[]
[Outputs]
exodus = true
csv = true
[]
[Executioner]
type = Steady
[]
(modules/subchannel/validation/psbt/psbt_ss/psbt.i)
# M. Avramova et al., 2012,
# OECD/NRC Benchmark Based on NUPEC PWR
# Sub-channel and Bundle Tests (PSBT). Volume III: Departure from Nucleate Boiling
# Case:01-5237
T_in = 502.35
# [1e+6 kg/m^2-hour] turns into kg/m^2-sec
mass_flux_in = ${fparse 1e+6 * 16.95 / 3600.}
P_out = 14.72e6 # Pa
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 6
ny = 6
n_cells = 20
pitch = 0.0126
pin_diameter = 0.00950
side_gap = 0.00095
heated_length = 3.658
spacer_z = '0.0 0.229 0.457 0.686 0.914 1.143 1.372 1.600 1.829 2.057 2.286 2.515 2.743 2.972 3.200 3.429'
spacer_k = '0.7 0.4 1.0 0.4 1.0 0.4 1.0 0.4 1.0 0.4 1.0 0.4 1.0 0.4 1.0 0.4'
[]
[]
[AuxVariables]
[mdot]
block = subchannel
[]
[SumWij]
block = subchannel
[]
[P]
block = subchannel
[]
[DP]
block = subchannel
[]
[h]
block = subchannel
[]
[T]
block = subchannel
[]
[Tpin]
block = fuel_pins
[]
[rho]
block = subchannel
[]
[mu]
block = subchannel
[]
[S]
block = subchannel
[]
[w_perim]
block = subchannel
[]
[q_prime]
block = fuel_pins
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
implicit = true
segregated = false
staggered_pressure = false
verbose_subchannel = true
interpolation_scheme = exponential
friction_closure = 'MATRA'
pin_HTC_closure = 'Dittus-Boelter'
full_output = true
mixing_closure ='constant_beta'
[]
[SCMClosures]
[MATRA]
type = SCMFrictionMATRA
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
correction_factor = none
[]
[constant_beta]
type = SCMMixingConstantBeta
beta = 0.08
CT = 2.6
[]
[]
[ICs]
[q_prime_IC]
type = SCMQuadPowerIC
variable = q_prime
power = 3.23e6 # W
filename = "power_profile.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 = 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'
[]
[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
[Temp_Out_MATRIX]
type = QuadSubChannelNormalSliceValues
variable = T
execute_on = final
file_base = "Temp_Out.txt"
height = 3.658
[]
[mdot_Out_MATRIX]
type = QuadSubChannelNormalSliceValues
variable = mdot
execute_on = final
file_base = "mdot_Out.txt"
height = 3.658
[]
[mdot_In_MATRIX]
type = QuadSubChannelNormalSliceValues
variable = mdot
execute_on = final
file_base = "mdot_In.txt"
height = 0.0
[]
[]
[Postprocessors]
[total_pressure_drop]
type = SubChannelDelta
variable = P
execute_on = "timestep_end"
[]
[T1]
type = SubChannelPointValue
variable = T
index = 0
execute_on = "timestep_end"
height = 3.658
[]
[T2]
type = SubChannelPointValue
variable = T
index = 7
execute_on = "timestep_end"
height = 3.658
[]
[T3]
type = SubChannelPointValue
variable = T
index = 14
execute_on = "timestep_end"
height = 3.658
[]
[T4]
type = SubChannelPointValue
variable = T
index = 21
execute_on = "timestep_end"
height = 3.658
[]
[T5]
type = SubChannelPointValue
variable = T
index = 28
execute_on = "timestep_end"
height = 3.658
[]
[T6]
type = SubChannelPointValue
variable = T
index = 35
execute_on = "timestep_end"
height = 3.658
[]
[PinTemp]
type = SCMPinSurfaceTemperature
index = 10
height = 3.658
[]
[]
[Executioner]
type = Steady
[]
(modules/subchannel/verification/friction_model_verification/two_channel.i)
T_in = 473.15 # K
mass_flux_in = 3500 # kg /sec m2
P_out = 155e+5 # Pa
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 1
ny = 2
n_cells = 100
pitch = 0.0126
pin_diameter = 0.00950
side_gap = 0.00095
heated_length = 10.0
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[Functions]
[S_fn]
type = ParsedFunction
expression = if(y>0.0,0.002,0.001)
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
P_tol = 1e-6
T_tol = 1e-6
implicit = false
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
friction_closure = 'MATRA'
full_output = true
mixing_closure ='constant_beta'
[]
[SCMClosures]
[MATRA]
type = SCMFrictionMATRA
[]
[constant_beta]
type = SCMMixingConstantBeta
beta = 0.006
CT = 0.0
[]
[]
[ICs]
[S_ic]
type = FunctionIC
variable = S
function = S_fn
[]
[w_perim_IC]
type = ConstantIC
variable = w_perim
value = 0.34188034
[]
[q_prime_IC]
type = ConstantIC
variable = q_prime
value = 0.0
[]
[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'
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Outputs]
csv = true
[]
[Postprocessors]
[mdot_1]
type = SubChannelPointValue
variable = mdot
index = 0
execute_on = 'initial timestep_end'
height = 10.0
[]
[mdot_2]
type = SubChannelPointValue
variable = mdot
index = 1
execute_on = 'initial timestep_end'
height = 10.0
[]
[]
[Executioner]
type = Steady
[]
################################################################################
# A multiapp that projects data to a detailed mesh
################################################################################
[MultiApps]
[viz]
type = FullSolveMultiApp
input_files = "3d.i"
execute_on = "timestep_end"
[]
[]
[Transfers]
[xfer]
type = SCMSolutionTransfer
to_multi_app = viz
variable = 'mdot SumWij P DP h T rho mu q_prime S'
[]
[]
(modules/subchannel/validation/psbt/psbt_null_transient/psbt_transient.i)
# This is an input file based on M. Avramova et al. 2012,
# OECD/NRC Benchmark Based on NUPEC PWR
# Sub-channel and Bundle Tests (PSBT). Volume III: Departure from Nucleate Boiling
T_in = 359.15
# [1e+6 kg/m^2-hour] turns into kg/m^2-sec
mass_flux_in = '${fparse 1e+6 * 17.00 / 3600.}'
P_out = 4.923e6 # Pa
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 6
ny = 6
n_cells = 50
pitch = 0.0126
pin_diameter = 0.00950
side_gap = 0.00095
heated_length = 3.658
spacer_z = '0.0 0.229 0.457 0.686 0.914 1.143 1.372 1.600 1.829 2.057 2.286 2.515 2.743 2.972 3.200 3.429'
spacer_k = '0.7 0.4 1.0 0.4 1.0 0.4 1.0 0.4 1.0 0.4 1.0 0.4 1.0 0.4 1.0 0.4'
[]
[]
[UserObjects]
[steady_sln]
type = SolutionUserObject
mesh = psbt_ss_out.e
timestep = LATEST
system_variables = 'mdot SumWij P DP h T rho mu S w_perim q_prime'
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
P_tol = 1e-6
T_tol = 1e-6
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
restart_file_base = psbt_SS_out_cp/LATEST
skip_additional_restart_data = true
friction_closure = 'MATRA'
mixing_closure ='constant_beta'
pin_HTC_closure = 'Dittus-Boelter'
[]
[SCMClosures]
[MATRA]
type = SCMFrictionMATRA
[]
[constant_beta]
type = SCMMixingConstantBeta
beta = 0.006
CT = 2.0
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[]
[Functions]
[mdot_ic_fn]
type = SolutionFunction
solution = steady_sln
from_variable = mdot
[]
[P_ic_fn]
type = SolutionFunction
solution = steady_sln
from_variable = P
[]
[DP_ic_fn]
type = SolutionFunction
solution = steady_sln
from_variable = DP
[]
[h_ic_fn]
type = SolutionFunction
solution = steady_sln
from_variable = h
[]
[T_ic_fn]
type = SolutionFunction
solution = steady_sln
from_variable = T
[]
[rho_ic_fn]
type = SolutionFunction
solution = steady_sln
from_variable = rho
[]
[Mu_ic_fn]
type = SolutionFunction
solution = steady_sln
from_variable = mu
[]
[]
[ICs]
[q_prime_IC]
type = SCMQuadPowerIC
variable = q_prime
power = 3.44e6 # W
filename = "power_profile.txt"
[]
[T_ic]
type = FunctionIC
variable = T
function = T_ic_fn
[]
[P_ic]
type = FunctionIC
variable = P
function = P_ic_fn
[]
[DP_ic]
type = FunctionIC
variable = DP
function = DP_ic_fn
[]
[Viscosity_ic]
type = FunctionIC
variable = mu
function = Mu_ic_fn
[]
[rho_ic]
type = FunctionIC
variable = rho
function = rho_ic_fn
[]
[h_ic]
type = FunctionIC
variable = h
function = h_ic_fn
[]
[mdot_ic]
type = FunctionIC
variable = mdot
function = mdot_ic_fn
[]
[]
[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
[Temp_Out_MATRIX]
type = QuadSubChannelNormalSliceValues
variable = T
execute_on = TIMESTEP_END
file_base = "Temp_Out.txt"
height = 3.658
[]
[mdot_Out_MATRIX]
type = QuadSubChannelNormalSliceValues
variable = mdot
execute_on = TIMESTEP_END
file_base = "mdot_Out.txt"
height = 3.658
[]
[mdot_In_MATRIX]
type = QuadSubChannelNormalSliceValues
variable = mdot
execute_on = TIMESTEP_END
file_base = "mdot_In.txt"
height = 0.0
[]
[]
[Executioner]
type = Transient
start_time = 0.0
end_time = 0.2
dt = 0.1
[]
################################################################################
# A multiapp that projects data to a detailed mesh
################################################################################
[MultiApps]
[viz]
type = FullSolveMultiApp
input_files = "3d.i"
execute_on = "timestep_end"
[]
[]
[Transfers]
[xfer]
type = SCMSolutionTransfer
to_multi_app = viz
variable = 'mdot SumWij P DP h T rho mu q_prime S'
[]
[]
(modules/subchannel/test/tests/mesh/quad_assembly/coords.i)
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 3
ny = 3
n_cells = 10
pitch = 0.25
pin_diameter = 0.125
side_gap = 0.1
heated_length = 1
spacer_k = '0.0'
spacer_z = '0'
[]
[]
(modules/subchannel/test/tests/mesh/quad_assembly/subchannel_number.i)
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 1
ny = 1
n_cells = 10
pitch = 0.25
pin_diameter = 0.125
side_gap = 0.1
heated_length = 1
spacer_k = '0.5'
spacer_z = '0'
[]
[]
(modules/subchannel/test/tests/postprocessors/quadsubchannelpointvalue/test_error.i)
T_in = 359.15
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 3
ny = 3
n_cells = 10
pitch = 0.25
pin_diameter = 0.125
side_gap = 0.1
heated_length = 1
spacer_k = '0.0'
spacer_z = '0'
[]
[]
[AuxVariables]
[T]
[]
[]
[ICs]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[]
[Problem]
type = NoSolveProblem
[]
[Postprocessors]
[T]
type = SubChannelPointValue
variable = T
index = 4
execute_on = 'initial timestep_end'
height = 5
[]
[]
[Outputs]
csv = true
[]
[Executioner]
type = Transient
start_time = 0.0
end_time = 10.0
dt = 1.0
[]
(modules/subchannel/test/tests/ics/quad_wetted_perimeter/test.i)
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 3
ny = 3
n_cells = 10
pitch = 0.25
pin_diameter = 0.125
side_gap = 0.1
heated_length = 1
spacer_k = '0.0'
spacer_z = '0'
[]
[]
[Variables]
[w_perim]
[]
[]
[ICs]
[w_perim_IC]
type = SCMQuadWettedPerimIC
variable = w_perim
[]
[]
[Postprocessors]
[center]
type = SubChannelPointValue
variable = w_perim
index = 4
execute_on = 'timestep_end'
height = 0.5
[]
[edge]
type = SubChannelPointValue
variable = w_perim
index = 1
execute_on = 'timestep_end'
height = 0.5
[]
[corner]
type = SubChannelPointValue
variable = w_perim
index = 0
execute_on = 'timestep_end'
height = 0.5
[]
[]
[Problem]
solve = false
[]
[Executioner]
type = Steady
[]
[Outputs]
exodus = false
csv = true
[]
(modules/subchannel/validation/psbt/psbt_null_transient/psbt_ss.i)
# This is an input file based on M. Avramova et. all 2012,
# OECD/NRC Benchmark Based on NUPEC PWR
# Sub-channel and Bundle Tests (PSBT). Volume III: Departure from Nucleate Boiling
T_in = 359.15
# [1e+6 kg/m^2-hour] turns into kg/m^2-sec
mass_flux_in = '${fparse 1e+6 * 17.00 / 3600.}'
P_out = 4.923e6 # Pa
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 6
ny = 6
n_cells = 50
pitch = 0.0126
pin_diameter = 0.00950
side_gap = 0.00095
heated_length = 3.658
spacer_z = '0.0 0.229 0.457 0.686 0.914 1.143 1.372 1.600 1.829 2.057 2.286 2.515 2.743 2.972 3.200 3.429'
spacer_k = '0.7 0.4 1.0 0.4 1.0 0.4 1.0 0.4 1.0 0.4 1.0 0.4 1.0 0.4 1.0 0.4'
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
P_tol = 1e-6
T_tol = 1e-6
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
friction_closure = 'MATRA'
full_output = true
mixing_closure ='constant_beta'
pin_HTC_closure = 'Dittus-Boelter'
[]
[SCMClosures]
[MATRA]
type = SCMFrictionMATRA
[]
[constant_beta]
type = SCMMixingConstantBeta
beta = 0.006
CT = 2.0
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[]
[ICs]
[q_prime_IC]
type = SCMQuadPowerIC
variable = q_prime
power = 3.44e6 # W
filename = "power_profile.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 = 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'
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Outputs]
exodus = true
checkpoint = true
[Temp_Out_MATRIX]
type = QuadSubChannelNormalSliceValues
variable = T
execute_on = final
file_base = "Temp_Out.txt"
height = 3.658
[]
[mdot_Out_MATRIX]
type = QuadSubChannelNormalSliceValues
variable = mdot
execute_on = final
file_base = "mdot_Out.txt"
height = 3.658
[]
[mdot_In_MATRIX]
type = QuadSubChannelNormalSliceValues
variable = mdot
execute_on = final
file_base = "mdot_In.txt"
height = 0.0
[]
[]
[Executioner]
type = Steady
[]
################################################################################
# A multiapp that projects data to a detailed mesh
################################################################################
[MultiApps]
[viz]
type = FullSolveMultiApp
input_files = "3d.i"
execute_on = "timestep_end"
[]
[]
[Transfers]
[xfer]
type = SCMSolutionTransfer
to_multi_app = viz
variable = 'mdot SumWij P DP h T rho mu q_prime'
[]
[]
(modules/subchannel/test/tests/restart/steady.i)
T_in = 359.15
# [1e+6 kg/m^2-hour] turns into kg/m^2-sec
mass_flux_in = '${fparse 1e+6 * 17.00 / 3600.}'
P_out = 4.923e6 # Pa
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 3
ny = 3
n_cells = 10
pitch = 0.0126
pin_diameter = 0.00950
side_gap = 0.00095
heated_length = 1
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[AuxVariables]
[Dpin]
block = fuel_pins
[]
[Tduct]
block = subchannel
[]
[Tpin]
block = fuel_pins
[]
[duct_heat_flux]
block = subchannel
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
friction_closure = 'MATRA'
full_output = true
mixing_closure ='constant_beta'
pin_HTC_closure = 'Dittus-Boelter'
[]
[SCMClosures]
[MATRA]
type = SCMFrictionMATRA
[]
[constant_beta]
type = SCMMixingConstantBeta
beta = 0.006
CT = 1.8
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[]
[ICs]
[q_prime_ic]
type = SCMQuadPowerIC
variable = q_prime
power = 1e6
filename = "power_profile.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
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = 0.00950
[]
[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'
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Outputs]
exodus = true
checkpoint = true
hide = 'ff'
[]
[Executioner]
type = Steady
[]
(modules/subchannel/validation/PNNL_12_pin/transient/2X6_transient.i)
T_in = 297.039 # K
P_out = 101325 # Pa
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 7
ny = 3
n_cells = 60
pitch = 0.014605
pin_diameter = 0.012065
side_gap = 0.0015875
unheated_length_entry = 0.3048
heated_length = 1.2192
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
P_tol = 1e-6
T_tol = 1e-6
compute_density = true
compute_viscosity = true
compute_power = false
P_out = ${P_out}
friction_closure = 'MATRA'
full_output = true
mixing_closure ='constant_beta'
pin_HTC_closure = 'Dittus-Boelter'
[]
[SCMClosures]
[MATRA]
type = SCMFrictionMATRA
[]
[constant_beta]
type = SCMMixingConstantBeta
beta = 0.006
CT = 2.6
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[]
[ICs]
[q_prime_IC]
type = SCMQuadPowerIC
variable = q_prime
power = 0.0 # W
filename = "power_profile.txt"
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[P_ic]
type = ConstantIC
variable = P
value = 0.0
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = 0.012065
[]
[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.012101767481985
[]
[]
[Functions]
[mass_flux]
type = PiecewiseLinear
xy_data = '
5.0 122.2645
10.0 42.7926'
[]
[]
[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]
[mass_flux_in]
type = FunctionValuePostprocessor
function = mass_flux
execute_on = 'initial timestep_end'
[]
[mdot]
type = SubChannelPointValue
variable = mdot
index = 4
execute_on = 'initial timestep_end'
height = 0.4953
[]
[mdot2]
type = SubChannelPointValue
variable = mdot
index = 4
execute_on = 'initial timestep_end'
height = 0.0
[]
[]
[Outputs]
exodus = true
csv = true
[]
[Executioner]
type = Transient
nl_rel_tol = 0.9
l_tol = 0.9
start_time = 0.0
end_time = 10
dt = 1.0
[]
################################################################################
# A multiapp that projects data to a detailed mesh
################################################################################
[MultiApps]
[viz]
type = TransientMultiApp
input_files = "3d.i"
execute_on = "timestep_end"
[]
[]
[Transfers]
[xfer]
type = SCMSolutionTransfer
to_multi_app = viz
transfer_type = subchannel
variable = 'mdot SumWij P DP h T rho mu S'
[]
[xfer_q_prime]
type = SCMSolutionTransfer
to_multi_app = viz
transfer_type = pin
variable = q_prime
[]
[]
(modules/subchannel/validation/PNNL_12_pin/steady_state/2X6_ss.i)
[GlobalParams]
######## Geometry #
nx = 7
ny = 3
n_cells = 48
n_blocks = 1
pitch = 0.014605
pin_diameter = 0.012065
side_gap = 0.0015875
heated_length = 1.2192
spacer_z = '0.0'
spacer_k = '0.0'
[]
######## BC's #################
T_in = 297.039 # K
P_out = 101325 # Pa
[QuadSubChannelMesh]
[assembly]
type = SCMQuadAssemblyMeshGenerator
subchannel_block_id = 0
pin_block_id = 1
[]
[]
[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
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
P_tol = 1e-6
T_tol = 1e-6
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
implicit = true
segregated = false
friction_closure = 'MATRA'
pin_HTC_closure = 'Dittus-Boelter'
full_output = true
mixing_closure ='constant_beta'
[]
[SCMClosures]
[MATRA]
type = SCMFrictionMATRA
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[constant_beta]
type = SCMMixingConstantBeta
beta = 0.006
CT = 2.6
[]
[]
[ICs]
[q_prime_IC]
type = SCMQuadPowerIC
variable = q_prime
power = 5460 # W
filename = "power_profile.txt"
block = fuel_pins
[]
[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'
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = 131.43435930715006
execute_on = 'timestep_begin'
[]
[]
[Outputs]
exodus = true
csv = true
[mdot_in_MATRIX]
type = QuadSubChannelNormalSliceValues
variable = mdot
execute_on = final
file_base = "mdot_in.txt"
height = 0.0
[]
[rho_in_MATRIX]
type = QuadSubChannelNormalSliceValues
variable = rho
execute_on = final
file_base = "rho_in.txt"
height = 0.0
[]
[mdot_out_MATRIX]
type = QuadSubChannelNormalSliceValues
variable = mdot
execute_on = final
file_base = "mdot_out.txt"
height = 1.2192
[]
[rho_out_MATRIX]
type = QuadSubChannelNormalSliceValues
variable = rho
execute_on = final
file_base = "rho_out.txt"
height = 1.2192
[]
[mdot_MATRIX]
type = QuadSubChannelNormalSliceValues
variable = mdot
execute_on = final
file_base = "mdot_075.txt"
height = 0.9144
[]
[T_in_MATRIX]
type = QuadSubChannelNormalSliceValues
variable = T
execute_on = final
file_base = "T_in.txt"
height = 0.0
[]
[T_out_MATRIX]
type = QuadSubChannelNormalSliceValues
variable = T
execute_on = final
file_base = "T_out.txt"
height = 1.2192
[]
[]
[Postprocessors]
[mdot7]
type = SubChannelPointValue
variable = mdot
index = 7
execute_on = 'initial timestep_end'
height = 0.9144
[]
[mdot8]
type = SubChannelPointValue
variable = mdot
index = 8
execute_on = 'initial timestep_end'
height = 0.9144
[]
[mdot9]
type = SubChannelPointValue
variable = mdot
index = 9
execute_on = 'initial timestep_end'
height = 0.9144
[]
[mdot10]
type = SubChannelPointValue
variable = mdot
index = 10
execute_on = 'initial timestep_end'
height = 0.9144
[]
[mdot11]
type = SubChannelPointValue
variable = mdot
index = 11
execute_on = 'initial timestep_end'
height = 0.9144
[]
[mdot12]
type = SubChannelPointValue
variable = mdot
index = 12
execute_on = 'initial timestep_end'
height = 0.9144
[]
[mdot13]
type = SubChannelPointValue
variable = mdot
index = 13
execute_on = 'initial timestep_end'
height = 0.9144
[]
[]
[Executioner]
type = Steady
[]
################################################################################
# A multiapp that projects data to a detailed mesh
################################################################################
[MultiApps]
[viz]
type = FullSolveMultiApp
input_files = "3d.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/test/tests/restart/transient.i)
T_in = 359.15
# [1e+6 kg/m^2-hour] turns into kg/m^2-sec
mass_flux_in = '${fparse 1e+6 * 17.00 / 3600.}'
P_out = 4.923e6 # Pa
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 3
ny = 3
n_cells = 10
pitch = 0.0126
pin_diameter = 0.00950
side_gap = 0.00095
heated_length = 1
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[UserObjects]
[steady_sln]
type = SolutionUserObject
mesh = steady_out.e
timestep = LATEST
system_variables = 'mdot SumWij P DP h T Tpin rho mu S w_perim q_prime'
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[AuxVariables]
[Dpin]
block = fuel_pins
[]
[Tduct]
block = subchannel
[]
[Tpin]
block = fuel_pins
[]
[duct_heat_flux]
block = subchannel
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
restart_file_base = steady_out_cp/LATEST
skip_additional_restart_data = true
allow_initial_conditions_with_restart = true
friction_closure = 'MATRA'
full_output = true
mixing_closure ='constant_beta'
pin_HTC_closure = 'Dittus-Boelter'
[]
[SCMClosures]
[MATRA]
type = SCMFrictionMATRA
[]
[constant_beta]
type = SCMMixingConstantBeta
beta = 0.006
CT = 1.8
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[]
[Functions]
[mdot_ic_fn]
type = SolutionFunction
solution = steady_sln
from_variable = mdot
[]
[P_ic_fn]
type = SolutionFunction
solution = steady_sln
from_variable = P
[]
[DP_ic_fn]
type = SolutionFunction
solution = steady_sln
from_variable = DP
[]
[h_ic_fn]
type = SolutionFunction
solution = steady_sln
from_variable = h
[]
[T_ic_fn]
type = SolutionFunction
solution = steady_sln
from_variable = T
[]
[rho_ic_fn]
type = SolutionFunction
solution = steady_sln
from_variable = rho
[]
[mu_ic_fn]
type = SolutionFunction
solution = steady_sln
from_variable = mu
[]
[]
[ICs]
[q_prime_ic]
type = SCMQuadPowerIC
variable = q_prime
power = 1e6
filename = "power_profile.txt"
[]
[T_ic]
type = FunctionIC
variable = T
function = T_ic_fn
[]
[P_ic]
type = FunctionIC
variable = P
function = P_ic_fn
[]
[DP_ic]
type = FunctionIC
variable = DP
function = DP_ic_fn
[]
[viscosity_ic]
type = FunctionIC
variable = mu
function = mu_ic_fn
[]
[rho_ic]
type = FunctionIC
variable = rho
function = rho_ic_fn
[]
[h_ic]
type = FunctionIC
variable = h
function = h_ic_fn
[]
[mdot_ic]
type = FunctionIC
variable = mdot
function = mdot_ic_fn
[]
[]
[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
hide = ff
[]
[Executioner]
type = Transient
start_time = 0.0
end_time = 0.2
dt = 0.1
[]
(modules/subchannel/examples/heating_test/3X3_channel.i)
mass_flux_in = 3500 # kg /sec m2
T_in = 297.039 # K
P_out = 101325 # Pa
pitch = 0.0126
unheated_length_entry = 2.5
heated_length = 5.0
unheated_length_exit = 2.5
n_cells = 20
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 3
ny = 3
n_cells = '${n_cells}'
pitch = '${pitch}'
pin_diameter = 0.00950
side_gap = 0.00095
unheated_length_entry = '${unheated_length_entry}'
heated_length = '${heated_length}'
unheated_length_exit = '${unheated_length_exit}'
spacer_z ='0.0'
spacer_k ='0.0'
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
P_tol = 1e-6
T_tol = 1e-6
full_output = true
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
friction_closure = 'MATRA'
mixing_closure ='constant_beta'
pin_HTC_closure = 'Dittus-Boelter'
[]
[SCMClosures]
[MATRA]
type = SCMFrictionMATRA
[]
[constant_beta]
type = SCMMixingConstantBeta
beta = 0.006
CT = 2.0
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[]
[ICs]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[q_prime_IC]
type = SCMQuadPowerIC
variable = q_prime
power = 10000.0 # W
filename = "power_profile.txt"
[]
[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.00950
[]
[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'
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Outputs]
exodus = true
[h_3]
type = QuadSubChannelNormalSliceValues
variable = h
execute_on = final
file_base = "h_3.txt"
height = 10.0
[]
[h_2]
type = QuadSubChannelNormalSliceValues
variable = h
execute_on = final
file_base = "h_2.txt"
height = 7.5
[]
[h_1]
type = QuadSubChannelNormalSliceValues
variable = h
execute_on = final
file_base = "h_1.txt"
height = 2.5
[]
[h_0]
type = QuadSubChannelNormalSliceValues
variable = h
execute_on = final
file_base = "h_0.txt"
height = 0.0
[]
[mdot_3]
type = QuadSubChannelNormalSliceValues
variable = mdot
execute_on = final
file_base = "mdot_3.txt"
height = 10.0
[]
[mdot_2]
type = QuadSubChannelNormalSliceValues
variable = mdot
execute_on = final
file_base = "mdot_2.txt"
height = 7.5
[]
[mdot_1]
type = QuadSubChannelNormalSliceValues
variable = mdot
execute_on = final
file_base = "mdot_1.txt"
height = 2.5
[]
[mdot_0]
type = QuadSubChannelNormalSliceValues
variable = mdot
execute_on = final
file_base = "mdot_0.txt"
height = 0.0
[]
[]
[Executioner]
type = Steady
[]
################################################################################
# A multiapp that projects data to a detailed mesh
################################################################################
[MultiApps]
[viz]
type = FullSolveMultiApp
input_files = "3d.i"
execute_on = "timestep_end"
[]
[]
[Transfers]
[xfer]
type = SCMSolutionTransfer
to_multi_app = viz
transfer_type = subchannel
variable = 'mdot SumWij P DP h T rho mu S w_perim'
[]
[xfer_q_prime]
type = SCMSolutionTransfer
to_multi_app = viz
transfer_type = pin
variable = q_prime
[]
[]
(modules/subchannel/examples/coupling/thermo_mech/quad/one_pin_problem.i)
######## BC's #################
T_in = 359.15
# [1e+6 kg/m^2-hour] turns into kg/m^2-sec
mass_flux_in = '${fparse 1e+6 * 17.00 / 3600.}'
P_out = 4.923e6 # Pa
heated_length = 1.0
######## Geometry #
[GlobalParams]
nx = 2
ny = 2
n_cells = 25
pitch = 0.0126
pin_diameter = 0.00950
side_gap = 0.00095
heated_length = ${heated_length}
spacer_z = '0.0'
spacer_k = '0.0'
power = 100000.0 # W
[]
[QuadSubChannelMesh]
[subchannel]
type = SCMQuadAssemblyMeshGenerator
[]
[]
[Functions]
[axial_heat_rate]
type = ParsedFunction
expression = '(pi/2)*sin(pi*z/L)'
symbol_names = 'L'
symbol_values = '${heated_length}'
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
verbose_subchannel = true
friction_closure = 'MATRA'
mixing_closure ='constant_beta'
pin_HTC_closure = 'Dittus-Boelter'
[]
[SCMClosures]
[MATRA]
type = SCMFrictionMATRA
[]
[constant_beta]
type = SCMMixingConstantBeta
beta = 0.006
CT = 2.6
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[]
[ICs]
[q_prime_IC]
type = SCMQuadPowerIC
variable = q_prime
filename = "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 = 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'
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = ${mass_flux_in}
execute_on = 'timestep_begin'
[]
[]
[Outputs]
exodus = true
[Temp_Out_MATRIX]
type = QuadSubChannelNormalSliceValues
variable = T
execute_on = final
file_base = "Temp_Out.txt"
height = 1.0
[]
[mdot_Out_MATRIX]
type = QuadSubChannelNormalSliceValues
variable = mdot
execute_on = final
file_base = "mdot_Out.txt"
height = 1.0
[]
[mdot_In_MATRIX]
type = QuadSubChannelNormalSliceValues
variable = mdot
execute_on = final
file_base = "mdot_In.txt"
height = 0.0
[]
[]
[Executioner]
type = Steady
petsc_options_iname = '-pc_type -pc_hypre_type'
petsc_options_value = 'hypre boomeramg'
fixed_point_max_its = 8
fixed_point_min_its = 6
fixed_point_rel_tol = 1e-6
[]
################################################################################
[MultiApps]
################################################################################
# Couple to Thermo-Mechanical Pin model (uses kernels available in MOOSE)
################################################################################
[sub]
type = FullSolveMultiApp
input_files = one_pin_problem_sub.i
execute_on = 'timestep_end'
positions = '0 0 0 '
output_in_position = true
bounding_box_padding = '0 0 0.01'
[]
################################################################################
# A multiapp that projects the solution to a detailed mesh for visualization purposes
################################################################################
[viz]
type = FullSolveMultiApp
input_files = '3d.i'
execute_on = 'FINAL'
[]
[]
[Transfers]
[Tpin] # send pin surface temperature to pin model,
type = MultiAppGeneralFieldNearestLocationTransfer
to_multi_app = sub
variable = Pin_surface_temperature
source_variable = Tpin
execute_on = 'timestep_end'
greedy_search = true
[]
[diameter] # send diameter information from pin model to subchannel
type = MultiAppGeneralFieldNearestLocationTransfer
from_multi_app = sub
variable = Dpin
source_variable = pin_diameter_deformed
from_boundaries = right
execute_on = 'timestep_end'
greedy_search = true
[]
[q_prime] # send heat flux from pin model to subchannel
type = MultiAppGeneralFieldNearestLocationTransfer
from_multi_app = sub
variable = q_prime
source_variable = q_prime
from_boundaries = right
execute_on = 'timestep_end'
greedy_search = true
[]
[subchannel_transfer]
type = SCMSolutionTransfer
to_multi_app = viz
variable = 'mdot SumWij P DP h T rho mu S w_perim'
[]
[pin_transfer]
type = SCMSolutionTransfer
transfer_type = pin
to_multi_app = viz
variable = 'Tpin Dpin q_prime'
[]
[]
(modules/subchannel/test/tests/problems/psbt/psbt_explicit.i)
T_in = 359.15
# [1e+6 kg/m^2-hour] turns into kg/m^2-sec
mass_flux_in = '${fparse 1e+6 * 17.00 / 3600.}'
P_out = 4.923e6 # Pa
pin_diameter = 0.00950
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
pin_diameter = ${pin_diameter}
side_gap = 0.00095
heated_length = 1.0
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
verbose_subchannel = true
friction_closure = 'MATRA'
pin_HTC_closure = 'Dittus-Boelter'
full_output = true
mixing_closure ='constant_beta'
[]
[SCMClosures]
[MATRA]
type = SCMFrictionMATRA
[]
[Dittus-Boelter]
type = SCMHTCDittusBoelter
[]
[constant_beta]
type = SCMMixingConstantBeta
beta = 0.006
CT = 2.6
[]
[]
[ICs]
[q_prime_IC]
type = SCMQuadPowerIC
variable = q_prime
power = 1.0e6 # W
filename = "power_profile.txt" #type in name of file that describes radial power profile
block = fuel_pins
[]
[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 = report_mass_flux_inlet
execute_on = 'timestep_begin'
block = subchannel
[]
[]
[Postprocessors]
[report_mass_flux_inlet]
type = Receiver
default = ${mass_flux_in}
[]
[total_pressure_drop]
type = SubChannelDelta
variable = P
execute_on = "timestep_end"
[]
[T1]
type = SubChannelPointValue
variable = T
index = 0
execute_on = "timestep_end"
height = 1
[]
[T2]
type = SubChannelPointValue
variable = T
index = 7
execute_on = "timestep_end"
height = 1
[]
[T3]
type = SubChannelPointValue
variable = T
index = 14
execute_on = "timestep_end"
height = 1
[]
[T4]
type = SubChannelPointValue
variable = T
index = 21
execute_on = "timestep_end"
height = 1
[]
[T5]
type = SubChannelPointValue
variable = T
index = 28
execute_on = "timestep_end"
height = 1
[]
[T6]
type = SubChannelPointValue
variable = T
index = 35
execute_on = "timestep_end"
height = 1
[]
[]
[Outputs]
csv = true
[]
[Executioner]
type = Steady
[]
(modules/subchannel/test/tests/ics/quad_flow_area/test.i)
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 3
ny = 3
n_cells = 10
pitch = 0.25
pin_diameter = 0.125
side_gap = 0.1
heated_length = 1
spacer_k = '0.0'
spacer_z = '0'
[]
[]
[Variables]
[S]
[]
[]
[ICs]
[S_IC]
type = SCMQuadFlowAreaIC
variable = S
[]
[]
[Postprocessors]
[center]
type = SubChannelPointValue
variable = S
index = 4
execute_on = 'timestep_end'
height = 0.5
[]
[edge]
type = SubChannelPointValue
variable = S
index = 1
execute_on = 'timestep_end'
height = 0.5
[]
[corner]
type = SubChannelPointValue
variable = S
index = 0
execute_on = 'timestep_end'
height = 0.5
[]
[]
[Problem]
solve = false
[]
[Executioner]
type = Steady
[]
[Outputs]
exodus = false
csv = true
[]
(modules/subchannel/test/tests/outputs/normalslicevalues/test.i)
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadAssemblyMeshGenerator
nx = 3
ny = 3
n_cells = 10
pitch = 0.25
pin_diameter = 0.125
side_gap = 0.1
heated_length = 1
spacer_k = '0.0'
spacer_z = '0'
[]
[]
[Functions]
[T_fn]
type = ParsedFunction
expression = if(z>0.5,100.0,50.0)
[]
[]
[Variables]
[T]
[]
[]
[ICs]
[T_ic]
type = FunctionIC
variable = T
function = T_fn
[]
[]
[Outputs]
exodus = false
[Temp_Out_MATRIX]
type = QuadSubChannelNormalSliceValues
variable = T
execute_on = final
file_base = "Temp_out_matrix.csv"
height = 0.55
[]
[]
[Problem]
solve = false
[]
[Executioner]
type = Steady
[]