SpECTRE
v2022.05.05

A spectral equation of state. More...
#include <Spectral.hpp>
Classes  
struct  Coefficients 
struct  ReferenceDensity 
struct  ReferencePressure 
struct  UpperDensity 
Public Types  
using  options = tmpl::list< ReferenceDensity, ReferencePressure, Coefficients, UpperDensity > 
Public Member Functions  
Spectral (const Spectral &)=default  
Spectral &  operator= (const Spectral &)=default 
Spectral (Spectral &&)=default  
Spectral &  operator= (Spectral &&)=default 
Spectral (double reference_density, double reference_pressure, std::vector< double > coefficients, double upper_density)  
WRAPPED_PUPable_decl_base_template (SINGLE_ARG(EquationOfState< true, 1 >), Spectral)  
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  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\).  
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\).  
double  specific_enthalpy_lower_bound () const override 
The lower bound of the specific enthalpy that is valid for this EOS.  
Static Public Attributes  
static constexpr size_t  thermodynamic_dim = 1 
static constexpr bool  is_relativistic = true 
static constexpr Options::String  help 
A spectral equation of state.
This equation of state is determined as a function of \(x = \ln(\rho/\rho_0)\) where \(\rho\) is the rest mass density and \(\rho_0\) is the provided reference density. The adiabatic index \(\Gamma(x)\) is defined such that
\begin{equation} \frac{d \ln p}{dx} = \Gamma(x) = \sum_{n=0}^N \gamma_n x^n \end{equation}
for the set of spectral coefficinets \(\gamma_n\) when \(0 < x < x_u = \ln(\rho_u/\rho_0)\), where \(\rho_u\) is the provided upper density.
For \( x < 0 \), \( \Gamma(x) = \gamma_0 \).
For \( x > x_u \), \( \Gamma(x) = \Gamma(x_u) \)

staticconstexpr 