#include <ParallelTetrahedralMesh.hpp>


Public Types | |
| enum | PartitionType { DUMB = 0, METIS_BINARY, METIS_LIBRARY } |
Public Member Functions | |
| ParallelTetrahedralMesh (PartitionType metisPartitioning=METIS_LIBRARY) | |
| 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 60 of file ParallelTetrahedralMesh.hpp.
| void ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader | ( | AbstractMeshReader< ELEMENT_DIM, SPACE_DIM > & | rMeshReader, | |
| bool | cullInternalFaces = false | |||
| ) | [inline] |
Definition at line 211 of file ParallelTetrahedralMesh.hpp.
References ElementData::AttributeValue, ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ComputeMeshPartitioning(), ElementData::NodeIndices, and PetscTools::NumProcs().
| 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] |
Definition at line 157 of file ParallelTetrahedralMesh.hpp.
References ElementData::NodeIndices, and PetscTools::NumProcs().
Referenced by ParallelTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader().
1.5.5