我不能在python整合此(1/1 + T))+( - 1/EXP(t))的[0,np.inf]我不能整合數學範圍錯誤原因
import numpy as np
from math import exp
from scipy.integrate import quad
print(quad(lamba t: (1/1+t))+(-1/exp(t)),0,np.inf)
它必須表現出歐拉恆
我不能在python整合此(1/1 + T))+( - 1/EXP(t))的[0,np.inf]我不能整合數學範圍錯誤原因
import numpy as np
from math import exp
from scipy.integrate import quad
print(quad(lamba t: (1/1+t))+(-1/exp(t)),0,np.inf)
它必須表現出歐拉恆
順便說一句,結合成爲一體,你將永遠不會有歐拉常數。
歐拉常數定義爲(抱歉,我不能發表圖片):
所以,你有你的lambda
功能更改爲以下:
import numpy as np
from math import exp
from scipy.integrate import quad
f = lambda t: 1/t * (1/(1+t) - exp(-t))
In [21]: quad(f, 0.0, np.inf)
Out[21]: (0.5772156649015537, 3.613579096292482e-10)
結果0.5772156649015537
這是歐拉常數的值。
如此評論!!你解決了我的問題 – Davidmp11
你寫lamba
代替lambda
,這應引起SyntaxError
。
此外,閱讀你的公式,你傳遞給函數而應是:
lambda t: 1/(1+t) - exp(-t)
試着改變你的最後一行:
print(quad(lambda t: (1/(1+t) - exp(-t)), 0, np.inf))
有兩件事:'labda' sould是'lambda'; (1/1 + t)= 1 + t'而不是'(1 /(1 + t))'。 –
你可以編輯你的文章,以添加完整的跟蹤? –
@hiroprotagonist評論前請仔細閱讀。在等式(「膠乳版本」)中,它是「-exp(-x)」,嚴格等於'-1/exp(t)'。 '-exp(t)'是錯誤的。 –