Validation/Stability
Euler strut buckling
The ratio between the two end conditions is the part a wrong implementation cannot fake — they differ in nothing but their restraint.
Why this case
A slender steel strut — one metre long, 20 mm square, so a slenderness ratio of 173 — under axial compression, solved at two end conditions.
Euler’s critical load is P = π²EI/(KL)², where K is the effective-length factor the end condition sets. Buckling is an eigenvalue problem rather than a stress calculation: the answer is the multiplier on the applied load at which the strut stops being stable, and the applied load itself does not appear in it.
| Physics | Linear buckling — elastic stiffness against geometric stiffness |
|---|---|
| Material | Steel — E = 210 GPa, ν = 0.3 |
| Geometry | 1 m long, 20 mm square, slenderness L/r = 173 |
| Applied | 1 MPa on the far face — 400 N, well below either critical load |
| Closed form | P = π²EI/(KL)², with K = 2 and K = 0.6992 |
| Mesh | Tetrahedral, from Netgen — 1 787 and 9 556 elements |
| Agreement | +0.12 % and −0.44 %; the ratio between them within 0.55 % |
| Last run | 2026-08-27 |
Result
| End condition | K | Tets | SHD Sim | Euler | Difference |
|---|---|---|---|---|---|
| Fixed–free | 2.0 | 1 787 | 6 916.8 N | 6 908.7 N | +0.12 % |
| Fixed–pinned | 0.6992 | 1 787 | 56 274.8 N | 56 534.0 N | −0.46 % |
| Fixed–pinned | 0.6992 | 9 556 | 56 286.4 N | 56 534.0 N | −0.44 % |
The ratio is the part that cannot be faked
Fixed–pinned / fixed–free = 8.138 measured, against 8.183 exact — 0.55 % apart.
That number carries more than either percentage above. The two cases differ in nothing but their restraint. The geometry is identical, the material is identical, the mesh is identical, the applied load is identical. So anything that stopped the restraint reaching the eigenvalue problem — the geometric stiffness built from the wrong stress state, or the two stiffness matrices assembled under different numberings — would give a ratio of 1.000.
And one of the two critical loads would still look entirely plausible on its own. A page reporting a single end condition could not tell the difference.
Where the remaining difference comes from
Euler’s law assumes a beam that does not deform in shear. A real strut does, and the Engesser correction accounts for it — it predicts a critical load slightly below Euler’s, by 0.026 % for the fixed–free case and 0.210 % for the fixed–pinned one.
That is the right order of magnitude and the right sign for the fixed–pinned case, and the wrong sign for the fixed–free one. So the residual is not attributed to shear here: it is stated as what it is, a difference of a few tenths of a per cent between a three-dimensional solid and a beam idealisation, at two end conditions, in opposite directions.
The restraint is worth one more sentence, because it is the thing most easily got wrong. The far end of the fixed–pinned case is held laterally and left free to slide axially. That is a pin, however much holding two of three directions reads like a clamp — and restraining the third as well gives a critical load twice what the part can actually carry, from a model that solves perfectly and reports no complaint.
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
- Cantilever beamThe first published-reference case for the structural backend — and the one that found the peak stress at a re-entrant corner does not converge at all, which is why this page validates a deflection and says plainly why it does not validate a stress.
- A bar pulled past yieldOne load level sits below yield as a control. It is not decoration: a deck with the yield stress missing gets that level exactly right and the others badly wrong.
All validation cases · Written by the team building SHD Sim.