nyx-space / nyx

Nyx is a high fidelity, fast, reliable and validated astrodynamics toolkit library written in Rust and available in Python
https://nyxspace.com
GNU Affero General Public License v3.0
176 stars 20 forks source link

Earth spherical harmonics validation #28

Closed ChristopherRabotin closed 2 years ago

ChristopherRabotin commented 6 years ago

In order to validate the spherical harmonics, I need to be able to convert to a BodyFixed frame. The body fixed frame for the Earth in GMAT is quite complicated: http://gmat.sourceforge.net/doc/R2013a/html/CoordinateSystem.html . For the other bodies, I'll have to check how SPICE does it, which adds a dependency on #17.

I'm not sure how to code this up for genericity and speed. I think that I should code up the whole rotation matrix from ICRF to the final coordinate system required that way there are no rounding errors due to the matrix multiplications.

Part of the issue, I'll also update the spherical harmonics code to avoid recomputing the vr01, vr11, re and im matrices at each call (they are static). I will also fix the implementation to the JPL algorithm which is said to better represent higher order dynamics.

Some initial thoughts for this are in #9 .

ChristopherRabotin commented 6 years ago

Tasks: