35 #ifndef NEKTAR_SOLVERS_COMPRESSIBLEFLOWSOLVER_MISC_IDEALGASEOS
36 #define NEKTAR_SOLVERS_COMPRESSIBLEFLOWSOLVER_MISC_IDEALGASEOS
95 template <
class T,
typename =
typename std::enable_if
97 std::is_floating_point<T>::value ||
106 template <
class T,
typename =
typename std::enable_if
108 std::is_floating_point<T>::value ||
Encapsulates equations of state allowing us to obtain thermodynamic properties: most relations are in...
NekDouble m_gammaMoneOgasConst
Ideal gas equation of state: p = rho * R * T.
NekDouble GetPressure(const NekDouble &rho, const NekDouble &e) final
Calculate the pressure.
static EquationOfStateSharedPtr create(const LibUtilities::SessionReaderSharedPtr &pSession)
Creates an instance of this class.
static std::string className
Name of the class.
NekDouble v_GetEFromRhoP(const NekDouble &rho, const NekDouble &p) final
NekDouble v_GetRhoFromPT(const NekDouble &rho, const NekDouble &p) final
NekDouble v_GetSoundSpeed(const NekDouble &rho, const NekDouble &e) final
NekDouble v_GetDPDe_rho(const NekDouble &rho, const NekDouble &e) final
IdealGasEoS(const LibUtilities::SessionReaderSharedPtr &pSession)
T GetPressureKernel(const T &rho, const T &e)
NekDouble v_GetDPDrho_e(const NekDouble &rho, const NekDouble &e) final
NekDouble v_GetEntropy(const NekDouble &rho, const NekDouble &e) final
T GetTemperatureKernel(const T &e)
NekDouble GetTemperature(const NekDouble &rho, const NekDouble &e) final
Calculate the temperature.
General purpose memory allocation routines with the ability to allocate from thread specific memory p...
static std::shared_ptr< DataType > AllocateSharedPtr(const Args &...args)
Allocate a shared pointer from the memory pool.
std::shared_ptr< SessionReader > SessionReaderSharedPtr
The above copyright notice and this permission notice shall be included.
std::shared_ptr< EquationOfState > EquationOfStateSharedPtr
A shared pointer to an equation of state object.
tinysimd::simd< NekDouble > vec_t