SpECTRE  v2021.10.04
EquationsOfState::DarkEnergyFluid< IsRelativistic > Class Template Reference

Equation of state for a dark energy fluid. More...

#include <DarkEnergyFluid.hpp>

Classes

struct  ParameterW
 

Public Types

using options = tmpl::list< ParameterW >
 
- Public Types inherited from EquationsOfState::EquationOfState< IsRelativistic, 2 >
using creatable_classes = typename detail::DerivedClasses< IsRelativistic, 2 >::type
 

Public Member Functions

 DarkEnergyFluid (const DarkEnergyFluid &)=default
 
DarkEnergyFluidoperator= (const DarkEnergyFluid &)=default
 
 DarkEnergyFluid (DarkEnergyFluid &&)=default
 
DarkEnergyFluidoperator= (DarkEnergyFluid &&)=default
 
 DarkEnergyFluid (double parameter_w)
 
 WRAPPED_PUPable_decl_base_template (SINGLE_ARG(EquationOfState< IsRelativistic, 2 >), DarkEnergyFluid)
 
double rest_mass_density_lower_bound () const override
 The lower bound of the rest mass density that is valid for this EOS. More...
 
double rest_mass_density_upper_bound () const override
 The upper bound of the rest mass density that is valid for this EOS. More...
 
double specific_internal_energy_lower_bound (const double) const override
 The lower bound of the specific internal energy that is valid for this EOS at the given rest mass density \(\rho\). More...
 
double specific_internal_energy_upper_bound (const double) const override
 The upper bound of the specific internal energy that is valid for this EOS at the given rest mass density \(\rho\). More...
 
double specific_enthalpy_lower_bound () const override
 The lower bound of the specific enthalpy that is valid for this EOS. More...
 
- Public Member Functions inherited from EquationsOfState::EquationOfState< IsRelativistic, 2 >
 EquationOfState (const EquationOfState &)=default
 
EquationOfStateoperator= (const EquationOfState &)=default
 
 EquationOfState (EquationOfState &&)=default
 
EquationOfStateoperator= (EquationOfState &&)=default
 
 WRAPPED_PUPable_abstract (EquationOfState)
 
virtual double rest_mass_density_lower_bound () const =0
 The lower bound of the rest mass density that is valid for this EOS. More...
 
virtual double rest_mass_density_upper_bound () const =0
 The upper bound of the rest mass density that is valid for this EOS. More...
 
virtual double specific_internal_energy_lower_bound (const double rest_mass_density) const =0
 The lower bound of the specific internal energy that is valid for this EOS at the given rest mass density \(\rho\). More...
 
virtual double specific_internal_energy_upper_bound (const double rest_mass_density) const =0
 The upper bound of the specific internal energy that is valid for this EOS at the given rest mass density \(\rho\). More...
 
virtual double specific_enthalpy_lower_bound () const =0
 The lower bound of the specific enthalpy that is valid for this EOS. More...
 
virtual Scalar< double > pressure_from_density_and_energy (const Scalar< double > &, const Scalar< double > &) const =0
 
virtual Scalar< DataVectorpressure_from_density_and_energy (const Scalar< DataVector > &, const Scalar< DataVector > &) const =0
 
virtual Scalar< double > pressure_from_density_and_enthalpy (const Scalar< double > &, const Scalar< double > &) const =0
 
virtual Scalar< DataVectorpressure_from_density_and_enthalpy (const Scalar< DataVector > &, const Scalar< DataVector > &) const =0
 
virtual Scalar< double > specific_enthalpy_from_density_and_energy (const Scalar< double > &, const Scalar< double > &) const =0
 
virtual Scalar< DataVectorspecific_enthalpy_from_density_and_energy (const Scalar< DataVector > &, const Scalar< DataVector > &) const =0
 
virtual Scalar< double > specific_internal_energy_from_density_and_pressure (const Scalar< double > &, const Scalar< double > &) const =0
 
virtual Scalar< DataVectorspecific_internal_energy_from_density_and_pressure (const Scalar< DataVector > &, const Scalar< DataVector > &) const =0
 
virtual Scalar< double > chi_from_density_and_energy (const Scalar< double > &, const Scalar< double > &) const =0
 
virtual Scalar< DataVectorchi_from_density_and_energy (const Scalar< DataVector > &, const Scalar< DataVector > &) const =0
 
virtual Scalar< double > kappa_times_p_over_rho_squared_from_density_and_energy (const Scalar< double > &, const Scalar< double > &) const =0
 
virtual Scalar< DataVectorkappa_times_p_over_rho_squared_from_density_and_energy (const Scalar< DataVector > &, const Scalar< DataVector > &) const =0
 

Static Public Attributes

static constexpr size_t thermodynamic_dim = 2
 
static constexpr bool is_relativistic = IsRelativistic
 
static constexpr Options::String help
 
- Static Public Attributes inherited from EquationsOfState::EquationOfState< IsRelativistic, 2 >
static constexpr bool is_relativistic = IsRelativistic
 
static constexpr size_t thermodynamic_dim = 2
 

Detailed Description

template<bool IsRelativistic>
class EquationsOfState::DarkEnergyFluid< IsRelativistic >

Equation of state for a dark energy fluid.

A dark energy fluid equation of state:

\[ p = w(z) \rho ( 1.0 + \epsilon) \]

where \(\rho\) is the rest mass density, \(\epsilon\) is the specific internal energy, and \(w(z) > 0\) is a parameter depending on the redshift \(z\).

Member Function Documentation

◆ rest_mass_density_lower_bound()

template<bool IsRelativistic>
double EquationsOfState::DarkEnergyFluid< IsRelativistic >::rest_mass_density_lower_bound ( ) const
inlineoverridevirtual

The lower bound of the rest mass density that is valid for this EOS.

Implements EquationsOfState::EquationOfState< IsRelativistic, 2 >.

◆ rest_mass_density_upper_bound()

template<bool IsRelativistic>
double EquationsOfState::DarkEnergyFluid< IsRelativistic >::rest_mass_density_upper_bound ( ) const
inlineoverridevirtual

The upper bound of the rest mass density that is valid for this EOS.

Implements EquationsOfState::EquationOfState< IsRelativistic, 2 >.

◆ specific_enthalpy_lower_bound()

template<bool IsRelativistic>
double EquationsOfState::DarkEnergyFluid< IsRelativistic >::specific_enthalpy_lower_bound ( ) const
inlineoverridevirtual

The lower bound of the specific enthalpy that is valid for this EOS.

Implements EquationsOfState::EquationOfState< IsRelativistic, 2 >.

◆ specific_internal_energy_lower_bound()

template<bool IsRelativistic>
double EquationsOfState::DarkEnergyFluid< IsRelativistic >::specific_internal_energy_lower_bound ( const double  ) const
inlineoverridevirtual

The lower bound of the specific internal energy that is valid for this EOS at the given rest mass density \(\rho\).

Implements EquationsOfState::EquationOfState< IsRelativistic, 2 >.

◆ specific_internal_energy_upper_bound()

template<bool IsRelativistic>
double EquationsOfState::DarkEnergyFluid< IsRelativistic >::specific_internal_energy_upper_bound ( const double  ) const
inlineoverridevirtual

The upper bound of the specific internal energy that is valid for this EOS at the given rest mass density \(\rho\).

Implements EquationsOfState::EquationOfState< IsRelativistic, 2 >.

Member Data Documentation

◆ help

template<bool IsRelativistic>
constexpr Options::String EquationsOfState::DarkEnergyFluid< IsRelativistic >::help
staticconstexpr
Initial value:
= {
"A dark energy fluid equation of state.\n"
"The pressure is related to the rest mass density by "
"p = w(z) * rho * (1 + epsilon), where p is the pressure, rho is the "
"rest mass density, epsilon is the specific internal energy, and w(z) is "
"a parameter."}

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