Skip to content

Preserve physical query positions near exact-cell faces - #859

Draft
gthyagi wants to merge 1 commit into
underworldcode:developmentfrom
gthyagi:bugfix/exact-cell-point-evaluation
Draft

gthyagi wants to merge 1 commit into
underworldcode:developmentfrom
gthyagi:bugfix/exact-cell-point-evaluation

Conversation

@gthyagi

@gthyagi gthyagi commented Oct 24, 2026 •

Copy link
Copy Markdown
Contributor

Queries close to an exact-cell face can be evaluated at the wrong physical position. The loose cell-wall tolerance admits a neighbouring cell, then PETSc reference-coordinate clamping moves the query onto that face. An exactly representable continuous P1/P2 field with an interface-aligned gradient jump consequently shows a maximum error of 5.806e-6 in both serial and MPI16; tightening containment reduces it below 8e-17.

Use roundoff-scale containment for full-dimensional, geometrically exact cells. Preserve the previous tolerance for approximate warped faces and embedded manifolds. Add P1/P2 kink and global-polynomial regressions, including queries exactly on and on both sides of a shared face. This changes the existing locator's tolerance, without extending its geometric authority.

Validation on Gadi with PETSc int32: 22 UW3 tests pass in serial and on each of 16 MPI ranks; 272 annulus components and the existing exact-transfer gates also pass. The tested feature implementation is ef62a45; this review branch applies only the two-file point-evaluation change onto current development. Four matched complete h=1/32 annulus workflows (case1/case2, serial/MPI16) also pass: velocity, pressure, topography and potential fields remain unchanged within 1.4e-14 relative difference; native potential coefficients agree with independent affine-P2 interpolation on the same physical-circle grid within 3.4e-16 of reference magnitude. The independent audit separately refines angular quadrature.

Tighten full-dimensional exact-cell containment so neighbouring-cell hints cannot shift continuous-field probes through reference-coordinate clamping. Keep approximate warped-face and embedded-manifold tolerances unchanged.

Validation: Gadi int32 installation at feature ef62a45, 22 native regressions in serial and on each of 16 ranks, 272 annulus components, and exact submesh-transfer gates passed. Prior-runtime serial/MPI reproducer has 5.806e-6 error; tight tolerance reduces it below 8e-17. Four matched annulus workflows are being independently audited.

This branch has not been deployed

No deployments
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.

1 participant