specfem::chunk_edge::intersection_normal¶
-
template<specfem::dimension::type DimensionTag, specfem::interface::interface_tag InterfaceTag, specfem::element::boundary_tag BoundaryTag, int NumberElements, int NQuadIntersection, typename MemorySpace = Kokkos::DefaultExecutionSpace::scratch_memory_space, typename MemoryTraits = Kokkos::MemoryTraits<Kokkos::Unmanaged>>
struct intersection_normal¶ Template accessor for intersection normal vectors.
Provides chunk-based access to unit normal vectors at intersection quadrature points in nonconforming interfaces.
- Template Parameters:
DimensionTag – Spatial dimension
InterfaceTag – Interface medium type
BoundaryTag – Boundary condition tag
NumberElements – Number of edges in chunk
NQuadIntersection – Quadrature points on intersection
MemorySpace – Kokkos memory space
MemoryTraits – Kokkos memory traits
Dimension-Specific Specializations¶
2D Specialization¶
-
template<specfem::interface::interface_tag InterfaceTag, specfem::element::boundary_tag BoundaryTag, int NumberElements, int NQuadIntersection, typename MemorySpace, typename MemoryTraits>
struct intersection_normal<specfem::dimension::type::dim2, InterfaceTag, BoundaryTag, NumberElements, NQuadIntersection, MemorySpace, MemoryTraits> : public specfem::data_access::Accessor<specfem::data_access::AccessorType::chunk_edge, specfem::data_access::DataClassType::intersection_normal, specfem::dimension::type::dim2, false>¶ 2D specialization of intersection normal accessor
Stores 2D unit normal vectors at intersection quadrature points.