Re: Problem with ExpIntegralEi vs. LogIntegral

*To*: mathgroup at smc.vnet.net*Subject*: [mg73092] Re: Problem with ExpIntegralEi vs. LogIntegral*From*: "xadrezus" <xadrezus at yahoo.com>*Date*: Thu, 1 Feb 2007 04:40:10 -0500 (EST)*References*: <200701301204.HAA16379@smc.vnet.net><epp6lr$db2$1@smc.vnet.net>

Hi, Mr. Woll: You're right, that's exactly the problem, and now I can clearly see why both results are different. Thank you very much for your kind and accurate help, and Best regards. On Jan 31, 5:41 am, Carl Woll <c... at wolfram.com> wrote: > xadrezus wrote: > >Hi, best regards: > > > I'm using an old version of Mathematica (2.2) and have found the > >following > > inconsistence when computing the complex value of ExpIntegralEi > >for > > a complex argument, namely: > > > If I compute LogIntegral[ 20^( 1/2+14.135 I )], Mathematica > >returns: > > > N[ LogIntegral[ 20^( 1/2+14.135 I ) ] ] > > > 1.99917 - 3.9127 I > > > But as LogIntegral[z] == ExpIntegralEi[Log[z]], when I computed the > > previous value using ExpIntegralEi on the Log of the argument > >instead, > > I expected to get the very same result. Instead, it returns: > > > N[ ExpIntegralEi[ (1/2+14.135 I ) * ( Log[20] ) ] ] > > > -0.105387 + 3.1474 I > > The problem here is that > > Log[20^(1/2+14.135 I)] > > is not equal to > > (1/2+14.135 I) Log[20] > > Remember that the inverse of Exp is a multivalued function, and Log > takes the principal value. For > > Log[20^(1/2+14.135 I)] > > 1.49787-1.63762 I > > the principal value is a real number plus an imaginary part that is > constrained to lie between (-Pi, Pi). > > On the other hand, for Log[20] the principal value is just a real > number, with no imaginary part: > > (1/2+14.135 I) Log[20] > > 1.49787+42.3447 I > > The difference in the two value is a multiple of 2 Pi I: > > (Log[20^(1/2+14.135 I)]-(1/2+14.135 I)Log[20])/(2Pi I) > > -7.+0. I > > Carl Woll > Wolfram Research > > > > > which, disconcertingly, it's quite different ! I've searched > >Mathamatica's > > documentation as well as MathWorld and other Internet resources, > >and > > all of them give the same definitions for LogIntegral and > >ExpIntegralEi, > > as well as series expansions, etc., which, when computed manually > > for that complex argument, result in the value given by > >LogIntegral. > > > I've also tried to relate both values in some way, so as to be able > >to > > determine one from the other, but to no avail. > > > My question is: how is ExpIntegralEi evaluating the above > >expression > > in order to get the result -0.105387 + 3.1474 I instead of the > > expected result 1.99917 - 3.9127 I ? > > > I would need to get to know which series expansion or algorithm > > ExpIntegralEi's is using to reach that result (-0.105387 + 3.1474 > >I ) > > and, if possible, duplicate it manually. Or else, to know how both > > values are related so I can determine one from the other. > > > Thanks in advance and best regards.- Hide quoted text - > > - Show quoted text -- Hide quoted text - > > - Show quoted text -