Loading pysen/water_model.py +33 −0 Original line number Diff line number Diff line Loading @@ -393,3 +393,36 @@ def tx_model(t, Q, T, components='all'): return res.get(components) # =============================================================== # H2O and D2O viscosity parameterization # by Cho et al. J. Phys. Chem. B 103 (1999), 1991-1994 # =============================================================== def eta_h2o(T): """returns water viscosity in Pa*s T in Kelvin """ A = 802.25336e-3 a = 3.4741e-3 b =-1.7413e-5 c = 2.7719e-8 gamma = 1.53026 T0 = 225.334 # K dt = T-T0 return A*(dt+a*dt**2+b*dt**3+c*dt**4)**(-gamma) def eta_d2o(T): """returns heavy water viscosity in Pa*s T in Kelvin """ A = 885.60402e-3 a = 2.7990e-3 b =-1.6342e-5 c = 2.9067e-8 gamma = 1.55255 T0 = 231.832 # K dt = T-T0 return A*(dt+a*dt**2+b*dt**3+c*dt**4)**(-gamma) scripts/plot_transmission.py +1 −0 Original line number Diff line number Diff line Loading @@ -70,6 +70,7 @@ def main(): help="plot in semilogy") parser.add_argument('--tmin', '-t', type=int, dest='tmin') parser.add_argument('--tmax', '-T', type=int, dest='tmax') parser.add_argument('--save', '-s', dest='plotfile') parser.add_argument('--version', action='version', version='%(prog)s pysen={version}'.format(version=version())) Loading test/test_water_model.py +9 −0 Original line number Diff line number Diff line Loading @@ -59,5 +59,14 @@ class WaterModelTestCase(unittest.TestCase): self.assertAlmostEqual(wm.WHR_H(t, self.T) , 0.0363, 4) #self.assertAlmostEqual(wm.WRD_H(t, self.Q, self.T), 1.0 , 4) def test_viscosity(self): C = 273.15 self.assertAlmostEqual(wm.eta_h2o( 5.0+C)*1e3, 1.519, 3) self.assertAlmostEqual(wm.eta_h2o(20.0+C)*1e3, 1.002, 3) self.assertAlmostEqual(wm.eta_h2o(70.0+C)*1e3, 0.404, 3) self.assertAlmostEqual(wm.eta_d2o( 5.0+C)*1e3, 1.988, 3) self.assertAlmostEqual(wm.eta_d2o(20.0+C)*1e3, 1.251, 3) self.assertAlmostEqual(wm.eta_d2o(70.0+C)*1e3, 0.474, 3) if __name__ == "__main__": unittest.main(exit=False, verbosity=2) Loading
pysen/water_model.py +33 −0 Original line number Diff line number Diff line Loading @@ -393,3 +393,36 @@ def tx_model(t, Q, T, components='all'): return res.get(components) # =============================================================== # H2O and D2O viscosity parameterization # by Cho et al. J. Phys. Chem. B 103 (1999), 1991-1994 # =============================================================== def eta_h2o(T): """returns water viscosity in Pa*s T in Kelvin """ A = 802.25336e-3 a = 3.4741e-3 b =-1.7413e-5 c = 2.7719e-8 gamma = 1.53026 T0 = 225.334 # K dt = T-T0 return A*(dt+a*dt**2+b*dt**3+c*dt**4)**(-gamma) def eta_d2o(T): """returns heavy water viscosity in Pa*s T in Kelvin """ A = 885.60402e-3 a = 2.7990e-3 b =-1.6342e-5 c = 2.9067e-8 gamma = 1.55255 T0 = 231.832 # K dt = T-T0 return A*(dt+a*dt**2+b*dt**3+c*dt**4)**(-gamma)
scripts/plot_transmission.py +1 −0 Original line number Diff line number Diff line Loading @@ -70,6 +70,7 @@ def main(): help="plot in semilogy") parser.add_argument('--tmin', '-t', type=int, dest='tmin') parser.add_argument('--tmax', '-T', type=int, dest='tmax') parser.add_argument('--save', '-s', dest='plotfile') parser.add_argument('--version', action='version', version='%(prog)s pysen={version}'.format(version=version())) Loading
test/test_water_model.py +9 −0 Original line number Diff line number Diff line Loading @@ -59,5 +59,14 @@ class WaterModelTestCase(unittest.TestCase): self.assertAlmostEqual(wm.WHR_H(t, self.T) , 0.0363, 4) #self.assertAlmostEqual(wm.WRD_H(t, self.Q, self.T), 1.0 , 4) def test_viscosity(self): C = 273.15 self.assertAlmostEqual(wm.eta_h2o( 5.0+C)*1e3, 1.519, 3) self.assertAlmostEqual(wm.eta_h2o(20.0+C)*1e3, 1.002, 3) self.assertAlmostEqual(wm.eta_h2o(70.0+C)*1e3, 0.404, 3) self.assertAlmostEqual(wm.eta_d2o( 5.0+C)*1e3, 1.988, 3) self.assertAlmostEqual(wm.eta_d2o(20.0+C)*1e3, 1.251, 3) self.assertAlmostEqual(wm.eta_d2o(70.0+C)*1e3, 0.474, 3) if __name__ == "__main__": unittest.main(exit=False, verbosity=2)