Added tests for new outputs

Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
This commit is contained in:
Ian Bell
2014-08-26 13:30:41 +02:00
parent 12d62b076b
commit f6a4f7e239
2 changed files with 24 additions and 10 deletions

View File

@@ -659,6 +659,13 @@ long double REFPROPMixtureBackend::calc_Ttriple(){
INFOdll(&icomp, &wmm, &ttrp, &tnbpt, &tc, &pc, &Dc, &Zc, &acf, &dip, &Rgas);
return static_cast<long double>(ttrp);
};
long double REFPROPMixtureBackend::calc_molar_mass(void)
{
double wmm_kg_kmol;
WMOLdll(&(mole_fractions[0]), &wmm_kg_kmol); // returns mole mass in kg/kmol
_molar_mass = wmm_kg_kmol/1000; // kg/mol
return static_cast<long double>(_molar_mass.pt());
};
double REFPROPMixtureBackend::calc_melt_Tmax()
{
@@ -1320,11 +1327,11 @@ TEST_CASE("Check REFPROP and CoolProp values agree","[REFPROP]")
shared_ptr<CoolProp::AbstractState> S1(CoolProp::AbstractState::factory("HEOS", (*it)));
double Tr = S1->T_critical();
S1->update(CoolProp::QT_INPUTS, 0, Tr*0.9);
CHECK_NOTHROW(S1->update(CoolProp::QT_INPUTS, 0, Tr*0.9););
double rho_CP = S1->rhomolar();
shared_ptr<CoolProp::AbstractState> S2(CoolProp::AbstractState::factory("REFPROP", RPName));
S2->update(CoolProp::QT_INPUTS, 0, Tr*0.9);
CHECK_NOTHROW(S2->update(CoolProp::QT_INPUTS, 0, Tr*0.9););
double rho_RP = S2->rhomolar();
CAPTURE(Name);
@@ -1381,12 +1388,12 @@ TEST_CASE("Check REFPROP and CoolProp values agree","[REFPROP]")
shared_ptr<CoolProp::AbstractState> S1(CoolProp::AbstractState::factory("HEOS", (*it)));
double Tr = S1->T_critical();
S1->update(CoolProp::QT_INPUTS, 0, 0.9*Tr);
CHECK_NOTHROW(S1->update(CoolProp::QT_INPUTS, 0, 0.9*Tr););
double h_CP = S1->hmass();
double s_CP = S1->smass();
shared_ptr<CoolProp::AbstractState> S2(CoolProp::AbstractState::factory("REFPROP", RPName));
S2->update(CoolProp::QT_INPUTS, 0, 0.9*Tr);
CHECK_NOTHROW(S2->update(CoolProp::QT_INPUTS, 0, 0.9*Tr););
double h_RP = S2->hmass();
double s_RP = S2->smass();
@@ -1405,4 +1412,16 @@ TEST_CASE("Check REFPROP and CoolProp values agree","[REFPROP]")
}
}
TEST_CASE("Check some inputs for REFPROP work","[REFPROP]")
{
SECTION("Critical parameters","")
{
CHECK(ValidNumber(CoolProp::PropsSI("PCRIT","P",0,"T",0,"REFPROP::R245FA")));
CHECK(ValidNumber(CoolProp::PropsSI("TCRIT","P",0,"T",0,"REFPROP::R245FA")));
CHECK(ValidNumber(CoolProp::PropsSI("RHOCRIT","P",0,"T",0,"REFPROP::R245FA")));
CHECK(ValidNumber(CoolProp::PropsSI("MOLEMASS","P",0,"T",0,"REFPROP::R245FA")));
}
}
#endif

View File

@@ -51,12 +51,7 @@ public:
double value2
);
long double calc_molar_mass(void){
if (!_molar_mass){
calc_molar_mass();
}
return _molar_mass.pt();
};
long double calc_molar_mass(void);
/// Returns true if REFPROP is supported on this platform
bool REFPROP_supported(void);