A class of symplectic integrators with adaptive timestep for separable Hamiltonian systems
Miguel Preto, Scott Tremaine
TL;DR
This paper develops adaptive-timestep symplectic integrators for separable Hamiltonians by extending the phase space with a fictitious time, enabling explicit, reversible leapfrog schemes in which the timestep depends solely on the potential energy. A key result is that, for Keplerian potentials, the γ=1 scheme can integrate Kepler orbits exactly up to a timing error, while γ=3/2 offers strong accuracy improvements over fixed-timestep methods; the Stark problem and perturbed Kepler cases further illustrate robustness and error behavior. The approach avoids common pitfalls of adaptive schemes breaking symplectic structure and shows competitive performance relative to other regularized or Wisdom-Holman-like methods, especially for test-particle or near-Keplerian dynamics. Overall, the work provides practical, structure-preserving adaptive integrators with solid long-term error control and applicability to a range of celestial-mechanical problems.
Abstract
Symplectic integration algorithms are well-suited for long-term integrations of Hamiltonian systems because they preserve the geometric structure of the Hamiltonian flow. However, this desirable property is generally lost when adaptive timestep control is added to a symplectic integrator. We describe an adaptive-timestep symplectic integrator that can be used if the Hamiltonian is the sum of kinetic and potential energy components and the required timestep depends only on the potential energy (e.g. test-particle integrations in fixed potentials). In particular, we describe an explicit, reversible, symplectic, leapfrog integrator for a test particle in a near-Keplerian potential; this integrator has timestep proportional to distance from the attracting mass and has the remarkable property of integrating orbits in an inverse-square force field with only "along-track" errors; i.e. the phase-space shape of a Keplerian orbit is reproduced exactly, but the orbital period is in error by O(1/N^2), where N is the number of steps per period.
