I have the following parameter c1 that I wish to integrate analytically (I need a close form expression in order to study them in detail):

c1 = ((4 Γ (16 g2^4 + 8 g2^2 (κ1 κ2 - 4 ω^2) + (κ1^2 + 4 ω^2) (κ2^2 + 4 ω^2)))/(16 g2^4 (Γ^2 + 4 ω^2) + (κ2^2 + 4 ω^2) (16 g1^4 + 8 g1^2 (Γ κ1 - 4 ω^2) + (Γ^2 + 4 ω^2) (κ1^2 + 4 ω^2)) + 8 g2^2 ((κ1 κ2 - 4 ω^2) (Γ^2 + 4 ω^2) + 4 g1^2 (Γ κ2 + 4 ω^2))))

Where the parameters g1, g2, κ1, κ2, Γ are all Real and greater than zero (>0). ω is real but can take on negative values. I want to integrate c1 with respect toω from -[\Infinity] to [\Infinity]. Doing:

Integrate[c1, {ω, -∞, ∞}]

Returns a really long and ugly expression with root. I then try to simplify the radicals:

Integrate[c1, {ω, -∞, ∞}] // ToRadicals

And I'm returned with the radicals evaluated (nicer looking) albeit still extremely long. I then noticed that there was a ConditionalExpression so I define my parameters as Reals in the process of evaluating the integral:

Evaluate[Integrate[c1, {ω, -∞, ∞}] // ToRadicals, Assumptions -> Γ ∈ Reals, κ1 ∈ Reals, κ2 ∈ Reals, g1 ∈ Reals, g2 ∈ Reals, ω ∈ Reals]

And I'm still returned with ConditionalExpression. I'm not sure how to work around this to obtain a proper expression in terms of my parameters and I would appreciate any help.

Thank you.

  • 1
    $\begingroup$ Why do you prefer radicals? Root objects are better behaved. Bronze age math versus space age math... $\endgroup$
    – John Doty
    Commented Oct 22, 2018 at 22:51
  • $\begingroup$ What is the path of integration in the vicinity of the six zeroes in the denominator of c1, particularly those on the real axis? $\endgroup$
    – bbgodfrey
    Commented Oct 23, 2018 at 1:54
  • $\begingroup$ The solution of the integral should be a sum of residues at the six zeroes of the Denominator of c1. The square roots of the three Root functions appearing in the result of Integrate are the values of the zeroes. Probably, they cannot be simplified except in special cases. If two zeroes lie on the real axis, probably the Principal Value of the integral should be taken. I should add that the integration path assumed by Integrate in obtaining the answer that it returns is not necessarily correct. $\endgroup$
    – bbgodfrey
    Commented Oct 23, 2018 at 4:24
  • $\begingroup$ @bbgodfrey You're right. It seems I will need to use the Residue function. What do you mean by the integration path assumed by Integrate is not correct? What should be my approach then? $\endgroup$
    – kowalski
    Commented Oct 23, 2018 at 15:49
  • $\begingroup$ @kowalski about to board a plane. Shall provide an answer this evening. $\endgroup$
    – bbgodfrey
    Commented Oct 23, 2018 at 15:53

1 Answer 1


The solution in the question provided by Integrate can be simplified by eliminating ConditionalExpression but otherwise cannot be simplified much. It is, however, possible to broaden the applicability of the solution substantially. To begin, note that c1 is a quadratic polynomial in ω^2 divided by cubic polynomial in ω^2. Consequently, the integral can be evaluated by closing the contour of integration at large Abs[ω] in the upper half of the complex ω plane and then summing the residues of the enclosed poles of c1. Unfortunately, Mathematica 11.3 seems to have difficulty recognizing which poles actually are enclosed. As noted in the question,

s = Integrate[c1, {ω, -∞, ∞}];

is too long to be reproduced here. However, the structure of s can be presented succinctly by

rts = Cases[s, _Root, Infinity] // Union

which returns as Root functions the three solutions for ω^2 from Denominator[c1] == 0. Replacing them in s by

ss = s /. Root[_, n_] -> rt[n]
(* ConditionalExpression[
    -((I Pi Γ ((4 g2^2 + κ1 κ2)^2 (Sqrt[rt[2]] + Sqrt[rt[3]]) + 16 rt[1] (rt[2] 
    Sqrt[rt[3]] + Sqrt[rt[2]] rt[3]) + Sqrt[rt[1]] ((4 g2^2 + κ1 κ2)^2 + 
    4 (8 g2^2 - κ1^2 - κ2^2) Sqrt[rt[2]] Sqrt[rt[3]] + 16 rt[2] rt[3])))/
    (16 Sqrt[rt[1]] (Sqrt[rt[1]] + Sqrt[rt[2]]) Sqrt[rt[2]] (Sqrt[rt[1]] + 
    Sqrt[rt[3]]) (Sqrt[rt[2]] + Sqrt[rt[3]]) Sqrt[rt[3]])), 
    Im[Sqrt[rt[1]]] < 0 && Im[Sqrt[rt[2]]] < 0 && Im[Sqrt[rt[3]]] < 0] *)

The condition given is that the three poles Sqrt[rt[_]] lie in the lower half of the complex plane. But, what about the other three poles, given by - Sqrt[rt[_]]? Now consider a specific solution, obtained by direct integration.

Integrate[c1 /. {g1 -> 1, g2 -> 7, κ1 -> 3, κ2 -> 4, Γ -> 5}, {ω, -∞, ∞}]
(* (10220 Pi)/5247 *)
(* 6.11913 *)

But, applying this to the general solution yields

s /. {g1 -> 1, g2 -> 7, κ1 -> 3, κ2 -> 4, Γ -> 5}
(* Undefined *)

Why Undefined is returned can be seen from

Sqrt@N[rts /. {g1 -> 1, g2 -> 7, κ1 -> 3, κ2 -> 4, Γ -> 5}]
(* {0. + 2.4901 I, 7.06613 - 1.75495 I, 7.06613 + 1.75495 I} *)

The first and third roots are in the upper half plane, and the second in the lower half. To obtain the correct solution, discard the ConditionalExpression and choose the poles in the upper half plane.

N[s[[1]] /. Sqrt[Root[z_, n_]] :> Sign[Im[Sqrt[Root[z, n]]]] Sqrt[Root[z, n]] 
    /. {g1 -> 1, g2 -> 7, κ1 -> 3, κ2 -> 4, Γ -> 5}] // Chop
(* 6.11913 *)

(FullSimplify cannot obtain the compact exact value, (10220 Pi)/5247 in a reasonable amount of time, but the corresponding numerical values agree to any number of significant figures.) Note that the substitution above does not work for Im[Sqrt[Root[z, n]]] == 0. Although modest changes would accommodate purely real poles, they appear to be rare for c1. To be precise, I have found none despite diligently searching.


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.