我試圖實現euler's method來近似py的值e。這是我到目前爲止有:在python中的歐拉方法
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異常:形狀< = 0」。我懷疑這與我如何定義f有關?當euler被調用時,我嘗試直接輸入f,但是給了我沒有被定義的變量相關的錯誤。我也嘗試將f定義爲它自己的函數,這給了我一個0錯誤的分割。
def f(N):
for n in range(N):
return (1+(1/n))^n
(不知道如果N是適當的變量用在這裏...)
您的代碼中存在很多問題,但我希望首先看到錯誤的整個後臺跟蹤,複製並粘貼您的問題,以及您如何調用「Euler」。你能用這些信息完成你的問題嗎? Tia – gboffi