![]() |
Shamrock 2025.10.0
Astrophysical Code
|
Configuration struct for the equation of state used in the hydrodynamic models. More...
#include <shammodels/common/include/shammodels/common/EOSConfig.hpp>
Classes | |
| struct | LocallyIsothermal |
| Locally isothermal equation of state configuration. More... | |
Public Types | |
| using | Tscal = shambase::VecComponent< Tvec > |
| Scalar type associated to the vector template type. | |
| using | Adiabatic = shamphys::EOS_Config_Adiabatic< Tscal > |
| Adiabatic equation of state configuration. | |
| using | Polytropic = shamphys::EOS_Config_Polytropic< Tscal > |
| Polytropic equation of state configuration. | |
| using | Isothermal = shamphys::EOS_Config_Isothermal< Tscal > |
| Isothermal equation of state configuration. | |
| using | LocallyIsothermalLP07 = shamphys::EOS_Config_LocallyIsothermal_LP07< Tscal > |
| Locally isothermal equation of state configuration from Lodato Price 2007. | |
| using | LocallyIsothermalFA2014 = shamphys::EOS_Config_LocallyIsothermalDisc_Farris2014< Tscal > |
| Locally isothermal equation of state configuration from Lodato Price 2007. | |
| using | LocallyIsothermalFA2014Extended = shamphys::EOS_Config_LocallyIsothermalDisc_ExtendedFarris2014< Tscal > |
| Locally isothermal equation of state configuration from Farris 2014 extended to q != 1/2. | |
| using | Fermi = shamphys::EOS_Config_Fermi< Tscal > |
| Fermi equation of state configuration. | |
| using | Variant = std::variant< Isothermal, Adiabatic, Polytropic, LocallyIsothermal, LocallyIsothermalLP07, LocallyIsothermalFA2014, LocallyIsothermalFA2014Extended, Fermi > |
| Variant type to store the EOS configuration. | |
Public Member Functions | |
| void | set_isothermal (Tscal cs) |
| Set the EOS configuration to an isothermal equation of state. | |
| void | set_adiabatic (Tscal gamma) |
| Set the EOS configuration to an adiabatic equation of state. | |
| void | set_polytropic (Tscal K, Tscal gamma) |
| Set the EOS configuration to an polytropic equation of state. | |
| void | set_locally_isothermal () |
| Set the EOS configuration to a locally isothermal equation of state. | |
| void | set_locally_isothermalLP07 (Tscal cs0, Tscal q, Tscal r0) |
| Set the EOS configuration to a locally isothermal equation of state (Lodato Price 2007) | |
| void | set_locally_isothermalFA2014 (Tscal h_over_r) |
| void | set_locally_isothermalFA2014_extended (Tscal cs0, Tscal q, Tscal r0, u32 n_sinks) |
| void | set_fermi (Tscal mu_e) |
| Set the EOS configuration to a Fermi equation of state. | |
| void | print_status () |
| Print current status of the EOSConfig. | |
Public Attributes | |
| Variant | config = Adiabatic{} |
| Current EOS configuration. | |
Static Public Attributes | |
| static constexpr u32 | dim = shambase::VectorProperties<Tvec>::dimension |
| Dimension of the vector quantities. | |
Configuration struct for the equation of state used in the hydrodynamic models.
| Tvec | The vector type used to store the physical quantities (e.g., velocity, pressure, etc.) |
Definition at line 42 of file EOSConfig.hpp.
| using shammodels::EOSConfig< Tvec >::Adiabatic = shamphys::EOS_Config_Adiabatic<Tscal> |
Adiabatic equation of state configuration.
Definition at line 52 of file EOSConfig.hpp.
| using shammodels::EOSConfig< Tvec >::Fermi = shamphys::EOS_Config_Fermi<Tscal> |
Fermi equation of state configuration.
Definition at line 75 of file EOSConfig.hpp.
| using shammodels::EOSConfig< Tvec >::Isothermal = shamphys::EOS_Config_Isothermal<Tscal> |
Isothermal equation of state configuration.
Definition at line 58 of file EOSConfig.hpp.
| using shammodels::EOSConfig< Tvec >::LocallyIsothermalFA2014 = shamphys::EOS_Config_LocallyIsothermalDisc_Farris2014<Tscal> |
Locally isothermal equation of state configuration from Lodato Price 2007.
Definition at line 67 of file EOSConfig.hpp.
| using shammodels::EOSConfig< Tvec >::LocallyIsothermalFA2014Extended = shamphys::EOS_Config_LocallyIsothermalDisc_ExtendedFarris2014<Tscal> |
Locally isothermal equation of state configuration from Farris 2014 extended to q != 1/2.
Definition at line 71 of file EOSConfig.hpp.
| using shammodels::EOSConfig< Tvec >::LocallyIsothermalLP07 = shamphys::EOS_Config_LocallyIsothermal_LP07<Tscal> |
Locally isothermal equation of state configuration from Lodato Price 2007.
Definition at line 64 of file EOSConfig.hpp.
| using shammodels::EOSConfig< Tvec >::Polytropic = shamphys::EOS_Config_Polytropic<Tscal> |
Polytropic equation of state configuration.
Definition at line 55 of file EOSConfig.hpp.
| using shammodels::EOSConfig< Tvec >::Tscal = shambase::VecComponent<Tvec> |
Scalar type associated to the vector template type.
Definition at line 44 of file EOSConfig.hpp.
| using shammodels::EOSConfig< Tvec >::Variant = std::variant< Isothermal, Adiabatic, Polytropic, LocallyIsothermal, LocallyIsothermalLP07, LocallyIsothermalFA2014, LocallyIsothermalFA2014Extended, Fermi> |
Variant type to store the EOS configuration.
Definition at line 78 of file EOSConfig.hpp.
|
inline |
Print current status of the EOSConfig.
Definition at line 157 of file EOSConfig.hpp.
Here is the call graph for this function:
|
inline |
Set the EOS configuration to an adiabatic equation of state.
| gamma | The adiabatic index |
Definition at line 103 of file EOSConfig.hpp.
|
inline |
Set the EOS configuration to a Fermi equation of state.
| mu_e | The mean molecular weight |
Definition at line 146 of file EOSConfig.hpp.
|
inline |
Set the EOS configuration to an isothermal equation of state.
| cs | The sound speed |
Definition at line 96 of file EOSConfig.hpp.
|
inline |
Set the EOS configuration to a locally isothermal equation of state.
Definition at line 115 of file EOSConfig.hpp.
|
inline |
Definition at line 132 of file EOSConfig.hpp.
|
inline |
Definition at line 136 of file EOSConfig.hpp.
|
inline |
Set the EOS configuration to a locally isothermal equation of state (Lodato Price 2007)
The equation of state is given by: \( p = c_{s,0}^2 (r / r_0)^{-q} \rho \)
| cs0 | Soundspeed at the reference radius |
| q | Power exponent of the soundspeed profile |
| r0 | Reference radius |
Definition at line 128 of file EOSConfig.hpp.
|
inline |
Set the EOS configuration to an polytropic equation of state.
| gamma | The adiabatic index |
Definition at line 110 of file EOSConfig.hpp.
| Variant shammodels::EOSConfig< Tvec >::config = Adiabatic{} |
Current EOS configuration.
Definition at line 89 of file EOSConfig.hpp.
|
staticconstexpr |
Dimension of the vector quantities.
Definition at line 47 of file EOSConfig.hpp.