Skip to content
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

Duplicated coupling nodes in parallel runs #31

Open
davidscn opened this issue Jan 30, 2023 · 4 comments
Open

Duplicated coupling nodes in parallel runs #31

davidscn opened this issue Jan 30, 2023 · 4 comments
Labels

Comments

@davidscn
Copy link
Member

When working a bit with samples created from SU2, I realized that SU2/ our adapter implementation currently duplicates interface nodes at rank boundaries. This poses ill-defined mapping problems for preCICE and might lead to (rather) undefined behavior in the solver (although I'm not familiar with the details here in SU2).

We did not notice it so far because the perpendicular-flap tutorial executes all mappings on the fluid side, i.e., the fluid mesh constitutes the output mesh. However, switching the mapping to the solid participant (write->read) and making the Force mapping (physically wrong, only for the experiment here) a consistent mapping, leads to a RBF divergence in parallel, while it works in serial. Looking at the number of vertices in our exports confirms the duplicate definition across multiple ranks.

@davidscn davidscn added the bug label Jan 30, 2023
@uekerman
Copy link
Member

uekerman commented Feb 19, 2023

This could very well be on purpose, to be able to read the displacement values on all ranks. A common hack.

See also: https://precice.org/couple-your-code-distributed-meshes.html

Not saying that one could not implement a better solution. And presumably it needs documentation ... that conservative mappings from the SU2 mesh and consistent mappings to the SU2 are forbidden.

@davidscn
Copy link
Member Author

Not sure about the hack: using a conservative mapping will mostly be wrong or must be well handled in the adapter: a conservative mapping to the SU2 mesh will lead to conflicting boundary conditions (and will trigger an error in the RBF mapping/singular matrices) on the SU2 side. A consistent mapping from the SU2 mesh will be ill-posed in parallel as well, no real need to forbid them. A consistent mapping so the SU2 mesh might be ok, though.

@kursatyurt
Copy link

I don't see any halo node check in the adapter. The halo vertices are also included when setting the mesh see
You need a check as follows before adding that point to mesh see.

@MakisH
Copy link
Member

MakisH commented Apr 3, 2024

@davidscn @kursatyurt do you think this is still relevant with the rewritten adapter?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants