RusanovFlux Struct ReferenceΒΆ

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

RusanovFlux (local Lax-Friedrichs): robust flux, compatible with any minimal PhysicalModel. More...

#include <numerical_flux.hpp>

+ Collaboration diagram for pops::RusanovFlux:

Public Member Functions

template<class Model >
POPS_HD Model::State operator() (const Model &m, const typename Model::State &UL, const Aux &AL, const typename Model::State &UR, const Aux &AR, int dir) const
 

Detailed Description

RusanovFlux (local Lax-Friedrichs): robust flux, compatible with any minimal PhysicalModel.

Fhat = 1/2 (F(UL) + F(UR)) - 1/2 alpha (UR - UL), alpha = max(sL, sR). Only requires model.max_wave_speed – compatible with ANY PhysicalModel of the base concept (no wave_speeds, no pressure). Diffusive (alpha upper bound) but universal. POPS_HD. INVARIANT: component-by-component treatment (scalar upwind), no coupling.

Member Function Documentation

◆ operator()()

template<class Model >
POPS_HD Model::State pops::RusanovFlux::operator() ( const Model &  m,
const typename Model::State &  UL,
const Aux AL,
const typename Model::State &  UR,
const Aux AR,
int  dir 
) const
inline

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