SpECTRE  v2024.04.12
EquationsOfState::Barotropic2D< ColdEos > Class Template Reference

A 2D equation of state representing a barotropic fluid. More...

#include <Barotropic2D.hpp>

Classes

struct  UnderlyingEos
 

Public Types

using options = tmpl::list< UnderlyingEos >
 

Public Member Functions

 Barotropic2D (const Barotropic2D &)=default
 
Barotropic2Doperator= (const Barotropic2D &)=default
 
 Barotropic2D (Barotropic2D &&)=default
 
Barotropic2Doperator= (Barotropic2D &&)=default
 
 Barotropic2D (const ColdEos &underlying_eos)
 
std::unique_ptr< EquationOfState< ColdEos::is_relativistic, 2 > > get_clone () const override
 
std::unique_ptr< EquationOfState< ColdEos::is_relativistic, 3 > > promote_to_3d_eos () const override
 
bool is_equal (const EquationOfState< ColdEos::is_relativistic, 2 > &rhs) const override
 
bool is_barotropic () const override
 Returns true if the EOS is barotropic.
 
bool operator== (const Barotropic2D< ColdEos > &rhs) const
 
bool operator!= (const Barotropic2D< ColdEos > &rhs) const
 
 WRAPPED_PUPable_decl_base_template (SINGLE_ARG(EquationOfState< ColdEos::is_relativistic, 2 >), Barotropic2D)
 
double electron_fraction_lower_bound () const override
 The lower bound of the electron fraction that is valid for this EOS.
 
double electron_fraction_upper_bound () const override
 The upper bound of the electron fraction that is valid for this EOS.
 
double rest_mass_density_lower_bound () const override
 The lower bound of the rest mass density that is valid for this EOS.
 
double rest_mass_density_upper_bound () const override
 The upper bound of the rest mass density that is valid for this EOS.
 
double temperature_lower_bound () const override
 The lower bound of the temperature that is valid for this EOS.
 
double temperature_upper_bound () const override
 The upper bound of the temperature that is valid for this EOS.
 
double specific_internal_energy_lower_bound (const double rest_mass_density) const override
 The lower bound of the specific internal energy that is valid for this EOS at the given rest mass density \(\rho\) and electron fraction \(Y_e\).
 
double specific_internal_energy_upper_bound (const double rest_mass_density) const override
 The upper bound of the specific internal energy that is valid for this EOS at the given rest mass density \(\rho\).
 
double specific_enthalpy_lower_bound () const override
 The lower bound of the specific enthalpy that is valid for this EOS.
 
double baryon_mass () const override
 The baryon mass for this EoS.
 
Scalar< double > equilibrium_electron_fraction_from_density_temperature (const Scalar< double > &rest_mass_density, const Scalar< double > &temperature) const override
 
Scalar< DataVectorequilibrium_electron_fraction_from_density_temperature (const Scalar< DataVector > &rest_mass_density, const Scalar< DataVector > &temperature) const override
 

Static Public Member Functions

static std::string name ()
 

Static Public Attributes

static constexpr size_t thermodynamic_dim = 2
 
static constexpr bool is_relativistic = ColdEos::is_relativistic
 
static constexpr Options::String help
 

Detailed Description

template<typename ColdEos>
class EquationsOfState::Barotropic2D< ColdEos >

A 2D equation of state representing a barotropic fluid.

The equation of state takes the form

\[ p = p (\rho , T, Y_e) = p(\rho, 0, Y_e= Y_{e, \beta}) \]

where \(\rho\) is the rest mass density, \(T\) the temperature , and \(Y_e\) the electron fraction. The temperature and electron fraction are not used, so evaluating this EoS at any arbtirary temeperature or electron fraction is equivalent to evaluating it at zero temperature and in beta equalibrium.

Member Function Documentation

◆ equilibrium_electron_fraction_from_density_temperature() [1/2]

template<typename ColdEos >
Scalar< DataVector > EquationsOfState::Barotropic2D< ColdEos >::equilibrium_electron_fraction_from_density_temperature ( const Scalar< DataVector > &  rest_mass_density,
const Scalar< DataVector > &  temperature 
) const
inlineoverride

Computes the electron fraction in beta-equilibrium \(Y_e^{\rm eq}\) from the rest mass density \(\rho\) and the temperature \(T\).

◆ equilibrium_electron_fraction_from_density_temperature() [2/2]

template<typename ColdEos >
Scalar< double > EquationsOfState::Barotropic2D< ColdEos >::equilibrium_electron_fraction_from_density_temperature ( const Scalar< double > &  rest_mass_density,
const Scalar< double > &  temperature 
) const
inlineoverride

Computes the electron fraction in beta-equilibrium \(Y_e^{\rm eq}\) from the rest mass density \(\rho\) and the temperature \(T\).

Member Data Documentation

◆ help

template<typename ColdEos >
constexpr Options::String EquationsOfState::Barotropic2D< ColdEos >::help
staticconstexpr
Initial value:
= {
"A 2D EoS which is independent of electron fraction and temperature. "
"Contains an underlying 1D EoS which is dependent only "
"on rest mass density."}

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