The CFL Condition — Stability and Von Neumann Analysis
Summary
Studied the Lax Equivalence Theorem, Von Neumann stability analysis, and the CFL (Courant–Friedrichs–Lewy) condition. The CFL condition requires that physical information must not travel farther in one time step than the numerical stencil can reach. Satisfying CFL is necessary for many explicit schemes, but not always sufficient for stability.
Lax Equivalence Theorem
A fundamental result for linear initial-value problems (IVPs):
For a consistent finite-difference method applied to a well-posed linear IVP, the method is convergent if and only if it is stable.
This links two practical questions — does the numerical solution approach the true solution? (convergence) and do roundoff errors stay bounded? (stability).
Von Neumann stability analysis
Von Neumann analysis studies how a single Fourier mode of the numerical error is amplified over one time step.
Decompose the error at time into Fourier modes:
Find the amplification factor defined by .
The scheme is stable if for all wavenumbers (i.e. for all ).
If for any mode, that error component grows exponentially and the scheme is unstable.
Example 1: Heat equation (diffusion)
Forward Euler in time, central difference in space (FTCS):
Applying the same update to the error and substituting a Fourier mode with :
Stability: for all .
- At : (neutral — no growth).
- Worst case at : .
Requiring gives:
This is the stability limit for explicit FTCS on the heat equation.
Example 2: 1D linear advection (upwind scheme)
Forward Euler in time, backward difference in space (upwind):
where the Courant number is:
Von Neumann analysis gives:
For , one can show for all . The CFL condition for this upwind scheme is:
Physical meaning: A fluid parcel must not travel more than one grid cell per time step — information cannot outrun the numerical stencil.
CFL is necessary but not sufficient
The CFL condition states that information should not propagate farther than one mesh spacing per time step. However, satisfying CFL does not guarantee stability for every scheme.
Counterexample — FTCS for advection:
Using forward time and central space for , Von Neumann analysis shows for some Fourier modes even when . FTCS is unconditionally unstable for the pure advection equation, regardless of the time-step size.
| Scheme | Equation | CFL / stability limit |
|---|---|---|
| FTCS | Heat () | |
| Upwind | Advection (, ) | |
| FTCS | Advection | Unstable (even with small ) |
Takeaways
- Lax theorem: consistency + stability convergence (linear well-posed IVPs).
- Von Neumann: track for every Fourier mode; require .
- CFL: must be small enough that the numerical domain of dependence covers the physical domain of dependence.
- Always verify stability for the specific scheme — CFL alone is not enough.
References & code
Add simulation plots or code links here when ready.
