libera_utils.geolocation.surface_intercept_point#
- libera_utils.geolocation.surface_intercept_point(sc_location: ndarray, look_vector: ndarray, look_frame: SpiceFrame, et: float = None)#
Returns rectangular coordinates of the point of interception of a look direction from the spacecraft onto the Earth ellipsoid. If the look vector misses the planet, then the distance returned will be non-zero and the point returned is the point on the look_vector ray that is closest to the ellipsoid.
This routine assumes that the location of the spacecraft and the location of the instrument are the same because we don’t have ephemeris data for the instrument but we _do_ have ephemeris for the spacecraft. Over the scale of distances involved, the offset between spacecraft and instrument (meters) should be negligible in affecting the near-point calculation.
https://naif.jpl.nasa.gov/pub/naif/toolkit_docs/C/cspice/npedln_c.html
- Parameters:
sc_location (numpy.ndarray) – The location of the observing body (i.e. the spacecraft body) with respect to Earth
look_vector (numpy.ndarray) – Look direction unit vector (e.g. an instrument look direction)
look_frame (spice_utils.SpiceFrame) – Reference frame of look_vector
et (float or numpy.ndarray or None, Optional) – Ephemeris time (at spacecraft at photon detection time). Only required if look_frame is not ITRF93.
- Returns:
(pnear, alt) Rectangular coordinates of nearest point to reference surface ellipsoid and distance between the line and the near point.
- Return type: