-
-
Notifications
You must be signed in to change notification settings - Fork 20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fixed implicit coupling in modal dynamic simulation. #99
Merged
Conversation
This file contains 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
Marking this as a draft for now, because there seems to be a bug that makes non-converging iterations written as output too. |
KyleDavisSA
approved these changes
Jul 18, 2022
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All changes seem good!
boris-martin
added a commit
that referenced
this pull request
Nov 17, 2022
* Improved error message (for missing mesh) (#88) * Added error message for missing faces mesh * Improved error message for missing nodes mesh * 2D simulations major overhaul (#92) Fixed 2D simulations being unusable with Temperature BC. Arbitrary number of elements on the Z-axis is now allowed and handled assuming data independant of the Z-axis. * Added Pressure ExchangeData, hexaedral elements and Modal Dynamic Modus (#91) * Added Pressure ExchangeData, hexaedral elements and Modal Dynamic Modus * Update dyna_precice.c Co-authored-by: Matthias Freimuth <matzefreim@gmail.com> Co-authored-by: Boris Martin <84379125+boris-martin@users.noreply.github.com> * format * Added warning of broken implicit coupling when using modal dynamic simulations * Fixed mesh configuration 2D coupling with Face meshes (#94) * Fixed mesh config for face mesh * Removed dead code * Fixed missing include * Fixed crash when using face meshes and element IDs don't start to 0 (#95) * Fixed crashing simulation when using face meshes and element IDs don't start to 0 * Typo Co-authored-by: Ishaan Desai <ishaandesai@gmail.com> * Typo Co-authored-by: Ishaan Desai <ishaandesai@gmail.com> * Typo Co-authored-by: Ishaan Desai <ishaandesai@gmail.com> * Update adapter/CCXHelpers.h Co-authored-by: Ishaan Desai <ishaandesai@gmail.com> * format * reverted fallow-argument-mismatch * format Co-authored-by: Ishaan Desai <ishaandesai@gmail.com> * Revert "Fixed crash when using face meshes and element IDs don't start to 0 (#95)" (#96) This reverts commit 9cfc0cf. * Update packaging script to Ubuntu 22.04 LTS (#98) * added ubuntu 22.04 to the list of OSes in Github action * updated to 2 Ubuntu LTS only, added fflags * fixed wrong distribution name * added preivous Ubuntu non-LTS * fixd missing os * typo * removed non LTS * Fixed face mesh config(correct PR) (#97) * Fixed crashing simulation when using face meshes and element IDs don't start to 0 * Typo Co-authored-by: Ishaan Desai <ishaandesai@gmail.com> * Typo Co-authored-by: Ishaan Desai <ishaandesai@gmail.com> * Typo Co-authored-by: Ishaan Desai <ishaandesai@gmail.com> * Update adapter/CCXHelpers.h Co-authored-by: Ishaan Desai <ishaandesai@gmail.com> Co-authored-by: Ishaan Desai <ishaandesai@gmail.com> * format * format * restored script * Fixed implicit coupling in modal dynamic simulation. (#99) * Fixed missing checkpointing * fixed extra output in implicit coupling * removed deprecated warnings * Fixed crash when freeing unused pointers (#102) * init NULL pointers * Enable Static Step for FSI (#101) * Update ccx_2.19.c Enable basic Static Step * Update ccx_2.19.c * Update ccx_2.19.c * Add error messages when reading invalid data in modal dynamic simulations (#103) * registering modal dynamic * added forbidden reading types to modal dynamic sims * added actual error * Update adapter/PreciceInterface.c Co-authored-by: Gerasimos Chourdakis <makishourdakis@gmail.com> * Update adapter/PreciceInterface.h Co-authored-by: Gerasimos Chourdakis <makishourdakis@gmail.com> Co-authored-by: Gerasimos Chourdakis <makishourdakis@gmail.com> * basic infrastructure for proper checkpointingin dyna_precice * seemingly working implict + subcycling modal dynamic simulations * Prototype output buffer * added C API * added missing function * improved Buffer * Actual usage of the buffer, seemingly working * added short description of the buffer mechanism * cleanup * refactoring * format * removed dead code * renamed for consistency * no longer asking for length when loading data * cleanup * documentation * removed apparently useless memcpy (#104) * Make read/write data name parsing consistent (#108) * Update for CalculiX v2.20 (#109) Co-authored-by: Boris Martin <84379125+boris-martin@users.noreply.github.com> Co-authored-by: MatthiasFreimuth <34025080+MatthiasFreimuth@users.noreply.github.com> Co-authored-by: Matthias Freimuth <matzefreim@gmail.com> Co-authored-by: Boris Martin <boris.martin.be@gmail.com> Co-authored-by: Ishaan Desai <ishaandesai@gmail.com> Co-authored-by: Kyle Davis <kyle.davis@ipvs.uni-stuttgart.de>
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.
See #93.
Implicit coupling now seems to work as expected, I have a modified version of the perpendicular flap tutorial adapted to modal dynamic simulations that gives plausible results (although slightly different than the reference solution, but since I used a smaller number of frequencies it makes sense).
The fix is quite simple to understand (but was tricky to find in the hundred of lines of badly-documented code 😅 ) : since the simulation is done in frequency space, checkpointing must restore DOFs in the corresponding eigenmodes, not just the final displacements. So when reading I checkpoint I update these.
I also removed the use of the
icutb
variable, which is actually unused