scipy integrate.tplquad 的不同结果
different result with scipy integrate.tplquad
对于 Matematica,这个积分给了我 3。wolfram alpha
使用 integrate.tplquad 我得到 -3。
这是 Matematica 代码。
Integrate[1-x, {(0,2),(0,3-1.5*x),(0,6-3*x -2*y)}]
我看不出我做错了什么 ntegrate.tplquad
f = lambda x,y,z: 1-x
x1, x2 = 0,2
y1, y2 = lambda x : 0 , lambda x:3-1.5*x
z1, z2 = lambda x,y:0, lambda x,y: 6 -3*x -2*y
print(integrate.tplquad(f,x1,x2, y1, y2, z1, z2)[0])
-3.0
仔细检查tplquad
docstring;您会看到函数 f
的签名是 f(z, y, x)
。所以看起来你的被积函数应该是:
f = lambda x, y, z: 1 - z
对于 Matematica,这个积分给了我 3。wolfram alpha
使用 integrate.tplquad 我得到 -3。
这是 Matematica 代码。
Integrate[1-x, {(0,2),(0,3-1.5*x),(0,6-3*x -2*y)}]
我看不出我做错了什么 ntegrate.tplquad
f = lambda x,y,z: 1-x
x1, x2 = 0,2
y1, y2 = lambda x : 0 , lambda x:3-1.5*x
z1, z2 = lambda x,y:0, lambda x,y: 6 -3*x -2*y
print(integrate.tplquad(f,x1,x2, y1, y2, z1, z2)[0])
-3.0
仔细检查tplquad
docstring;您会看到函数 f
的签名是 f(z, y, x)
。所以看起来你的被积函数应该是:
f = lambda x, y, z: 1 - z