VVUQ · Module 3 of 10
Solution Verification: Richardson Extrapolation and the GCI
A verified code still gives an approximate answer on any finite mesh. Solution verification estimates that discretization error, extrapolates to the exact value, and reports it as a grid convergence index with a safety factor.
Readiness check
This module quantifies discretization error. Tick only what you can do closed-notes.
- Recall the observed order of accuracy from two grids.
- Recall Richardson extrapolation from numerical methods.
- Compute a relative difference between two results.
- Recall that a finer mesh has less error.
- Apply a factor of safety to an estimate.
The core idea
Solution verification estimates the discretization error of a specific result. Richardson extrapolation combines two grids to estimate the exact value, and the grid convergence index turns that estimate into a reported numerical uncertainty with a factor of safety.
fexact ≈ ffine + (ffine − fcoarse)/(rp − 1)GCI = Fs |ε| / (rp − 1)ε = relative difference between gridsEven a verified code produces only an approximate answer on any finite mesh; the gap to the exact solution is the discretization error, and estimating it is solution verification. Richardson extrapolation is the key tool: if the error falls at order p, then two solutions on grids differing by a refinement ratio r can be combined to estimate the exact value, fexact ≈ ffine + (ffine − fcoarse)/(rp − 1). The extrapolated value is far more accurate than either grid alone. To report the error conservatively rather than optimistically, Roache's grid convergence index (GCI) wraps this estimate in a factor of safety: GCI = Fs|ε|/(rp − 1), where ε is the relative difference between the two grids and Fs is typically 1.25 for three or more grids. The GCI is a percentage numerical uncertainty band on the fine-grid result, the quantity that feeds the validation uncertainty later. All of this holds only in the asymptotic range, where the observed order is stable, so a convergence study uses systematically refined grids and checks that the order is consistent.
The skills, taught in order
Five skills build discretization-error estimation, extrapolation, and the GCI.
3.1 Discretization error
Discretization error is the difference between the finite-mesh result and the exact solution of the equations. It is a numerical error, part of verification, and must be estimated before a result is compared to data, so validation is not corrupted by an uncorverged mesh.
3.2 Richardson extrapolation
With the observed order p and a refinement ratio r, Richardson extrapolation estimates the exact value from two grids: fexact ≈ ffine + (ffine − fcoarse)/(rp − 1). The correction term is the estimated discretization error of the fine grid.
3.3 The grid convergence index
The GCI converts the extrapolation into a conservative uncertainty: GCI = Fs|ε|/(rp − 1), with ε the relative difference between grids and Fs a factor of safety (1.25 with three or more grids, 3 with two). It is reported as a percentage band on the fine result.
| Quantity | Expression | Meaning |
|---|---|---|
| Relative difference | ε = (ffine − fcoarse)/ffine | grid-to-grid change |
| Extrapolated value | ffine + (ffine − fcoarse)/(rp − 1) | estimate of exact |
| GCI | Fs|ε|/(rp − 1) | numerical uncertainty band |
The grid convergence index reports discretization error conservatively, as a percentage band on the fine-grid solution.
3.4 The asymptotic range
Richardson extrapolation and the GCI are valid only in the asymptotic range, where refining the grid gives a stable observed order matching the theoretical one. A three-grid study checks this by confirming the order is consistent between grid pairs.
3.5 Reporting numerical uncertainty
The output of solution verification is the fine-grid result plus or minus its GCI, a numerical uncertainty that becomes one input to the validation uncertainty. A result with no GCI is a result with no known numerical error.
Engineering connection: a CFD drag coefficient or an FEA peak stress is not reportable until a grid convergence study gives it a numerical uncertainty band.
Worked example 1: Richardson extrapolation
A quantity is 0.940 on a coarse grid and 0.970 on a grid refined by r = 2, with observed order p = 2. Estimate the exact value by Richardson extrapolation.
- ProblemEstimate the exact value for the grids in Figure 1.
- Given / findfcoarse = 0.940, ffine = 0.970, r = 2, p = 2. Find fexact.
- AssumptionsThe grids are in the asymptotic range, so the order-2 extrapolation applies.
- Modelfexact ≈ ffine + (ffine − fcoarse)/(rp − 1).
- Equationsrp − 1 = 22 − 1 = 3correction = (0.970 − 0.940)/3
- SolveCorrection = 0.030/3 = 0.010. fexact ≈ 0.970 + 0.010 = 0.980.
- CheckThe correction (0.010) is the estimated discretization error of the fine grid, one-third of the 0.030 grid-to-grid change, as rp − 1 = 3 requires.
- ConclusionThe exact value is estimated at 0.980, so the fine-grid 0.970 is about 0.010 low. Extrapolation sharpens two ordinary grids into a much better estimate.
Worked example 2: the grid convergence index
For the same two grids (fcoarse = 0.940, ffine = 0.970, r = 2, p = 2), report the fine-grid result's numerical uncertainty as a GCI with a factor of safety Fs = 1.25.
- ProblemReport the GCI numerical uncertainty for the fine grid in Figure 2.
- Given / findfcoarse = 0.940, ffine = 0.970, r = 2, p = 2, Fs = 1.25. Find the GCI.
- AssumptionsThe grids are in the asymptotic range; three-grid safety factor 1.25 applies.
- Modelε = (ffine − fcoarse)/ffine; GCI = Fs|ε|/(rp − 1).
- Equationsε = (0.970 − 0.940)/0.970 = 0.0309GCI = 1.25 × 0.0309 / 3
- SolveGCI = 1.25 × 0.0309/3 = 0.0129 = 1.29%. The fine result is 0.970 ± 1.29%.
- CheckThe GCI (1.29%) exceeds the bare extrapolated error (about 1.03% of 0.970) by the 1.25 factor, giving a conservative band as intended.
- ConclusionThe fine-grid result carries a numerical uncertainty of about 1.3%. This band, not the bare number, is what a validation and decision downstream must use.
Misconceptions and diagnostics
| Mistake | Symptom | Diagnostic question | Correction |
|---|---|---|---|
| Extrapolating outside the asymptotic range | Unstable observed order | "Is the order consistent between grids?" | Refine until the order stabilises. |
| No factor of safety | Optimistic error estimate | "Did I apply Fs?" | Use the GCI with its safety factor. |
| Reporting a bare fine result | No numerical uncertainty | "Where is the GCI band?" | Report the result plus or minus its GCI. |
| Confusing GCI with validation error | Numerical band called model error | "Is this numerical or physical?" | GCI is numerical; validation compares to data. |
Practice ladder
For fcoarse = 1.00, ffine = 1.06, r = 2, p = 2, find the Richardson-extrapolated value.
Show answer
Correction = (1.06 − 1.00)/(4 − 1) = 0.06/3 = 0.02. fexact ≈ 1.06 + 0.02 = 1.08.
For those grids, find the GCI with Fs = 1.25.
Show answer
ε = 0.06/1.06 = 0.0566. GCI = 1.25 × 0.0566/3 = 0.0236 = 2.36%.
Two grids give 2.10 and 2.00 with r = 2 but an observed order p = 1. Find the extrapolated value.
Show answer
rp − 1 = 2 − 1 = 1, so correction = (2.10 − 2.00)/1 = 0.10, fexact ≈ 2.20. A first-order scheme extrapolates with a larger correction.
A colleague reports a single-mesh CFD result with no uncertainty. Explain what a grid convergence study would add and what to report.
What good work looks like
Run three systematically refined meshes, confirm the observed order is in the asymptotic range, extrapolate to the exact value, and report the fine result with its GCI band, so the number carries a defensible numerical uncertainty.
Working with AI, and proving it yourself
Use AI as an examiner, not a solver
Portfolio task
Run a three-grid convergence study on a real simulation, extrapolate to the exact value, and report the fine result with its GCI numerical uncertainty.
Retrieval and spaced review
Closed notes. Answer out loud, then reveal.
1. What is discretization error?
The difference between the finite-mesh result and the exact solution of the equations.
2. Write the Richardson estimate of the exact value.
fexact ≈ ffine + (ffine − fcoarse)/(rp − 1).
3. Write the GCI.
GCI = Fs|ε|/(rp − 1), a conservative numerical uncertainty.
4. Why a factor of safety?
To report the discretization error conservatively rather than optimistically.
5. When are these valid?
Only in the asymptotic range, where the observed order is stable.
Standards mapping
This module follows the ASME Verification, Validation, and Uncertainty Quantification standards. Use these references to read further.
| Topic in this module | Where to read more |
|---|---|
| Solution verification and discretization error | ASME V&V 20, CFD and Heat Transfer |
| Grid convergence index | ASME V&V 20, CFD and Heat Transfer |
| Richardson extrapolation | Oberkampf and Roy, Verification and Validation in Scientific Computing |
Standard designations refer to the ASME V&V series; the GCI procedure originates with Roache and is presented in ASME V&V 20.