Chaste Release::3.1
|
#include <DistributedTetrahedralMesh.hpp>
Parallel implementation of a mesh Nodes are distributed such that each process has A set of nodes (possibly reordered) with contiguous global indices A local copy of all the elements supporting those nodes A local copy of ghost/halo nodes which are all the nodes used in the supporting elements, but not owned outright.
Definition at line 63 of file DistributedTetrahedralMesh.hpp.
typedef std::vector<Node<SPACE_DIM> *>::const_iterator DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::HaloNodeIterator |
Definition of halo node Iterator type.
Definition at line 401 of file DistributedTetrahedralMesh.hpp.
DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::DistributedTetrahedralMesh | ( | DistributedTetrahedralMeshPartitionType::type | partitioningMethod = DistributedTetrahedralMeshPartitionType::METIS_LIBRARY | ) |
Constructor.
partitioningMethod | defaults to METIS_LIBRARY, but in 1-D is always overridden in this constructor to be the DUMB partition |
Definition at line 64 of file DistributedTetrahedralMesh.cpp.
References DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mMetisPartitioning.
DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::~DistributedTetrahedralMesh | ( | ) | [virtual] |
Destructor.
Definition at line 79 of file DistributedTetrahedralMesh.cpp.
ChasteCuboid< SPACE_DIM > DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::CalculateBoundingBox | ( | ) | const [virtual] |
Calculate the bounding box (width extremes for all dimensions of the mesh. Override for Distribute case
Reimplemented from AbstractMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 1480 of file DistributedTetrahedralMesh.cpp.
References AbstractMesh< ELEMENT_DIM, SPACE_DIM >::CalculateBoundingBox(), PetscTools::ReplicateException(), ChastePoint< DIM >::rGetLocation(), ChasteCuboid< SPACE_DIM >::rGetLowerCorner(), and ChasteCuboid< SPACE_DIM >::rGetUpperCorner().
bool DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::CalculateDesignatedOwnershipOfBoundaryElement | ( | unsigned | faceIndex | ) | [virtual] |
Determine whether or not the current process owns node 0 of this boundary element (tie breaker to determine which process writes to file for when two or more share ownership of a face).
faceIndex | is the global index of the face |
Reimplemented from AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 526 of file DistributedTetrahedralMesh.cpp.
bool DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::CalculateDesignatedOwnershipOfElement | ( | unsigned | elementIndex | ) | [virtual] |
Determine whether or not the current process owns node 0 of this element (tie breaker to determine which process writes to file for when two or more share ownership of an element).
elementIndex | is the global index of the element |
Reimplemented from AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 513 of file DistributedTetrahedralMesh.cpp.
c_vector< double, 2 > DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::CalculateMinMaxEdgeLengths | ( | ) | [virtual] |
Calculate the bounding box (width extremes for all dimensions of the mesh. Overridden in Distributed case
Reimplemented from AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 1513 of file DistributedTetrahedralMesh.cpp.
References AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::CalculateMinMaxEdgeLengths().
void DistributedTetrahedralMesh< 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 | ||
) | [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 |
Definition at line 95 of file DistributedTetrahedralMesh.cpp.
References PetscTools::AmMaster(), PetscTools::Barrier(), NodePartitioner< ELEMENT_DIM, SPACE_DIM >::DumbPartitioning(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetContainingElementIndices(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetElementData(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNextElementData(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::HasNclFile(), PetscTools::IsParallel(), NodePartitioner< ELEMENT_DIM, SPACE_DIM >::MetisLibraryPartitioning(), ElementData::NodeIndices, NodePartitioner< ELEMENT_DIM, SPACE_DIM >::PetscMatrixPartitioning(), Timer::PrintAndReset(), and AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::Reset().
void DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructCuboid | ( | unsigned | width, |
unsigned | height, | ||
unsigned | depth | ||
) | [virtual] |
Construct a 3D cuboid grid on [0,width]x[0,height]x[0,depth].
Distributed version splits the mesh in layers in the z-direction. That is, the zeroth process will own from z=0 to about z=depth/num_procs etc.
width | width of the mesh (in the x-direction) |
height | height of the mesh (in the y-direction) |
depth | depth of the mesh (in the z-direction) |
Reimplemented from AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 917 of file DistributedTetrahedralMesh.cpp.
References PetscTools::AmMaster(), EXCEPTION, DistributedVectorFactory::GetHigh(), DistributedVectorFactory::GetLocalOwnership(), DistributedVectorFactory::GetLow(), and PetscTools::GetMyRank().
void DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader | ( | AbstractMeshReader< ELEMENT_DIM, SPACE_DIM > & | rMeshReader | ) | [virtual] |
Construct the mesh using a MeshReader.
rMeshReader | the mesh reader |
Implements AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >.
Reimplemented in MixedDimensionMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 217 of file DistributedTetrahedralMesh.cpp.
References Node< SPACE_DIM >::AddNodeAttribute(), PetscTools::AmTopMost(), ElementData::AttributeValue, PetscTools::Barrier(), EXCEPTION, AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetElementIteratorBegin(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetElementIteratorEnd(), Node< SPACE_DIM >::GetIndex(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetMeshFileBaseName(), PetscTools::GetMyRank(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNextFaceData(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNextNode(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNodeAttributes(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNodeIteratorBegin(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNodeIteratorEnd(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNumElementAttributes(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNumElements(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNumFaceAttributes(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNumFaces(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNumNodes(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::IsFileFormatBinary(), PetscTools::IsParallel(), ElementData::NodeIndices, PetscTools::ReplicateException(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::Reset(), Timer::Reset(), and AbstractElement< ELEMENT_DIM, SPACE_DIM >::SetAttribute().
Referenced by AdaptiveBidomainProblem::AdaptMesh(), MixedDimensionMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader(), DistributedQuadraticMesh< DIM >::ConstructFromMeshReader(), and Load2dMeshAndSetCircularTissue().
void DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructLinearMesh | ( | unsigned | width | ) | [virtual] |
Construct a 1D linear grid on [0,width]
Throws if there are more processes than the number of nodes (width+1)
width | width of the mesh (in the x-direction) |
Reimplemented from AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 656 of file DistributedTetrahedralMesh.cpp.
References PetscTools::AmMaster(), and EXCEPTION.
void DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructRectangularMesh | ( | unsigned | width, |
unsigned | height, | ||
bool | stagger = true |
||
) | [virtual] |
Construct a 2D rectangular grid on [0,width]x[0,height].
Diagonals can be staggered so that there is no preferred diffusion propagation direction.
Distributed version splits the mesh in layers in the y-direction. That is, the zeroth process will own from y=0 to about y=height/num_procs etc.
width | width of the mesh (in the x-direction) |
height | height of the mesh (in the y-direction) |
stagger | whether the mesh should 'jumble' up the elements (defaults to true) |
Reimplemented from AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 744 of file DistributedTetrahedralMesh.cpp.
References PetscTools::AmMaster(), EXCEPTION, DistributedVectorFactory::GetHigh(), DistributedVectorFactory::GetLocalOwnership(), and DistributedVectorFactory::GetLow().
void DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetHaloNodeIndices | ( | std::vector< unsigned > & | rHaloIndices | ) | const [virtual] |
Utility method to give the functionality of iterating through the halo nodes of a process
rHaloIndices | A vector to fill with the global indices of the nodes which are locally halos |
Reimplemented from AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 495 of file DistributedTetrahedralMesh.cpp.
Referenced by AdaptiveTetrahedralMesh::ConstructFromDistributedMesh(), and DistanceMapCalculator< ELEMENT_DIM, SPACE_DIM >::DistanceMapCalculator().
DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::HaloNodeIterator DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetHaloNodeIteratorBegin | ( | ) | const |
Get an iterator to the first halo node in the mesh.
Definition at line 1525 of file DistributedTetrahedralMesh.cpp.
DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::HaloNodeIterator DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetHaloNodeIteratorEnd | ( | ) | const |
Get an iterator to one past the last halo node in the mesh.
Definition at line 1531 of file DistributedTetrahedralMesh.cpp.
Node< SPACE_DIM > * DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetNodeOrHaloNode | ( | unsigned | index | ) | const [virtual] |
Returns the local pointer to a node which is either owned or in the halo of this process.
We first search halo node (as there are fewer), then search totally owned nodes. Otherwise throw.
index | the global index of the node |
Reimplemented from AbstractMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 608 of file DistributedTetrahedralMesh.cpp.
References EXCEPTION, and PetscTools::GetMyRank().
Referenced by AdaptiveTetrahedralMesh::ConstructFromDistributedMesh().
unsigned DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetNumAllNodes | ( | ) | const [virtual] |
Get the total number of nodes that are actually in use (globally).
Reimplemented from AbstractMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 471 of file DistributedTetrahedralMesh.cpp.
unsigned DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetNumBoundaryElements | ( | ) | const [virtual] |
Get the total number of boundary elements that are actually in use (globally).
Reimplemented from AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 489 of file DistributedTetrahedralMesh.cpp.
unsigned DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetNumElements | ( | ) | const [virtual] |
Get the total number of elements that are actually in use (globally).
Reimplemented from AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 477 of file DistributedTetrahedralMesh.cpp.
Referenced by AdaptiveTetrahedralMesh::ConstructFromDistributedMesh().
unsigned DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetNumHaloNodes | ( | ) | const |
Get the number of nodes that are halo owned by the local process.
Definition at line 447 of file DistributedTetrahedralMesh.cpp.
unsigned DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetNumLocalBoundaryElements | ( | ) | const [virtual] |
Get the number of Boundary Elements which are owned by this process (have at least one entirely locally-owned node).
Reimplemented from AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 459 of file DistributedTetrahedralMesh.cpp.
unsigned DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetNumLocalElements | ( | ) | const [virtual] |
Get the number of Elements which are owned by this process (have at least one entirely locally-owned node).
Reimplemented from AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 453 of file DistributedTetrahedralMesh.cpp.
Referenced by VtkMeshWriter< ELEMENT_DIM, SPACE_DIM >::WriteFilesUsingMesh().
unsigned DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetNumLocalNodes | ( | ) | const |
Get the number of nodes that are entirely owned by the local process. (Does not include halo nodes).
Definition at line 441 of file DistributedTetrahedralMesh.cpp.
Referenced by Hdf5ToVtkConverter< ELEMENT_DIM, SPACE_DIM >::Hdf5ToVtkConverter().
unsigned DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetNumNodes | ( | ) | const [virtual] |
Get the total number of nodes that are actually in use (globally).
Reimplemented from AbstractMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 465 of file DistributedTetrahedralMesh.cpp.
Referenced by AdaptiveTetrahedralMesh::ConstructFromDistributedMesh().
DistributedTetrahedralMeshPartitionType::type DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::GetPartitionType | ( | ) | const |
Get the type of mesh partitioning that is being used...
serialization uses this method.
Definition at line 483 of file DistributedTetrahedralMesh.cpp.
void DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ParMetisLibraryNodeAndElementPartitioning | ( | AbstractMeshReader< ELEMENT_DIM, SPACE_DIM > & | rMeshReader, |
std::set< unsigned > & | rElementsOwned, | ||
std::set< unsigned > & | rNodesOwned, | ||
std::set< unsigned > & | rHaloNodesOwned, | ||
std::vector< unsigned > & | rProcessorsOffset | ||
) | [private] |
Specialised method to compute a parallel partitioning of a given mesh with the ParMetis library (called by ComputeMeshPartitioning, based on the value of mMetisPartitioning)
rMeshReader | is the reader pointing to the mesh to be read in and partitioned |
rElementsOwned | is an empty set to be filled with the indices of elements owned by this process |
rNodesOwned | is an empty set to be filled with the indices of nodes owned by this process |
rHaloNodesOwned | is an empty set to be filled with the indices of halo 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 |
Definition at line 1183 of file DistributedTetrahedralMesh.cpp.
References AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetElementData(), PetscTools::GetMyRank(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNextElementData(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNumElements(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNumNodes(), PetscTools::GetNumProcs(), RandomNumberGenerator::Instance(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::IsFileFormatBinary(), PetscTools::IsParallel(), ElementData::NodeIndices, RandomNumberGenerator::Reseed(), Timer::Reset(), AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::Reset(), and RandomNumberGenerator::Shuffle().
void DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::RegisterBoundaryElement | ( | unsigned | index | ) | [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 557 of file DistributedTetrahedralMesh.cpp.
void DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::RegisterElement | ( | unsigned | index | ) | [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 551 of file DistributedTetrahedralMesh.cpp.
void DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::RegisterHaloNode | ( | unsigned | index | ) | [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 545 of file DistributedTetrahedralMesh.cpp.
void DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::RegisterNode | ( | unsigned | index | ) | [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 539 of file DistributedTetrahedralMesh.cpp.
void DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ReorderNodes | ( | ) | [private] |
Reorder the node indices in this mesh by applying the permutation give in mNodesPermutation.
The node indexed with "i" will be re-assigned with the new index mNodesPermutation[i]
Definition at line 627 of file DistributedTetrahedralMesh.cpp.
References PetscTools::IsParallel().
void DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::Scale | ( | const double | xFactor = 1.0 , |
const double | yFactor = 1.0 , |
||
const double | zFactor = 1.0 |
||
) | [virtual] |
Scale the mesh - uses the parent class for scaling the nodes. This derived specialisation is for scaling halo nodes.
xFactor | is the scale in the x-direction (defaults to 1.0) |
yFactor | is the scale in the y-direction (defaults to 1.0) |
zFactor | is the scale in the z-direction (defaults to 1.0) |
Reimplemented from AbstractMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 1160 of file DistributedTetrahedralMesh.cpp.
References AbstractMesh< ELEMENT_DIM, SPACE_DIM >::Scale().
void DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::serialize | ( | Archive & | archive, |
const unsigned int | version | ||
) | [inline, private] |
Serialize the mesh.
archive | the archive |
version | the current version of this class |
Reimplemented from AbstractMesh< ELEMENT_DIM, SPACE_DIM >.
Reimplemented in DistributedQuadraticMesh< DIM >, and MixedDimensionMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 104 of file DistributedTetrahedralMesh.hpp.
void DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::SetDistributedVectorFactory | ( | DistributedVectorFactory * | pFactory | ) | [virtual] |
Specify the node distribution across processes. This also makes sure we don't try to use METIS to partition the mesh.
pFactory | a factory to use for this mesh |
Reimplemented from AbstractMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 88 of file DistributedTetrahedralMesh.cpp.
References AbstractMesh< ELEMENT_DIM, SPACE_DIM >::SetDistributedVectorFactory().
void DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::SetElementOwnerships | ( | ) | [private, virtual] |
Sets the ownership of each element according to which nodes are owned by the process.
Information on node ownership comes from the distributed vector factory and an element is "owned" if one or more of its nodes are owned
Reimplemented from AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 506 of file DistributedTetrahedralMesh.cpp.
unsigned DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::SolveBoundaryElementMapping | ( | unsigned | index | ) | const [protected, virtual] |
Overridden solve boundary element mapping method.
index | the global index of the boundary element |
Implements AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 595 of file DistributedTetrahedralMesh.cpp.
References EXCEPTION, and PetscTools::GetMyRank().
unsigned DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::SolveElementMapping | ( | unsigned | index | ) | const [protected, virtual] |
Overridden solve element mapping method.
index | the global index of the element |
Implements AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 582 of file DistributedTetrahedralMesh.cpp.
References EXCEPTION, and PetscTools::GetMyRank().
unsigned DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::SolveNodeMapping | ( | unsigned | index | ) | const [protected, virtual] |
Overridden solve node mapping method.
index | the global index of the node |
Implements AbstractMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 563 of file DistributedTetrahedralMesh.cpp.
References EXCEPTION, and PetscTools::GetMyRank().
friend class boost::serialization::access [friend] |
Needed for serialization.
Reimplemented from AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >.
Reimplemented in DistributedQuadraticMesh< DIM >, and MixedDimensionMesh< ELEMENT_DIM, SPACE_DIM >.
Definition at line 96 of file DistributedTetrahedralMesh.hpp.
std::map<unsigned, unsigned> DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mBoundaryElementsMapping [private] |
A map from boundary element global index to local index used by this process.
Definition at line 90 of file DistributedTetrahedralMesh.hpp.
std::map<unsigned, unsigned> DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mElementsMapping [private] |
A map from element global index to local index used by this process.
Definition at line 87 of file DistributedTetrahedralMesh.hpp.
std::vector<Node<SPACE_DIM>* > DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mHaloNodes [private] |
Vector of pointer to halo nodes used by this process.
Definition at line 78 of file DistributedTetrahedralMesh.hpp.
std::map<unsigned, unsigned> DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mHaloNodesMapping [private] |
A map from halo node global index to local index used by this process.
Definition at line 84 of file DistributedTetrahedralMesh.hpp.
DistributedTetrahedralMeshPartitionType::type DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mMetisPartitioning [private] |
Partitioning method.
Definition at line 93 of file DistributedTetrahedralMesh.hpp.
Referenced by DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::DistributedTetrahedralMesh().
std::map<unsigned, unsigned> DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mNodesMapping [private] |
A map from node global index to local index used by this process.
Definition at line 81 of file DistributedTetrahedralMesh.hpp.
unsigned DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mTotalNumBoundaryElements [private] |
The total number of boundary elements in the mesh.
Definition at line 72 of file DistributedTetrahedralMesh.hpp.
unsigned DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mTotalNumElements [private] |
The total number of elements in the mesh.
Definition at line 69 of file DistributedTetrahedralMesh.hpp.
unsigned DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::mTotalNumNodes [private] |
The total number of nodes in the mesh.
Definition at line 75 of file DistributedTetrahedralMesh.hpp.