Ei
-- the exponential integral
functionEi
(x)
represents the exponential integral
int(exp(-x*t)/t, t=1..infinity).
Ei(x)
x |
- | an arithmetical expression |
an arithmetical expression.
x
When called with a floating point argument, the function is
sensitive to the environment variable DIGITS
which determines the numerical
working precision.
x
is a floating point number, then
Ei
(x)
returns the numerical value of the
exponential integral. The special values Ei(infinity)=0 and
Ei(-infinity)=-infinity are implemented. For all other
arguments, Ei
returns a symbolic function call.Ei
(x)
is equivalent to igamma
(0,x)
for real
arguments x>0
.Ei
is a kernel function, i.e.,
floating point evaluation is fast.We demonstrate some calls with exact and symbolic input data:
>> Ei(1), Ei(sqrt(2)), Ei(x + 1), Ei(infinity), Ei(-infinity)
1/2 Ei(1), Ei(2 ), Ei(x + 1), 0, -infinity
Floating point values are computed for floating point arguments:
>> Ei(-1000.0), Ei(1.0), Ei(12.3), Ei(2.0 + 10.0*I)
- 1.972045137e431 - 3.141592654 I, 0.2193839344, 0.0000003439533949, 0.003675663008 + 0.01234609005 I
Ei
is singular at the origin:
>> Ei(0)
Error: singularity [Ei]
The negative real axis is a branch cut of
Ei
. A jump of height I*2*PI occurs when
crossing this cut:
>> Ei(-1.0), Ei(-1.0 + 10^(-10)*I), Ei(-1.0 - 10^(-10)*I)
- 1.895117816 - 3.141592654 I, - 1.895117816 - 3.141592653 I, - 1.895117816 + 3.141592653 I
The functions diff
, float
, limit
, and series
handle expressions involving
Ei
:
>> diff(Ei(x), x, x, x), float(ln(3 + Ei(sqrt(PI))))
exp(-x) 2 exp(-x) 2 exp(-x) - ------- - --------- - ---------, 1.120796995 x 2 3 x x
>> limit(Ei(2*x^2/(1+x)), x = infinity)
0
>> series(Ei(x), x = 0, 3), series(Ei(x), x = infinity, 3), series(Ei(x), x = -infinity, 3)
2 x 3 - (ln(x) + EULER) + x - -- + O(x ), 4 exp(-x) exp(-x) / exp(-x) \ ------- - ------- + O| ------- |, x 2 | 3 | x \ x / exp(-x) exp(-x) / exp(-x) \ ------- - ------- + O| - ------- | x 2 | 3 | x \ x /
Ei
(x)+ln(x)
is an entire
function. Ei
has a logarithmic singularity at the origin
and a branch cut along the negative real axis. The values on the
negative real axis coincide with the limit ``from above'':
Ei(x)=limit(Ei(x+eps*I), eps=0, Right).
Ei
(x)
coincides with Ei(1,x)
from the following family of functions:
Ei(n,x) = int(exp(-x*t)/t^n, t=1..infinity).These functions are related to the incomplete gamma function
igamma
by Ei(n,x) =
x^(n-1)*igamma(1-n, x). Note that float evaluation of igamma
is presently implemented
only for real x>0, whereas Ei
can be
evaluated for any complex x<>0.Ei
by ei(x) = -Re(Ei(-x)),
i.e.:
ei(x) = -Ei(-x) for x<0 and ei(x) = -Ei(-x) + I*PI for x>0.
eint