Shamrock 2025.10.0
Astrophysical Code
Loading...
Searching...
No Matches
shammath::DustFluidStateSpec Concept Reference

The flux operations a dust (pressureless) Riemann solver needs, so that solvers (see riemann_dust_hll.hpp, riemann_dust_huang_bai.hpp) can be written once and instantiated for any dust state satisfying this interface. Analogous to FluidStateSpec but without an equation of state, hence no sound_speed(). More...

#include <shammath/include/shammath/riemann_common.hpp>

Concept definition

template<class T>
concept shammath::DustFluidStateSpec = requires(
const T &self,
typename T::Tcons cons,
typename T::Tprim prim,
typename T::Tvec n,
typename T::Tscal vn) {
typename T::Tvec;
typename T::Tscal;
typename T::Tprim;
typename T::Tcons;
{ self.cons_to_prim(cons) } -> std::convertible_to<typename T::Tprim>;
{ self.prim_to_cons(prim) } -> std::convertible_to<typename T::Tcons>;
{ self.vn(prim, n) } -> std::convertible_to<typename T::Tscal>;
{ self.flux(prim, n) } -> std::convertible_to<typename T::Tcons>;
{ self.flux(prim, n, vn) } -> std::convertible_to<typename T::Tcons>;
}
The flux operations a dust (pressureless) Riemann solver needs, so that solvers (see riemann_dust_hll...

Detailed Description

The flux operations a dust (pressureless) Riemann solver needs, so that solvers (see riemann_dust_hll.hpp, riemann_dust_huang_bai.hpp) can be written once and instantiated for any dust state satisfying this interface. Analogous to FluidStateSpec but without an equation of state, hence no sound_speed().

Definition at line 64 of file riemann_common.hpp.