preCICE
Loading...
Searching...
No Matches
precice::m2n Namespace Reference

contains the logic of the parallel communication between participants. More...

Classes

class  BoundM2N
 An M2N between participants with a configured direction. More...
class  M2NConfiguration
 Configuration for communication channels between solvers. More...
class  DistributedComFactory
class  DistributedCommunication
 Interface for all distributed solver to solver communication classes. More...
class  GatherScatterComFactory
class  GatherScatterCommunication
 Implements DistributedCommunication by using a gathering/scattering methodology. Arrays of data are always gathered and scattered at the primary. No direct communication between secondary ranks is used. For more details see m2n/DistributedCommunication.hpp. More...
class  M2N
 M2N communication class. This layer is necessary since communication between two participants can be working via several meshes, each possibly with a different decomposition. In principle, this class is only a map from meshes to DistributedCommunications. More...
struct  WhiteboxAccessor
 struct giving access _useOnlyPrimaryCom More...
class  PointToPointComFactory
class  PointToPointCommunication
 Point-to-point communication implementation of DistributedCommunication. More...

Typedefs

using PtrM2N = std::shared_ptr<M2N>

Functions

void send (mesh::Mesh::VertexDistribution const &m, int rankReceiver, const com::PtrCommunication &communication)
void receive (mesh::Mesh::VertexDistribution &m, int rankSender, const com::PtrCommunication &communication)
void broadcastSend (mesh::Mesh::VertexDistribution const &m, const com::PtrCommunication &communication=utils::IntraComm::getCommunication())
void broadcastReceive (mesh::Mesh::VertexDistribution &m, int rankBroadcaster, const com::PtrCommunication &communication=utils::IntraComm::getCommunication())
void broadcast (mesh::Mesh::VertexDistribution &m)
void print (std::map< int, std::vector< int > > const &m)
void printCommunicationPartnerCountStats (std::map< int, std::vector< int > > const &m)
void printLocalIndexCountStats (std::map< int, std::vector< int > > const &m)

Detailed Description

contains the logic of the parallel communication between participants.

Typedef Documentation

◆ PtrM2N

using precice::m2n::PtrM2N = std::shared_ptr<M2N>

Definition at line 9 of file SharedPointer.hpp.

Function Documentation

◆ broadcast()

void precice::m2n::broadcast ( mesh::Mesh::VertexDistribution & m)

Definition at line 89 of file PointToPointCommunication.cpp.

Here is the call graph for this function:

◆ broadcastReceive()

void precice::m2n::broadcastReceive ( mesh::Mesh::VertexDistribution & m,
int rankBroadcaster,
const com::PtrCommunication & communication = utils::IntraComm::getCommunication() )

Definition at line 74 of file PointToPointCommunication.cpp.

Here is the call graph for this function:

◆ broadcastSend()

void precice::m2n::broadcastSend ( mesh::Mesh::VertexDistribution const & m,
const com::PtrCommunication & communication = utils::IntraComm::getCommunication() )

Definition at line 61 of file PointToPointCommunication.cpp.

Here is the call graph for this function:

◆ print()

void precice::m2n::print ( std::map< int, std::vector< int > > const & m)

Definition at line 100 of file PointToPointCommunication.cpp.

Here is the call graph for this function:

◆ printCommunicationPartnerCountStats()

void precice::m2n::printCommunicationPartnerCountStats ( std::map< int, std::vector< int > > const & m)

Definition at line 128 of file PointToPointCommunication.cpp.

Here is the call graph for this function:

◆ printLocalIndexCountStats()

void precice::m2n::printLocalIndexCountStats ( std::map< int, std::vector< int > > const & m)

Definition at line 180 of file PointToPointCommunication.cpp.

Here is the call graph for this function:

◆ receive()

void precice::m2n::receive ( mesh::Mesh::VertexDistribution & m,
int rankSender,
const com::PtrCommunication & communication )

Definition at line 46 of file PointToPointCommunication.cpp.

◆ send()

void precice::m2n::send ( mesh::Mesh::VertexDistribution const & m,
int rankReceiver,
const com::PtrCommunication & communication )

Definition at line 32 of file PointToPointCommunication.cpp.