Posidonius is a N-body code for simulating planetary and/or binary systems which implements the WHFAST integrator (Rein & Tamayo 2015) and the tidal model used in Mercury-T (Bolmont et al. 2015).


Similarly to Mercury-T, the bodies in the simulation can be static or follow predefined evolutionary models matching FGKML stars and gaseous planets. The simulations can account for several different effects:

  • Tidal forces
  • Rotationnal-flattening effects
  • General Relativity corrections

Posidonius has a better spin integration than Mercury-T, it’s more than six times faster, it conserves the total angular momentum of the system one order of magnitude better and the spin to rotational-fattening evolution five orders of magnitude better.

It also allows a wider variety of configurations. For instance, it can simulate the evolution of evolving binary stars with planets, or an evolving Jupiter mass planet around an evolving star.


The N-body code is written in Rust, a systems programming language that runs as fast as Fortran/C, prevents segmentation faults, and guarantees thread safety. Its main characteristics are:

  • Zero-cost abstractions
  • Guaranteed memory safety
  • Threads without data races

Rust benefits for the astronomical community were already exposed in Blanco-Cuaresma & Bolmont 2017. Posidonius also provides a Python package to easily define simulation cases in JSON format, which can be read by the Posidonius integrator and ensures reproducibility.

Emeline Bolmont
Professor of Astrophysics

My research interests include exoplanets, tides, and habitability.