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

SMR with swarms #1090

Merged
merged 10 commits into from
May 24, 2024
Merged

SMR with swarms #1090

merged 10 commits into from
May 24, 2024

Conversation

brryan
Copy link
Collaborator

@brryan brryan commented May 23, 2024

PR Summary

Static mesh refinement currently fails with particles; particles are communicated to incorrect fine blocks across refinement boundaries. This PR fixes that by changing the way we set the internal neighbor connectivity matrix in the swarm machinery. Instead of a bunch of hardcoded indexing specific to dimension and no refinement, I create test points for each halo neighbor block at the maximum possible refinement level, and test whether those points are contained by any neighbor blocks. Works for neighbor connectivity including across trees and across periodic boundaries.

PR Checklist

  • Code passes cpplint
  • New features are documented.
  • Adds a test for any bugs fixed. Adds tests for new features.
  • Code is formatted
  • Changes are summarized in CHANGELOG.md
  • Change is breaking (API, behavior, ...)
    • Change is additionally added to CHANGELOG.md in the breaking section
    • PR is marked as breaking
    • Short summary API changes at the top of the PR (plus optionally with an automated update/fix script)
  • CI has been triggered on Darwin for performance regression tests.
  • Docs build
  • (@lanl.gov employees) Update copyright on changed files

@brryan brryan changed the title WIP: SMR with swarms SMR with swarms May 24, 2024
Copy link
Collaborator

@Yurlungur Yurlungur left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Exciting to see this in! And it's a nice cleanup!

Copy link
Collaborator

@lroberts36 lroberts36 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This LGTM. I definitely like to see the negative line count and removing special casing! I think the solution of using the physical coordinates is good for now, but I included some aspirational code for essentially how the neighbor finding should look for general forests.

src/interface/swarm_comms.cpp Show resolved Hide resolved
src/interface/swarm_comms.cpp Show resolved Hide resolved
@brryan brryan enabled auto-merge (squash) May 24, 2024 20:13
@brryan brryan merged commit fb1663f into develop May 24, 2024
50 checks passed
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.

3 participants