# S5P_PAL_L2_AER_OT

## Variables

The table below lists the variables that are present in the HARP product that results from an ingestion of `S5P_PAL_L2_AER_OT` data.

field name | type | dimensions | unit | description
--- | --- | --- | --- | ---
scan_subindex | int16 | {time} |  | pixel index (0-based) within the scanline
datetime_start | double | {time} | [seconds since 2010-01-01] | start time of the measurement
datetime_length | double |  | [s] | duration of the measurement
orbit_index | int32 |  |  | absolute orbit number
latitude | float | {time} | [degree_north] | latitude of the ground pixel center (WGS84)
longitude | float | {time} | [degree_east] | longitude of the ground pixel center (WGS84)
latitude_bounds | float | {time, 4} | [degree_north] | latitudes of the ground pixel corners (WGS84)
longitude_bounds | float | {time, 4} | [degree_east] | longitudes of the ground pixel corners (WGS84)
sensor_latitude | float | {time} | [degree_north] | latitude of the geodetic sub-satellite point (WGS84)
sensor_longitude | float | {time} | [degree_east] | longitude of the goedetic sub-satellite point (WGS84)
sensor_altitude | float | {time} | [m] | altitude of the satellite with respect to the geodetic sub-satellite point (WGS84)
solar_zenith_angle | float | {time} | [degree] | zenith angle of the Sun at the ground pixel location (WGS84); angle measured away from the vertical
solar_azimuth_angle | float | {time} | [degree] | azimuth angle of the Sun at the ground pixel location (WGS84); angle measured East-of-North
sensor_zenith_angle | float | {time} | [degree] | zenith angle of the satellite at the ground pixel location (WGS84); angle measured away from the vertical
sensor_azimuth_angle | float | {time} | [degree] | azimuth angle of the satellite at the ground pixel location (WGS84); angle measured East-of-North
cloud_fraction | float | {time} | [] | Geometrical cloud fraction from NPP-VIIRS regridded observations. Geometrical cloud fraction is defined as (probably+confidently cloudy)/(total) for nominal footprint.
surface_pressure | float | {time} | [Pa] | surface air pressure
snow_ice_type | int8 | {time} |  | surface snow/ice type; enumeration values: snow_free_land (0), sea_ice (1), permanent_ice (2), snow (3), ocean (4)
sea_ice_fraction | float | {time} | [] | sea-ice concentration (as a fraction)
absorbing_aerosol_index | float | {time} | [] | Absorbing aerosol index at 340 and 380 nm.
wind_speed | float | {time} | [m/s] | absolute wind speed computed from the wind vector at 10 meter height level
aerosol_optical_depth | float | {time, spectral} | [] | total aerosol optical thickness of the atmospheric column
aerosol_optical_depth_uncertainty | float | {time, spectral} | [] | precision of the total aerosol optical thickness of the atmospheric column
aerosol_optical_depth_validity | int8 | {time, spectral} |  | continuous quality descriptor, varying between 0 (no data) and 100 (full quality data)
single_scattering_albedo | float | {time, spectral} | [] | Single scattering albedo; fraction of the aerosol scattering and absorption, according to the selected aerosol type.
aerosol_type | int32 | {time} |  | selected aerosol type
wavelength | float | {spectral} | [nm] | wavelength
index | int32 | {time} |  | zero-based index of the sample within the source product

## Mapping description

The table below details where and how each variable was retrieved from the input product.

field name | mapping description
--- | ---
scan_subindex | description | the scanline and pixel dimensions are collapsed into a temporal dimension; the index of the pixel within the scanline is computed as the index on the temporal dimension modulo the number of scanlines
datetime_start | path | /PRODUCT/time, /PRODUCT/delta_time[]
description | time converted from milliseconds since a reference time (given as seconds since 2010-01-01) to seconds since 2010-01-01 (using 86400 seconds per day); the time associated with a scanline is repeated for each pixel in the scanline
datetime_length | path | /@time_coverage_resolution
description | the measurement length is parsed assuming the ISO 8601 ‘PT%(interval_seconds)fS’ format
orbit_index | path | /@orbit
latitude | path | /PRODUCT/latitude[]
longitude | path | /PRODUCT/longitude[]
latitude_bounds | path | /PRODUCT/SUPPORT_DATA/GEOLOCATIONS/latitude_bounds[]
longitude_bounds | path | /PRODUCT/SUPPORT_DATA/GEOLOCATIONS/longitude_bounds[]
sensor_latitude | path | /PRODUCT/SUPPORT_DATA/GEOLOCATIONS/satellite_latitude[]
description | the satellite latitude associated with a scanline is repeated for each pixel in the scanline
sensor_longitude | path | /PRODUCT/SUPPORT_DATA/GEOLOCATIONS/satellite_longitude[]
description | the satellite longitude associated with a scanline is repeated for each pixel in the scanline
sensor_altitude | path | /PRODUCT/SUPPORT_DATA/GEOLOCATIONS/satellite_altitude[]
description | the satellite altitude associated with a scanline is repeated for each pixel in the scanline
solar_zenith_angle | path | /PRODUCT/SUPPORT_DATA/GEOLOCATIONS/solar_zenith_angle[]
solar_azimuth_angle | path | /PRODUCT/SUPPORT_DATA/GEOLOCATIONS/solar_azimuth_angle[]
sensor_zenith_angle | path | /PRODUCT/SUPPORT_DATA/GEOLOCATIONS/viewing_zenith_angle[]
sensor_azimuth_angle | path | /PRODUCT/SUPPORT_DATA/GEOLOCATIONS/viewing_azimuth_angle[]
cloud_fraction | path | /PRODUCT/SUPPORT_DATA/INPUT_DATA/cloud_fraction
description | if AOT product was generated with VIIRS input data
path | /PRODUCT/SUPPORT_DATA/INPUT_DATA/effective_cloud_fraction
description | if AOT product was not generated with VIIRS input data
surface_pressure | path | /PRODUCT/SUPPORT_DATA/INPUT_DATA/surface_pressure[]
snow_ice_type | path | /PRODUCT/SUPPORT_DATA/INPUT_DATA/snow_ice_flag[]
description | 0: snow_free_land (0), 1-100: sea_ice (1), 101: permanent_ice (2), 103: snow (3), 255: ocean (4), other values map to -1
sea_ice_fraction | path | /PRODUCT/SUPPORT_DATA/INPUT_DATA/snow_ice_flag[]
description | if 1 <= snow_ice_flag <= 100 then snow_ice_flag/100.0 else 0.0
absorbing_aerosol_index | path | /PRODUCT/SUPPORT_DATA/INPUT_DATA/absorbing_aerosol_index[]
wind_speed | path | /PRODUCT/SUPPORT_DATA/INPUT_DATA/wind_speed[]
aerosol_optical_depth | path | /PRODUCT/aerosol_optical_thickness
aerosol_optical_depth_uncertainty | available | optional
condition | processor version >= 02.00.00
path | /PRODUCT/aerosol_optical_thickness_precision
aerosol_optical_depth_validity | path | /PRODUCT/qa_value
single_scattering_albedo | condition | processor version < 02.00.00
path | /PRODUCT/single_scattering_albedo
condition | processor version >= 02.00.00
path | /PRODUCT/SUPPORT_DATA/DETAILED_RESULTS/single_scattering_albedo
aerosol_type | path | /PRODUCT/aerosol_type
wavelength | path | /PRODUCT/wavelength