From 781fb5b47aea8e96c4e3c972eb65358e6be0fe40 Mon Sep 17 00:00:00 2001 From: Ian Bell Date: Tue, 3 Jun 2014 18:52:54 +0200 Subject: [PATCH] Slight improvement in water critical conductivity term - all within 0.02% error now Signed-off-by: Ian Bell --- src/Backends/Helmholtz/TransportRoutines.cpp | 17 +++++++++-------- src/Tests/CoolProp-Tests.cpp | 14 +++++++------- 2 files changed, 16 insertions(+), 15 deletions(-) diff --git a/src/Backends/Helmholtz/TransportRoutines.cpp b/src/Backends/Helmholtz/TransportRoutines.cpp index 2076c791..ecf30110 100644 --- a/src/Backends/Helmholtz/TransportRoutines.cpp +++ b/src/Backends/Helmholtz/TransportRoutines.cpp @@ -226,12 +226,12 @@ long double TransportRoutines::viscosity_water_hardcoded(HelmholtzEOSMixtureBack double delta,tau,mubar_0,mubar_1,mubar_2,drhodp,drhodp_R,DeltaChibar,zeta,w,L,Y,psi_D,Tbar,rhobar; double drhobar_dpbar,drhobar_dpbar_R,R_Water; - pstar = 22.064e6; - Tstar = 647.096; - rhostar = 322; + pstar = 22.064e6; // [Pa] + Tstar = 647.096; // [K] + rhostar = 322; // [kg/m^3] Tbar = HEOS.T()/Tstar; - rhobar = HEOS.keyed_output(CoolProp::iDmass)/rhostar; - R_Water = HEOS.gas_constant()/HEOS.molar_mass(); + rhobar = HEOS.rhomass()/rhostar; + R_Water = HEOS.gas_constant()/HEOS.molar_mass(); // [J/kg/K] // Dilute and finite gas portions visc_Helper(Tbar, rhobar, &mubar_0, &mubar_1); @@ -678,9 +678,10 @@ long double TransportRoutines::conductivity_hardcoded_water(HelmholtzEOSMixtureB double drhobar_dpbar = pstar/rhostar*drhodp; double drhodp_Trbar = 1/(R*Tr_bar*Tstar*(1+2*rhobar*HEOS.calc_alphar_deriv_nocache(0,1,HEOS.mole_fractions,1/Tr_bar,delta)+delta*delta*HEOS.calc_alphar_deriv_nocache(0,2,HEOS.mole_fractions,1/Tr_bar,delta))); double drhobar_dpbar_Trbar = pstar/rhostar*drhodp_Trbar; - double cp = HEOS.cpmolar(); // [J/mol/K] - double cv = HEOS.cvmolar(); // [J/mol/K] - double cpbar = cp/8.31447215; //[-] + double cpmol = HEOS.cpmolar(); // [J/mol/K] + double cp = HEOS.cpmass(); // [J/kg/K] + double cv = HEOS.cvmass(); // [J/kg/K] + double cpbar = cp/R; //[-] double mubar = HEOS.viscosity()/mustar; double DELTAchibar_T = rhobar*(drhobar_dpbar-drhobar_dpbar_Trbar*Tr_bar/Tbar); if (DELTAchibar_T<0) diff --git a/src/Tests/CoolProp-Tests.cpp b/src/Tests/CoolProp-Tests.cpp index 71bd065b..977a18ed 100644 --- a/src/Tests/CoolProp-Tests.cpp +++ b/src/Tests/CoolProp-Tests.cpp @@ -397,13 +397,13 @@ vel("Water", "T", 298.15, "Dmass", 998, "L", 607.712868e-3, 1e-6), vel("Water", "T", 298.15, "Dmass", 1200, "L", 799.038144e-3, 1e-6), vel("Water", "T", 873.15, "Dmass", 1e-14, "L", 79.1034659e-3, 1e-6), vel("Water", "T", 647.35, "Dmass", 1, "L", 51.9298924e-3, 1e-6), -vel("Water", "T", 647.35, "Dmass", 122, "L", 130.922885e-3, 1e-6), -vel("Water", "T", 647.35, "Dmass", 222, "L", 367.787459e-3, 1e-6), -vel("Water", "T", 647.35, "Dmass", 272, "L", 757.959776e-3, 1e-6), -vel("Water", "T", 647.35, "Dmass", 322, "L", 1443.75556e-3, 1e-6), -vel("Water", "T", 647.35, "Dmass", 372, "L", 650.319402e-3, 1e-6), -vel("Water", "T", 647.35, "Dmass", 422, "L", 448.883487e-3, 1e-6), -vel("Water", "T", 647.35, "Dmass", 750, "L", 600.961346e-3, 1e-6), +vel("Water", "T", 647.35, "Dmass", 122, "L", 130.922885e-3, 2e-4), +vel("Water", "T", 647.35, "Dmass", 222, "L", 367.787459e-3, 2e-4), +vel("Water", "T", 647.35, "Dmass", 272, "L", 757.959776e-3, 2e-4), +vel("Water", "T", 647.35, "Dmass", 322, "L", 1443.75556e-3, 2e-4), +vel("Water", "T", 647.35, "Dmass", 372, "L", 650.319402e-3, 2e-4), +vel("Water", "T", 647.35, "Dmass", 422, "L", 448.883487e-3, 2e-4), +vel("Water", "T", 647.35, "Dmass", 750, "L", 600.961346e-3, 2e-4), // From Shan, ASHRAE, 2000 vel("R23", "T", 180, "Dmolar", 21097, "L", 143.19e-3, 1e-4),