Solution (source code)

= Solution

Insert the <Fourier mode> $u_m^n=g^ne^{im\theta}$ into the <leapfrog advection scheme>. The amplification roots satisfy
$$
g^2-2i\mu\sin\theta\,g-1=0,\qquad g_\pm=i\mu\sin\theta\pm\sqrt{1-\mu^2\sin^2\theta}.
$$
For $0<\mu<1$, both roots have modulus one and remain uniformly separated by at least $2\sqrt{1-\mu^2}$. The two-level Fourier amplification matrices are therefore uniformly diagonalizable, and their powers stay bounded. The <Parseval identity> gives stability in the discrete two-norm. For $\mu>1$, some frequencies have $|\mu\sin\theta|>1$ and one root has modulus greater than one, giving instability.

For <two-level stability at the leapfrog Courant boundary>, at $\mu=1$ and $\theta=\pi/2$, the repeated root is $i$ and the recurrence has solutions $a_n=(A+Bn)i^n$. For example $a_0=0,a_1=1$ gives $a_n=ni^{n-1}$. Thus arbitrary two-level perturbations grow without a uniform power bound. The precise answer for unrestricted starting data is
$$
\boxed{0<\mu<1\text{ is stable};\quad\mu>1\text{ is unstable};\quad\mu=1\text{ is a repeated-root boundary case}.}
$$
The often-used root-modulus CFL condition is $\mu\le1$, but by itself it misses this boundary Jordan growth. A startup that selects the exact translating branch at $\mu=1$ removes that growth for the selected data; it does not make the unrestricted two-level update power-bounded.