The science
Most case-study files use the small-angle approximation sin θ ≈ θ and give T ≈ 2π√(L/g). This lab keeps those presets and removes the approximation: the full nonlinear equation is integrated, a drive can be added, and the departure from the textbook period is measured.
Equations as delivered in the case-study files
θ″ + (g/L)θ ≈ 0 [rad/s²]; T ≈ 2π√(L/g) [s].
d²θ/dt² + 2γ dθ/dt + (g/L) θ = 0 [rad/s²]; θ(t)=e^(−γt)[θ₀ cos(ωd t)+((ω₀+γθ₀)/ωd)sin(ωd t)] [rad], ωd=√(g/L−γ²) [rad/s].
d²θ/dt² = −(g/L) θ [rad/s²] (small-angle approximation) ; θ(t) = θ₀ cos(sqrt(g/L)t) [rad] ; T ≈ 2π sqrt(L/g) [s]
θ̈ = −(g/L) sin θ − b θ̇ [rad/s²] ; T ≈ 2π√(L/g) [s] for small angles, b = 0
d²θ/dt² = −(g/L)θ [rad/s²] ; θ(t) = θ₀ cos(√(g/L) × t) [rad] ; Small-angle approximation; length L [m], g [m/s²]
ω = sqrt(g / L) [rad/s] ; θ(t) ≈ θ₀ cos(ωt) [rad] ; T ≈ 2π sqrt(L / g) [s]
What this lab adds
θ″ + bθ′ + (g/L) sin θ = a cos(Ω t) [rad/s²]
Exact undamped period T = 2π√(L/g) / AGM(1, cos(θ₀/2)) = 4√(L/g) K(sin(θ₀/2))
Linear driven steady state: Θ = a / √((ω₀² − Ω²)² + (bΩ)²), Q = ω₀/b
Assumptions in the delivered files
- The small-angle pendulum approximation, point mass and massless string. Exact step updates for the linearized model.
- Small-angle approximation sin θ ≈ θ for |θ| < 0.3 rad, linear viscous damping, rigid massless string; pivot friction and large-angle effects omitted.
- Constant g = 9.81 m/s², rigid components and fixed coefficients unless adjusted. One-dimensional or planar idealisation; the scene is illustrative, not engineering certification. The analytic overlay is a baseline for the initial settings; interventions can cause divergence.
Honest simplifications of this lab
- Point-mass bob on a rigid massless rod; damping is linear in the angular velocity and drive is a pure cosine.
- Where a file gives γ in the θ″ + 2γθ′ form the lab converts to b = 2γ and says so in the preset note; files without damping run with b = 0.
- Spring, torsion and measuring-g experiments from the same pile are not pendulum equations of motion and are not included as presets.
Independent check The page compares the measured period at 60° with the elliptic-integral value, the damped linear case with its closed form, the driven steady-state amplitude with the formula and energy conservation; the test file repeats these with an independent Python RK4 and quadrature.
Educational model. Case-study presets reuse the parameter sets, titles and captions of ChatGPT-generated simulations delivered for MySimulator; the physics core here is a richer shared model.