Audit JOREK shared-edge aliases and sagitta#71
Open
krystophny wants to merge 1 commit into
Open
Conversation
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
This PR is diagnostic only. It changes no node canonicalization, plane or volume topology, field evaluation, ownership, coordinates, CGS units, or orbit behavior.
Result
The restart contains 24,218 physical shared factor-2 edge segments. Sixteen segments have different endpoint or midpoint node IDs on their two incident elements even though their physical endpoint positions match within the JOREK adjacency tolerance. Eight of these 16 aliased segments belong to the greater-than-2% recovered field-error tail from #70.
This follows JOREK's adjacency contract: neighboring elements may use different node numbers at the same physical endpoint. GORILLA's current refined topology instead keys a shared edge only by the endpoint node-number pair. It consequently creates independent factor-2 edge nodes on these 16 physical interfaces. The tail is concentrated in the same small region, so this nonconforming identity must be corrected before another adaptive topology is evaluated.
Midpoint sagitta does not supply a useful selector by itself:
The geometry-only sagitta proposal from #70 is therefore rejected. The next production change should canonicalize all reciprocal JOREK sides by physical adjacency, joining both coincident endpoint aliases and their refined side nodes. Its regression must reduce the alias count from 16 to zero while preserving exact geometry, field values, coordinate conventions, CGS units, and the existing tetrahedron ownership and continuity checks. The complete factor-2 error and tail diagnostics must then be rerun before any local curvature refinement.
Relation to the stacked work
This PR is stacked on #70.
No refinement above factor 2 enters a volume mesh in this stack.
Verification
Before, no shared-edge alias test existed:
After: