Ray Tracing Module
The ray tracing module traces rays through the finite element mesh. Notable features include:
Supports tracing in meshes with planar sides (2D and 3D)
Supports mesh adaptivity
Supports contribution to residuals and Jacobians (with full coupling support) along ray segments
Supports ray interaction with internal and external boundaries
Supports storage and manipulation of data unique to each ray
Supports ray interaction with field variables
Highly parallelizable: tested to 20k MPI ranks
Examples
Computing Line Integrals - Integration of a field along a line
Using Line Sources - Body force term along a line
Flashlight Point Sources - Anisotropic point sources that emit in a cone of directions
Object Overview
Ray - Basic data structure that represents a single ray that traverses the mesh
RayTracingStudy - UserObject that generates and executes the Rays
RayBCs - Manipulates Rays on boundaries, both internal and external
RayKernels - Manipulates Rays on segments within an element along a Ray trajectory