RiemannTag Struct ReferenceΒΆ

adc_cpp: pops::RiemannTag Struct 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::RiemannTag Struct Reference

Tag of a Riemann FLUX: name + model CAPABILITY needs (DOCUMENTARY: the real guard is an if constexpr per model at the call-site – these flags do NOT drive the dispatch, they document the contract and serve the tests). More...

#include <dispatch_tags.hpp>

+ Collaboration diagram for pops::RiemannTag:

Public Attributes

const char * name
 
bool needs_wave_speeds
 
bool needs_hllc_struct
 
bool needs_roe_diss
 
bool polar_ok
 

Detailed Description

Tag of a Riemann FLUX: name + model CAPABILITY needs (DOCUMENTARY: the real guard is an if constexpr per model at the call-site – these flags do NOT drive the dispatch, they document the contract and serve the tests).

polar_ok = wired in polar geometry.

  • needs_wave_speeds: hll requires model.wave_speeds (signed waves);
  • needs_hllc_struct: hllc requires HasHLLCStructure (or canonical 2D Euler path);
  • needs_roe_diss: roe requires HasRoeDissipation (or canonical 2D Euler path).

Member Data Documentation

◆ name

const char* pops::RiemannTag::name

◆ needs_hllc_struct

bool pops::RiemannTag::needs_hllc_struct

◆ needs_roe_diss

bool pops::RiemannTag::needs_roe_diss

◆ needs_wave_speeds

bool pops::RiemannTag::needs_wave_speeds

◆ polar_ok

bool pops::RiemannTag::polar_ok

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