#include <ParallelTetrahedralMesh.hpp>
Public Types | |
enum | PartitionType { DUMB = 0, METIS_BINARY, METIS_LIBRARY } |
Public Member Functions | |
ParallelTetrahedralMesh (PartitionType metisPartitioning=METIS_LIBRARY) | |
virtual | ~ParallelTetrahedralMesh () |
void | ConstructFromMeshReader (AbstractMeshReader< ELEMENT_DIM, SPACE_DIM > &rMeshReader, bool cullInternalFaces=false) |
unsigned | GetNumLocalNodes () const |
unsigned | GetNumLocalElements () const |
unsigned | GetNumNodes () const |
unsigned | GetNumElements () const |
unsigned | GetNumBoundaryElements () const |
void | SetElementOwnerships (unsigned lo, unsigned hi) |
Private Member Functions | |
void | RegisterNode (unsigned index) |
void | RegisterHaloNode (unsigned index) |
void | RegisterElement (unsigned index) |
void | RegisterBoundaryElement (unsigned index) |
unsigned | SolveNodeMapping (unsigned index) const |
unsigned | SolveHaloNodeMapping (unsigned index) |
unsigned | SolveElementMapping (unsigned index) const |
unsigned | SolveBoundaryElementMapping (unsigned index) const |
void | ComputeMeshPartitioning (AbstractMeshReader< ELEMENT_DIM, SPACE_DIM > &rMeshReader, std::set< unsigned > &rNodesOwned, std::set< unsigned > &rHaloNodesOwned, std::set< unsigned > &rElementsOwned, std::vector< unsigned > &rProcessorsOffset, std::vector< unsigned > &rNodePermutation) |
void | DumbNodePartitioning (AbstractMeshReader< ELEMENT_DIM, SPACE_DIM > &rMeshReader, std::set< unsigned > &rNodesOwned) |
void | MetisBinaryNodePartitioning (AbstractMeshReader< ELEMENT_DIM, SPACE_DIM > &rMeshReader, std::set< unsigned > &rNodesOwned, std::vector< unsigned > &rProcessorsOffset, std::vector< unsigned > &rNodePermutation) |
void | MetisLibraryNodePartitioning (AbstractMeshReader< ELEMENT_DIM, SPACE_DIM > &rMeshReader, std::set< unsigned > &rNodesOwned, std::vector< unsigned > &rProcessorsOffset, std::vector< unsigned > &rNodePermutation) |
void | ReorderNodes (std::vector< unsigned > &rNodePermutation) |
Private Attributes | |
unsigned | mTotalNumElements |
unsigned | mTotalNumBoundaryElements |
unsigned | mTotalNumNodes |
std::vector< Node< SPACE_DIM > * > | mHaloNodes |
std::map< unsigned, unsigned > | mNodesMapping |
std::map< unsigned, unsigned > | mHaloNodesMapping |
std::map< unsigned, unsigned > | mElementsMapping |
std::map< unsigned, unsigned > | mBoundaryElementsMapping |
PartitionType | mMetisPartitioning |
Friends | |
class | TestParallelTetrahedralMesh |
Definition at line 62 of file ParallelTetrahedralMesh.hpp.
enum ParallelTetrahedralMesh::PartitionType |
Definition of partition types. "DUMB" is using naturally mesh ordering with PETSC_DECIDE. "METIS_BINARY" via METIS file dump and a call to the Metis binary partdmesh. "METIS_LIBRARY" is a call to the sequential METIS library
Definition at line 73 of file ParallelTetrahedralMesh.hpp.
ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ParallelTetrahedralMesh | ( | PartitionType | metisPartitioning = METIS_LIBRARY |
) | [inline] |
Constructor.
metisPartitioning | defaults to METIS_LIBRARY |
Definition at line 49 of file ParallelTetrahedralMesh.cpp.
ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::~ParallelTetrahedralMesh | ( | ) | [inline, virtual] |
Destructor.
Definition at line 55 of file ParallelTetrahedralMesh.cpp.
References ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mHaloNodes.
void ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader | ( | AbstractMeshReader< ELEMENT_DIM, SPACE_DIM > & | rMeshReader, | |
bool | cullInternalFaces = false | |||
) | [inline, virtual] |
Construct the mesh using a MeshReader. This method must be overridden in concrete classes.
rMeshReader | the mesh reader | |
cullInternalFaces | whether to cull internal faces (defaults to false) |
Implements AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 117 of file ParallelTetrahedralMesh.cpp.
References ElementData::AttributeValue, ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ComputeMeshPartitioning(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetMeshFileBaseName(), PetscTools::GetMyRank(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNextElementData(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNextFaceData(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNextNode(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNumElementAttributes(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNumElements(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNumFaceAttributes(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNumFaces(), ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetNumNodes(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNumNodes(), PetscTools::GetNumProcs(), AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mBoundaryElements, AbstractMesh< ELEMENT_DIM, SPACE_DIM >::mBoundaryNodes, AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mElements, ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mHaloNodes, ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mHaloNodesMapping, AbstractMesh< ELEMENT_DIM, SPACE_DIM >::mMeshFileBaseName, ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mMetisPartitioning, AbstractMesh< ELEMENT_DIM, SPACE_DIM >::mNodes, ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mNodesMapping, AbstractMesh< ELEMENT_DIM, SPACE_DIM >::mNodesPermutation, AbstractMesh< ELEMENT_DIM, SPACE_DIM >::mpDistributedVectorFactory, ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mTotalNumBoundaryElements, ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mTotalNumElements, ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mTotalNumNodes, ElementData::NodeIndices, ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::RegisterBoundaryElement(), ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::RegisterElement(), ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::RegisterHaloNode(), ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::RegisterNode(), ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ReorderNodes(), AbstractElement< ELEMENT_DIM, SPACE_DIM >::SetRegion(), ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::SolveHaloNodeMapping(), and ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::SolveNodeMapping().
unsigned ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetNumLocalNodes | ( | ) | const [inline] |
Get the number of nodes that are entirely owned by the local process. (Does not include halo nodes).
Definition at line 316 of file ParallelTetrahedralMesh.cpp.
References AbstractMesh< ELEMENT_DIM, SPACE_DIM >::mNodes.
unsigned ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetNumLocalElements | ( | ) | const [inline] |
Get the number of Elements which are owned by this process (have at least one entirely locally-owned node).
Definition at line 322 of file ParallelTetrahedralMesh.cpp.
References AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mElements.
unsigned ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetNumNodes | ( | ) | const [inline, virtual] |
Get the total number of nodes that are actually in use (globally).
Reimplemented from AbstractMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 328 of file ParallelTetrahedralMesh.cpp.
References ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mTotalNumNodes.
Referenced by ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader(), ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::MetisBinaryNodePartitioning(), and ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::MetisLibraryNodePartitioning().
unsigned ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetNumElements | ( | ) | const [inline, virtual] |
Get the total number of elements that are actually in use (globally).
Reimplemented from AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 334 of file ParallelTetrahedralMesh.cpp.
References ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mTotalNumElements.
Referenced by ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::MetisBinaryNodePartitioning().
unsigned ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetNumBoundaryElements | ( | ) | const [inline, virtual] |
Get the total number of boundary elements that are actually in use (globally).
Reimplemented from AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 340 of file ParallelTetrahedralMesh.cpp.
References ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mTotalNumBoundaryElements.
void ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::SetElementOwnerships | ( | unsigned | lo, | |
unsigned | hi | |||
) | [inline, virtual] |
Sets the ownership of each element according to which nodes are owned by the process.
lo | is the lowest node number owned by the process | |
hi | is one higher than the highest node number owned by the process ie. this process owns nodes [lo..hi) and element is "owned" if one or more of its nodes are owned |
Reimplemented from AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 346 of file ParallelTetrahedralMesh.cpp.
References AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mElements, and AbstractElement< ELEMENT_DIM, SPACE_DIM >::SetOwnership().
void ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::RegisterNode | ( | unsigned | index | ) | [inline, private] |
Add the most recently constructed node to the global->local node mapping
index | is the global index of node to be registered |
Definition at line 361 of file ParallelTetrahedralMesh.cpp.
References AbstractMesh< ELEMENT_DIM, SPACE_DIM >::mNodes, and ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mNodesMapping.
Referenced by ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader().
void ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::RegisterHaloNode | ( | unsigned | index | ) | [inline, private] |
Add the most recently constructed halo node to the global->local halo node mapping
index | is the global index of halo node to be registered |
Definition at line 367 of file ParallelTetrahedralMesh.cpp.
References ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mHaloNodes, and ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mHaloNodesMapping.
Referenced by ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader().
void ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::RegisterElement | ( | unsigned | index | ) | [inline, private] |
Add the most recently constructed element to the global->local element mapping
index | is the global index of element to be registered |
Definition at line 373 of file ParallelTetrahedralMesh.cpp.
References AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mElements, and ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mElementsMapping.
Referenced by ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader().
void ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::RegisterBoundaryElement | ( | unsigned | index | ) | [inline, private] |
Add the most recently constructed boundary element to the global->local boundary element mapping
index | is the global index of boundary element to be registered |
Definition at line 379 of file ParallelTetrahedralMesh.cpp.
References AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mBoundaryElements, and ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mBoundaryElementsMapping.
Referenced by ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader().
unsigned ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::SolveNodeMapping | ( | unsigned | index | ) | const [inline, private, virtual] |
Overridden solve node mapping method.
index | the global index of the node |
Implements AbstractMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 385 of file ParallelTetrahedralMesh.cpp.
References PetscTools::GetMyRank(), and ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mNodesMapping.
Referenced by ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader().
unsigned ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::SolveHaloNodeMapping | ( | unsigned | index | ) | [inline, private] |
Overridden solve halo node mapping method.
index | the global index of the node |
Definition at line 399 of file ParallelTetrahedralMesh.cpp.
References ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mHaloNodesMapping.
Referenced by ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader().
unsigned ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::SolveElementMapping | ( | unsigned | index | ) | const [inline, private, virtual] |
Overridden solve element mapping method.
index | the global index of the element |
Implements AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 406 of file ParallelTetrahedralMesh.cpp.
References PetscTools::GetMyRank(), and ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mElementsMapping.
unsigned ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::SolveBoundaryElementMapping | ( | unsigned | index | ) | const [inline, private, virtual] |
Overridden solve boundary element mapping method.
index | the global index of the boundary element |
Implements AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 421 of file ParallelTetrahedralMesh.cpp.
References PetscTools::GetMyRank(), and ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mBoundaryElementsMapping.
void ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ComputeMeshPartitioning | ( | AbstractMeshReader< ELEMENT_DIM, SPACE_DIM > & | rMeshReader, | |
std::set< unsigned > & | rNodesOwned, | |||
std::set< unsigned > & | rHaloNodesOwned, | |||
std::set< unsigned > & | rElementsOwned, | |||
std::vector< unsigned > & | rProcessorsOffset, | |||
std::vector< unsigned > & | rNodePermutation | |||
) | [inline, private] |
Compute a parallel partitioning of a given mesh using specialised methods below based on the value of mMetisPartitioning
rMeshReader | is the reader pointing to the mesh to be read in and partitioned | |
rNodesOwned | is a set to be filled with the indices of nodes owned by this process | |
rHaloNodesOwned | is a set to be filled with the indices of halo nodes owned by this process | |
rElementsOwned | is a set to be filled with the indices of elements owned by this process | |
rProcessorsOffset | a vector of length NumProcs to be filled with the index of the lowest indexed node owned by each process | |
rNodePermutation | a vector to be filled with the permutation applied to the node numbering by the partitioning method |
Definition at line 64 of file ParallelTetrahedralMesh.cpp.
References ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::DumbNodePartitioning(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNextElementData(), PetscTools::GetNumProcs(), ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::MetisBinaryNodePartitioning(), ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::MetisLibraryNodePartitioning(), ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mMetisPartitioning, ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mTotalNumElements, ElementData::NodeIndices, and AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::Reset().
Referenced by ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader().
void ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::DumbNodePartitioning | ( | AbstractMeshReader< ELEMENT_DIM, SPACE_DIM > & | rMeshReader, | |
std::set< unsigned > & | rNodesOwned | |||
) | [inline, private] |
Specialised method to compute a parallel partitioning of a given mesh (called by ComputeMeshPartitioning, based on the value of mMetisPartitioning
rMeshReader | is the reader pointing to the mesh to be read in and partitioned | |
rNodesOwned | is an empty set to be filled with the indices of nodes owned by this process |
Definition at line 436 of file ParallelTetrahedralMesh.cpp.
References DistributedVectorFactory::GetHigh(), DistributedVectorFactory::GetLow(), AbstractMesh< ELEMENT_DIM, SPACE_DIM >::mpDistributedVectorFactory, and ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mTotalNumNodes.
Referenced by ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ComputeMeshPartitioning().
void ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::MetisBinaryNodePartitioning | ( | AbstractMeshReader< ELEMENT_DIM, SPACE_DIM > & | rMeshReader, | |
std::set< unsigned > & | rNodesOwned, | |||
std::vector< unsigned > & | rProcessorsOffset, | |||
std::vector< unsigned > & | rNodePermutation | |||
) | [inline, private] |
Specialised method to compute a parallel partitioning of a given mesh (called by ComputeMeshPartitioning, based on the value of mMetisPartitioning
rMeshReader | is the reader pointing to the mesh to be read in and partitioned | |
rNodesOwned | is an empty set to be filled with the indices of nodes owned by this process | |
rProcessorsOffset | a vector of length NumProcs to be filled with the index of the lowest indexed node owned by each process | |
rNodePermutation | a vector to be filled with the permutation applied to the node numberig by the partitioning method |
Definition at line 451 of file ParallelTetrahedralMesh.cpp.
References PetscTools::Barrier(), PetscTools::GetMyRank(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNextElementData(), ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetNumElements(), ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetNumNodes(), PetscTools::GetNumProcs(), OutputFileHandler::GetOutputDirectoryFullPath(), OutputFileHandler::IsMaster(), ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mTotalNumElements, ElementData::NodeIndices, OutputFileHandler::OpenOutputFile(), and AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::Reset().
Referenced by ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ComputeMeshPartitioning().
void ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::MetisLibraryNodePartitioning | ( | AbstractMeshReader< ELEMENT_DIM, SPACE_DIM > & | rMeshReader, | |
std::set< unsigned > & | rNodesOwned, | |||
std::vector< unsigned > & | rProcessorsOffset, | |||
std::vector< unsigned > & | rNodePermutation | |||
) | [inline, private] |
Specialised method to compute a parallel partitioning of a given mesh (called by ComputeMeshPartitioning, based on the value of mMetisPartitioning
rMeshReader | is the reader pointing to the mesh to be read in and partitioned | |
rNodesOwned | is an empty set to be filled with the indices of nodes owned by this process | |
rProcessorsOffset | a vector of length NumProcs to be filled with the index of the lowest indexed node owned by each process | |
rNodePermutation | a vector to be filled with the permutation applied to the node numberig by the partitioning method |
Definition at line 586 of file ParallelTetrahedralMesh.cpp.
References PetscTools::GetMyRank(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNextElementData(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNumElements(), ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetNumNodes(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNumNodes(), PetscTools::GetNumProcs(), ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mTotalNumElements, ElementData::NodeIndices, and AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::Reset().
Referenced by ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ComputeMeshPartitioning().
void ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ReorderNodes | ( | std::vector< unsigned > & | rNodePermutation | ) | [inline, private] |
Reorder the node indices in this mesh by applying a given permutation
rNodePermutation | the index permutation to apply |
Definition at line 682 of file ParallelTetrahedralMesh.cpp.
References PetscTools::GetNumProcs(), ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mHaloNodes, ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mHaloNodesMapping, AbstractMesh< ELEMENT_DIM, SPACE_DIM >::mNodes, and ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mNodesMapping.
Referenced by ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader().
unsigned ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mTotalNumElements [private] |
The total number of elements in the mesh.
Definition at line 83 of file ParallelTetrahedralMesh.hpp.
Referenced by ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ComputeMeshPartitioning(), ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader(), ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetNumElements(), ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::MetisBinaryNodePartitioning(), and ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::MetisLibraryNodePartitioning().
unsigned ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mTotalNumBoundaryElements [private] |
The total number of boundary elements in the mesh.
Definition at line 86 of file ParallelTetrahedralMesh.hpp.
Referenced by ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader(), and ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetNumBoundaryElements().
unsigned ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mTotalNumNodes [private] |
The total number of nodes in the mesh.
Definition at line 89 of file ParallelTetrahedralMesh.hpp.
Referenced by ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader(), ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::DumbNodePartitioning(), and ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetNumNodes().
std::vector<Node<SPACE_DIM>* > ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mHaloNodes [private] |
Vector of pointer to halo nodes used by this process.
Definition at line 92 of file ParallelTetrahedralMesh.hpp.
Referenced by ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader(), ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::RegisterHaloNode(), ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ReorderNodes(), and ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::~ParallelTetrahedralMesh().
std::map<unsigned, unsigned> ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mNodesMapping [private] |
A map from node global index to local index used by this process.
Definition at line 95 of file ParallelTetrahedralMesh.hpp.
Referenced by ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader(), ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::RegisterNode(), ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ReorderNodes(), and ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::SolveNodeMapping().
std::map<unsigned, unsigned> ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mHaloNodesMapping [private] |
A map from halo node global index to local index used by this process.
Definition at line 98 of file ParallelTetrahedralMesh.hpp.
Referenced by ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader(), ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::RegisterHaloNode(), ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ReorderNodes(), and ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::SolveHaloNodeMapping().
std::map<unsigned, unsigned> ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mElementsMapping [private] |
A map from element global index to local index used by this process.
Definition at line 101 of file ParallelTetrahedralMesh.hpp.
Referenced by ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::RegisterElement(), and ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::SolveElementMapping().
std::map<unsigned, unsigned> ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mBoundaryElementsMapping [private] |
A map from boundary element global index to local index used by this process.
Definition at line 104 of file ParallelTetrahedralMesh.hpp.
Referenced by ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::RegisterBoundaryElement(), and ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::SolveBoundaryElementMapping().
PartitionType ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mMetisPartitioning [private] |
Partition type (given by enum PartitionType).
Definition at line 107 of file ParallelTetrahedralMesh.hpp.
Referenced by ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ComputeMeshPartitioning(), and ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader().