41 EosNASG(std::vector<std::string>& nameParameterEos,
int& number);
122 virtual double computePressureIsentropic(
const double& initialPressure,
const double& initialDensity,
const double& finalDensity)
const;
130 virtual double computePressureHugoniot(
const double& initialPressure,
const double& initialDensity,
const double& finalDensity)
const;
138 virtual double computeDensityIsentropic(
const double& initialPressure,
const double& initialDensity,
const double& finalPressure,
double* drhodp=0)
const;
146 virtual double computeDensityHugoniot(
const double& initialPressure,
const double& initialDensity,
const double& finalPressure,
double* drhodp = 0)
const;
154 virtual double computeDensityPfinal(
const double& initialPressure,
const double& initialDensity,
const double& finalPressure,
double* drhodp = 0)
const;
162 virtual double computeEnthalpyIsentropic(
const double& initialPressure,
const double& initialDensity,
const double& finalPressure,
double* dhdp = 0)
const;
184 virtual void sendSpecialMixtureEos(
double& gamPinfOverGamMinusOne,
double& eRef,
double& oneOverGamMinusOne,
double& covolume)
const;
191 virtual double vfpfh(
const double&
pressure,
const double& enthalpy)
const;
198 virtual double dvdpch(
const double&
pressure,
const double& enthalpy)
const;
248 virtual const double&
getB()
const {
return m_b; };
TypeEOS
Enumeration for the type of EOS (IG: ideal gas, SG: stiffened gas, NASG: Noble-Abel stiffened gas,...
Definition Eos.h:40
@ NASG
Definition Eos.h:40
Class describing a Noble-Abel stiffened gas equation of state.
Definition EosNASG.h:39
double m_cv
Volume calorific energy of the fluid.
Definition EosNASG.h:258
virtual double computeTemperature(const double &density, const double &pressure) const
Compute temperature.
Definition EosNASG.cpp:68
virtual const double & getCv() const
Get the volume calorific energy of the fluid.
Definition EosNASG.h:239
double m_pInf
Infinit (reference) pressure of the fluid.
Definition EosNASG.h:256
virtual void sendSpecialMixtureEos(double &gamPinfOverGamMinusOne, double &eRef, double &oneOverGamMinusOne, double &covolume) const
Send specific values of the parameters useful for mixture EOS based on Ideal Gas and Stiffened Gas.
Definition EosNASG.cpp:210
virtual double computePressureIsentropic(const double &initialPressure, const double &initialDensity, const double &finalDensity) const
Compute phase pressure along an isentropic path.
Definition EosNASG.cpp:131
virtual double computeSoundSpeed(const double &density, const double &pressure) const
Compute sound speed.
Definition EosNASG.cpp:96
virtual const double & getB() const
Get the covolume of the fluid.
Definition EosNASG.h:248
virtual double dvdhcp(const double &pressure) const
Compute the partial derivative of the specific volume versus enthalpy at constant pressure.
Definition EosNASG.cpp:234
virtual double computeDensityTimesInterfaceSoundSpeedSquare(const double &density, const double &interfacePressure, const double &pressure) const
Compute density times interface sound speed square.
Definition EosNASG.cpp:117
double m_eRef
Energy of reference of the fluid.
Definition EosNASG.h:259
virtual void verifyPressure(const double &pressure, const std::string &message="") const
Add a message error if the pressure is too low and under a limit value equal to .
Definition EosNASG.cpp:249
virtual double vfpfh(const double &pressure, const double &enthalpy) const
Compute the specific volume with the pressure and the enthalpy.
Definition EosNASG.cpp:220
virtual double computeDensityHugoniot(const double &initialPressure, const double &initialDensity, const double &finalPressure, double *drhodp=0) const
Compute density along the Hugoniot curve AND its derivature versus the pressure along Hugoniot curve.
Definition EosNASG.cpp:154
virtual const double & getPInf() const
Get the constant pressure.
Definition EosNASG.h:236
virtual double dvdpch(const double &pressure, const double &enthalpy) const
Compute the partial derivative of the specific volume versus pressure at constant enthalpy.
Definition EosNASG.cpp:227
virtual double computeDensitySaturation(const double &pressure, const double &Tsat, const double &dTsatdP, double *drhodp=0) const
Compute density on the saturation curve at the saturation temperature AND its derivative versus the p...
Definition EosNASG.cpp:187
virtual double computeAcousticImpedance(const double &density, const double &pressure) const
Compute acoustic impedance.
Definition EosNASG.cpp:110
virtual ~EosNASG()
Definition EosNASG.cpp:50
virtual double computePressure(const double &density, const double &energy) const
Compute pressure.
Definition EosNASG.cpp:82
double m_sRef
Entropy of the fluid.
Definition EosNASG.h:260
virtual double drhodpcT(const double &pressure, const double &temperature) const
Compute the partial derivative of density versus pressure at constant temperature.
Definition EosNASG.cpp:241
virtual void verifyAndModifyPressure(double &pressure) const
Modify the pressure if its value is under a limit value equal to .
Definition EosNASG.cpp:256
virtual TypeEOS getType() const
Get the type that is to say the reduced name of the EOS in ECOGEN return .
Definition EosNASG.h:252
virtual double computePressureHugoniot(const double &initialPressure, const double &initialDensity, const double &finalDensity) const
Compute pressure along the Hugoniot curve.
Definition EosNASG.cpp:138
virtual double computeDensityEnergySaturation(const double &pressure, const double &rho, const double &drhodp, double *drhoedp=0) const
Compute the volumic internal energy at the saturation AND its derivative versus the pressure at const...
Definition EosNASG.cpp:200
virtual void verifyAndCorrectDensityMax(const double &mass, double &alpha, double &density) const
Modify the density if its value is above a limit value equal to and then correct the volume fraction...
Definition EosNASG.cpp:263
virtual void assignParametersEos(std::string name, std::vector< double > parametersEos)
assign the values of the attributes for EosNASG from data defined in the code
Definition EosNASG.cpp:54
virtual double computeEnergy(const double &density, const double &pressure) const
Compute internal energy.
Definition EosNASG.cpp:75
virtual double computeInterfaceSoundSpeed(const double &density, const double &interfacePressure, const double &pressure) const
Compute interface sound speed.
Definition EosNASG.cpp:103
virtual double computeDensity(const double &pressure, const double &temperature) const
Compute density.
Definition EosNASG.cpp:89
virtual double computeDensityPfinal(const double &initialPressure, const double &initialDensity, const double &finalPressure, double *drhodp=0) const
Compute density during relaxation step AND its derivative versus the pressure.
Definition EosNASG.cpp:165
virtual double computeDensityIsentropic(const double &initialPressure, const double &initialDensity, const double &finalPressure, double *drhodp=0) const
Compute density along an isentropic path AND its derivature versus the pressure at constant entropy.
Definition EosNASG.cpp:145
virtual double computeEntropy(const double &temperature, const double &pressure) const
Compute entropy.
Definition EosNASG.cpp:124
double m_b
Covolume of the fluid.
Definition EosNASG.h:257
virtual const double & getERef() const
Get the energy of reference of the fluid.
Definition EosNASG.h:242
double m_gamma
Adiabatic exponent of the fluid.
Definition EosNASG.h:255
virtual const double & getGamma() const
Get the adiabatic exponent of the fluid.
Definition EosNASG.h:233
virtual const double & getSRef() const
Get the entropy of reference of the fluid.
Definition EosNASG.h:245
virtual double computeEnthalpyIsentropic(const double &initialPressure, const double &initialDensity, const double &finalPressure, double *dhdp=0) const
Compute enthalpy at the end of an isentropic path AND the enthalpy derivature versus the pressure.
Definition EosNASG.cpp:176
General class for Equation of State (EOS).
Definition Eos.h:54