Investigación / Métodos numéricos

Arc-length snap-through: Riks and Crisfield

A partir de E. Riks, “An incremental approach to the solution of snapping and buckling problems”, International Journal of Solids and Structures (1979), doi:10.1016/0020-7683(79)90081-7.

Frente a la forma cerrada y al motor nativo
3 de 3 controles aprobados· ver los controles
Frente a las figuras del artículo
No comparado: no tuvimos acceso al texto completo

Investigación, no una herramienta de diseño. Nada de esto es un resultado de ingeniería.

Two-bar equilibrium paths with the production spherical arc-length solver. The shallow rigid-jointed frame is compared with its own energy derivative; the von Mises geometry is compared with the axial-only pin-jointed truss reference.

What the method does

Load control cannot continue past a vertical tangent in a load–displacement path. Arc-length continuation constrains the combined displacement and load-factor increment instead. The production engine assembles the corotational tangent and solves Crisfield’s spherical constraint, ‖Δu‖² + Δλ²‖fref‖² = Δs², with adaptive Δs.

The method papers are E. Riks, “An incremental approach to the solution of snapping and buckling problems” (1979), and M.A. Crisfield, “A fast incremental/iterative solution procedure that handles ‘snap-through’” (1981). This page benchmarks the engine; it does not reproduce a numerical example from either paper.

The shared cases

The shallow toggle is the rigid-jointed frame formerly used by the production arc-length validation test, with pinned bases and a rigid apex. The von Mises truss uses the geometry of the existing nonlinear engine benchmark. Both use frame elements, pinned supports and a vertical apex load. The case JSON is the single input to the native test, native/WASM parity check and this page.

For half-span s, initial rise h, deformed rise y, L = √(s² + y²), L₀ = √(s² + h²), and axial rigidity EA, the pin-jointed truss reference is P(y) = 2EA(1 − L/L₀)y/L. Its upper limit satisfies L³ = s²L₀. The page measures downward apex displacement v = h − y and downward load P = λPref. .

How the replay and live run are produced

  1. The native harness calls the production solve_arc_length. For frame k it reruns with maxSteps = k, checks the path prefix, and stores the final nodal displacements. This supplies animation without adding a research solver or changing engine results.
  2. The browser worker calls the same production WASM wrapper and repeats those prefix solves. Recompute, Stop, Restart and cached runs always identify their source.
  3. The Node check compares WASM path steps, iterations, convergence and final displacements with native output. Research, not a design tool: closed-form agreement is not experimental validation or certification.

Comparison on the displayed run

Stabileo traces the snap-through: 3/3 checks within 5%. Tolerances come from the shared case file. A limit check is not passed when the computed path stops before the limit.

CheckObserved errorToleranceResult
Limit load1,5 × 10−35 × 10−2✓ pass
Apex displacement at the limit3,9 × 10−25 × 10−2✓ pass
Maximum equilibrium-path difference / limit load2,3 × 10−55 × 10−2✓ pass

For the von Mises geometry, the axial truss comparison omits frame bending; that model difference remains explicit. The shallow frame uses its own energy reference instead.

Shallow-toggle correction (#852): this rigid-jointed frame has no limit point over inversion at the default geometry. Its reference is the derivative of U = EA(L−L₀)²/L₀ + 3EIβ²/L₀, with β = atan(y/s) − atan(h/s): P = 2EA(1−L/L₀)y/L − 6EI s β/(L₀L²). The frame curve and accuracy row use that reference. The former discrepancy came from comparing frame bending force with an axial-only truss formula; it is not evidence of a solver defect. The legacy native replay and validation artifacts retain the original comparison as historical evidence. Reference derivation and independent energy check.

Comparison with the papers

Not done. No published table, figure or limit load from Riks (1979) or Crisfield (1981) is claimed as reproduced. The bibliographic records and DOIs are checked against Crossref. The numerical references on this page are the closed-form equilibrium and the native production run.

Limitations

  • Arc-length analysis is two-dimensional. These symmetric two-bar cases do not test asymmetric bifurcation, shells or three-dimensional frames.
  • The von Mises reference is axial engineering-strain equilibrium; its frame elements can add bending. The shallow-frame energy reference includes bending and applies to the symmetric rigid-apex model.
  • Changing to an upward reference load explores another branch; an upper downward limit check is reported as not reached rather than passed.
  • Prefix reruns make each displayed shape a production result, but they repeat computation. No intermediate unconverged iterate is displayed.

Citar esto

Stabileo Research, “Arc-length snap-through: Riks and Crisfield”, reproducción de E. Riks (1979), doi:10.1016/0020-7683(79)90081-7. Implementación: research/numerical-methods/riks-crisfield en el commit 8068cd16ea2c. Motor: el motor de Stabileo en el mismo commit. Se prevén enlaces permanentes a esta compilación exacta.