preCICE v3.2.0
|
Configuration for coupling schemes. More...
#include <CouplingSchemeConfiguration.hpp>
Classes | |
struct | Config |
struct | ConvergenceMeasureDefintion |
Public Member Functions | |
CouplingSchemeConfiguration (xml::XMLTag &parent, mesh::PtrMeshConfiguration meshConfig, m2n::M2NConfiguration::SharedPointer m2nConfig, config::PtrParticipantConfiguration participantConfig) | |
Constructor. | |
void | setRemeshing (bool allowed) |
~CouplingSchemeConfiguration () override=default | |
Destructor, empty. | |
bool | hasCouplingScheme (const std::string &participantName) const |
Check, if a coupling scheme is configured for a participant. | |
const PtrCouplingScheme & | getCouplingScheme (const std::string &participantName) const |
Returns the configured coupling scheme. | |
const std::string & | getDataToExchange (int index) const |
Returns the name of one dataset exchanged in the coupling scheme. | |
void | xmlTagCallback (const xml::ConfigurationContext &context, xml::XMLTag &callingTag) override |
Callback method required when using xml::XMLTag. | |
void | xmlEndTagCallback (const xml::ConfigurationContext &context, xml::XMLTag &callingTag) override |
Callback method required when using xml::XMLTag. | |
void | addCouplingScheme (const PtrCouplingScheme &cplScheme, const std::string &participantName) |
Adds a manually configured coupling scheme for a participant. | |
![]() | |
Listener & | operator= (Listener &&)=delete |
virtual | ~Listener ()=default |
Static Private Attributes | |
static const int | DEFAULT_MIN_ITERATIONS |
static const int | DEFAULT_MAX_ITERATIONS |
Configuration for coupling schemes.
Definition at line 43 of file CouplingSchemeConfiguration.hpp.
precice::cplscheme::CouplingSchemeConfiguration::CouplingSchemeConfiguration | ( | xml::XMLTag & | parent, |
mesh::PtrMeshConfiguration | meshConfig, | ||
m2n::M2NConfiguration::SharedPointer | m2nConfig, | ||
config::PtrParticipantConfiguration | participantConfig ) |
Constructor.
[in] | parent | Used to add subtags to hierarchical XML structure. |
[in] | meshConfig | For checking if a used mesh is defined. |
[in] | m2nConfig | For checking if a communication between participants to be coupled is defined. |
[in] | participantConfig | For checking waveform degree. |
Definition at line 45 of file CouplingSchemeConfiguration.cpp.
|
overridedefault |
Destructor, empty.
|
private |
Definition at line 678 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 700 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 625 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 1154 of file CouplingSchemeConfiguration.cpp.
void precice::cplscheme::CouplingSchemeConfiguration::addCouplingScheme | ( | const PtrCouplingScheme & | cplScheme, |
const std::string & | participantName ) |
Adds a manually configured coupling scheme for a participant.
Definition at line 387 of file CouplingSchemeConfiguration.cpp.
|
private |
Adds configured exchange data to be sent or received to scheme.
Definition at line 1016 of file CouplingSchemeConfiguration.cpp.
|
private |
Adds configured exchange data to be sent or received to scheme. Only used specifically for MultiCouplingScheme.
Definition at line 1064 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 728 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 756 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 561 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 576 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 667 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 539 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 655 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 643 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 525 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 510 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 610 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 594 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 473 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 422 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 1099 of file CouplingSchemeConfiguration.cpp.
|
private |
Helper function to check iteration limits in conjunction with convergence measures.
Definition at line 975 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 1122 of file CouplingSchemeConfiguration.cpp.
|
private |
Helper function to check that waveform-degree and substep exchange are compatible.
The following rules are checked:
1) If waveform-degree="0", then user must set substeps="false", because constant interpolation (zeroth degree) is intended for debugging and user should use first degree instead. 2) If waveform-degree="1", then any configuration for substeps is allowed. The user might want to set substeps="false" for better performance. 3) If waveform-degree="2" or greater, the user must set substeps="true", because subcycling and exchange of substeps is required for higher-degree B-splines.
exchange | The Exchange being checked. |
Definition at line 989 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 908 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 825 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 882 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 805 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 846 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 794 of file CouplingSchemeConfiguration.cpp.
const PtrCouplingScheme & precice::cplscheme::CouplingSchemeConfiguration::getCouplingScheme | ( | const std::string & | participantName | ) | const |
Returns the configured coupling scheme.
Definition at line 145 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 784 of file CouplingSchemeConfiguration.cpp.
const std::string & precice::cplscheme::CouplingSchemeConfiguration::getDataToExchange | ( | int | index | ) | const |
Returns the name of one dataset exchanged in the coupling scheme.
|
private |
Definition at line 954 of file CouplingSchemeConfiguration.cpp.
bool precice::cplscheme::CouplingSchemeConfiguration::hasCouplingScheme | ( | const std::string & | participantName | ) | const |
Check, if a coupling scheme is configured for a participant.
Definition at line 139 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 1182 of file CouplingSchemeConfiguration.cpp.
void precice::cplscheme::CouplingSchemeConfiguration::setRemeshing | ( | bool | allowed | ) |
Definition at line 1205 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 1166 of file CouplingSchemeConfiguration.cpp.
|
private |
Helper to update some configs which may have a different meaning in implicit coupling.
Definition at line 968 of file CouplingSchemeConfiguration.cpp.
|
overridevirtual |
Callback method required when using xml::XMLTag.
TODO test multi coupling scheme
Implements precice::xml::XMLTag::Listener.
Definition at line 318 of file CouplingSchemeConfiguration.cpp.
|
overridevirtual |
Callback method required when using xml::XMLTag.
Implements precice::xml::XMLTag::Listener.
Definition at line 156 of file CouplingSchemeConfiguration.cpp.
|
private |
Definition at line 175 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 83 of file CouplingSchemeConfiguration.hpp.
|
private |
|
private |
If a participant has more than one coupling scheme, a composition is created.
Definition at line 183 of file CouplingSchemeConfiguration.hpp.
|
private |
Map from participant name to coupling scheme (composition).
Definition at line 180 of file CouplingSchemeConfiguration.hpp.
|
mutableprivate |
Definition at line 84 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 173 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 171 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 177 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 111 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 118 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 100 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 104 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 106 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 114 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 103 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 110 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 101 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 109 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 113 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 102 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 112 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 107 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 117 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 116 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 115 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 105 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 108 of file CouplingSchemeConfiguration.hpp.
|
staticprivate |
Definition at line 129 of file CouplingSchemeConfiguration.hpp.
|
staticprivate |
Definition at line 128 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 86 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 93 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 94 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 89 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 98 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 90 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 91 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 97 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 88 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 87 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 95 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 96 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 92 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 126 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 125 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 124 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 121 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 123 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 120 of file CouplingSchemeConfiguration.hpp.
|
private |
Definition at line 122 of file CouplingSchemeConfiguration.hpp.