Keeping it real

*To*: mathgroup at smc.vnet.net*Subject*: [mg120246] Keeping it real*From*: amannuc <amannuc at yahoo.com>*Date*: Thu, 14 Jul 2011 21:20:08 -0400 (EDT)

I am facing perhaps the "age-old" question of limiting the indefinite integrals that Mathematica returns. In particular, I am trying to avoid complex numbers. I have tried using "Assumptions" in the Integrate command to no avail. The specific integral is: SetAttributes[{c0, d0}, {Constant}] (* Probably redundant. See Block function *) Simplify[Block[{a, c0, d0}, 2.0 * a * Integrate[ ((-d0/z^2)/(c0 + d0/z))/Sqrt[-a^2 + z^2 (c0 + d0/z)^2], z, Assumptions -> {z \[Element] Reals, a \[Element] Reals, c0 \[Element] Reals, d0 \[Element] Reals}]]] Admirably, Mathematica returns an answer, although with complex numbers. I verified the answer is correct by taking its derivative. The returned answer is: (0. - 2. I) Log[-((2 d0 (-I a + Sqrt[-a^2 + (d0 + c0 z)^2]))/( d0 + c0 z))] + ((0. + 2. I) a Log[( 2 d0 ((I (-a^2 + d0 (d0 + c0 z)))/Sqrt[a^2 - d0^2] + Sqrt[-a^2 + (d0 + c0 z)^2]))/z])/Sqrt[a^2 - d0^2] Note all the "I"s. This is a fairly simple answer returned. I doubt that is the only solution. When I evaluate it for cases of interest, I get complex numbers, which can't be right in my particular case which is based on a physical problem. Thanks for any insights. -- Tony Mannucci

**Follow-Ups**:**Re: Keeping it real***From:*Heike Gramberg <heike.gramberg@gmail.com>