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

ELVIRA MIR 2D support #1523

Open
wants to merge 91 commits into
base: develop
Choose a base branch
from
Open

Conversation

BradWhitlock
Copy link
Member

@BradWhitlock BradWhitlock commented Mar 17, 2025

Summary

This PR adds a mir::ElviraAlgorithm class that implements 2D ELVIRA material interface reconstruction. The class takes Blueprint inputs (and has the same interface as EquiZAlgorithm) and makes Blueprint outputs. ELVIRA operates on structured meshes and it uses a neighbor stencil to help determine the planes for each material interface. Zones are clipped away using the planes for each material and result in polygonal zone fragments. These fragments are collected into a new mesh for the MIR output.

This PR also adds a TopologyMapper class that can intersect a Blueprint mesh with "clean" materials (MIR output) against another target mesh to compute intersections and produce a new material on the target mesh.

  • NOTE: The ElviraAlgorithm class still contains some conditionally-compiled debugging code, which will be removed in a later PR that completes 3D support.

@BradWhitlock BradWhitlock marked this pull request as draft March 17, 2025 21:39
* \brief Copy Constructor
* \param obj The object to be copied.
*/
AXOM_HOST_DEVICE StaticArray(const StaticArray &obj)
Copy link
Member Author

Choose a reason for hiding this comment

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

NOTE: I added the constructors, destructor, and assignment operators after running into weirdness in a CUDA kernel that clipped Polygons with static-sized buffers. The polygons were not reliably copied.

@BradWhitlock BradWhitlock marked this pull request as ready for review March 19, 2025 17:22
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