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
  []
[]
(modules/subchannel/test/tests/problems/psbt/psbt_explicit.i)

Input Parameters

  • 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]

Required 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