JacobiDC[u,m]
gives the Jacobi elliptic function
.
JacobiDC
JacobiDC[u,m]
gives the Jacobi elliptic function
.
Details
- Mathematical function, suitable for both symbolic and numerical manipulation.
, where
.
is a doubly periodic function in u with periods
and
, where
is the elliptic integral EllipticK.- JacobiDC is a meromorphic function in both arguments.
- For certain special arguments, JacobiDC automatically evaluates to exact values.
- JacobiDC can be evaluated to arbitrary numerical precision.
- JacobiDC automatically threads over lists.
Examples
open all close allBasic Examples (4)
JacobiDC[3.14, 0.3]Plot the function over a subset of the reals:
Plot[JacobiDC[x, 1 / 3], {x, -6, 6}]Plot over a subset of the complexes:
ComplexPlot3D[JacobiDC[z, 1 / 3], {z, -2 - 2I, 2 + 2I}, PlotLegends -> Automatic]Series expansions at the origin:
Series[JacobiDC[z, m], {z, 0, 6}]Series[JacobiDC[z, m], {m, 0, 1}]Scope (35)
Numerical Evaluation (5)
N[JacobiDC[3, 1 / 2], 50]The precision of the output tracks the precision of the input:
JacobiDC[3, 0.500000000000000000000000000000000000000]Evaluate for complex arguments:
JacobiDC[2.5 + I, 0.2 - 0.3 I]Evaluate JacobiDC efficiently at high precision:
JacobiDC[Pi / 3, 0.3`500]//TimingJacobiDC[Pi / 3, 0.3`10000];//TimingCompute average-case statistical intervals using Around:
JacobiDC[2, Around[1 / 2, 0.01]]Compute the elementwise values of an array:
JacobiDC[-(I π/3), {{1, 0}, {0, 1}}]Or compute the matrix JacobiDC function using MatrixFunction:
MatrixFunction[JacobiDC[-(I π/3), #]&, {{1, 0}, {0, 1}}]Specific Values (3)
Simple exact answers are generated automatically:
{JacobiDC[z, 0], JacobiDC[z, 1]}{JacobiDC[0, m], JacobiDC[EllipticK[m] / 2, m], JacobiDC[I EllipticK[1 - m], m]}Some poles of JacobiDC:
{JacobiDC[EllipticK[m], m], JacobiDC[EllipticK[m], m], JacobiDC[EllipticK[m] + 2I EllipticK[1 - m], m]}Find a local maximum of JacobiDC as a root of
:
xmax = Solve[D[JacobiDC[x, 1 / 3], x] == 0 && 1 < x < 4.0, x][[1, 1, 2]]//QuietPlot[JacobiDC[x, 1 / 3], {x, 0, 6}, Epilog -> Style[Point[{xmax, JacobiDC[xmax, 1 / 3]}], PointSize[Large], Red]]Visualization (3)
Plot the JacobiDC functions for various parameter values:
Plot[{JacobiDC[x, 0], JacobiDC[x, 0.8], JacobiDC[x, 2]}, {x, -4, 4}]Plot JacobiDC as a function of its parameter
:
Plot[{JacobiDC[1, m], JacobiDC[1.5, m], JacobiDC[2, m]}, {m, -50, 50}]ComplexContourPlot[Re[JacobiDC[z, 1 / 2]], {z, -8 - 8 I, 8 + 8 I}, IconizedObject[«PlotOptions»]]ComplexContourPlot[Im[JacobiDC[z, 1 / 2]], {z, -8 - 8 I, 8 + 8 I}, IconizedObject[«PlotOptions»]]Function Properties (8)
JacobiDC is
-periodic along the real axis:
JacobiDC[x, m] == JacobiDC[x + 4 EllipticK[m], m]JacobiDC is
-periodic along the imaginary axis:
JacobiDC[x, m] == JacobiDC[x + 2I EllipticK[1 - m], m]JacobiDC is an even function:
JacobiDC[-x, m] == JacobiDC[x, m]
is an analytic function of
for
:
FunctionAnalytic[JacobiDC[x, m], x, Assumptions -> m >= 1]It is not, in general, analytic:
FunctionAnalytic[JacobiDC[x, m], {x, m}]//QuietIt has both singularities and discontinuities for
:
FunctionSingularities[JacobiDC[x, m], {x, m}]FunctionDiscontinuities[JacobiDC[x, m], {x, m}]
is neither nondecreasing nor nonincreasing:
FunctionMonotonicity[JacobiDC[x, 3], x]
is not injective for any fixed
:
FunctionInjective[JacobiDC[x, m], x, Assumptions -> m < 1]FunctionInjective[JacobiDC[x, m], x, Assumptions -> m > 1]FunctionInjective[JacobiDC[x, 1], x]Plot[{JacobiDC[x, 3], .5}, {x, -5, 5}]
is not surjective for any fixed
:
FunctionSurjective[JacobiDC[x, m], x, Assumptions -> m∈Reals]Plot[{JacobiDC[x, 1 / 3], .5}, {x, -5, 5}]JacobiDC is neither non-negative nor non-positive:
FunctionSign[JacobiDC[x, m], {x, m}]JacobiDC is neither convex nor concave:
FunctionConvexity[JacobiDC[x, m], {x, m}]Differentiation (3)
D[JacobiDC[x, m], x]derivs = Table[D[JacobiDC[x, m], {x, n}], {n, 1, 4}]Plot[Evaluate[derivs /. m -> 1 / 3], {x, -3, 3}, PlotLegends -> {"First Derivative", "Second Derivative", "Third Derivative", "Fourth Derivative"}]D[JacobiDC[x, m], m]Integration (3)
Indefinite integral of JacobiDC:
Integrate[JacobiDC[z, m], z]Definite integral of JacobiDC:
Integrate[JacobiDC[z, 1 / 3], {z, 1 / 2, 1}]Integrate[JacobiDC[z, m]JacobiSC[z, m], z]Integrate[1 / JacobiDC[z, m], z]Series Expansions (3)
Series[JacobiDC[x, 1 / 3], {x, 0, 7}]Plot the first three approximations for
around
:
terms = Normal@Table[Series[JacobiDC[x, 1 / 3], {x, 0, n}], {n, 2, 6, 2}];
Plot[{JacobiDC[x, 1 / 3], terms}, {x, -1.5, 1.5}]Series[JacobiDC[1, m], {m, 0, 3}]//SimplifyPlot the first three approximations for
around
:
terms = Normal@Table[Series[JacobiDC[1, m], {m, 0, n}], {n, 1, 3}];
Plot[{JacobiDC[1, m], terms}, {m, -3, 3}]JacobiDC can be applied to a power series:
JacobiDC[u, m + m ^ 2 + O[m] ^ 3]//SimplifyFunction Identities and Simplifications (4)
JacobiDC[z, m] == (JacobiDN[z, m]/JacobiCN[z, m])//FullSimplifyIdentity involving JacobiNC:
JacobiDC[z, m]^2 + (m - 1) JacobiNC[z, m]^2//FullSimplifyParity transformations and periodicity relations are automatically applied:
JacobiDC[-u, m]JacobiDC[u + 4 EllipticK[m] + 2I EllipticK[1 - m], m]Automatic argument simplifications:
JacobiDC[z + EllipticK[m], m]JacobiDC[z + I EllipticK[1 - m], m]Function Representations (3)
Representation in terms of trigonometric functions and JacobiAmplitude:
JacobiDC[z, m]^2 == (1 - m Sin[JacobiAmplitude[z, m]]^2/Cos[JacobiAmplitude[z, m]]^2)//FullSimplifyRelation to other Jacobi elliptic functions:
JacobiDC[z, m] == (1/JacobiCD[z, m])//FullSimplifyJacobiDC[z, m]^2 == (1 - m + m JacobiCN[z, m]^2/JacobiCN[z, m]^2)//FullSimplifyTraditionalForm formatting:
JacobiDC[u, m]//TraditionalFormApplications (2)
Conformal map from a unit triangle to the unit disk:
w[z_] := With[{ζ = z(Gamma[1 / 3]^3/2^1 / 3 3^1 / 4 π), m = Sin[(π/12)] ^ 2}, (2^11 / 6 Sqrt[1 - m] (JacobiDC[ζ, m] - JacobiDN[ζ, m]) (JacobiDC[ζ, m] + Sqrt[(m/1 - m)] JacobiDN[ζ, m])) / (-2 JacobiDC[ζ, m] JacobiDN[ζ, m] + JacobiDN[ζ, m]^2 + JacobiDC[ζ, m]^2 (1 + 2 3^1 / 4 JacobiDN[ζ, m] JacobiSN[ζ, m]))]Show points before and after the map:
trianglePoints = With[{t = E ^ (2 Pi I / 3)}, Flatten[Table[α / 8. Table[N[#1 + j / 16(#2 - #1)], {j, 0, 16}]&@@@({{1, t}, {t, 1 / t}, {1 / t, 1}} / Sqrt[3]), {α, 8}]]];Row[{Graphics[Point[ReIm /@ trianglePoints], Frame -> True, ImageSize -> Small],
Graphics[Point[ReIm /@ w[trianglePoints]], Frame -> True, ImageSize -> Small]}, Spacer[20]]Solution of the Poisson–Boltzmann equation
:
ψ[x_, y_] = 4 ArcTanh[Sqrt[1 + (2/-1 + α^2 + β^2)]JacobiDN[x α, ((1 + α^2)^2 - β^4/4 α^2)] JacobiDN[y β, (-α^4 + (1 + β^2)^2/4 β^2)] / JacobiDC[x α, ((1 + α^2)^2 - β^4/4 α^2)] / JacobiDC[y β, (-α^4 + (1 + β^2)^2/4 β^2)]];Check solution using series expansion:
Series[Subscript[∂, x, x]ψ[x, y] + Subscript[∂, y, y]ψ[x, y] - Sinh[ψ[x, y]], {x, 0, 3}, {y, 0, 3}]//NormalProperties & Relations (2)
Compose with inverse functions:
{JacobiDC[InverseJacobiDC[z, m], m], InverseJacobiDC[JacobiDC[z, m], m]}Use PowerExpand to disregard multivaluedness of the inverse function:
PowerExpand[%]Solve a transcendental equation:
Solve[JacobiDC[x, m]^2 + 3JacobiDC[x, m] == a, x]//QuietPossible Issues (2)
Machine-precision input is insufficient to give the correct answer:
JacobiDC[10. ^ 16, 5 / 7]N[JacobiDC[10 ^ 16, 5 / 7], 20]Currently only simple simplification rules are built in for Jacobi functions:
JacobiDC[z, m] - (JacobiDN[z, m]/JacobiCN[z, m])FullSimplify[%]JacobiDC[u, m]^2 - JacobiSN[u, m]^2JacobiDC[u, m]^2 + m JacobiSN[u, m]^2//FullSimplifySee Also
Tech Notes
Related Guides
Related Links
History
Introduced in 1988 (1.0)
Text
Wolfram Research (1988), JacobiDC, Wolfram Language function, https://reference.wolfram.com/language/ref/JacobiDC.html.
CMS
Wolfram Language. 1988. "JacobiDC." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/JacobiDC.html.
APA
Wolfram Language. (1988). JacobiDC. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/JacobiDC.html
BibTeX
@misc{reference.wolfram_2026_jacobidc, author="Wolfram Research", title="{JacobiDC}", year="1988", howpublished="\url{https://reference.wolfram.com/language/ref/JacobiDC.html}", note=[Accessed: 12-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_jacobidc, organization={Wolfram Research}, title={JacobiDC}, year={1988}, url={https://reference.wolfram.com/language/ref/JacobiDC.html}, note=[Accessed: 12-June-2026]}