precice
precice copied to clipboard
Remove Multi- and BiCouplingScheme
Main changes of this PR
- Merge Multi- and ParallelCouplingScheme
- Remove BiCouplingScheme in favor of SerialCouplingScheme
- Simplifies class hierarchy and limits amount of duplicate code
Motivation and additional information
Removes a lot of code and reduces the implementation effort necessary for #1414. On the long run I assume that the MultiCouplingScheme will also profit from this change, because it gets automatically tested by the ParallelCouplingScheme.
Author's checklist
- [ ] I added a changelog file with
make changelog
if there are user-observable changes since the last release. - [ ] I added a test to cover the proposed changes in our test suite.
- [ ] I ran
make format
to ensure everything is formatted correctly. - [ ] I sticked to C++17 features.
- [ ] I sticked to CMake version 3.16.3.
- [ ] I squashed / am about to squash all commits that should be seen as one.
Reviewers' checklist
- [ ] Does the changelog entry make sense? Is it formatted correctly?
- [ ] Do you understand the code changes?
After discussion with @uekerman: Let's keep this PR as it is for the moment. The change is definitely not a clear thing, but useful during the development on #1414 (it reduces code duplication and simplifies changes in https://github.com/BenjaminRodenberg/precice/pull/13). As soon as https://github.com/BenjaminRodenberg/precice/pull/13 has converged, we can either include the refactoring of #1432 or drop it (and implement the relevant changes from https://github.com/BenjaminRodenberg/precice/pull/13 in #1414).
Closing for now as we decided against this refactoring.