This latest release of heyoka features an important performance optimisation and a couple of new features.
Faster compiled functions ⚡
Compiled functions (cfunc) in compact_mode now implement an inlining optimisation that greatly increases evaluation performance. Measured speedups are up to x2-x3 for very large expressions, at the cost of a modest increase in compilation time. This optimisation is transparent and always enabled when compact_mode is activated. Note that only compiled functions are affected, Taylor integrators do not benefit from this optimisation.
Earth-orbit dynamics
Debuting in this release is the new eo_dynamics model which allows to formulate the dynamics of a spacecraft orbiting the Earth. The model currently includes the geopotential (EGM2008), atmospheric drag (NRLMSISE-00) and lunisolar perturbations, and it also accounts for Earth-orientation parameters and space weather data.
Lagrange propagator
The new lagrange_prop model lets users formulate the classic Lagrange F&G Keplerian propagator as a set of closed-form analytical expressions. Currently, only elliptic orbits are supported.
As usual, the full changelog is available here: