libera_utils.geolocation.target_position#

libera_utils.geolocation.target_position(target: SpiceBody, et: float, frame: SpiceFrame, observer: SpiceBody, *, abcorr: str = 'NONE', normalize: bool = False)#

Calculates the position and velocity of the target at ephemeris time et relative to observer in reference frame frame. Also calculates the light travel time between target and observer at time et.

Parameters:
  • target (spice_utils.SpiceBody) – Target body for which to calculate position and velocity relative to observer

  • et (float or numpy.ndarray) – Ephemeris time(s)

  • frame (spice_utils.SpiceFrame) – Reference frame (unit vectors)

  • observer (spice_utils.SpiceBody) – The observer of the target. Resulting coordinates point from observer to target.

  • abcorr (str) – A scalar string that indicates the aberration corrections to apply to the database of the target body to account for one-way light time and stellar aberration. Default is ‘NONE’.

  • normalize (bool, Optional) – Return unit vectors for position and velocity (light time output is unchanged)

Returns:

(x: numpy.ndarray, v: numpy.ndarray, lt: numpy.ndarray) or (x: float, v: float, lt: float) Rectangular position and velocity vectors (x, y, z), (v_x, v_y, v_z) where position points from the planet center of mass location at et to the aberration-corrected location of the target. Light time (lt) between planetary body and target.

Return type:

tuple