mirror of
https://github.com/cosinekitty/astronomy.git
synced 2026-03-22 16:33:19 -04:00
Added PlutoStateTable to C code generator. This is a table of known correct [tt, pos, vel] tuples for Pluto, calculated using TOP2013. These serve as seed points from which to integrate Pluto's motion. Added PlutoCheck() function to ctest, just to get going. I have a lot more peformance work to do in order to make the full blown unit test to finish in a reasonable amount of time. Changes in astronomy.c: Added some generic "terse vector" support. A terse vector contains 3 components and nothing else. This is handy for implementing compact formulas for various vector expressions. Created enhanced VSOP87 calculations that provide velocity vectors as well as position vectors for the Sun, Jupiter, Saturn, Uranus, and Neptune. These are the "major" bodies that have significant effects on the motion of Pluto. Also used to convert heliocentric coordinates to barycentric coordinates. Implemented first version of the integrator logic. It is not accurate enough yet, and it is far too slow. I need to debug the accuracy first, then I will work on making it faster.