ryujin 2.1.1 revision 336b16a72e829721302c626ec7071b92032b8248
List of all members
ryujin::Skeleton::RiemannSolver< dim, Number > Class Template Reference

#include <source/skeleton/riemann_solver.h>

Public Types

Typedefs and constexpr constants
using View = HyperbolicSystemView< dim, Number >
 
using ScalarNumber = typename View::ScalarNumber
 
using state_type = typename View::state_type
 
using PrecomputedVector = typename View::PrecomputedVector
 
using Parameters = RiemannSolverParameters< ScalarNumber >
 

Compute wavespeed estimates

 RiemannSolver (const HyperbolicSystem &hyperbolic_system, const Parameters &parameters, const PrecomputedVector &precomputed_values)
 
Number compute (const state_type &, const state_type &, const unsigned int, const unsigned int *, const dealii::Tensor< 1, dim, Number > &) const
 

Detailed Description

template<int dim, typename Number = double>
class ryujin::Skeleton::RiemannSolver< dim, Number >

A fast approximative solver for the associated 1D Riemann problem. The solver has to ensure that the estimate \(\lambda_{\text{max}}\) that is returned for the maximal wavespeed is a strict upper bound.

Definition at line 39 of file riemann_solver.h.

Member Typedef Documentation

◆ View

template<int dim, typename Number = double>
using ryujin::Skeleton::RiemannSolver< dim, Number >::View = HyperbolicSystemView<dim, Number>

Definition at line 47 of file riemann_solver.h.

◆ ScalarNumber

template<int dim, typename Number = double>
using ryujin::Skeleton::RiemannSolver< dim, Number >::ScalarNumber = typename View::ScalarNumber

Definition at line 49 of file riemann_solver.h.

◆ state_type

template<int dim, typename Number = double>
using ryujin::Skeleton::RiemannSolver< dim, Number >::state_type = typename View::state_type

Definition at line 51 of file riemann_solver.h.

◆ PrecomputedVector

template<int dim, typename Number = double>
using ryujin::Skeleton::RiemannSolver< dim, Number >::PrecomputedVector = typename View::PrecomputedVector

Definition at line 53 of file riemann_solver.h.

◆ Parameters

template<int dim, typename Number = double>
using ryujin::Skeleton::RiemannSolver< dim, Number >::Parameters = RiemannSolverParameters<ScalarNumber>

Definition at line 55 of file riemann_solver.h.

Constructor & Destructor Documentation

◆ RiemannSolver()

template<int dim, typename Number = double>
ryujin::Skeleton::RiemannSolver< dim, Number >::RiemannSolver ( const HyperbolicSystem hyperbolic_system,
const Parameters parameters,
const PrecomputedVector precomputed_values 
)
inline

Constructor taking a HyperbolicSystem instance as argument

Definition at line 66 of file riemann_solver.h.

Member Function Documentation

◆ compute()

template<int dim, typename Number = double>
Number ryujin::Skeleton::RiemannSolver< dim, Number >::compute ( const state_type ,
const state_type ,
const unsigned int  ,
const unsigned int *  ,
const dealii::Tensor< 1, dim, Number > &   
) const
inline

For two given states U_i a U_j and a (normalized) "direction" n_ij compute an estimation of an upper bound for lambda.

Definition at line 79 of file riemann_solver.h.


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