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

Parallel consistent interpolation #39

Closed
jwallwork23 opened this issue Sep 1, 2023 · 4 comments · Fixed by #128
Closed

Parallel consistent interpolation #39

jwallwork23 opened this issue Sep 1, 2023 · 4 comments · Fixed by #128
Labels
enhancement New feature or request

Comments

@jwallwork23
Copy link
Member

Currently we transfer solution fields between meshes using a conservative projection method, which is difficult to get to work in parallel. It would be good if we could get consistent interpolation to work in parallel.

Parent issue: pyroteus/pyroteus#8.

@jwallwork23 jwallwork23 added the enhancement New feature or request label Sep 1, 2023
@ddundo
Copy link
Member

ddundo commented Feb 16, 2024

Connected to the Animate issue #71 to use subprocess to adapt, I was using subprocess to project in serial. Maybe we could do the same?

I would again do this in a separate script that I'd call from subprocess and make sure to use the same distribution parameters when I load the meshes (using file.load_mesh(..., distribution_parameters=...) with CheckpointFile) as the parameters I used when I created the meshes in the original script.

@jwallwork23
Copy link
Member Author

Thanks @ddundo. We were hoping to use the new point interpolation functionality, which apparently works better in parallel. (See mesh-adaptation/animate#56).

@ddundo
Copy link
Member

ddundo commented Feb 20, 2024

Thanks @jwallwork23! Could you please point me to this new interpolation? I don't think I've seen it.

And do you then plan to completely drop the current projection eventually? Or will you keep both?

@jwallwork23
Copy link
Member Author

It hasn't been implemented in Animate or Goalie yet but it will use point interpolation via VertexOnlyMesh. Reuben tells me he has tested out mesh-to-mesh interpolation with this method and it works.

We'll likely keep both but default to the new one if it does indeed turn out to work better in parallel.

ddundo added a commit that referenced this issue Mar 16, 2024
ddundo added a commit that referenced this issue Mar 21, 2024
ddundo added a commit that referenced this issue Mar 21, 2024
Closes #39.

Introduces parallel-compatible mesh-to-mesh interpolation as the default transfer method

---------

Co-authored-by: Joe Wallwork <22053413+jwallwork23@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants