ryujin 2.1.1 revision 8e904ddb3fa1d9e336dac21cf982add6a65e5467
Loading...
Searching...
No Matches
Classes | List of all members
ryujin::EulerAEOS::NASGRiemannSolver< ScalarNumber, options > Class Template Reference

#include <source/euler_aeos/nasg_riemann_solver.h>

Inheritance diagram for ryujin::EulerAEOS::NASGRiemannSolver< ScalarNumber, options >:
Inheritance graph
[legend]
Collaboration diagram for ryujin::EulerAEOS::NASGRiemannSolver< ScalarNumber, options >:
Collaboration graph
[legend]

Classes

struct  Parameters
 

Public Member Functions

Constructor and setup
 NASGRiemannSolver (const std::string &subsection)
 
void set_gamma (const double gamma)
 
void set_equation_of_state (const double covolume_b, const double pinf, const bool compute_expensive_bounds)
 
template<typename Number , typename MemorySpace = dealii::MemorySpace::Host>
auto view () const
 

Internal fields, methods, and friends

template<typename , NASGRiemannSolverOptions , typename >
class NASGRiemannSolverView
 

Detailed Description

template<typename ScalarNumber = double, NASGRiemannSolverOptions options = NASGRiemannSolverOptions{}>
class ryujin::EulerAEOS::NASGRiemannSolver< ScalarNumber, options >

A fast approximative solver for the 1D Riemann problem with a Noble-Abel stiffened gas equation of state. The solver ensures that the estimate \(\lambda_{\text{max}}\) that is returned for the maximal wavespeed is a strict upper bound.

The solver is based on [2].

Definition at line 75 of file nasg_riemann_solver.h.

Constructor & Destructor Documentation

◆ NASGRiemannSolver()

template<typename ScalarNumber = double, NASGRiemannSolverOptions options = NASGRiemannSolverOptions{}>
ryujin::EulerAEOS::NASGRiemannSolver< ScalarNumber, options >::NASGRiemannSolver ( const std::string &  subsection)
inline

Constructor.

Definition at line 129 of file nasg_riemann_solver.h.

Member Function Documentation

◆ set_gamma()

template<typename ScalarNumber , NASGRiemannSolverOptions options>
requires (!options.variable_gamma)
void ryujin::EulerAEOS::NASGRiemannSolver< ScalarNumber, options >::set_gamma ( const double  gamma)
inline

Set the (single) ratio of specific heats gamma and precompute all gamma dependent constants. Only available if options.variable_gamma is set to false.

Definition at line 843 of file nasg_riemann_solver.h.

References ryujin::EulerAEOS::NASGRiemannSolver< ScalarNumber, options >::view().

Referenced by ryujin::Euler::WaveSpeedEstimator< ScalarNumber >::WaveSpeedEstimator().

◆ set_equation_of_state()

template<typename ScalarNumber , NASGRiemannSolverOptions options>
void ryujin::EulerAEOS::NASGRiemannSolver< ScalarNumber, options >::set_equation_of_state ( const double  covolume_b,
const double  pinf,
const bool  compute_expensive_bounds 
)
inline

Set the interpolatory covolume covolume_b, the interpolatory reference pressure pinf, and whether to compute expensive bounds.

Definition at line 861 of file nasg_riemann_solver.h.

Referenced by ryujin::EulerAEOS::WaveSpeedEstimator< ScalarNumber >::WaveSpeedEstimator().

◆ view()

template<typename ScalarNumber = double, NASGRiemannSolverOptions options = NASGRiemannSolverOptions{}>
template<typename Number , typename MemorySpace = dealii::MemorySpace::Host>
auto ryujin::EulerAEOS::NASGRiemannSolver< ScalarNumber, options >::view ( ) const
inline

Return a view on the NASGRiemannSolver for a given choice of number type Number (which can be a scalar float, or double, as well as a VectorizedArray holding packed scalars). The optional MemorySpace template parameter selects whether the view is intended for the host or device memory space.

Definition at line 193 of file nasg_riemann_solver.h.

Referenced by ryujin::EulerAEOS::NASGRiemannSolver< ScalarNumber, options >::set_gamma().

Friends And Related Symbol Documentation

◆ NASGRiemannSolverView

template<typename ScalarNumber = double, NASGRiemannSolverOptions options = NASGRiemannSolverOptions{}>
template<typename , NASGRiemannSolverOptions , typename >
friend class NASGRiemannSolverView
friend

Definition at line 208 of file nasg_riemann_solver.h.


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