TRISO1DFiveLayerMeshGenerator

Creates a 1D mesh for use with five-layer TRISO analysis.

Description

TRISO1DFiveLayerMeshGenerator creates a 1D mesh appropriate for use in TRISO analysis with five material blocks. By default, the blocks are named fuel, buffer, IPyC, SiC, and OPyC. The user supplies the radius of the fuel and thicknesses of the other materials. Numbers of radial elements per block are also supplied.

Sidesets are created at each mesh boundary. Numbering starts from the origin and counts outward. The pattern can be seen in Figure 1.

The bias parameters affect mesh density moving from left to right. For example, a bias value of 2 for a given block doubles element size going left to right, whereas a bias value of 0.5 cuts element size in half going left to right. The dual_bias parameters may be used to affect mesh density on both ends of the blocks. It is also applied left to right. When dual_bias is given, bias affects the first half of the elements, and dual_bias affects the right half of the elements. If the two biases are the same, the result will be the same as the original, single-value bias approach.

See also TRISO1DMeshGenerator.

commentnote

The depiction below assumes that the blocks are named fuel, buffer, IPyC, SiC and OPyC in the input file. They can be named anything according to user preferences.

Figure 1: Pictorial line representation of the 1D spherical mesh created by TRISO1DMeshGenerator.

Example Input Syntax

[Mesh<<<{"href": "../../syntax/Mesh/index.html"}>>>]
  coord_type = RSPHERICAL
  [gen]
    type = TRISO1DFiveLayerMeshGenerator<<<{"description": "Creates a 1D mesh for use with five-layer TRISO analysis.", "href": "TRISO1DFiveLayerMeshGenerator.html"}>>>
    elem_type<<<{"description": "The type of element from libMesh to generate"}>>> = EDGE3
    kernel_radius<<<{"description": "Radius of fuel kernel."}>>> = 2.485e-4
    buffer_thickness<<<{"description": "Thickness of buffer layer."}>>> = 9.4e-5
    IPyC_thickness<<<{"description": "Thickness of IPyC layer."}>>> = 4.1e-5
    SiC_thickness<<<{"description": "Thickness of SiC layer."}>>> = 3.6e-5
    OPyC_thickness<<<{"description": "Thickness of OPyC layer."}>>> = 4.0e-5
    kernel_mesh_density<<<{"description": "Number of elements in the kernel mesh."}>>> = 6
    buffer_mesh_density<<<{"description": "Number of elements in the buffer mesh."}>>> = 6
    IPyC_mesh_density<<<{"description": "Number of elements in the IPyC mesh."}>>> = 6
    SiC_mesh_density<<<{"description": "Number of elements in the SiC mesh."}>>> = 8
    OPyC_mesh_density<<<{"description": "Number of elements in the OPyC mesh."}>>> = 6
  []
[]
(test/tests/triso_failure/triso_1d_ipyc_failure.i)

Input Parameters

  • IPyC_mesh_densityNumber of elements in the IPyC mesh.

    C++ Type:unsigned int

    Controllable:No

    Description:Number of elements in the IPyC mesh.

  • IPyC_thicknessThickness of IPyC layer.

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Thickness of IPyC layer.

  • OPyC_mesh_densityNumber of elements in the OPyC mesh.

    C++ Type:unsigned int

    Controllable:No

    Description:Number of elements in the OPyC mesh.

  • OPyC_thicknessThickness of OPyC layer.

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Thickness of OPyC layer.

  • SiC_mesh_densityNumber of elements in the SiC mesh.

    C++ Type:unsigned int

    Controllable:No

    Description:Number of elements in the SiC mesh.

  • SiC_thicknessThickness of SiC layer.

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Thickness of SiC layer.

  • buffer_mesh_densityNumber of elements in the buffer mesh.

    C++ Type:unsigned int

    Controllable:No

    Description:Number of elements in the buffer mesh.

  • buffer_thicknessThickness of buffer layer.

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Thickness of buffer layer.

  • kernel_mesh_densityNumber of elements in the kernel mesh.

    C++ Type:unsigned int

    Controllable:No

    Description:Number of elements in the kernel mesh.

  • kernel_radiusRadius of fuel kernel.

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Radius of fuel kernel.

Required Parameters

  • IPyC_bias1Mesh bias for IPyC.

    Default:1

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Mesh bias for IPyC.

  • IPyC_dual_biasMesh dual bias for IPyC.

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Mesh dual bias for IPyC.

  • OPyC_bias1Mesh bias for OPyC.

    Default:1

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Mesh bias for OPyC.

  • OPyC_dual_biasMesh dual bias for OPyC.

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Mesh dual bias for OPyC.

  • SiC_bias1Mesh bias for SiC.

    Default:1

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Mesh bias for SiC.

  • SiC_dual_biasMesh dual bias for SiC.

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Mesh dual bias for SiC.

  • block_namesfuel buffer IPyC SiC OPyC A list of names to be assigned to the mesh blocks.

    Default:fuel buffer IPyC SiC OPyC

    C++ Type:std::vector<std::string>

    Controllable:No

    Description:A list of names to be assigned to the mesh blocks.

  • buffer_bias1Mesh bias for buffer.

    Default:1

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Mesh bias for buffer.

  • buffer_dual_biasMesh dual bias for buffer.

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Mesh dual bias for buffer.

  • elem_typeEDGE3The type of element from libMesh to generate

    Default:EDGE3

    C++ Type:MooseEnum

    Options:EDGE2, EDGE3

    Controllable:No

    Description:The type of element from libMesh to generate

  • include_gapTrueWhether the buffer and IPyC will have separate nodes, allowing a gap to form.

    Default:True

    C++ Type:bool

    Controllable:No

    Description:Whether the buffer and IPyC will have separate nodes, allowing a gap to form.

  • kernel_bias1Mesh bias for kernel.

    Default:1

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Mesh bias for kernel.

  • kernel_dual_biasMesh dual bias for kernel.

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Mesh dual bias for kernel.

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