# What is the origin of the spurious oscillations in the Crank-Nicolson scheme?

I was reading about the Crank-Nicolson method, and it is often said that it can produce "spurious oscillations" or that this method is prone to "ringing", especially for large time step and stiff initial value.

I'm curious about that phenomena but I can't find any satisfying answer. I read on this website that this could be because the Crank-Nicolson scheme was not L-stable.

What is the definition of L-stable ? How this is related to the production of oscillations ?

I found in this paper a beginning of an explanation thanks to a Fourier transform (see eq. 9, p. 255), but I really can't understand why the frequency $\varphi$ is only between $-\pi$ and $\pi$, and why $\varphi \approx \pm \pi$ should correspond to "high frequencies". Can you help me with that, too ?

Finally, I would like to know if this spurious oscillations problem always appear with a Crank-Nicolson scheme, or does it depend on the equation you discretize ?

To sum up, my questions are :

1. What is the origin of the spurious oscillations when using a Crank-Nicolson scheme ?
2. Does it depend on the equation we consider ?
3. What is the L-stability and in what it is related with the oscillations ? (if it is)
4. Can you help me to understand eq. 9 of this paper, why $-\pi < \varphi < \pi$ and not $\varphi \in \mathbb{R}$ ?
• Usually the frequencies are limited by the grid itself: a function defined on a regular grid can't oscillate faster than $(-1)^j$, which is $\cos \pi x/h$, which in this notation limits the frequencies to $[-\frac\pi h,\frac\pi h]$. Mar 28, 2017 at 3:01
• The Crank-Nicholson method is a multi-stage time stepping scheme. If you do a Von Neumann analysis on a 1D advection problem you'll see that the scheme has dispersion errors and produces more than one mode that travels at different speeds. This is why you see spurious oscillations. Mar 28, 2017 at 10:18
• @Kirill, thank you. I drew several cosinus with different frequency on a space grid and I now understand that any oscillation of higher frequency can not be represented and will be "interpreted" as an oscillation of lower frequency. This makes sense to me. Mar 29, 2017 at 0:01
• @Matthieu The things you ask about are usually covered in textbooks better than in the overview paper you linked to, so it might be easier to check out something like LeVeque's book, or Morton-Meyers. I think it should explain it quite well. Mar 29, 2017 at 0:06
• Yes. This pdf seems to have a decent overview. people.maths.ox.ac.uk/trefethen/5all.pdf Mar 29, 2017 at 8:25

There is something very basic that you should know about hyperbolic problems. Consider the most basic example $\partial_tu+a\partial_xu=0$ with a numerical marching scheme of the form $$u_j^{n+1}=\sum_kc_ku_{j+k}^n$$. This covers all explicit schemes, and all implicit schemes like Crank Nicolson also, if you begin by solving the tridiagonal system. It actually covers ALL numerical methods, of any kind, that are linear under addition and multiplication. Godunov's theorem, known since 1959, asserts that any method of that form that is better than first-order accurate will produce spurious oscillations. LeVeque's book will fill you in.