Add acentric factor accessor for REFPROP; closes #1193

This commit is contained in:
Ian Bell
2016-08-20 12:49:59 -06:00
parent a0997ab875
commit c5c0515a4d
2 changed files with 18 additions and 0 deletions

View File

@@ -685,6 +685,23 @@ CoolPropDbl REFPROPMixtureBackend::calc_rhomolar_reducing(){
REDXdll(&(mole_fractions[0]), &Tr, &rhored_mol_L);
return static_cast<CoolPropDbl>(rhored_mol_L*1000);
};
CoolPropDbl REFPROPMixtureBackend::calc_acentric_factor(){
// subroutine INFO (icomp,wmm,ttrp,tnbpt,tc,pc,Dc,Zc,acf,dip,Rgas) (see calc_Ttriple())
this->check_loaded_fluid();
double wmm,ttrp,tnbpt,tc,pc,Dc,Zc,acf,dip,Rgas;
long icomp = 1L;
// Check if more than one
std::size_t size = mole_fractions.size();
if (size == 1)
{
// Get value for first component
INFOdll(&icomp,&wmm,&ttrp,&tnbpt,&tc,&pc,&Dc,&Zc,&acf,&dip,&Rgas);
return static_cast<CoolPropDbl>(acf);
}
else{
throw CoolProp::ValueError("acentric factor only available for pure components in REFPROP backend");
}
};
CoolPropDbl REFPROPMixtureBackend::calc_Ttriple(){
// subroutine INFO (icomp,wmm,ttrp,tnbpt,tc,pc,Dc,Zc,acf,dip,Rgas)
// c

View File

@@ -180,6 +180,7 @@ public:
CoolPropDbl calc_rhomolar_critical(void);
CoolPropDbl calc_rhomolar_reducing(void);
CoolPropDbl calc_Ttriple(void);
CoolPropDbl calc_acentric_factor(void);
CoolPropDbl calc_gas_constant(void);
CoolPropDbl calc_dipole_moment(void);