PlateMeshGenerator

Generates a mesh of plate fuel.

Description

The mesh is generated to center the plate in the x and y directions and to place the back of the plate at z = 0.

The PlateMeshGenerator generates a 3D mesh of a nuclear fuel plate. The mesh includes fuel, liner, and cladding blocks (block number 1, 2, and 3, respectively). The mesh includes sidesets as follows:

SidesetDescription
1back of cladding (back)
2bottom of cladding (bottom)
3right of cladding (right)
4top of cladding (top)
5left of cladding (left)
6front of cladding (front)
7all exterior cladding surfaces (all_exterior)
11back of fuel (fuel_back)
12bottom of fuel (fuel_bottom)
13right of fuel (fuel_right)
14top of fuel (fuel_top)
15left of fuel (fuel_left)
16front of fuel (fuel_front)
17all of fuel (fuel_all)
21inner back of cladding (cladding_inner_back)
22inner bottom of cladding (cladding_inner_bottom)
23inner right of cladding (cladding_inner_right)
24inner top of cladding (cladding_inner_top)
25inner left of cladding (cladding_inner_left)
26inner front of cladding (cladding_inner_front)
27all inner cladding surfaces (cladding_inner_all)
28all cladding surfaces (cladding_all)
31outer z direction of liner (liner_outer_z)
32bottom of liner (liner_bottom)
33right of liner (liner_right)
34top of liner (liner_top)
35left of liner (liner_left)
36inner z direction of liner (liner_inner_z)
37all liner surfaces (liner_all)

If radius is given, the adjustment to the mesh is applied after adjustments due to move_directions and move_functions. The radius adjustment is as follows: where x, y, and z are the coordinates of a point and the subscripts 0 and 1 denote original and new, respectively.

[Mesh<<<{"href": "../../syntax/Mesh/index.html"}>>>]
  [plate]
    type = PlateMeshGenerator<<<{"description": "Generates a mesh of plate fuel.", "href": "PlateMeshGenerator.html"}>>>
    fuel_dimensions<<<{"description": "Length of the fuel in the x, y, and z directions."}>>> = '.5 .5 .05'
    liner_thickness<<<{"description": "Thickness of the liner material (equal on both sides of fuel)."}>>> = .05
    cladding_thicknesses<<<{"description": "Left, right, bottom, top, back, and front thicknesses of cladding."}>>> = '0.5 1 0.25 0.25 0.05 0.1'
    number_fuel_elements<<<{"description": "Number of fuel elements in the x, y, and z directions."}>>> = '8 2 1'
    number_cladding_elements<<<{"description": "Number of elements at the left, right, bottom, top, back, and front sides of the fuel"}>>> = '2 2 2 2 2 3'
    number_liner_elements<<<{"description": "Number of liner elements on either side of the fuel."}>>> = 3
    radius<<<{"description": "Inner radius of fuel plate.  The radius adjustment is applied after \"move_functions\"."}>>> = 2
    move_directions<<<{"description": "List of coordinate directions to be moved according to \"move_functions\"."}>>> = 'z'
    move_functions<<<{"description": "List of function expressions used to move coordinate directions according to \"move_directions\". The new coordinate will be the old coordinate plus the value returned by the function."}>>> = '0.2*(x+1)*(y+0.5)/2.0*z'
  []
[]
(test/tests/plate_mesh/plate_mesh.i)

Input Parameters

  • cladding_thicknessesLeft, right, bottom, top, back, and front thicknesses of cladding.

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

    Unit:(no unit assumed)

    Controllable:No

    Description:Left, right, bottom, top, back, and front thicknesses of cladding.

  • fuel_dimensionsLength of the fuel in the x, y, and z directions.

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

    Unit:(no unit assumed)

    Controllable:No

    Description:Length of the fuel in the x, y, and z directions.

  • number_cladding_elementsNumber of elements at the left, right, bottom, top, back, and front sides of the fuel

    C++ Type:std::vector<unsigned int>

    Controllable:No

    Description:Number of elements at the left, right, bottom, top, back, and front sides of the fuel

  • number_fuel_elementsNumber of fuel elements in the x, y, and z directions.

    C++ Type:std::vector<unsigned int>

    Controllable:No

    Description:Number of fuel elements in the x, y, and z directions.

  • number_liner_elementsNumber of liner elements on either side of the fuel.

    C++ Type:unsigned int

    Controllable:No

    Description:Number of liner elements on either side of the fuel.

Required Parameters

  • liner_thicknessThickness of the liner material (equal on both sides of fuel).

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Thickness of the liner material (equal on both sides of fuel).

  • move_directionsList of coordinate directions to be moved according to "move_functions".

    C++ Type:MultiMooseEnum

    Options:x, y, z

    Controllable:No

    Description:List of coordinate directions to be moved according to "move_functions".

  • move_functionsList of function expressions used to move coordinate directions according to "move_directions". The new coordinate will be the old coordinate plus the value returned by the function.

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

    Controllable:No

    Description:List of function expressions used to move coordinate directions according to "move_directions". The new coordinate will be the old coordinate plus the value returned by the function.

  • radius0Inner radius of fuel plate. The radius adjustment is applied after "move_functions".

    Default:0

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Inner radius of fuel plate. The radius adjustment is applied after "move_functions".

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