def _visco0(self, rho, T, fase): """IAPWS, Release on the IAPWS Formulation 2008 for the Viscosity of \ Ordinary Water Substance (International Association for the Properties of \ Water and Steam, 2008)""" ref = H2O() ref._ref("OTO") estado = ref._Helmholtz(rho, 1.5*647.096) drho = 1/estado["dpdrho"]*1e3 return _Viscosity(rho, T, fase=fase, drho=drho)
def _visco0(self, rho, T, fase): ref = H2O() ref._ref(False) estado = ref._eq(rho, 1.5*self.Tc) delta = estado["delta"] fird = estado["fird"] firdd = estado["firdd"] dpdrho = self.R*estado["T"]*(1+2*delta*fird+delta**2*firdd) drho = 1/dpdrho*1e6 # convert ∂ρ/∂P]τ to IAPWS units, [kg/m³·MPa] if fase: fase = copy(fase) fase.drhodP_T *= 1e6 mu = _Viscosity(rho, T, fase=fase, drho=drho) return unidades.Viscosity(mu)
def test_Viscosity(self): # Table 6, pag 116 self.assertEqual(round(_Viscosity(998, 298.15)*1e6, 6), 889.735100) self.assertEqual(round(_Viscosity(1200, 298.15)*1e6, 6), 1437.649467) self.assertEqual(round(_Viscosity(1000, 373.15)*1e6, 6), 307.883622) self.assertEqual(round(_Viscosity(1, 433.15)*1e6, 6), 14.538324) self.assertEqual(round(_Viscosity(1000, 433.15)*1e6, 6), 217.685358) self.assertEqual(round(_Viscosity(1, 873.15)*1e6, 6), 32.619287) self.assertEqual(round(_Viscosity(100, 873.15)*1e6, 6), 35.802262) self.assertEqual(round(_Viscosity(600, 873.15)*1e6, 6), 77.430195) self.assertEqual(round(_Viscosity(1, 1173.15)*1e6, 6), 44.217245) self.assertEqual(round(_Viscosity(100, 1173.15)*1e6, 6), 47.640433) self.assertEqual(round(_Viscosity(400, 1173.15)*1e6, 6), 64.154608) # Table 7, pag 116 fluid = H2O(rho=122, T=647.35) self.assertEqual(round(fluid.mu.muPas, 6), 25.520677) fluid = H2O(rho=222, T=647.35) self.assertEqual(round(fluid.mu.muPas, 6), 31.337589) fluid = H2O(rho=272, T=647.35) self.assertEqual(round(fluid.mu.muPas, 6), 36.228143) fluid = H2O(rho=322, T=647.35) self.assertEqual(round(fluid.mu.muPas, 6), 42.961579) fluid = H2O(rho=372, T=647.35) self.assertEqual(round(fluid.mu.muPas, 6), 45.688204) fluid = H2O(rho=422, T=647.35) self.assertEqual(round(fluid.mu.muPas, 6), 49.436256)