SpiralAnnularMeshGenerator

Creates an annular mesh based on TRI3 or TRI6 elements on several rings.

Overview

The generated mesh has an annular shape, and nodes are located on different concentric rings between the inner and outer circles. The elements are triangular.

Here are the required parameters:

  • inner_radius

  • outer_radius

  • nodes_per_ring

  • num_rings

Given all these parameters, the radial bias will be computed automatically.

It is also possible to specify if you want a second-order Mesh : TRI3 elements will become TRI6 elements. To do that, simply change the use_tri6 parameter to true.

Example Input File

For example, with the following input file block:

[Mesh]
  [./samg]
    type = SpiralAnnularMeshGenerator
    use_tri6 = true
    inner_radius = 1
    nodes_per_ring = 18
    outer_radius = 10
    num_rings = 10
  []
[]
(moose/test/tests/meshgenerators/spiral_annular_mesh_generator/spiral_annular_mesh_generator.i)

The resulting mesh looks like this:

Input Parameters

  • inner_radiusThe size of the inner circle.

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:The size of the inner circle.

  • nodes_per_ringNumber of nodes on each ring.

    C++ Type:unsigned int

    Unit:(no unit assumed)

    Controllable:No

    Description:Number of nodes on each ring.

  • num_ringsThe number of rings.

    C++ Type:unsigned int

    Unit:(no unit assumed)

    Controllable:No

    Description:The number of rings.

  • outer_radiusThe size of the outer circle. Logically, it has to be greater than inner_radius

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:The size of the outer circle. Logically, it has to be greater than inner_radius

Required Parameters

  • cylinder_bid1The boundary id to use for the cylinder (inner circle)

    Default:1

    C++ Type:short

    Unit:(no unit assumed)

    Controllable:No

    Description:The boundary id to use for the cylinder (inner circle)

  • exterior_bid2The boundary id to use for the exterior (outer circle)

    Default:2

    C++ Type:short

    Unit:(no unit assumed)

    Controllable:No

    Description:The boundary id to use for the exterior (outer circle)

  • initial_delta_rWidth of the initial layer of elements around the cylinder.This number should be approximately 2 * pi * inner_radius / nodes_per_ring to ensure that the initial layer of elements is almost equilateral

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Width of the initial layer of elements around the cylinder.This number should be approximately 2 * pi * inner_radius / nodes_per_ring to ensure that the initial layer of elements is almost equilateral

  • use_tri6FalseGenerate mesh of TRI6 elements instead of TRI3 elements.

    Default:False

    C++ Type:bool

    Unit:(no unit assumed)

    Controllable:No

    Description:Generate mesh of TRI6 elements instead of TRI3 elements.

Optional Parameters

  • control_tagsAdds user-defined labels for accessing object parameters via control logic.

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

    Unit:(no unit assumed)

    Controllable:No

    Description:Adds user-defined labels for accessing object parameters via control logic.

  • enableTrueSet the enabled status of the MooseObject.

    Default:True

    C++ Type:bool

    Unit:(no unit assumed)

    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

    Unit:(no unit assumed)

    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

    Unit:(no unit assumed)

    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

    Unit:(no unit assumed)

    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

    Unit:(no unit assumed)

    Controllable:No

    Description:Whether or not to show mesh info after generating the mesh (bounding box, element types, sidesets, nodesets, subdomains, etc)

Debugging Parameters