ryujin 2.1.1 revision 0348cbb53a3e4b1da2a4c037e81f88f2d21ce219
Public Member Functions | Static Public Attributes | List of all members
ryujin::EquationOfStateLibrary::Sesame Class Reference

#include <source/euler_aeos/equation_of_state_sesame.h>

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

Public Member Functions

 Sesame (const std::string &subsection)
 
double pressure (double, double) const final
 
double specific_internal_energy (double, double) const final
 
double temperature (double, double) const final
 
double speed_of_sound (double, double) const final
 
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 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
 
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
 
- 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
 

Static Public Attributes

static constexpr auto message
 

Additional Inherited Members

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

Detailed Description

A tabulated equation of state based on the EOSPAC6/Sesame database.

Units are: [rho] = kg / m^3 [p] = Pa = Kg / m / s^2 [e] = J / Kg = N m / Kg = m^2 / s^2

Definition at line 219 of file equation_of_state_sesame.h.

Constructor & Destructor Documentation

◆ Sesame()

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

Definition at line 477 of file equation_of_state_sesame.h.

Member Function Documentation

◆ pressure() [1/3]

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

Return the pressure given density rho and specific internal energy e.

Implements ryujin::EquationOfStateLibrary::EquationOfState.

Definition at line 486 of file equation_of_state_sesame.h.

References message.

◆ specific_internal_energy() [1/3]

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

Return the specific internal energy e for a given density rho and pressure p.

Implements ryujin::EquationOfStateLibrary::EquationOfState.

Definition at line 492 of file equation_of_state_sesame.h.

References message.

◆ temperature() [1/3]

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

Return the temperature T for a given density rho and specific internal energy e.

Implements ryujin::EquationOfStateLibrary::EquationOfState.

Definition at line 498 of file equation_of_state_sesame.h.

References message.

◆ speed_of_sound() [1/3]

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

Return the sound speed c for a given density rho and specific internal energy e.

Implements ryujin::EquationOfStateLibrary::EquationOfState.

Definition at line 504 of file equation_of_state_sesame.h.

References message.

◆ pressure() [2/3]

virtual double ryujin::EquationOfStateLibrary::EquationOfState::pressure ( double  rho,
double  e 
) const
virtual

Return the pressure given density rho and specific internal energy e.

Implements ryujin::EquationOfStateLibrary::EquationOfState.

◆ pressure() [3/3]

virtual void ryujin::EquationOfStateLibrary::EquationOfState::pressure ( const dealii::ArrayView< double > &  p,
const dealii::ArrayView< double > &  rho,
const dealii::ArrayView< double > &  e 
) const
inlinevirtual

Variant of above function operating on a contiguous range of values. The result is stored in the first argument p, overriding previous contents.

Note
The second and third arguments are writable as well. We need to perform some unit transformations for certain tabulated equation of state libraries, such as the sesame database. Rather than creating temporaries we override values in place.

Reimplemented from ryujin::EquationOfStateLibrary::EquationOfState.

Definition at line 83 of file equation_of_state.h.

◆ specific_internal_energy() [2/3]

virtual double ryujin::EquationOfStateLibrary::EquationOfState::specific_internal_energy ( double  rho,
double  p 
) const
virtual

Return the specific internal energy e for a given density rho and pressure p.

Implements ryujin::EquationOfStateLibrary::EquationOfState.

◆ specific_internal_energy() [3/3]

virtual void ryujin::EquationOfStateLibrary::EquationOfState::specific_internal_energy ( const dealii::ArrayView< double > &  e,
const dealii::ArrayView< double > &  rho,
const dealii::ArrayView< double > &  p 
) const
inlinevirtual

Variant of above function operating on a contiguous range of values. The result is stored in the first argument p, overriding previous contents.

Note
The second and third arguments are writable as well. We need to perform some unit transformations for certain tabulated equation of state libraries, such as the sesame database. Rather than creating temporaries we override values in place.

Reimplemented from ryujin::EquationOfStateLibrary::EquationOfState.

Definition at line 114 of file equation_of_state.h.

◆ speed_of_sound() [2/3]

virtual double ryujin::EquationOfStateLibrary::EquationOfState::speed_of_sound ( double  rho,
double  e 
) const
virtual

Return the sound speed c for a given density rho and specific internal energy e.

Implements ryujin::EquationOfStateLibrary::EquationOfState.

◆ speed_of_sound() [3/3]

virtual void ryujin::EquationOfStateLibrary::EquationOfState::speed_of_sound ( const dealii::ArrayView< double > &  c,
const dealii::ArrayView< double > &  rho,
const dealii::ArrayView< double > &  e 
) const
inlinevirtual

Variant of above function operating on a contiguous range of values. The result is stored in the first argument p, overriding previous contents.

Note
The second and third arguments are writable as well. We need to perform some unit transformations for certain tabulated equation of state libraries, such as the sesame database. Rather than creating temporaries we override values in place.

Reimplemented from ryujin::EquationOfStateLibrary::EquationOfState.

Definition at line 177 of file equation_of_state.h.

◆ temperature() [2/3]

virtual double ryujin::EquationOfStateLibrary::EquationOfState::temperature ( double  rho,
double  e 
) const
virtual

Return the temperature T for a given density rho and specific internal energy e.

Implements ryujin::EquationOfStateLibrary::EquationOfState.

◆ temperature() [3/3]

virtual void ryujin::EquationOfStateLibrary::EquationOfState::temperature ( const dealii::ArrayView< double > &  T,
const dealii::ArrayView< double > &  rho,
const dealii::ArrayView< double > &  e 
) const
inlinevirtual

Variant of above function operating on a contiguous range of values. The result is stored in the first argument T, overriding previous contents.

Note
The second and third arguments are writable as well. We need to perform some unit transformations for certain tabulated equation of state libraries, such as the sesame database. Rather than creating temporaries we override values in place.

Reimplemented from ryujin::EquationOfStateLibrary::EquationOfState.

Definition at line 146 of file equation_of_state.h.

Member Data Documentation

◆ message

constexpr auto ryujin::EquationOfStateLibrary::Sesame::message
staticconstexpr
Initial value:
=
"ryujin has to be configured with eospac support in order to use "
"the Sesame EOS database"

Definition at line 482 of file equation_of_state_sesame.h.

Referenced by pressure(), specific_internal_energy(), speed_of_sound(), and temperature().


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