Simulation

Damped Spring

OscillationsDamping

A spring-mass system with adjustable damping showing underdamped, critical, and overdamped motion.

Published: April 29, 2026 · Updated: May 28, 2026

Objective

Verify that a mass-spring-damper system obeys m·ẍ + c·ẋ + k·x = 0 and that the dimensionless damping ratio ζ = c/(2·√(m·k)) alone selects which of three regimes the motion follows: under-damped (ζ < 1, decaying oscillation), critically-damped (ζ = 1, fastest non-oscillating return), and over-damped (ζ > 1, slow non-oscillating return). Confirm that the under-damped angular frequency is ω_d = √(ω₀² − γ²) with γ = c/(2m) and ω₀ = √(k/m), shifted below the natural frequency by the damping.

Setup

  1. Set the Spring Constant slider to 10 N/m and the Mass slider to 1.0 kg, so the natural angular frequency is ω₀ = √(k/m) = √10 ≈ 3.162 rad/s.
  2. Set the Damping slider to 3.00 N·s/m and the Initial Displacement slider to 1.0 m. The Damping ratio ζ readout should display 0.474, placing the system in the under-damped regime.
  3. Press Start. The mass is released from rest at x = +1.0 m and oscillates about the equilibrium line with shrinking amplitude. The dotted blue arrow shows velocity; the solid red arrow shows the spring restoring force.
  4. Watch the Displacement (m) and Velocity (m/s) readouts and the trail. Note the time of the first zero crossing and the magnitude of the first negative peak.
  5. Press Reset, then move the Damping slider to 6.32 N·s/m, the value of c that gives ζ = 1 for k = 10 N/m and m = 1 kg. Press Start and observe a single non-oscillating return to equilibrium.
  6. Press Reset, set the Damping slider to 20.0 N·s/m (ζ ≈ 3.16), press Start, and observe the slow asymptotic creep back to equilibrium with no overshoot.

Analytical Prediction

With k = 10 N/m, m = 1 kg, and c = 3 N·s/m, the natural angular frequency, decay rate, and damping ratio are:

ω₀=√(k/m)
=√10
3.162 rad/s
γ=c / (2m)
=3 / 2
=1.5 s⁻¹
ζ=c / (2 · √(m·k))
=3 / (2 · √10)
0.474

Because ζ < 1 the motion is under-damped and follows x(t) = A·e^(−γ·t)·cos(ω_d·t + φ) with ω_d = √(ω₀² − γ²) = √(10 − 2.25) = √7.75 ≈ 2.784 rad/s. From rest at x₀ = 1 m the constants are A ≈ 1.137 m and φ ≈ −0.494 rad, so x(t) ≈ 1.137·e^(−1.5·t)·cos(2.784·t − 0.494). The damped period is T_d = 2π/ω_d ≈ 2.257 s, the first zero crossing falls near t ≈ 0.741 s, and the first negative peak near t ≈ 1.870 s reaches roughly x ≈ −0.430 m. After one full period the envelope has shrunk by e^(−γ·T_d) ≈ e^(−3.385) ≈ 0.034. Setting c = 6.32 N·s/m gives ζ = 1 and a non-oscillating return; c = 20 N·s/m gives ζ ≈ 3.16 and an over-damped creep.

Results Analysis

Compare the simulation behaviour against the closed-form prediction for the c = 3 N·s/m run. The Damping ratio ζ readout should match 0.474 to three decimals, since the simulation computes ζ from the same definition. Time the first zero crossing using the Time (s) readout when Displacement (m) flips sign; the value should sit close to 0.741 s. Pause near the first minimum and read the Displacement value; it should be close to −0.430 m, with the next positive peak roughly 0.18 m and the second negative peak roughly −0.07 m. The successive ratio of consecutive same-side peaks should be e^(−γ·T_d) ≈ 0.034 in magnitude, confirming exponential envelope decay at rate γ = 1.5 s⁻¹. Increase the Damping slider in steps and watch the Damping ratio ζ readout cross 1.0 at c ≈ 6.32 N·s/m: oscillation disappears precisely there. Above that threshold the trail no longer crosses the equilibrium line; below it the trail always overshoots at least once. The qualitative regime change is sharp because it is a square-root branch in ω_d.

Source of Error

What this sim does NOT model: the spring's own mass and inertia, mass distribution along the coil, non-Hookean stiffening at large amplitudes, finite spring travel limits, or temperature effects on the spring constant. The mass is a point hanging from an ideal Hookean spring with linear viscous damping. The closed forms ω₀ = √(k/m), ζ = c/(2·√(k·m)), and the second-order ODE m·x'' + c·x' + k·x = 0 assume the same idealizations, so they cancel rather than contributing to the residual amplitude or period. The remaining gap is therefore purely numerical, not physical.

Further Exploration