假设我定义了函数 G,
def G(k, P, W):
return k**2*P*W**2
其中 P 和 W 是两个具有自变量 k 的函数,k 是一个定义的数字。
我正在尝试将其从 0 积分到无穷大
I = scipy.integrate.quad(G, 0, np.Inf)
将其输入到我的控制台中会出现错误,
G() 恰好需要 3 个参数(给定 2 个)
我尝试使用arg()
命令,但它似乎没有改变它,并且代码仍然很顽固。我做错了什么以及我错过了什么?
最佳答案
如果我理解正确的话,k是一个常数。然后你可以写:
k = 10
I = integrate.dblquad(lambda p,w: G(k,p,w), 0, np.Inf, lambda x: 0, lambda x: np.Inf)
在 scipy documentation 中找到它.
此外,您的积分看起来发散。
有关符号积分,请参阅 sympy.integrate 。这是一个不同的库。
import * from sympy
k,P,W = symbols('k P W')
integrate(G(k,P,W),P,W)
关于python - python中集成多个函数错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34111689/