Python 用Symphy和Mathematica对修正贝塞尔函数进行符号积分
我想用Python 用Symphy和Mathematica对修正贝塞尔函数进行符号积分,python,wolfram-mathematica,sympy,symbolic-math,Python,Wolfram Mathematica,Sympy,Symbolic Math,我想用symphy来解一个定积分,我知道Mathematica可以解这个定积分。在Mathematica中,使用以下行 Integrate[z^2 (BesselI[0, z^2] - BesselI[1, z^2]) Exp[-z^2], {z, 0, x}] 屈服 1/3 x^3 HypergeometricPFQ[{1/2,3/2},{1,5/2},-2 x^2]-1/10 x^5 HypergeometricPFQ[{3/2,5/2},{3,7/2},-2 x^2] 它更愿意将pyt
symphy
来解一个定积分,我知道Mathematica可以解这个定积分。在Mathematica中,使用以下行
Integrate[z^2 (BesselI[0, z^2] - BesselI[1, z^2]) Exp[-z^2], {z, 0, x}]
屈服
1/3 x^3 HypergeometricPFQ[{1/2,3/2},{1,5/2},-2 x^2]-1/10 x^5 HypergeometricPFQ[{3/2,5/2},{3,7/2},-2 x^2]
它更愿意将python
与sympy
结合使用,我尝试使用以下代码
import sympy;
x, z = sympy.var('x z');
sympy.integrate( z**2*(sympy.besseli(0,z**2)-sympy.besseli(1,z**2))*sympy.exp(-z**2) ,(z,0,x));
不幸的是,计算只是挂起。我等了30-40分钟就放弃了。在Mathematica中,不到一秒钟。如果我改变被积函数,那么我可以得到sympy
来求解它。比如
sympy.integrate( z**2*sympy.besseli(0,z**2) ,(z,0,x));
屈服
x**3*gamma(3/4)*hyper((3/4,), (1, 7/4), -x**4/4)/(4*gamma(7/4))
我是Mathematics的长期用户,对如何让Mathematics解决棘手的积分问题有很好的理解。作为一个新的sympy
用户,我缺乏这种经验
- 我可以添加一些标志吗李>
- 在
中是否有其他方法解决此问题symphy
- 如果使用
无法实现此积分,是否有办法了解Symphy的局限性?例如Symphy
如何将积分与Mathematica进行比较李>sympy