Newmark beta/gamma (Newmark) — 1 scheme
Newmark and generalized-alpha advance position and velocity together in second-order mechanics. Average-acceleration Newmark preserves linear modal energy, while generalized-alpha can deliberately damp unresolved fast modes. Check the force, mass and accepted-acceleration assumptions before choosing the damping parameters.
The classical Newmark time integrator for second-order dynamics
, driven by drivers.mechanics.newmark — a repo-native version of the
standard form:
with the implicit unknown closed by the same nonlinear-solve
machinery as the other implicit families (JFNKSolver by default; a
fixed-point solver is accepted through the usual solver= override).
Parameters and variants
(validated when stepping); gamma=1/2 is the second-order condition for ordinary Newmark. The registered default and callable linear-acceleration variant are:
| Scheme | Note | ||
|---|---|---|---|
Newmark (default = newmark_average_acceleration) | constant average acceleration — the standard structural-dynamics choice; unconditionally stable for the linear oscillator, no numerical damping | ||
newmark_linear_acceleration | linear acceleration — conditionally stable, with no algorithmic damping on the stable undamped linear oscillator |
The default newmark(state, dt, f, ..., beta=0.25, gamma=0.5) accepts any
admissible pair. The RHS must expose a velocity derivative — an update with a
dudt field, or fields tagged velocity_derivative / acceleration — which
is what supplies and the implicit guess.
Properties
Order 2. For the linear oscillator the average-acceleration variant is
unconditionally stable (its frequency response is bounded for all
); linear acceleration is stable only for
and does not add numerical damping there.
Phase error remains even when linear modal energy is preserved. Newmark is not symplectic in general (measured
dissipative in the Hamiltonian test suite — it is absent from the symplectic
sets in tests/test_hamiltonian.py; the geometric alternatives for
conservative dynamics are the symplectic family and
Gauss-Legendre 2, coupled-rk).
The step's cost is one nonlinear solve (plus the endpoint evaluation recorded
for the history) and the standard SolveDiagnostics entry. priorStep is
refused; history= is threaded like the other one-step implicit schemes.
When to use
- Structural/second-order dynamics where the position and velocity both need the implicit endpoint (contact, constrained systems): Newmark gives both in one solve, with the damping behaviour of the choice.
- Not for conservative Hamiltonian dynamics where energy fidelity over long runs is the point — use a symplectic scheme instead.
References
The two-mass structural demo compares the actual registered
driver and the parameterized package GeneralizedAlpha against an exact modal
solution and an independent dense generalized-alpha reference. It
shows why preserving an underresolved fast mode's energy is not the same as
representing its motion accurately.
- Newmark, N. M., Equations of motion for structural dynamics, Journal of Engineering Mechanics, ASCE 77 (1959) 679-709 — the - family.
- Hughes, T. J. R., The Finite Element Method (1987), Ch. 15 — the unconditional-stability and damping analysis.
Tests: tests/test_newmark.py (order 2, the linear-oscillator stability
and damping of the two variants, the gradient through the solve).