ElementOrderConversionGenerator

Mesh generator which converts orders of elements

Overview

The ElementOrderConversionGenerator converts all the elements of the "input" mesh into the element types that are specified by an order category parameter, "conversion_type":

  • FIRST_ORDER: Converts the input mesh with second-order and/or higher-order elements into a mesh with only first-order elements.

  • SECOND_ORDER_NONFULL: Converts the input mesh with first-order elements into a mesh with second-order elements. For those first-order element types with two second-order equivalents, this option only converts the elements to the "non-full-ordered" element types. Note that the original "full-ordered" second-order or higher-order elements in the input mesh are retained without conversion (i.e., no downgrades).

  • SECOND_ORDER: Converts the input mesh with first-order elements and/or "non-full-ordered" second-order elements into a mesh with "full-ordered" second-order elements.

  • COMPLETE_ORDER: Converts the input mesh with first-order elements and/or second-order elements into a mesh with "complete" order elements.

The element type conversion maps of different "conversion_type" options are summarized in Table 1, Table 2, and Table 3

Table 1: 1D Element Type Conversion Maps of Different "conversion_type" Options

EDGE2EDGE3
FIRST_ORDEREDGE2EDGE2
SECOND_ORDER_NONFULLEDGE3EDGE3
SECOND_ORDEREDGE3EDGE3
COMPLETE_ORDEREDGE3EDGE3

Table 2: 2D Element Type Conversion Maps of Different "conversion_type" Options

TRI3TRI6TRI7QUAD4QUAD8QUAD9
FIRST_ORDERTRI3TRI3TRI3QUAD4QUAD4QUAD4
SECOND_ORDER_NONFULLTRI6TRI6TRI7QUAD8QUAD8QUAD9
SECOND_ORDERTRI6TRI6TRI7QUAD9QUAD9QUAD9
COMPLETE_ORDERTRI7TRI7TRI7QUAD9QUAD9QUAD9

Table 3: 3D Element Type Conversion Maps of Different "conversion_type" Options

TET4TET10TET14HEX8HEX20HEX27PRISM6PRISM15PRISM18PRISM20PRISM21PYRAMID5PYRAMID13PYRAMID14PYRAMID18
FIRST_ORDERTET4TET4TET4HEX8HEX8HEX8PRISM6PRISM6PRISM6PRISM6PRISM6PYRAMID5PYRAMID5PYRAMID5PYRAMID5
SECOND_ORDER_NONFULLTET10TET10TET14HEX20HEX20HEX27PRISM15PRISM15PRISM18PRISM20PRISM21PYRAMID13PYRAMID13PYRAMID14PYRAMID18
SECOND_ORDERTET10TET10TET14HEX27HEX27HEX27PRISM18PRISM18PRISM18PRISM20PRISM21PYRAMID14PYRAMID14PYRAMID14PYRAMID18
COMPLETE_ORDERTET14TET14TET14HEX27HEX27HEX27PRISM21PRISM21PRISM21PRISM21PRISM21PYRAMID18PYRAMID18PYRAMID18PYRAMID18

Input Parameters

  • inputThe mesh we want to modify

    C++ Type:MeshGeneratorName

    Unit:(no unit assumed)

    Controllable:No

    Description:The mesh we want to modify

Required Parameters

  • conversion_typeFIRST_ORDERThe type of element order conversion to perform

    Default:FIRST_ORDER

    C++ Type:MooseEnum

    Unit:(no unit assumed)

    Options:FIRST_ORDER, SECOND_ORDER_NONFULL, SECOND_ORDER, COMPLETE_ORDER

    Controllable:No

    Description:The type of element order conversion to perform

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