preCICE v3.1.2
|
Abstract base class for partitions. More...
#include <Partition.hpp>
Public Member Functions | |
Partition (mesh::PtrMesh mesh) | |
Constructor. | |
Partition & | operator= (Partition &&)=delete |
virtual | ~Partition () |
virtual void | compareBoundingBoxes ()=0 |
Intersections between bounding boxes around each rank are computed. | |
virtual void | communicate ()=0 |
The mesh is communicated between both primary ranks (if required) | |
virtual void | compute ()=0 |
The partition is computed, i.e. the mesh re-partitioned if required and all data structures are set up. | |
void | addFromMapping (mapping::PtrMapping fromMapping) |
void | addToMapping (mapping::PtrMapping toMapping) |
void | addM2N (m2n::PtrM2N m2n) |
Protected Attributes | |
mesh::PtrMesh | _mesh |
std::vector< mapping::PtrMapping > | _fromMappings |
std::vector< mapping::PtrMapping > | _toMappings |
std::vector< m2n::PtrM2N > | _m2ns |
m2n connection to each connected participant | |
Private Attributes | |
logging::Logger | _log {"partition::Partition"} |
Abstract base class for partitions.
A Partition describes how a mesh is decomposed among multiple ranks and is associated to a "provide-mesh" or "receive-mesh" a participant holds. This class holds the structures that describe the decomposition (if not the mesh) and compute them.
A Partition can come in two flavors: Either defined by a participant (provide-mesh) or received from another participant (receive-mesh).
Access to the associated mesh, to both mappings (from and to this mesh), and to an m2n communication to another participant is necessary.
Definition at line 29 of file Partition.hpp.
precice::partition::Partition::Partition | ( | mesh::PtrMesh | mesh | ) |
Constructor.
Definition at line 7 of file Partition.cpp.
|
inlinevirtual |
Definition at line 36 of file Partition.hpp.
|
inline |
Definition at line 47 of file Partition.hpp.
|
inline |
Definition at line 57 of file Partition.hpp.
|
inline |
Definition at line 52 of file Partition.hpp.
|
pure virtual |
The mesh is communicated between both primary ranks (if required)
Implemented in precice::partition::ProvidedPartition, and precice::partition::ReceivedPartition.
|
pure virtual |
Intersections between bounding boxes around each rank are computed.
Implemented in precice::partition::ProvidedPartition, and precice::partition::ReceivedPartition.
|
pure virtual |
The partition is computed, i.e. the mesh re-partitioned if required and all data structures are set up.
Implemented in precice::partition::ProvidedPartition, and precice::partition::ReceivedPartition.
|
protected |
Definition at line 65 of file Partition.hpp.
|
private |
Definition at line 73 of file Partition.hpp.
|
protected |
m2n connection to each connected participant
Definition at line 70 of file Partition.hpp.
|
protected |
Definition at line 63 of file Partition.hpp.
|
protected |
Definition at line 67 of file Partition.hpp.