Panzer
Version of the Day
|
Functions | |
void | computeCellEdgeOrientations (const std::vector< std::pair< int, int > > &topEdgeIndices, const std::vector< panzer::GlobalOrdinal > &topology, const FieldPattern &fieldPattern, std::vector< signed char > &orientation) |
void | computeCellFaceOrientations (const std::vector< std::vector< int > > &topFaceIndices, const std::vector< panzer::GlobalOrdinal > &topology, const FieldPattern &fieldPattern, std::vector< signed char > &orientation) |
void | computePatternEdgeIndices (const FieldPattern &pattern, std::vector< std::pair< int, int > > &edgeIndices) |
void | computePatternFaceIndices (const FieldPattern &pattern, std::vector< std::vector< int > > &faceIndices) |
void | computeCellFaceOrientations (const std::vector< std::vector< int >> &topEdgeIndices, const std::vector< panzer::GlobalOrdinal > &topology, const FieldPattern &fieldPattern, std::vector< signed char > &orientation) |
void panzer::orientation_helpers::computeCellEdgeOrientations | ( | const std::vector< std::pair< int, int > > & | topEdgeIndices, |
const std::vector< panzer::GlobalOrdinal > & | topology, | ||
const FieldPattern & | fieldPattern, | ||
std::vector< signed char > & | orientation | ||
) |
This function computes the edge orientation for a cell given its global topology. It is most often called in conjunction with computePatternEdgeIndices
. The general model is to call computePatternEdgeIndices
once for a given topology field pattern. These edge indices are used with the topology vector of GIDs (which is laid out using the topology field pattern) for particular to define the orientation for that element. The layout of the orientation vector is defined to satisfy yet another field pattern whose structure defines the global unknowns for that element. This function can then be called repeatedly for each element that satisfies the topology used in the computePatternEdgeIndices
call.
[in] | topEdgeIndices | Computed by computePatternEdgeIndices |
[in] | topology | Global topology of this element satisfying field pattern used to construct the edgeIndices vector. |
[in] | fieldPattern | Field pattern used to define the orientation layout |
[in,out] | orientation | Orientation vector satisfying the field pattern layout |
Definition at line 329 of file Panzer_GlobalIndexer_Utilities.cpp.
void panzer::orientation_helpers::computeCellFaceOrientations | ( | const std::vector< std::vector< int > > & | topFaceIndices, |
const std::vector< panzer::GlobalOrdinal > & | topology, | ||
const FieldPattern & | fieldPattern, | ||
std::vector< signed char > & | orientation | ||
) |
Definition at line 368 of file Panzer_GlobalIndexer_Utilities.cpp.
void panzer::orientation_helpers::computePatternEdgeIndices | ( | const FieldPattern & | pattern, |
std::vector< std::pair< int, int > > & | edgeIndices | ||
) |
For a given field pattern compute the offsets that give the beginning and end dimension-0-subcell index for each edge.
[in] | pattern | Pattern specifying the layout of IDs. Note that this pattern must have dimension-0-subcell indices. |
[in,out] | edgeIndices | Empty vector that on exit will have a pair containing start and end indices for each edge in a cell. |
Definition at line 447 of file Panzer_GlobalIndexer_Utilities.cpp.
void panzer::orientation_helpers::computePatternFaceIndices | ( | const FieldPattern & | pattern, |
std::vector< std::vector< int > > & | faceIndices | ||
) |
For a given field pattern compute the offsets that give the dimension-0-subcell indices for each face. Note that the assumption is made that the node ordering returned by Shards for each face is counter-clockwise. This is how the determination of inward or outward facing normals is made.
[in] | pattern | Pattern specifying the layout of IDs. Note that this pattern must have dimension-0-subcell indices. |
[in,out] | faceIndices | Empty vector that on exit will have a vector containing start and end indices for each face in a cell. |
Definition at line 468 of file Panzer_GlobalIndexer_Utilities.cpp.
void panzer::orientation_helpers::computeCellFaceOrientations | ( | const std::vector< std::vector< int >> & | topEdgeIndices, |
const std::vector< panzer::GlobalOrdinal > & | topology, | ||
const FieldPattern & | fieldPattern, | ||
std::vector< signed char > & | orientation | ||
) |
This function computes the face orientation for a cell given its global topology. It is most often called in conjunction with computePatternFaceIndices
. The general model is to call computePatternFaceIndices
once for a given topology field pattern. These face indices are used with the topology vector of GIDs (which is laid out using the topology field pattern) to define the orientation for that element. The layout of the orientation vector is defined to satisfy yet another field pattern whose structure defines the global unknowns for that element. This function can then be called repeatedly for each element that satisfies the topology used in the computePatternFaceIndices
call.
[in] | topFaceIndices | Computed by computePatternFaceIndices |
[in] | topology | Global topology of this element satisfying field pattern used to construct the edgeIndices vector. |
[in] | fieldPattern | Field pattern used to define the orientation layout |
[in,out] | orientation | Orientation vector satisfying the field pattern layout |