1
$\begingroup$

I have a very serious problem. I want to integrate the function func symbolically. I've checked the result numerical which agrees with literature but I need the analytical expression of the computed integral. However, mathematica crashes after some time. Can somebody take a look at this and help me out

func = (1/(15 \[Pi]))2 (x (-2 + x + z) (15 x^3 + x^2 (-30 + 32 z) + 
      x (90 + 46 z + 7 z^2) + 2 (-75 + 32 z - 7 z^2 + z^3)) + 
   2 (-2 + x + z)^3 (-1 + x^2 + 2 x (-2 + z) - 4 z + z^2) Log[
     1 - x] - 
   2 (71 - 115 x + 40 x^2 + 5 (-23 + 4 x) z + 
      5 (14 - 9 x + 15 x^2) z^2 - 5 (7 - 8 x + 2 x^2) z^3 - 
      5 (-2 + x) z^4 - z^5) Log[-((-1 + z)/(-1 + x))] - 
   2 (-1 + x + z) (71 + x^4 - 44 z + 26 z^2 - 9 z^3 + z^4 + 
      x^3 (-9 + 4 z) + x^2 (26 - 27 z + 6 z^2) + 
      x (-44 + 52 z - 27 z^2 + 4 z^3)) Log[-1 + x + z] - 
   60 (-2 + x + z) (-1 + x + z) (Log[-1 + z]^2 - 
      Log[-((-1 + x + z)/(-1 + x))]^2)) Subscript[\[Alpha], S]

The integration is given as

Integrate[func, {z, 1, 2}, {x, s, (2 - z)}, 
 Assumptions -> {0 < s <= 0.9, 0 < Subscript[\[Alpha], S] < 1}]

Edit: I changed the integration because of some typos.

$\endgroup$
6
  • $\begingroup$ Please write an informative title—one that relates to the specific content of your question, not one that could apply to millions of unrelated questions. $\endgroup$ Commented Apr 23, 2020 at 17:25
  • 1
    $\begingroup$ Heaviside is not a built-in function. Have you defined it? Or did you mean HeavisideTheta? $\endgroup$ Commented Apr 23, 2020 at 17:29
  • $\begingroup$ Sorry that was a typo. Of course I meant HeavisideTheta $\endgroup$
    – NeAr
    Commented Apr 23, 2020 at 17:30
  • 4
    $\begingroup$ If 0 < s <= 9/10 then integral is Zero. $\endgroup$ Commented Apr 23, 2020 at 17:32
  • 1
    $\begingroup$ I cannot reproduce the crash with 12.1.0 on macOS. After several minutes of running, it returned a result. With crash issues, always post complete version and OS information, and include precise (reproducible) instructions on how to trigger the crash. $\endgroup$
    – Szabolcs
    Commented Apr 23, 2020 at 19:03

1 Answer 1

3
$\begingroup$

You have to help Mathematica (12.1 on Windows 10) a little bit, but then you can get an answer in a few minutes:

AbsoluteTiming[
 int1 = Integrate[func, x];
 int2 = Collect[Expand[ (int1 /. x -> (2 - z)) - ( int1 /. x -> s)], 
   s];
 int3 = Together@
   ParallelSum[PrintTemporary[j]; 
    Integrate[int2[[j]], {z, 1, 2}, 
     Assumptions -> {0 < s <= 0.9}], {j, Length@int2}];
 ]

The result is a bit messy and you may want to simplify the Log and PolyLog functions. Plotting can be done by:

p[s_] = int3 /. Subscript[\[Alpha], S] :> .5;
Plot[Chop[p[s]], {s, 0, .9}]

Which can be verified by comparing to

Plot[NIntegrate[
  Evaluate[func /. Subscript[\[Alpha], S] :> .5], {z, 1, 2}, {x, 
   s, (2 - z)}], {s, 0, .9}, AxesLabel -> {"s", "func"}]
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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