Initial orbit determination.

poliastro.iod.vallado.lambert(k, r0, r, tof, short=True, numiter=35, rtol=1e-08)

Solves the Lambert problem.

New in version 0.3.0.

  • k (Quantity) – Gravitational constant of main attractor (km^3 / s^2).

  • r0 (Quantity) – Initial position (km).

  • r (Quantity) – Final position (km).

  • tof (Quantity) – Time of flight (s).

  • short (boolean, optional) – Find out the short path, default to True. If False, find long path.

  • numiter (int, optional) – Maximum number of iterations, default to 35.

  • rtol (float, optional) – Relative tolerance of the algorithm, default to 1e-8.


RuntimeError – If it was not possible to compute the orbit.


This uses the universal variable approach found in Battin, Mueller & White with the bisection iteration suggested by Vallado. Multiple revolutions not supported.