EllipticE
Details
- Mathematical function, suitable for both symbolic and numerical manipulation.
- For
and
,
.
. - EllipticE[m] has a branch cut discontinuity in the complex m plane running from
to
. - EllipticE[ϕ,m] has branch cut discontinuities at
and at
. - For certain special arguments, EllipticE automatically evaluates to exact values.
- EllipticE can be evaluated to arbitrary numerical precision.
- EllipticE automatically threads over lists.
- EllipticE can be used with Interval and CenteredInterval objects. »
Examples
open all close allBasic Examples (5)
EllipticE[0.4]Plot over a subset of the reals:
Plot[EllipticE[m], {m, 0, 1}]Plot over a subset of the complexes:
ComplexPlot3D[EllipticE[z], {z, -7 - 7I, 7 + 7I}, PlotLegends -> Automatic, Exclusions -> All, PlotTheme -> "Web"]Series expansion at the origin:
Series[EllipticE[m], {m, 0, 6}]Series expansion at Infinity:
Series[EllipticE[x], {x, ∞, 2}]//NormalScope (41)
Numerical Evaluation (5)
Evaluate numerically for complex arguments:
EllipticE[3 + 2.5 I]EllipticE[3 + 2.5 I, 2.3 - 1.5 I]N[EllipticE[1 / 3], 50]N[EllipticE[2 / 3, 2], 50]The precision of the output tracks the precision of the input:
EllipticE[0.1234567890000000000]EllipticE[0.1234567890000000000000000000000]EllipticE[2, 0.1234567890000000000000000000000]EllipticE[2, 0.123456789000000000000000000000000000000]Evaluate EllipticE efficiently at high precision:
EllipticE[0.4`500]//TimingEllipticE[0.4`100000];//TimingCompute worst-case guaranteed intervals using Interval and CenteredInterval objects:
EllipticE[1 / 10, Interval[{1.2, 1.3}]]EllipticE[CenteredInterval[-4, 1 / 100]]EllipticE[1 / 3, CenteredInterval[-4, 1 / 5]]Or compute average-case statistical intervals using Around:
EllipticE[ Around[2, 0.01], 1 / 2]Compute the elementwise values of an array:
EllipticE[{{1, 0}, {0, 1}}]Or compute the matrix EllipticE function using MatrixFunction:
MatrixFunction[EllipticE, {{1, 0}, {0, 1}}]Specific Values (4)
Simple exact values are generated automatically:
{EllipticE[0], EllipticE[1]}{EllipticE[0, m], EllipticE[ϕ, 0], EllipticE[Pi / 2, m]}Find limiting values at branch cuts of the complete elliptic integral:
{Limit[EllipticE[2 + ε I], ε -> 0, Direction -> 1], Limit[EllipticE[2 + ε I], ε -> 0, Direction -> -1]}Find limiting values at branch cuts of the elliptic integral of the second kind:
{Limit[EllipticE[Pi / 2 + ε I, 2], ε -> 0, Direction -> -1], Limit[EllipticE[Pi / 2 + ε I, 2], ε -> 0, Direction -> +1]}{EllipticE[Infinity], EllipticE[ComplexInfinity]}EllipticE[Infinity, Infinity]Find the root of the equation
:
f[m_] := EllipticE[m] - 2;
xzero = N@Solve[f[m] == 0 && -2 < m < -1, m][[1, 1, 2]]//QuietPlot[f[m], {m, -2, 2}, Epilog -> Style[Point[{xzero, f[xzero]}], PointSize[Large], Red]]Visualization (3)
Plot the complete elliptic integral:
Plot[EllipticE[m], {m, -10, 1}]Plot the elliptic integral of the second kind:
Plot[{EllipticE[-2, m], EllipticE[-1, m], EllipticE[1, m], EllipticE[2, m]}, {m, -10, 2}]ComplexContourPlot[Re[EllipticE[z]], {z, -5 - 5I, 5 + 5I}, IconizedObject[«PlotOptions»]]ComplexContourPlot[Im[EllipticE[z]], {z, -5 - 5I, 5 + 5I}, IconizedObject[«PlotOptions»]]Function Properties (10)
is defined for all real values less than or equal to 1:
FunctionDomain[EllipticE[m], m]
takes all real values greater than or equal to 1:
FunctionRange[EllipticE[m], m, y]//QuietEllipticE is an odd function with respect to its first parameter:
EllipticE[-ϕ, m]EllipticE is not an analytic function:
FunctionAnalytic[EllipticE[x], x]Has both singularities and discontinuities for
:
FunctionSingularities[EllipticE[x], x]//QuietFunctionDiscontinuities[EllipticE[x], x]//QuietEllipticE is not a meromorphic function:
FunctionMeromorphic[EllipticE[m], m]
is nonincreasing on its domain:
FunctionMonotonicity[{EllipticE[x], x < 1}, x]FunctionInjective[EllipticE[x], x]Plot[{EllipticE[x], 2}, {x, -5, 1}]FunctionSurjective[EllipticE[x], x]Plot[{EllipticE[x], -1}, {x, -5, 2}]
is non-negative on its domain:
FunctionSign[{EllipticE[x], x < 1}, x]FunctionConvexity[{EllipticE[x], x < 1}, x]Differentiation (4)
D[EllipticE[m], m]Table[D[EllipticE[m], {m, n}], {n, 1, 3}]//FullSimplifyPlot[Evaluate[%], {m, -10, 1}, PlotLegends -> {"First Derivative", "Second Derivative", "Third Derivative"}]D[EllipticE[m], {m, n}]Derivative with respect to the first argument of the elliptic integral of the second kind:
D[EllipticE[ϕ, m], ϕ]Integration (3)
Indefinite integral of EllipticE:
Integrate[EllipticE[m], m]//FullSimplifyDefinite integral of an odd function over an interval centered at the origin is 0:
Integrate[EllipticE[ϕ, m], {ϕ, -1 / 2, 1 / 2}]Integrate[m^αEllipticE[m], m]Integrate[Sin[ϕ]EllipticE[ϕ, m], ϕ]Integrate[( Sin[2 ϕ]EllipticE[ϕ, m]/(1 - m Sin[ϕ]^2)^3 / 2), ϕ]Series Expansions (4)
Taylor expansion for EllipticE:
Series[EllipticE[m], {m, 0, 3}]Plot the first three approximations for EllipticE around
:
terms = Normal@Table[Series[EllipticE[m], {m, 0, n}], {n, 1, 3}];
Plot[{EllipticE[m], terms}, {m, -3, 1}]Find series expansions at branch points:
Series[EllipticE[m], {m, 1, 1}]Series expansion for the elliptic integral of the second kind:
Series[EllipticE[ϕ, m], {ϕ, 0, 10}]Expand in series with respect to the modulus:
Series[EllipticE[ϕ, m], {m, 0, 2}]EllipticE can be applied to a power series:
EllipticE[m + (m^2/2) + (m^3/3) + O[m]^4]EllipticE[x + (x^2/2) + (x^3/3) + O[x]^4, m]Integral Transforms (2)
Compute the Laplace transform using LaplaceTransform:
LaplaceTransform[EllipticE[-t], t, s]HankelTransform[EllipticE[-r], r, s]Function Representations (6)
The definition of the elliptic integral of the second kind:
Integrate[Sqrt[1 - m Sin[θ] ^ 2], {θ, 0, ϕ}, Assumptions -> ϕ ≥ 0]Complete elliptic integral is a partial case of the elliptic integral of the second kind:
EllipticE[(π/2), m]Relation to other elliptic integrals:
(1 - m)EllipticPi[m, m]//FullSimplifyRepresent in terms of MeijerG using MeijerGReduce:
MeijerGReduce[EllipticE[m], m]Activate[%]EllipticE can be represented as a DifferentialRoot:
DifferentialRootReduce[EllipticE[m], m]TraditionalForm formatting:
EllipticE[m]//TraditionalForm
EllipticE[ϕ, m]//TraditionalFormApplications (10)
∫Sqrt[ x^4 - 1]ⅆ x∫Sqrt[x^3 - x^2 + 2 / 9 x]ⅆ xPlot an incomplete elliptic integral over the complex plane:
Plot3D[Im[EllipticE[x + I y, 1 / 2]], {x, -2Pi, 2Pi}, {y, -3, 3}]Perimeter length of an ellipse:
x[t_] := a Cos[t];
y[t_] := b Sin[t];4Integrate[Sqrt[Derivative[1][x][t]^2 + Derivative[1][y][t]^2], {t, 0, (Pi/2)}, Assumptions -> a > 0∧b > 0]Use ArcLength to obtain the perimeter:
ArcLength[Circle[{0, 0}, {a, b}]]Series expansion for almost equal axes lengths:
Series[%, {b, a, 6}]Compare with an approximation by Ramanujan:
Series[Pi (3a + 3b - Sqrt[(a + 3b)(b + 3a)]), {b, a, 6}]//Simplify[#, Assumptions -> a > 0]&Arc length of a hyperbola as a function of the angle of a point on the hyperbola:
x[t_] := a Cosh[t]
y[t_] := b Sinh[t]Integrate[Sqrt[x'[t] ^ 2 + y'[t] ^ 2], {t, 0, ArcTanh[(a /b)Tan[ϕ]]}, Assumptions -> a > 0 && b > 0 && b ^ 2 > a ^ 2Tan[ϕ] ^ 2]Plot the arc length as a function of the angle:
Plot[% /. {a -> 2, b -> 2}, {ϕ, -1, 1}]Vector potential of a ring current in cylindrical coordinates:
A = 2Integrate[(Cos[φ]/Sqrt[z^2 + r^2 + R^2 - 2 r R Cos[φ]]), {φ, 0, Pi}, Assumptions -> r > 0∧R > 0∧z > 0]The vertical and radial components of the magnetic field:
Bz = (1/r)D[r A, r]//SimplifyBr = -D[A, z]//SimplifyPlot magnitude of the magnetic field:
Plot3D[Evaluate[Sqrt[Br^2 + Bz^2] /. R -> 1], {r, -(3/2), (3/2)}, {z, -1, 1}]Inductance of a solenoid of radius r and length a with fixed numbers of turns per unit length:
2r^2 a Integrate[Sinc[(x/2)]^2 BesselI[1, (x r/a)] BesselK[1, (x r/a)], {x, 0, Infinity}, Assumptions -> r > 0 && a > 0]Inductance per unit length of the infinite solenoid:
Limit[% / a, a -> Infinity]Calculate the surface area of a triaxial ellipsoid:
area[{a_, b_, c_}] := With[{m = (a^2(b^2 - c^2)/b^2(a^2 - c^2)), θ = ArcSin[Sqrt[1 - (c^2/a^2)]]}, 2 π(c^2 + b Sqrt[a^2 - c^2] EllipticE[θ, m] + (b c^2 /Sqrt[a^2 - c^2])EllipticF[θ, m])] /; a > b > c;The area of an ellipsoid with half axes 3, 2, 1:
area[{3, 2, 1}]//NCalculate the area by integrating the differential surface elements:
NIntegrate[Evaluate[Sin[θ]Sqrt[b^2c^2Cos[ϕ]^2Sin[θ]^2 + a^2c^2Sin[ϕ]^2Sin[θ]^2 + a^2b^2Cos[θ]^2] /. {a -> 3, b -> 2, c -> 1}], {ϕ, 0, 2Pi}, {θ, 0, Pi}]Parametrization of a Mylar balloon (two flat sheets of plastic sewn together at their circumference and then inflated):
x[u_, v_] := (Cos[v]/Sqrt[Cosh[2u]])
y[u_, v_] := (Sin[v]/Sqrt[Cosh[2u]])
z[u_, v_] := With[{f = ArcSin[(Sqrt[2]Sinh[u]/Sqrt[Cosh[2u]])]}, Sqrt[2](EllipticE[f, (1/2)] - (1/2)EllipticF[f, (1/2)])]ParametricPlot3D[{x[u, v], y[u, v], z[u, v]}, {v, 0, 2Pi}, {u, -8, 8}, PlotRange -> All]Calculate the ratio of the main curvatures:
Module[{h, g}, h[u_] = x[u, v] / Cos[v];g[u_] = z[u, v];
(((g''[u]h'[u] - g'[u]h''[u]/(g'[u]^2 + h'[u]^2)^3 / 2))/((g'[u]/h[u]Sqrt[g'[u]^2 + h'[u]^2])))//Simplify]Express the radius of the original sheets in terms of the radius of the inflated balloon:
Module[{h, g}, h[u_] = x[u, v] / Cos[v];g[u_] = z[u, v];Integrate[Sqrt[h'[u]^2 + g'[u]^2]//Simplify, {u, 0, ∞}]]N[%, $MachinePrecision]Parametrize an ellipse using EllipticE :
ellipse[ϕ_, {a_, b_}] := With[{u = a EllipticE[ϕ, 1 - (b^2/a^2)]}, {a JacobiSN[u, Sqrt[1 - (b^2/a^2)]], b JacobiCN[u, Sqrt[1 - (b^2/a^2)]]}]Plot using elliptic parametrization and circular parametrization:
With[{b = 1 / 2, a = 2}, ParametricPlot[Evaluate[{{a Cos[ϕ], b Sin[ϕ]}, ellipse[ϕ, {a, b}]}], {ϕ, -Pi, Pi}]]Define the Halphen constant using elliptic integrals [MathWorld]:
SetAttributes[HalphenConstant, Constant];
HalphenConstant/:N[HalphenConstant, wp_] := N[EllipticNomeQ[Root[{EllipticK[#] - 2EllipticE[#]&, 0.82611476598497033617737323860075640603409051645331}]], wp]Find the extended precision value:
x = N[HalphenConstant, 50]Verify that it is zero of the function
:
Sum[(2k + 1)^2(-x)^k(k + 1) / 2, {k, 0, 50}]Properties & Relations (6)
EllipticE[ϕ,m] is real‐valued for real argument subject to the following conditions:
FunctionDomain[EllipticE[ϕ, m], {ϕ, m}, Reals]For real arguments, if
, then
for
:
With[{m = 1 / 3}, {ParametricPlot[{ϕ, EllipticE[ϕ, m]}, {ϕ, -2Pi, 2Pi}, PlotStyle -> Thick], ParametricPlot[{JacobiAmplitude[u, m], JacobiEpsilon[u, m]}, {u, -4 EllipticK[m], 4EllipticK[m]}, PlotStyle -> Directive[Dashed, Orange]]}]Show[%, ImageSize -> Tiny]With[{m = 4}, {ParametricPlot[{ϕ, EllipticE[ϕ, m]}, {ϕ, -ArcSin[m^-1 / 2], ArcSin[m^-1 / 2]}, PlotStyle -> Thick], ParametricPlot[{JacobiAmplitude[u, m], JacobiEpsilon[u, m]}, {u, -(1/Sqrt[m])EllipticK[1 / m], (1/Sqrt[m])EllipticK[1 / m]}, PlotStyle -> Directive[Dashed, Orange]]}]Show[%, ImageSize -> Tiny]EllipticE[ArcCsc[Sqrt[m]], m]//FunctionExpandExpand special cases under argument restrictions:
EllipticE[z, 1]//FunctionExpandFunctionExpand[%, 0 < z < Pi / 2]Numerically find a root of a transcendental equation:
FindRoot[EllipticE[z, 2]^3 + EllipticE[z, 2] + z == 2, {z, I}]Limit[EllipticE[Pi / 2 + ε I, 2], ε -> 0, Direction -> -1]Limit[EllipticE[Pi / 2 + ε I, 2], ε -> 0, Direction -> +1]EllipticE is automatically returned as a special case for some special functions:
{HypergeometricPFQ[{-(1/2), (1/2)}, {1}, z], MeijerG[{{(1/2), (3/2)}, {}}, {{0}, {0}}, -z], MeijerG[{{0, 1}, {}}, {{-(1/2), (1/2)}, {}}, z], EllipticPi[z, (π/2), z], EllipticE[(π/2), z]}Possible Issues (1)
Neat Examples (4)
Nested derivatives and integrals:
NestList[D[#, x]&, EllipticE[x, m], 4]//TraditionalFormNestList[Integrate[#, x]&, EllipticE[x], 6]//FunctionExpand//TraditionalFormPlot EllipticE at integer points:
ArrayPlot[Table[Mod[Round[Abs[EllipticE[x y, 0.3]]], 2], {x, -50, 50}, {y, -50, 50}]]Calculate EllipticE through an analytically continued Taylor series:
ℱ[n_, z_] = (π/2) Underoverscript[∑, k = 0, n](Pochhammer[-(1/2), k] Pochhammer[(1/2), k] z^k/k!^2)EllipticE[0.6 - 0.2I]Plot[{Re@ℱ[n, 0.6 - 0.2I], Im@ℱ[n, 0.6 - 0.2I]}, {n, 0, 5}]Show[Plot3D[Evaluate[Table[Im[EllipticE[x + I y] + j 2 I (EllipticK[1 - (x + I y)] - EllipticE[1 - (x + I y)])], {j, -2, 2}]], {x, -9, 9}, {y, ##}, ClippingStyle -> None, PlotStyle -> Opacity[0.6], Mesh -> False, BoxRatios -> {1, 1, 1}, MaxRecursion -> 5, PlotRange -> {All, All, {-9, 9}}]&@@@{{-9, -10 ^ -6}, {10 ^ -6, 9}}]Tech Notes
Related Guides
Related Links
History
Introduced in 1988 (1.0) | Updated in 1996 (3.0) ▪ 2020 (12.2) ▪ 2021 (13.0) ▪ 2022 (13.1)
Text
Wolfram Research (1988), EllipticE, Wolfram Language function, https://reference.wolfram.com/language/ref/EllipticE.html (updated 2022).
CMS
Wolfram Language. 1988. "EllipticE." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2022. https://reference.wolfram.com/language/ref/EllipticE.html.
APA
Wolfram Language. (1988). EllipticE. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/EllipticE.html
BibTeX
@misc{reference.wolfram_2026_elliptice, author="Wolfram Research", title="{EllipticE}", year="2022", howpublished="\url{https://reference.wolfram.com/language/ref/EllipticE.html}", note=[Accessed: 12-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_elliptice, organization={Wolfram Research}, title={EllipticE}, year={2022}, url={https://reference.wolfram.com/language/ref/EllipticE.html}, note=[Accessed: 12-June-2026]}