poliastro / poliastro

poliastro - :rocket: Astrodynamics in Python
https://docs.poliastro.space
MIT License
886 stars 285 forks source link

Document clearly the reference frames that are used #288

Closed astrojuanlu closed 6 years ago

astrojuanlu commented 6 years ago

🐞 Problem

(This came from user feedback)

We have been tackling several issues regarding reference frames lately (see #215, #222, #243, #245) and we are already thinking in integrating Orbit objects with reference frames (#257), but until we have that, it is not clear in the documentation what reference frames are used for propagation, orbit conversion and other operations. The only mention of a reference frame in the user guide concerns the results from ephemerides:

https://github.com/poliastro/poliastro/blob/v0.8.0/docs/source/user_guide.rst#where-are-the-planets-computing-ephemerides

We should document this very clearly.

🎯 Goal

For those users that care, be very explicit about what assumptions we make and which coordinate systems we use.

💡 Possible solutions

Start documenting. Also reference astropy.coordinates or the Florence notebook.

📋 Steps to solve the problem

MichaelRThompson commented 6 years ago

I could add a question in a separate thread, but this question is directly applicable to this issue, so I guess it should go here.

Using the sample method returns a tuple containing time and a CartesianRepresentation, which is an astropy.coordinates class. Plotting the XYZ coordinates contained in the CartesianRepresentation, it's obviously some sort of Earth-centered inertial frame.

On my end, I am looking to convert these coordinates to Earth-centered Earth-fixed (ECEF) coordinates so I can analyze satellite coverage. This requires knowing which inertial frame the XYZ coordinates are coming from.

I see that additional documentation is a goal in this area, but do you happen to know which frame is being used here? If you do, I would be happy to write up some simple documentation giving a description of the frame to help your efforts in this area.

astrojuanlu commented 6 years ago

Hi @MichaelRThompson! If it's centered on the Earth, ICRS is assumed. If the body is different, it would be a frame parallel to ICRS but with a different center. Does this help?

MichaelRThompson commented 6 years ago

It does indeed. Thanks for the help. I'll see if I can get around to pitching in here and there on this module soon.

astrojuanlu commented 6 years ago

Today another person asked this very same thing in the mailing list:

https://groups.io/g/poliastro-dev/message/37

Now I'm convinced to urgently fix this before the next release.

astrojuanlu commented 6 years ago

Will take care of this as part of #344.