CoolProp 6.8.1dev
An open-source fluid property and humid air property database
Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
CoolProp::AbstractState Class Referenceabstract

Detailed Description

The mother of all state classes.

This class provides the basic properties based on interrelations of the properties, their derivatives and the Helmholtz energy terms. It does not provide the mechanism to update the values. This has to be implemented in a subclass. Most functions are defined as virtual functions allowing us redefine them later, for example to implement the TTSE technique. The functions defined here are always used as a fall-back.

This base class does not perform any checks on the two-phase conditions and alike. Most of the functions defined here only apply to compressible single state substances. Make sure you are aware of all the assumptions we made when using this class.

Add build table function to Abstract State Interpolator inherit AS implemented by TTSE BICUBIC

Definition at line 78 of file AbstractState.h.

#include <AbstractState.h>

Inheritance diagram for CoolProp::AbstractState:
CoolProp::HelmholtzEOSMixtureBackend CoolProp::IF97Backend CoolProp::IncompressibleBackend CoolProp::PCSAFTBackend CoolProp::REFPROPMixtureBackend CoolProp::TabularBackend CoolProp::AbstractCubicBackend CoolProp::HelmholtzEOSBackend CoolProp::REFPROPBackend CoolProp::BicubicBackend CoolProp::TTSEBackend CoolProp::PengRobinsonBackend CoolProp::SRKBackend CoolProp::VTPRBackend

Public Member Functions

 AbstractState ()
 
virtual ~AbstractState ()
 
void set_T (CoolPropDbl T)
 Set the internal variable T without a flash call (expert use only!) More...
 
virtual std::string backend_name (void)=0
 
virtual bool using_mole_fractions (void)=0
 
virtual bool using_mass_fractions (void)=0
 
virtual bool using_volu_fractions (void)=0
 
virtual void set_mole_fractions (const std::vector< CoolPropDbl > &mole_fractions)=0
 
virtual void set_mass_fractions (const std::vector< CoolPropDbl > &mass_fractions)=0
 
virtual void set_volu_fractions (const std::vector< CoolPropDbl > &mass_fractions)
 
virtual void set_reference_stateS (const std::string &reference_state)
 Set the reference state based on a string representation. More...
 
virtual void set_reference_stateD (double T, double rhomolar, double hmolar0, double smolar0)
 
std::vector< CoolPropDblmole_fractions_liquid (void)
 Get the mole fractions of the equilibrium liquid phase. More...
 
std::vector< double > mole_fractions_liquid_double (void)
 Get the mole fractions of the equilibrium liquid phase (but as a double for use in SWIG wrapper) More...
 
std::vector< CoolPropDblmole_fractions_vapor (void)
 Get the mole fractions of the equilibrium vapor phase. More...
 
std::vector< double > mole_fractions_vapor_double (void)
 Get the mole fractions of the equilibrium vapor phase (but as a double for use in SWIG wrapper) More...
 
virtual const std::vector< CoolPropDbl > & get_mole_fractions (void)=0
 Get the mole fractions of the fluid. More...
 
virtual const std::vector< CoolPropDblget_mass_fractions (void)
 Get the mass fractions of the fluid. More...
 
virtual void update (CoolProp::input_pairs input_pair, double Value1, double Value2)=0
 Update the state using two state variables. More...
 
virtual void update_QT_pure_superanc (double Q, double T)
 Update the state for QT inputs for pure fluids when using the superancillary functions. More...
 
virtual void update_with_guesses (CoolProp::input_pairs input_pair, double Value1, double Value2, const GuessesStructure &guesses)
 
virtual bool available_in_high_level (void)
 
virtual std::string fluid_param_string (const std::string &)
 Return a string from the backend for the mixture/fluid - backend dependent - could be CAS #, name, etc. More...
 
std::vector< std::string > fluid_names (void)
 Return a vector of strings of the fluid names that are in use. More...
 
virtual const double get_fluid_constant (std::size_t i, parameters param) const
 
virtual void set_binary_interaction_double (const std::string &CAS1, const std::string &CAS2, const std::string &parameter, const double value)
 Set binary mixture floating point parameter (EXPERT USE ONLY!!!) More...
 
virtual void set_binary_interaction_double (const std::size_t i, const std::size_t j, const std::string &parameter, const double value)
 Set binary mixture floating point parameter (EXPERT USE ONLY!!!) More...
 
virtual void set_binary_interaction_string (const std::string &CAS1, const std::string &CAS2, const std::string &parameter, const std::string &value)
 Set binary mixture string parameter (EXPERT USE ONLY!!!) More...
 
virtual void set_binary_interaction_string (const std::size_t i, const std::size_t j, const std::string &parameter, const std::string &value)
 Set binary mixture string parameter (EXPERT USE ONLY!!!) More...
 
virtual double get_binary_interaction_double (const std::string &CAS1, const std::string &CAS2, const std::string &parameter)
 Get binary mixture double value (EXPERT USE ONLY!!!) More...
 
virtual double get_binary_interaction_double (const std::size_t i, const std::size_t j, const std::string &parameter)
 Get binary mixture double value (EXPERT USE ONLY!!!) More...
 
virtual std::string get_binary_interaction_string (const std::string &CAS1, const std::string &CAS2, const std::string &parameter)
 Get binary mixture string value (EXPERT USE ONLY!!!) More...
 
virtual void apply_simple_mixing_rule (std::size_t i, std::size_t j, const std::string &model)
 Apply a simple mixing rule (EXPERT USE ONLY!!!) More...
 
virtual void set_cubic_alpha_C (const size_t i, const std::string &parameter, const double c1, const double c2, const double c3)
 Set the cubic alpha function's constants: More...
 
virtual void set_fluid_parameter_double (const size_t i, const std::string &parameter, const double value)
 Set fluid parameter (currently the volume translation parameter for cubic) More...
 
virtual double get_fluid_parameter_double (const size_t i, const std::string &parameter)
 Double fluid parameter (currently the volume translation parameter for cubic) More...
 
virtual bool clear ()
 Clear all the cached values. More...
 
virtual bool clear_comp_change ()
 When the composition changes, clear all cached values that are only dependent on composition, but not the thermodynamic state. More...
 
virtual const CoolProp::SimpleStateget_reducing_state ()
 
const CoolProp::SimpleStateget_state (const std::string &state)
 Get a desired state point - backend dependent. More...
 
double Tmin (void)
 Get the minimum temperature in K. More...
 
double Tmax (void)
 Get the maximum temperature in K. More...
 
double pmax (void)
 Get the maximum pressure in Pa. More...
 
double Ttriple (void)
 Get the triple point temperature in K. More...
 
phases phase (void)
 Get the phase of the state. More...
 
void specify_phase (phases phase)
 Specify the phase for all further calculations with this state class. More...
 
void unspecify_phase (void)
 Unspecify the phase and go back to calculating it based on the inputs. More...
 
double T_critical (void)
 Return the critical temperature in K. More...
 
double p_critical (void)
 Return the critical pressure in Pa. More...
 
double rhomolar_critical (void)
 Return the critical molar density in mol/m^3. More...
 
double rhomass_critical (void)
 Return the critical mass density in kg/m^3. More...
 
std::vector< CriticalStateall_critical_points (void)
 Return the vector of critical points, including points that are unstable or correspond to negative pressure. More...
 
void build_spinodal ()
 Construct the spinodal curve for the mixture (or pure fluid) More...
 
SpinodalData get_spinodal_data ()
 Get the data from the spinodal curve constructed in the call to build_spinodal() More...
 
void criticality_contour_values (double &L1star, double &M1star)
 Calculate the criticality contour values \(\mathcal{L}_1^*\) and \(\mathcal{M}_1^*\). More...
 
double tangent_plane_distance (const double T, const double p, const std::vector< double > &w, const double rhomolar_guess=-1)
 
double T_reducing (void)
 Return the reducing point temperature in K. More...
 
double rhomolar_reducing (void)
 Return the molar density at the reducing point in mol/m^3. More...
 
double rhomass_reducing (void)
 Return the mass density at the reducing point in kg/m^3. More...
 
double p_triple (void)
 Return the triple point pressure in Pa. More...
 
std::string name ()
 Return the name - backend dependent. More...
 
std::string description ()
 Return the description - backend dependent. More...
 
double dipole_moment ()
 Return the dipole moment in C-m (1 D = 3.33564e-30 C-m) More...
 
double keyed_output (parameters key)
 Retrieve a value by key. More...
 
double trivial_keyed_output (parameters key)
 A trivial keyed output like molar mass that does not depend on the state. More...
 
double saturated_liquid_keyed_output (parameters key)
 Get an output from the saturated liquid state by key. More...
 
double saturated_vapor_keyed_output (parameters key)
 Get an output from the saturated vapor state by key. More...
 
double T (void)
 Return the temperature in K. More...
 
double rhomolar (void)
 Return the molar density in mol/m^3. More...
 
double rhomass (void)
 Return the mass density in kg/m^3. More...
 
double p (void)
 Return the pressure in Pa. More...
 
double Q (void)
 Return the vapor quality (mol/mol); Q = 0 for saturated liquid. More...
 
double tau (void)
 Return the reciprocal of the reduced temperature ( \(\tau = T_c/T\)) More...
 
double delta (void)
 Return the reduced density ( \(\delta = \rho/\rho_c\)) More...
 
double molar_mass (void)
 Return the molar mass in kg/mol. More...
 
double acentric_factor (void)
 Return the acentric factor. More...
 
double gas_constant (void)
 Return the mole-fraction weighted gas constant in J/mol/K. More...
 
double Bvirial (void)
 Return the B virial coefficient. More...
 
double dBvirial_dT (void)
 Return the derivative of the B virial coefficient with respect to temperature. More...
 
double Cvirial (void)
 Return the C virial coefficient. More...
 
double dCvirial_dT (void)
 Return the derivative of the C virial coefficient with respect to temperature. More...
 
double compressibility_factor (void)
 Return the compressibility factor \( Z = p/(rho R T) \). More...
 
double hmolar (void)
 Return the molar enthalpy in J/mol. More...
 
double hmolar_residual (void)
 Return the residual molar enthalpy in J/mol. More...
 
double hmass (void)
 Return the mass enthalpy in J/kg. More...
 
double hmolar_excess (void)
 Return the excess molar enthalpy in J/mol. More...
 
double hmass_excess (void)
 Return the excess mass enthalpy in J/kg. More...
 
double smolar (void)
 Return the molar entropy in J/mol/K. More...
 
double smolar_residual (void)
 Return the residual molar entropy (as a function of temperature and density) in J/mol/K. More...
 
double neff (void)
 Return the effective hardness of interaction. More...
 
double smass (void)
 Return the molar entropy in J/kg/K. More...
 
double smolar_excess (void)
 Return the molar entropy in J/mol/K. More...
 
double smass_excess (void)
 Return the molar entropy in J/kg/K. More...
 
double umolar (void)
 Return the molar internal energy in J/mol. More...
 
double umass (void)
 Return the mass internal energy in J/kg. More...
 
double umolar_excess (void)
 Return the excess internal energy in J/mol. More...
 
double umass_excess (void)
 Return the excess internal energy in J/kg. More...
 
double cpmolar (void)
 Return the molar constant pressure specific heat in J/mol/K. More...
 
double cpmass (void)
 Return the mass constant pressure specific heat in J/kg/K. More...
 
double cp0molar (void)
 Return the molar constant pressure specific heat for ideal gas part only in J/mol/K. More...
 
double cp0mass (void)
 Return the mass constant pressure specific heat for ideal gas part only in J/kg/K. More...
 
double cvmolar (void)
 Return the molar constant volume specific heat in J/mol/K. More...
 
double cvmass (void)
 Return the mass constant volume specific heat in J/kg/K. More...
 
double gibbsmolar (void)
 Return the Gibbs energy in J/mol. More...
 
double gibbsmolar_residual (void)
 Return the residual Gibbs energy in J/mol. More...
 
double gibbsmass (void)
 Return the Gibbs energy in J/kg. More...
 
double gibbsmolar_excess (void)
 Return the excess Gibbs energy in J/mol. More...
 
double gibbsmass_excess (void)
 Return the excess Gibbs energy in J/kg. More...
 
double helmholtzmolar (void)
 Return the Helmholtz energy in J/mol. More...
 
double helmholtzmass (void)
 Return the Helmholtz energy in J/kg. More...
 
double helmholtzmolar_excess (void)
 Return the excess Helmholtz energy in J/mol. More...
 
double helmholtzmass_excess (void)
 Return the excess Helmholtz energy in J/kg. More...
 
double volumemolar_excess (void)
 Return the excess volume in m^3/mol. More...
 
double volumemass_excess (void)
 Return the excess volume in m^3/kg. More...
 
double speed_sound (void)
 Return the speed of sound in m/s. More...
 
double isothermal_compressibility (void)
 Return the isothermal compressibility \( \kappa = -\frac{1}{v}\left.\frac{\partial v}{\partial p}\right|_T=\frac{1}{\rho}\left.\frac{\partial \rho}{\partial p}\right|_T\) in 1/Pa. More...
 
double isobaric_expansion_coefficient (void)
 Return the isobaric expansion coefficient \( \beta = \frac{1}{v}\left.\frac{\partial v}{\partial T}\right|_p = -\frac{1}{\rho}\left.\frac{\partial \rho}{\partial T}\right|_p\) in 1/K. More...
 
double isentropic_expansion_coefficient (void)
 Return the isentropic expansion coefficient \( \kappa_s = -\frac{c_p}{c_v}\frac{v}{p}\left.\frac{\partial p}{\partial v}\right|_T = \frac{\rho}{p}\left.\frac{\partial p}{\partial \rho}\right|_s\). More...
 
double fugacity_coefficient (std::size_t i)
 Return the fugacity coefficient of the i-th component of the mixture. More...
 
std::vector< double > fugacity_coefficients ()
 Return a vector of the fugacity coefficients for all components in the mixture. More...
 
double fugacity (std::size_t i)
 Return the fugacity of the i-th component of the mixture. More...
 
double chemical_potential (std::size_t i)
 Return the chemical potential of the i-th component of the mixture. More...
 
double fundamental_derivative_of_gas_dynamics (void)
 Return the fundamental derivative of gas dynamics \( \Gamma \). More...
 
double PIP ()
 Return the phase identification parameter (PIP) of G. Venkatarathnam and L.R. Oellrich, "Identification of the phase of a fluid using partial derivatives of pressure, volume, and temperature without reference to saturation properties: Applications in phase equilibria calculations". More...
 
void true_critical_point (double &T, double &rho)
 Calculate the "true" critical point for pure fluids where dpdrho|T and d2p/drho2|T are equal to zero. More...
 
void ideal_curve (const std::string &type, std::vector< double > &T, std::vector< double > &p)
 Calculate an ideal curve for a pure fluid. More...
 
CoolPropDbl first_partial_deriv (parameters Of, parameters Wrt, parameters Constant)
 The first partial derivative in homogeneous phases. More...
 
CoolPropDbl second_partial_deriv (parameters Of1, parameters Wrt1, parameters Constant1, parameters Wrt2, parameters Constant2)
 The second partial derivative in homogeneous phases. More...
 
CoolPropDbl first_saturation_deriv (parameters Of1, parameters Wrt1)
 The first partial derivative along the saturation curve. More...
 
CoolPropDbl second_saturation_deriv (parameters Of1, parameters Wrt1, parameters Wrt2)
 The second partial derivative along the saturation curve. More...
 
double first_two_phase_deriv (parameters Of, parameters Wrt, parameters Constant)
 Calculate the first "two-phase" derivative as described by Thorade and Sadaat, EAS, 2013. More...
 
double second_two_phase_deriv (parameters Of, parameters Wrt1, parameters Constant1, parameters Wrt2, parameters Constant2)
 Calculate the second "two-phase" derivative as described by Thorade and Sadaat, EAS, 2013. More...
 
double first_two_phase_deriv_splined (parameters Of, parameters Wrt, parameters Constant, double x_end)
 Calculate the first "two-phase" derivative as described by Thorade and Sadaat, EAS, 2013. More...
 
void build_phase_envelope (const std::string &type="")
 Construct the phase envelope for a mixture. More...
 
const CoolProp::PhaseEnvelopeDataget_phase_envelope_data ()
 After having calculated the phase envelope, return the phase envelope data. More...
 
virtual bool has_melting_line (void)
 Return true if the fluid has a melting line - default is false, but can be re-implemented by derived class. More...
 
double melting_line (int param, int given, double value)
 
double saturation_ancillary (parameters param, int Q, parameters given, double value)
 
double viscosity (void)
 Return the viscosity in Pa-s. More...
 
void viscosity_contributions (CoolPropDbl &dilute, CoolPropDbl &initial_density, CoolPropDbl &residual, CoolPropDbl &critical)
 Return the viscosity contributions, each in Pa-s. More...
 
double conductivity (void)
 Return the thermal conductivity in W/m/K. More...
 
void conductivity_contributions (CoolPropDbl &dilute, CoolPropDbl &initial_density, CoolPropDbl &residual, CoolPropDbl &critical)
 Return the thermal conductivity contributions, each in W/m/K. More...
 
double surface_tension (void)
 Return the surface tension in N/m. More...
 
double Prandtl (void)
 Return the Prandtl number (dimensionless) More...
 
void conformal_state (const std::string &reference_fluid, CoolPropDbl &T, CoolPropDbl &rhomolar)
 Find the conformal state needed for ECS. More...
 
void change_EOS (const std::size_t i, const std::string &EOS_name)
 Change the equation of state for a given component to a specified EOS. More...
 
CoolPropDbl alpha0 (void)
 Return the term \( \alpha^0 \). More...
 
CoolPropDbl dalpha0_dDelta (void)
 Return the term \( \alpha^0_{\delta} \). More...
 
CoolPropDbl dalpha0_dTau (void)
 Return the term \( \alpha^0_{\tau} \). More...
 
CoolPropDbl d2alpha0_dDelta2 (void)
 Return the term \( \alpha^0_{\delta\delta} \). More...
 
CoolPropDbl d2alpha0_dDelta_dTau (void)
 Return the term \( \alpha^0_{\delta\tau} \). More...
 
CoolPropDbl d2alpha0_dTau2 (void)
 Return the term \( \alpha^0_{\tau\tau} \). More...
 
CoolPropDbl d3alpha0_dTau3 (void)
 Return the term \( \alpha^0_{\tau\tau\tau} \). More...
 
CoolPropDbl d3alpha0_dDelta_dTau2 (void)
 Return the term \( \alpha^0_{\delta\tau\tau} \). More...
 
CoolPropDbl d3alpha0_dDelta2_dTau (void)
 Return the term \( \alpha^0_{\delta\delta\tau} \). More...
 
CoolPropDbl d3alpha0_dDelta3 (void)
 Return the term \( \alpha^0_{\delta\delta\delta} \). More...
 
CoolPropDbl alphar (void)
 Return the term \( \alpha^r \). More...
 
CoolPropDbl dalphar_dDelta (void)
 Return the term \( \alpha^r_{\delta} \). More...
 
CoolPropDbl dalphar_dTau (void)
 Return the term \( \alpha^r_{\tau} \). More...
 
CoolPropDbl d2alphar_dDelta2 (void)
 Return the term \( \alpha^r_{\delta\delta} \). More...
 
CoolPropDbl d2alphar_dDelta_dTau (void)
 Return the term \( \alpha^r_{\delta\tau} \). More...
 
CoolPropDbl d2alphar_dTau2 (void)
 Return the term \( \alpha^r_{\tau\tau} \). More...
 
CoolPropDbl d3alphar_dDelta3 (void)
 Return the term \( \alpha^r_{\delta\delta\delta} \). More...
 
CoolPropDbl d3alphar_dDelta2_dTau (void)
 Return the term \( \alpha^r_{\delta\delta\tau} \). More...
 
CoolPropDbl d3alphar_dDelta_dTau2 (void)
 Return the term \( \alpha^r_{\delta\tau\tau} \). More...
 
CoolPropDbl d3alphar_dTau3 (void)
 Return the term \( \alpha^r_{\tau\tau\tau} \). More...
 
CoolPropDbl d4alphar_dDelta4 (void)
 Return the term \( \alpha^r_{\delta\delta\delta\delta} \). More...
 
CoolPropDbl d4alphar_dDelta3_dTau (void)
 Return the term \( \alpha^r_{\delta\delta\delta\tau} \). More...
 
CoolPropDbl d4alphar_dDelta2_dTau2 (void)
 Return the term \( \alpha^r_{\delta\delta\tau\tau} \). More...
 
CoolPropDbl d4alphar_dDelta_dTau3 (void)
 Return the term \( \alpha^r_{\delta\tau\tau\tau} \). More...
 
CoolPropDbl d4alphar_dTau4 (void)
 Return the term \( \alpha^r_{\tau\tau\tau\tau} \). More...
 

Static Public Member Functions

static AbstractStatefactory (const std::string &backend, const std::string &fluid_names)
 A factory function to return a pointer to a new-allocated instance of one of the backends. More...
 
static AbstractStatefactory (const std::string &backend, const std::vector< std::string > &fluid_names)
 A factory function to return a pointer to a new-allocated instance of one of the backends. More...
 

Protected Types

using CAE = CacheArrayElement< double >
 

Protected Member Functions

bool isSupercriticalPhase (void)
 
bool isHomogeneousPhase (void)
 
bool isTwoPhase (void)
 
virtual CoolPropDbl calc_hmolar (void)
 Using this backend, calculate the molar enthalpy in J/mol. More...
 
virtual CoolPropDbl calc_hmolar_residual (void)
 Using this backend, calculate the residual molar enthalpy in J/mol. More...
 
virtual CoolPropDbl calc_smolar (void)
 Using this backend, calculate the molar entropy in J/mol/K. More...
 
virtual CoolPropDbl calc_smolar_residual (void)
 Using this backend, calculate the residual molar entropy in J/mol/K. More...
 
virtual CoolPropDbl calc_neff (void)
 Using this backend, calculate effective hardness of interaction. More...
 
virtual CoolPropDbl calc_umolar (void)
 Using this backend, calculate the molar internal energy in J/mol. More...
 
virtual CoolPropDbl calc_cpmolar (void)
 Using this backend, calculate the molar constant-pressure specific heat in J/mol/K. More...
 
virtual CoolPropDbl calc_cpmolar_idealgas (void)
 Using this backend, calculate the ideal gas molar constant-pressure specific heat in J/mol/K. More...
 
virtual CoolPropDbl calc_cvmolar (void)
 Using this backend, calculate the molar constant-volume specific heat in J/mol/K. More...
 
virtual CoolPropDbl calc_gibbsmolar (void)
 Using this backend, calculate the molar Gibbs function in J/mol. More...
 
virtual CoolPropDbl calc_gibbsmolar_residual (void)
 Using this backend, calculate the residual molar Gibbs function in J/mol. More...
 
virtual CoolPropDbl calc_helmholtzmolar (void)
 Using this backend, calculate the molar Helmholtz energy in J/mol. More...
 
virtual CoolPropDbl calc_speed_sound (void)
 Using this backend, calculate the speed of sound in m/s. More...
 
virtual CoolPropDbl calc_isothermal_compressibility (void)
 Using this backend, calculate the isothermal compressibility \( \kappa = -\frac{1}{v}\left.\frac{\partial v}{\partial p}\right|_T=\frac{1}{\rho}\left.\frac{\partial \rho}{\partial p}\right|_T\) in 1/Pa. More...
 
virtual CoolPropDbl calc_isobaric_expansion_coefficient (void)
 Using this backend, calculate the isobaric expansion coefficient \( \beta = \frac{1}{v}\left.\frac{\partial v}{\partial T}\right|_p = -\frac{1}{\rho}\left.\frac{\partial \rho}{\partial T}\right|_p\) in 1/K. More...
 
virtual CoolPropDbl calc_isentropic_expansion_coefficient (void)
 Using this backend, calculate the isentropic expansion coefficient \( \kappa_s = -\frac{c_p}{c_v}\frac{v}{p}\left.\frac{\partial p}{\partial v}\right|_T = \frac{\rho}{p}\left.\frac{\partial p}{\partial \rho}\right|_s\). More...
 
virtual CoolPropDbl calc_viscosity (void)
 Using this backend, calculate the viscosity in Pa-s. More...
 
virtual CoolPropDbl calc_conductivity (void)
 Using this backend, calculate the thermal conductivity in W/m/K. More...
 
virtual CoolPropDbl calc_surface_tension (void)
 Using this backend, calculate the surface tension in N/m. More...
 
virtual CoolPropDbl calc_molar_mass (void)
 Using this backend, calculate the molar mass in kg/mol. More...
 
virtual CoolPropDbl calc_acentric_factor (void)
 Using this backend, calculate the acentric factor. More...
 
virtual CoolPropDbl calc_pressure (void)
 Using this backend, calculate the pressure in Pa. More...
 
virtual CoolPropDbl calc_gas_constant (void)
 Using this backend, calculate the universal gas constant \(R_u\) in J/mol/K. More...
 
virtual CoolPropDbl calc_fugacity_coefficient (std::size_t i)
 Using this backend, calculate the fugacity coefficient (dimensionless) More...
 
virtual std::vector< CoolPropDblcalc_fugacity_coefficients ()
 Using this backend, calculate the fugacity in Pa. More...
 
virtual CoolPropDbl calc_fugacity (std::size_t i)
 Using this backend, calculate the fugacity in Pa. More...
 
virtual CoolPropDbl calc_chemical_potential (std::size_t i)
 Using this backend, calculate the chemical potential in J/mol. More...
 
virtual CoolPropDbl calc_PIP (void)
 Using this backend, calculate the phase identification parameter (PIP) More...
 
virtual void calc_excess_properties (void)
 Using this backend, calculate and cache the excess properties. More...
 
virtual CoolPropDbl calc_alphar (void)
 Using this backend, calculate the residual Helmholtz energy term \(\alpha^r\) (dimensionless) More...
 
virtual CoolPropDbl calc_dalphar_dDelta (void)
 Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\delta}\) (dimensionless) More...
 
virtual CoolPropDbl calc_dalphar_dTau (void)
 Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\tau}\) (dimensionless) More...
 
virtual CoolPropDbl calc_d2alphar_dDelta2 (void)
 Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\delta\delta}\) (dimensionless) More...
 
virtual CoolPropDbl calc_d2alphar_dDelta_dTau (void)
 Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\delta\tau}\) (dimensionless) More...
 
virtual CoolPropDbl calc_d2alphar_dTau2 (void)
 Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\tau\tau}\) (dimensionless) More...
 
virtual CoolPropDbl calc_d3alphar_dDelta3 (void)
 Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\delta\delta\delta}\) (dimensionless) More...
 
virtual CoolPropDbl calc_d3alphar_dDelta2_dTau (void)
 Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\delta\delta\tau}\) (dimensionless) More...
 
virtual CoolPropDbl calc_d3alphar_dDelta_dTau2 (void)
 Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\delta\tau\tau}\) (dimensionless) More...
 
virtual CoolPropDbl calc_d3alphar_dTau3 (void)
 Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\tau\tau\tau}\) (dimensionless) More...
 
virtual CoolPropDbl calc_d4alphar_dDelta4 (void)
 Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\delta\delta\delta\delta}\) (dimensionless) More...
 
virtual CoolPropDbl calc_d4alphar_dDelta3_dTau (void)
 Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\delta\delta\delta\tau}\) (dimensionless) More...
 
virtual CoolPropDbl calc_d4alphar_dDelta2_dTau2 (void)
 Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\delta\delta\tau\tau}\) (dimensionless) More...
 
virtual CoolPropDbl calc_d4alphar_dDelta_dTau3 (void)
 Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\delta\tau\tau\tau}\) (dimensionless) More...
 
virtual CoolPropDbl calc_d4alphar_dTau4 (void)
 Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\tau\tau\tau\tau}\) (dimensionless) More...
 
virtual CoolPropDbl calc_alpha0 (void)
 Using this backend, calculate the ideal-gas Helmholtz energy term \(\alpha^0\) (dimensionless) More...
 
virtual CoolPropDbl calc_dalpha0_dDelta (void)
 Using this backend, calculate the ideal-gas Helmholtz energy term \(\alpha^0_{\delta}\) (dimensionless) More...
 
virtual CoolPropDbl calc_dalpha0_dTau (void)
 Using this backend, calculate the ideal-gas Helmholtz energy term \(\alpha^0_{\tau}\) (dimensionless) More...
 
virtual CoolPropDbl calc_d2alpha0_dDelta_dTau (void)
 Using this backend, calculate the ideal-gas Helmholtz energy term \(\alpha^0_{\delta\delta}\) (dimensionless) More...
 
virtual CoolPropDbl calc_d2alpha0_dDelta2 (void)
 Using this backend, calculate the ideal-gas Helmholtz energy term \(\alpha^0_{\delta\tau}\) (dimensionless) More...
 
virtual CoolPropDbl calc_d2alpha0_dTau2 (void)
 Using this backend, calculate the ideal-gas Helmholtz energy term \(\alpha^0_{\tau\tau}\) (dimensionless) More...
 
virtual CoolPropDbl calc_d3alpha0_dDelta3 (void)
 Using this backend, calculate the ideal-gas Helmholtz energy term \(\alpha^0_{\delta\delta\delta}\) (dimensionless) More...
 
virtual CoolPropDbl calc_d3alpha0_dDelta2_dTau (void)
 Using this backend, calculate the ideal-gas Helmholtz energy term \(\alpha^0_{\delta\delta\tau}\) (dimensionless) More...
 
virtual CoolPropDbl calc_d3alpha0_dDelta_dTau2 (void)
 Using this backend, calculate the ideal-gas Helmholtz energy term \(\alpha^0_{\delta\tau\tau}\) (dimensionless) More...
 
virtual CoolPropDbl calc_d3alpha0_dTau3 (void)
 Using this backend, calculate the ideal-gas Helmholtz energy term \(\alpha^0_{\tau\tau\tau}\) (dimensionless) More...
 
virtual void calc_reducing_state (void)
 
virtual CoolPropDbl calc_Tmax (void)
 Using this backend, calculate the maximum temperature in K. More...
 
virtual CoolPropDbl calc_Tmin (void)
 Using this backend, calculate the minimum temperature in K. More...
 
virtual CoolPropDbl calc_pmax (void)
 Using this backend, calculate the maximum pressure in Pa. More...
 
virtual CoolPropDbl calc_GWP20 (void)
 Using this backend, calculate the 20-year global warming potential (GWP) More...
 
virtual CoolPropDbl calc_GWP100 (void)
 Using this backend, calculate the 100-year global warming potential (GWP) More...
 
virtual CoolPropDbl calc_GWP500 (void)
 Using this backend, calculate the 500-year global warming potential (GWP) More...
 
virtual CoolPropDbl calc_ODP (void)
 Using this backend, calculate the ozone depletion potential (ODP) More...
 
virtual CoolPropDbl calc_flame_hazard (void)
 Using this backend, calculate the flame hazard. More...
 
virtual CoolPropDbl calc_health_hazard (void)
 Using this backend, calculate the health hazard. More...
 
virtual CoolPropDbl calc_physical_hazard (void)
 Using this backend, calculate the physical hazard. More...
 
virtual CoolPropDbl calc_dipole_moment (void)
 Using this backend, calculate the dipole moment in C-m (1 D = 3.33564e-30 C-m) More...
 
virtual CoolPropDbl calc_first_partial_deriv (parameters Of, parameters Wrt, parameters Constant)
 Calculate the first partial derivative for the desired derivative. More...
 
virtual CoolPropDbl calc_second_partial_deriv (parameters Of1, parameters Wrt1, parameters Constant1, parameters Wrt2, parameters Constant2)
 Calculate the second partial derivative using the given backend. More...
 
virtual CoolPropDbl calc_reduced_density (void)
 Using this backend, calculate the reduced density (rho/rhoc) More...
 
virtual CoolPropDbl calc_reciprocal_reduced_temperature (void)
 Using this backend, calculate the reciprocal reduced temperature (Tc/T) More...
 
virtual CoolPropDbl calc_Bvirial (void)
 Using this backend, calculate the second virial coefficient. More...
 
virtual CoolPropDbl calc_Cvirial (void)
 Using this backend, calculate the third virial coefficient. More...
 
virtual CoolPropDbl calc_dBvirial_dT (void)
 Using this backend, calculate the derivative dB/dT. More...
 
virtual CoolPropDbl calc_dCvirial_dT (void)
 Using this backend, calculate the derivative dC/dT. More...
 
virtual CoolPropDbl calc_compressibility_factor (void)
 Using this backend, calculate the compressibility factor Z \( Z = p/(\rho R T) \). More...
 
virtual std::string calc_name (void)
 Using this backend, get the name of the fluid. More...
 
virtual std::string calc_description (void)
 Using this backend, get the description of the fluid. More...
 
virtual CoolPropDbl calc_Ttriple (void)
 Using this backend, get the triple point temperature in K. More...
 
virtual CoolPropDbl calc_p_triple (void)
 Using this backend, get the triple point pressure in Pa. More...
 
virtual CoolPropDbl calc_T_critical (void)
 Using this backend, get the critical point temperature in K. More...
 
virtual CoolPropDbl calc_T_reducing (void)
 Using this backend, get the reducing point temperature in K. More...
 
virtual CoolPropDbl calc_p_critical (void)
 Using this backend, get the critical point pressure in Pa. More...
 
virtual CoolPropDbl calc_p_reducing (void)
 Using this backend, get the reducing point pressure in Pa. More...
 
virtual CoolPropDbl calc_rhomolar_critical (void)
 Using this backend, get the critical point molar density in mol/m^3. More...
 
virtual CoolPropDbl calc_rhomass_critical (void)
 Using this backend, get the critical point mass density in kg/m^3 - Added for IF97Backend which is mass based. More...
 
virtual CoolPropDbl calc_rhomolar_reducing (void)
 Using this backend, get the reducing point molar density in mol/m^3. More...
 
virtual void calc_phase_envelope (const std::string &type)
 Using this backend, construct the phase envelope, the variable type describes the type of phase envelope to be built. More...
 
virtual CoolPropDbl calc_rhomass (void)
 
virtual CoolPropDbl calc_hmass (void)
 
virtual CoolPropDbl calc_hmass_excess (void)
 
virtual CoolPropDbl calc_smass (void)
 
virtual CoolPropDbl calc_smass_excess (void)
 
virtual CoolPropDbl calc_cpmass (void)
 
virtual CoolPropDbl calc_cp0mass (void)
 
virtual CoolPropDbl calc_cvmass (void)
 
virtual CoolPropDbl calc_umass (void)
 
virtual CoolPropDbl calc_umass_excess (void)
 
virtual CoolPropDbl calc_gibbsmass (void)
 
virtual CoolPropDbl calc_gibbsmass_excess (void)
 
virtual CoolPropDbl calc_helmholtzmass (void)
 
virtual CoolPropDbl calc_helmholtzmass_excess (void)
 
virtual CoolPropDbl calc_volumemass_excess (void)
 
virtual void update_states (void)
 Update the states after having changed the reference state for enthalpy and entropy. More...
 
virtual CoolPropDbl calc_melting_line (int param, int given, CoolPropDbl value)
 
virtual CoolPropDbl calc_saturation_ancillary (parameters param, int Q, parameters given, double value)
 
virtual phases calc_phase (void)
 Using this backend, calculate the phase. More...
 
virtual void calc_specify_phase (phases phase)
 Using this backend, specify the phase to be used for all further calculations. More...
 
virtual void calc_unspecify_phase (void)
 Using this backend, unspecify the phase. More...
 
virtual std::vector< std::string > calc_fluid_names (void)
 Using this backend, get a vector of fluid names. More...
 
virtual const CoolProp::SimpleStatecalc_state (const std::string &state)
 
virtual const CoolProp::PhaseEnvelopeDatacalc_phase_envelope_data (void)
 
virtual std::vector< CoolPropDblcalc_mole_fractions_liquid (void)
 
virtual std::vector< CoolPropDblcalc_mole_fractions_vapor (void)
 
virtual const std::vector< CoolPropDblcalc_mass_fractions (void)
 
virtual CoolPropDbl calc_fraction_min (void)
 Get the minimum fraction (mole, mass, volume) for incompressible fluid. More...
 
virtual CoolPropDbl calc_fraction_max (void)
 Get the maximum fraction (mole, mass, volume) for incompressible fluid. More...
 
virtual CoolPropDbl calc_T_freeze (void)
 
virtual CoolPropDbl calc_first_saturation_deriv (parameters Of1, parameters Wrt1)
 
virtual CoolPropDbl calc_second_saturation_deriv (parameters Of1, parameters Wrt1, parameters Wrt2)
 
virtual CoolPropDbl calc_first_two_phase_deriv (parameters Of, parameters Wrt, parameters Constant)
 
virtual CoolPropDbl calc_second_two_phase_deriv (parameters Of, parameters Wrt, parameters Constant, parameters Wrt2, parameters Constant2)
 
virtual CoolPropDbl calc_first_two_phase_deriv_splined (parameters Of, parameters Wrt, parameters Constant, CoolPropDbl x_end)
 
virtual CoolPropDbl calc_saturated_liquid_keyed_output (parameters key)
 
virtual CoolPropDbl calc_saturated_vapor_keyed_output (parameters key)
 
virtual void calc_ideal_curve (const std::string &type, std::vector< double > &T, std::vector< double > &p)
 
virtual CoolPropDbl calc_T (void)
 Using this backend, get the temperature. More...
 
virtual CoolPropDbl calc_rhomolar (void)
 Using this backend, get the molar density in mol/m^3. More...
 
virtual double calc_tangent_plane_distance (const double T, const double p, const std::vector< double > &w, const double rhomolar_guess)
 Using this backend, calculate the tangent plane distance for a given trial composition. More...
 
virtual void calc_true_critical_point (double &T, double &rho)
 Using this backend, return true critical point where dp/drho|T = 0 and d2p/drho^2|T = 0. More...
 
virtual void calc_conformal_state (const std::string &reference_fluid, CoolPropDbl &T, CoolPropDbl &rhomolar)
 
virtual void calc_viscosity_contributions (CoolPropDbl &dilute, CoolPropDbl &initial_density, CoolPropDbl &residual, CoolPropDbl &critical)
 
virtual void calc_conductivity_contributions (CoolPropDbl &dilute, CoolPropDbl &initial_density, CoolPropDbl &residual, CoolPropDbl &critical)
 
virtual std::vector< CriticalStatecalc_all_critical_points (void)
 
virtual void calc_build_spinodal ()
 
virtual SpinodalData calc_get_spinodal_data ()
 
virtual void calc_criticality_contour_values (double &L1star, double &M1star)
 
virtual void mass_to_molar_inputs (CoolProp::input_pairs &input_pair, CoolPropDbl &value1, CoolPropDbl &value2)
 Convert mass-based input pair to molar-based input pair; If molar-based, do nothing. More...
 
virtual void calc_change_EOS (const std::size_t i, const std::string &EOS_name)
 Change the equation of state for a given component to a specified EOS. More...
 

Protected Attributes

long _fluid_type
 Some administrative variables. More...
 
phases _phase
 The key for the phase from CoolProp::phases enum. More...
 
phases imposed_phase_index
 If the phase is imposed, the imposed phase index. More...
 
CacheArray< 70 > cache
 
SimpleState _critical
 Two important points. More...
 
SimpleState _reducing
 
CAE _molar_mass = cache.next()
 Molar mass [mol/kg]. More...
 
CAE _gas_constant = cache.next()
 Universal gas constant [J/mol/K]. More...
 
double _rhomolar
 Bulk values. More...
 
double _T
 
double _p
 
double _Q
 
CAE _tau = cache.next()
 
CAE _delta = cache.next()
 
CAE _viscosity = cache.next()
 Transport properties. More...
 
CAE _conductivity = cache.next()
 
CAE _surface_tension = cache.next()
 
CAE _hmolar = cache.next()
 
CAE _smolar = cache.next()
 
CAE _umolar = cache.next()
 
CAE _logp = cache.next()
 
CAE _logrhomolar = cache.next()
 
CAE _cpmolar = cache.next()
 
CAE _cp0molar = cache.next()
 
CAE _cvmolar = cache.next()
 
CAE _speed_sound = cache.next()
 
CAE _gibbsmolar = cache.next()
 
CAE _helmholtzmolar = cache.next()
 
CAE _hmolar_residual = cache.next()
 Residual properties. More...
 
CAE _smolar_residual = cache.next()
 
CAE _gibbsmolar_residual = cache.next()
 
CAE _hmolar_excess = cache.next()
 Excess properties. More...
 
CAE _smolar_excess = cache.next()
 
CAE _gibbsmolar_excess = cache.next()
 
CAE _umolar_excess = cache.next()
 
CAE _volumemolar_excess = cache.next()
 
CAE _helmholtzmolar_excess = cache.next()
 
CAE _rhoLanc = cache.next()
 Ancillary values. More...
 
CAE _rhoVanc = cache.next()
 
CAE _pLanc = cache.next()
 
CAE _pVanc = cache.next()
 
CAE _TLanc = cache.next()
 
CAE _TVanc = cache.next()
 
CachedElement _fugacity_coefficient
 
CAE _rho_spline = cache.next()
 Smoothing values. More...
 
CAE _drho_spline_dh__constp = cache.next()
 
CAE _drho_spline_dp__consth = cache.next()
 
CAE _alpha0 = cache.next()
 Cached low-level elements for in-place calculation of other properties. More...
 
CAE _dalpha0_dTau = cache.next()
 
CAE _dalpha0_dDelta = cache.next()
 
CAE _d2alpha0_dTau2 = cache.next()
 
CAE _d2alpha0_dDelta_dTau = cache.next()
 
CAE _d2alpha0_dDelta2 = cache.next()
 
CAE _d3alpha0_dTau3 = cache.next()
 
CAE _d3alpha0_dDelta_dTau2 = cache.next()
 
CAE _d3alpha0_dDelta2_dTau = cache.next()
 
CAE _d3alpha0_dDelta3 = cache.next()
 
CAE _alphar = cache.next()
 
CAE _dalphar_dTau = cache.next()
 
CAE _dalphar_dDelta = cache.next()
 
CAE _d2alphar_dTau2 = cache.next()
 
CAE _d2alphar_dDelta_dTau = cache.next()
 
CAE _d2alphar_dDelta2 = cache.next()
 
CAE _d3alphar_dTau3 = cache.next()
 
CAE _d3alphar_dDelta_dTau2 = cache.next()
 
CAE _d3alphar_dDelta2_dTau = cache.next()
 
CAE _d3alphar_dDelta3 = cache.next()
 
CAE _d4alphar_dTau4 = cache.next()
 
CAE _d4alphar_dDelta_dTau3 = cache.next()
 
CAE _d4alphar_dDelta2_dTau2 = cache.next()
 
CAE _d4alphar_dDelta3_dTau = cache.next()
 
CAE _d4alphar_dDelta4 = cache.next()
 
CAE _dalphar_dDelta_lim = cache.next()
 
CAE _d2alphar_dDelta2_lim = cache.next()
 
CAE _d2alphar_dDelta_dTau_lim = cache.next()
 
CAE _d3alphar_dDelta2_dTau_lim = cache.next()
 
CAE _rhoLmolar = cache.next()
 Two-Phase variables. More...
 
CAE _rhoVmolar = cache.next()
 

Member Typedef Documentation

◆ CAE

Definition at line 99 of file AbstractState.h.

Constructor & Destructor Documentation

◆ AbstractState()

CoolProp::AbstractState::AbstractState ( )
inline

Definition at line 697 of file AbstractState.h.

◆ ~AbstractState()

virtual CoolProp::AbstractState::~AbstractState ( )
inlinevirtual

Definition at line 700 of file AbstractState.h.

Member Function Documentation

◆ acentric_factor()

double CoolProp::AbstractState::acentric_factor ( void  )

Return the acentric factor.

Definition at line 607 of file AbstractState.cpp.

◆ all_critical_points()

std::vector< CriticalState > CoolProp::AbstractState::all_critical_points ( void  )
inline

Return the vector of critical points, including points that are unstable or correspond to negative pressure.

Definition at line 971 of file AbstractState.h.

◆ alpha0()

CoolPropDbl CoolProp::AbstractState::alpha0 ( void  )
inline

Return the term \( \alpha^0 \).

Definition at line 1468 of file AbstractState.h.

◆ alphar()

CoolPropDbl CoolProp::AbstractState::alphar ( void  )
inline

Return the term \( \alpha^r \).

Definition at line 1519 of file AbstractState.h.

◆ apply_simple_mixing_rule()

virtual void CoolProp::AbstractState::apply_simple_mixing_rule ( std::size_t  i,
std::size_t  j,
const std::string &  model 
)
inlinevirtual

Apply a simple mixing rule (EXPERT USE ONLY!!!)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 906 of file AbstractState.h.

◆ available_in_high_level()

virtual bool CoolProp::AbstractState::available_in_high_level ( void  )
inlinevirtual

A function that says whether the backend instance can be instantiated in the high-level interface In general this should be true, except for some other backends (especially the tabular backends) To disable use in high-level interface, implement this function and return false

Reimplemented in CoolProp::TabularBackend.

Definition at line 856 of file AbstractState.h.

◆ backend_name()

virtual std::string CoolProp::AbstractState::backend_name ( void  )
pure virtual

Get a string representation of the backend - for instance "HelmholtzEOSMixtureBackend" for the core mixture model in CoolProp

Must be overloaded by the backend to provide the backend's name

Implemented in CoolProp::SRKBackend, CoolProp::PengRobinsonBackend, CoolProp::VTPRBackend, CoolProp::HelmholtzEOSBackend, CoolProp::HelmholtzEOSMixtureBackend, CoolProp::IF97Backend, CoolProp::IncompressibleBackend, CoolProp::PCSAFTBackend, CoolProp::REFPROPBackend, CoolProp::REFPROPMixtureBackend, CoolProp::BicubicBackend, and CoolProp::TTSEBackend.

◆ build_phase_envelope()

void CoolProp::AbstractState::build_phase_envelope ( const std::string &  type = "")

Construct the phase envelope for a mixture.

Parameters
typecurrently a dummy variable that is not used

Definition at line 641 of file AbstractState.cpp.

◆ build_spinodal()

void CoolProp::AbstractState::build_spinodal ( )
inline

Construct the spinodal curve for the mixture (or pure fluid)

Definition at line 976 of file AbstractState.h.

◆ Bvirial()

double CoolProp::AbstractState::Bvirial ( void  )

Return the B virial coefficient.

Definition at line 653 of file AbstractState.cpp.

◆ calc_acentric_factor()

virtual CoolPropDbl CoolProp::AbstractState::calc_acentric_factor ( void  )
inlineprotectedvirtual

Using this backend, calculate the acentric factor.

Reimplemented in CoolProp::AbstractCubicBackend, CoolProp::HelmholtzEOSMixtureBackend, CoolProp::IF97Backend, and CoolProp::REFPROPMixtureBackend.

Definition at line 230 of file AbstractState.h.

◆ calc_all_critical_points()

virtual std::vector< CriticalState > CoolProp::AbstractState::calc_all_critical_points ( void  )
inlineprotectedvirtual

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 675 of file AbstractState.h.

◆ calc_alpha0()

virtual CoolPropDbl CoolProp::AbstractState::calc_alpha0 ( void  )
inlineprotectedvirtual

Using this backend, calculate the ideal-gas Helmholtz energy term \(\alpha^0\) (dimensionless)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 333 of file AbstractState.h.

◆ calc_alphar()

virtual CoolPropDbl CoolProp::AbstractState::calc_alphar ( void  )
inlineprotectedvirtual

Using this backend, calculate the residual Helmholtz energy term \(\alpha^r\) (dimensionless)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, CoolProp::PCSAFTBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 270 of file AbstractState.h.

◆ calc_build_spinodal()

virtual void CoolProp::AbstractState::calc_build_spinodal ( )
inlineprotectedvirtual

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 678 of file AbstractState.h.

◆ calc_Bvirial()

virtual CoolPropDbl CoolProp::AbstractState::calc_Bvirial ( void  )
inlineprotectedvirtual

Using this backend, calculate the second virial coefficient.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 438 of file AbstractState.h.

◆ calc_change_EOS()

virtual void CoolProp::AbstractState::calc_change_EOS ( const std::size_t  i,
const std::string &  EOS_name 
)
inlineprotectedvirtual

Change the equation of state for a given component to a specified EOS.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 692 of file AbstractState.h.

◆ calc_chemical_potential()

virtual CoolPropDbl CoolProp::AbstractState::calc_chemical_potential ( std::size_t  i)
inlineprotectedvirtual

Using this backend, calculate the chemical potential in J/mol.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 254 of file AbstractState.h.

◆ calc_compressibility_factor()

virtual CoolPropDbl CoolProp::AbstractState::calc_compressibility_factor ( void  )
inlineprotectedvirtual

Using this backend, calculate the compressibility factor Z \( Z = p/(\rho R T) \).

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, CoolProp::PCSAFTBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 454 of file AbstractState.h.

◆ calc_conductivity()

virtual CoolPropDbl CoolProp::AbstractState::calc_conductivity ( void  )
inlineprotectedvirtual

Using this backend, calculate the thermal conductivity in W/m/K.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, CoolProp::IF97Backend, CoolProp::IncompressibleBackend, CoolProp::REFPROPMixtureBackend, and CoolProp::TabularBackend.

Definition at line 218 of file AbstractState.h.

◆ calc_conductivity_contributions()

virtual void CoolProp::AbstractState::calc_conductivity_contributions ( CoolPropDbl dilute,
CoolPropDbl initial_density,
CoolPropDbl residual,
CoolPropDbl critical 
)
inlineprotectedvirtual

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 672 of file AbstractState.h.

◆ calc_conformal_state()

virtual void CoolProp::AbstractState::calc_conformal_state ( const std::string &  reference_fluid,
CoolPropDbl T,
CoolPropDbl rhomolar 
)
inlineprotectedvirtual

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 665 of file AbstractState.h.

◆ calc_cp0mass()

virtual CoolPropDbl CoolProp::AbstractState::calc_cp0mass ( void  )
inlineprotectedvirtual

Definition at line 527 of file AbstractState.h.

◆ calc_cpmass()

virtual CoolPropDbl CoolProp::AbstractState::calc_cpmass ( void  )
inlineprotectedvirtual

Reimplemented in CoolProp::IF97Backend, and CoolProp::IncompressibleBackend.

Definition at line 524 of file AbstractState.h.

◆ calc_cpmolar()

virtual CoolPropDbl CoolProp::AbstractState::calc_cpmolar ( void  )
inlineprotectedvirtual

Using this backend, calculate the molar constant-pressure specific heat in J/mol/K.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, CoolProp::IF97Backend, and CoolProp::TabularBackend.

Definition at line 174 of file AbstractState.h.

◆ calc_cpmolar_idealgas()

virtual CoolPropDbl CoolProp::AbstractState::calc_cpmolar_idealgas ( void  )
inlineprotectedvirtual

Using this backend, calculate the ideal gas molar constant-pressure specific heat in J/mol/K.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, CoolProp::REFPROPMixtureBackend, and CoolProp::TabularBackend.

Definition at line 178 of file AbstractState.h.

◆ calc_criticality_contour_values()

virtual void CoolProp::AbstractState::calc_criticality_contour_values ( double &  L1star,
double &  M1star 
)
inlineprotectedvirtual

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 684 of file AbstractState.h.

◆ calc_Cvirial()

virtual CoolPropDbl CoolProp::AbstractState::calc_Cvirial ( void  )
inlineprotectedvirtual

Using this backend, calculate the third virial coefficient.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 442 of file AbstractState.h.

◆ calc_cvmass()

virtual CoolPropDbl CoolProp::AbstractState::calc_cvmass ( void  )
inlineprotectedvirtual

Reimplemented in CoolProp::IF97Backend, and CoolProp::IncompressibleBackend.

Definition at line 530 of file AbstractState.h.

◆ calc_cvmolar()

virtual CoolPropDbl CoolProp::AbstractState::calc_cvmolar ( void  )
inlineprotectedvirtual

Using this backend, calculate the molar constant-volume specific heat in J/mol/K.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, CoolProp::IF97Backend, and CoolProp::TabularBackend.

Definition at line 182 of file AbstractState.h.

◆ calc_d2alpha0_dDelta2()

virtual CoolPropDbl CoolProp::AbstractState::calc_d2alpha0_dDelta2 ( void  )
inlineprotectedvirtual

Using this backend, calculate the ideal-gas Helmholtz energy term \(\alpha^0_{\delta\tau}\) (dimensionless)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 349 of file AbstractState.h.

◆ calc_d2alpha0_dDelta_dTau()

virtual CoolPropDbl CoolProp::AbstractState::calc_d2alpha0_dDelta_dTau ( void  )
inlineprotectedvirtual

Using this backend, calculate the ideal-gas Helmholtz energy term \(\alpha^0_{\delta\delta}\) (dimensionless)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 345 of file AbstractState.h.

◆ calc_d2alpha0_dTau2()

virtual CoolPropDbl CoolProp::AbstractState::calc_d2alpha0_dTau2 ( void  )
inlineprotectedvirtual

Using this backend, calculate the ideal-gas Helmholtz energy term \(\alpha^0_{\tau\tau}\) (dimensionless)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 353 of file AbstractState.h.

◆ calc_d2alphar_dDelta2()

virtual CoolPropDbl CoolProp::AbstractState::calc_d2alphar_dDelta2 ( void  )
inlineprotectedvirtual

Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\delta\delta}\) (dimensionless)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 282 of file AbstractState.h.

◆ calc_d2alphar_dDelta_dTau()

virtual CoolPropDbl CoolProp::AbstractState::calc_d2alphar_dDelta_dTau ( void  )
inlineprotectedvirtual

Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\delta\tau}\) (dimensionless)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 286 of file AbstractState.h.

◆ calc_d2alphar_dTau2()

virtual CoolPropDbl CoolProp::AbstractState::calc_d2alphar_dTau2 ( void  )
inlineprotectedvirtual

Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\tau\tau}\) (dimensionless)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 290 of file AbstractState.h.

◆ calc_d3alpha0_dDelta2_dTau()

virtual CoolPropDbl CoolProp::AbstractState::calc_d3alpha0_dDelta2_dTau ( void  )
inlineprotectedvirtual

Using this backend, calculate the ideal-gas Helmholtz energy term \(\alpha^0_{\delta\delta\tau}\) (dimensionless)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 361 of file AbstractState.h.

◆ calc_d3alpha0_dDelta3()

virtual CoolPropDbl CoolProp::AbstractState::calc_d3alpha0_dDelta3 ( void  )
inlineprotectedvirtual

Using this backend, calculate the ideal-gas Helmholtz energy term \(\alpha^0_{\delta\delta\delta}\) (dimensionless)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 357 of file AbstractState.h.

◆ calc_d3alpha0_dDelta_dTau2()

virtual CoolPropDbl CoolProp::AbstractState::calc_d3alpha0_dDelta_dTau2 ( void  )
inlineprotectedvirtual

Using this backend, calculate the ideal-gas Helmholtz energy term \(\alpha^0_{\delta\tau\tau}\) (dimensionless)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 365 of file AbstractState.h.

◆ calc_d3alpha0_dTau3()

virtual CoolPropDbl CoolProp::AbstractState::calc_d3alpha0_dTau3 ( void  )
inlineprotectedvirtual

Using this backend, calculate the ideal-gas Helmholtz energy term \(\alpha^0_{\tau\tau\tau}\) (dimensionless)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 369 of file AbstractState.h.

◆ calc_d3alphar_dDelta2_dTau()

virtual CoolPropDbl CoolProp::AbstractState::calc_d3alphar_dDelta2_dTau ( void  )
inlineprotectedvirtual

Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\delta\delta\tau}\) (dimensionless)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 298 of file AbstractState.h.

◆ calc_d3alphar_dDelta3()

virtual CoolPropDbl CoolProp::AbstractState::calc_d3alphar_dDelta3 ( void  )
inlineprotectedvirtual

Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\delta\delta\delta}\) (dimensionless)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 294 of file AbstractState.h.

◆ calc_d3alphar_dDelta_dTau2()

virtual CoolPropDbl CoolProp::AbstractState::calc_d3alphar_dDelta_dTau2 ( void  )
inlineprotectedvirtual

Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\delta\tau\tau}\) (dimensionless)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 302 of file AbstractState.h.

◆ calc_d3alphar_dTau3()

virtual CoolPropDbl CoolProp::AbstractState::calc_d3alphar_dTau3 ( void  )
inlineprotectedvirtual

Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\tau\tau\tau}\) (dimensionless)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 306 of file AbstractState.h.

◆ calc_d4alphar_dDelta2_dTau2()

virtual CoolPropDbl CoolProp::AbstractState::calc_d4alphar_dDelta2_dTau2 ( void  )
inlineprotectedvirtual

Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\delta\delta\tau\tau}\) (dimensionless)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 319 of file AbstractState.h.

◆ calc_d4alphar_dDelta3_dTau()

virtual CoolPropDbl CoolProp::AbstractState::calc_d4alphar_dDelta3_dTau ( void  )
inlineprotectedvirtual

Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\delta\delta\delta\tau}\) (dimensionless)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 315 of file AbstractState.h.

◆ calc_d4alphar_dDelta4()

virtual CoolPropDbl CoolProp::AbstractState::calc_d4alphar_dDelta4 ( void  )
inlineprotectedvirtual

Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\delta\delta\delta\delta}\) (dimensionless)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 311 of file AbstractState.h.

◆ calc_d4alphar_dDelta_dTau3()

virtual CoolPropDbl CoolProp::AbstractState::calc_d4alphar_dDelta_dTau3 ( void  )
inlineprotectedvirtual

Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\delta\tau\tau\tau}\) (dimensionless)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 323 of file AbstractState.h.

◆ calc_d4alphar_dTau4()

virtual CoolPropDbl CoolProp::AbstractState::calc_d4alphar_dTau4 ( void  )
inlineprotectedvirtual

Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\tau\tau\tau\tau}\) (dimensionless)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 327 of file AbstractState.h.

◆ calc_dalpha0_dDelta()

virtual CoolPropDbl CoolProp::AbstractState::calc_dalpha0_dDelta ( void  )
inlineprotectedvirtual

Using this backend, calculate the ideal-gas Helmholtz energy term \(\alpha^0_{\delta}\) (dimensionless)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 337 of file AbstractState.h.

◆ calc_dalpha0_dTau()

virtual CoolPropDbl CoolProp::AbstractState::calc_dalpha0_dTau ( void  )
inlineprotectedvirtual

Using this backend, calculate the ideal-gas Helmholtz energy term \(\alpha^0_{\tau}\) (dimensionless)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 341 of file AbstractState.h.

◆ calc_dalphar_dDelta()

virtual CoolPropDbl CoolProp::AbstractState::calc_dalphar_dDelta ( void  )
inlineprotectedvirtual

Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\delta}\) (dimensionless)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 274 of file AbstractState.h.

◆ calc_dalphar_dTau()

virtual CoolPropDbl CoolProp::AbstractState::calc_dalphar_dTau ( void  )
inlineprotectedvirtual

Using this backend, calculate the residual Helmholtz energy term \(\alpha^r_{\tau}\) (dimensionless)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 278 of file AbstractState.h.

◆ calc_dBvirial_dT()

virtual CoolPropDbl CoolProp::AbstractState::calc_dBvirial_dT ( void  )
inlineprotectedvirtual

Using this backend, calculate the derivative dB/dT.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 446 of file AbstractState.h.

◆ calc_dCvirial_dT()

virtual CoolPropDbl CoolProp::AbstractState::calc_dCvirial_dT ( void  )
inlineprotectedvirtual

Using this backend, calculate the derivative dC/dT.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 450 of file AbstractState.h.

◆ calc_description()

virtual std::string CoolProp::AbstractState::calc_description ( void  )
inlineprotectedvirtual

Using this backend, get the description of the fluid.

Reimplemented in CoolProp::IncompressibleBackend.

Definition at line 463 of file AbstractState.h.

◆ calc_dipole_moment()

virtual CoolPropDbl CoolProp::AbstractState::calc_dipole_moment ( void  )
inlineprotectedvirtual

Using this backend, calculate the dipole moment in C-m (1 D = 3.33564e-30 C-m)

Reimplemented in CoolProp::REFPROPMixtureBackend.

Definition at line 419 of file AbstractState.h.

◆ calc_excess_properties()

virtual void CoolProp::AbstractState::calc_excess_properties ( void  )
inlineprotectedvirtual

Using this backend, calculate and cache the excess properties.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 264 of file AbstractState.h.

◆ calc_first_partial_deriv()

CoolPropDbl CoolProp::AbstractState::calc_first_partial_deriv ( parameters  Of,
parameters  Wrt,
parameters  Constant 
)
protectedvirtual

Calculate the first partial derivative for the desired derivative.

Reimplemented in CoolProp::IncompressibleBackend, and CoolProp::TabularBackend.

Definition at line 932 of file AbstractState.cpp.

◆ calc_first_saturation_deriv()

virtual CoolPropDbl CoolProp::AbstractState::calc_first_saturation_deriv ( parameters  Of1,
parameters  Wrt1 
)
inlineprotectedvirtual

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::TabularBackend.

Definition at line 620 of file AbstractState.h.

◆ calc_first_two_phase_deriv()

virtual CoolPropDbl CoolProp::AbstractState::calc_first_two_phase_deriv ( parameters  Of,
parameters  Wrt,
parameters  Constant 
)
inlineprotectedvirtual

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::TabularBackend.

Definition at line 626 of file AbstractState.h.

◆ calc_first_two_phase_deriv_splined()

virtual CoolPropDbl CoolProp::AbstractState::calc_first_two_phase_deriv_splined ( parameters  Of,
parameters  Wrt,
parameters  Constant,
CoolPropDbl  x_end 
)
inlineprotectedvirtual

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::TabularBackend.

Definition at line 632 of file AbstractState.h.

◆ calc_flame_hazard()

virtual CoolPropDbl CoolProp::AbstractState::calc_flame_hazard ( void  )
inlineprotectedvirtual

Using this backend, calculate the flame hazard.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 407 of file AbstractState.h.

◆ calc_fluid_names()

virtual std::vector< std::string > CoolProp::AbstractState::calc_fluid_names ( void  )
inlineprotectedvirtual

Using this backend, get a vector of fluid names.

Reimplemented in CoolProp::REFPROPMixtureBackend, CoolProp::AbstractCubicBackend, CoolProp::VTPRBackend, CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::TabularBackend.

Definition at line 585 of file AbstractState.h.

◆ calc_fraction_max()

virtual CoolPropDbl CoolProp::AbstractState::calc_fraction_max ( void  )
inlineprotectedvirtual

Get the maximum fraction (mole, mass, volume) for incompressible fluid.

Reimplemented in CoolProp::IncompressibleBackend.

Definition at line 613 of file AbstractState.h.

◆ calc_fraction_min()

virtual CoolPropDbl CoolProp::AbstractState::calc_fraction_min ( void  )
inlineprotectedvirtual

Get the minimum fraction (mole, mass, volume) for incompressible fluid.

Reimplemented in CoolProp::IncompressibleBackend.

Definition at line 609 of file AbstractState.h.

◆ calc_fugacity()

virtual CoolPropDbl CoolProp::AbstractState::calc_fugacity ( std::size_t  i)
inlineprotectedvirtual

Using this backend, calculate the fugacity in Pa.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 250 of file AbstractState.h.

◆ calc_fugacity_coefficient()

virtual CoolPropDbl CoolProp::AbstractState::calc_fugacity_coefficient ( std::size_t  i)
inlineprotectedvirtual

Using this backend, calculate the fugacity coefficient (dimensionless)

Reimplemented in CoolProp::VTPRBackend, CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 242 of file AbstractState.h.

◆ calc_fugacity_coefficients()

virtual std::vector< CoolPropDbl > CoolProp::AbstractState::calc_fugacity_coefficients ( void  )
inlineprotectedvirtual

Using this backend, calculate the fugacity in Pa.

Reimplemented in CoolProp::PCSAFTBackend.

Definition at line 246 of file AbstractState.h.

◆ calc_gas_constant()

virtual CoolPropDbl CoolProp::AbstractState::calc_gas_constant ( void  )
inlineprotectedvirtual

Using this backend, calculate the universal gas constant \(R_u\) in J/mol/K.

Reimplemented in CoolProp::AbstractCubicBackend, CoolProp::HelmholtzEOSMixtureBackend, CoolProp::IF97Backend, and CoolProp::REFPROPMixtureBackend.

Definition at line 238 of file AbstractState.h.

◆ calc_get_spinodal_data()

virtual SpinodalData CoolProp::AbstractState::calc_get_spinodal_data ( )
inlineprotectedvirtual

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 681 of file AbstractState.h.

◆ calc_gibbsmass()

virtual CoolPropDbl CoolProp::AbstractState::calc_gibbsmass ( void  )
inlineprotectedvirtual

Definition at line 539 of file AbstractState.h.

◆ calc_gibbsmass_excess()

virtual CoolPropDbl CoolProp::AbstractState::calc_gibbsmass_excess ( void  )
inlineprotectedvirtual

Definition at line 542 of file AbstractState.h.

◆ calc_gibbsmolar()

virtual CoolPropDbl CoolProp::AbstractState::calc_gibbsmolar ( void  )
inlineprotectedvirtual

Using this backend, calculate the molar Gibbs function in J/mol.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 186 of file AbstractState.h.

◆ calc_gibbsmolar_residual()

virtual CoolPropDbl CoolProp::AbstractState::calc_gibbsmolar_residual ( void  )
inlineprotectedvirtual

Using this backend, calculate the residual molar Gibbs function in J/mol.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::PCSAFTBackend.

Definition at line 190 of file AbstractState.h.

◆ calc_GWP100()

virtual CoolPropDbl CoolProp::AbstractState::calc_GWP100 ( void  )
inlineprotectedvirtual

Using this backend, calculate the 100-year global warming potential (GWP)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 395 of file AbstractState.h.

◆ calc_GWP20()

virtual CoolPropDbl CoolProp::AbstractState::calc_GWP20 ( void  )
inlineprotectedvirtual

Using this backend, calculate the 20-year global warming potential (GWP)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 391 of file AbstractState.h.

◆ calc_GWP500()

virtual CoolPropDbl CoolProp::AbstractState::calc_GWP500 ( void  )
inlineprotectedvirtual

Using this backend, calculate the 500-year global warming potential (GWP)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 399 of file AbstractState.h.

◆ calc_health_hazard()

virtual CoolPropDbl CoolProp::AbstractState::calc_health_hazard ( void  )
inlineprotectedvirtual

Using this backend, calculate the health hazard.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 411 of file AbstractState.h.

◆ calc_helmholtzmass()

virtual CoolPropDbl CoolProp::AbstractState::calc_helmholtzmass ( void  )
inlineprotectedvirtual

Definition at line 545 of file AbstractState.h.

◆ calc_helmholtzmass_excess()

virtual CoolPropDbl CoolProp::AbstractState::calc_helmholtzmass_excess ( void  )
inlineprotectedvirtual

Definition at line 548 of file AbstractState.h.

◆ calc_helmholtzmolar()

virtual CoolPropDbl CoolProp::AbstractState::calc_helmholtzmolar ( void  )
inlineprotectedvirtual

Using this backend, calculate the molar Helmholtz energy in J/mol.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 194 of file AbstractState.h.

◆ calc_hmass()

virtual CoolPropDbl CoolProp::AbstractState::calc_hmass ( void  )
inlineprotectedvirtual

Reimplemented in CoolProp::IF97Backend, and CoolProp::IncompressibleBackend.

Definition at line 512 of file AbstractState.h.

◆ calc_hmass_excess()

virtual CoolPropDbl CoolProp::AbstractState::calc_hmass_excess ( void  )
inlineprotectedvirtual

Definition at line 515 of file AbstractState.h.

◆ calc_hmolar()

virtual CoolPropDbl CoolProp::AbstractState::calc_hmolar ( void  )
inlineprotectedvirtual

Using this backend, calculate the molar enthalpy in J/mol.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, CoolProp::IF97Backend, and CoolProp::TabularBackend.

Definition at line 150 of file AbstractState.h.

◆ calc_hmolar_residual()

virtual CoolPropDbl CoolProp::AbstractState::calc_hmolar_residual ( void  )
inlineprotectedvirtual

Using this backend, calculate the residual molar enthalpy in J/mol.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::PCSAFTBackend.

Definition at line 154 of file AbstractState.h.

◆ calc_ideal_curve()

virtual void CoolProp::AbstractState::calc_ideal_curve ( const std::string &  type,
std::vector< double > &  T,
std::vector< double > &  p 
)
inlineprotectedvirtual

◆ calc_isentropic_expansion_coefficient()

virtual CoolPropDbl CoolProp::AbstractState::calc_isentropic_expansion_coefficient ( void  )
inlineprotectedvirtual

Using this backend, calculate the isentropic expansion coefficient \( \kappa_s = -\frac{c_p}{c_v}\frac{v}{p}\left.\frac{\partial p}{\partial v}\right|_T = \frac{\rho}{p}\left.\frac{\partial p}{\partial \rho}\right|_s\).

Definition at line 210 of file AbstractState.h.

◆ calc_isobaric_expansion_coefficient()

virtual CoolPropDbl CoolProp::AbstractState::calc_isobaric_expansion_coefficient ( void  )
inlineprotectedvirtual

Using this backend, calculate the isobaric expansion coefficient \( \beta = \frac{1}{v}\left.\frac{\partial v}{\partial T}\right|_p = -\frac{1}{\rho}\left.\frac{\partial \rho}{\partial T}\right|_p\) in 1/K.

Definition at line 206 of file AbstractState.h.

◆ calc_isothermal_compressibility()

virtual CoolPropDbl CoolProp::AbstractState::calc_isothermal_compressibility ( void  )
inlineprotectedvirtual

Using this backend, calculate the isothermal compressibility \( \kappa = -\frac{1}{v}\left.\frac{\partial v}{\partial p}\right|_T=\frac{1}{\rho}\left.\frac{\partial \rho}{\partial p}\right|_T\) in 1/Pa.

Definition at line 202 of file AbstractState.h.

◆ calc_mass_fractions()

virtual const std::vector< CoolPropDbl > CoolProp::AbstractState::calc_mass_fractions ( void  )
inlineprotectedvirtual

◆ calc_melting_line()

virtual CoolPropDbl CoolProp::AbstractState::calc_melting_line ( int  param,
int  given,
CoolPropDbl  value 
)
inlineprotectedvirtual

◆ calc_molar_mass()

virtual CoolPropDbl CoolProp::AbstractState::calc_molar_mass ( void  )
inlineprotectedvirtual

◆ calc_mole_fractions_liquid()

virtual std::vector< CoolPropDbl > CoolProp::AbstractState::calc_mole_fractions_liquid ( void  )
inlineprotectedvirtual

◆ calc_mole_fractions_vapor()

virtual std::vector< CoolPropDbl > CoolProp::AbstractState::calc_mole_fractions_vapor ( void  )
inlineprotectedvirtual

◆ calc_name()

virtual std::string CoolProp::AbstractState::calc_name ( void  )
inlineprotectedvirtual

Using this backend, get the name of the fluid.

Reimplemented in CoolProp::REFPROPMixtureBackend, CoolProp::HelmholtzEOSMixtureBackend, CoolProp::IncompressibleBackend, and CoolProp::TabularBackend.

Definition at line 459 of file AbstractState.h.

◆ calc_neff()

virtual CoolPropDbl CoolProp::AbstractState::calc_neff ( void  )
inlineprotectedvirtual

Using this backend, calculate effective hardness of interaction.

Definition at line 166 of file AbstractState.h.

◆ calc_ODP()

virtual CoolPropDbl CoolProp::AbstractState::calc_ODP ( void  )
inlineprotectedvirtual

Using this backend, calculate the ozone depletion potential (ODP)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 403 of file AbstractState.h.

◆ calc_p_critical()

virtual CoolPropDbl CoolProp::AbstractState::calc_p_critical ( void  )
inlineprotectedvirtual

Using this backend, get the critical point pressure in Pa.

Reimplemented in CoolProp::AbstractCubicBackend, CoolProp::HelmholtzEOSMixtureBackend, CoolProp::IF97Backend, CoolProp::REFPROPMixtureBackend, and CoolProp::TabularBackend.

Definition at line 485 of file AbstractState.h.

◆ calc_p_reducing()

virtual CoolPropDbl CoolProp::AbstractState::calc_p_reducing ( void  )
inlineprotectedvirtual

Using this backend, get the reducing point pressure in Pa.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 489 of file AbstractState.h.

◆ calc_p_triple()

virtual CoolPropDbl CoolProp::AbstractState::calc_p_triple ( void  )
inlineprotectedvirtual

Using this backend, get the triple point pressure in Pa.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, CoolProp::IF97Backend, CoolProp::REFPROPMixtureBackend, and CoolProp::TabularBackend.

Definition at line 472 of file AbstractState.h.

◆ calc_phase()

virtual phases CoolProp::AbstractState::calc_phase ( void  )
inlineprotectedvirtual

Using this backend, calculate the phase.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, CoolProp::IF97Backend, CoolProp::PCSAFTBackend, CoolProp::REFPROPMixtureBackend, and CoolProp::TabularBackend.

Definition at line 573 of file AbstractState.h.

◆ calc_phase_envelope()

virtual void CoolProp::AbstractState::calc_phase_envelope ( const std::string &  type)
inlineprotectedvirtual

Using this backend, construct the phase envelope, the variable type describes the type of phase envelope to be built.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 505 of file AbstractState.h.

◆ calc_phase_envelope_data()

virtual const CoolProp::PhaseEnvelopeData & CoolProp::AbstractState::calc_phase_envelope_data ( void  )
inlineprotectedvirtual

◆ calc_physical_hazard()

virtual CoolPropDbl CoolProp::AbstractState::calc_physical_hazard ( void  )
inlineprotectedvirtual

Using this backend, calculate the physical hazard.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 415 of file AbstractState.h.

◆ calc_PIP()

virtual CoolPropDbl CoolProp::AbstractState::calc_PIP ( void  )
inlineprotectedvirtual

Using this backend, calculate the phase identification parameter (PIP)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 258 of file AbstractState.h.

◆ calc_pmax()

virtual CoolPropDbl CoolProp::AbstractState::calc_pmax ( void  )
inlineprotectedvirtual

Using this backend, calculate the maximum pressure in Pa.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, CoolProp::IF97Backend, CoolProp::REFPROPMixtureBackend, and CoolProp::TabularBackend.

Definition at line 386 of file AbstractState.h.

◆ calc_pressure()

virtual CoolPropDbl CoolProp::AbstractState::calc_pressure ( void  )
inlineprotectedvirtual

Using this backend, calculate the pressure in Pa.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, CoolProp::IF97Backend, and CoolProp::PCSAFTBackend.

Definition at line 234 of file AbstractState.h.

◆ calc_reciprocal_reduced_temperature()

virtual CoolPropDbl CoolProp::AbstractState::calc_reciprocal_reduced_temperature ( void  )
inlineprotectedvirtual

Using this backend, calculate the reciprocal reduced temperature (Tc/T)

Reimplemented in CoolProp::AbstractCubicBackend.

Definition at line 433 of file AbstractState.h.

◆ calc_reduced_density()

virtual CoolPropDbl CoolProp::AbstractState::calc_reduced_density ( void  )
inlineprotectedvirtual

Using this backend, calculate the reduced density (rho/rhoc)

Reimplemented in CoolProp::AbstractCubicBackend.

Definition at line 429 of file AbstractState.h.

◆ calc_reducing_state()

virtual void CoolProp::AbstractState::calc_reducing_state ( void  )
inlineprotectedvirtual

◆ calc_rhomass()

virtual CoolPropDbl CoolProp::AbstractState::calc_rhomass ( void  )
inlineprotectedvirtual

Reimplemented in CoolProp::IF97Backend, and CoolProp::IncompressibleBackend.

Definition at line 509 of file AbstractState.h.

◆ calc_rhomass_critical()

virtual CoolPropDbl CoolProp::AbstractState::calc_rhomass_critical ( void  )
inlineprotectedvirtual

Using this backend, get the critical point mass density in kg/m^3 - Added for IF97Backend which is mass based.

Reimplemented in CoolProp::IF97Backend.

Definition at line 497 of file AbstractState.h.

◆ calc_rhomolar()

virtual CoolPropDbl CoolProp::AbstractState::calc_rhomolar ( void  )
inlineprotectedvirtual

Using this backend, get the molar density in mol/m^3.

Reimplemented in CoolProp::IF97Backend, and CoolProp::TabularBackend.

Definition at line 651 of file AbstractState.h.

◆ calc_rhomolar_critical()

virtual CoolPropDbl CoolProp::AbstractState::calc_rhomolar_critical ( void  )
inlineprotectedvirtual

Using this backend, get the critical point molar density in mol/m^3.

Reimplemented in CoolProp::AbstractCubicBackend, CoolProp::HelmholtzEOSMixtureBackend, CoolProp::IF97Backend, CoolProp::REFPROPMixtureBackend, and CoolProp::TabularBackend.

Definition at line 493 of file AbstractState.h.

◆ calc_rhomolar_reducing()

virtual CoolPropDbl CoolProp::AbstractState::calc_rhomolar_reducing ( void  )
inlineprotectedvirtual

Using this backend, get the reducing point molar density in mol/m^3.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 501 of file AbstractState.h.

◆ calc_saturated_liquid_keyed_output()

virtual CoolPropDbl CoolProp::AbstractState::calc_saturated_liquid_keyed_output ( parameters  key)
inlineprotectedvirtual

◆ calc_saturated_vapor_keyed_output()

virtual CoolPropDbl CoolProp::AbstractState::calc_saturated_vapor_keyed_output ( parameters  key)
inlineprotectedvirtual

◆ calc_saturation_ancillary()

virtual CoolPropDbl CoolProp::AbstractState::calc_saturation_ancillary ( parameters  param,
int  Q,
parameters  given,
double  value 
)
inlineprotectedvirtual
Parameters
paramThe key for the parameter to be returned
QThe quality for the parameter that is given (0 = saturated liquid, 1 = saturated vapor)
givenThe key for the parameter that is given
valueThe value for the parameter that is given

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 568 of file AbstractState.h.

◆ calc_second_partial_deriv()

CoolPropDbl CoolProp::AbstractState::calc_second_partial_deriv ( parameters  Of1,
parameters  Wrt1,
parameters  Constant1,
parameters  Wrt2,
parameters  Constant2 
)
protectedvirtual

Calculate the second partial derivative using the given backend.

Definition at line 941 of file AbstractState.cpp.

◆ calc_second_saturation_deriv()

virtual CoolPropDbl CoolProp::AbstractState::calc_second_saturation_deriv ( parameters  Of1,
parameters  Wrt1,
parameters  Wrt2 
)
inlineprotectedvirtual

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 623 of file AbstractState.h.

◆ calc_second_two_phase_deriv()

virtual CoolPropDbl CoolProp::AbstractState::calc_second_two_phase_deriv ( parameters  Of,
parameters  Wrt,
parameters  Constant,
parameters  Wrt2,
parameters  Constant2 
)
inlineprotectedvirtual

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 629 of file AbstractState.h.

◆ calc_smass()

virtual CoolPropDbl CoolProp::AbstractState::calc_smass ( void  )
inlineprotectedvirtual

Reimplemented in CoolProp::IF97Backend, and CoolProp::IncompressibleBackend.

Definition at line 518 of file AbstractState.h.

◆ calc_smass_excess()

virtual CoolPropDbl CoolProp::AbstractState::calc_smass_excess ( void  )
inlineprotectedvirtual

Definition at line 521 of file AbstractState.h.

◆ calc_smolar()

virtual CoolPropDbl CoolProp::AbstractState::calc_smolar ( void  )
inlineprotectedvirtual

Using this backend, calculate the molar entropy in J/mol/K.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, CoolProp::IF97Backend, and CoolProp::TabularBackend.

Definition at line 158 of file AbstractState.h.

◆ calc_smolar_residual()

virtual CoolPropDbl CoolProp::AbstractState::calc_smolar_residual ( void  )
inlineprotectedvirtual

Using this backend, calculate the residual molar entropy in J/mol/K.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, CoolProp::PCSAFTBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 162 of file AbstractState.h.

◆ calc_specify_phase()

virtual void CoolProp::AbstractState::calc_specify_phase ( phases  phase)
inlineprotectedvirtual

Using this backend, specify the phase to be used for all further calculations.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, CoolProp::PCSAFTBackend, CoolProp::REFPROPMixtureBackend, and CoolProp::TabularBackend.

Definition at line 577 of file AbstractState.h.

◆ calc_speed_sound()

virtual CoolPropDbl CoolProp::AbstractState::calc_speed_sound ( void  )
inlineprotectedvirtual

Using this backend, calculate the speed of sound in m/s.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, CoolProp::IF97Backend, and CoolProp::TabularBackend.

Definition at line 198 of file AbstractState.h.

◆ calc_state()

virtual const CoolProp::SimpleState & CoolProp::AbstractState::calc_state ( const std::string &  state)
inlineprotectedvirtual

Using this backend, calculate a phase given by the state string

Parameters
stateA string that describes the state desired, one of "hs_anchor", "critical"/"crit", "reducing"

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 590 of file AbstractState.h.

◆ calc_surface_tension()

virtual CoolPropDbl CoolProp::AbstractState::calc_surface_tension ( void  )
inlineprotectedvirtual

Using this backend, calculate the surface tension in N/m.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, CoolProp::IF97Backend, CoolProp::REFPROPMixtureBackend, and CoolProp::TabularBackend.

Definition at line 222 of file AbstractState.h.

◆ calc_T()

virtual CoolPropDbl CoolProp::AbstractState::calc_T ( void  )
inlineprotectedvirtual

Using this backend, get the temperature.

Reimplemented in CoolProp::TabularBackend.

Definition at line 647 of file AbstractState.h.

◆ calc_T_critical()

virtual CoolPropDbl CoolProp::AbstractState::calc_T_critical ( void  )
inlineprotectedvirtual

Using this backend, get the critical point temperature in K.

Reimplemented in CoolProp::AbstractCubicBackend, CoolProp::HelmholtzEOSMixtureBackend, CoolProp::IF97Backend, CoolProp::REFPROPMixtureBackend, and CoolProp::TabularBackend.

Definition at line 477 of file AbstractState.h.

◆ calc_T_freeze()

virtual CoolPropDbl CoolProp::AbstractState::calc_T_freeze ( void  )
inlineprotectedvirtual

Reimplemented in CoolProp::IncompressibleBackend.

Definition at line 616 of file AbstractState.h.

◆ calc_T_reducing()

virtual CoolPropDbl CoolProp::AbstractState::calc_T_reducing ( void  )
inlineprotectedvirtual

Using this backend, get the reducing point temperature in K.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 481 of file AbstractState.h.

◆ calc_tangent_plane_distance()

virtual double CoolProp::AbstractState::calc_tangent_plane_distance ( const double  T,
const double  p,
const std::vector< double > &  w,
const double  rhomolar_guess 
)
inlineprotectedvirtual

Using this backend, calculate the tangent plane distance for a given trial composition.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 656 of file AbstractState.h.

◆ calc_Tmax()

virtual CoolPropDbl CoolProp::AbstractState::calc_Tmax ( void  )
inlineprotectedvirtual

Using this backend, calculate the maximum temperature in K.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, CoolProp::IF97Backend, CoolProp::IncompressibleBackend, CoolProp::REFPROPMixtureBackend, and CoolProp::TabularBackend.

Definition at line 378 of file AbstractState.h.

◆ calc_Tmin()

virtual CoolPropDbl CoolProp::AbstractState::calc_Tmin ( void  )
inlineprotectedvirtual

Using this backend, calculate the minimum temperature in K.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, CoolProp::IF97Backend, CoolProp::IncompressibleBackend, CoolProp::REFPROPMixtureBackend, and CoolProp::TabularBackend.

Definition at line 382 of file AbstractState.h.

◆ calc_true_critical_point()

virtual void CoolProp::AbstractState::calc_true_critical_point ( double &  T,
double &  rho 
)
inlineprotectedvirtual

Using this backend, return true critical point where dp/drho|T = 0 and d2p/drho^2|T = 0.

Reimplemented in CoolProp::REFPROPMixtureBackend.

Definition at line 661 of file AbstractState.h.

◆ calc_Ttriple()

virtual CoolPropDbl CoolProp::AbstractState::calc_Ttriple ( void  )
inlineprotectedvirtual

Using this backend, get the triple point temperature in K.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, CoolProp::IF97Backend, CoolProp::REFPROPMixtureBackend, and CoolProp::TabularBackend.

Definition at line 468 of file AbstractState.h.

◆ calc_umass()

virtual CoolPropDbl CoolProp::AbstractState::calc_umass ( void  )
inlineprotectedvirtual

Reimplemented in CoolProp::IF97Backend, and CoolProp::IncompressibleBackend.

Definition at line 533 of file AbstractState.h.

◆ calc_umass_excess()

virtual CoolPropDbl CoolProp::AbstractState::calc_umass_excess ( void  )
inlineprotectedvirtual

Definition at line 536 of file AbstractState.h.

◆ calc_umolar()

virtual CoolPropDbl CoolProp::AbstractState::calc_umolar ( void  )
inlineprotectedvirtual

Using this backend, calculate the molar internal energy in J/mol.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, CoolProp::IF97Backend, and CoolProp::TabularBackend.

Definition at line 170 of file AbstractState.h.

◆ calc_unspecify_phase()

virtual void CoolProp::AbstractState::calc_unspecify_phase ( void  )
inlineprotectedvirtual

Using this backend, unspecify the phase.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, CoolProp::PCSAFTBackend, CoolProp::REFPROPMixtureBackend, and CoolProp::TabularBackend.

Definition at line 581 of file AbstractState.h.

◆ calc_viscosity()

virtual CoolPropDbl CoolProp::AbstractState::calc_viscosity ( void  )
inlineprotectedvirtual

Using this backend, calculate the viscosity in Pa-s.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, CoolProp::IF97Backend, CoolProp::IncompressibleBackend, CoolProp::REFPROPMixtureBackend, and CoolProp::TabularBackend.

Definition at line 214 of file AbstractState.h.

◆ calc_viscosity_contributions()

virtual void CoolProp::AbstractState::calc_viscosity_contributions ( CoolPropDbl dilute,
CoolPropDbl initial_density,
CoolPropDbl residual,
CoolPropDbl critical 
)
inlineprotectedvirtual

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 669 of file AbstractState.h.

◆ calc_volumemass_excess()

virtual CoolPropDbl CoolProp::AbstractState::calc_volumemass_excess ( void  )
inlineprotectedvirtual

Definition at line 551 of file AbstractState.h.

◆ change_EOS()

void CoolProp::AbstractState::change_EOS ( const std::size_t  i,
const std::string &  EOS_name 
)
inline

Change the equation of state for a given component to a specified EOS.

Parameters
iIndex of the component to change (if a pure fluid, i=0)
EOS_nameName of the EOS to use (something like "SRK", "PR", "XiangDeiters", but backend-specific)
Note
Calls the calc_change_EOS function of the implementation

Definition at line 1460 of file AbstractState.h.

◆ chemical_potential()

double CoolProp::AbstractState::chemical_potential ( std::size_t  i)

Return the chemical potential of the i-th component of the mixture.

Definition at line 637 of file AbstractState.cpp.

◆ clear()

bool CoolProp::AbstractState::clear ( )
virtual

Clear all the cached values.

Bulk values

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, CoolProp::IF97Backend, and CoolProp::IncompressibleBackend.

Definition at line 186 of file AbstractState.cpp.

◆ clear_comp_change()

bool CoolProp::AbstractState::clear_comp_change ( )
virtual

When the composition changes, clear all cached values that are only dependent on composition, but not the thermodynamic state.

Definition at line 176 of file AbstractState.cpp.

◆ compressibility_factor()

double CoolProp::AbstractState::compressibility_factor ( void  )

Return the compressibility factor \( Z = p/(rho R T) \).

Definition at line 665 of file AbstractState.cpp.

◆ conductivity()

double CoolProp::AbstractState::conductivity ( void  )

Return the thermal conductivity in W/m/K.

Definition at line 600 of file AbstractState.cpp.

◆ conductivity_contributions()

void CoolProp::AbstractState::conductivity_contributions ( CoolPropDbl dilute,
CoolPropDbl initial_density,
CoolPropDbl residual,
CoolPropDbl critical 
)
inline

Return the thermal conductivity contributions, each in W/m/K.

Definition at line 1437 of file AbstractState.h.

◆ conformal_state()

void CoolProp::AbstractState::conformal_state ( const std::string &  reference_fluid,
CoolPropDbl T,
CoolPropDbl rhomolar 
)
inline

Find the conformal state needed for ECS.

Parameters
reference_fluidThe reference fluid for which the conformal state will be calculated
TTemperature (initial guess must be provided, or < 0 to start with unity shape factors)
rhomolarMolar density (initial guess must be provided, or < 0 to start with unity shape factors)

Definition at line 1452 of file AbstractState.h.

◆ cp0mass()

double CoolProp::AbstractState::cp0mass ( void  )
inline

Return the mass constant pressure specific heat for ideal gas part only in J/kg/K.

Definition at line 1149 of file AbstractState.h.

◆ cp0molar()

double CoolProp::AbstractState::cp0molar ( void  )

Return the molar constant pressure specific heat for ideal gas part only in J/mol/K.

Definition at line 585 of file AbstractState.cpp.

◆ cpmass()

double CoolProp::AbstractState::cpmass ( void  )
inline

Return the mass constant pressure specific heat in J/kg/K.

Definition at line 1143 of file AbstractState.h.

◆ cpmolar()

double CoolProp::AbstractState::cpmolar ( void  )

Return the molar constant pressure specific heat in J/mol/K.

Definition at line 581 of file AbstractState.cpp.

◆ criticality_contour_values()

void CoolProp::AbstractState::criticality_contour_values ( double &  L1star,
double &  M1star 
)
inline

Calculate the criticality contour values \(\mathcal{L}_1^*\) and \(\mathcal{M}_1^*\).

Definition at line 986 of file AbstractState.h.

◆ Cvirial()

double CoolProp::AbstractState::Cvirial ( void  )

Return the C virial coefficient.

Definition at line 656 of file AbstractState.cpp.

◆ cvmass()

double CoolProp::AbstractState::cvmass ( void  )
inline

Return the mass constant volume specific heat in J/kg/K.

Definition at line 1155 of file AbstractState.h.

◆ cvmolar()

double CoolProp::AbstractState::cvmolar ( void  )

Return the molar constant volume specific heat in J/mol/K.

Definition at line 588 of file AbstractState.cpp.

◆ d2alpha0_dDelta2()

CoolPropDbl CoolProp::AbstractState::d2alpha0_dDelta2 ( void  )
inline

Return the term \( \alpha^0_{\delta\delta} \).

Definition at line 1483 of file AbstractState.h.

◆ d2alpha0_dDelta_dTau()

CoolPropDbl CoolProp::AbstractState::d2alpha0_dDelta_dTau ( void  )
inline

Return the term \( \alpha^0_{\delta\tau} \).

Definition at line 1488 of file AbstractState.h.

◆ d2alpha0_dTau2()

CoolPropDbl CoolProp::AbstractState::d2alpha0_dTau2 ( void  )
inline

Return the term \( \alpha^0_{\tau\tau} \).

Definition at line 1493 of file AbstractState.h.

◆ d2alphar_dDelta2()

CoolPropDbl CoolProp::AbstractState::d2alphar_dDelta2 ( void  )
inline

Return the term \( \alpha^r_{\delta\delta} \).

Definition at line 1534 of file AbstractState.h.

◆ d2alphar_dDelta_dTau()

CoolPropDbl CoolProp::AbstractState::d2alphar_dDelta_dTau ( void  )
inline

Return the term \( \alpha^r_{\delta\tau} \).

Definition at line 1539 of file AbstractState.h.

◆ d2alphar_dTau2()

CoolPropDbl CoolProp::AbstractState::d2alphar_dTau2 ( void  )
inline

Return the term \( \alpha^r_{\tau\tau} \).

Definition at line 1544 of file AbstractState.h.

◆ d3alpha0_dDelta2_dTau()

CoolPropDbl CoolProp::AbstractState::d3alpha0_dDelta2_dTau ( void  )
inline

Return the term \( \alpha^0_{\delta\delta\tau} \).

Definition at line 1508 of file AbstractState.h.

◆ d3alpha0_dDelta3()

CoolPropDbl CoolProp::AbstractState::d3alpha0_dDelta3 ( void  )
inline

Return the term \( \alpha^0_{\delta\delta\delta} \).

Definition at line 1513 of file AbstractState.h.

◆ d3alpha0_dDelta_dTau2()

CoolPropDbl CoolProp::AbstractState::d3alpha0_dDelta_dTau2 ( void  )
inline

Return the term \( \alpha^0_{\delta\tau\tau} \).

Definition at line 1503 of file AbstractState.h.

◆ d3alpha0_dTau3()

CoolPropDbl CoolProp::AbstractState::d3alpha0_dTau3 ( void  )
inline

Return the term \( \alpha^0_{\tau\tau\tau} \).

Definition at line 1498 of file AbstractState.h.

◆ d3alphar_dDelta2_dTau()

CoolPropDbl CoolProp::AbstractState::d3alphar_dDelta2_dTau ( void  )
inline

Return the term \( \alpha^r_{\delta\delta\tau} \).

Definition at line 1554 of file AbstractState.h.

◆ d3alphar_dDelta3()

CoolPropDbl CoolProp::AbstractState::d3alphar_dDelta3 ( void  )
inline

Return the term \( \alpha^r_{\delta\delta\delta} \).

Definition at line 1549 of file AbstractState.h.

◆ d3alphar_dDelta_dTau2()

CoolPropDbl CoolProp::AbstractState::d3alphar_dDelta_dTau2 ( void  )
inline

Return the term \( \alpha^r_{\delta\tau\tau} \).

Definition at line 1559 of file AbstractState.h.

◆ d3alphar_dTau3()

CoolPropDbl CoolProp::AbstractState::d3alphar_dTau3 ( void  )
inline

Return the term \( \alpha^r_{\tau\tau\tau} \).

Definition at line 1564 of file AbstractState.h.

◆ d4alphar_dDelta2_dTau2()

CoolPropDbl CoolProp::AbstractState::d4alphar_dDelta2_dTau2 ( void  )
inline

Return the term \( \alpha^r_{\delta\delta\tau\tau} \).

Definition at line 1579 of file AbstractState.h.

◆ d4alphar_dDelta3_dTau()

CoolPropDbl CoolProp::AbstractState::d4alphar_dDelta3_dTau ( void  )
inline

Return the term \( \alpha^r_{\delta\delta\delta\tau} \).

Definition at line 1574 of file AbstractState.h.

◆ d4alphar_dDelta4()

CoolPropDbl CoolProp::AbstractState::d4alphar_dDelta4 ( void  )
inline

Return the term \( \alpha^r_{\delta\delta\delta\delta} \).

Definition at line 1569 of file AbstractState.h.

◆ d4alphar_dDelta_dTau3()

CoolPropDbl CoolProp::AbstractState::d4alphar_dDelta_dTau3 ( void  )
inline

Return the term \( \alpha^r_{\delta\tau\tau\tau} \).

Definition at line 1584 of file AbstractState.h.

◆ d4alphar_dTau4()

CoolPropDbl CoolProp::AbstractState::d4alphar_dTau4 ( void  )
inline

Return the term \( \alpha^r_{\tau\tau\tau\tau} \).

Definition at line 1589 of file AbstractState.h.

◆ dalpha0_dDelta()

CoolPropDbl CoolProp::AbstractState::dalpha0_dDelta ( void  )
inline

Return the term \( \alpha^0_{\delta} \).

Definition at line 1473 of file AbstractState.h.

◆ dalpha0_dTau()

CoolPropDbl CoolProp::AbstractState::dalpha0_dTau ( void  )
inline

Return the term \( \alpha^0_{\tau} \).

Definition at line 1478 of file AbstractState.h.

◆ dalphar_dDelta()

CoolPropDbl CoolProp::AbstractState::dalphar_dDelta ( void  )
inline

Return the term \( \alpha^r_{\delta} \).

Definition at line 1524 of file AbstractState.h.

◆ dalphar_dTau()

CoolPropDbl CoolProp::AbstractState::dalphar_dTau ( void  )
inline

Return the term \( \alpha^r_{\tau} \).

Definition at line 1529 of file AbstractState.h.

◆ dBvirial_dT()

double CoolProp::AbstractState::dBvirial_dT ( void  )

Return the derivative of the B virial coefficient with respect to temperature.

Definition at line 659 of file AbstractState.cpp.

◆ dCvirial_dT()

double CoolProp::AbstractState::dCvirial_dT ( void  )

Return the derivative of the C virial coefficient with respect to temperature.

Definition at line 662 of file AbstractState.cpp.

◆ delta()

double CoolProp::AbstractState::delta ( void  )

Return the reduced density ( \(\delta = \rho/\rho_c\))

Definition at line 471 of file AbstractState.cpp.

◆ description()

std::string CoolProp::AbstractState::description ( )
inline

Return the description - backend dependent.

Definition at line 1032 of file AbstractState.h.

◆ dipole_moment()

double CoolProp::AbstractState::dipole_moment ( )
inline

Return the dipole moment in C-m (1 D = 3.33564e-30 C-m)

Definition at line 1037 of file AbstractState.h.

◆ factory() [1/2]

static AbstractState * CoolProp::AbstractState::factory ( const std::string &  backend,
const std::string &  fluid_names 
)
inlinestatic

A factory function to return a pointer to a new-allocated instance of one of the backends.

This is a convenience function to allow for the use of '&' delimited fluid names. Slightly less computationally efficient than the

Parameters
backendThe backend in use, one of "HEOS", "REFPROP", etc.
fluid_namesFluid names as a '&' delimited string
Returns

Definition at line 709 of file AbstractState.h.

◆ factory() [2/2]

AbstractState * CoolProp::AbstractState::factory ( const std::string &  backend,
const std::vector< std::string > &  fluid_names 
)
static

A factory function to return a pointer to a new-allocated instance of one of the backends.

Parameters
backendThe backend in use, "HEOS", "REFPROP", etc.
fluid_namesA vector of strings of the fluid names
Returns
A pointer to the instance generated

Several backends are possible:

  1. "?" : The backend is unknown, we will parse the fluid string to determine the backend to be used. Probably will use HEOS backend (see below)
  2. "HEOS" : The Helmholtz Equation of State backend for use with pure and pseudo-pure fluids, and mixtures, all of which are based on multi-parameter Helmholtz Energy equations of state. The fluid part of the string should then either be
    1. A pure or pseudo-pure fluid name (eg. "PROPANE" or "R410A"), yielding a HelmholtzEOSBackend instance.
    2. A string that encodes the components of the mixture with a "&" between them (e.g. "R32&R125"), yielding a HelmholtzEOSMixtureBackend instance.
  3. "REFPROP" : The REFPROP backend will be used. The fluid part of the string should then either be
    1. A pure or pseudo-pure fluid name (eg. "PROPANE" or "R410A"), yielding a REFPROPBackend instance.
    2. A string that encodes the components of the mixture with a "&" between them (e.g. "R32&R125"), yielding a REFPROPMixtureBackend instance.
  4. "INCOMP": The incompressible backend will be used
  5. "TTSE&XXXX": The TTSE backend will be used, and the tables will be generated using the XXXX backend where XXXX is one of the base backends("HEOS", "REFPROP", etc. )
  6. "BICUBIC&XXXX": The Bicubic backend will be used, and the tables will be generated using the XXXX backend where XXXX is one of the base backends("HEOS", "REFPROP", etc. )

Very Important!! : Use a smart pointer to manage the pointer returned. In older versions of C++, you can use std::tr1::smart_ptr. In C++2011 you can use std::shared_ptr

Definition at line 126 of file AbstractState.cpp.

◆ first_partial_deriv()

CoolPropDbl CoolProp::AbstractState::first_partial_deriv ( parameters  Of,
parameters  Wrt,
parameters  Constant 
)
inline

The first partial derivative in homogeneous phases.

\[ \left(\frac{\partial A}{\partial B}\right)_C = \frac{\left(\frac{\partial A}{\partial \tau}\right)_\delta\left(\frac{\partial C}{\partial \delta}\right)_\tau-\left(\frac{\partial A}{\partial \delta}\right)_\tau\left(\frac{\partial C}{\partial \tau}\right)_\delta}{\left(\frac{\partial B}{\partial \tau}\right)_\delta\left(\frac{\partial C}{\partial \delta}\right)_\tau-\left(\frac{\partial B}{\partial \delta}\right)_\tau\left(\frac{\partial C}{\partial \tau}\right)_\delta} = \frac{N}{D}\]

Definition at line 1244 of file AbstractState.h.

◆ first_saturation_deriv()

CoolPropDbl CoolProp::AbstractState::first_saturation_deriv ( parameters  Of1,
parameters  Wrt1 
)
inline

The first partial derivative along the saturation curve.

Implementing the algorithms and ideas of: Matthis Thorade, Ali Saadat, "Partial derivatives of thermodynamic state properties for dynamic simulation", Environmental Earth Sciences, December 2013, Volume 70, Issue 8, pp 3497-3503

Basically the idea is that the p-T derivative is given by Clapeyron relations:

\[ \left(\frac{\partial T}{\partial p}\right)_{\sigma} = T\left(\frac{v'' - v'}{h'' - h'}\right)_{\sigma} \]

and then other derivatives can be obtained along the saturation curve from

\[ \left(\frac{\partial y}{\partial p}\right)_{\sigma} = \left(\frac{\partial y}{\partial p}\right)+\left(\frac{\partial y}{\partial T}\right)\left(\frac{\partial T}{\partial p}\right)_{\sigma} \]

\[ \left(\frac{\partial y}{\partial T}\right)_{\sigma} = \left(\frac{\partial y}{\partial T}\right)+\left(\frac{\partial y}{\partial p}\right)\left(\frac{\partial p}{\partial T}\right)_{\sigma} \]

where derivatives without the \( \sigma \) are homogeneous (conventional) derivatives.

Parameters
Of1The parameter that the derivative is taken of
Wrt1The parameter that the derivative is taken with respect to

Definition at line 1296 of file AbstractState.h.

◆ first_two_phase_deriv()

double CoolProp::AbstractState::first_two_phase_deriv ( parameters  Of,
parameters  Wrt,
parameters  Constant 
)
inline

Calculate the first "two-phase" derivative as described by Thorade and Sadaat, EAS, 2013.

Implementing the algorithms and ideas of: Matthis Thorade, Ali Saadat, "Partial derivatives of thermodynamic state properties for dynamic simulation", Environmental Earth Sciences, December 2013, Volume 70, Issue 8, pp 3497-3503

Spline evaluation is as described in: S Quoilin, I Bell, A Desideri, P Dewallef, V Lemort, "Methods to increase the robustness of finite-volume flow models in thermodynamic systems", Energies 7 (3), 1621-1640

Note
Not all derivatives are supported!
Parameters
OfThe parameter to be derived
WrtThe parameter that the derivative is taken with respect to
ConstantThe parameter that is held constant
Returns

Definition at line 1340 of file AbstractState.h.

◆ first_two_phase_deriv_splined()

double CoolProp::AbstractState::first_two_phase_deriv_splined ( parameters  Of,
parameters  Wrt,
parameters  Constant,
double  x_end 
)
inline

Calculate the first "two-phase" derivative as described by Thorade and Sadaat, EAS, 2013.

Implementing the algorithms and ideas of: Matthis Thorade, Ali Saadat, "Partial derivatives of thermodynamic state properties for dynamic simulation", Environmental Earth Sciences, December 2013, Volume 70, Issue 8, pp 3497-3503

Spline evaluation is as described in: S Quoilin, I Bell, A Desideri, P Dewallef, V Lemort, "Methods to increase the robustness of finite-volume flow models in thermodynamic systems", Energies 7 (3), 1621-1640

Note
Not all derivatives are supported! If you need all three currently supported values (drho_dh__p, drho_dp__h and rho_spline), you should calculate drho_dp__h first to avoid duplicate calculations.
Parameters
OfThe parameter to be derived
WrtThe parameter that the derivative is taken with respect to
ConstantThe parameter that is held constant
x_endThe end vapor quality at which the spline is defined (spline is active in [0, x_end])
Returns

Definition at line 1384 of file AbstractState.h.

◆ fluid_names()

std::vector< std::string > CoolProp::AbstractState::fluid_names ( void  )

Return a vector of strings of the fluid names that are in use.

Definition at line 173 of file AbstractState.cpp.

◆ fluid_param_string()

virtual std::string CoolProp::AbstractState::fluid_param_string ( const std::string &  )
inlinevirtual

Return a string from the backend for the mixture/fluid - backend dependent - could be CAS #, name, etc.

Reimplemented in CoolProp::AbstractCubicBackend, CoolProp::HelmholtzEOSMixtureBackend, CoolProp::IncompressibleBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 861 of file AbstractState.h.

◆ fugacity()

double CoolProp::AbstractState::fugacity ( std::size_t  i)

Return the fugacity of the i-th component of the mixture.

Definition at line 633 of file AbstractState.cpp.

◆ fugacity_coefficient()

double CoolProp::AbstractState::fugacity_coefficient ( std::size_t  i)

Return the fugacity coefficient of the i-th component of the mixture.

Definition at line 625 of file AbstractState.cpp.

◆ fugacity_coefficients()

std::vector< double > CoolProp::AbstractState::fugacity_coefficients ( )

Return a vector of the fugacity coefficients for all components in the mixture.

Definition at line 629 of file AbstractState.cpp.

◆ fundamental_derivative_of_gas_dynamics()

double CoolProp::AbstractState::fundamental_derivative_of_gas_dynamics ( void  )

Return the fundamental derivative of gas dynamics \( \Gamma \).

see also Colonna et al, FPE, 2010

\[ \Gamma = 1+\frac{\rho}{c}\left(\frac{\partial c}{\partial \rho}\right)_{s} = 1+\frac{\rho}{2c^2}\left(\frac{\partial^2 p}{\partial \rho^2}\right)_{s} = \frac{v^3}{2c^2}\left(\frac{\partial^2 p}{\partial v^2}\right)_{s}\]

Note: densities are mass-based densities, not mole-based densities

Definition at line 669 of file AbstractState.cpp.

◆ gas_constant()

double CoolProp::AbstractState::gas_constant ( void  )

Return the mole-fraction weighted gas constant in J/mol/K.

Definition at line 621 of file AbstractState.cpp.

◆ get_binary_interaction_double() [1/2]

virtual double CoolProp::AbstractState::get_binary_interaction_double ( const std::size_t  i,
const std::size_t  j,
const std::string &  parameter 
)
inlinevirtual

Get binary mixture double value (EXPERT USE ONLY!!!)

Reimplemented in CoolProp::VTPRBackend, CoolProp::HelmholtzEOSMixtureBackend, CoolProp::REFPROPMixtureBackend, and CoolProp::AbstractCubicBackend.

Definition at line 898 of file AbstractState.h.

◆ get_binary_interaction_double() [2/2]

virtual double CoolProp::AbstractState::get_binary_interaction_double ( const std::string &  CAS1,
const std::string &  CAS2,
const std::string &  parameter 
)
inlinevirtual

Get binary mixture double value (EXPERT USE ONLY!!!)

Reimplemented in CoolProp::AbstractCubicBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 894 of file AbstractState.h.

◆ get_binary_interaction_string()

virtual std::string CoolProp::AbstractState::get_binary_interaction_string ( const std::string &  CAS1,
const std::string &  CAS2,
const std::string &  parameter 
)
inlinevirtual

Get binary mixture string value (EXPERT USE ONLY!!!)

Reimplemented in CoolProp::REFPROPMixtureBackend.

Definition at line 902 of file AbstractState.h.

◆ get_fluid_constant()

virtual const double CoolProp::AbstractState::get_fluid_constant ( std::size_t  i,
parameters  param 
) const
inlinevirtual

Get a constant for one of the fluids forming this mixture

Parameters
iIndex (0-based) of the fluid
paramparameter you want to obtain (probably one that is a trivial parameter)

Reimplemented in CoolProp::AbstractCubicBackend, CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::PCSAFTBackend.

Definition at line 872 of file AbstractState.h.

◆ get_fluid_parameter_double()

virtual double CoolProp::AbstractState::get_fluid_parameter_double ( const size_t  i,
const std::string &  parameter 
)
inlinevirtual

Double fluid parameter (currently the volume translation parameter for cubic)

Reimplemented in CoolProp::AbstractCubicBackend, and CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 918 of file AbstractState.h.

◆ get_mass_fractions()

virtual const std::vector< CoolPropDbl > CoolProp::AbstractState::get_mass_fractions ( void  )
inlinevirtual

Get the mass fractions of the fluid.

Definition at line 835 of file AbstractState.h.

◆ get_mole_fractions()

virtual const std::vector< CoolPropDbl > & CoolProp::AbstractState::get_mole_fractions ( void  )
pure virtual

◆ get_phase_envelope_data()

const CoolProp::PhaseEnvelopeData & CoolProp::AbstractState::get_phase_envelope_data ( )
inline

After having calculated the phase envelope, return the phase envelope data.

Definition at line 1401 of file AbstractState.h.

◆ get_reducing_state()

virtual const CoolProp::SimpleState & CoolProp::AbstractState::get_reducing_state ( )
inlinevirtual

Get the state that is used in the equation of state or mixture model to reduce the state. For pure fluids this is usually, but not always, the critical point. For mixture models, it is usually composition dependent

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 930 of file AbstractState.h.

◆ get_spinodal_data()

SpinodalData CoolProp::AbstractState::get_spinodal_data ( )
inline

Get the data from the spinodal curve constructed in the call to build_spinodal()

Definition at line 981 of file AbstractState.h.

◆ get_state()

const CoolProp::SimpleState & CoolProp::AbstractState::get_state ( const std::string &  state)
inline

Get a desired state point - backend dependent.

Definition at line 935 of file AbstractState.h.

◆ gibbsmass()

double CoolProp::AbstractState::gibbsmass ( void  )
inline

Return the Gibbs energy in J/kg.

Definition at line 1163 of file AbstractState.h.

◆ gibbsmass_excess()

double CoolProp::AbstractState::gibbsmass_excess ( void  )
inline

Return the excess Gibbs energy in J/kg.

Definition at line 1169 of file AbstractState.h.

◆ gibbsmolar()

double CoolProp::AbstractState::gibbsmolar ( void  )

Return the Gibbs energy in J/mol.

Definition at line 557 of file AbstractState.cpp.

◆ gibbsmolar_excess()

double CoolProp::AbstractState::gibbsmolar_excess ( void  )

Return the excess Gibbs energy in J/mol.

Definition at line 565 of file AbstractState.cpp.

◆ gibbsmolar_residual()

double CoolProp::AbstractState::gibbsmolar_residual ( void  )

Return the residual Gibbs energy in J/mol.

Definition at line 561 of file AbstractState.cpp.

◆ has_melting_line()

virtual bool CoolProp::AbstractState::has_melting_line ( void  )
inlinevirtual

Return true if the fluid has a melting line - default is false, but can be re-implemented by derived class.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 1410 of file AbstractState.h.

◆ helmholtzmass()

double CoolProp::AbstractState::helmholtzmass ( void  )
inline

Return the Helmholtz energy in J/kg.

Definition at line 1175 of file AbstractState.h.

◆ helmholtzmass_excess()

double CoolProp::AbstractState::helmholtzmass_excess ( void  )
inline

Return the excess Helmholtz energy in J/kg.

Definition at line 1181 of file AbstractState.h.

◆ helmholtzmolar()

double CoolProp::AbstractState::helmholtzmolar ( void  )

Return the Helmholtz energy in J/mol.

Definition at line 569 of file AbstractState.cpp.

◆ helmholtzmolar_excess()

double CoolProp::AbstractState::helmholtzmolar_excess ( void  )

Return the excess Helmholtz energy in J/mol.

Definition at line 573 of file AbstractState.cpp.

◆ hmass()

double CoolProp::AbstractState::hmass ( void  )
inline

Return the mass enthalpy in J/kg.

Definition at line 1103 of file AbstractState.h.

◆ hmass_excess()

double CoolProp::AbstractState::hmass_excess ( void  )
inline

Return the excess mass enthalpy in J/kg.

Definition at line 1109 of file AbstractState.h.

◆ hmolar()

double CoolProp::AbstractState::hmolar ( void  )

Return the molar enthalpy in J/mol.

Definition at line 517 of file AbstractState.cpp.

◆ hmolar_excess()

double CoolProp::AbstractState::hmolar_excess ( void  )

Return the excess molar enthalpy in J/mol.

Definition at line 525 of file AbstractState.cpp.

◆ hmolar_residual()

double CoolProp::AbstractState::hmolar_residual ( void  )

Return the residual molar enthalpy in J/mol.

Definition at line 521 of file AbstractState.cpp.

◆ ideal_curve()

void CoolProp::AbstractState::ideal_curve ( const std::string &  type,
std::vector< double > &  T,
std::vector< double > &  p 
)
inline

Calculate an ideal curve for a pure fluid.

Parameters
typeThe type of ideal curve you would like to calculate - "Ideal", "Boyle", "Joule-Thomson", "Joule Inversion", etc.
TThe temperatures along the curve in K
pThe pressures along the curve in Pa

Definition at line 1232 of file AbstractState.h.

◆ isentropic_expansion_coefficient()

double CoolProp::AbstractState::isentropic_expansion_coefficient ( void  )

Return the isentropic expansion coefficient \( \kappa_s = -\frac{c_p}{c_v}\frac{v}{p}\left.\frac{\partial p}{\partial v}\right|_T = \frac{\rho}{p}\left.\frac{\partial p}{\partial \rho}\right|_s\).

Definition at line 650 of file AbstractState.cpp.

◆ isHomogeneousPhase()

bool CoolProp::AbstractState::isHomogeneousPhase ( void  )
inlineprotected

Definition at line 90 of file AbstractState.h.

◆ isobaric_expansion_coefficient()

double CoolProp::AbstractState::isobaric_expansion_coefficient ( void  )

Return the isobaric expansion coefficient \( \beta = \frac{1}{v}\left.\frac{\partial v}{\partial T}\right|_p = -\frac{1}{\rho}\left.\frac{\partial \rho}{\partial T}\right|_p\) in 1/K.

Definition at line 647 of file AbstractState.cpp.

◆ isothermal_compressibility()

double CoolProp::AbstractState::isothermal_compressibility ( void  )

Return the isothermal compressibility \( \kappa = -\frac{1}{v}\left.\frac{\partial v}{\partial p}\right|_T=\frac{1}{\rho}\left.\frac{\partial \rho}{\partial p}\right|_T\) in 1/Pa.

Definition at line 644 of file AbstractState.cpp.

◆ isSupercriticalPhase()

bool CoolProp::AbstractState::isSupercriticalPhase ( void  )
inlineprotected

Definition at line 86 of file AbstractState.h.

◆ isTwoPhase()

bool CoolProp::AbstractState::isTwoPhase ( void  )
inlineprotected

Definition at line 94 of file AbstractState.h.

◆ keyed_output()

double CoolProp::AbstractState::keyed_output ( parameters  key)

Retrieve a value by key.

Definition at line 352 of file AbstractState.cpp.

◆ mass_to_molar_inputs()

void CoolProp::AbstractState::mass_to_molar_inputs ( CoolProp::input_pairs input_pair,
CoolPropDbl value1,
CoolPropDbl value2 
)
protectedvirtual

Convert mass-based input pair to molar-based input pair; If molar-based, do nothing.

< Mass density in kg/m^3, Temperature in K

< Entropy in J/kg/K, Temperature in K

< Mass density in kg/m^3, Pressure in Pa

< Mass density in kg/m^3, molar quality

< Enthalpy in J/kg, Pressure in Pa

< Pressure in Pa, Entropy in J/kg/K

< Pressure in Pa, Internal energy in J/kg

< Enthalpy in J/kg, Entropy in J/kg/K

< Entropy in J/kg/K, Internal energy in J/kg

< Mass density in kg/m^3, Enthalpy in J/kg

< Mass density in kg/m^3, Entropy in J/kg/K

< Mass density in kg/m^3, Internal energy in J/kg

Definition at line 200 of file AbstractState.cpp.

◆ melting_line()

double CoolProp::AbstractState::melting_line ( int  param,
int  given,
double  value 
)

Return a value from the melting line

Parameters
paramThe key for the parameter to be returned
givenThe key for the parameter that is given
valueThe value for the parameter that is given

Definition at line 604 of file AbstractState.cpp.

◆ molar_mass()

double CoolProp::AbstractState::molar_mass ( void  )

Return the molar mass in kg/mol.

Definition at line 617 of file AbstractState.cpp.

◆ mole_fractions_liquid()

std::vector< CoolPropDbl > CoolProp::AbstractState::mole_fractions_liquid ( void  )
inline

Get the mole fractions of the equilibrium liquid phase.

Definition at line 813 of file AbstractState.h.

◆ mole_fractions_liquid_double()

std::vector< double > CoolProp::AbstractState::mole_fractions_liquid_double ( void  )
inline

Get the mole fractions of the equilibrium liquid phase (but as a double for use in SWIG wrapper)

Definition at line 817 of file AbstractState.h.

◆ mole_fractions_vapor()

std::vector< CoolPropDbl > CoolProp::AbstractState::mole_fractions_vapor ( void  )
inline

Get the mole fractions of the equilibrium vapor phase.

Definition at line 823 of file AbstractState.h.

◆ mole_fractions_vapor_double()

std::vector< double > CoolProp::AbstractState::mole_fractions_vapor_double ( void  )
inline

Get the mole fractions of the equilibrium vapor phase (but as a double for use in SWIG wrapper)

Definition at line 827 of file AbstractState.h.

◆ name()

std::string CoolProp::AbstractState::name ( )
inline

Return the name - backend dependent.

Definition at line 1028 of file AbstractState.h.

◆ neff()

double CoolProp::AbstractState::neff ( void  )

Return the effective hardness of interaction.

Definition at line 537 of file AbstractState.cpp.

◆ p()

double CoolProp::AbstractState::p ( void  )
inline

Return the pressure in Pa.

Definition at line 1071 of file AbstractState.h.

◆ p_critical()

double CoolProp::AbstractState::p_critical ( void  )

Return the critical pressure in Pa.

Definition at line 496 of file AbstractState.cpp.

◆ p_triple()

double CoolProp::AbstractState::p_triple ( void  )

Return the triple point pressure in Pa.

Definition at line 499 of file AbstractState.cpp.

◆ phase()

phases CoolProp::AbstractState::phase ( void  )
inline

Get the phase of the state.

Definition at line 949 of file AbstractState.h.

◆ PIP()

double CoolProp::AbstractState::PIP ( )
inline

Return the phase identification parameter (PIP) of G. Venkatarathnam and L.R. Oellrich, "Identification of the phase of a fluid using partial derivatives of pressure, volume, and temperature without reference to saturation properties: Applications in phase equilibria calculations".

Definition at line 1216 of file AbstractState.h.

◆ pmax()

double CoolProp::AbstractState::pmax ( void  )

Get the maximum pressure in Pa.

Definition at line 484 of file AbstractState.cpp.

◆ Prandtl()

double CoolProp::AbstractState::Prandtl ( void  )
inline

Return the Prandtl number (dimensionless)

Definition at line 1443 of file AbstractState.h.

◆ Q()

double CoolProp::AbstractState::Q ( void  )
inline

Return the vapor quality (mol/mol); Q = 0 for saturated liquid.

Definition at line 1075 of file AbstractState.h.

◆ rhomass()

double CoolProp::AbstractState::rhomass ( void  )
inline

Return the mass density in kg/m^3.

Definition at line 1067 of file AbstractState.h.

◆ rhomass_critical()

double CoolProp::AbstractState::rhomass_critical ( void  )

Return the critical mass density in kg/m^3.

Definition at line 505 of file AbstractState.cpp.

◆ rhomass_reducing()

double CoolProp::AbstractState::rhomass_reducing ( void  )

Return the mass density at the reducing point in kg/m^3.

Definition at line 514 of file AbstractState.cpp.

◆ rhomolar()

double CoolProp::AbstractState::rhomolar ( void  )
inline

Return the molar density in mol/m^3.

Definition at line 1063 of file AbstractState.h.

◆ rhomolar_critical()

double CoolProp::AbstractState::rhomolar_critical ( void  )

Return the critical molar density in mol/m^3.

Definition at line 502 of file AbstractState.cpp.

◆ rhomolar_reducing()

double CoolProp::AbstractState::rhomolar_reducing ( void  )

Return the molar density at the reducing point in mol/m^3.

Definition at line 508 of file AbstractState.cpp.

◆ saturated_liquid_keyed_output()

double CoolProp::AbstractState::saturated_liquid_keyed_output ( parameters  key)
inline

Get an output from the saturated liquid state by key.

Definition at line 1050 of file AbstractState.h.

◆ saturated_vapor_keyed_output()

double CoolProp::AbstractState::saturated_vapor_keyed_output ( parameters  key)
inline

Get an output from the saturated vapor state by key.

Definition at line 1054 of file AbstractState.h.

◆ saturation_ancillary()

double CoolProp::AbstractState::saturation_ancillary ( parameters  param,
int  Q,
parameters  given,
double  value 
)

Return the value from a saturation ancillary curve (if the backend implements it)

Parameters
paramThe key for the parameter to be returned
QThe quality for the parameter that is given (0 = saturated liquid, 1 = saturated vapor)
givenThe key for the parameter that is given
valueThe value for the parameter that is given

Definition at line 610 of file AbstractState.cpp.

◆ second_partial_deriv()

CoolPropDbl CoolProp::AbstractState::second_partial_deriv ( parameters  Of1,
parameters  Wrt1,
parameters  Constant1,
parameters  Wrt2,
parameters  Constant2 
)
inline

The second partial derivative in homogeneous phases.

The first partial derivative (CoolProp::AbstractState::first_partial_deriv) can be expressed as

\[ \left(\frac{\partial A}{\partial B}\right)_C = \frac{\left(\frac{\partial A}{\partial T}\right)_\rho\left(\frac{\partial C}{\partial \rho}\right)_T-\left(\frac{\partial A}{\partial \rho}\right)_T\left(\frac{\partial C}{\partial T}\right)_\rho}{\left(\frac{\partial B}{\partial T}\right)_\rho\left(\frac{\partial C}{\partial \rho}\right)_T-\left(\frac{\partial B}{\partial \rho}\right)_T\left(\frac{\partial C}{\partial T}\right)_\rho} = \frac{N}{D}\]

and the second derivative can be expressed as

\[ \frac{\partial}{\partial D}\left(\left(\frac{\partial A}{\partial B}\right)_C\right)_E = \frac{\frac{\partial}{\partial T}\left( \left(\frac{\partial A}{\partial B}\right)_C \right)_\rho\left(\frac{\partial E}{\partial \rho}\right)_T-\frac{\partial}{\partial \rho}\left(\left(\frac{\partial A}{\partial B}\right)_C\right)_T\left(\frac{\partial E}{\partial T}\right)_\rho}{\left(\frac{\partial D}{\partial T}\right)_\rho\left(\frac{\partial E}{\partial \rho}\right)_T-\left(\frac{\partial D}{\partial \rho}\right)_T\left(\frac{\partial E}{\partial T}\right)_\rho} \]

which can be expressed in parts as

\[\left(\frac{\partial N}{\partial \rho}\right)_{T} = \left(\frac{\partial A}{\partial T}\right)_\rho\left(\frac{\partial^2 C}{\partial \rho^2}\right)_{T}+\left(\frac{\partial^2 A}{\partial T\partial\rho}\right)\left(\frac{\partial C}{\partial \rho}\right)_{T}-\left(\frac{\partial A}{\partial \rho}\right)_T\left(\frac{\partial^2 C}{\partial T\partial\rho}\right)-\left(\frac{\partial^2 A}{\partial \rho^2}\right)_{T}\left(\frac{\partial C}{\partial T}\right)_\rho\]

\[\left(\frac{\partial D}{\partial \rho}\right)_{T} = \left(\frac{\partial B}{\partial T}\right)_\rho\left(\frac{\partial^2 C}{\partial \rho^2}\right)_{T}+\left(\frac{\partial^2 B}{\partial T\partial\rho}\right)\left(\frac{\partial C}{\partial \rho}\right)_{T}-\left(\frac{\partial B}{\partial \rho}\right)_T\left(\frac{\partial^2 C}{\partial T\partial\rho}\right)-\left(\frac{\partial^2 B}{\partial \rho^2}\right)_{T}\left(\frac{\partial C}{\partial T}\right)_\rho\]

\[\left(\frac{\partial N}{\partial T}\right)_{\rho} = \left(\frac{\partial A}{\partial T}\right)_\rho\left(\frac{\partial^2 C}{\partial \rho\partial T}\right)+\left(\frac{\partial^2 A}{\partial T^2}\right)_\rho\left(\frac{\partial C}{\partial \rho}\right)_{T}-\left(\frac{\partial A}{\partial \rho}\right)_T\left(\frac{\partial^2 C}{\partial T^2}\right)_\rho-\left(\frac{\partial^2 A}{\partial \rho\partial T}\right)\left(\frac{\partial C}{\partial T}\right)_\rho\]

\[\left(\frac{\partial D}{\partial T}\right)_{\rho} = \left(\frac{\partial B}{\partial T}\right)_\rho\left(\frac{\partial^2 C}{\partial \rho\partial T}\right)+\left(\frac{\partial^2 B}{\partial T^2}\right)_\rho\left(\frac{\partial C}{\partial \rho}\right)_{T}-\left(\frac{\partial B}{\partial \rho}\right)_T\left(\frac{\partial^2 C}{\partial T^2}\right)_\rho-\left(\frac{\partial^2 B}{\partial \rho\partial T}\right)\left(\frac{\partial C}{\partial T}\right)_\rho\]

\[\frac{\partial}{\partial \rho}\left( \left(\frac{\partial A}{\partial B}\right)_C \right)_T = \frac{D\left(\frac{\partial N}{\partial \rho}\right)_{T}-N\left(\frac{\partial D}{\partial \rho}\right)_{\tau}}{D^2}\]

\[\frac{\partial}{\partial T}\left( \left(\frac{\partial A}{\partial B}\right)_C \right)_\rho = \frac{D\left(\frac{\partial N}{\partial T}\right)_{\rho}-N\left(\frac{\partial D}{\partial T}\right)_{\rho}}{D^2}\]

The terms \( N \) and \( D \) are the numerator and denominator from CoolProp::AbstractState::first_partial_deriv respectively

Definition at line 1271 of file AbstractState.h.

◆ second_saturation_deriv()

CoolPropDbl CoolProp::AbstractState::second_saturation_deriv ( parameters  Of1,
parameters  Wrt1,
parameters  Wrt2 
)
inline

The second partial derivative along the saturation curve.

Implementing the algorithms and ideas of: Matthis Thorade, Ali Saadat, "Partial derivatives of thermodynamic state properties for dynamic simulation", Environmental Earth Sciences, December 2013, Volume 70, Issue 8, pp 3497-3503

Like with first_saturation_deriv, we can express the derivative as

\[ \left(\frac{\partial y}{\partial T}\right)_{\sigma} = \left(\frac{\partial y}{\partial T}\right)+\left(\frac{\partial y}{\partial p}\right)\left(\frac{\partial p}{\partial T}\right)_{\sigma} \]

where \( y \) is already a saturation derivative. So you might end up with something like

\[ \left(\frac{\partial \left(\frac{\partial T}{\partial p}\right)_{\sigma}}{\partial T}\right)_{\sigma} = \left(\frac{\partial \left(\frac{\partial T}{\partial p}\right)_{\sigma}}{\partial T}\right)+\left(\frac{\partial \left(\frac{\partial T}{\partial p}\right)_{\sigma}}{\partial p}\right)\left(\frac{\partial p}{\partial T}\right)_{\sigma} \]

Parameters
Of1The parameter that the first derivative is taken of
Wrt1The parameter that the first derivative is taken with respect to
Wrt2The parameter that the second derivative is taken with respect to

Definition at line 1317 of file AbstractState.h.

◆ second_two_phase_deriv()

double CoolProp::AbstractState::second_two_phase_deriv ( parameters  Of,
parameters  Wrt1,
parameters  Constant1,
parameters  Wrt2,
parameters  Constant2 
)
inline

Calculate the second "two-phase" derivative as described by Thorade and Sadaat, EAS, 2013.

Implementing the algorithms and ideas of: Matthis Thorade, Ali Saadat, "Partial derivatives of thermodynamic state properties for dynamic simulation", Environmental Earth Sciences, December 2013, Volume 70, Issue 8, pp 3497-3503

Note
Not all derivatives are supported!
Parameters
OfThe parameter to be derived
Wrt1The parameter that the derivative is taken with respect to in the first derivative
Constant1The parameter that is held constant in the first derivative
Wrt2The parameter that the derivative is taken with respect to in the second derivative
Constant2The parameter that is held constant in the second derivative
Returns

Definition at line 1360 of file AbstractState.h.

◆ set_binary_interaction_double() [1/2]

virtual void CoolProp::AbstractState::set_binary_interaction_double ( const std::size_t  i,
const std::size_t  j,
const std::string &  parameter,
const double  value 
)
inlinevirtual

Set binary mixture floating point parameter (EXPERT USE ONLY!!!)

Reimplemented in CoolProp::VTPRBackend, CoolProp::HelmholtzEOSMixtureBackend, CoolProp::REFPROPMixtureBackend, and CoolProp::AbstractCubicBackend.

Definition at line 881 of file AbstractState.h.

◆ set_binary_interaction_double() [2/2]

virtual void CoolProp::AbstractState::set_binary_interaction_double ( const std::string &  CAS1,
const std::string &  CAS2,
const std::string &  parameter,
const double  value 
)
inlinevirtual

Set binary mixture floating point parameter (EXPERT USE ONLY!!!)

Reimplemented in CoolProp::AbstractCubicBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 877 of file AbstractState.h.

◆ set_binary_interaction_string() [1/2]

virtual void CoolProp::AbstractState::set_binary_interaction_string ( const std::size_t  i,
const std::size_t  j,
const std::string &  parameter,
const std::string &  value 
)
inlinevirtual

Set binary mixture string parameter (EXPERT USE ONLY!!!)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 890 of file AbstractState.h.

◆ set_binary_interaction_string() [2/2]

virtual void CoolProp::AbstractState::set_binary_interaction_string ( const std::string &  CAS1,
const std::string &  CAS2,
const std::string &  parameter,
const std::string &  value 
)
inlinevirtual

Set binary mixture string parameter (EXPERT USE ONLY!!!)

Definition at line 885 of file AbstractState.h.

◆ set_cubic_alpha_C()

virtual void CoolProp::AbstractState::set_cubic_alpha_C ( const size_t  i,
const std::string &  parameter,
const double  c1,
const double  c2,
const double  c3 
)
inlinevirtual

Set the cubic alpha function's constants:

Reimplemented in CoolProp::AbstractCubicBackend, and CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 910 of file AbstractState.h.

◆ set_fluid_parameter_double()

virtual void CoolProp::AbstractState::set_fluid_parameter_double ( const size_t  i,
const std::string &  parameter,
const double  value 
)
inlinevirtual

Set fluid parameter (currently the volume translation parameter for cubic)

Reimplemented in CoolProp::AbstractCubicBackend, and CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 914 of file AbstractState.h.

◆ set_mass_fractions()

virtual void CoolProp::AbstractState::set_mass_fractions ( const std::vector< CoolPropDbl > &  mass_fractions)
pure virtual

◆ set_mole_fractions()

virtual void CoolProp::AbstractState::set_mole_fractions ( const std::vector< CoolPropDbl > &  mole_fractions)
pure virtual

◆ set_reference_stateD()

virtual void CoolProp::AbstractState::set_reference_stateD ( double  T,
double  rhomolar,
double  hmolar0,
double  smolar0 
)
inlinevirtual

Set the reference state based on a thermodynamic state point specified by temperature and molar density

Parameters
TTemperature at reference state [K]
rhomolarMolar density at reference state [mol/m^3]
hmolar0Molar enthalpy at reference state [J/mol]
smolar0Molar entropy at reference state [J/mol/K]

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 789 of file AbstractState.h.

◆ set_reference_stateS()

virtual void CoolProp::AbstractState::set_reference_stateS ( const std::string &  reference_state)
inlinevirtual

Set the reference state based on a string representation.

Parameters
reference_stateThe reference state to use, one of
Reference State Description
"IIR" h = 200 kJ/kg, s=1 kJ/kg/K at 0C saturated liquid
"ASHRAE" h = 0, s = 0 @ -40C saturated liquid
"NBP" h = 0, s = 0 @ 1.0 bar saturated liquid
"DEF" Reset to the default reference state for the fluid
"RESET" Remove the offset

The offset in the ideal gas Helmholtz energy can be obtained from

\[ \displaystyle\frac{\Delta s}{R_u/M}+\frac{\Delta h}{(R_u/M)T}\tau \]

where \( \Delta s = s-s_{spec} \) and \( \Delta h = h-h_{spec} \)

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 779 of file AbstractState.h.

◆ set_T()

void CoolProp::AbstractState::set_T ( CoolPropDbl  T)
inline

Set the internal variable T without a flash call (expert use only!)

Definition at line 739 of file AbstractState.h.

◆ set_volu_fractions()

virtual void CoolProp::AbstractState::set_volu_fractions ( const std::vector< CoolPropDbl > &  mass_fractions)
inlinevirtual

◆ smass()

double CoolProp::AbstractState::smass ( void  )
inline

Return the molar entropy in J/kg/K.

Definition at line 1119 of file AbstractState.h.

◆ smass_excess()

double CoolProp::AbstractState::smass_excess ( void  )
inline

Return the molar entropy in J/kg/K.

Definition at line 1125 of file AbstractState.h.

◆ smolar()

double CoolProp::AbstractState::smolar ( void  )

Return the molar entropy in J/mol/K.

Definition at line 529 of file AbstractState.cpp.

◆ smolar_excess()

double CoolProp::AbstractState::smolar_excess ( void  )

Return the molar entropy in J/mol/K.

Definition at line 545 of file AbstractState.cpp.

◆ smolar_residual()

double CoolProp::AbstractState::smolar_residual ( void  )

Return the residual molar entropy (as a function of temperature and density) in J/mol/K.

Definition at line 533 of file AbstractState.cpp.

◆ specify_phase()

void CoolProp::AbstractState::specify_phase ( phases  phase)
inline

Specify the phase for all further calculations with this state class.

Definition at line 953 of file AbstractState.h.

◆ speed_sound()

double CoolProp::AbstractState::speed_sound ( void  )

Return the speed of sound in m/s.

Definition at line 592 of file AbstractState.cpp.

◆ surface_tension()

double CoolProp::AbstractState::surface_tension ( void  )

Return the surface tension in N/m.

Definition at line 613 of file AbstractState.cpp.

◆ T()

double CoolProp::AbstractState::T ( void  )
inline

Return the temperature in K.

Definition at line 1059 of file AbstractState.h.

◆ T_critical()

double CoolProp::AbstractState::T_critical ( void  )

Return the critical temperature in K.

Definition at line 487 of file AbstractState.cpp.

◆ T_reducing()

double CoolProp::AbstractState::T_reducing ( void  )

Return the reducing point temperature in K.

Definition at line 490 of file AbstractState.cpp.

◆ tangent_plane_distance()

double CoolProp::AbstractState::tangent_plane_distance ( const double  T,
const double  p,
const std::vector< double > &  w,
const double  rhomolar_guess = -1 
)
inline

Return the tangent plane distance for a given trial composition w

Parameters
TTemperature (K)
pPressure (Pa)
wThe trial composition
rhomolar_guess(mol/m^3) The molar density guess value (if <0 (default), not used; if >0, guess value will be used in flash evaluation)

\[ tpd(w) = \sum_i w_i(\ln w_i + \ln \phi_i(w) - d_i) \]

with

\[ d_i = \ln z_i + \ln \phi_i(z) \]

Or you can express the \( tpd \) in terms of fugacity (See Table 7.3 from GERG 2004 monograph) since \( \ln \phi_i = \ln f_i - \ln p -\ln z_i\) thus

\[ d_i = \ln f_i(z) - \ln p\]

and

\[ tpd(w) = \sum_i w_i(\ln f_i(w) - \ln p - d_i) \]

and the \( \ln p \) cancel, leaving

\[ tpd(w) = \sum_i w_i(\ln f_i(w) - \ln f_i(z)) \]

Definition at line 1013 of file AbstractState.h.

◆ tau()

double CoolProp::AbstractState::tau ( void  )

Return the reciprocal of the reduced temperature ( \(\tau = T_c/T\))

Definition at line 467 of file AbstractState.cpp.

◆ Tmax()

double CoolProp::AbstractState::Tmax ( void  )

Get the maximum temperature in K.

Definition at line 478 of file AbstractState.cpp.

◆ Tmin()

double CoolProp::AbstractState::Tmin ( void  )

Get the minimum temperature in K.

Definition at line 475 of file AbstractState.cpp.

◆ trivial_keyed_output()

double CoolProp::AbstractState::trivial_keyed_output ( parameters  key)

A trivial keyed output like molar mass that does not depend on the state.

Definition at line 290 of file AbstractState.cpp.

◆ true_critical_point()

void CoolProp::AbstractState::true_critical_point ( double &  T,
double &  rho 
)
inline

Calculate the "true" critical point for pure fluids where dpdrho|T and d2p/drho2|T are equal to zero.

Definition at line 1221 of file AbstractState.h.

◆ Ttriple()

double CoolProp::AbstractState::Ttriple ( void  )

Get the triple point temperature in K.

Definition at line 481 of file AbstractState.cpp.

◆ umass()

double CoolProp::AbstractState::umass ( void  )
inline

Return the mass internal energy in J/kg.

Definition at line 1131 of file AbstractState.h.

◆ umass_excess()

double CoolProp::AbstractState::umass_excess ( void  )
inline

Return the excess internal energy in J/kg.

Definition at line 1137 of file AbstractState.h.

◆ umolar()

double CoolProp::AbstractState::umolar ( void  )

Return the molar internal energy in J/mol.

Definition at line 549 of file AbstractState.cpp.

◆ umolar_excess()

double CoolProp::AbstractState::umolar_excess ( void  )

Return the excess internal energy in J/mol.

Definition at line 553 of file AbstractState.cpp.

◆ unspecify_phase()

void CoolProp::AbstractState::unspecify_phase ( void  )
inline

Unspecify the phase and go back to calculating it based on the inputs.

Definition at line 957 of file AbstractState.h.

◆ update()

virtual void CoolProp::AbstractState::update ( CoolProp::input_pairs  input_pair,
double  Value1,
double  Value2 
)
pure virtual

◆ update_QT_pure_superanc()

virtual void CoolProp::AbstractState::update_QT_pure_superanc ( double  Q,
double  T 
)
inlinevirtual

Update the state for QT inputs for pure fluids when using the superancillary functions.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 843 of file AbstractState.h.

◆ update_states()

virtual void CoolProp::AbstractState::update_states ( void  )
inlineprotectedvirtual

Update the states after having changed the reference state for enthalpy and entropy.

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend.

Definition at line 556 of file AbstractState.h.

◆ update_with_guesses()

virtual void CoolProp::AbstractState::update_with_guesses ( CoolProp::input_pairs  input_pair,
double  Value1,
double  Value2,
const GuessesStructure guesses 
)
inlinevirtual

Update the state using two state variables and providing guess values Some or all of the guesses will be used - this is backend dependent

Reimplemented in CoolProp::HelmholtzEOSMixtureBackend, and CoolProp::REFPROPMixtureBackend.

Definition at line 849 of file AbstractState.h.

◆ using_mass_fractions()

virtual bool CoolProp::AbstractState::using_mass_fractions ( void  )
pure virtual

◆ using_mole_fractions()

virtual bool CoolProp::AbstractState::using_mole_fractions ( void  )
pure virtual

◆ using_volu_fractions()

virtual bool CoolProp::AbstractState::using_volu_fractions ( void  )
pure virtual

◆ viscosity()

double CoolProp::AbstractState::viscosity ( void  )

Return the viscosity in Pa-s.

Definition at line 596 of file AbstractState.cpp.

◆ viscosity_contributions()

void CoolProp::AbstractState::viscosity_contributions ( CoolPropDbl dilute,
CoolPropDbl initial_density,
CoolPropDbl residual,
CoolPropDbl critical 
)
inline

Return the viscosity contributions, each in Pa-s.

Definition at line 1431 of file AbstractState.h.

◆ volumemass_excess()

double CoolProp::AbstractState::volumemass_excess ( void  )
inline

Return the excess volume in m^3/kg.

Definition at line 1187 of file AbstractState.h.

◆ volumemolar_excess()

double CoolProp::AbstractState::volumemolar_excess ( void  )

Return the excess volume in m^3/mol.

Definition at line 577 of file AbstractState.cpp.

Member Data Documentation

◆ _alpha0

CAE CoolProp::AbstractState::_alpha0 = cache.next()
protected

Cached low-level elements for in-place calculation of other properties.

Definition at line 135 of file AbstractState.h.

◆ _alphar

CAE CoolProp::AbstractState::_alphar = cache.next()
protected

Definition at line 136 of file AbstractState.h.

◆ _conductivity

CAE CoolProp::AbstractState::_conductivity = cache.next()
protected

Definition at line 116 of file AbstractState.h.

◆ _cp0molar

CAE CoolProp::AbstractState::_cp0molar = cache.next()
protected

Definition at line 118 of file AbstractState.h.

◆ _cpmolar

CAE CoolProp::AbstractState::_cpmolar = cache.next()
protected

Definition at line 118 of file AbstractState.h.

◆ _critical

SimpleState CoolProp::AbstractState::_critical
protected

Two important points.

Definition at line 102 of file AbstractState.h.

◆ _cvmolar

CAE CoolProp::AbstractState::_cvmolar = cache.next()
protected

Definition at line 118 of file AbstractState.h.

◆ _d2alpha0_dDelta2

CAE CoolProp::AbstractState::_d2alpha0_dDelta2 = cache.next()
protected

Definition at line 135 of file AbstractState.h.

◆ _d2alpha0_dDelta_dTau

CAE CoolProp::AbstractState::_d2alpha0_dDelta_dTau = cache.next()
protected

Definition at line 135 of file AbstractState.h.

◆ _d2alpha0_dTau2

CAE CoolProp::AbstractState::_d2alpha0_dTau2 = cache.next()
protected

Definition at line 135 of file AbstractState.h.

◆ _d2alphar_dDelta2

CAE CoolProp::AbstractState::_d2alphar_dDelta2 = cache.next()
protected

Definition at line 137 of file AbstractState.h.

◆ _d2alphar_dDelta2_lim

CAE CoolProp::AbstractState::_d2alphar_dDelta2_lim = cache.next()
protected

Definition at line 140 of file AbstractState.h.

◆ _d2alphar_dDelta_dTau

CAE CoolProp::AbstractState::_d2alphar_dDelta_dTau = cache.next()
protected

Definition at line 137 of file AbstractState.h.

◆ _d2alphar_dDelta_dTau_lim

CAE CoolProp::AbstractState::_d2alphar_dDelta_dTau_lim = cache.next()
protected

Definition at line 140 of file AbstractState.h.

◆ _d2alphar_dTau2

CAE CoolProp::AbstractState::_d2alphar_dTau2 = cache.next()
protected

Definition at line 136 of file AbstractState.h.

◆ _d3alpha0_dDelta2_dTau

CAE CoolProp::AbstractState::_d3alpha0_dDelta2_dTau = cache.next()
protected

Definition at line 136 of file AbstractState.h.

◆ _d3alpha0_dDelta3

CAE CoolProp::AbstractState::_d3alpha0_dDelta3 = cache.next()
protected

Definition at line 136 of file AbstractState.h.

◆ _d3alpha0_dDelta_dTau2

CAE CoolProp::AbstractState::_d3alpha0_dDelta_dTau2 = cache.next()
protected

Definition at line 136 of file AbstractState.h.

◆ _d3alpha0_dTau3

CAE CoolProp::AbstractState::_d3alpha0_dTau3 = cache.next()
protected

Definition at line 135 of file AbstractState.h.

◆ _d3alphar_dDelta2_dTau

CAE CoolProp::AbstractState::_d3alphar_dDelta2_dTau = cache.next()
protected

Definition at line 137 of file AbstractState.h.

◆ _d3alphar_dDelta2_dTau_lim

CAE CoolProp::AbstractState::_d3alphar_dDelta2_dTau_lim = cache.next()
protected

Definition at line 140 of file AbstractState.h.

◆ _d3alphar_dDelta3

CAE CoolProp::AbstractState::_d3alphar_dDelta3 = cache.next()
protected

Definition at line 137 of file AbstractState.h.

◆ _d3alphar_dDelta_dTau2

CAE CoolProp::AbstractState::_d3alphar_dDelta_dTau2 = cache.next()
protected

Definition at line 137 of file AbstractState.h.

◆ _d3alphar_dTau3

CAE CoolProp::AbstractState::_d3alphar_dTau3 = cache.next()
protected

Definition at line 137 of file AbstractState.h.

◆ _d4alphar_dDelta2_dTau2

CAE CoolProp::AbstractState::_d4alphar_dDelta2_dTau2 = cache.next()
protected

Definition at line 138 of file AbstractState.h.

◆ _d4alphar_dDelta3_dTau

CAE CoolProp::AbstractState::_d4alphar_dDelta3_dTau = cache.next()
protected

Definition at line 138 of file AbstractState.h.

◆ _d4alphar_dDelta4

CAE CoolProp::AbstractState::_d4alphar_dDelta4 = cache.next()
protected

Definition at line 138 of file AbstractState.h.

◆ _d4alphar_dDelta_dTau3

CAE CoolProp::AbstractState::_d4alphar_dDelta_dTau3 = cache.next()
protected

Definition at line 138 of file AbstractState.h.

◆ _d4alphar_dTau4

CAE CoolProp::AbstractState::_d4alphar_dTau4 = cache.next()
protected

Definition at line 137 of file AbstractState.h.

◆ _dalpha0_dDelta

CAE CoolProp::AbstractState::_dalpha0_dDelta = cache.next()
protected

Definition at line 135 of file AbstractState.h.

◆ _dalpha0_dTau

CAE CoolProp::AbstractState::_dalpha0_dTau = cache.next()
protected

Definition at line 135 of file AbstractState.h.

◆ _dalphar_dDelta

CAE CoolProp::AbstractState::_dalphar_dDelta = cache.next()
protected

Definition at line 136 of file AbstractState.h.

◆ _dalphar_dDelta_lim

CAE CoolProp::AbstractState::_dalphar_dDelta_lim = cache.next()
protected

Definition at line 140 of file AbstractState.h.

◆ _dalphar_dTau

CAE CoolProp::AbstractState::_dalphar_dTau = cache.next()
protected

Definition at line 136 of file AbstractState.h.

◆ _delta

CAE CoolProp::AbstractState::_delta = cache.next()
protected

Definition at line 113 of file AbstractState.h.

◆ _drho_spline_dh__constp

CAE CoolProp::AbstractState::_drho_spline_dh__constp = cache.next()
protected

Definition at line 132 of file AbstractState.h.

◆ _drho_spline_dp__consth

CAE CoolProp::AbstractState::_drho_spline_dp__consth = cache.next()
protected

Definition at line 132 of file AbstractState.h.

◆ _fluid_type

long CoolProp::AbstractState::_fluid_type
protected

Some administrative variables.

Definition at line 82 of file AbstractState.h.

◆ _fugacity_coefficient

CachedElement CoolProp::AbstractState::_fugacity_coefficient
protected

Definition at line 129 of file AbstractState.h.

◆ _gas_constant

CAE CoolProp::AbstractState::_gas_constant = cache.next()
protected

Universal gas constant [J/mol/K].

Definition at line 108 of file AbstractState.h.

◆ _gibbsmolar

CAE CoolProp::AbstractState::_gibbsmolar = cache.next()
protected

Definition at line 118 of file AbstractState.h.

◆ _gibbsmolar_excess

CAE CoolProp::AbstractState::_gibbsmolar_excess = cache.next()
protected

Definition at line 124 of file AbstractState.h.

◆ _gibbsmolar_residual

CAE CoolProp::AbstractState::_gibbsmolar_residual = cache.next()
protected

Definition at line 121 of file AbstractState.h.

◆ _helmholtzmolar

CAE CoolProp::AbstractState::_helmholtzmolar = cache.next()
protected

Definition at line 118 of file AbstractState.h.

◆ _helmholtzmolar_excess

CAE CoolProp::AbstractState::_helmholtzmolar_excess = cache.next()
protected

Definition at line 124 of file AbstractState.h.

◆ _hmolar

CAE CoolProp::AbstractState::_hmolar = cache.next()
protected

Definition at line 118 of file AbstractState.h.

◆ _hmolar_excess

CAE CoolProp::AbstractState::_hmolar_excess = cache.next()
protected

Excess properties.

Definition at line 124 of file AbstractState.h.

◆ _hmolar_residual

CAE CoolProp::AbstractState::_hmolar_residual = cache.next()
protected

Residual properties.

Definition at line 121 of file AbstractState.h.

◆ _logp

CAE CoolProp::AbstractState::_logp = cache.next()
protected

Definition at line 118 of file AbstractState.h.

◆ _logrhomolar

CAE CoolProp::AbstractState::_logrhomolar = cache.next()
protected

Definition at line 118 of file AbstractState.h.

◆ _molar_mass

CAE CoolProp::AbstractState::_molar_mass = cache.next()
protected

Molar mass [mol/kg].

Definition at line 105 of file AbstractState.h.

◆ _p

double CoolProp::AbstractState::_p
protected

Definition at line 111 of file AbstractState.h.

◆ _phase

phases CoolProp::AbstractState::_phase
protected

The key for the phase from CoolProp::phases enum.

Definition at line 83 of file AbstractState.h.

◆ _pLanc

CAE CoolProp::AbstractState::_pLanc = cache.next()
protected

Definition at line 127 of file AbstractState.h.

◆ _pVanc

CAE CoolProp::AbstractState::_pVanc = cache.next()
protected

Definition at line 127 of file AbstractState.h.

◆ _Q

double CoolProp::AbstractState::_Q
protected

Definition at line 111 of file AbstractState.h.

◆ _reducing

SimpleState CoolProp::AbstractState::_reducing
protected

Definition at line 102 of file AbstractState.h.

◆ _rho_spline

CAE CoolProp::AbstractState::_rho_spline = cache.next()
protected

Smoothing values.

Definition at line 132 of file AbstractState.h.

◆ _rhoLanc

CAE CoolProp::AbstractState::_rhoLanc = cache.next()
protected

Ancillary values.

Definition at line 127 of file AbstractState.h.

◆ _rhoLmolar

CAE CoolProp::AbstractState::_rhoLmolar = cache.next()
protected

Two-Phase variables.

Definition at line 143 of file AbstractState.h.

◆ _rhomolar

double CoolProp::AbstractState::_rhomolar
protected

Bulk values.

Definition at line 111 of file AbstractState.h.

◆ _rhoVanc

CAE CoolProp::AbstractState::_rhoVanc = cache.next()
protected

Definition at line 127 of file AbstractState.h.

◆ _rhoVmolar

CAE CoolProp::AbstractState::_rhoVmolar = cache.next()
protected

Definition at line 143 of file AbstractState.h.

◆ _smolar

CAE CoolProp::AbstractState::_smolar = cache.next()
protected

Definition at line 118 of file AbstractState.h.

◆ _smolar_excess

CAE CoolProp::AbstractState::_smolar_excess = cache.next()
protected

Definition at line 124 of file AbstractState.h.

◆ _smolar_residual

CAE CoolProp::AbstractState::_smolar_residual = cache.next()
protected

Definition at line 121 of file AbstractState.h.

◆ _speed_sound

CAE CoolProp::AbstractState::_speed_sound = cache.next()
protected

Definition at line 118 of file AbstractState.h.

◆ _surface_tension

CAE CoolProp::AbstractState::_surface_tension = cache.next()
protected

Definition at line 116 of file AbstractState.h.

◆ _T

double CoolProp::AbstractState::_T
protected

Definition at line 111 of file AbstractState.h.

◆ _tau

CAE CoolProp::AbstractState::_tau = cache.next()
protected

Definition at line 113 of file AbstractState.h.

◆ _TLanc

CAE CoolProp::AbstractState::_TLanc = cache.next()
protected

Definition at line 127 of file AbstractState.h.

◆ _TVanc

CAE CoolProp::AbstractState::_TVanc = cache.next()
protected

Definition at line 127 of file AbstractState.h.

◆ _umolar

CAE CoolProp::AbstractState::_umolar = cache.next()
protected

Definition at line 118 of file AbstractState.h.

◆ _umolar_excess

CAE CoolProp::AbstractState::_umolar_excess = cache.next()
protected

Definition at line 124 of file AbstractState.h.

◆ _viscosity

CAE CoolProp::AbstractState::_viscosity = cache.next()
protected

Transport properties.

Definition at line 116 of file AbstractState.h.

◆ _volumemolar_excess

CAE CoolProp::AbstractState::_volumemolar_excess = cache.next()
protected

Definition at line 124 of file AbstractState.h.

◆ cache

CacheArray<70> CoolProp::AbstractState::cache
protected

Definition at line 98 of file AbstractState.h.

◆ imposed_phase_index

phases CoolProp::AbstractState::imposed_phase_index
protected

If the phase is imposed, the imposed phase index.

Definition at line 84 of file AbstractState.h.


The documentation for this class was generated from the following files: