Ejemplo n.º 1
0
def ftrap(oldx,oldy):
    # Return double of the sample size
    newx = sp.arange(oldx[0],oldx[-1]+(0.5)*step,0.5*step)
    newy = sp.linspace(0,0,len(newx))
    return (newx,newy)
Ejemplo n.º 2
0
from scipy.integrate import quad
from scipy import linspace, cumsum, where
import matplotlib.pyplot as graph
import scipy.special as sp
from numpy import fabs

# The function that Quad uses
func=lambda x: 1/(1+x**2)
step=0.1
err=1
counter=0
steps = []

samples=sp.arange(0,5+step,step)
results = sp.linspace(0,0,len(samples))
manual= sp.linspace(0,0,len(samples))
estimated_errors, real_errors=[],[]

def integrate(samples,results):
	for i in range(len(samples)):
	# Compute Results with Quad
	    results[i]=quad(func,0,samples[i])[0]
	return results

def series(new_samples,new_results):
    # Compute manually using recursive summation
    new_results=step*(cumsum(func(new_samples)) - 0.5*(func(min(new_samples))+func(new_samples)))
    return new_results

def ftrap(oldx,oldy):
    # Return double of the sample size