假设我定义了我的函数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() takes exactly 3 arguments (2 given)
我尝试使用arg()
命令,但它似乎没有改变它,代码仍然固执。我做错了什么,我错过了什么?
答案 0 :(得分:2)
如果我理解正确,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)