以下代码
from sympy import *
r = Symbol('r', real=True, positive=True)
a = Symbol('a', real=True, positive=True)
Integral(1/r**2,(r,oo,a)).doit()
导致一个错误
TypeError: bad operand type for unary -: 'tuple'
鉴于
-Integral(1/r**2,(r,a,oo)).doit()
给出了正确的结果:-1/a
。
此外,降低了对a
域的限制
r = Symbol('r', real=True, positive=True)
a = Symbol('a')
Integral(1/r**2,(r,oo,a)).doit()
也给出了正确的结果。
这是sympy
中的一个bug,还是这里出了什么问题?
编辑:从无限到正值的集成是完全有效的。正如我在给@BenT的评论中所写的那样,Mathematica做得很对。
发布于 2017-10-25 16:36:12
我可以确认这是sympy
中的一个bug。我在他们的github (https://github.com/sympy/sympy/issues/13536)中打开了一个问题,这个问题很快就会解决。
https://stackoverflow.com/questions/46926912
复制相似问题