CartesianGridDivision

Divide the mesh along a Cartesian grid. Numbering increases from bottom to top and from left to right and from back to front. The inner ordering is X, then Y, then Z

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

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

Using a Positions object as the "center_positions" parameter, multiple Cartesian 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 Cartesian grid, based on the X/Y/Z discretization specified.

commentnote

For points lying within the standard tolerance of an internal boundary of the Cartesian 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

  • nxNumber of divisions in X

    C++ Type:unsigned int

    Unit:(no unit assumed)

    Controllable:No

    Description:Number of divisions in X

  • nyNumber of divisions in Y

    C++ Type:unsigned int

    Unit:(no unit assumed)

    Controllable:No

    Description:Number of divisions in Y

  • nzNumber of divisions in Z

    C++ Type:unsigned int

    Unit:(no unit assumed)

    Controllable:No

    Description:Number of divisions in Z

Required Parameters

  • assign_domain_outside_grid_to_borderFalseWhether to map the domain outside the grid back to the border of the grid

    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

  • bottom_leftBottom-back-left corner of the grid

    C++ Type:libMesh::Point

    Unit:(no unit assumed)

    Controllable:No

    Description:Bottom-back-left corner of the grid

  • centerCenter of the Cartesian grid

    C++ Type:libMesh::Point

    Unit:(no unit assumed)

    Controllable:No

    Description:Center of the Cartesian grid

  • center_positionsPositions of the centers of divided Cartesian grids

    C++ Type:PositionsName

    Unit:(no unit assumed)

    Controllable:No

    Description:Positions of the centers of divided Cartesian grids

  • top_rightTop-front-right corner of the grid

    C++ Type:libMesh::Point

    Unit:(no unit assumed)

    Controllable:No

    Description:Top-front-right corner of the grid

  • widthsWidths in the X, Y and Z directions

    C++ Type:libMesh::Point

    Unit:(no unit assumed)

    Controllable:No

    Description:Widths in the X, Y and Z directions

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