我正在尝试在 Python 中实现 欧拉方法 来近似计算 e 的值。以下是我的代码:
def Euler(f, t0, y0, h, N):
t = t0 + arange(N+1)*h
y = zeros(N+1)
y[0] = y0
for n in range(N):
y[n+1] = y[n] + h*f(t[n], y[n])
f = (1+(1/N))^N
return y
然而,当我尝试调用该函数时,出现错误“ValueError: shape <= 0”。我怀疑这与我如何定义f有关?我尝试在调用euler时直接输入f,但是出现了与变量未定义相关的错误。我还尝试将f定义为自己的函数,但是出现了除以0的错误。
def f(N):
for n in range(N):
return (1+(1/n))^n
(不确定在这里使用N是否合适......)