Builds mapping between two aligned subdomains/boundaries. More...
#include <MeshAlignmentBase.h>
Public Member Functions | |
MeshAlignmentBase (const MooseMesh &mesh) | |
Constructor. More... | |
const std::vector< dof_id_type > & | getPrimaryElemIDs () const |
Returns the list of element IDs on the primary boundary. More... | |
const std::vector< dof_id_type > & | getSecondaryElemIDs () const |
Returns the list of element IDs on the secondary boundary. More... | |
bool | meshesAreAligned () const |
Returns true if the primary and secondary meshes are aligned. More... | |
Protected Member Functions | |
void | extractFrom1DElements (const std::vector< dof_id_type > &elem_ids, std::vector< Point > &elem_points, std::vector< dof_id_type > &node_ids, std::vector< Point > &node_points) const |
Extracts mesh information from 1D elements. More... | |
void | extractFromBoundaryInfo (const std::vector< std::tuple< dof_id_type, unsigned short int >> &boundary_info, std::vector< dof_id_type > &elem_ids, std::vector< unsigned short int > &side_ids, std::vector< Point > &side_points, std::vector< dof_id_type > &node_ids, std::vector< Point > &node_points) const |
Extracts mesh information from boundary info. More... | |
Protected Attributes | |
const MooseMesh & | _mesh |
Mesh. More... | |
std::vector< dof_id_type > | _primary_elem_ids |
List of primary element IDs. More... | |
std::vector< dof_id_type > | _secondary_elem_ids |
List of secondary element IDs. More... | |
std::vector< Point > | _primary_elem_points |
List of primary element points. More... | |
std::vector< Point > | _secondary_elem_points |
List of secondary element points. More... | |
std::vector< unsigned short int > | _primary_side_ids |
List of primary side IDs (if any) More... | |
std::vector< unsigned short int > | _secondary_side_ids |
List of secondary side IDs (if any) More... | |
std::vector< dof_id_type > | _primary_node_ids |
List of primary node IDs. More... | |
std::vector< dof_id_type > | _secondary_node_ids |
List of secondary node IDs. More... | |
std::vector< Point > | _primary_node_points |
List of primary node points. More... | |
std::vector< Point > | _secondary_node_points |
List of secondary node points. More... | |
bool | _meshes_are_aligned |
Flag that meshes are aligned. More... | |
Builds mapping between two aligned subdomains/boundaries.
This class handles the following cases:
Definition at line 21 of file MeshAlignmentBase.h.
MeshAlignmentBase::MeshAlignmentBase | ( | const MooseMesh & | mesh | ) |
Constructor.
mesh[in] | mesh Mesh |
Definition at line 14 of file MeshAlignmentBase.C.
|
protected |
Extracts mesh information from 1D elements.
[in] | elem_ids | Vector of element IDs |
[out] | elem_points | Vector of element centroids |
[out] | node_ids | Vector of node IDs |
[out] | node_points | Vector of node points |
Definition at line 20 of file MeshAlignmentBase.C.
Referenced by MeshAlignment1D3D::initialize(), and MeshAlignment::initialize().
|
protected |
Extracts mesh information from boundary info.
[in] | boundary_info | Vector of tuples of element ID and side ID on boundary |
[out] | elem_ids | Vector of element IDs |
[out] | side_ids | Vector of side IDs |
[out] | side_points | Vector of side centroids |
[out] | node_ids | Vector of node IDs |
[out] | node_points | Vector of node points |
Definition at line 48 of file MeshAlignmentBase.C.
Referenced by MeshAlignment2D2D::initialize(), MeshAlignment1D3D::initialize(), MeshAlignment2D3D::initialize(), and MeshAlignment::initialize().
|
inline |
Returns the list of element IDs on the primary boundary.
Definition at line 34 of file MeshAlignmentBase.h.
Referenced by HeatStructure2DCouplerBase::setupMesh(), and HSCoupler2D2DRadiation::setupMesh().
|
inline |
Returns the list of element IDs on the secondary boundary.
Definition at line 39 of file MeshAlignmentBase.h.
Referenced by HSCoupler2D3D::setupMesh().
|
inline |
Returns true if the primary and secondary meshes are aligned.
Definition at line 44 of file MeshAlignmentBase.h.
Referenced by HeatStructure2DCoupler::check(), HeatStructure2DRadiationCouplerRZ::check(), HSCoupler2D3D::check(), HSCoupler2D2DRadiation::check(), HeatTransferFromHeatStructure1Phase::check(), HeatStructure2DCouplerBase::setupMesh(), HSCoupler2D3D::setupMesh(), and HSCoupler2D2DRadiation::setupMesh().
|
protected |
Mesh.
Definition at line 79 of file MeshAlignmentBase.h.
Referenced by MeshAlignment1D3D::buildCoupledElemQpIndexMap(), MeshAlignment::buildCoupledElemQpIndexMap(), MeshAlignment2D3D::buildCoupledElemQpIndexMapSecondary(), MeshAlignmentOneToMany::buildMapping(), MeshAlignment::buildMapping(), extractFrom1DElements(), extractFromBoundaryInfo(), and MeshAlignment::getLocalQuadraturePointMap().
|
protected |
Flag that meshes are aligned.
Definition at line 105 of file MeshAlignmentBase.h.
Referenced by MeshAlignment::buildMapping(), MeshAlignmentOneToMany::checkAlignment(), and meshesAreAligned().
|
protected |
List of primary element IDs.
Definition at line 82 of file MeshAlignmentBase.h.
Referenced by MeshAlignment1D3D::buildCoupledElemQpIndexMap(), MeshAlignment::buildCoupledElemQpIndexMap(), MeshAlignment2D3D::buildCoupledElemQpIndexMapSecondary(), MeshAlignmentOneToMany::buildMapping(), MeshAlignment::buildMapping(), MeshAlignmentOneToMany::checkAlignment(), getPrimaryElemIDs(), MeshAlignment2D2D::initialize(), MeshAlignment1D3D::initialize(), MeshAlignment2D3D::initialize(), and MeshAlignment::initialize().
|
protected |
List of primary element points.
Definition at line 86 of file MeshAlignmentBase.h.
Referenced by MeshAlignmentOneToMany::buildMapping(), MeshAlignment::buildMapping(), MeshAlignmentOneToMany::checkAlignment(), MeshAlignment2D2D::initialize(), MeshAlignment1D3D::initialize(), MeshAlignment2D3D::initialize(), and MeshAlignment::initialize().
|
protected |
List of primary node IDs.
Definition at line 96 of file MeshAlignmentBase.h.
Referenced by MeshAlignment::buildMapping(), MeshAlignment2D2D::initialize(), MeshAlignment1D3D::initialize(), MeshAlignment2D3D::initialize(), and MeshAlignment::initialize().
|
protected |
List of primary node points.
Definition at line 100 of file MeshAlignmentBase.h.
Referenced by MeshAlignment::buildMapping(), MeshAlignment2D2D::initialize(), MeshAlignment1D3D::initialize(), MeshAlignment2D3D::initialize(), and MeshAlignment::initialize().
|
protected |
List of primary side IDs (if any)
Definition at line 91 of file MeshAlignmentBase.h.
Referenced by MeshAlignment::buildCoupledElemQpIndexMap(), MeshAlignment2D3D::buildCoupledElemQpIndexMapSecondary(), MeshAlignment2D2D::initialize(), MeshAlignment2D3D::initialize(), and MeshAlignment::initialize().
|
protected |
List of secondary element IDs.
Definition at line 84 of file MeshAlignmentBase.h.
Referenced by MeshAlignment1D3D::buildCoupledElemQpIndexMap(), MeshAlignment::buildCoupledElemQpIndexMap(), MeshAlignment2D3D::buildCoupledElemQpIndexMapSecondary(), MeshAlignmentOneToMany::buildMapping(), MeshAlignment::buildMapping(), MeshAlignmentOneToMany::checkAlignment(), getSecondaryElemIDs(), MeshAlignment2D2D::initialize(), MeshAlignment1D3D::initialize(), MeshAlignment2D3D::initialize(), and MeshAlignment::initialize().
|
protected |
List of secondary element points.
Definition at line 88 of file MeshAlignmentBase.h.
Referenced by MeshAlignmentOneToMany::buildMapping(), MeshAlignment::buildMapping(), MeshAlignmentOneToMany::checkAlignment(), MeshAlignment2D2D::initialize(), MeshAlignment1D3D::initialize(), MeshAlignment2D3D::initialize(), and MeshAlignment::initialize().
|
protected |
List of secondary node IDs.
Definition at line 98 of file MeshAlignmentBase.h.
Referenced by MeshAlignment::buildMapping(), MeshAlignment2D2D::initialize(), MeshAlignment1D3D::initialize(), MeshAlignment2D3D::initialize(), and MeshAlignment::initialize().
|
protected |
List of secondary node points.
Definition at line 102 of file MeshAlignmentBase.h.
Referenced by MeshAlignment::buildMapping(), MeshAlignment2D2D::initialize(), MeshAlignment1D3D::initialize(), MeshAlignment2D3D::initialize(), and MeshAlignment::initialize().
|
protected |
List of secondary side IDs (if any)
Definition at line 93 of file MeshAlignmentBase.h.
Referenced by MeshAlignment1D3D::buildCoupledElemQpIndexMap(), MeshAlignment::buildCoupledElemQpIndexMap(), MeshAlignment2D3D::buildCoupledElemQpIndexMapSecondary(), MeshAlignment2D2D::initialize(), MeshAlignment1D3D::initialize(), MeshAlignment2D3D::initialize(), and MeshAlignment::initialize().