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

Open
wants to merge 35 commits into
base: master
Choose a base branch
from

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 from 62d4868 to 32a1408 Compare June 11, 2025 22:43
@leo-collins leo-collins force-pushed the vom-to-vom-petscmat3 branch from 6b1f3c8 to 0e85e05 Compare June 12, 2025 19:08
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