Solving Keplers equation with CORDIC double iterations


Abstract in English

In a previous work, we developed the idea to solve Keplers equation with a CORDIC-like algorithm, which does not require any division, but still multiplications in each iteration. Here we overcome this major shortcoming and solve Keplers equation using only bitshifts, additions, and one initial multiplication. We prescale the initial vector with the eccentricity and the scale correction factor. The rotation direction is decided without correction for the changing scale. We find that double CORDIC iterations are self-correcting and compensate possible wrong rotations in subsequent iterations. The algorithm needs 75% more iterations and delivers the eccentric anomaly and its sine and cosine terms times the eccentricity. The algorithm can be adopted for the hyperbolic case, too. The new shift-and-add algorithm brings Keplers equation close to hardware and allows to solve it with cheap and simple hardware components.

Download