SymmetryTransformGenerator

Applies a symmetry transformation to the entire mesh.

commentnote

Only the plane or mirror symmetry is currently implemented in the SymmetryTransformGenerator. Point or rotational symmetries are not implemented.

Overview

The SymmetryTransformGenerator makes a mirror reflection of a mesh across an arbitrary plane (or line in 2D) supplied by the user. All input is expected to be three dimensional even if the mesh in question is two dimensional; in such a case, let the z component be 0 (for example, mirror_normal_vector = '1 1 0').

The user sets the plane that will be reflected over by giving two vectors: a vector that gives the position of any given point on the line/plane from the origin; and, a vector that is normal (aka perpendicular/ orthogonal) to said line/plane. The normal vector establishes the slope of the plane of reflection.

Input Parameters

  • inputThe mesh we want to modify

    C++ Type:MeshGeneratorName

    Unit:(no unit assumed)

    Controllable:No

    Description:The mesh we want to modify

  • mirror_normal_vectorA vector normal to (perpendicular/orthogonal to) the plane/line over which the reflection operation will be done

    C++ Type:Eigen::Matrix<double, -1, 1, 0, -1, 1>

    Unit:(no unit assumed)

    Controllable:No

    Description:A vector normal to (perpendicular/orthogonal to) the plane/line over which the reflection operation will be done

  • mirror_pointAny point on the plane/line over which the reflection operation will be done

    C++ Type:Eigen::Matrix<double, -1, 1, 0, -1, 1>

    Unit:(no unit assumed)

    Controllable:No

    Description:Any point on the plane/line over which the reflection operation will be done

Required 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