Measuring the gap between the Melnikov threshold and the period-doubling cascade in the damped driven pendulum
Abstract. The damped driven pendulum θ̈ = −sin θ − γθ̇ + A cos(ωt) (ω = 0.6667) carries two distinct, frequently conflated notions of a “chaos threshold”: the analytic Melnikov amplitude Ac(γ), above which first-order perturbation theory predicts a transverse homoclinic tangle, and the period-doubling onset APD(γ), where the primary period-1 attractor begins the Feigenbaum cascade that produces the sustained chaotic attractor. We measure APD over γ ∈ [0.1, 0.8] with an attractor-strobed bisection refined by the Floquet multiplier of the Newton periodic orbit (onset interpolated at ρ = −1), and compare it with the closed-form Ac. The ratio APD/Ac falls monotonically from 2.38 at γ = 0.1 to 0.987 at γ = 0.8, and the widely quoted ordering Ac < APD reverses near γ ≈ 0.69: at low damping the tangle precedes the cascade by a wide and rapidly growing margin, while at strong damping the cascade begins below the first-order Melnikov prediction. At the literature point γ = 0.5 our measurement APD = 1.0664 agrees with the published 1.0663 (Baker & Gollub) to four digits. A reduced-grid frequency scan (ω = 0.5, 0.85) and a Duffing double-well companion map show the same monotone gap closure — with the crossing damping itself moving with drive frequency — so the reversal is a robust property of the first-order threshold, not an artifact of the classic parameter point.
1. Introduction
The sinusoidally driven, damped pendulum is the canonical low-dimensional route to chaos, and it supports two different analytic/numerical landmarks as the drive amplitude A grows. The Melnikov method gives a closed-form first-order threshold Ac = (4γω₀/π)·cosh(πω/2ω₀) above which the stable and unstable manifolds of the hilltop saddle intersect transversally, creating a Smale-horseshoe tangle. The tangle guarantees transient chaos and fractal basin boundaries — not a chaotic attractor. The sustained chaotic attractor instead appears at the end of a period-doubling cascade of the primary period-1 response, whose onset APD is a property of a specific attractor branch and has no closed form. Textbooks typically note Ac < APD at the classic parameter point γ = 0.5, ω = 2/3. This paper asks the quantitative question: how does the gap between the two thresholds behave as damping is varied?
2. Methods
All computations use the open Pendulum Lab engine, whose equations of motion are validated component-wise against an independent SymPy symbolic derivation (max relative deviation ≈ 10−14) and whose trajectories are cross-validated against SciPy DOP853 at rtol = 10−13; the engine also reproduces published anchors (elliptic pendulum period, double-pendulum normal modes, and the γ = 0.5 period-doubling onset). The drive is made autonomous by carrying the phase as a third coordinate; integration is RK4 with dt = 0.005 snapped so an integer number of steps spans one drive period exactly.
APD measurement. For each γ, the drive amplitude is marched upward from 0.9·Ac with the strobed state warm-started at every step, so the measurement follows the physically realised attractor branch (this matters: the symmetric period-1 orbit pitchforks before the cascade, and a Newton continuation of the symmetric orbit would miss the doubling of the symmetry-broken branch the attractor actually follows). The loss of period-1 stability is bisected on the strobe map (transients of 300–600 drive periods; period detected in the (sin θ, cos θ, ω) embedding, immune to 2π winding). The bracket is then refined by Newton periodic orbits seeded from the attractor: the most negative real Floquet multiplier ρ(A) of the orbit is interpolated through ρ = −1. A measurement is accepted as a period doubling only when this crossing is verified; otherwise the loss is reported as non-PD. Halving dt changes the γ = 0.5 onset by |Δ| ≈ 7.1e-13, so discretisation error is negligible at the quoted precision.
Corroboration. At 0.97·APD and 1.08·APD the Gottwald–Melbourne 0–1 test is applied to the cos θ strobe series (700 samples): K ≈ 0 confirms regular motion below onset; the value above onset depends on whether 1.08·APD lands beyond the cascade accumulation point or inside a periodic window, and is reported without prejudice.
3. Results
reports/flagship-figure1.svg, SHA-256 prefix 07f877d6fdb816; numerical rows and uncertainty brackets are cross-referenced in Appendix A.| γ | A_c (Melnikov) | A_PD (measured) | A_PD/A_c | loss of period-1 | K at 0.97·A | K at 1.08·A |
|---|---|---|---|---|---|---|
| 0.10 | 0.20375 | 0.48398 | 2.3753 | PD (ρ → −1) | 0.02 | 1.00 |
| 0.15 | 0.30563 | 0.53080 | 1.7367 | PD (ρ → −1) | 0.02 | 1.00 |
| 0.20 | 0.40751 | 0.59004 | 1.4479 | PD (ρ → −1) | 0.02 | -0.01 |
| 0.25 | 0.50939 | 0.65829 | 1.2923 | PD (ρ → −1) | -0.02 | 1.00 |
| 0.30 | 0.61126 | 0.73294 | 1.1991 | PD (ρ → −1) | 0.02 | 0.06 |
| 0.35 | 0.71314 | 0.81217 | 1.1389 | PD (ρ → −1) | -0.02 | 1.00 |
| 0.40 | 0.81502 | 0.89470 | 1.0978 | PD (ρ → −1) | 0.02 | -0.01 |
| 0.45 | 0.91690 | 0.97964 | 1.0684 | PD (ρ → −1) | -0.02 | -0.01 |
| 0.50 | 1.01877 | 1.06637 | 1.0467 | PD (ρ → −1) | -0.02 | 1.00 |
| 0.55 | 1.12065 | 1.15448 | 1.0302 | PD (ρ → −1) | -0.02 | 1.00 |
| 0.60 | 1.22253 | 1.24368 | 1.0173 | PD (ρ → −1) | -0.01 | 1.00 |
| 0.65 | 1.32441 | 1.33377 | 1.0071 | PD (ρ → −1) | 0.02 | -0.01 |
| 0.70 | 1.42628 | 1.42463 | 0.9988 | PD (ρ → −1) | 0.02 | -0.57 |
| 0.75 | 1.52816 | 1.51622 | 0.9922 | PD (ρ → −1) | 0.02 | 0.13 |
| 0.80 | 1.63004 | 1.60853 | 0.9868 | PD (ρ → −1) | 0.02 | 1.00 |
4. Discussion
Three regimes emerge. (i) Low damping (γ ≲ 0.2): Ac → 0 linearly while the cascade onset of the primary resonance remains an order-one amplitude, so the ratio diverges (2.38 already at γ = 0.1). The window of “tangle but no strange attractor” — long chaotic transients and fractal basin boundaries below a still-periodic attractor — is widest here, and the phase space is visibly multistable (see §5). (ii) Moderate damping: the textbook ordering Ac < APD holds, but the margin shrinks steadily (to 5% at γ = 0.5). (iii) Strong damping (γ ≳ 0.69): the measured cascade begins below the first-order Melnikov prediction. This is not a contradiction — the Melnikov threshold is asymptotically exact only as γ, A → 0, and by γ ≈ 0.7 the perturbation parameter is O(1) — but it sharpens the usual caveat into a measured boundary: the first-order formula stops being even an ordering bound near γ ≈ 0.69.
The 0–1 test values corroborate the structural picture: K ≈ 0 on the period-1 side everywhere, while above onset K depends on where 1.08·APD falls relative to the cascade accumulation point and the periodic windows visible in Figure 3 — both outcomes occur in the table, as expected for a Feigenbaum scenario with embedded windows.
5. Beyond one frequency and one system
Two extensions probe whether the closing gap is an artifact of the classic parameter point. First, a reduced-grid frequency scan repeats the full Floquet-refined measurement at ω = 0.5 and ω = 0.85. The shape survives: the ratio falls monotonically with damping at every frequency, and the crossing damping γ* moves with ω — at ω = 0.85 the gap is still open at γ = 0.8 (ratio 1.096), while at ω = 0.5 the measured points at γ = 0.65 and 0.8 already sit below 1 (0.941, 0.927). At ω = 0.5, γ = 0.2; ω = 0.5, γ = 0.35; ω = 0.5, γ = 0.5 the primary branch loses period-1 stability without a verified ρ = −1 crossing, and those points are reported as unclassified rather than forced into the map.
Second, the same question is posed to a different system: the symmetric Duffing double well ẍ = −δẋ + x − x³ + Γcos(t). The closed-form Melnikov threshold Γ_c(δ) (derived and quadrature-verified in the engine, reducing to the Guckenheimer–Holmes expression at α = −1, β = 1) is compared with the marched/bisected loss of period-1 stability of the confined single-well attractor. There is no Newton–Floquet refinement for the Duffing flow yet, so Γ_PD is quoted as a bisection bracket midpoint — honestly wider than the pendulum's interpolated onsets, though the brackets themselves are ~10⁻⁸ wide.
| δ | Γ_c (Melnikov) | Γ_PD (measured) | δΓ_PD | Γ_PD/Γ_c | K at 0.97·Γ | K at 1.08·Γ |
|---|---|---|---|---|---|---|
| 0.15 | 0.11295 | 0.25301 | 1.7e-8 | 2.2400 | -0.01 | 1.00 |
| 0.20 | 0.15060 | 0.25861 | 2.3e-8 | 1.7172 | 0.03 | 1.00 |
| 0.25 | 0.18825 | 0.26498 | 2.9e-8 | 1.4076 | 0.02 | 1.00 |
| 0.30 | 0.22591 | 0.27307 | 3.4e-8 | 1.2088 | -0.02 | 1.00 |
| 0.35 | 0.26356 | 0.28232 | 4.0e-8 | 1.0712 | -0.02 | 1.00 |
The 0–1 test corroborates every Duffing onset (K ≈ 0 below, K ≈ 1 above — the cascade accumulates quickly in the double well at these parameters). Together the two extensions upgrade the paper's claim from "the thresholds cross at one classic parameter point" to "first-order Melnikov ordering degrades with damping across drive frequencies and across systems".
6. Limitations and reproducibility
The main grid fixes ω = 2/3 (the frequency scan of §5 samples ω = 0.5 and 0.85 on a reduced γ grid) and follows a single attractor branch per γ (warm-started in A); coexisting attractors reached from other initial conditions may double elsewhere. At the lowest dampings the phase space is multistable enough that a finer warm-started march can hop basins before the doubling — at γ = 0.15 a basin-capture transition of the followed state was observed near A ≈ 0.49 (the orbit itself remains strongly stable there, ρ ≈ +0.29), below the verified doubling at 0.531. The quoted APD values are therefore specifically the ρ = −1 doublings of the primary oscillating branch, not necessarily the first event of any kind along a slow amplitude sweep. The Melnikov comparison concerns the first-order formula specifically — higher-order or numerical manifold computations would move Ac. The full study regenerates with npm run paper:study (~8 min) followed by npm run flagship:certify, npm run flagship:external, and npm run paper:build; the engine tests and independent symbolic/trajectory validations are in the same repository.
Appendix A. Certified onset localization
The flagship claim is not that Melnikov theory predicts the attractor cascade. It is a measured separation map: A_c is analytic first-order geometry, A_PD is a Floquet-refined attractor-branch instability, and the reported reversal is bounded by the exported caveat map and the independent Python A_PD probes. The ratio crossing is localized to γ ∈ [0.69296963, 0.69297705], with point estimate 0.69297334. The Figure 1 hash is 07f877d6fdb816.
| γ | A_c | A_PD | δA_PD | A_PD/A_c | ρ below | ρ above | caveat |
|---|---|---|---|---|---|---|---|
| 0.10 | 0.203755 | 0.483984 | 1.24e-7 | 2.375324 | -0.94620 | -1.05181 | none |
| 0.15 | 0.305632 | 0.530802 | 1.87e-7 | 1.736736 | -0.94374 | -1.05618 | none |
| 0.20 | 0.407510 | 0.590045 | 2.49e-7 | 1.447928 | -0.94028 | -1.06052 | post-onset 0-1 sample is not cleanly chaotic at 1.08*A_PD |
| 0.25 | 0.509387 | 0.658288 | 3.11e-7 | 1.292314 | -0.93675 | -1.06459 | none |
| 0.30 | 0.611265 | 0.732944 | 3.73e-7 | 1.199062 | -0.93298 | -1.06741 | post-onset 0-1 sample is not cleanly chaotic at 1.08*A_PD |
| 0.35 | 0.713142 | 0.812174 | 4.35e-7 | 1.138868 | -0.93122 | -1.07077 | none |
| 0.40 | 0.815019 | 0.894700 | 4.97e-7 | 1.097765 | -0.92990 | -1.07295 | post-onset 0-1 sample is not cleanly chaotic at 1.08*A_PD |
| 0.45 | 0.916897 | 0.979636 | 5.60e-7 | 1.068426 | -0.92844 | -1.07334 | post-onset 0-1 sample is not cleanly chaotic at 1.08*A_PD |
| 0.50 | 1.018774 | 1.066373 | 6.22e-7 | 1.046721 | -0.92894 | -1.07417 | none |
| 0.55 | 1.120652 | 1.154485 | 6.84e-7 | 1.030191 | -0.92980 | -1.07403 | none |
| 0.60 | 1.222529 | 1.243682 | 7.46e-7 | 1.017303 | -0.93128 | -1.07337 | none |
| 0.65 | 1.324407 | 1.333771 | 8.08e-7 | 1.007071 | -0.93336 | -1.07236 | post-onset 0-1 sample is not cleanly chaotic at 1.08*A_PD |
| 0.70 | 1.426284 | 1.424635 | 8.71e-7 | 0.998844 | -0.93602 | -1.07112 | post-onset 0-1 sample is not cleanly chaotic at 1.08*A_PD |
| 0.75 | 1.528161 | 1.516220 | 9.33e-7 | 0.992186 | -0.94002 | -1.07052 | post-onset 0-1 sample is not cleanly chaotic at 1.08*A_PD |
| 0.80 | 1.630039 | 1.608533 | 9.95e-7 | 0.986807 | -0.93970 | -1.06492 | none |
Appendix B. Independent Python APD reproduction
Python stdlib recomputation of A_c, crossing arithmetic, and selected A_PD values via RK4 strobe-map Newton/Floquet search. The analytic threshold agrees with maximum absolute error 0.00e+0. All selected period-doubling checks passed: yes.
| γ | reported A_PD | Python A_PD | |Δ| | ρ low | ρ high | status |
|---|---|---|---|---|---|---|
| 0.50 | 1.06637286 | 1.06637292 | 5.92e-8 | -0.9999996 | -1.0000004 | pass |
| 0.65 | 1.33377104 | 1.33377109 | 4.89e-8 | -0.9999995 | -1.0000003 | pass |
| 0.70 | 1.42463496 | 1.42463501 | 4.84e-8 | -0.9999996 | -1.0000004 | pass |
Independent-check caveat. A_PD checks use finite-difference monodromy and a coarser dt than the TypeScript flagship run, so they certify independent reproducibility at reviewer-kit tolerance, not bitwise equality.
Appendix C. Artifact integrity and caveat ledger
| Artifact | Reproduce | Cross-reference |
|---|---|---|
| reports/paper-study.json | npm run paper:study | Figures 1-3, main table |
| reports/flagship-certification.json | npm run flagship:certify | Figure 1 hash 07f877d6fdb816; Appendix A |
| reports/flagship-external-check.json | npm run flagship:external | Appendix B |
| paper/paper.pdf | npm run paper:build | This manuscript |
Caveat map. gamma=0.20: post-onset 0-1 sample is not cleanly chaotic at 1.08*A_PD gamma=0.30: post-onset 0-1 sample is not cleanly chaotic at 1.08*A_PD gamma=0.40: post-onset 0-1 sample is not cleanly chaotic at 1.08*A_PD gamma=0.45: post-onset 0-1 sample is not cleanly chaotic at 1.08*A_PD gamma=0.65: post-onset 0-1 sample is not cleanly chaotic at 1.08*A_PD gamma=0.70: post-onset 0-1 sample is not cleanly chaotic at 1.08*A_PD gamma=0.75: post-onset 0-1 sample is not cleanly chaotic at 1.08*A_PD Error bars combine attractor-bracket width with the available dt-sensitivity probe; they are a localization contract, not a full Bayesian posterior. Basin caveats are inferred from the exported 0-1 strobe probes; they flag multistability/transient-chaos risk but do not replace a full basin scan.
References
G. L. Baker and J. P. Gollub, Chaotic Dynamics: An Introduction, 2nd ed., Cambridge University Press (1996).
J. Guckenheimer and P. Holmes, Nonlinear Oscillations, Dynamical Systems, and Bifurcations of Vector Fields, Springer, §4.5 (1983).
V. K. Melnikov, “On the stability of the center for time-periodic perturbations,” Trans. Moscow Math. Soc. 12, 1–57 (1963).
G. A. Gottwald and I. Melbourne, “On the implementation of the 0–1 test for chaos,” SIAM J. Appl. Dyn. Syst. 8, 129–145 (2009).
M. J. Feigenbaum, “Quantitative universality for a class of nonlinear transformations,” J. Stat. Phys. 19, 25–52 (1978).