4
$\begingroup$

I recently try this $$\int\frac{\mathop{\rm Si}(x)}x\,dx$$

Mathematica failed to calculate it.

Integrate[SinIntegral[x]/x, x]

Mma 11.3 failed,but 12.0 can do it.

Sympy gives the answer

from sympy import *
x = symbols("x")
print(integrate(Si(x)/x, x))

x*hyper((1/2, 1/2), (3/2, 3/2, 3/2), -x**2/4)

So I wanted to use the result in Mma.

enter image description here

I have searched in sympy's document,but still can't find solution.

https://docs.sympy.org/1.0/search.html?q=mathematica&check_keywords=yes&area=default

How can I directly get this function in mathematica?

I saw numpy can be used as follows:(add import numpy as np to the beginning,otherwise it will return wrong)

enter image description here

Which maybe helpful.

Add:

enter image description here

12.0 will return an object.But I temporaily don't know how to use it.(picture is from others)

$\endgroup$
  • $\begingroup$ Mathematica 12.0 can solve this integral... So why use SymPy? $\endgroup$ – user6014 Jan 7 at 14:51
  • 3
    $\begingroup$ @user6014 because it's useful to put several tools together. Besides,I temporarily use 11.3. $\endgroup$ – wuyudi Jan 7 at 15:24
  • 1
    $\begingroup$ @user6014 Some users may not have access to Mathematica 12.0 yet either, unfortunately. It can be quite expensive. $\endgroup$ – Michael A Jan 7 at 15:31
  • 1
    $\begingroup$ Are you interested in sympy-based solutions that work only in Mathematica 12.0? Mathematica's Python interface became much better in 12.0. $\endgroup$ – Szabolcs Jan 8 at 8:31
  • $\begingroup$ @Szabolcs ,So it's very interesting. 11.3 can't solve it, but 12.0 can. 11.3 can't interface with python well, but 12.0 can.Seems the solution is to upgrade to 12.0.😂 $\endgroup$ – wuyudi Jan 8 at 9:18
2
$\begingroup$

As an alternative, you may use Rubi:

Get["Rubi`"]
Int[SinIntegral[x]/x, x]

1/2 x HypergeometricPFQ[{1, 1, 1}, {2, 2, 2}, -I x] + 1/2 x HypergeometricPFQ[{1, 1, 1}, {2, 2, 2}, I x]

|improve this answer|||||
$\endgroup$
  • $\begingroup$ so it seems like this: 11.3 use Rubi can solve it. 12.0 can solve it directly. 12.0 can also use sympy to solve it. $\endgroup$ – wuyudi Jan 8 at 9:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.