CoolProp
|
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 \)
#include <Helmholtz.h>
Public Member Functions | |
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 | |
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 |
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}) \)
|
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)\)
|
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))\)
|
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})\)
|
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.\)