ryujin 2.1.1 revision d1a5601757449924e68a428cfd892dfe8915810d
Public Member Functions | List of all members
ryujin::EquationOfStateLibrary::VanDerWaals Class Reference

#include <source/euler_aeos/equation_of_state_van_der_waals.h>

Inheritance diagram for ryujin::EquationOfStateLibrary::VanDerWaals:
Inheritance graph
[legend]
Collaboration diagram for ryujin::EquationOfStateLibrary::VanDerWaals:
Collaboration graph
[legend]

Public Member Functions

 VanDerWaals (const std::string &subsection)
 
double pressure (double rho, double e) const final
 
double specific_internal_energy (double rho, double p) const final
 
double temperature (double rho, double e) const final
 
double speed_of_sound (double rho, double e) const final
 
- Public Member Functions inherited from ryujin::EquationOfStateLibrary::EquationOfState
 EquationOfState (const std::string &name, const std::string &subsection)
 
virtual double pressure (double rho, double e) const =0
 
virtual void pressure (const dealii::ArrayView< double > &p, const dealii::ArrayView< double > &rho, const dealii::ArrayView< double > &e) const
 
virtual double specific_internal_energy (double rho, double p) const =0
 
virtual void specific_internal_energy (const dealii::ArrayView< double > &e, const dealii::ArrayView< double > &rho, const dealii::ArrayView< double > &p) const
 
virtual double temperature (double rho, double e) const =0
 
virtual void temperature (const dealii::ArrayView< double > &T, const dealii::ArrayView< double > &rho, const dealii::ArrayView< double > &e) const
 
virtual double speed_of_sound (double rho, double e) const =0
 
virtual void speed_of_sound (const dealii::ArrayView< double > &c, const dealii::ArrayView< double > &rho, const dealii::ArrayView< double > &e) const
 

Additional Inherited Members

- Protected Attributes inherited from ryujin::EquationOfStateLibrary::EquationOfState
double interpolation_b_
 
bool prefer_vector_interface_
 

Detailed Description

The Van der Waals equation of state

Definition at line 19 of file equation_of_state_van_der_waals.h.

Constructor & Destructor Documentation

◆ VanDerWaals()

ryujin::EquationOfStateLibrary::VanDerWaals::VanDerWaals ( const std::string &  subsection)
inline

Member Function Documentation

◆ pressure()

double ryujin::EquationOfStateLibrary::VanDerWaals::pressure ( double  rho,
double  e 
) const
inlinefinalvirtual

The pressure is given by

\begin{align} p = (\gamma - 1) * (\rho * e + a \rho^2)/(1 - b \rho) - a \rho^2 \end{align}

Implements ryujin::EquationOfStateLibrary::EquationOfState.

Definition at line 57 of file equation_of_state_van_der_waals.h.

◆ specific_internal_energy()

double ryujin::EquationOfStateLibrary::VanDerWaals::specific_internal_energy ( double  rho,
double  p 
) const
inlinefinalvirtual

The specific internal energy is given by

\begin{align} \rho e = (p + a \rho^2) * (1 - b \rho) / (\rho (\gamma -1)) - a \rho^2 \end{align}

Implements ryujin::EquationOfStateLibrary::EquationOfState.

Definition at line 72 of file equation_of_state_van_der_waals.h.

◆ temperature()

double ryujin::EquationOfStateLibrary::VanDerWaals::temperature ( double  rho,
double  e 
) const
inlinefinalvirtual

The temperature is given by

\begin{align} T = (\gamma - 1) / R (e + a \rho) \end{align}

Implements ryujin::EquationOfStateLibrary::EquationOfState.

Definition at line 87 of file equation_of_state_van_der_waals.h.

◆ speed_of_sound()

double ryujin::EquationOfStateLibrary::VanDerWaals::speed_of_sound ( double  rho,
double  e 
) const
inlinefinalvirtual

The speed of sound is given by

\begin{align} c^2 = \frac{\gamma (\gamma -1) (e + a \rho)}{(1 - b\rho)^2} - 2a\rho. \end{align}

Implements ryujin::EquationOfStateLibrary::EquationOfState.

Definition at line 99 of file equation_of_state_van_der_waals.h.


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