32 double timeWindowSize,
46 bool requiresInitialization,
47 bool exchangeSubsteps);
53 bool requiresInitialization,
54 bool exchangeSubsteps);
Abstract base class for standard coupling schemes.
std::string localParticipant() const final override
Returns the name of the local participant.
Abstract base class for coupling schemes with two participants.
bool hasSendData(DataID dataID)
std::string _secondParticipant
Second participant name.
DataMap & getSendData()
Returns all data to be sent.
DataMap _sendData
All send data as a map "data ID -> data".
std::string _firstParticipant
First participant name.
DataMap _receiveData
All receive data as a map "data ID -> data".
m2n::PtrM2N _m2n
Communication to the other coupling participant.
bool hasAnySendData() final override
void addDataToReceive(const mesh::PtrData &data, mesh::PtrMesh mesh, bool requiresInitialization, bool exchangeSubsteps)
Adds data to be received on data exchange.
std::vector< std::string > getCouplingPartners() const final override
returns list of all coupling partners
DataMap & getReceiveData()
Returns all data to be received.
BiCouplingScheme(double maxTime, int maxTimeWindows, double timeWindowSize, std::string firstParticipant, std::string secondParticipant, const std::string &localParticipant, m2n::PtrM2N m2n, int minIterations, int maxIterations, CouplingMode cplMode, constants::TimesteppingMethod dtMethod)
void initializeReceiveDataStorage() final override
Functions needed for initialize()
void addDataToSend(const mesh::PtrData &data, mesh::PtrMesh mesh, bool requiresInitialization, bool exchangeSubsteps)
Adds data to be sent on data exchange and possibly be modified during coupling iterations.
m2n::PtrM2N getM2N() const
void determineInitialDataExchange() override
Determines which data is initialized and therefore has to be exchanged during initialize.
This class provides a lightweight logger.
contains implementations of coupling schemes for coupled simulations.