gcrf_to_itrf_astropy

ssapy.utils.gcrf_to_itrf_astropy(state_vectors, t)[source][source]

Converts position vectors from the GCRF (Geocentric Celestial Reference Frame) to the ITRF (International Terrestrial Reference Frame) using Astropy.

This function is still under development and may not produce 100% accurate results.

Parameters:

state_vectors (np.array): A 2D array of shape (N, 3), where N is the number of position vectors.

Each row contains the (x, y, z) Cartesian coordinates in meters in the GCRF frame.

t (astropy.time.Time): An Astropy Time object representing the observation time(s) for the transformation.

Returns:

np.array: A 2D array of shape (N, 3), where N is the number of position vectors. Each row contains

the (x, y, z) Cartesian coordinates in meters in the ITRF frame.

Notes:

  • The transformation uses Astropy’s SkyCoord and GCRS/ITRS frames for coordinate conversion.

  • The barycentric position of Earth is calculated using the solar_system_ephemeris context manager with the DE430 ephemeris.

  • The transformation accounts for Earth’s barycentric position to ensure the coordinates are relative to Earth’s center in the ITRF frame.

  • The function assumes the input state_vectors are in meters and outputs coordinates in meters.