Skip to content

Allow construction of interpolation matrix between a VertexOnlyMesh and its input-ordering #4341

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

Merged
merged 37 commits into from
Jul 9, 2025

Conversation

leo-collins
Copy link
Contributor

Description

Allows construction of the interpolation matrix between a VOM and its input-ordering. This is a permutation matrix which is used for cross-mesh interpolation to redistribute the points correctly on the target mesh.

Set the keyword argument matfree=False to construct the matrix. By default matfree=True which uses the current way of SF reduce and broadcasts.

P0DG = FunctionSpace(vom, "DG", 0)
P0DG_io = FunctionSpace(vom.input_ordering, "DG", 0)
B = assemble(interpolate(TestFunction(P0DG), P0DG_io, matfree=False))

@leo-collins leo-collins marked this pull request as ready for review May 28, 2025 14:46
@leo-collins leo-collins force-pushed the vom-to-vom-petscmat3 branch 2 times, most recently from 6b1f3c8 to 0e85e05 Compare June 12, 2025 19:08
@leo-collins leo-collins force-pushed the vom-to-vom-petscmat3 branch 2 times, most recently from b604010 to 7ec084f Compare July 1, 2025 12:30
@leo-collins leo-collins force-pushed the vom-to-vom-petscmat3 branch from 7ec084f to 1608972 Compare July 3, 2025 21:05
@dham dham merged commit 758a6bf into master Jul 9, 2025
6 of 7 checks passed
@dham dham deleted the vom-to-vom-petscmat3 branch July 9, 2025 15:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants