符号集成 returns 垃圾
Symbolic Integration returns garbage
我有以下积分,这是我通过其他来源计算出来的,以匹配给定的解决方案。然而,SymPy returns 的东西似乎是垃圾。为什么会这样?我是否没有明确建立 Mathematica 和 Integral Calculator 假设的东西?
from sympy import symbols, integrate, oo
x, z = symbols('x,z')
expr = 1/((x**2 + z**2)**(3/2))
integrate(expr, (x,-oo,oo))
给出以下结果:
我知道结果是:2/(z^2)
由于我不知道如何(或者甚至可能)在这里输入 LaTeX,下面是尝试的操作和期望的结果
你有 **(3 / 2)
,这是 float
。这是 SymPy
一直在努力解决的问题,也是 Gotchas and Pitfalls. I found this from the GitHub page integrate((x-t)**(-1/2)*t,(t,0,x)) raises ValueError 下提到的问题之一。
您需要确保您的指数是有理数。有几种方法可以做到这一点。下面,我们使用 S
(sympify):
from sympy import symbols, integrate, oo, S
x, z = symbols('x,z')
expr = 1/((x**2 + z**2)**(S(3)/2))
integrate(expr, (x,-oo,oo))
这给出了所需的输出。
我有以下积分,这是我通过其他来源计算出来的,以匹配给定的解决方案。然而,SymPy returns 的东西似乎是垃圾。为什么会这样?我是否没有明确建立 Mathematica 和 Integral Calculator 假设的东西?
from sympy import symbols, integrate, oo
x, z = symbols('x,z')
expr = 1/((x**2 + z**2)**(3/2))
integrate(expr, (x,-oo,oo))
给出以下结果:
我知道结果是:2/(z^2)
由于我不知道如何(或者甚至可能)在这里输入 LaTeX,下面是尝试的操作和期望的结果
你有 **(3 / 2)
,这是 float
。这是 SymPy
一直在努力解决的问题,也是 Gotchas and Pitfalls. I found this from the GitHub page integrate((x-t)**(-1/2)*t,(t,0,x)) raises ValueError 下提到的问题之一。
您需要确保您的指数是有理数。有几种方法可以做到这一点。下面,我们使用 S
(sympify):
from sympy import symbols, integrate, oo, S
x, z = symbols('x,z')
expr = 1/((x**2 + z**2)**(S(3)/2))
integrate(expr, (x,-oo,oo))
这给出了所需的输出。