CoolProp
6.6.1dev
An open-source fluid property and humid air property database
|
A generalized residual helmholtz energy container that can deal with a wide range of terms which can be converted to this general form.
\( \alpha^r=\sum_i n_i \delta^{d_i} \tau^{t_i}\exp(u_i) \)
where \( u_i \) is given by
\( u_i = -c_i\delta^{l_i}-\omega_i\tau^{m_i}-\eta_{1,i}(\delta-\epsilon_{1,i})-\eta_{2,i}(\delta-\epsilon_{2,i})^2-\beta_{1,i}(\tau-\gamma_{1,i})-\beta_{2,i}(\tau-\gamma_{2,i})^2 \)
Definition at line 332 of file Helmholtz.h.
#include <Helmholtz.h>
Public Member Functions | |
ResidualHelmholtzGeneralizedExponential () | |
void | add_Power (const std::vector< CoolPropDbl > &n, const std::vector< CoolPropDbl > &d, const std::vector< CoolPropDbl > &t, const std::vector< CoolPropDbl > &l) |
Add and convert an old-style power (polynomial) term to generalized form. More... | |
void | add_Exponential (const std::vector< CoolPropDbl > &n, const std::vector< CoolPropDbl > &d, const std::vector< CoolPropDbl > &t, const std::vector< CoolPropDbl > &g, const std::vector< CoolPropDbl > &l) |
Add and convert an old-style exponential term to generalized form. More... | |
void | add_Gaussian (const std::vector< CoolPropDbl > &n, const std::vector< CoolPropDbl > &d, const std::vector< CoolPropDbl > &t, const std::vector< CoolPropDbl > &eta, const std::vector< CoolPropDbl > &epsilon, const std::vector< CoolPropDbl > &beta, const std::vector< CoolPropDbl > &gamma) |
Add and convert an old-style Gaussian term to generalized form. More... | |
void | add_GERG2008Gaussian (const std::vector< CoolPropDbl > &n, const std::vector< CoolPropDbl > &d, const std::vector< CoolPropDbl > &t, const std::vector< CoolPropDbl > &eta, const std::vector< CoolPropDbl > &epsilon, const std::vector< CoolPropDbl > &beta, const std::vector< CoolPropDbl > &gamma) |
Add and convert an old-style Gaussian term from GERG 2008 natural gas model to generalized form. More... | |
void | add_Lemmon2005 (const std::vector< CoolPropDbl > &n, const std::vector< CoolPropDbl > &d, const std::vector< CoolPropDbl > &t, const std::vector< CoolPropDbl > &l, const std::vector< CoolPropDbl > &m) |
Add and convert a term from Lemmon and Jacobsen (2005) used for R125. More... | |
void | finish () |
void | to_json (rapidjson::Value &el, rapidjson::Document &doc) |
void | all (const CoolPropDbl &tau, const CoolPropDbl &delta, HelmholtzDerivatives &derivs) throw () |
Public Member Functions inherited from CoolProp::BaseHelmholtzTerm | |
BaseHelmholtzTerm () | |
virtual | ~BaseHelmholtzTerm () |
virtual CoolPropDbl | base (const CoolPropDbl &tau, const CoolPropDbl &delta) throw () |
Returns the base, non-dimensional, Helmholtz energy term (no derivatives) [-]. More... | |
virtual CoolPropDbl | dTau (const CoolPropDbl &tau, const CoolPropDbl &delta) throw () |
Returns the first partial derivative of Helmholtz energy term with respect to tau [-]. More... | |
virtual CoolPropDbl | dTau2 (const CoolPropDbl &tau, const CoolPropDbl &delta) throw () |
Returns the second partial derivative of Helmholtz energy term with respect to tau [-]. More... | |
virtual CoolPropDbl | dDelta_dTau (const CoolPropDbl &tau, const CoolPropDbl &delta) throw () |
Returns the second mixed partial derivative (delta1,dtau1) of Helmholtz energy term with respect to delta and tau [-]. More... | |
virtual CoolPropDbl | dDelta (const CoolPropDbl &tau, const CoolPropDbl &delta) throw () |
Returns the first partial derivative of Helmholtz energy term with respect to delta [-]. More... | |
virtual CoolPropDbl | dDelta2 (const CoolPropDbl &tau, const CoolPropDbl &delta) throw () |
Returns the second partial derivative of Helmholtz energy term with respect to delta [-]. More... | |
virtual CoolPropDbl | dDelta2_dTau (const CoolPropDbl &tau, const CoolPropDbl &delta) throw () |
Returns the third mixed partial derivative (delta2,dtau1) of Helmholtz energy term with respect to delta and tau [-]. More... | |
virtual CoolPropDbl | dDelta_dTau2 (const CoolPropDbl &tau, const CoolPropDbl &delta) throw () |
Returns the third mixed partial derivative (delta1,dtau2) of Helmholtz energy term with respect to delta and tau [-]. More... | |
virtual CoolPropDbl | dTau3 (const CoolPropDbl &tau, const CoolPropDbl &delta) throw () |
Returns the third partial derivative of Helmholtz energy term with respect to tau [-]. More... | |
virtual CoolPropDbl | dDelta3 (const CoolPropDbl &tau, const CoolPropDbl &delta) throw () |
Returns the third partial derivative of Helmholtz energy term with respect to delta [-]. More... | |
virtual CoolPropDbl | dTau4 (const CoolPropDbl &tau, const CoolPropDbl &delta) throw () |
Returns the fourth partial derivative of Helmholtz energy term with respect to tau [-]. More... | |
virtual CoolPropDbl | dDelta_dTau3 (const CoolPropDbl &tau, const CoolPropDbl &delta) throw () |
virtual CoolPropDbl | dDelta2_dTau2 (const CoolPropDbl &tau, const CoolPropDbl &delta) throw () |
virtual CoolPropDbl | dDelta3_dTau (const CoolPropDbl &tau, const CoolPropDbl &delta) throw () |
virtual CoolPropDbl | dDelta4 (const CoolPropDbl &tau, const CoolPropDbl &delta) throw () |
Public Attributes | |
bool | delta_li_in_u |
bool | tau_mi_in_u |
bool | eta1_in_u |
bool | eta2_in_u |
bool | beta1_in_u |
bool | beta2_in_u |
bool | finished |
std::vector< CoolPropDbl > | s |
std::size_t | N |
std::vector< double > | n |
std::vector< double > | d |
std::vector< double > | t |
std::vector< double > | c |
std::vector< double > | l_double |
std::vector< double > | omega |
std::vector< double > | m_double |
std::vector< double > | eta1 |
std::vector< double > | epsilon1 |
std::vector< double > | eta2 |
std::vector< double > | epsilon2 |
std::vector< double > | beta1 |
std::vector< double > | gamma1 |
std::vector< double > | beta2 |
std::vector< double > | gamma2 |
std::vector< int > | l_int |
std::vector< int > | m_int |
std::vector< ResidualHelmholtzGeneralizedExponentialElement > | elements |
|
inline |
Definition at line 350 of file Helmholtz.h.
|
inline |
Add and convert an old-style exponential term to generalized form.
Term of the format \( \alpha^r=\displaystyle\sum_i n_i \delta^{d_i} \tau^{t_i} \exp(-g_i\delta^{l_i}) \)
Definition at line 379 of file Helmholtz.h.
|
inline |
Add and convert an old-style Gaussian term to generalized form.
Term of the format \( \alpha^r=\displaystyle\sum_i n_i \delta^{d_i} \tau^{t_i} \exp(-\eta_i(\delta-\epsilon_i)^2-\beta_i(\tau-\gamma_i)^2)\)
Definition at line 398 of file Helmholtz.h.
|
inline |
Add and convert an old-style Gaussian term from GERG 2008 natural gas model to generalized form.
Term of the format \( \alpha^r=\displaystyle\sum_i n_i \delta^{d_i} \tau^{t_i} \exp(-\eta_i(\delta-\epsilon_i)^2-\beta_i(\delta-\gamma_i))\)
Definition at line 420 of file Helmholtz.h.
|
inline |
Add and convert a term from Lemmon and Jacobsen (2005) used for R125.
Term of the format \( \alpha^r=\displaystyle\sum_i n_i \delta^{d_i} \tau^{t_i} \exp(-\delta^{l_i}-\tau^{m_i})\)
Definition at line 442 of file Helmholtz.h.
|
inline |
Add and convert an old-style power (polynomial) term to generalized form.
Term of the format \( \alpha^r=\left\lbrace\begin{array}{cc}\displaystyle\sum_i n_i \delta^{d_i} \tau^{t_i} & l_i=0\\ \displaystyle\sum_i n_i \delta^{d_i} \tau^{t_i} \exp(-\delta^{l_i}) & l_i\neq 0\end{array}\right.\)
Definition at line 357 of file Helmholtz.h.
|
virtual |
Implements CoolProp::BaseHelmholtzTerm.
Definition at line 137 of file Helmholtz.cpp.
|
inline |
Definition at line 461 of file Helmholtz.h.
void CoolProp::ResidualHelmholtzGeneralizedExponential::to_json | ( | rapidjson::Value & | el, |
rapidjson::Document & | doc | ||
) |
Definition at line 286 of file Helmholtz.cpp.
std::vector<double> CoolProp::ResidualHelmholtzGeneralizedExponential::beta1 |
Definition at line 342 of file Helmholtz.h.
bool CoolProp::ResidualHelmholtzGeneralizedExponential::beta1_in_u |
Definition at line 336 of file Helmholtz.h.
std::vector<double> CoolProp::ResidualHelmholtzGeneralizedExponential::beta2 |
Definition at line 342 of file Helmholtz.h.
bool CoolProp::ResidualHelmholtzGeneralizedExponential::beta2_in_u |
Definition at line 336 of file Helmholtz.h.
std::vector<double> CoolProp::ResidualHelmholtzGeneralizedExponential::c |
Definition at line 342 of file Helmholtz.h.
std::vector<double> CoolProp::ResidualHelmholtzGeneralizedExponential::d |
Definition at line 342 of file Helmholtz.h.
bool CoolProp::ResidualHelmholtzGeneralizedExponential::delta_li_in_u |
Definition at line 336 of file Helmholtz.h.
std::vector<ResidualHelmholtzGeneralizedExponentialElement> CoolProp::ResidualHelmholtzGeneralizedExponential::elements |
Definition at line 348 of file Helmholtz.h.
std::vector<double> CoolProp::ResidualHelmholtzGeneralizedExponential::epsilon1 |
Definition at line 342 of file Helmholtz.h.
std::vector<double> CoolProp::ResidualHelmholtzGeneralizedExponential::epsilon2 |
Definition at line 342 of file Helmholtz.h.
std::vector<double> CoolProp::ResidualHelmholtzGeneralizedExponential::eta1 |
Definition at line 342 of file Helmholtz.h.
bool CoolProp::ResidualHelmholtzGeneralizedExponential::eta1_in_u |
Definition at line 336 of file Helmholtz.h.
std::vector<double> CoolProp::ResidualHelmholtzGeneralizedExponential::eta2 |
Definition at line 342 of file Helmholtz.h.
bool CoolProp::ResidualHelmholtzGeneralizedExponential::eta2_in_u |
Definition at line 336 of file Helmholtz.h.
bool CoolProp::ResidualHelmholtzGeneralizedExponential::finished |
Definition at line 336 of file Helmholtz.h.
std::vector<double> CoolProp::ResidualHelmholtzGeneralizedExponential::gamma1 |
Definition at line 342 of file Helmholtz.h.
std::vector<double> CoolProp::ResidualHelmholtzGeneralizedExponential::gamma2 |
Definition at line 342 of file Helmholtz.h.
std::vector<double> CoolProp::ResidualHelmholtzGeneralizedExponential::l_double |
Definition at line 342 of file Helmholtz.h.
std::vector<int> CoolProp::ResidualHelmholtzGeneralizedExponential::l_int |
Definition at line 344 of file Helmholtz.h.
std::vector<double> CoolProp::ResidualHelmholtzGeneralizedExponential::m_double |
Definition at line 342 of file Helmholtz.h.
std::vector<int> CoolProp::ResidualHelmholtzGeneralizedExponential::m_int |
Definition at line 344 of file Helmholtz.h.
std::size_t CoolProp::ResidualHelmholtzGeneralizedExponential::N |
Definition at line 338 of file Helmholtz.h.
std::vector<double> CoolProp::ResidualHelmholtzGeneralizedExponential::n |
Definition at line 342 of file Helmholtz.h.
std::vector<double> CoolProp::ResidualHelmholtzGeneralizedExponential::omega |
Definition at line 342 of file Helmholtz.h.
std::vector<CoolPropDbl> CoolProp::ResidualHelmholtzGeneralizedExponential::s |
Definition at line 337 of file Helmholtz.h.
std::vector<double> CoolProp::ResidualHelmholtzGeneralizedExponential::t |
Definition at line 342 of file Helmholtz.h.
bool CoolProp::ResidualHelmholtzGeneralizedExponential::tau_mi_in_u |
Definition at line 336 of file Helmholtz.h.