preCICE v3.2.0
|
Abstract base class for partitions. More...
#include <Partition.hpp>
Public Member Functions | |
Partition (mesh::PtrMesh mesh) | |
Constructor. | |
Partition & | operator= (Partition &&)=delete |
virtual | ~Partition ()=default |
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 28 of file Partition.hpp.
precice::partition::Partition::Partition | ( | mesh::PtrMesh | mesh | ) |
Constructor.
Definition at line 7 of file Partition.cpp.
|
virtualdefault |
|
inline |
Definition at line 46 of file Partition.hpp.
|
inline |
Definition at line 56 of file Partition.hpp.
|
inline |
Definition at line 51 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 64 of file Partition.hpp.
|
private |
Definition at line 72 of file Partition.hpp.
|
protected |
m2n connection to each connected participant
Definition at line 69 of file Partition.hpp.
|
protected |
Definition at line 62 of file Partition.hpp.
|
protected |
Definition at line 66 of file Partition.hpp.