-
Notifications
You must be signed in to change notification settings - Fork 89
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
fix: robust point location for degenerate configurations #3202
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
sframba
added
type: bug
Something isn't working
flag: requires rebaseline
Requires rebaseline branch in integratedTests
labels
Jul 2, 2024
sframba
changed the title
Point location robust to degenerate configurations
Robust point location for degenerate configurations
Jul 2, 2024
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## develop #3202 +/- ##
===========================================
+ Coverage 55.89% 55.92% +0.03%
===========================================
Files 1042 1042
Lines 88731 88923 +192
===========================================
+ Hits 49599 49733 +134
- Misses 39132 39190 +58 ☔ View full report in Codecov by Sentry. |
…-DEV/GEOS into feature/robustInsideOutside
sframba
added
ci: run integrated tests
Allows to run the integrated tests in GEOS CI
and removed
flag: requires rebaseline
Requires rebaseline branch in integratedTests
labels
Jul 3, 2024
sframba
added
flag: ready for review
ci: run CUDA builds
Allows to triggers (costly) CUDA jobs
labels
Jul 4, 2024
sframba
added
the
flag: requires rebaseline
Requires rebaseline branch in integratedTests
label
Jul 4, 2024
untereiner
approved these changes
Jul 29, 2024
This reverts commit 51787c8.
This reverts commit 6a97776.
…-DEV/GEOS into feature/robustInsideOutside
…-DEV/GEOS into feature/robustInsideOutside
@rrsettgast Is it good to go? If so, could you please add your review? |
rrsettgast
approved these changes
Aug 4, 2024
rrsettgast
pushed a commit
that referenced
this pull request
Sep 17, 2024
* implemented method based on winding number * using element global index for element choice in degenerate cases * added global id criterion for points coincident with vertices, as well * using base discretization for precomputing src/rcv * enabled for high orders. Also removed extra high-order nodes where not needed --------- Co-authored-by: Aurelien <[email protected]> Co-authored-by: acitrain <[email protected]>
rrsettgast
pushed a commit
that referenced
this pull request
Sep 17, 2024
* implemented method based on winding number * using element global index for element choice in degenerate cases * added global id criterion for points coincident with vertices, as well * using base discretization for precomputing src/rcv * enabled for high orders. Also removed extra high-order nodes where not needed --------- Co-authored-by: Aurelien <[email protected]> Co-authored-by: acitrain <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
ci: run CUDA builds
Allows to triggers (costly) CUDA jobs
ci: run integrated tests
Allows to run the integrated tests in GEOS CI
flag: ready for review
flag: requires rebaseline
Requires rebaseline branch in integratedTests
type: bug
Something isn't working
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR adds a new method to determine if a point lies inside or outsilde a (convex) polyhedral cell.
Compared to the current method, the new implementation is slower, but handles gracefully the degenerate conditions of points lying on mesh vertices, edges and faces. It does so by:
The only ambiguity left is when the point lies on a face/edge/vertex that is a boundary for an MPI rank, but an interior face/edge/vertex for another rank. In this case, both ranks will claim the point. However, at least one of them will consider the point to belong to a ghost element. This is a desirable outcome, since the desired behaviour in this case can be different according to the specific application (e.g., sources vs. receivers for the seismic wave case). This outcome leaves the choice to the caller method on how to handle this case, using ghost rank information.
The new point location algorithm is used for wave propagation kernels, fixing issue 3104 and issue 2888.