CoolProp
|
Abstract base class for reducing function An abstract base class for the reducing function to allow for Lemmon-Jacobsen, GERG, or other reducing function to yield the reducing parameters \(\rho_r\) and \(T_r\).
#include <ReducingFunctions.h>
Public Member Functions | |
virtual ReducingFunction * | copy ()=0 |
virtual void | set_binary_interaction_double (const std::size_t i, const std::size_t j, const std::string ¶meter, double value)=0 |
virtual double | get_binary_interaction_double (const std::size_t i, const std::size_t j, const std::string ¶meter) const =0 |
virtual CoolPropDbl | Tr (const std::vector< CoolPropDbl > &x) const =0 |
The reduced temperature. | |
virtual CoolPropDbl | dTrdxi__constxj (const std::vector< CoolPropDbl > &x, std::size_t i, x_N_dependency_flag xN_flag) const =0 |
The derivative of reduced temperature with respect to component i mole fraction. | |
virtual CoolPropDbl | rhormolar (const std::vector< CoolPropDbl > &x) const =0 |
The molar reducing density. | |
virtual CoolPropDbl | drhormolardxi__constxj (const std::vector< CoolPropDbl > &x, std::size_t i, x_N_dependency_flag xN_flag) const =0 |
Derivative of the molar reducing density with respect to component i mole fraction. | |
virtual CoolPropDbl | dTr_dgammaT (const std::vector< CoolPropDbl > &x) const |
virtual CoolPropDbl | dTr_dbetaT (const std::vector< CoolPropDbl > &x) const |
virtual CoolPropDbl | drhormolar_dgammaV (const std::vector< CoolPropDbl > &x) const |
virtual CoolPropDbl | drhormolar_dbetaV (const std::vector< CoolPropDbl > &x) const |
virtual CoolPropDbl | d2Tr_dxidgammaT (const std::vector< CoolPropDbl > &x, std::size_t i, x_N_dependency_flag xN_flag) const |
virtual CoolPropDbl | d2Tr_dxidbetaT (const std::vector< CoolPropDbl > &x, std::size_t i, x_N_dependency_flag xN_flag) const |
virtual CoolPropDbl | d2rhormolar_dxidgammaV (const std::vector< CoolPropDbl > &x, std::size_t i, x_N_dependency_flag xN_flag) const |
virtual CoolPropDbl | d2rhormolar_dxidbetaV (const std::vector< CoolPropDbl > &x, std::size_t i, x_N_dependency_flag xN_flag) const |
virtual CoolPropDbl | d2rhormolardxi2__constxj (const std::vector< CoolPropDbl > &x, std::size_t i, x_N_dependency_flag xN_flag) const =0 |
virtual CoolPropDbl | d2rhormolardxidxj (const std::vector< CoolPropDbl > &x, std::size_t i, std::size_t j, x_N_dependency_flag xN_flag) const =0 |
virtual CoolPropDbl | d3rhormolardxidxjdxk (const std::vector< CoolPropDbl > &x, std::size_t i, std::size_t j, std::size_t k, x_N_dependency_flag xN_flag) const =0 |
virtual CoolPropDbl | d2Trdxi2__constxj (const std::vector< CoolPropDbl > &x, std::size_t i, x_N_dependency_flag xN_flag) const =0 |
virtual CoolPropDbl | d2Trdxidxj (const std::vector< CoolPropDbl > &x, std::size_t i, std::size_t j, x_N_dependency_flag xN_flag) const =0 |
virtual CoolPropDbl | d3Trdxidxjdxk (const std::vector< CoolPropDbl > &x, std::size_t i, std::size_t j, std::size_t k, x_N_dependency_flag xN_flag) const =0 |
virtual CoolPropDbl | d_ndTrdni_dxj__constxi (const std::vector< CoolPropDbl > &x, std::size_t i, std::size_t j, x_N_dependency_flag xN_flag) const |
GERG 2004 Monograph equation 7.56: More... | |
virtual CoolPropDbl | d2_ndTrdni_dxj_dxk__constxi (const std::vector< CoolPropDbl > &x, std::size_t i, std::size_t j, std::size_t k, x_N_dependency_flag xN_flag) const |
virtual CoolPropDbl | d_ndrhorbardni_dxj__constxi (const std::vector< CoolPropDbl > &x, std::size_t i, std::size_t j, x_N_dependency_flag xN_flag) const |
GERG 2004 Monograph equation 7.55: If the \(x_i\) are all independent \[ \left(\frac{\partial}{\partial x_j}\left(n\left(\frac{\partial \rho_r}{\partial n_i} \right)_{n_j}\right)\right)_{x_i} = \left(\frac{\partial^2\rho_r}{\partial x_j \partial x_i}\right)-\left(\frac{\partial \rho_r}{\partial x_j}\right)_{x_i}-\sum_{k=0}^{N-1}x_k\left(\frac{\partial^2\rho_r}{\partial x_j \partial x_k}\right) \] Gernert, JPCRD, 2014, A28 If \(x_N = 1-\sum x_i\): \[ \left(\frac{\partial}{\partial x_j}\left(n\left(\frac{\partial \rho_r}{\partial n_i} \right)_{n_j}\right)\right)_{x_i} = \left(\frac{\partial^2\rho_r}{\partial x_j \partial x_i}\right)-\left(\frac{\partial \rho_r}{\partial x_j}\right)_{x_i}-\sum_{k=0}^{N-2}x_k\left(\frac{\partial^2\rho_r}{\partial x_j \partial x_k}\right) \] . | |
virtual CoolPropDbl | d2_ndrhorbardni_dxj_dxk__constxi (const std::vector< CoolPropDbl > &x, std::size_t i, std::size_t j, std::size_t k, x_N_dependency_flag xN_flag) const |
virtual CoolPropDbl | ndrhorbardni__constnj (const std::vector< CoolPropDbl > &x, std::size_t i, x_N_dependency_flag xN_flag) const |
virtual CoolPropDbl | ndTrdni__constnj (const std::vector< CoolPropDbl > &x, std::size_t i, x_N_dependency_flag xN_flag) const |
virtual CoolPropDbl | PSI_rho (const std::vector< CoolPropDbl > &x, std::size_t i, x_N_dependency_flag xN_flag) const |
virtual CoolPropDbl | d_PSI_rho_dxj (const std::vector< CoolPropDbl > &x, std::size_t i, std::size_t j, x_N_dependency_flag xN_flag) const |
virtual CoolPropDbl | d2_PSI_rho_dxj_dxk (const std::vector< CoolPropDbl > &x, std::size_t i, std::size_t j, std::size_t k, x_N_dependency_flag xN_flag) const |
virtual CoolPropDbl | PSI_T (const std::vector< CoolPropDbl > &x, std::size_t i, x_N_dependency_flag xN_flag) const |
virtual CoolPropDbl | d_PSI_T_dxj (const std::vector< CoolPropDbl > &x, std::size_t i, std::size_t j, x_N_dependency_flag xN_flag) const |
virtual CoolPropDbl | d2_PSI_T_dxj_dxk (const std::vector< CoolPropDbl > &x, std::size_t i, std::size_t j, std::size_t k, x_N_dependency_flag xN_flag) const |
Static Public Member Functions | |
static shared_ptr< ReducingFunction > | factory (const std::vector< CoolPropFluid *> &components, STLMatrix &F) |
A factory function to generate the required reducing function. | |
Protected Attributes | |
std::size_t | N |
|
virtual |
GERG 2004 Monograph equation 7.56:
If the \(x_i\) are all independent
\[ \left(\frac{\partial}{\partial x_j}\left(n\left(\frac{\partial T_r}{\partial n_i} \right)_{n_j}\right)\right)_{x_i} = \left(\frac{\partial^2T_r}{\partial x_j \partial x_i}\right)-\left(\frac{\partial T_r}{\partial x_j}\right)_{x_i}-\sum_{k=0}^{N-1}x_k\left(\frac{\partial^2T_r}{\partial x_j \partial x_k}\right) \]
If \(x_N = 1-\sum x_i\):
\[ \left(\frac{\partial}{\partial x_j}\left(n\left(\frac{\partial T_r}{\partial n_i} \right)_{n_j}\right)\right)_{x_i} = \left(\frac{\partial^2T_r}{\partial x_j \partial x_i}\right)-\left(\frac{\partial T_r}{\partial x_j}\right)_{x_i}-\sum_{k=0}^{N-1}x_k\left(\frac{\partial^2T_r}{\partial x_j \partial x_k}\right) \]