specfem::chunk_edge::impl::transfer_function

template<specfem::element::dimension_tag DimensionTag, int NumberElements, int NQuadIntersection, int NQuadElement, specfem::data_access::DataClassType DataClass, specfem::element_coupling::interface_tag InterfaceTag, specfem::element::boundary_tag BoundaryTag, specfem::element_coupling::flux_scheme_tag FluxSchemeTag, typename MemorySpace = Kokkos::DefaultExecutionSpace::scratch_memory_space, typename MemoryTraits = Kokkos::MemoryTraits<Kokkos::Unmanaged>>
struct transfer_function

Template accessor for transfer function data at nonconforming interfaces.

Maps edge functions to intersection functions in mortar methods. Supports both self and coupled interface transfer operations.

Template Parameters:
  • DimensionTag – Spatial dimension (dim2, dim3)

  • NumberElements – Number of edges in chunk

  • NQuadIntersection – Quadrature points on intersection

  • NQuadElement – Quadrature points on element edge

  • DataClass – Self or coupled transfer data type

  • InterfaceTag – Interface medium type

  • BoundaryTag – Boundary condition tag

  • MemorySpace – Kokkos memory space

  • MemoryTraits – Kokkos memory traits

Dimension-Specific Implementations

2D Implementation

Warning

doxygenstruct: Cannot find class “specfem::chunk_edge::impl::transfer_function< specfem::element::dimension_tag::dim2, NumberElements, NQuadIntersection, NQuadElement, DataClass, InterfaceTag, BoundaryTag, MemorySpace, MemoryTraits >” in doxygen xml output for project “specfem++” from directory: _build/doxygen/xml