verification: Euler columns and Bryan's plate in buckling steps

buckle-euler-pinned and buckle-euler-cantilever (hex20 columns, −0.18 % from Euler with
Engesser's shear correction) and buckle-plate-square (a simply supported square plate, b/t =
100, −0.39 % from k = 4; the support and thickness choices in its README). ROADMAP and parity
updated, docs/oracle.md regenerated.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01UhhZMBTviDQxZvwnyP89fo
This commit is contained in:
jyvikoandClaude Opus 5.5 authored and Irakli Kourtis committed 2026-10-14 13:30:59 -04:00
1 parent 1b57e2e672
commit 788edbbddd
15 files changed
+161 -3

No files matched your search

+7 -1
View File
@@ -2,7 +2,7 @@
Generated by `cargo xtask oracle` from [`tests/oracle/`](../tests/oracle/); the policy is [verification.md](verification.md). Every case is our own model, built with FieldCraft commands from the problem's published description, and compared with the reference value its `expected.json` cites, within the stated tolerance and for the stated reason. Accepted results are frozen in each case's `fixture.json`: a later change that moves one beyond its band (10⁻⁹ of its size) fails CI even while the reference still passes. No reference value was produced with a commercial product.
**193 of 199 quantities pass** (6 known failure(s)) in 57 active cases: 48 theory, 9 published benchmark, 0 experiment; 10 pending cases wait for capabilities still being built.
**196 of 202 quantities pass** (6 known failure(s)) in 60 active cases: 51 theory, 9 published benchmark, 0 experiment; 10 pending cases wait for capabilities still being built.
## Theory: closed-form solutions, patch tests and mesh invariants
@@ -14,6 +14,9 @@ Generated by `cargo xtask oracle` from [`tests/oracle/`](../tests/oracle/); the
| [bar-rigid-wall-impact](../tests/oracle/bar-rigid-wall-impact/) | displacement of the struck end at t = 0.3 (in contact until 2L/c = 0.2, then leaving at v₀) | 0.01 | 0.0099541 | -0.459% | 3% | pass | matches |
| [bar-rigid-wall-impact](../tests/oracle/bar-rigid-wall-impact/) | displacement of the far end at t = 0.3 (−v₀L/c, then +v₀ after the reflection) | 0.01 | 0.0099488 | -0.512% | 3% | pass | matches |
| [bar-rigid-wall-impact](../tests/oracle/bar-rigid-wall-impact/) | kinetic energy after the rebound over the initial ½mv₀² | 1 | 0.99463 | -0.537% | 2% | pass | matches |
| [buckle-euler-cantilever](../tests/oracle/buckle-euler-cantilever/) | first buckling stress (load factor of a unit end pressure) | 2.0461 | 2.0424 | -0.181% | 0.5% | pass | matches |
| [buckle-euler-pinned](../tests/oracle/buckle-euler-pinned/) | first buckling stress (load factor of a unit end pressure) | 2.0461 | 2.0424 | -0.179% | 0.5% | pass | matches |
| [buckle-plate-square](../tests/oracle/buckle-plate-square/) | buckling stress of a unit edge pressure | 0.36152 | 0.36013 | -0.386% | 1% | pass | matches |
| [cantilever-frequencies](../tests/oracle/cantilever-frequencies/) | first bending frequency (modes 1 and 2 are the y and z pair) | 0.012771 | 0.012751 | -0.158% | 1% | pass | matches |
| [cantilever-frequencies](../tests/oracle/cantilever-frequencies/) | the other first bending frequency | 0.012771 | 0.012751 | -0.158% | 1% | pass | matches |
| [cantilever-frequencies](../tests/oracle/cantilever-frequencies/) | second bending frequency | 0.080034 | 0.079167 | -1.08% | 2% | pass | matches |
@@ -217,6 +220,9 @@ Generated by `cargo xtask oracle` from [`tests/oracle/`](../tests/oracle/); the
- **[bar-pressure-wave](../tests/oracle/bar-pressure-wave/)** (theory): Elastic wave in a bar from a pressure step (explicit). Source: d'Alembert's solution of the one-dimensional wave equation: c = √(E/ρ), particle velocity v = p/(ρc); Graff, Wave Motion in Elastic Solids, Dover 1991, §2.1. Tolerances — u_end: the end moves at the particle velocity p/(ρc) from the start; the discrete wave's ringing behind the front changes the end's displacement by well under 1%; v_mid: central differences ring behind a step front (dispersion); bulk viscosity damps it within a few elements, leaving about 1% twenty elements behind; balance: external work = kinetic + internal + dissipated energy; the solver warns above 1%
- **[bar-rigid-wall-impact](../tests/oracle/bar-rigid-wall-impact/)** (theory): Elastic bar striking a rigid wall (explicit). Source: One-dimensional elastic impact on a rigid wall: contact time 2L/c, rebound at the impact speed, contact stress ρcv₀; Graff, Wave Motion in Elastic Solids, Dover 1991, §2.3; Johnson, Impact Strength of Materials, Arnold 1972, §1.6. Tolerances — u_front: the contact ends at 2L/c in the elastic theory; the discrete release front is spread over a few elements, a few tenths of a percent of the time, and the rebound speed is v₀ to about 1%; u_back: as for the struck end; ke: an elastic impact keeps the kinetic energy; quadratic bulk viscosity in the compression front and the vibration left in the bar take about 1%
- **[buckle-euler-cantilever](../tests/oracle/buckle-euler-cantilever/)** (theory): Euler buckling of a clamped–free column of solids. Source: Euler's column with Engesser's shear correction P = P_e/(1 + P_e/(κ G A)), κ = 5/6 (S. P. Timoshenko, J. M. Gere, Theory of Elastic Stability, 2nd ed., McGraw-Hill 1961, §2.1, §2.17): square section 1 × 1, E = 1000, ν = 0, length 10 clamped–free, effective length 20, P_e = π² E I/20², so σ_cr = P/A = 2.046071. Tolerances — lambda: hex20, 2 × 2 across and 10 along: the 3D solid's bending and shear against beam theory, and the preload concentrated at the held face
- **[buckle-euler-pinned](../tests/oracle/buckle-euler-pinned/)** (theory): Euler buckling of a pinned column of solids. Source: Euler's column with Engesser's shear correction P = P_e/(1 + P_e/(κ G A)), κ = 5/6 (S. P. Timoshenko, J. M. Gere, Theory of Elastic Stability, 2nd ed., McGraw-Hill 1961, §2.1, §2.17): square section 1 × 1, E = 1000, ν = 0, effective length 20, P_e = π² E I/20², so σ_cr = P/A = 2.046071. Tolerances — lambda: hex20, 2 × 2 across and 10 along: the 3D solid's bending and shear against beam theory, and the preload concentrated at the held face
- **[buckle-plate-square](../tests/oracle/buckle-plate-square/)** (theory): Buckling of a simply supported square plate in uniaxial compression. Source: Bryan's plate buckling stress σ_cr = k π² E/(12 (1 − ν²)) (t/b)² with k = 4 for a square plate simply supported on four edges (G. H. Bryan, Proc. London Math. Soc. 22:54–67, 1891; Timoshenko & Gere 1961, §9.2): b = 50, t = 0.5, E = 1000, ν = 0.3, σ_cr = 0.361524. Tolerances — lambda: a quarter plate of 10 × 10 × 2 hex20 (b/t = 100) supported on its bottom edge lines: the solid against thin-plate theory (−1.5 % at b/t = 50, falling with t/b) and the discretisation
- **[cantilever-frequencies](../tests/oracle/cantilever-frequencies/)** (theory): Natural frequencies of a cantilever (Euler–Bernoulli). Source: Euler–Bernoulli beam: f_n = (β_n L)²/(2π L²)·√(EI/ρA), β₁L = 1.8751, β₂L = 4.6941; Timoshenko, Young and Weaver, Vibration Problems in Engineering, 4th ed., Wiley 1974, §5.3. Tolerances — f1: Euler–Bernoulli neglects shear and rotary inertia, which lower f1 by about 0.2% at L/h = 20; f1_pair: as f1: a square section bends alike in y and z; f2: shear and rotary inertia lower the second mode by about 1% at L/h = 20 (Timoshenko)
- **[cantilever-hex20](../tests/oracle/cantilever-hex20/)** (theory): Cantilever under a tip load, Timoshenko deflection (hex20). Source: Timoshenko and Gere, Mechanics of Materials (beam with shear deformation: δ = PL³/3EI + PL/κGA, κ = 5/6 for a rectangle); Cowper, J. Appl. Mech. 33 (1966) 335–340 for the shear coefficient. Tolerances — tip_uz: beam theory vs 3D elasticity: the shear coefficient and the fully clamped end change the tip deflection by a few tenths of a percent at L/h = 10; reaction: equilibrium holds to rounding
- **[cantilever-hex8-incompatible](../tests/oracle/cantilever-hex8-incompatible/)** (theory): Cantilever under a tip load, Timoshenko deflection (hex8-incompatible). Source: Timoshenko and Gere, Mechanics of Materials (beam with shear deformation: δ = PL³/3EI + PL/κGA, κ = 5/6 for a rectangle); Cowper, J. Appl. Mech. 33 (1966) 335–340 for the shear coefficient. Tolerances — tip_uz: beam theory vs 3D elasticity (a few tenths of a percent at L/h = 10); incompatible modes represent the bending exactly in the constant-moment part; reaction: equilibrium holds to rounding