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

Add support for bilinear interpolation in the distributed remapper #2038

Open
Sbozzolo opened this issue Oct 14, 2024 · 0 comments
Open

Add support for bilinear interpolation in the distributed remapper #2038

Sbozzolo opened this issue Oct 14, 2024 · 0 comments
Labels
enhancement New feature or request

Comments

@Sbozzolo
Copy link
Member

Sbozzolo commented Oct 14, 2024

The current non-conservative remapping we are using can change the extrama within an element. It would be good to support bilinear interpolation too, so that we can preserve the extrema.

The way the remapper currently works is this:

  • For each target point, compute the two interpolation vector, one for each horizontal direction. These vectors have size Nq (the number of quadrature points). When you compute one interpolation vector per target point, you obtain an interpolation matrix.
  • Also compute vertical interpolation matrices for linear interpolation
  • Loop over all the points, compute something along the lines of V * W1 * W2 * F, with V vertical weights, W1/W2 horizontal weights, F field value.

To substitute bilinear interpolation, one would have to compute different interpolation weight matrices. These matrices have the challenge that not all the nodal points are relevant, so they wil require some seaching to build. It would be good to make them still with size Nq (but block matrices) so that both interpolation schemes can be used and the only change is defining the interpolation matrix.

@Sbozzolo Sbozzolo added the enhancement New feature or request label Oct 14, 2024
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

No branches or pull requests

1 participant