gives the Jacobi elliptic function .


  • 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.
  • JacobiCD is a meromorphic function in both arguments.
  • For certain special arguments, JacobiCD automatically evaluates to exact values.
  • JacobiCD can be evaluated to arbitrary numerical precision.
  • JacobiCD automatically threads over lists.


open allclose all

Basic Examples  (4)

Evaluate numerically:

Plot the function over a subset of the reals:

Plot over a subset of the complexes:

Series expansions at the origin:

Scope  (33)

Numerical Evaluation  (4)

Evaluate to high precision:

The precision of the output tracks the precision of the input:

Evaluate for complex arguments:

Evaluate JacobiCD efficiently at high precision:

JacobiCD threads elementwise over lists:

Specific Values  (3)

Simple exact answers are generated automatically:

Some poles of JacobiCD:

Find a zero of TemplateBox[{x, {1, /, 3}}, JacobiCD]:

Visualization  (3)

Plot the JacobiCD functions for various values of parameter:

Plot JacobiCD as a function of its parameter :

Plot the real part of TemplateBox[{z, {1, /, 2}}, JacobiCD]:

Plot the imaginary part of TemplateBox[{z, {1, /, 2}}, JacobiCD]:

Function Properties  (8)

JacobiCD is 4 TemplateBox[{m}, EllipticK]-periodic along the real axis:

JacobiCD is 2ⅈTemplateBox[{{1, -, m}}, EllipticK]-periodic along the imaginary axis:

JacobiCD is an even function in its first argument:

TemplateBox[{x, m}, JacobiCD] is an analytic function of for :

It is not, in general, an analytic function:

It has both singularities and discontinuities for :

TemplateBox[{x, {1, /, 3}}, JacobiCD] is neither nondecreasing nor nonincreasing:

TemplateBox[{x, m}, JacobiDC] is not injective for any fixed :

TemplateBox[{x, m}, JacobiCD] is not surjective for any fixed :

JacobiCD is neither non-negative nor non-positive:

JacobiCD is neither convex nor concave:

Differentiation  (3)

First derivative:

Higher derivatives:

Plot higher derivatives for :

Derivative with respect to :

Integration  (3)

Indefinite integral of JacobiCD:

Definite integral of an even integrand over the interval centered at the origin:

This is twice the integral over half the interval:

More integrals:

Series Expansions  (3)

Taylor expansion for TemplateBox[{x, {1, /, 3}}, JacobiCD]:

Plot the first three approximations for TemplateBox[{x, {1, /, 3}}, JacobiCD] around :

Taylor expansion for TemplateBox[{1, m}, JacobiCD]:

Plot the first three approximations for TemplateBox[{1, m}, JacobiCD] around :

JacobiCD can be applied to a power series:

Function Identities and Simplifications  (3)

Primary definition:

Parity transformations and periodicity relations are automatically applied:

Automatic argument simplifications:

Function Representations  (3)

Representation in terms of trigonometry functions and JacobiAmplitude:

Relation to other Jacobi elliptic functions:

TraditionalForm formatting:

Applications  (4)

Derivatives of Jacobi elliptic functions with respect to parameter :

Conformal map from a unit triangle to the unit disk:

Show points before and after the map:

Solution of the PoissonBoltzmann equation :

Check solution using series expansion:

Construct lowpass elliptic filter for analog signal:

Compute filter ripple parameters and associate elliptic function parameter:

Use elliptic degree equation to find the ratio of the pass and the stop frequencies:

Compute corresponding stop frequency and elliptic parameters:

Compute ripple locations and poles and zeros of the transfer function:

Compute poles of the transfer function:

Assemble the transfer function:

Compare with the result of EllipticFilterModel:

Properties & Relations  (3)

Compose with inverse functions:

Use PowerExpand to disregard multivaluedness of the inverse function:

Solve a transcendental equation:


Possible Issues  (2)

Machine-precision input is insufficient to give the correct answer:

Currently only simple simplification rules are built in for Jacobi functions:

Wolfram Research (1988), JacobiCD, Wolfram Language function, https://reference.wolfram.com/language/ref/JacobiCD.html.


Wolfram Research (1988), JacobiCD, Wolfram Language function, https://reference.wolfram.com/language/ref/JacobiCD.html.


Wolfram Language. 1988. "JacobiCD." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/JacobiCD.html.


Wolfram Language. (1988). JacobiCD. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/JacobiCD.html


@misc{reference.wolfram_2024_jacobicd, author="Wolfram Research", title="{JacobiCD}", year="1988", howpublished="\url{https://reference.wolfram.com/language/ref/JacobiCD.html}", note=[Accessed: 24-June-2024 ]}


@online{reference.wolfram_2024_jacobicd, organization={Wolfram Research}, title={JacobiCD}, year={1988}, url={https://reference.wolfram.com/language/ref/JacobiCD.html}, note=[Accessed: 24-June-2024 ]}