NAFEMS T1: 1D Steady-State Heat Conduction Analysis
Theory: 1D problems with exact solutions
Overview
I was told to start verifying a thermal solver with a 1D problem. Isn't that too simple?
Because it's simple, you can compare with the exact solution digit by digit. It checks, without other factors mixed in, whether boundary conditions, conductivity and heat-generation input, and iteration for temperature-dependent properties work correctly. There's a trap, though: 1D linear elements can reproduce nodal temperatures exactly regardless of grid coarseness. Judging only by nodes, you may have verified nothing at all. Also, confirm the official dimensions and conditions of the NAFEMS thermal benchmarks in the source document.
Governing equation
With constant $k$ and no generation $\dot q$ the temperature is linear; with uniform generation it is parabolic.
Temperature-dependent conductivity
With the Kirchhoff transform $\theta$, even temperature-dependent conductivity gives $\theta$ linear in $x$, so the exact solution follows by inverse transform — the standard way to verify nonlinear thermal analysis.
NAFEMS and its benchmarks
NAFEMS was founded in the UK in 1983 to raise the quality and reliability of finite element analysis. As commercial FE software spread, the same problem could give different answers in different codes. NAFEMS collected standard problems with exact or trusted reference solutions and published them as benchmarks by field — linear elastic (LE), thermal (T), eigenvalue (FV) and more. Many codes' verification manuals still report results for these problems.
Worked example: solving with linear elements
A 0.1 m slab, 100 °C on one face and 0 °C on the other, conductivity 50 W/mK, solved with linear elements.
Example 1: uniform generation (10⁶ W/m³)
| Elements | Nodal error | Mid-element error | End heat-flux error |
|---|---|---|---|
| 2 | 0 (exact) | 6.25 K | 25% of max |
| 4 | 0 (exact) | 1.56 K | 12.5% |
| 8 | 0 (exact) | 0.39 K | 6.2% |
| 16 | 0 (exact) | 0.10 K | 3.1% |
Zero nodal error with just two elements, yet 6 K off inside the element?
In 1D, linear elements reproduce nodal values exactly when conductivity is constant. But inside the element they only connect nodes with a straight line, missing the parabolic profile, and heat flux is constant per element, so at the end it's off by 25% of the maximum. The errors also decay differently — second order for mid-element temperature, first order for flux. Verify with nodal temperatures alone and these errors are invisible; compare heat flux and element-interior temperature too.
Example 2: temperature-dependent conductivity
With $k = k_0(1 + \beta T)$ ($\beta$ = 0.005 1/K), the exact mid-plane value is 54.95 °C (50 °C for constant k). But evaluating conductivity at the element mean temperature matched nodes exactly at every element count, because for linear conductivity that evaluation is mathematically identical to the Kirchhoff transform. So $k = k_0(1 + \beta T)^2$ was used instead (exact mid-plane 59.62 °C):
| Elements | Max nodal error | Order | Newton | Picard |
|---|---|---|---|---|
| 2 | 0.091 K | — | 5 | 8 |
| 4 | 0.031 K | 1.58 | 5 | 12 |
| 8 | 0.0078 K | 1.97 | 5 | 13 |
| 16 | 0.0020 K | 1.99 | 5 | 14 |
| 32 | 0.00049 K | 2.00 | 5 | 14 |
Error falls at second order, and Newton converged in 5 iterations regardless of element count. Choose verification problems whose conditions actually expose error.
Verification workflow
- With constant conductivity and no generation, confirm boundary conditions and units.
- Add generation and compare element-interior temperature and heat flux, not just nodes, with the exact solution.
- Introduce temperature-dependent conductivity and compare with the Kirchhoff exact solution, avoiding cases that happen to be exact.
- Refine the grid and confirm the order of convergence.
- Record nonlinear iteration counts and convergence criteria.
“Benchmark passed, real part missed”
An in-house solver passed a 1D conduction benchmark, yet analysis of a real part gave heat flux far from measurement. The verification had compared only nodal temperatures, under conditions where linear elements are nodally exact. In the real part, heat flux near concentrated generation mattered, and the coarse elements carried large flux errors. Comparing heat flux during verification would have revealed that the mesh was too coarse. Match what you compare to the quantity you actually need.
Common mistakes
Mistakes and fixes
| Mistake | Effect | Fix |
|---|---|---|
| Comparing nodal temperatures only | Errors invisible | Compare flux and interior |
| Using accidentally exact cases | No real verification | Pick error-exposing cases |
| Judging from one grid | Order unknown | Compare several grids |
| Loose nonlinear tolerance | Iteration error remains | Tighten and compare |
| Not checking the source conditions | Comparing against a different problem | Confirm source dimensions and conditions |
I'd like to learn related topics.
Try convergence order with the Richardson extrapolation tool. Related pages include T1 verification results, NAFEMS T3, NAFEMS T4, NAFEMS LE1 and 1D heat conduction analytical solution.
Related Topics
Experience the theory firsthand with the interactive simulator for this field
All Simulators