Python Forum
Getting an unexpected generator object ?
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Getting an unexpected generator object ?
#20
I think that h should be a function of n...
But to change it you'll have to think about trapezoidal(f,a,b,n) and check if it's really returning what are you expecting.

For now...
from scipy import integrate
import matplotlib.pyplot as plt


a=0
b=1
n=500
h=(b-a)/(n)

def f(x):
    return x**2

def trapezoidal(f,a,b,n):
    return (h/2)*(f(a)+f(b))+h*( sum(f(a+h*i)  for i in range(1, (n-1))))

print(trapezoidal(f,a,b,n))

# Why this?
lambda x: f(x)

c= integrate.quad(f,0,1)
print(c)

error_list=[abs(trapezoidal(f,a,b,n)-c[0]) for n in range (300,900)]
print(error_list)
plt.plot(error_list, [(b-a)/(n) for n in range(300, 900)])
plt.show()
Like I said, you need to check the Math.
Maybe you can use numpy.trapz.
Reply


Messages In This Thread
RE: Getting an unexpected generator object ? - by gontajones - Mar-29-2019, 11:35 AM

Possibly Related Threads…
Thread Author Replies Views Last Post
  Creating list of lists from generator object t4keheart 1 2,205 Nov-13-2020, 04:59 AM
Last Post: perfringo
  unexpected object? urufu 2 2,011 Mar-08-2020, 02:35 PM
Last Post: urufu
  receive from a generator, send to a generator Skaperen 9 5,503 Feb-05-2018, 06:26 AM
Last Post: Skaperen

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020