pythonskyfield

itrs reference frame in skyfield


I want to convert a Skyfield Topos object (lat/lon/altitude) to Earth Centered Earth Fixed (ECEF) coordinates.

[][1]https://rhodesmill.org/skyfield/positions.html#coordinates-in-other-reference-frames

gives the example:

from skyfield.framelib import itrs
a = earth.at(t).observe(planets['moon']).apparent()
x = a.frame_xyz(itrs)

to use the itrs frame of reference. However, this import statement is an error in skyfield version 1.33. I cannot find where itrs is now located, or if there is a simpler method to perform this conversion.


Solution

  • The frame of reference was added in 1.34, so an upgrade should fix the import error. Here is the CHANGELOG entry:

    https://rhodesmill.org/skyfield/installation.html#v1-34-2020-december-10