- gap(Its an added distance between a perimetric pin and the duct: Edge Pitch W = (pitch/2 - pin_diameter/2 + gap) [m]
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:(Its an added distance between a perimetric pin and the duct: Edge Pitch W = (pitch/2 - pin_diameter/2 + gap) [m]
- 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]
SCMQuadSubChannelMeshGenerator
Creates a mesh of 1D subchannels in a square lattice arrangement
Overview
This mesh generator creates the mesh were the SCM
solution variables associated with the subchannels live. The user needs to provide the number of subchannels "nx" in the -x direction and "ny" in the -y direction. The number of cells in the -z direction is given by "n_cells". The distance of the pins from eachother is given by the "pitch" parameter and the total length of the sub-assembly is defined by the parameters: "heated_length","unheated_length_entry","unheated_length_entry". The fuel pin diameter is given by "pin_diameter". The user also has the ability to define the effect of spacers or mixing vanes on the subassembly by defining their axial location "spacer_z" and a local presure from loss "spacer_k". Last the "spacer_k" is an added distance between a perimetric pin and the duct, such that: Edge Pitch W = (pitch/2 - pin_diameter/2 + gap). The center of the mesh is the origin.
Example Input File Syntax
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadSubChannelMeshGenerator
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
pin_diameter = ${pin_diameter}
gap = 0.00095 # the half gap between sub-channel assemblies
heated_length = 1.0
spacer_z = '0.0'
spacer_k = '0.0'
[]
[fuel_pins]
type = SCMQuadPinMeshGenerator
input = sub_channel
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
heated_length = 1.0
[]
[]
Input Parameters
- Kij0.5Lateral form loss coefficient [-]
Default:0.5
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Lateral form loss coefficient [-]
- block_id0Domain Index
Default:0
C++ Type:unsigned int
Controllable:No
Description:Domain Index
- 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
- 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]
- 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/problems/psbt/psbt_explicit_v2.i)
- (modules/subchannel/test/tests/postprocessors/quadsubchannelpointvalue/test_error.i)
- (modules/subchannel/examples/coupling/thermo_mech/quad/one_pin_problem.i)
- (modules/subchannel/test/tests/outputs/normalslicevalues/test.i)
- (modules/subchannel/test/tests/mesh/quad_sub_channel_mesh/subchannel_number.i)
- (modules/subchannel/test/tests/ics/quad_power/test.i)
- (modules/subchannel/test/tests/ics/quad_flow_area/test.i)
- (modules/subchannel/verification/friction_model_verification/two_channel.i)
- (modules/subchannel/test/tests/problems/psbt/psbt_explicit_staggered.i)
- (modules/subchannel/examples/heating_test/3X3_channel.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/ics/quad_wetted_perimeter/test.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/validation/PNNL_12_pin/steady_state/2X6_ss.i)
- (modules/subchannel/test/tests/problems/psbt/psbt_explicit.i)
- (modules/subchannel/verification/enthalpy_mixing_verification/two_channel.i)
- (modules/subchannel/test/tests/mesh/quad_sub_channel_pin_mesh/coords.i)
- (modules/subchannel/test/tests/postprocessors/quadsubchannelpointvalue/test.i)
- (modules/subchannel/test/tests/problems/psbt/psbt_implicit.i)
- (modules/subchannel/validation/psbt/psbt_null_transient/psbt_ss.i)
- (modules/subchannel/test/tests/problems/coupling/main.i)
- (modules/subchannel/test/tests/mesh/quad_sub_channel_mesh/coords.i)
- (modules/subchannel/test/tests/restart/steady.i)
- (modules/subchannel/test/tests/problems/psbt/psbt_monolithic.i)
- (modules/subchannel/test/tests/restart/transient.i)
- (modules/subchannel/examples/mesh_generator/psbt_mesh_generator_test.i)
- (modules/subchannel/validation/psbt/psbt_ss/psbt.i)
- (modules/subchannel/validation/psbt/psbt_null_transient/psbt_transient.i)
- (modules/subchannel/test/tests/problems/psbt/psbt_full_monolithic_staggered.i)
- (modules/subchannel/verification/friction_model_verification/two_channel2.i)
- (modules/subchannel/test/tests/problems/psbt/psbt_full_monolithic.i)
- (modules/subchannel/validation/PNNL_12_pin/transient/2X6_transient.i)
- (modules/subchannel/validation/Blockage/PNNL_7x7/7X7blockage70.i)
nx
C++ Type:unsigned int
Controllable:No
Description:Number of channels in the x direction [-]
ny
C++ Type:unsigned int
Controllable:No
Description:Number of channels in the y direction [-]
n_cells
C++ Type:unsigned int
Controllable:No
Description:The number of cells in the axial direction
pitch
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Pitch [m]
heated_length
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Heated length [m]
unheated_length_entry
Default:0
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Unheated length at entry [m]
unheated_length_entry
Default:0
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Unheated length at entry [m]
pin_diameter
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Rod diameter [m]
spacer_z
C++ Type:std::vector<double>
Unit:(no unit assumed)
Controllable:No
Description:Axial location of spacers/vanes/mixing_vanes [m]
spacer_k
C++ Type:std::vector<double>
Unit:(no unit assumed)
Controllable:No
Description:K-loss coefficient of spacers/vanes/mixing_vanes [-]
spacer_k
C++ Type:std::vector<double>
Unit:(no unit assumed)
Controllable:No
Description:K-loss coefficient of spacers/vanes/mixing_vanes [-]
(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 = SCMQuadSubChannelMeshGenerator
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
pin_diameter = ${pin_diameter}
gap = 0.00095 # the half gap between sub-channel assemblies
heated_length = 1.0
spacer_z = '0.0'
spacer_k = '0.0'
[]
[fuel_pins]
type = SCMQuadPinMeshGenerator
input = sub_channel
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
heated_length = 1.0
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
beta = 0.006
CT = 2.6
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
verbose_subchannel = true
[]
[ICs]
[S_IC]
type = SCMQuadFlowAreaIC
variable = S
[]
[w_perim_IC]
type = SCMQuadWettedPerimIC
variable = w_perim
[]
[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}
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = ${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
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
block = sub_channel
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = report_mass_flux_inlet
execute_on = 'timestep_begin'
block = sub_channel
[]
[]
[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/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 = SCMQuadSubChannelMeshGenerator
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
pin_diameter = ${pin_diameter}
gap = 0.00095 # the half gap between sub-channel assemblies
heated_length = 1.0
spacer_z = '0.0'
spacer_k = '0.0'
[]
[fuel_pins]
type = SCMQuadPinMeshGenerator
input = sub_channel
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
heated_length = 1.0
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
beta = 0.006
CT = 2.6
compute_density = true
compute_viscosity = true
compute_power = true
P_out = report_pressure_outlet
verbose_subchannel = true
default_friction_model = false
constant_beta = false
[]
[ICs]
[S_IC]
type = SCMQuadFlowAreaIC
variable = S
[]
[w_perim_IC]
type = SCMQuadWettedPerimIC
variable = w_perim
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = ${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
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
block = sub_channel
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = report_mass_flux_inlet
execute_on = 'timestep_begin'
block = sub_channel
[]
[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/test/tests/postprocessors/quadsubchannelpointvalue/test_error.i)
T_in = 359.15
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadSubChannelMeshGenerator
nx = 3
ny = 3
n_cells = 10
pitch = 0.25
pin_diameter = 0.125
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/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
gap = 0.00095
heated_length = ${heated_length}
spacer_z = '0.0'
spacer_k = '0.0'
power = 100000.0 # W
[]
[QuadSubChannelMesh]
[subchannel]
type = SCMQuadSubChannelMeshGenerator
[]
[fuel_pins]
type = SCMQuadPinMeshGenerator
input = subchannel
[]
[]
[Functions]
[axial_heat_rate]
type = ParsedFunction
expression = '(pi/2)*sin(pi*z/L)'
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
[]
[q_prime]
block = fuel_pins
[]
[Tpin]
block = fuel_pins
[]
[Dpin]
block = fuel_pins
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
beta = 0.006
CT = 2.6
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
verbose_subchannel = true
deformation = true
[]
[ICs]
[S_IC]
type = SCMQuadFlowAreaIC
variable = S
[]
[w_perim_IC]
type = SCMQuadWettedPerimIC
variable = w_perim
[]
[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}
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = 0.00950
[]
[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 = SCMPinSolutionTransfer
to_multi_app = viz
variable = 'Tpin Dpin q_prime'
[]
[]
(modules/subchannel/test/tests/outputs/normalslicevalues/test.i)
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadSubChannelMeshGenerator
nx = 3
ny = 3
n_cells = 10
pitch = 0.25
pin_diameter = 0.125
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
[]
(modules/subchannel/test/tests/mesh/quad_sub_channel_mesh/subchannel_number.i)
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadSubChannelMeshGenerator
nx = 1
ny = 1
n_cells = 10
pitch = 0.25
pin_diameter = 0.125
gap = 0.1
heated_length = 1
spacer_k = '0.5'
spacer_z = '0'
[]
[]
(modules/subchannel/test/tests/ics/quad_power/test.i)
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadSubChannelMeshGenerator
nx = 3
ny = 3
n_cells = 10
pitch = 0.25
pin_diameter = 0.125
gap = 0.1
heated_length = 1
spacer_k = '0.0'
spacer_z = '0'
[]
[]
[Variables]
[q_prime]
[]
[]
[ICs]
[q_prime_IC]
type = SCMQuadPowerIC
variable = q_prime
power = 3.44e6 # W
filename = "power_profile.txt" #type in name of file that describes power profile
[]
[]
[Problem]
solve = false
[]
[Executioner]
type = Steady
[]
[Outputs]
exodus = true
[]
(modules/subchannel/test/tests/ics/quad_flow_area/test.i)
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadSubChannelMeshGenerator
nx = 3
ny = 3
n_cells = 10
pitch = 0.25
pin_diameter = 0.125
gap = 0.1
heated_length = 1
spacer_k = '0.0'
spacer_z = '0'
[]
[]
[Variables]
[S]
[]
[]
[ICs]
[S_IC]
type = SCMQuadFlowAreaIC
variable = S
[]
[]
[Problem]
solve = false
[]
[Executioner]
type = Steady
[]
[Outputs]
exodus = true
[]
(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 = SCMQuadSubChannelMeshGenerator
nx = 1
ny = 2
n_cells = 100
pitch = 0.0126
pin_diameter = 0.00950
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
beta = 0.006
CT = 0.0
P_tol = 1e-6
T_tol = 1e-6
implicit = false
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
[]
[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/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 = SCMQuadSubChannelMeshGenerator
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
pin_diameter = ${pin_diameter}
gap = 0.00095 # the half gap between sub-channel assemblies
heated_length = 1.0
spacer_z = '0.0'
spacer_k = '0.0'
[]
[fuel_pins]
type = SCMQuadPinMeshGenerator
input = sub_channel
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
heated_length = 1.0
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
beta = 0.006
CT = 2.6
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
verbose_subchannel = true
staggered_pressure = true
[]
[ICs]
[S_IC]
type = SCMQuadFlowAreaIC
variable = S
[]
[w_perim_IC]
type = SCMQuadWettedPerimIC
variable = w_perim
[]
[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}
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = ${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
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
block = sub_channel
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = report_mass_flux_inlet
execute_on = 'timestep_begin'
block = sub_channel
[]
[]
[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/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 = SCMQuadSubChannelMeshGenerator
nx = 3
ny = 3
n_cells = '${n_cells}'
pitch = '${pitch}'
pin_diameter = 0.00950
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
beta = 0.006
CT = 2.0
P_tol = 1e-6
T_tol = 1e-6
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
[]
[ICs]
[S_IC]
type = SCMQuadFlowAreaIC
variable = S
[]
[T_ic]
type = ConstantIC
variable = T
value = ${T_in}
[]
[w_perim_IC]
type = SCMQuadWettedPerimIC
variable = w_perim
[]
[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
[]
[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
variable = 'mdot SumWij P DP h T rho mu q_prime S w_perim'
[]
[]
(modules/subchannel/test/tests/ics/mass_flow/test.i)
mass_flux_in = ${fparse 1e+6 * 17.00 / 3600.}
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadSubChannelMeshGenerator
nx = 3
ny = 3
n_cells = 10
pitch = 0.25
pin_diameter = 0.125
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}
[]
[]
[Problem]
solve = false
[]
[Executioner]
type = Steady
[]
[Outputs]
exodus = true
[]
(modules/subchannel/test/tests/auxkernels/uniform_mass_flow_rate/test.i)
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadSubChannelMeshGenerator
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
pin_diameter = 0.00950
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/ics/quad_wetted_perimeter/test.i)
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadSubChannelMeshGenerator
nx = 3
ny = 3
n_cells = 10
pitch = 0.25
pin_diameter = 0.125
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
[]
[]
[Problem]
solve = false
[]
[Executioner]
type = Steady
[]
[Outputs]
exodus = true
[]
(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 = SCMQuadSubChannelMeshGenerator
pin_diameter = 0.5
gap = 0.1
spacer_z = '0'
spacer_k = '0'
[]
[fuel_pins]
type = SCMQuadPinMeshGenerator
input = sub_channel
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[AuxVariables]
[P]
block = sub_channel
[]
[T]
block = fuel_pins
[]
[]
[AuxKernels]
[P_ak]
type = ParsedAux
variable = P
function = '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
function = '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'
[]
[]
[Transfers]
[P_transfer]
type = SCMSolutionTransfer
to_multi_app = viz
variable = 'P'
[]
[T_transfer]
type = SCMPinSolutionTransfer
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 = SCMQuadSubChannelMeshGenerator
nx = 6
ny = 6
n_cells = 3
pitch = 0.0126
pin_diameter = 0.00950
gap = 0.00095 # the half gap between sub-channel assemblies
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'
[]
[]
[Problem]
solve = false
[]
[Executioner]
type = Steady
[]
[Outputs]
exodus = 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 = SCMQuadSubChannelMeshGenerator
nx = 8
ny = 8
n_cells = 84
pitch = 0.0136906
Kij = 0.5
pin_diameter = 0.0099568
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 = sub_channel
[]
[SumWij]
block = sub_channel
[]
[P]
block = sub_channel
[]
[DP]
block = sub_channel
[]
[h]
block = sub_channel
[]
[T]
block = sub_channel
[]
[rho]
block = sub_channel
[]
[mu]
block = sub_channel
[]
[S]
block = sub_channel
[]
[w_perim]
block = sub_channel
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
beta = 0.006
CT = 2.6
compute_density = true
compute_viscosity = true
compute_power = false
P_out = ${P_out}
implicit = true
segregated = false
staggered_pressure = false
monolithic_thermal = false
interpolation_scheme = central_difference
[]
[ICs]
[S_IC]
type = SCMQuadFlowAreaIC
variable = S
[]
[w_perim_IC]
type = SCMQuadWettedPerimIC
variable = w_perim
[]
[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/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
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]
[sub_channel]
type = SCMQuadSubChannelMeshGenerator
[]
[fuel_pins]
type = SCMQuadPinMeshGenerator
input = sub_channel
[]
[]
[AuxVariables]
[mdot]
block = sub_channel
[]
[SumWij]
block = sub_channel
[]
[P]
block = sub_channel
[]
[DP]
block = sub_channel
[]
[h]
block = sub_channel
[]
[T]
block = sub_channel
[]
[Tpin]
block = fuel_pins
[]
[Dpin]
block = fuel_pins
[]
[rho]
block = sub_channel
[]
[mu]
block = sub_channel
[]
[S]
block = sub_channel
[]
[w_perim]
block = sub_channel
[]
[q_prime]
block = fuel_pins
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
beta = 0.006
CT = 2.6
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
monolithic_thermal = false
[]
[ICs]
[S_IC]
type = SCMQuadFlowAreaIC
variable = S
[]
[w_perim_IC]
type = SCMQuadWettedPerimIC
variable = w_perim
[]
[q_prime_IC]
type = SCMQuadPowerIC
variable = q_prime
power = 5460 # W
filename = "power_profile.txt"
[]
[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 = 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 = SCMPinSolutionTransfer
to_multi_app = viz
variable = 'Tpin 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 = SCMQuadSubChannelMeshGenerator
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
pin_diameter = ${pin_diameter}
gap = 0.00095 # the half gap between sub-channel assemblies
heated_length = 1.0
spacer_z = '0.0'
spacer_k = '0.0'
[]
[fuel_pins]
type = SCMQuadPinMeshGenerator
input = sub_channel
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
heated_length = 1.0
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
beta = 0.006
CT = 2.6
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
verbose_subchannel = true
[]
[ICs]
[S_IC]
type = SCMQuadFlowAreaIC
variable = S
[]
[w_perim_IC]
type = SCMQuadWettedPerimIC
variable = w_perim
[]
[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}
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = ${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
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
block = sub_channel
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = report_mass_flux_inlet
execute_on = 'timestep_begin'
block = sub_channel
[]
[]
[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/verification/enthalpy_mixing_verification/two_channel.i)
mass_flux_in = 3500 # kg /sec m2
P_out = 155e+5 # Pa
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadSubChannelMeshGenerator
nx = 2
ny = 1
n_cells = 100
pitch = 0.0126
pin_diameter = 0.00950
gap = 0.00095
heated_length = 10.0
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[Functions]
[T_fn]
type = ParsedFunction
value = if(x>0.0,483.10,473.10)
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
beta = 0.006
CT = 2.0
P_tol = 1e-6
T_tol = 1e-6
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
[]
[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/mesh/quad_sub_channel_pin_mesh/coords.i)
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadSubChannelMeshGenerator
nx = 3
ny = 3
n_cells = 10
pitch = 0.25
pin_diameter = 0.125
gap = 0.1
heated_length = 1
spacer_k = '0.0'
spacer_z = '0'
[]
[fuel_pins]
type = SCMQuadPinMeshGenerator
input = sub_channel
nx = 3
ny = 3
n_cells = 10
pitch = 0.25
heated_length = 1
[]
[]
(modules/subchannel/test/tests/postprocessors/quadsubchannelpointvalue/test.i)
T_in = 359.15
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadSubChannelMeshGenerator
nx = 3
ny = 3
n_cells = 10
pitch = 0.25
pin_diameter = 0.125
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_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 = SCMQuadSubChannelMeshGenerator
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
pin_diameter = ${pin_diameter}
gap = 0.00095 # the half gap between sub-channel assemblies
heated_length = 1.0
spacer_z = '0.0'
spacer_k = '0.0'
[]
[fuel_pins]
type = SCMQuadPinMeshGenerator
input = sub_channel
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
heated_length = 1.0
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
beta = 0.006
CT = 2.6
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
verbose_subchannel = true
implicit = true
segregated = true
[]
[ICs]
[S_IC]
type = SCMQuadFlowAreaIC
variable = S
[]
[w_perim_IC]
type = SCMQuadWettedPerimIC
variable = w_perim
[]
[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}
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = ${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
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
block = sub_channel
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = report_mass_flux_inlet
execute_on = 'timestep_begin'
block = sub_channel
[]
[]
[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/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 = SCMQuadSubChannelMeshGenerator
nx = 6
ny = 6
n_cells = 50
pitch = 0.0126
pin_diameter = 0.00950
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
beta = 0.006
CT = 2.0
P_tol = 1e-6
T_tol = 1e-6
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
[]
[ICs]
[S_IC]
type = SCMQuadFlowAreaIC
variable = S
[]
[w_perim_IC]
type = SCMQuadWettedPerimIC
variable = w_perim
[]
[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/problems/coupling/main.i)
T_in = 297.039 # K
P_out = 101325 # Pa
heated_length = 1.0
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadSubChannelMeshGenerator
nx = 2
ny = 2
n_cells = 10
pitch = 0.014605
pin_diameter = 0.012065
gap = 0.0015875
heated_length = ${heated_length}
spacer_z = '0.0'
spacer_k = '0.0'
[]
[fuel_pins]
type = SCMQuadPinMeshGenerator
input = sub_channel
nx = 2
ny = 2
n_cells = 10
pitch = 0.014605
heated_length = ${heated_length}
[]
[]
[AuxVariables]
[mdot]
block = sub_channel
[]
[SumWij]
block = sub_channel
[]
[P]
block = sub_channel
[]
[DP]
block = sub_channel
[]
[h]
block = sub_channel
[]
[T]
block = sub_channel
[]
[Tpin]
block = fuel_pins
[]
[Dpin]
block = fuel_pins
[]
[rho]
block = sub_channel
[]
[mu]
block = sub_channel
[]
[S]
block = sub_channel
[]
[w_perim]
block = sub_channel
[]
[q_prime]
block = fuel_pins
[]
[displacement]
block = sub_channel
[]
[]
[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
beta = 0.006
CT = 2.6
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
[]
[ICs]
[S_IC]
type = SCMQuadFlowAreaIC
variable = S
[]
[w_perim_IC]
type = SCMQuadWettedPerimIC
variable = w_perim
[]
[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}
[]
[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 = 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'
[]
[viz]
type = FullSolveMultiApp
input_files = '3d.i'
execute_on = 'timestep_end'
[]
[]
[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 = SCMPinSolutionTransfer
to_multi_app = viz
variable = 'Tpin q_prime Dpin'
execute_on = 'timestep_end'
[]
[]
(modules/subchannel/test/tests/mesh/quad_sub_channel_mesh/coords.i)
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadSubChannelMeshGenerator
nx = 3
ny = 3
n_cells = 10
pitch = 0.25
pin_diameter = 0.125
gap = 0.1
heated_length = 1
spacer_k = '0.0'
spacer_z = '0'
[]
[]
(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 = SCMQuadSubChannelMeshGenerator
nx = 3
ny = 3
n_cells = 10
pitch = 0.0126
pin_diameter = 0.00950
gap = 0.00095 # the half gap between sub-channel assemblies
heated_length = 1
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
beta = 0.006
CT = 1.8
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
[]
[ICs]
[S_ic]
type = SCMQuadFlowAreaIC
variable = S
[]
[w_perim_ic]
type = SCMQuadWettedPerimIC
variable = w_perim
[]
[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
[]
[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
[]
[Executioner]
type = Steady
[]
(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]
[sub_channel]
type = SCMQuadSubChannelMeshGenerator
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
pin_diameter = ${pin_diameter}
gap = 0.00095 # the half gap between sub-channel assemblies
heated_length = 1.0
spacer_z = '0.0'
spacer_k = '0.0'
[]
[fuel_pins]
type = SCMQuadPinMeshGenerator
input = sub_channel
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
heated_length = 1.0
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
beta = 0.006
CT = 2.6
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
verbose_subchannel = true
implicit = true
segregated = false
[]
[ICs]
[S_IC]
type = SCMQuadFlowAreaIC
variable = S
[]
[w_perim_IC]
type = SCMQuadWettedPerimIC
variable = w_perim
[]
[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}
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = ${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
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
block = sub_channel
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = report_mass_flux_inlet
execute_on = 'timestep_begin'
block = sub_channel
[]
[]
[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/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 = SCMQuadSubChannelMeshGenerator
nx = 3
ny = 3
n_cells = 10
pitch = 0.0126
pin_diameter = 0.00950
gap = 0.00095 # the half gap between sub-channel assemblies
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
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
beta = 0.006
CT = 1.8
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
[]
[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]
[S_ic]
type = SCMQuadFlowAreaIC
variable = S
[]
[w_perim_ic]
type = SCMQuadWettedPerimIC
variable = w_perim
[]
[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
[]
[Executioner]
type = Transient
start_time = 0.0
end_time = 0.2
dt = 0.1
[]
(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 = SCMQuadSubChannelMeshGenerator
nx = 6
ny = 6
n_cells = 20
pitch = 0.0126
pin_diameter = 0.00950
gap = 0.00095
heated_length = 1.00
spacer_z = '0.5'
spacer_k = '0.5'
[]
[fuel_pins]
type = SCMQuadPinMeshGenerator
input = sub_channel
nx = 6
ny = 6
n_cells = 20
pitch = 0.0126
heated_length = 1.00
[]
[]
[AuxVariables]
[mdot]
block = sub_channel
[]
[SumWij]
block = sub_channel
[]
[P]
block = sub_channel
[]
[DP]
block = sub_channel
[]
[h]
block = sub_channel
[]
[T]
block = sub_channel
[]
[Tpin]
block = fuel_pins
[]
[Dpin]
block = fuel_pins
[]
[rho]
block = sub_channel
[]
[mu]
block = sub_channel
[]
[S]
block = sub_channel
[]
[w_perim]
block = sub_channel
[]
[q_prime]
block = sub_channel
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
beta = 0.08
CT = 2.6
P_tol = 1e-6
T_tol = 1e-6
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
[]
[ICs]
[S_IC]
type = SCMQuadFlowAreaIC
variable = S
[]
[w_perim_IC]
type = SCMQuadWettedPerimIC
variable = w_perim
[]
[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
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = 0.00950
[]
[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 = 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/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 = SCMQuadSubChannelMeshGenerator
nx = 6
ny = 6
n_cells = 20
pitch = 0.0126
pin_diameter = 0.00950
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'
[]
[fuel_pins]
type = SCMQuadPinMeshGenerator
input = sub_channel
nx = 6
ny = 6
n_cells = 20
pitch = 0.0126
heated_length = 3.658
[]
[]
[AuxVariables]
[mdot]
block = sub_channel
[]
[SumWij]
block = sub_channel
[]
[P]
block = sub_channel
[]
[DP]
block = sub_channel
[]
[h]
block = sub_channel
[]
[T]
block = sub_channel
[]
[Tpin]
block = fuel_pins
[]
[rho]
block = sub_channel
[]
[mu]
block = sub_channel
[]
[S]
block = sub_channel
[]
[w_perim]
block = sub_channel
[]
[q_prime]
block = fuel_pins
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
beta = 0.08
CT = 2.6
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
implicit = true
segregated = false
staggered_pressure = false
monolithic_thermal = false
verbose_subchannel = true
interpolation_scheme = exponential
deformation = true # this flag allows the re-calculation of subchannel geometric parameters based on the dpin value
[]
[ICs]
[S_IC]
type = SCMQuadFlowAreaIC
variable = S
[]
[w_perim_IC]
type = SCMQuadWettedPerimIC
variable = w_perim
[]
[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}
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = 0.00950
[]
[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/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 = SCMQuadSubChannelMeshGenerator
nx = 6
ny = 6
n_cells = 50
pitch = 0.0126
pin_diameter = 0.00950
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
beta = 0.006
CT = 2.0
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
[]
[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]
[S_IC]
type = SCMQuadFlowAreaIC
variable = S
[]
[w_perim_IC]
type = SCMQuadWettedPerimIC
variable = w_perim
[]
[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/problems/psbt/psbt_full_monolithic_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 = SCMQuadSubChannelMeshGenerator
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
pin_diameter = ${pin_diameter}
gap = 0.00095 # the half gap between sub-channel assemblies
heated_length = 1.0
spacer_z = '0.0'
spacer_k = '0.0'
[]
[fuel_pins]
type = SCMQuadPinMeshGenerator
input = sub_channel
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
heated_length = 1.0
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
beta = 0.006
CT = 2.6
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
verbose_subchannel = true
implicit = true
segregated = false
monolithic_thermal = true
staggered_pressure = true
[]
[ICs]
[S_IC]
type = SCMQuadFlowAreaIC
variable = S
[]
[w_perim_IC]
type = SCMQuadWettedPerimIC
variable = w_perim
[]
[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}
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = ${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
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
block = sub_channel
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = report_mass_flux_inlet
execute_on = 'timestep_begin'
block = sub_channel
[]
[]
[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/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 = SCMQuadSubChannelMeshGenerator
nx = 2
ny = 1
n_cells = 100
pitch = 0.0126
pin_diameter = 0.00950
gap = 0.00095 # the half gap between sub-channel assemblies
heated_length = 10.0
spacer_z = '0.0'
spacer_k = '0.0'
[]
[]
[Functions]
[S_fn]
type = ParsedFunction
value = if(x>0.0,0.002,0.001)
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
beta = 0.006
CT = 0.0
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
default_friction_model = false
[]
[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/problems/psbt/psbt_full_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]
[sub_channel]
type = SCMQuadSubChannelMeshGenerator
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
pin_diameter = ${pin_diameter}
gap = 0.00095 # the half gap between sub-channel assemblies
heated_length = 1.0
spacer_z = '0.0'
spacer_k = '0.0'
[]
[fuel_pins]
type = SCMQuadPinMeshGenerator
input = sub_channel
nx = 6
ny = 6
n_cells = 10
pitch = 0.0126
heated_length = 1.0
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
beta = 0.006
CT = 2.6
compute_density = true
compute_viscosity = true
compute_power = true
P_out = ${P_out}
verbose_subchannel = true
implicit = true
segregated = false
monolithic_thermal = true
[]
[ICs]
[S_IC]
type = SCMQuadFlowAreaIC
variable = S
[]
[w_perim_IC]
type = SCMQuadWettedPerimIC
variable = w_perim
[]
[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}
[]
[Dpin_ic]
type = ConstantIC
variable = Dpin
value = ${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
[]
[]
[AuxKernels]
[T_in_bc]
type = ConstantAux
variable = T
boundary = inlet
value = ${T_in}
execute_on = 'timestep_begin'
block = sub_channel
[]
[mdot_in_bc]
type = SCMMassFlowRateAux
variable = mdot
boundary = inlet
area = S
mass_flux = report_mass_flux_inlet
execute_on = 'timestep_begin'
block = sub_channel
[]
[]
[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/validation/PNNL_12_pin/transient/2X6_transient.i)
T_in = 297.039 # K
P_out = 101325 # Pa
[QuadSubChannelMesh]
[sub_channel]
type = SCMQuadSubChannelMeshGenerator
nx = 7
ny = 3
n_cells = 60
pitch = 0.014605
pin_diameter = 0.012065
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
beta = 0.006
CT = 2.6
P_tol = 1e-6
T_tol = 1e-6
compute_density = true
compute_viscosity = true
compute_power = false
P_out = ${P_out}
[]
[ICs]
[S_IC]
type = SCMQuadFlowAreaIC
variable = S
[]
[w_perim_IC]
type = SCMQuadWettedPerimIC
variable = w_perim
[]
[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.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
variable = 'mdot SumWij P DP h T rho mu q_prime S'
[]
[]
(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 = SCMQuadSubChannelMeshGenerator
nx = 8
ny = 8
n_cells = 36
pitch = 0.0136906
Kij = 0.5
pin_diameter = 0.0099568
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 = sub_channel
[]
[SumWij]
block = sub_channel
[]
[P]
block = sub_channel
[]
[DP]
block = sub_channel
[]
[h]
block = sub_channel
[]
[T]
block = sub_channel
[]
[rho]
block = sub_channel
[]
[mu]
block = sub_channel
[]
[S]
block = sub_channel
[]
[w_perim]
block = sub_channel
[]
[]
[FluidProperties]
[water]
type = Water97FluidProperties
[]
[]
[SubChannel]
type = QuadSubChannel1PhaseProblem
fp = water
n_blocks = 1
beta = 0.06
CT = 2.6
compute_density = true
compute_viscosity = true
compute_power = false
P_out = ${P_out}
implicit = true
segregated = false
staggered_pressure = false
monolithic_thermal = false
interpolation_scheme = 'upwind'
[]
[ICs]
[S_IC]
type = SCMQuadFlowAreaIC
variable = S
[]
[w_perim_IC]
type = SCMQuadWettedPerimIC
variable = w_perim
[]
[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'
[]
[]