Validation/Current conduction
DC conduction through a bar
The potential in this problem does not depend on the conductivity at all, so a deck that lost it entirely would still give a perfect voltage field. The derived fields are the measurement.
Why this case
A copper bar 0.1 m long and 20 mm square, with 5 V across its ends and every other face insulated. Steady current, nothing else.
The closed form is the one every engineer already knows, and there is nothing in it to argue about:
- R = L / (σA) — the resistance
- J = σV/L — the current density, uniform
- q = σ(V/L)² — the Joule heating per unit volume, uniform
| Physics | Steady current conduction in a solid |
|---|---|
| Material | Annealed copper, σ = 5.96 × 10⁷ S/m |
| Applied | 5 V and 0 V on opposite end faces, 0.1 m apart |
| Closed form | R = 4.194631 × 10⁻⁶ Ω, J = 2.98 × 10⁹ A/m², q = 1.49 × 10¹¹ W/m³ |
| Mesh | Tetrahedral, from Netgen — three levels from 19 to 2 136 elements |
| Agreement | Recovered resistance within 0.000 % at every level |
| Last run | 2026-08-27 |
Result
| Tets | Current density (A/m²) | vs closed form | Joule heating (W/m³) | vs closed form |
|---|---|---|---|---|
| 19 | 2.980000 × 10⁹ | +0.00000 % | 1.490000 × 10¹¹ | +0.00000 % |
| 749 | 2.980001 × 10⁹ | +0.00002 % | 1.490001 × 10¹¹ | +0.00005 % |
| 2 136 | 2.980000 × 10⁹ | −0.00000 % | 1.490000 × 10¹¹ | −0.00000 % |
Recovering the resistance from the measurement rather than restating it — R = V/(JₓA) on the finest mesh — gives 4.194631 × 10⁻⁶ Ω against an exact 4.194631 × 10⁻⁶ Ω.
Why the voltage is not the measurement
The potential through this bar is linear, so it lies inside the element space and any correct implementation reproduces it exactly on any mesh. That alone would make it a weak thing to report. But there is a second and much sharper reason to look past it.
Both are uniform in this geometry, so their spread across the nodes is the discretisation error and needs no integration to read. On the finest mesh the current density spans 2.979996 × 10⁹ to 2.980001 × 10⁹ A/m² — a spread of 0.0002 % of its own mean.
The Joule heating matters for a second reason: it is the field a coupled thermal study of the same part reads as its heat source. If it were wrong it would be wrong inside an electro-thermal answer, where nothing looks at it directly.
What this case found
This benchmark was written before the analysis it checks was believed to work. For a day, current conduction was recorded internally as a defect: a bar with 5 V across it came back with an identically zero potential — not a wrong number, no number at all, and no error from any process in the chain.
It was not the product. The test harness was converting its mesh without a flag the application has always passed, so the bar arrived carrying the mesher’s own body index instead of the one the deck refers to. Nothing matched, no element was active, the solver was built no matrix, and it returned without printing a word. Every process exited successfully and a well-formed result file was written full of zeros.
The control that appeared to exonerate the harness — “the same mesh solves perfectly through the electrostatic solver” — had been run through a different script that did pass the flag. Given the same mesh, the electrostatic solver fails in exactly the same way. A control run through a different harness is not a control.
Repeat this yourself
Every case here is set up from the worked examples in the product, with no hand-editing of solver files — so you can run it, and get the same numbers. The free tier runs real cases up to 250,000 cells of fluids, or 100,000 nodes of solid, with no account needed to download and no time limit.
Other cases
- Parallel-plate capacitorA closed form with no experimental uncertainty in it, so the agreement is either exact or it is a defect.
- Eddy-current loss in an AC barA square bar in its own alternating field has no closed-form loss. The low-frequency asymptotic is exact for any shape, and the mesh cancels out of it.
All validation cases · Written by the team building SHD Sim.