I’ve mentioned a couple times that Jacobi elliptic functions are generalizations of sines and cosines. In an earlier post I showed how you can make sn and cn from sine and cosine by a nonlinear rescaling of the input. In this post I’ll look at a *linear* scaling of the input and a sum of sines or cosines.

This post described how the Jacobi functions depend on a parameter *m*. As this parameter goes to zero, the functions sn and cn converge to sine and cosine respectively. Here we’ll look more quantitatively at what happens as *m* varies between 0 and 1.

The Jacobi functions are elliptic functions, so they’re periodic in two directions in the complex plane. The quarter period along the real axis is called *K* and is given as a function of *m* by the following integral.

You can see that as *m* goes to zero, *K* goes to π/2, and so we have a function with period 2π.

Along the imaginary axis, the quarter period is given by *K*‘ = *K*(1-*m*). So as *m* goes to zero, *K*‘ goes to infinity. Said another way, the sn and cn functions lose periodicity in the imaginary direction as they converge to sine and cosine. Their fundamental rectangle gets stretched into an infinite vertical strip.

We said we’d get more quantitative, and to do that we introduce a function with the quaint name **nome**. The nome of a Jacobi elliptic function is defined as

Since *K* and *K*‘ are both functions of *m*, *q* is a function of *m*, which we plot below.

The nome is important because it quantifies the size of Fourier coefficients.

We mentioned a linear scaling at the top of the post. That scaling is *v* = π*u*/(2*K*). With that change of variables, we can write down Fourier series for sn, cn, and dn in terms of *q*.

These equations are complicated, but we can begin to understand them by simply looking at the size of the coefficients.

If *q* is small, the denominators of the coefficients are approximately 1, so we can concentrate on the numerators, which are a geometric sequence. The coefficients go to zero rapidly, and so a small number of terms in the Fourier series are enough to approximate the Jacobi functions well.

As *m* goes to 1, so does *q*(*m*), but the function *q*(*m*) waits until the last minute to catch up with *m* because it has such a steep slope near 1. This means the function *q*(*m*) can be small even when *m* is large.

In the plot below, *m* = 0.99, and yet sn is approximated fairly well with only two sine terms. This is because *q*(0.99) = 0.262. For smaller *m*, say 0.8, it’s hard to distinguish sn and its two-term sine series approximation visually.

Note that Fourier series for sn and cn only contain odd multiples of *v*. It’s not obvious why this is so. Because sn is an odd function, its Fourier series only contains sine terms. But this doesn’t explain why it should only contain odd *frequencies*. This gives our approximation extra accuracy. Our two-term approximation is effectively a three-term approximation, with the middle term being zero.

The reason all the frequencies are odd is that shifting the function results in an even function. The sine waves must have a bump at that point. An even frequency would result in a zero at that point which would destroy the requirement that the shifted function is an even function.

Hello John. Thank you for this note. I used it to calculate the infrasound spectrum to which a kid is exposed while playing on a swing. For a length of 2 meters and a total angular amplitude of 60° (30° each side), the kid undergoes an atmospheric pressure variation of approximately 2.46 Pa at a frequency of 2.215 Hz (and its harmonics hence my interest in the Fourier serie of sn). This translates into an unfiltered sound level of 99 dB. This is much more than what any wind turbine produces in the same frequency range. We all know that kids ears do not suffer from playing on a swing. They would also be unharmed if exposed to wind turbine infrasounds !