Solar Glint¶
- calculate_target_and_glint_vectorized(sensor_lat, sensor_lon, sensor_alt, viewing_azimuth, tilt_angle, observation_datetime)[source]¶
Vectorized calculation of target locations and glint angles for a set of sensors.
- Parameters:
sensor_lat (np.ndarray) – Latitudes of the sensors (decimal degrees).
sensor_lon (np.ndarray) – Longitudes of the sensors (decimal degrees).
sensor_alt (np.ndarray) – Altitudes of the sensors above sea level (meters).
viewing_azimuth (np.ndarray) – Viewing azimuths relative to true north (degrees).
tilt_angle (np.ndarray) – Tilt angles of the sensors from nadir (degrees).
observation_datetime (np.ndarray) – Timestamps of observations (UTC).
- Returns:
(target_lat, target_lon, glint_angles)
- Return type:
- glint_angle(solar_azimuth, solar_zenith, view_azimuth, view_zenith)[source]¶
Calculate the specular glint angle between the sun and sensor viewing directions.
The glint angle is the angular difference between the specular reflection direction and the sensor viewing direction, assuming a flat surface. A glint angle of 0 degrees indicates perfect specular reflection (sun glint).
- Parameters:
solar_azimuth (np.ndarray) – Solar azimuth angles in degrees.
solar_zenith (np.ndarray) – Solar zenith angles in degrees.
view_azimuth (np.ndarray) – Sensor viewing azimuth angles in degrees.
view_zenith (np.ndarray) – Sensor viewing zenith angles in degrees (from nadir).
- Returns:
Glint angles in degrees. Values near 0 indicate strong sun glint.
- Return type:
np.ndarray
- compute_glint_vectorized(flight_line, sensor, observation_datetime, output_geometry='geographic')[source]¶
Computes glint angles across a flight line and returns the results as a GeoDataFrame.
- Parameters:
flight_line (FlightLine) – FlightLine object defining the flight path.
sensor (LineScanner) – LineScanner object defining sensor characteristics.
observation_datetime (datetime) – The observation timestamp.
- Returns:
Results containing target locations and glint angles.
- Return type:
GeoDataFrame