def test_exp(self): fn = lambda x : exp(x) a = 1 b = 1 self.assertEqual(romberg(a, b, fn, 10), 0) fn = lambda x : exp(x) a = 0 b = 1 self.assertAlmostEqual(romberg(a, b, fn, 10), exp(1) - 1, places = 10)
def test_log(self): fn = lambda x : 1/x #integration of 1/x = log(x) a = 5 b = 10 self.assertAlmostEqual(romberg(a, b , fn, 10), log(2))
from numericalmethods.romberg import * fn = lambda x : exp(-x) a = 3 b = 10 print(romberg(a, b, fn, 4)) a = 0 b = 1 fn2 = lambda x : 1 / (1 + x) print(romberg(a, b, fn2, 3))
def test_const(self): fn = lambda x : 1 a = 32 b = 50 self.assertEqual(romberg(a, b, fn, 10), b - a)
from numericalmethods.romberg import * fn = lambda x: exp(-x) a = 3 b = 10 print(romberg(a, b, fn, 4)) a = 0 b = 1 fn2 = lambda x: 1 / (1 + x) print(romberg(a, b, fn2, 3))