RefineBlockGenerator

Mesh generator which refines one or more blocks in an existing mesh

Overview

This MeshGenerator object allows the user to refine one or more blocks in a mesh.

The user has to provide the ids of the blocks to be modified, as well as the corresponding levels of refinement for each block. These must match up to the order of the aforementioned block id list, e.g. if the blocks you wish to modify are '0 2 1 4', with 1 refinement for block 0, 2 for block 2, 3 for block 1, and 4 for block 4, then the refinement list will need to look like '1 2 3 4'. By default, refinement in libMesh refines neighboring blocks to avoid meshing problems. This generator shares this default, but it can be disabled with "enable_neighbor_refinement=false".

Input Parameters

  • blockThe list of blocks to be refined

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

    Unit:(no unit assumed)

    Controllable:No

    Description:The list of blocks to be refined

  • inputInput mesh to refine

    C++ Type:MeshGeneratorName

    Unit:(no unit assumed)

    Controllable:No

    Description:Input mesh to refine

  • refinementMinimum amount of times to refine each block, corresponding to their index in 'block'

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

    Unit:(no unit assumed)

    Controllable:No

    Description:Minimum amount of times to refine each block, corresponding to their index in 'block'

Required Parameters

  • enable_neighbor_refinementTrueToggles whether neighboring level one elements should be refined or not. Defaults to true. False may lead to unsupported mesh non-conformality without great care.

    Default:True

    C++ Type:bool

    Unit:(no unit assumed)

    Controllable:No

    Description:Toggles whether neighboring level one elements should be refined or not. Defaults to true. False may lead to unsupported mesh non-conformality without great care.

  • max_element_volume1e+08If elements are above that size, they will be refined more

    Default:1e+08

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:If elements are above that size, they will be refined more

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