Esercizio: scrivere un programma che data una funzione calcoli
nel modo sopra descritto ilvalore dell'integrale nell'intervallo.
Calcolare quindi
e
valutare l'effetto dello step di integrazione
.
Un esempio di soluzione può essere
def integ(f,a,b,h=0.1):
''' integral of f(x) assuming a < b'''
x=a
sum=0.0
while x <=b:
sum = sum + f(x+h/2.0)*h
x = x + h
return sum
if __name__ == '__main__':
import math
a,b=(0.0,math.pi/2.0)
f=math.cos
intf=math.sin
print "h =",0.5
print a,b,"intfunc",intf(b)-intf(a),"intNum",integ(f,a,b,0.5)
print "h =",0.01
print a,b,"intfunc",intf(b)-intf(a),"intNum",integ(f,a,b,0.01)
print "h =",0.00001
print a,b,"intfunc",intf(b)-intf(a),"intNum",integ(f,a,b,0.00001)