TiledMeshGenerator

Use the supplied mesh and create a tiled grid by repeating this mesh in the x, y, and z directions.

Example

As the name suggests, the TiledMeshGenerator object may be utilized to repeat a mesh multiple times. The test, tiled_mesh_generator.i, will be used to illustrate the use of the TiledMeshGenerator object. This test file is shown at the bottom of this section for reference.

Fig. 2: Tiled cube created from the cube input.

Fig. 1: Cube utilized as input to TiledMesh object.

The example utilizes a cube (cube.e) mesh as input as shown in Figure 1, which is a regular cube on the domain from 0 to 10 in the x, y, and z-directions.

As specified in the input file for this test (see below), this mesh is then used to create two tiles in the x, y, and z directions. To execute the example and create a new mesh, the moose test application can be executed with the special "–mesh-only" flag, which indicates that only the mesh operations should be performed. Running this command will create the resulting mesh file (tiled_mesh_test_in.e), which is intended to be used by a separate input file to run a complete simulation.


cd ~/projects/moose/test/tests/meshgenerators/tiled_mesh_generator/
~/projects/moose/test/moose_test-opt -i tiled_mesh_generator.i --mesh-only
[Mesh]
  [./fmg]
    type = FileMeshGenerator
    file = cube.e
  []

  [./tmg]
    type = TiledMeshGenerator
    input = fmg

    left_boundary = left
    right_boundary = right
    top_boundary = top
    bottom_boundary = bottom
    front_boundary = front
    back_boundary = back

    x_tiles = 2
    y_tiles = 2
    z_tiles = 2

    # You can only run this test with ReplicatedMesh because the underlying
    # algorithm, stitch_meshes(), only works with ReplicatedMesh.
    parallel_type = replicated
  []
[]

[Outputs]
  exodus = true
[]
(test/tests/meshgenerators/tiled_mesh_generator/tiled_mesh_generator.i)

Input Parameters

  • inputThe mesh we want to repeat

    C++ Type:MeshGeneratorName

    Controllable:No

    Description:The mesh we want to repeat

Required Parameters

  • back_boundarybackname of the back (z) boundary

    Default:back

    C++ Type:BoundaryName

    Controllable:No

    Description:name of the back (z) boundary

  • bottom_boundarybottomname of the bottom (y) boundary

    Default:bottom

    C++ Type:BoundaryName

    Controllable:No

    Description:name of the bottom (y) boundary

  • front_boundaryfrontname of the front (z) boundary

    Default:front

    C++ Type:BoundaryName

    Controllable:No

    Description:name of the front (z) boundary

  • left_boundaryleftname of the left (x) boundary

    Default:left

    C++ Type:BoundaryName

    Controllable:No

    Description:name of the left (x) boundary

  • right_boundaryrightname of the right (x) boundary

    Default:right

    C++ Type:BoundaryName

    Controllable:No

    Description:name of the right (x) boundary

  • top_boundarytopname of the top (y) boundary

    Default:top

    C++ Type:BoundaryName

    Controllable:No

    Description:name of the top (y) boundary

  • x_tiles1Number of tiles to stitch together (left to right) in the x-direction

    Default:1

    C++ Type:unsigned int

    Controllable:No

    Description:Number of tiles to stitch together (left to right) in the x-direction

  • y_tiles1Number of tiles to stitch together (top to bottom) in the y-direction

    Default:1

    C++ Type:unsigned int

    Controllable:No

    Description:Number of tiles to stitch together (top to bottom) in the y-direction

  • z_tiles1Number of tiles to stitch together (front to back) in the z-direction

    Default:1

    C++ Type:unsigned int

    Controllable:No

    Description:Number of tiles to stitch together (front to back) in the z-direction

Optional Parameters

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

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

    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

    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