This class provides a lightweight logger.
virtual void compareBoundingBoxes()=0
Intersections between bounding boxes around each rank are computed.
Partition & operator=(Partition &&)=delete
std::vector< mapping::PtrMapping > _toMappings
Partition(mesh::PtrMesh mesh)
Constructor.
void addFromMapping(mapping::PtrMapping fromMapping)
void addM2N(m2n::PtrM2N m2n)
std::vector< mapping::PtrMapping > _fromMappings
void addToMapping(mapping::PtrMapping toMapping)
virtual void compute()=0
The partition is computed, i.e. the mesh re-partitioned if required and all data structures are set u...
std::vector< m2n::PtrM2N > _m2ns
m2n connection to each connected participant
virtual void communicate()=0
The mesh is communicated between both primary ranks (if required)
virtual ~Partition()=default
contains the logic of the parallel communication between participants.
std::shared_ptr< M2N > PtrM2N
std::shared_ptr< Mapping > PtrMapping
provides Mesh, Data and primitives.
std::shared_ptr< Mesh > PtrMesh
contains the partitioning of distributed meshes.