Overview of Elliptic Functions
This page describes the concept of elliptic functions. Here's a reference/formula sheet.
Elliptic functions are a class of functions, not part of the standard curriculum, that sometimes show up in the solutions to physics problems. I've seen them everywhere from gravitational fields in a toroidal universe, to the paths light takes around a black hole, to understanding a pendulum's motion without the typical small-angle approximation. They also have some beautiful behavior when viewed as functions on the complex numbers, rather than the reals.
Weierstrass ℘
The prototypical elliptic function is the Weierstrass ℘ function. It is a function from the complex plane to itself, parameterized by any one of the following:
- A lattice, \(\Lambda \subset \mathbb{C}\). Think of a regular two-dimensional grid of points, sitting inside the complex plane.
- A pair of generators, \(\omega_1\) and \(\omega_2\).
- The Weierstrass invariants, \(g_2\) and \(g_3\).
- The half-periods; an unordered triple \(e_1,e_2,e_3\), summing to zero.
The function is typically simply written as \(\wp(z)\), suppressing these parameters.
The variety of parameterizations come from the two different fundamental aspects of ℘.
-
It's doubly periodic. That is, \(\wp(z) = \wp(z + \lambda)\) for any \(\lambda \in \Lambda\). Equivalently, we have \(\wp(z) = \wp(z + \omega_1) = \wp(z + \omega_2)\), where \(\omega_1\) and \(\omega_2\) generate the lattice.
-
It solves the differential equation \(y'^2 = 4y^3 + g_2 y + g_3\). Equivalently, we can factor the cubic, yielding \(y'^2 = 4(y-e_1)(y-e_2)(y-e_3)\).
We can relate these two aspects to each other. The \(e_i\) values are half-periods, in the sense that \(\{\wp(z) \mid 2z \in \Lambda\} = \{e_1,e_2,e_3,\infty\}\). Specifically, \(e_1 = \wp(\tfrac{\omega_1}{2})\), \(e_2 = \wp(\tfrac{\omega_2}{2})\), \(e_3 = \wp(\tfrac{\omega_1 + \omega_2}{2})\), and \(\infty = \wp(0)\).
If using \(\wp\) here feels too circular, we can also calculate \(g_2\) and \(g_3\) directly. It turns out that \(g_2 = 60\sum\limits_{\lambda \in \Lambda \setminus \{0\}} \lambda^{-4}\), and \(g_3 = 140\sum\limits_{\lambda \in \Lambda \setminus \{0\}} \lambda^{-6}\).
Jacobi
But maybe your lattice is simply an axis-aligned grid of rectangles. In this case, it may be simpler to work with Jacobi's elliptic functions, instead of ℘.
Jacobi's functions feel a lot like trigonometry. You have functions like \(\operatorname{sn}(x)\) and \(\operatorname{cn}(x)\), satisfying equations like \(\operatorname{sn}^2 + \operatorname{cn}^2 = 1\).
But there are six common trig functions. For Jacobi's functions, there are twelve.
It's not so bad, though. Just as the trig functions have plenty of redundancy (\(\operatorname{sec}\) is just \(\frac{1}{\sin}\)), so do Jacobi's functions. In fact, Jacobi's functions are probably better designed; they form a very clean pattern.
The symbols are just every pair of letters taken from \(\{\mathrm{s},\mathrm{c},\mathrm{d},\mathrm{n}\}\). So you have functions like \(\operatorname{sn}(x)\) or \(\operatorname{cd}(x)\). Furthermore, products like \(\operatorname{cd} \operatorname{dn}\) simplify to \(\operatorname{cn}\), and functions like \(\operatorname{ss}\) simplify to \(1\).
So you can get away with just \(\operatorname{sn}\), \(\operatorname{cn}\), and \(\operatorname{dn}\). Everything else is a shorthand, like \(\operatorname{cd}\) for \(\frac{\operatorname{cn}}{\operatorname{dn}}\). This is a lot like doing trigonometry with just \(\sin\) and \(\cos\), by rewriting \(\tan\) as \(\frac{\sin}{\cos}\).
Just as ℘ was parameterized by either a lattice or a pair of invariants, Jacobi's functions are parameterized by a single number, \(m\). Or by its square root, \(k = \sqrt{m}\). So we typically write \(\operatorname{sn}(x,m)\) or \(\operatorname{sn}(x;k)\).
Other functions
There are various other relevant functions, which I won't go into here.
- Elliptic Integrals: Show up as inverses to Jacobi's elliptic functions, or in computing their period.
- Jacobi Amplitude: A function satisfying \(\sin(\operatorname{am}(x)) = \operatorname{sn}(x)\), \(\cos(\operatorname{am}(x)) = \operatorname{cn}(x)\), and \(\frac{d}{dx}\operatorname{am}(x) = \operatorname{dn}(x)\),
- Jacobi epsilon, Weierstrass sigma and zeta, et cetera et cetera. Don't worry about them; they mostly show up when you integrate other elliptic functions.