Waveform interpolation, read direction for serial implicit coupling#1352
Merged
BenjaminRodenberg merged 139 commits intoprecice:develop-v3.0.0from Jul 12, 2022
Conversation
…ce/precice into 1149-restructure-integration-tests
…ce/precice into 1149-restructure-integration-tests
…ce/precice into 1149-restructure-integration-tests
…ce/precice into 1149-restructure-integration-tests
… into 1196-merge-initialize-initializeData
…ial-implicit-read-direction
…ial-implicit-read-direction
…ial-implicit-read-direction
This was referenced Jul 9, 2022
* Merge initialize and initializeData in SolverInterfaceImpl. * Merge initialize and initializeData in CouplingScheme. * Update tests correspondingly * Allow to check actions before initialize, especially checking whether initial data has to be written * Check for sending and receiving of initial data during coupling scheme configuration * Code simplification w.r.t waveform. * Use dt=0.0 in actions in initialize. Co-authored-by: Benjamin Uekermann <[email protected]> Co-authored-by: Frédéric Simonis <[email protected]>
Contributor
Author
BenjaminRodenberg
left a comment
There was a problem hiding this comment.
From my perspective ready to review. The only part that might be something we want to deal with before merging this PR is the one related to #1367, where I put a comment.
Comment on lines
+993
to
+998
| if (not _experimental) { | ||
| PRECICE_CHECK(scheme.doesFirstStep(), | ||
| "In serial coupling only first participant can receive initial data. " | ||
| "Please check the <exchange data=\"{}\" mesh=\"{}\" from=\"{}\" to=\"{}\" initialize=\"{}\" /> tag in the <coupling-scheme:... /> of your precice-config.xml. You can bypass this restriction by activating the experimental interface for time interpolation. Please refer to the documentation for more details.", | ||
| dataName, meshName, from, to, requiresInitialization); | ||
| } |
uekerman
approved these changes
Jul 12, 2022
Member
uekerman
left a comment
There was a problem hiding this comment.
Very clean and readable implementation, nice job 👍
(I did not check all details of the integration tests)
Co-authored-by: Benjamin Uekermann <[email protected]>
8d3aff4 to
8338d6a
Compare
BenjaminRodenberg
added a commit
that referenced
this pull request
Jul 29, 2022
…1352) * Get tests and configs for serial implicit waveform interpolation from #1029. * Differentiate between received initial data and data (from advance). * Split data communication for SerialCouplingScheme and store initial data in waveform. * Move common functionality of serial and parallel coupling scheme into BiCouplingScheme. Co-authored-by: Benjamin Uekermann <[email protected]>
BenjaminRodenberg
added a commit
that referenced
this pull request
Aug 5, 2022
…1352) * Get tests and configs for serial implicit waveform interpolation from #1029. * Differentiate between received initial data and data (from advance). * Split data communication for SerialCouplingScheme and store initial data in waveform. * Move common functionality of serial and parallel coupling scheme into BiCouplingScheme. Co-authored-by: Benjamin Uekermann <[email protected]>
BenjaminRodenberg
added a commit
that referenced
this pull request
Aug 5, 2022
…1352) * Get tests and configs for serial implicit waveform interpolation from #1029. * Differentiate between received initial data and data (from advance). * Split data communication for SerialCouplingScheme and store initial data in waveform. * Move common functionality of serial and parallel coupling scheme into BiCouplingScheme. Co-authored-by: Benjamin Uekermann <[email protected]>
BenjaminRodenberg
added a commit
that referenced
this pull request
Aug 11, 2022
…1352) * Get tests and configs for serial implicit waveform interpolation from #1029. * Differentiate between received initial data and data (from advance). * Split data communication for SerialCouplingScheme and store initial data in waveform. * Move common functionality of serial and parallel coupling scheme into BiCouplingScheme. Co-authored-by: Benjamin Uekermann <[email protected]>
BenjaminRodenberg
added a commit
that referenced
this pull request
Aug 22, 2022
…1352) * Get tests and configs for serial implicit waveform interpolation from #1029. * Differentiate between received initial data and data (from advance). * Split data communication for SerialCouplingScheme and store initial data in waveform. * Move common functionality of serial and parallel coupling scheme into BiCouplingScheme. Co-authored-by: Benjamin Uekermann <[email protected]>
BenjaminRodenberg
added a commit
that referenced
this pull request
Sep 15, 2022
…1352) * Get tests and configs for serial implicit waveform interpolation from #1029. * Differentiate between received initial data and data (from advance). * Split data communication for SerialCouplingScheme and store initial data in waveform. * Move common functionality of serial and parallel coupling scheme into BiCouplingScheme. Co-authored-by: Benjamin Uekermann <[email protected]>
8 tasks
BenjaminRodenberg
added a commit
that referenced
this pull request
Nov 2, 2022
…1352) * Get tests and configs for serial implicit waveform interpolation from #1029. * Differentiate between received initial data and data (from advance). * Split data communication for SerialCouplingScheme and store initial data in waveform. * Move common functionality of serial and parallel coupling scheme into BiCouplingScheme. Co-authored-by: Benjamin Uekermann <[email protected]>
BenjaminRodenberg
added a commit
that referenced
this pull request
Nov 4, 2022
…1352) * Get tests and configs for serial implicit waveform interpolation from #1029. * Differentiate between received initial data and data (from advance). * Split data communication for SerialCouplingScheme and store initial data in waveform. * Move common functionality of serial and parallel coupling scheme into BiCouplingScheme. Co-authored-by: Benjamin Uekermann <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Main changes of this PR
Implements waveform interpolation for serial coupling. Related to #1187
This PR in combination with #1187 closes #1174.
Motivation and additional information
See #1029. Implements waveform interpolation for serial coupling. Main obstacle here is to allow the second participant to receive two pieces of data in
initialize(): 1) the initial data from first and 2) the result from the first time window of first send by callingadvance.Todos
Author's checklist
make changelogif there are user-observable changes since the last release.make formatto ensure everything is formatted correctly.Reviewers' checklist