Advertisement
Guest User

prSimp

a guest
Jan 23rd, 2018
54
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.92 KB | None | 0 0
  1. from numpy import *
  2. from pylab import *
  3. from scipy import integrate
  4.  
  5. def f(x):
  6. return log(x+3)
  7. def AbsD4f(x):
  8. return abs(-6/(x+3)**4)
  9.  
  10. a = 2.
  11. b = 4.
  12. eps = 1.e-8
  13.  
  14. x = linspace(a,b,100)
  15. plot(x,AbsD4f(x),2.,AbsD4f(2.),'go')
  16. grid()
  17. show()
  18.  
  19.  
  20. M4=AbsD4f(2.)
  21. n=ceil((b-a)*((M4*(b-a))/(180.*eps))**(1./4.))
  22.  
  23. if n%2!=0:
  24. print 'Dobili smo %s podsegmenata sto je neparan broj pa dodajemo jos jedan podsegment.' %n
  25. m=n+1
  26. print 'Broj podsegmenata na koji treba podijeliti pocetni segment [0,3]: n=', m
  27. else:
  28. m=n
  29. print 'Broj podsegmenata na koji treba podijeliti pocetni segment [0,3]: n=', m
  30.  
  31. x=linspace(a,b,m+1)
  32. y=f(x)
  33. iSimp=integrate.simps(y,x)
  34. print 'Rjesenje integrala koristeci Simpsonovu funkciju: I*=', iSimp
  35.  
  36. integral=-2-5*log(5)+7*log(7)
  37. print ('Rjesenje integrala: I=', integral)
  38.  
  39. h =(b-a)/n
  40. print ('Apsolutna greska produljene Simpsonove formule: A<=', (b-a)/180.*h**4*M4)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement