Computational Fluid Dynamics · Chapter 7 of 10 · Intermediate
Unsteady Flows and Time Stepping
Add time and the solution marches forward step by step. An explicit step is cheap but unstable if you push it too far; the Courant and Fourier numbers tell you exactly how far you can go.
Readiness check
This chapter marches in time. Tick only what you can do closed-notes.
- Recall the transient term ∂φ/∂t.
- Approximate a time derivative by a finite difference.
- Recall thermal diffusivity α = k/(ρc).
- Form a dimensionless ratio with Δt and Δx.
- Distinguish solving directly from marching forward.
The core idea
The unsteady term advances the solution one time step at a time. An explicit step uses only old values and is cheap but conditionally stable; an implicit step solves a system each step but is stable for any Δt.
Co = uΔt/Δx ≤ 1 (explicit, convection)Fo = αΔt/Δx² ≤ 0.5 (explicit, diffusion)implicit: stable for any ΔtThe transient term ∂φ/∂t is approximated by the change over a time step Δt. In an explicit scheme the spatial terms are evaluated at the old time level, so each new value is an immediate formula, but information can only travel so far per step: the Courant number Co = uΔt/Δx must stay at or below one, and for diffusion the Fourier number Fo = αΔt/Δx² must stay at or below one half. Exceed them and the solution blows up. An implicit scheme evaluates the spatial terms at the new time level, requiring a linear solve each step but remaining stable for any time step. Crank-Nicolson averages the two for second-order accuracy. The choice is cost per step against the size of step allowed.
The skills, taught in order
Five skills discretize the unsteady term, contrast explicit and implicit, add Crank-Nicolson, and state the stability limits.
7.1 The unsteady term
Integrating ∂(ρφ)/∂t over a control volume and a time step gives ρ(φnew − φold)V/Δt. How the spatial terms are evaluated, at the old or new time, defines the scheme and its stability.
7.2 The explicit scheme
Evaluating the spatial terms at the old time level makes each new value an explicit formula, with no system to solve. It is cheap per step but only conditionally stable: the time step is capped by the Courant and Fourier limits.
7.3 The implicit scheme
Evaluating the spatial terms at the new time level couples the unknowns, so a linear system is solved each step. The reward is unconditional stability: any time step is stable, though accuracy still limits how large it should be.
| Scheme | Stability | Accuracy | Cost per step |
|---|---|---|---|
| Explicit | conditional (Co ≤ 1, Fo ≤ 0.5) | first order in time | cheap, no solve |
| Implicit | unconditional | first order in time | a solve each step |
| Crank-Nicolson | unconditional | second order in time | a solve each step |
7.4 Crank-Nicolson
Averaging the old and new time levels gives the Crank-Nicolson scheme, which is second-order accurate in time and unconditionally stable. It can oscillate for very large steps, so it is used with moderate time steps for accurate transients.
7.5 The stability numbers
For explicit schemes the Courant number Co = uΔt/Δx limits convection (a parcel must not cross a whole cell in one step) and the Fourier number Fo = αΔt/Δx² limits diffusion. Refining the mesh tightens both, which is why fine explicit simulations need tiny time steps.
Engineering connection: transient SIMPLE and PISO march the pressure-velocity coupling of Chapter 5 in time, subject to these same limits.
Worked example 1: the Courant stability limit
An explicit convection simulation has flow speed u = 2 m/s on a grid with Δx = 0.01 m. Find the largest stable time step, and the Courant number at Δt = 0.004 s.
- ProblemFind the maximum stable Δt and the Courant number at 0.004 s for the case in Figure 1.
- Given / findu = 2 m/s, Δx = 0.01 m, explicit scheme. Find Δtmax and Co at Δt = 0.004 s.
- AssumptionsExplicit convection; the stability limit is Co ≤ 1.
- ModelCo = uΔt/Δx; set Co = 1 for the limiting step.
- EquationsCo = uΔt/ΔxΔtmax = Δx/u
- SolveΔtmax = Δx/u = 0.01/2 = 0.005 s. At Δt = 0.004 s, Co = (2 × 0.004)/0.01 = 0.8 ≤ 1, so it is stable.
- CheckA time step of 0.008 s would give Co = 1.6, above one, so the parcel would cross more than a cell and the explicit scheme would diverge. The chosen 0.004 s sits safely below the limit.
- ConclusionThe Courant number caps the explicit step for convection. Finer meshes force smaller steps, the cost of explicit time marching.
Worked example 2: the diffusion stability limit
An explicit transient conduction simulation has thermal diffusivity α = 1×10⁻⁵ m²/s on a grid with Δx = 0.002 m. Find the largest stable time step from the Fourier number limit.
- ProblemFind the maximum stable Δt for the explicit conduction case in Figure 2.
- Given / findα = 1×10⁻⁵ m²/s, Δx = 0.002 m, explicit scheme. Find Δtmax.
- AssumptionsOne-dimensional explicit diffusion; the stability limit is Fo ≤ 0.5.
- ModelFo = αΔt/Δx²; set Fo = 0.5 for the limiting step.
- EquationsFo = αΔt/Δx²Δtmax = 0.5 Δx²/α
- SolveΔtmax = 0.5 × (0.002)²/(1×10⁻⁵) = 0.5 × 4×10⁻⁶/1×10⁻⁵ = 0.5 × 0.4 = 0.2 s.
- CheckThe grid spacing enters squared, so refining to Δx = 0.001 m would cut the allowed step to a quarter, 0.05 s. This quadratic penalty is why fine explicit diffusion runs are expensive and implicit schemes are often preferred.
- ConclusionThe Fourier number caps the explicit step for diffusion. When small cells force a tiny step, an implicit scheme removes the limit at the cost of a solve per step.
Misconceptions and diagnostics
| Mistake | Symptom | Diagnostic question | Correction |
|---|---|---|---|
| Explicit step too large | Solution blows up | "Is Co ≤ 1 and Fo ≤ 0.5?" | Cap the explicit step by the stricter of the two limits. |
| Assuming implicit is always accurate | Smeared or oscillatory transient | "Is the step too big for accuracy?" | Unconditional stability is not unlimited accuracy; keep Δt reasonable. |
| Forgetting the Δx² in Fourier | Diffusion limit miscomputed | "Is the grid spacing squared?" | Fo uses Δx², so refining hits the step hard. |
| Ignoring the stricter limit | Instability despite checking one number | "Did I check both Co and Fo?" | For convection-diffusion, the smaller allowed step governs. |
Practice ladder
For u = 5 m/s and Δx = 0.02 m, find the largest stable explicit time step (convection).
Show answer
Δtmax = Δx/u = 0.02/5 = 0.004 s, the step that gives Co = 1.
For the Worked Example 2 case, what is the maximum step if the mesh is refined to Δx = 0.001 m?
Show answer
Δtmax = 0.5 × (0.001)²/1×10⁻⁵ = 0.5 × 0.1 = 0.05 s, a quarter of the original because Δx is halved.
A convection-diffusion case has u = 1 m/s, α = 2×10⁻⁵ m²/s, Δx = 0.005 m. Find the explicit step from each limit and say which governs.
Show answer
Convection: Δt = Δx/u = 0.005 s. Diffusion: Δt = 0.5(0.005)²/2×10⁻⁵ = 0.625 s. The convection limit (0.005 s) is smaller, so it governs.
For a real transient simulation, decide whether you would use an explicit or implicit scheme and justify it from the time step the stability limits allow.
What good work looks like
An estimate of the explicit step from Co and Fo, compared to the physical time scale of interest, and an implicit choice if the stable explicit step would be impractically small.
Working with AI, and proving it yourself
Use AI as an examiner, not a solver
Portfolio task
For a transient case, compute the Courant and Fourier limits, choose explicit or implicit, and justify the time step against both stability and the physical time scale.
Retrieval and spaced review
Closed notes. Answer out loud, then reveal.
1. What distinguishes explicit from implicit?
Explicit evaluates spatial terms at the old time (no solve); implicit at the new time (a solve each step).
2. Write the Courant number and its limit.
Co = uΔt/Δx ≤ 1 for explicit convection.
3. Write the Fourier number and its limit.
Fo = αΔt/Δx² ≤ 0.5 for explicit diffusion.
4. What is Crank-Nicolson?
A time-average of old and new levels: second-order accurate, unconditionally stable.
5. Why are fine explicit runs expensive?
Both limits tighten as Δx shrinks, forcing very small time steps.
Textbook mapping
| Item | Mapping |
|---|---|
| Primary source | Versteeg and Malalasekera, An Introduction to Computational Fluid Dynamics, Chapter 8 (Finite Volume Method for Unsteady Flows) |
| Cross-reference | Anderson, Ch. 4 · Heat Transfer, Ch. 4 |
| Core topics | 7.1 Unsteady term · 7.2 Explicit · 7.3 Implicit · 7.4 Crank-Nicolson · 7.5 Stability numbers |
| Engineering connection | Transient SIMPLE and PISO march the flow in time within these limits. |
| Read next | Chapter 8: Turbulence Modeling. |