WaveSpeedMatchKernel< Model > Struct Template ReferenceΒΆ

adc_cpp: pops::detail::WaveSpeedMatchKernel< Model > Struct Template Reference
adc_cpp 0.3.0
Model-free C++23 core for coupled hyperbolic-elliptic systems on adaptive (AMR) meshes, with MPI and GPU (Kokkos) backends
pops::detail::WaveSpeedMatchKernel< Model > Struct Template Reference

Locates the cell DOMINATING the CFL (dt_hotspot diagnostic, ADC-182): EQUALITY scan of the recomputed w – same functor and same data as MaxWaveSpeedKernel, hence bit-equal to the max returned by max_wave_speed_mf – which encodes the GLOBAL index j*nx + i as Real (exact as long as nx*ny < 2^53) and reduces to the MIN (first cell in lexicographic order: deterministic). More...

#include <wave_speed.hpp>

+ Collaboration diagram for pops::detail::WaveSpeedMatchKernel< Model >:

Public Member Functions

POPS_HD void operator() (int i, int j, Real &acc) const
 

Public Attributes

Model model
 
ConstArray4 u
 
ConstArray4 a
 
Real target
 
Real nx
 

Detailed Description

template<class Model>
struct pops::detail::WaveSpeedMatchKernel< Model >

Locates the cell DOMINATING the CFL (dt_hotspot diagnostic, ADC-182): EQUALITY scan of the recomputed w – same functor and same data as MaxWaveSpeedKernel, hence bit-equal to the max returned by max_wave_speed_mf – which encodes the GLOBAL index j*nx + i as Real (exact as long as nx*ny < 2^53) and reduces to the MIN (first cell in lexicographic order: deterministic).

NAMED functor (cross-TU instantiation under nvcc).

Member Function Documentation

◆ operator()()

template<class Model >
POPS_HD void pops::detail::WaveSpeedMatchKernel< Model >::operator() ( int  i,
int  j,
Real acc 
) const
inline

Member Data Documentation

◆ a

template<class Model >
ConstArray4 pops::detail::WaveSpeedMatchKernel< Model >::a

◆ model

template<class Model >
Model pops::detail::WaveSpeedMatchKernel< Model >::model

◆ nx

template<class Model >
Real pops::detail::WaveSpeedMatchKernel< Model >::nx

◆ target

template<class Model >
Real pops::detail::WaveSpeedMatchKernel< Model >::target

◆ u

template<class Model >
ConstArray4 pops::detail::WaveSpeedMatchKernel< Model >::u

The documentation for this struct was generated from the following file: