libera_utils.footprint_matching.geometry.slant_range_km#

libera_utils.footprint_matching.geometry.slant_range_km(satellite_radius_km: float, viewing_zenith_deg: float) → float#

Distance from the satellite to the ground point seen at a viewing zenith, in km.

On a sphere of the WGS84 equatorial radius R (WGS84_SEMI_MAJOR_AXIS_KM), a satellite at distance R_s from Earth’s center sees a point at viewing zenith v from rho = sqrt(R_s^2 - (R sin v)^2) - R cos v. The viewing zenith is clamped at _MAX_VZA_FOR_ELONGATION_DEG, as in psf_ground_radius_km(). The PSF weighers use it to turn a source’s ground sample spacing into an angular bin size for the coverage reference grid.

Parameters:
  • satellite_radius_km (float) – Spacecraft distance from Earth’s center (L1B Radius_of_Satellite_from_Center_of_Earth), km.

  • viewing_zenith_deg (float) – Viewing zenith angle, degrees.

Returns:

Slant range in km.

Return type:

float