gives the exponential integral function
.
ExpIntegralEi
gives the exponential integral function
.
Details
- Mathematical function, suitable for both symbolic and numerical manipulation.
, where the principal value of the integral is taken. - ExpIntegralEi[z] has a branch cut discontinuity in the complex z plane running from -∞ to 0.
- For certain special arguments, ExpIntegralEi automatically evaluates to exact values.
- ExpIntegralEi can be evaluated to arbitrary numerical precision.
- ExpIntegralEi automatically threads over lists.
- ExpIntegralEi can be used with Interval and CenteredInterval objects. »
Examples
open all close allBasic Examples (5)
ExpIntegralEi[1.8]Plot over a subset of the reals:
Plot[ExpIntegralEi[x], {x, -1, 1}]Plot over a subset of the complexes:
ComplexPlot3D[ExpIntegralEi[z], {z, -2 - 2I, 2 + 2I}, PlotLegends -> Automatic]Series expansion around the branch point at the origin:
Series[ExpIntegralEi[x], {x, 0, 5}, Assumptions -> x > 0]Series[ExpIntegralEi[x], {x, 0, 5}, Assumptions -> x < 0]Series expansion at Infinity:
Series[ExpIntegralEi[ x], {x, ∞, 6}]//NormalScope (37)
Numerical Evaluation (5)
Evaluate numerically to high precision:
N[ExpIntegralEi[2], 50]The precision of the output tracks the precision of the input:
ExpIntegralEi[2.0000000000000000000000]ExpIntegralEi can take complex number inputs:
ExpIntegralEi[2. + I]Evaluate ExpIntegralEi efficiently at high precision:
ExpIntegralEi[2`500]//TimingExpIntegralEi[2`10000];//TimingCompute worst-case guaranteed intervals using Interval and CenteredInterval objects:
ExpIntegralEi[Interval[{1.1, 1.2}]]ExpIntegralEi[CenteredInterval[2, 1 / 100]]Or compute average-case statistical intervals using Around:
ExpIntegralEi[ Around[2, 0.01]]Compute the elementwise values of an array:
ExpIntegralEi[{{I π, I π / 2}, {0, -I }}]//FunctionExpandOr compute the matrix ExpIntegralEi function using MatrixFunction:
MatrixFunction[ExpIntegralEi, {{I π, I π / 2}, {0, I}}]//FunctionExpandSpecific Values (3)
ExpIntegralEi[0]ExpIntegralEi[{Infinity, -Infinity, I Infinity, -I Infinity}]ExpIntegralEi[ComplexInfinity]Find the zero of the ExpIntegralEi:
xzero = Solve[ExpIntegralEi[x] == 0 && 0 < x < 0.5, x][[1, 1, 2]]//QuietPlot[ExpIntegralEi[x], {x, 0, 1}, Epilog -> Style[Point[{xzero, ExpIntegralEi[xzero]}], PointSize[Large], Red]]Visualization (3)
Plot the ExpIntegralEi function:
Plot[ExpIntegralEi[x], {x, -5, 5}]ComplexContourPlot[Re[ExpIntegralEi[z]], {z, -10 - 10I, 10 + 10 I}, Contours -> 20]ComplexContourPlot[Im[ExpIntegralEi[z]], {z, -10 - 10I, 10 + 10 I}, Contours -> 20]Function Properties (10)
ExpIntegralEi is defined for all real values except 0:
FunctionDomain[ExpIntegralEi[x], x]FunctionDomain[ExpIntegralEi[z], z, Complexes]ExpIntegralEi takes all real values:
FunctionRange[ExpIntegralEi[x], x, y]ExpIntegralEi has the mirror property
:
FullSimplify[ExpIntegralEi[Conjugate[z]] == Conjugate[ExpIntegralEi[z]]]ExpIntegralEi is not an analytic function:
FunctionAnalytic[ExpIntegralEi[x], x]FunctionMeromorphic[ExpIntegralEi[x], x]ExpIntegralEi is not monotonic over the reals:
FunctionMonotonicity[ExpIntegralEi[x], x]However, it is monotonic over each half-line:
FunctionMonotonicity[{ExpIntegralEi[x], x > 0}, x]FunctionMonotonicity[{ExpIntegralEi[x], x < 0}, x]ExpIntegralEi is not injective:
FunctionInjective[ExpIntegralEi[x], x]Plot[{ExpIntegralEi[x], -1 / 2}, {x, -2, 2}]ExpIntegralEi is surjective:
FunctionSurjective[ExpIntegralEi[x], x]Plot[{ExpIntegralEi[x], 10}, {x, -10, 10}]ExpIntegralEi is neither non-negative nor non-positive:
FunctionSign[{ExpIntegralEi[x], x ≠ 0}, x]ExpIntegralEi has both singularity and discontinuity at zero:
FunctionSingularities[ExpIntegralEi[x], x]FunctionDiscontinuities[ExpIntegralEi[x], x]ExpIntegralEi is neither convex nor concave:
FunctionConvexity[{ExpIntegralEi[x], x ≠ 0}, x]But it is concave over the negative reals:
FunctionConvexity[{ExpIntegralEi[x], x < 0}, x]Differentiation (3)
D[ExpIntegralEi[x], x]Table[D[ExpIntegralEi[x], {x, k}], {k, 1, 4}]Plot[Evaluate[%], {x, -5, 5}, PlotLegends -> {"First Derivative", "Second Derivative", "Third Derivative", "Fourth Derivative"}]D[ExpIntegralEi[x], {x, n}]Integration (3)
Indefinite integral of ExpIntegralEi:
Integrate[ExpIntegralEi[x], x]Definite integral of a function involving ExpIntegralEi:
Integrate[Exp[-z x]ExpIntegralEi[x], {x, 0, Infinity}]Integrate[z^αExpIntegralEi[z^β], z]Integrate[Log[b x]ExpIntegralEi[a x], x]Series Expansions (3)
Taylor expansion for ExpIntegralEi around
:
Series[ExpIntegralEi[x], {x, 1, 7}]Plot the first three approximations for ExpIntegralEi around
:
terms = Normal@{Series[ExpIntegralEi[x], {x, 1, 1}], Series[ExpIntegralEi[x], {x, 1, 3}], Series[ExpIntegralEi[x], {x, 1, 4}]};
Plot[{ExpIntegralEi[x], terms}, {x, -1, 3}]Find series expansion at infinity:
Series[ExpIntegralEi[x], {x, Infinity, 3}]//NormalGive the result for an arbitrary symbolic direction:
Series[ExpIntegralEi[x], {x, DirectedInfinity[], 1}]//NormalExpIntegralEi can be applied to power series:
ExpIntegralEi[1 + x + (x^2/2) + (x^3/9) + O[x]^4]Function Identities and Simplifications (3)
Use FullSimplify to simplify expressions containing exponential integrals:
FullSimplify[ExpIntegralEi[z] + (1/2)(Log[z] + Log[(1/z)])]ExpIntegralEi[Log[z]]//FunctionExpandExpIntegralEi[I z] == CosIntegral[z] + I SinIntegral[z] - (1/2) (Log[-(I/z)] - Log[I z]) - Log[z]//FullSimplifyFullSimplify[ExpIntegralEi[x] == -ExpIntegralE[1, -x], x < 0]Function Representations (4)
-Integrate[Exp[-t] / t, {t, -z, Infinity}, PrincipalValue -> True, Assumptions -> {z∈Reals, z ≥ 0}]ExpIntegralEi can be represented as a DifferentialRoot:
DifferentialRootReduce[ExpIntegralEi[x], x]ExpIntegralEi can be represented in terms of MeijerG:
MeijerGReduce[ExpIntegralEi[x], x]Activate[%]//FullSimplifyTraditionalForm formatting:
ExpIntegralEi[x]//TraditionalFormApplications (3)
Compute a classical asymptotic series with k! coefficients:
Series[-Exp[1 / z] ExpIntegralEi[-1 / z], {z, 0, 10}, Assumptions -> z > 0]Plot the imaginary part in the complex plane:
Plot3D[Im[ExpIntegralEi[x + I y]], {x, -3, 3}, {y, -3, 3}]Real part of the Euler–Heisenberg effective action:
action[k_, {m_, e_}, {a_, b_}] := With[{x = k π (m^2/e a), y = k π (m^2/e b)}, -(e^2a b/4 π^3k)(Coth[k π (b/a)](CosIntegral[x] Cos[x] + (SinIntegral[x] - π / 2)Sin[x]) -
Coth[k π (a/b)](ExpIntegralEi[y] Exp[-y] + ExpIntegralEi[-y] Exp[y]) / 2)]Assuming[{q > 0 && a > 0 && b > 0 && m > 0 && k > 0},
Series[action[k, {m, q}, {a, b}], {q, 0, 4}]//Normal//FullSimplify]Properties & Relations (8)
Use FullSimplify to simplify expressions containing exponential integrals:
FullSimplify[ExpIntegralEi[z] + (1/2)(Log[z] + Log[(1/z)])]FindRoot[ExpIntegralEi[z] == 0, {z, 1}]Obtain ExpIntegralEi from integrals and sums:
Integrate[(E ^ t - 1) / t, {t, 0, z}, Assumptions -> z > 0]Underoverscript[∑, k = 1, ∞](z^k/k k!)//FunctionExpandLimit[Exp[2ExpIntegralEi[-x]] / x ^ 2, x -> 0]Obtain ExpIntegralEi from a differential equation:
DSolve[z Derivative[3][w][z] + 2 Derivative[2][w][z] - z Derivative[1][w][z] == 0, w, z]Det[Outer[D[#1, {x, #2}]&, {1, ExpIntegralEi[x], ExpIntegralEi[-x]}, {0, 1, 2}]]∫z^αExpIntegralEi[z^β]ⅆzLaplaceTransform[ExpIntegralEi[t], t, s, Assumptions -> s > 1]Possible Issues (3)
ExpIntegralEi can take large values for moderate‐size arguments:
ExpIntegralEi[Sqrt[I] 10000. ]ExpIntegralEi has a special value on the negative real axis, not obtained as a limit from either side:
N[ExpIntegralEi[-1 + {-10 ^ -10I, 0, 10 ^ -10 I}]]A larger setting for $MaxExtraPrecision can be needed:
N[ExpIntegralEi[-10 ^ 60 I] + I Pi, 20]Block[{$MaxExtraPrecision = 200}, N[ExpIntegralEi[-10 ^ 60 I] + I Pi, 20]]See Also
Tech Notes
Related Guides
Related Links
History
Introduced in 1988 (1.0) | Updated in 2021 (13.0) ▪ 2022 (13.1)
Text
Wolfram Research (1988), ExpIntegralEi, Wolfram Language function, https://reference.wolfram.com/language/ref/ExpIntegralEi.html (updated 2022).
CMS
Wolfram Language. 1988. "ExpIntegralEi." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2022. https://reference.wolfram.com/language/ref/ExpIntegralEi.html.
APA
Wolfram Language. (1988). ExpIntegralEi. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/ExpIntegralEi.html
BibTeX
@misc{reference.wolfram_2026_expintegralei, author="Wolfram Research", title="{ExpIntegralEi}", year="2022", howpublished="\url{https://reference.wolfram.com/language/ref/ExpIntegralEi.html}", note=[Accessed: 13-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_expintegralei, organization={Wolfram Research}, title={ExpIntegralEi}, year={2022}, url={https://reference.wolfram.com/language/ref/ExpIntegralEi.html}, note=[Accessed: 13-June-2026]}