Skip to content

JacobiSN ​

The Jacobi elliptic function sn⁡(u,m)\operatorname{sn}(u,m), one of the three primary Jacobi elliptic functions, in Wolfram/mpmath's m=k2m=k^2 parameter convention.

✓ checked against that system · ! checked, with disagreements (hover a chip)Wolfram LanguageJacobiSN!
JacobiSN(u, m)the Jacobi elliptic sine, argument u, parameter m.
Typed signatures
TypePackageApplies
(number, number) -> numberanalyticalways

Domain: Special functions

Details
  • m=k2m = k^2, the same convention EllipticK / EllipticF use — not the elliptic modulus k itself.
  • Numeric evaluation is the descending Landen/arithmetic-geometric-mean method (Abramowitz & Stegun 16.4) for real u, real m between 0 and 1, extended to m outside that range by the reciprocal-modulus (m > 1) and imaginary-modulus (m < 0) transformations, and to complex u via DLMF 22.8's real addition formulas (real-u/real-(1−m) evaluations combined algebraically — verified against mpmath to ~1e-13 relative across all four quadrants, large Im(u), and close to sn's poles).
  • A genuinely complex m stays unevaluated — neither the AGM recursion nor either parameter transform has been verified there.
  • Exact at u = 0 (sn = 0, for any m), m = 0 (sn = Sin(u)), m = 1 (sn = Tanh(u)), and the quarter period u = EllipticK(m) (sn = 1).
  • sn⁡2(u,m)+cn⁡2(u,m)=1\operatorname{sn}^2(u,m) + \operatorname{cn}^2(u,m) = 1 and dn⁡2(u,m)+msn⁡2(u,m)=1\operatorname{dn}^2(u,m) + m\operatorname{sn}^2(u,m) = 1, checked at complex u as part of this head's tests.
  • Numeric only — a symbolic argument (outside the exact table above) stays unevaluated; a floating-point argument (or N()) evaluates directly.
  • N(x, d) past a double's digits runs the same AGM in BigDecimal for real uu and 0<m<10 < m < 1; complex uu and other mm stay unevaluated there rather than print a double's digits as more.
  • Derivatives of every order in uu and in mm are closed forms in sn, cn, dn and the Jacobi epsilon E(u,m)=Z(u,m)+u E(m)/K(m)\mathcal{E}(u,m)=Z(u,m)+u\,E(m)/K(m) (DLMF 22.13): D, Series in uu at 00 or at a symbolic point, and Series in mm at m=0m=0 all give concrete coefficients. The mm-derivatives evaluate numerically for real uu and mm between 0 and 1.

Examples

23 more kept as data, checked against the oracles
Basic #

A floating-point argument evaluates directly to a decimal

live ↗
InN(JacobiSN(0.3,0.5))N(\mathrm{JacobiSN}(0.3, 0.5))Out0.293 412 733 168 455 40.293\,412\,733\,168\,455\,4

Known value · mpmath 1.3.0 ellipfun

Scope #

m greater than 1, via the reciprocal-modulus transformation

live ↗
InN(JacobiSN(0.3,1.5))N(\mathrm{JacobiSN}(0.3, 1.5))Out0.289 219 855 911 530 80.289\,219\,855\,911\,530\,8

Known value · mpmath 1.3.0 ellipfun

m less than 0, via the imaginary-modulus transformation

live ↗
InN(JacobiSN(0.3,−2))N(\mathrm{JacobiSN}(0.3, -2))Out0.304 023 383 088 759 870.304\,023\,383\,088\,759\,87

Known value · mpmath 1.3.0 ellipfun

A complex argument u

live ↗
InN(JacobiSN(0.3+0.4i,0.5))N(\mathrm{JacobiSN}(0.3+0.4i, 0.5))Out0.328 927 004 182 561 6+0.386 835 694 367 635 2i0.328\,927\,004\,182\,561\,6+0.386\,835\,694\,367\,635\,2i

Known value · mpmath 1.3.0 ellipfun

The derivative in the parameter m, in closed form through the Jacobi zeta

live ↗
IndJacobiSN(u,m)dm\frac{\mathrm{d}\mathrm{JacobiSN}(u, m)}{\mathrm{d}m}Out−(uEllipticE(m)EllipticK(m)+JacobiZN(u,m))JacobiDN(u,m)JacobiCN(u,m)2m×(1−m)+uJacobiDN(u,m)JacobiCN(u,m)2m+JacobiSN(u,m)JacobiCN(u,m)22(1−m)-\frac{(\frac{u\mathrm{EllipticE}(m)}{\mathrm{EllipticK}(m)}+\mathrm{JacobiZN}(u, m))\mathrm{JacobiDN}(u, m)\mathrm{JacobiCN}(u, m)}{2m×(1-m)}+\frac{u\mathrm{JacobiDN}(u, m)\mathrm{JacobiCN}(u, m)}{2m}+\frac{\mathrm{JacobiSN}(u, m)\mathrm{JacobiCN}(u, m)^2}{2(1-m)}

The Taylor series at u = 0, its coefficients polynomials in m

live ↗
InSeries⁡(JacobiSN(u,m),u,0,5)\operatorname{Series}(\mathrm{JacobiSN}(u, m), u, 0, 5)Outu+16((−m−1)u3)+1120((m2+14m+1)u5)+O(u7)u+\frac{1}{6}((-m-1)u^3)+\frac{1}{120}((m^2+14m+1)u^5)+O\left(u^7\right)

The series in the parameter m at m = 0, its coefficients trigonometric in z

live ↗
InSeries⁡(JacobiSN(z,m),m,0,2)\operatorname{Series}(\mathrm{JacobiSN}(z, m), m, 0, 2)Outsin⁡(z)+m×(−zcos⁡(z)4+sin⁡(z)16+sin⁡(3z)16)+(−132(sin⁡(z)z2)−3zcos⁡(z)32−164(3zcos⁡(3z))+sin⁡(5z)256+7sin⁡(z)256+sin⁡(3z)32)m2+O(m3)\sin(z)+m×(-\frac{z\cos(z)}{4}+\frac{\sin(z)}{16}+\frac{\sin(3z)}{16})+(-\frac{1}{32}(\sin(z)z^2)-\frac{3z\cos(z)}{32}-\frac{1}{64}(3z\cos(3z))+\frac{\sin(5z)}{256}+\frac{7\sin(z)}{256}+\frac{\sin(3z)}{32})m^2+O\left(m^3\right)

The series about a symbolic point u0, its coefficients the Jacobi functions at u0

live ↗
InSeries⁡(JacobiSN(u,m),u,u0,2)\operatorname{Series}(\mathrm{JacobiSN}(u, m), u, \mathrm{u0}, 2)OutJacobiSN(u0,m)+(u−u0)JacobiDN(u0,m)JacobiCN(u0,m)+12((−(mJacobiSN(u0,m)JacobiCN(u0,m)2)−JacobiSN(u0,m)JacobiDN(u0,m)2)(u−u0)2)+O((u−u0)3)\mathrm{JacobiSN}(\mathrm{u0}, m)+(u-\mathrm{u0})\mathrm{JacobiDN}(\mathrm{u0}, m)\mathrm{JacobiCN}(\mathrm{u0}, m)+\frac{1}{2}((-(m\mathrm{JacobiSN}(\mathrm{u0}, m)\mathrm{JacobiCN}(\mathrm{u0}, m)^2)-\mathrm{JacobiSN}(\mathrm{u0}, m)\mathrm{JacobiDN}(\mathrm{u0}, m)^2)(u-\mathrm{u0})^2)+O\left((u-\mathrm{u0})^3\right)
Properties #

u = 0 is 0, for any m

live ↗
InJacobiSN(0,m)\mathrm{JacobiSN}(0, m)Out00

m = 0 reduces to Sin(u)

live ↗
InJacobiSN(u,0)\mathrm{JacobiSN}(u, 0)Outsin⁡(u)\sin(u)

m = 1 reduces to Tanh(u)

live ↗
InJacobiSN(u,1)\mathrm{JacobiSN}(u, 1)Outtanh⁡(u)\tanh(u)
live ↗
InN(JacobiSN(21/24i,−1))N(\mathrm{JacobiSN}(\frac{2^{1/2}}{4}i, -1))Out0.353 001 681 776 936 5i0.353\,001\,681\,776\,936\,5i

Known value · Wolfram MathematicalFunctionData, JacobiSN, Landen's transformation

live ↗
InN(JacobiSN(12(1+21/22),(1−21/2/2)2(1+21/2/2)2))N(\mathrm{JacobiSN}(\frac{1}{2}(1+\frac{2^{1/2}}{2}), \frac{(1-2^{1/2}/2)^2}{(1+2^{1/2}/2)^2}))Out0.751 886 344 298 584 40.751\,886\,344\,298\,584\,4

Known value · Wolfram MathematicalFunctionData, JacobiSN, Gauss' transformation

live ↗
InN(JacobiSN(2i,−1))N(\mathrm{JacobiSN}(\sqrt{2}i, -1))Out0.989 409 220 611 930 6i0.989\,409\,220\,611\,930\,6i

Known value · Wolfram MathematicalFunctionData, JacobiSN, Landen's transformation

live ↗
InN(JacobiSN(2(1+22),(1−21/2/2)2(1+21/2/2)2))N(\mathrm{JacobiSN}(2(1+\frac{\sqrt{2}}{2}), \frac{(1-2^{1/2}/2)^2}{(1+2^{1/2}/2)^2}))Out−0.246 469 043 732 777 75-0.246\,469\,043\,732\,777\,75

Known value · Wolfram MathematicalFunctionData, JacobiSN, Gauss' transformation

Possible issues #

Symbolic arguments are left unevaluated rather than guessed at

live ↗
InJacobiSN(u,m)\mathrm{JacobiSN}(u, m)OutJacobiSN(u,m)\mathrm{JacobiSN}(u, m)

A genuinely complex m is declined — neither the AGM recursion nor its parameter transforms are verified there

live ↗
InN(JacobiSN(0.3,0.5+0.2i))N(\mathrm{JacobiSN}(0.3, 0.5+0.2i))OutJacobiSN(0.3,0.5+0.2i)\mathrm{JacobiSN}(0.3, 0.5+0.2i)

Same gap as JacobiCD (the true value is tracked there, not repeated per head): u this far out has no argument reduction against its real period, so the guard in exceedsDoublePrecision's sibling (periodsExceedDouble, ce-patches/support/precise.ts) declines rather than return a wrong value.

live ↗
InN(JacobiSN(1016,13))N(\mathrm{JacobiSN}(10^{16}, \frac{1}{3}))OutJacobiSN(10 000 000 000 000 000.0,0.3‾)\mathrm{JacobiSN}(10\,000\,000\,000\,000\,000.0, 0.\overline{3})
About
Examples41
Checked againstWolfram Language 39 agree2 differ
CrosswalkWolfram Language

See also: JacobiCN, JacobiDN, JacobiAmplitude, EllipticK