CylindricalGridDivision

Divide the mesh along a cylindrical grid. The innermost numbering of divisions is the radial bins, then comes the azimuthal bins, then the axial bins

The number of mesh divisions/regions is the product of the number of bins in each coordinate.

Points that lie outside the cylindrical grid may be assigned to the closest grid outer bins using the "assign_domain_outside_grid_to_border" parameter.

commentnote

The "center" should be a point on the axis of the cylinder that also corresponds to the reference for the minimal ("cylinder_axial_min") and maximal ("cylinder_axial_max") axial extent of the cylinder.

Using a Positions object as the "center_positions" parameter, multiple cylindrical grids can be created around each position computed by that object. The division index of a point is then:

with the index in the Positions object of the position nearest from the point and the number of divisions for a single cylindrical grid, based on the number of rings and axial discretization specified.

commentnote

We have not implemented restrictions in the azimuthal direction so the entire (, ) arc will be split. This is a desirable extension of this object.

commentnote

For points lying within the standard tolerance of an internal boundary of the cylindrical grid, this object will output a warning. If you do not mind the indetermination on which bins they belong to but do mind that a warning is output, please reach out to a MOOSE (or any MOOSE app) developer.

Input Parameters

  • axis_directionDirection of the cylinder's axis

    C++ Type:libMesh::Point

    Unit:(no unit assumed)

    Controllable:No

    Description:Direction of the cylinder's axis

  • azimuthal_startDirection of the 0-azimuthal-angle vector, normal to the cylinder's axis

    C++ Type:libMesh::Point

    Unit:(no unit assumed)

    Controllable:No

    Description:Direction of the 0-azimuthal-angle vector, normal to the cylinder's axis

  • n_radialNumber of divisions in the cylinder radial direction

    C++ Type:unsigned int

    Unit:(no unit assumed)

    Controllable:No

    Description:Number of divisions in the cylinder radial direction

  • r_maxMaximum radial coordinate

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Maximum radial coordinate

Required Parameters

  • assign_domain_outside_grid_to_borderFalseWhether to map the domain outside the grid back to the border of the grid (radially or axially)

    Default:False

    C++ Type:bool

    Unit:(no unit assumed)

    Controllable:No

    Description:Whether to map the domain outside the grid back to the border of the grid (radially or axially)

  • centerPoint on the cylinder's axis, acting as the center of this local R-theta-Z coordinate based division

    C++ Type:libMesh::Point

    Unit:(no unit assumed)

    Controllable:No

    Description:Point on the cylinder's axis, acting as the center of this local R-theta-Z coordinate based division

  • center_positionsPositions of the points on the cylinders' respective axis, acting as the center of the local R-theta-Z coordinate based divisions

    C++ Type:PositionsName

    Unit:(no unit assumed)

    Controllable:No

    Description:Positions of the points on the cylinders' respective axis, acting as the center of the local R-theta-Z coordinate based divisions

  • cylinder_axial_max1.79769e+308Maximum axial coordinate

    Default:1.79769e+308

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Maximum axial coordinate

  • cylinder_axial_min-1.79769e+308Minimum axial coordinate

    Default:-1.79769e+308

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Minimum axial coordinate

  • n_axial1Number of divisions in the cylinder axial direction

    Default:1

    C++ Type:unsigned int

    Unit:(no unit assumed)

    Controllable:No

    Description:Number of divisions in the cylinder axial direction

  • n_azimuthal1Number of divisions in the azimuthal direction

    Default:1

    C++ Type:unsigned int

    Unit:(no unit assumed)

    Controllable:No

    Description:Number of divisions in the azimuthal direction

  • r_min0Minimum radial coordinate (for a hollow cylinder)

    Default:0

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Minimum radial coordinate (for a hollow cylinder)

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.

Advanced Parameters