def test_ip_theta_pi_at_sigma_is_p_irr(self): import math D = 1e-12 sigma = 1e-8 kf = 0 t = 1e-5 r0 = sigma r = r0 + math.sqrt(6 * D * t) gf = mod.GreensFunction3DRadInf(D, kf, r0, sigma) ip = gf.ip_theta(numpy.pi, r, t) * (2 * numpy.pi * r * r) pirr = mod.p_irr(r, t, r0, kf, D, sigma) pcorr = gf.ip_corr(numpy.pi, r, t) * (2 * numpy.pi * r * r) pfree = gf.ip_free(numpy.pi, r, t) * (2 * numpy.pi * r * r) self.assertNotAlmostEqual(pirr, pfree, 7, 'pcorr estimated to be too small.' + \ ' test may not be valid.') #print 'PP', pirr, ip, pcorr, pfree self.assertNotEqual(0.0, ip) self.assertAlmostEqual(ip/pirr, 1)
def test_ip_theta_pi_is_p_irr(self): D = 1e-12 sigma = 1e-8 kf = 0 t = 1e-3 r0 = 1.1e-8 r = r0 gf = mod.BasicPairGreensFunction(D, kf, sigma) ip = gf.ip_theta(numpy.pi, r, r0, t) * (2 * numpy.pi * r * r) pirr = mod.p_irr(r, t, r0, kf, D, sigma) pcorr = gf.ip_corr(numpy.pi, r, r0, t) * (2 * numpy.pi * r * r) pfree = gf.ip_free(numpy.pi, r, r0, t) * (2 * numpy.pi * r * r) self.assertNotAlmostEqual(pirr, pfree, 6, 'pcorr estimated to be too small.' + \ ' test may not be valid.') #print 'PP', pirr, ip, pcorr, pfree self.assertNotEqual(0.0, ip) self.assertAlmostEqual(ip/pirr, 1)
def test_ip_theta_pi_at_sigma_is_p_irr(self): import math D = 1e-12 sigma = 1e-8 kf = 0 t = 1e-5 r0 = sigma r = r0 + math.sqrt(6 * D * t) gf = mod.BasicPairGreensFunction(D, kf, sigma) ip = gf.ip_theta(numpy.pi, r, r0, t) * (2 * numpy.pi * r * r) pirr = mod.p_irr(r, t, r0, kf, D, sigma) pcorr = gf.ip_corr(numpy.pi, r, r0, t) * (2 * numpy.pi * r * r) pfree = gf.ip_free(numpy.pi, r, r0, t) * (2 * numpy.pi * r * r) self.assertNotAlmostEqual(pirr, pfree, 7, 'pcorr estimated to be too small.' + \ ' test may not be valid.') #print 'PP', pirr, ip, pcorr, pfree self.assertNotEqual(0.0, ip) self.assertAlmostEqual(ip / pirr, 1)
def test_ip_theta_pi_is_p_irr(self): D = 1e-12 sigma = 1e-8 kf = 0 t = 1e-3 r0 = 1.1e-8 r = r0 gf = mod.GreensFunction3DRadInf(D, kf, r0, sigma) ip = gf.ip_theta(numpy.pi, r, t) * (2 * numpy.pi * r * r) pirr = mod.p_irr(r, t, r0, kf, D, sigma) pcorr = gf.ip_corr(numpy.pi, r, t) * (2 * numpy.pi * r * r) pfree = gf.ip_free(numpy.pi, r, t) * (2 * numpy.pi * r * r) self.assertNotAlmostEqual(pirr, pfree, 6, 'pcorr estimated to be too small.' + \ ' test may not be valid.') #print 'PP', pirr, ip, pcorr, pfree self.assertNotEqual(0.0, ip) self.assertAlmostEqual(ip / pirr, 1)
def p_irr(r, t, r0, kf, D, sigma): return _greens_functions.p_irr(r, t, r0, kf, D, sigma)