CoolProp  6.6.0
An open-source fluid property and humid air property database
Classes | Namespaces | Enumerations | Functions
DataStructures.h File Reference
#include "CPnumerics.h"
#include "Exceptions.h"
#include <map>

Go to the source code of this file.

Classes

struct  CoolProp::SimpleState
 
struct  CoolProp::CriticalState
 
struct  CoolProp::SsatSimpleState
 A modified class for the state point at the maximum saturation entropy on the vapor curve. More...
 

Namespaces

 CoolProp
 Code for all the binary pairs in the mixture.
 

Enumerations

enum  CoolProp::parameters {
  CoolProp::INVALID_PARAMETER = 0 , CoolProp::igas_constant , CoolProp::imolar_mass , CoolProp::iacentric_factor ,
  CoolProp::irhomolar_reducing , CoolProp::irhomolar_critical , CoolProp::iT_reducing , CoolProp::iT_critical ,
  CoolProp::irhomass_reducing , CoolProp::irhomass_critical , CoolProp::iP_critical , CoolProp::iP_reducing ,
  CoolProp::iT_triple , CoolProp::iP_triple , CoolProp::iT_min , CoolProp::iT_max ,
  CoolProp::iP_max , CoolProp::iP_min , CoolProp::idipole_moment , CoolProp::iT ,
  CoolProp::iP , CoolProp::iQ , CoolProp::iTau , CoolProp::iDelta ,
  CoolProp::iDmolar , CoolProp::iHmolar , CoolProp::iSmolar , CoolProp::iCpmolar ,
  CoolProp::iCp0molar , CoolProp::iCvmolar , CoolProp::iUmolar , CoolProp::iGmolar ,
  CoolProp::iHelmholtzmolar , CoolProp::iHmolar_residual , CoolProp::iSmolar_residual , CoolProp::iGmolar_residual ,
  CoolProp::iDmass , CoolProp::iHmass , CoolProp::iSmass , CoolProp::iCpmass ,
  CoolProp::iCp0mass , CoolProp::iCvmass , CoolProp::iUmass , CoolProp::iGmass ,
  CoolProp::iHelmholtzmass , CoolProp::iviscosity , CoolProp::iconductivity , CoolProp::isurface_tension ,
  CoolProp::iPrandtl , CoolProp::ispeed_sound , CoolProp::iisothermal_compressibility , CoolProp::iisobaric_expansion_coefficient ,
  CoolProp::iisentropic_expansion_coefficient , CoolProp::ifundamental_derivative_of_gas_dynamics , CoolProp::ialphar , CoolProp::idalphar_dtau_constdelta ,
  CoolProp::idalphar_ddelta_consttau , CoolProp::ialpha0 , CoolProp::idalpha0_dtau_constdelta , CoolProp::idalpha0_ddelta_consttau ,
  CoolProp::id2alpha0_ddelta2_consttau , CoolProp::id3alpha0_ddelta3_consttau , CoolProp::iBvirial , CoolProp::iCvirial ,
  CoolProp::idBvirial_dT , CoolProp::idCvirial_dT , CoolProp::iZ , CoolProp::iPIP ,
  CoolProp::ifraction_min , CoolProp::ifraction_max , CoolProp::iT_freeze , CoolProp::iGWP20 ,
  CoolProp::iGWP100 , CoolProp::iGWP500 , CoolProp::iFH , CoolProp::iHH ,
  CoolProp::iPH , CoolProp::iODP , CoolProp::iPhase , CoolProp::iundefined_parameter
}
 
enum  CoolProp::phases {
  CoolProp::iphase_liquid , CoolProp::iphase_supercritical , CoolProp::iphase_supercritical_gas , CoolProp::iphase_supercritical_liquid ,
  CoolProp::iphase_critical_point , CoolProp::iphase_gas , CoolProp::iphase_twophase , CoolProp::iphase_unknown ,
  CoolProp::iphase_not_imposed
}
 These are constants for the phases of the fluid. More...
 
enum  CoolProp::schemes {
  CoolProp::i1 , CoolProp::i2a , CoolProp::i2b , CoolProp::i3a ,
  CoolProp::i3b , CoolProp::i4a , CoolProp::i4b , CoolProp::i4c
}
 Constants for the different PC-SAFT association schemes (see Huang and Radosz 1990) More...
 
enum  CoolProp::composition_types {
  CoolProp::IFRAC_MASS , CoolProp::IFRAC_MOLE , CoolProp::IFRAC_VOLUME , CoolProp::IFRAC_UNDEFINED ,
  CoolProp::IFRAC_PURE
}
 These are constants for the compositions. More...
 
enum  CoolProp::fluid_types {
  CoolProp::FLUID_TYPE_PURE , CoolProp::FLUID_TYPE_PSEUDOPURE , CoolProp::FLUID_TYPE_REFPROP , CoolProp::FLUID_TYPE_INCOMPRESSIBLE_LIQUID ,
  CoolProp::FLUID_TYPE_INCOMPRESSIBLE_SOLUTION , CoolProp::FLUID_TYPE_UNDEFINED
}
 These are unit types for the fluid. More...
 
enum  CoolProp::input_pairs {
  CoolProp::INPUT_PAIR_INVALID = 0 , CoolProp::QT_INPUTS , CoolProp::PQ_INPUTS , CoolProp::QSmolar_INPUTS ,
  CoolProp::QSmass_INPUTS , CoolProp::HmolarQ_INPUTS , CoolProp::HmassQ_INPUTS , CoolProp::DmolarQ_INPUTS ,
  CoolProp::DmassQ_INPUTS , CoolProp::PT_INPUTS , CoolProp::DmassT_INPUTS , CoolProp::DmolarT_INPUTS ,
  CoolProp::HmolarT_INPUTS , CoolProp::HmassT_INPUTS , CoolProp::SmolarT_INPUTS , CoolProp::SmassT_INPUTS ,
  CoolProp::TUmolar_INPUTS , CoolProp::TUmass_INPUTS , CoolProp::DmassP_INPUTS , CoolProp::DmolarP_INPUTS ,
  CoolProp::HmassP_INPUTS , CoolProp::HmolarP_INPUTS , CoolProp::PSmass_INPUTS , CoolProp::PSmolar_INPUTS ,
  CoolProp::PUmass_INPUTS , CoolProp::PUmolar_INPUTS , CoolProp::HmassSmass_INPUTS , CoolProp::HmolarSmolar_INPUTS ,
  CoolProp::SmassUmass_INPUTS , CoolProp::SmolarUmolar_INPUTS , CoolProp::DmassHmass_INPUTS , CoolProp::DmolarHmolar_INPUTS ,
  CoolProp::DmassSmass_INPUTS , CoolProp::DmolarSmolar_INPUTS , CoolProp::DmassUmass_INPUTS , CoolProp::DmolarUmolar_INPUTS
}
 These are input pairs that can be used for the update function (in each pair, input keys are sorted alphabetically) More...
 
enum  CoolProp::backend_families {
  CoolProp::INVALID_BACKEND_FAMILY = 0 , CoolProp::HEOS_BACKEND_FAMILY , CoolProp::REFPROP_BACKEND_FAMILY , CoolProp::INCOMP_BACKEND_FAMILY ,
  CoolProp::IF97_BACKEND_FAMILY , CoolProp::TREND_BACKEND_FAMILY , CoolProp::TTSE_BACKEND_FAMILY , CoolProp::BICUBIC_BACKEND_FAMILY ,
  CoolProp::SRK_BACKEND_FAMILY , CoolProp::PR_BACKEND_FAMILY , CoolProp::VTPR_BACKEND_FAMILY , CoolProp::PCSAFT_BACKEND_FAMILY
}
 The structure is taken directly from the AbstractState class. More...
 
enum  CoolProp::backends {
  CoolProp::INVALID_BACKEND = 0 , CoolProp::HEOS_BACKEND_PURE , CoolProp::HEOS_BACKEND_MIX , CoolProp::REFPROP_BACKEND_PURE ,
  CoolProp::REFPROP_BACKEND_MIX , CoolProp::INCOMP_BACKEND , CoolProp::IF97_BACKEND , CoolProp::TREND_BACKEND ,
  CoolProp::TTSE_BACKEND , CoolProp::BICUBIC_BACKEND , CoolProp::SRK_BACKEND , CoolProp::PR_BACKEND ,
  CoolProp::VTPR_BACKEND , CoolProp::PCSAFT_BACKEND
}
 

Functions

std::string CoolProp::get_parameter_information (int key, const std::string &info)
 
parameters CoolProp::get_parameter_index (const std::string &param_name)
 Return the enum key corresponding to the parameter name ("Dmolar" for instance) More...
 
bool CoolProp::is_valid_phase (const std::string &phase_name, phases &iOutput)
 
phases CoolProp::get_phase_index (const std::string &param_name)
 Return the enum key corresponding to the phase name ("phase_liquid" for instance) More...
 
bool CoolProp::is_valid_scheme (const std::string &scheme_name, schemes &iOutput)
 
schemes CoolProp::get_scheme_index (const std::string &scheme_name)
 Return the enum key corresponding to the association scheme name ("2B" for instance) More...
 
bool CoolProp::is_trivial_parameter (int key)
 Returns true if the input is trivial (constants, critical parameters, etc.) More...
 
bool CoolProp::is_valid_parameter (const std::string &name, parameters &iOutput)
 Returns true if a valid parameter, and sets value in the variable iOutput. More...
 
bool CoolProp::is_valid_first_derivative (const std::string &name, parameters &iOf, parameters &iWrt, parameters &iConstant)
 
bool CoolProp::is_valid_first_saturation_derivative (const std::string &name, parameters &iOf, parameters &iWrt)
 
bool CoolProp::is_valid_second_derivative (const std::string &name, parameters &iOf1, parameters &iWrt1, parameters &iConstant1, parameters &iWrt2, parameters &iConstant2)
 
std::string CoolProp::get_csv_parameter_list ()
 Return a list of parameters. More...
 
bool CoolProp::match_pair (parameters key1, parameters key2, parameters x1, parameters x2, bool &swap)
 
template<class T >
CoolProp::input_pairs CoolProp::generate_update_pair (parameters key1, T value1, parameters key2, T value2, T &out1, T &out2) throw ()
 Generate an update pair from key, value pairs. More...
 
input_pairs CoolProp::get_input_pair_index (const std::string &input_pair_name)
 Get the input pair index associated with its string representation. More...
 
const std::string & CoolProp::get_input_pair_short_desc (input_pairs pair)
 Return the short description of an input pair key ("DmolarT_INPUTS" for instance) More...
 
const std::string & CoolProp::get_input_pair_long_desc (input_pairs pair)
 Return the long description of an input pair key ("Molar density in mol/m^3, Temperature in K" for instance) More...
 
void CoolProp::split_input_pair (input_pairs pair, parameters &p1, parameters &p2)
 Split an input pair into parameters for the two parts that form the pair. More...
 
std::string CoolProp::get_mixture_binary_pair_data (const std::string &CAS1, const std::string &CAS2, const std::string &param)
 Get a string for the given binary pair. More...
 
void CoolProp::set_mixture_binary_pair_data (const std::string &CAS1, const std::string &CAS2, const std::string &param, const double val)
 Set a parameter for the given binary pair. More...
 
std::string CoolProp::get_mixture_binary_pair_pcsaft (const std::string &CAS1, const std::string &CAS2, const std::string &key)
 
void CoolProp::set_mixture_binary_pair_pcsaft (const std::string &CAS1, const std::string &CAS2, const std::string &key, const double value)
 
void CoolProp::extract_backend_families (std::string backend_string, backend_families &f1, backend_families &f2)
 Convert a string into the enum values. More...
 
void CoolProp::extract_backend_families_string (std::string backend_string, backend_families &f1, std::string &f2)
 
std::string CoolProp::get_backend_string (backends backend)