# Script to illustrate the use of the Simpson rule of SciPy # on the approximation of Pi/4 via the area under sqrt(1 - x^2) # above the x-axis. # If the script is called simpson4py, # run it typing at the command prompt $ # $ time python simpson4py.py from scipy.integrate import simps from scipy import sqrt, linspace, pi f = lambda x: sqrt(1-x**2) x = linspace(0,1,100); y = f(x) I = 4*simps(y,x); print '10^2', I, abs(I - pi) x = linspace(0,1,1000); y = f(x) I = 4*simps(y,x); print '10^3', I, abs(I - pi) x = linspace(0,1,10000); y = f(x) I = 4*simps(y,x); print '10^4', I, abs(I - pi) x = linspace(0,1,100000); y = f(x) I = 4*simps(y,x); print '10^5', I, abs(I - pi) x = linspace(0,1,1000000); y = f(x) I = 4*simps(y,x); print '10^6', I, abs(I - pi) x = linspace(0,1,10000000); y = f(x) I = 4*simps(y,x); print '10^7', I, abs(I - pi)