Nektar++
|
Encapsulates equations of state allowing us to obtain thermodynamic properties: most relations are in the form X(rho,e) More...
#include <EquationOfState.h>
Public Member Functions | |
virtual | ~EquationOfState () |
NekDouble | GetTemperature (const NekDouble &rho, const NekDouble &e) |
Calculate the temperature. More... | |
vec_t | GetTemperature (const vec_t &rho, const vec_t &e) |
NekDouble | GetPressure (const NekDouble &rho, const NekDouble &e) |
Calculate the pressure. More... | |
vec_t | GetPressure (const vec_t &rho, const vec_t &e) |
NekDouble | GetSoundSpeed (const NekDouble &rho, const NekDouble &e) |
Calculate the sound speed. More... | |
NekDouble | GetEntropy (const NekDouble &rho, const NekDouble &e) |
Calculate the entropy. More... | |
NekDouble | GetDPDrho_e (const NekDouble &rho, const NekDouble &e) |
Calculate the partial derivative of P(rho,e) with respect to rho. More... | |
NekDouble | GetDPDe_rho (const NekDouble &rho, const NekDouble &e) |
Calculate the partial derivative of P(rho,e) with respect to e. More... | |
NekDouble | GetEFromRhoP (const NekDouble &rho, const NekDouble &p) |
Obtain the internal energy from rho and P. More... | |
NekDouble | GetRhoFromPT (const NekDouble &p, const NekDouble &T) |
Obtain the density from P and T. More... | |
Protected Member Functions | |
EquationOfState (const LibUtilities::SessionReaderSharedPtr &pSession) | |
Constructor. More... | |
EquationOfState (const NekDouble &gamma, const NekDouble &gasConstant) | |
Programmatic Constructor. More... | |
virtual NekDouble | v_GetTemperature (const NekDouble &rho, const NekDouble &e)=0 |
virtual vec_t | v_GetTemperature (const vec_t &rho, const vec_t &e)=0 |
virtual NekDouble | v_GetPressure (const NekDouble &rho, const NekDouble &e)=0 |
virtual vec_t | v_GetPressure (const vec_t &rho, const vec_t &e)=0 |
virtual NekDouble | v_GetSoundSpeed (const NekDouble &rho, const NekDouble &e) |
virtual NekDouble | v_GetEntropy (const NekDouble &rho, const NekDouble &e)=0 |
virtual NekDouble | v_GetDPDrho_e (const NekDouble &rho, const NekDouble &e)=0 |
virtual NekDouble | v_GetDPDe_rho (const NekDouble &rho, const NekDouble &e)=0 |
virtual NekDouble | v_GetEFromRhoP (const NekDouble &rho, const NekDouble &p)=0 |
virtual NekDouble | v_GetRhoFromPT (const NekDouble &rho, const NekDouble &p)=0 |
Protected Attributes | |
NekDouble | m_gamma |
NekDouble | m_gasConstant |
NekDouble | m_gammaMone |
NekDouble | m_gammaMoneOgasConst |
Encapsulates equations of state allowing us to obtain thermodynamic properties: most relations are in the form X(rho,e)
Definition at line 66 of file EquationOfState.h.
|
inlinevirtual |
Definition at line 69 of file EquationOfState.h.
|
protected |
Constructor.
Definition at line 47 of file EquationOfState.cpp.
References m_gamma, m_gammaMone, m_gammaMoneOgasConst, and m_gasConstant.
|
protected |
Programmatic Constructor.
Definition at line 57 of file EquationOfState.cpp.
Calculate the partial derivative of P(rho,e) with respect to e.
Definition at line 100 of file EquationOfState.cpp.
References v_GetDPDe_rho().
Referenced by Nektar::PengRobinsonEoS::v_GetDPDrho_e(), Nektar::RedlichKwongEoS::v_GetDPDrho_e(), and v_GetSoundSpeed().
Calculate the partial derivative of P(rho,e) with respect to rho.
Definition at line 95 of file EquationOfState.cpp.
References v_GetDPDrho_e().
Referenced by v_GetSoundSpeed().
Obtain the internal energy from rho and P.
Definition at line 105 of file EquationOfState.cpp.
References CellMLToNektar.cellml_metadata::p, and v_GetEFromRhoP().
Calculate the entropy.
Definition at line 90 of file EquationOfState.cpp.
References v_GetEntropy().
Calculate the pressure.
Definition at line 74 of file EquationOfState.cpp.
References v_GetPressure().
Referenced by v_GetSoundSpeed().
Definition at line 79 of file EquationOfState.cpp.
References v_GetPressure().
Obtain the density from P and T.
Definition at line 111 of file EquationOfState.cpp.
References CellMLToNektar.cellml_metadata::p, and v_GetRhoFromPT().
Calculate the sound speed.
Definition at line 84 of file EquationOfState.cpp.
References v_GetSoundSpeed().
Calculate the temperature.
Definition at line 63 of file EquationOfState.cpp.
References v_GetTemperature().
Referenced by Nektar::PengRobinsonEoS::v_GetDPDe_rho(), Nektar::RedlichKwongEoS::v_GetDPDe_rho(), Nektar::PengRobinsonEoS::v_GetDPDrho_e(), Nektar::RedlichKwongEoS::v_GetDPDrho_e(), Nektar::IdealGasEoS::v_GetEntropy(), Nektar::PengRobinsonEoS::v_GetEntropy(), Nektar::RedlichKwongEoS::v_GetEntropy(), Nektar::VanDerWaalsEoS::v_GetEntropy(), and Nektar::IdealGasEoS::v_GetSoundSpeed().
Definition at line 69 of file EquationOfState.cpp.
References v_GetTemperature().
|
protectedpure virtual |
Implemented in Nektar::IdealGasEoS, Nektar::PengRobinsonEoS, Nektar::RedlichKwongEoS, and Nektar::VanDerWaalsEoS.
Referenced by GetDPDe_rho().
|
protectedpure virtual |
Implemented in Nektar::IdealGasEoS, Nektar::PengRobinsonEoS, Nektar::RedlichKwongEoS, and Nektar::VanDerWaalsEoS.
Referenced by GetDPDrho_e().
|
protectedpure virtual |
Implemented in Nektar::IdealGasEoS, Nektar::PengRobinsonEoS, Nektar::RedlichKwongEoS, and Nektar::VanDerWaalsEoS.
Referenced by GetEFromRhoP().
|
protectedpure virtual |
Implemented in Nektar::IdealGasEoS, Nektar::PengRobinsonEoS, Nektar::RedlichKwongEoS, and Nektar::VanDerWaalsEoS.
Referenced by GetEntropy().
|
protectedpure virtual |
Implemented in Nektar::IdealGasEoS, Nektar::PengRobinsonEoS, Nektar::RedlichKwongEoS, and Nektar::VanDerWaalsEoS.
Referenced by GetPressure().
|
protectedpure virtual |
Implemented in Nektar::IdealGasEoS, Nektar::PengRobinsonEoS, Nektar::RedlichKwongEoS, and Nektar::VanDerWaalsEoS.
|
protectedpure virtual |
Implemented in Nektar::IdealGasEoS, Nektar::PengRobinsonEoS, Nektar::RedlichKwongEoS, and Nektar::VanDerWaalsEoS.
Referenced by GetRhoFromPT().
|
protectedvirtual |
Reimplemented in Nektar::IdealGasEoS.
Definition at line 118 of file EquationOfState.cpp.
References GetDPDe_rho(), GetDPDrho_e(), GetPressure(), CellMLToNektar.cellml_metadata::p, and tinysimd::sqrt().
Referenced by GetSoundSpeed().
|
protectedpure virtual |
Implemented in Nektar::IdealGasEoS, Nektar::PengRobinsonEoS, Nektar::RedlichKwongEoS, and Nektar::VanDerWaalsEoS.
Referenced by GetTemperature().
|
protectedpure virtual |
Implemented in Nektar::IdealGasEoS, Nektar::PengRobinsonEoS, Nektar::RedlichKwongEoS, and Nektar::VanDerWaalsEoS.
|
protected |
Definition at line 102 of file EquationOfState.h.
Referenced by EquationOfState(), Nektar::VanDerWaalsEoS::GetPressureKernel(), Nektar::PengRobinsonEoS::GetTemperatureKernel(), Nektar::RedlichKwongEoS::GetTemperatureKernel(), Nektar::VanDerWaalsEoS::GetTemperatureKernel(), Nektar::IdealGasEoS::v_GetDPDe_rho(), Nektar::PengRobinsonEoS::v_GetDPDe_rho(), Nektar::RedlichKwongEoS::v_GetDPDe_rho(), Nektar::VanDerWaalsEoS::v_GetDPDe_rho(), Nektar::IdealGasEoS::v_GetDPDrho_e(), Nektar::VanDerWaalsEoS::v_GetDPDrho_e(), Nektar::IdealGasEoS::v_GetEFromRhoP(), Nektar::PengRobinsonEoS::v_GetEFromRhoP(), Nektar::RedlichKwongEoS::v_GetEFromRhoP(), Nektar::VanDerWaalsEoS::v_GetEFromRhoP(), Nektar::IdealGasEoS::v_GetEntropy(), Nektar::PengRobinsonEoS::v_GetEntropy(), Nektar::RedlichKwongEoS::v_GetEntropy(), Nektar::VanDerWaalsEoS::v_GetEntropy(), and Nektar::IdealGasEoS::v_GetSoundSpeed().
|
protected |
Definition at line 104 of file EquationOfState.h.
Referenced by EquationOfState(), and Nektar::IdealGasEoS::GetPressureKernel().
|
protected |
Definition at line 105 of file EquationOfState.h.
Referenced by EquationOfState(), and Nektar::IdealGasEoS::GetTemperatureKernel().
|
protected |
Definition at line 103 of file EquationOfState.h.
Referenced by EquationOfState(), Nektar::PengRobinsonEoS::GetPressureKernel(), Nektar::RedlichKwongEoS::GetPressureKernel(), Nektar::PengRobinsonEoS::GetTemperatureKernel(), Nektar::RedlichKwongEoS::GetTemperatureKernel(), Nektar::VanDerWaalsEoS::GetTemperatureKernel(), Nektar::PengRobinsonEoS::PengRobinsonEoS(), Nektar::RedlichKwongEoS::RedlichKwongEoS(), Nektar::PengRobinsonEoS::v_GetDPDe_rho(), Nektar::RedlichKwongEoS::v_GetDPDe_rho(), Nektar::PengRobinsonEoS::v_GetDPDrho_e(), Nektar::RedlichKwongEoS::v_GetDPDrho_e(), Nektar::PengRobinsonEoS::v_GetEFromRhoP(), Nektar::RedlichKwongEoS::v_GetEFromRhoP(), Nektar::IdealGasEoS::v_GetEntropy(), Nektar::PengRobinsonEoS::v_GetEntropy(), Nektar::RedlichKwongEoS::v_GetEntropy(), Nektar::VanDerWaalsEoS::v_GetEntropy(), Nektar::IdealGasEoS::v_GetRhoFromPT(), Nektar::PengRobinsonEoS::v_GetRhoFromPT(), Nektar::RedlichKwongEoS::v_GetRhoFromPT(), Nektar::VanDerWaalsEoS::v_GetRhoFromPT(), Nektar::IdealGasEoS::v_GetSoundSpeed(), and Nektar::VanDerWaalsEoS::VanDerWaalsEoS().