Skip to content

Fix mesh equality across communicators - #5555

Open
pbrubeck wants to merge 1 commit into
mainfrom
pbrubeck/fix/mesh-equals
Open

pbrubeck wants to merge 1 commit into
mainfrom
pbrubeck/fix/mesh-equals

Conversation

@pbrubeck

Copy link
Copy Markdown
Contributor

Summary

 MeshGeometry equality
- UFL ID plus coordinate element
+ object identity
+ matching identity hash for Firedrake and UFL cache keys

 Submesh(parent, comm=COMM_SELF)
+ compares distinct from parent
+ assigns across mesh communicators correctly

Evidence

  • Before: test_submesh_comm_self_distinct_from_parent[nprocs=1] failed because the parent mesh and submesh both had UFL ID 1 and compared equal.
  • After: the regression test passes at nprocs=1 and nprocs=3; make srclint also passes.

Merge Danger

Door: two-way

The change is localized to mesh equality and one submesh communicator regression test. Identity hashing preserves mesh use as a cache key after overriding equality.

Blast Radius: narrow

Contributions assisted by Codex.

@pbrubeck pbrubeck added the LLM used An LLM was used in the production of this PR label Oct 23, 2026
@pbrubeck
pbrubeck requested a review from connorjward October 23, 2026 16:11

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

LLM used An LLM was used in the production of this PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants