A Place of Ideas

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:

The function is typically simply written as \(\wp(z)\), suppressing these parameters.

The variety of parameterizations come from the two different fundamental aspects of ℘.

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.