# S5_L2_NO2

## Variables

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

field name | type | dimensions | unit | description
--- | --- | --- | --- | ---
datetime | double | {time} | [seconds since 2020-01-01] | time of the measurement
datetime_length | double |  | [s] | measurement duration
orbit_index | int32 |  |  | absolute orbit number
validity | int32 | {time} |  | processing quality flag
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] | the four latitude boundaries of each ground pixel
longitude_bounds | float | {time, 4} | [degree_east] | the four longitude boundaries of each ground pixel
sensor_latitude | float | {time} | [degree_north] | latitude of the spacecraft sub-satellite point on the WGS84 reference ellipsoid
sensor_longitude | float | {time} | [degree_east] | longitude of the spacecraft sub-satellite point on the WGS84 reference ellipsoid
sensor_altitude | float | {time} | [m] | altitude of the spacecraft relative to the WGS84 reference ellipsoid.
sensor_orbit_phase | double | {time} | [] | relative offset (0.0 … 1.0) of the measurement in the orbit.
solar_zenith_angle | float | {time} | [degree] | zenith angle of the sun measured from the ground pixel location on the WGS84 reference ellipsoid
solar_azimuth_angle | float | {time} | [degree] | azimuth angle of the sun measured from the ground pixel location on the WGS84 ellipsoid
sensor_zenith_angle | float | {time} | [degree] | zenith angle of the spacecraft measured from the ground pixel location on the WGS84 reference ellipsoid
sensor_azimuth_angle | float | {time} | [degree] | azimuth angle of the spacecraft measured from the ground pixel WGS84 reference ellipsoid
surface_altitude | float | {time} | [m] | height of the surface above WGS84 ellipsoid averaged over the S5 pixel
surface_altitude_uncertainty | float | {time} | [m] | standard deviation of the height of the surface above WGS84 ellipsoid averaged over the S5 pixel
surface_pressure | float | {time} | [Pa] | surface pressure; from ECMWF and adjusted for surface elevation
surface_type | int32 | {time} |  | surface classification
snow_ice_type | int32 | {time} |  | surface condition (snow/ice); 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)
tropospheric_NO2_column_number_density | float | {time} | [mol/m^2] | tropospheric NO2 vertical column density
tropospheric_NO2_column_number_density_uncertainty | float | {time} | [mol/m^2] | tropospheric NO2 vertical column density
tropospheric_NO2_column_number_density_amf | float | {time} | [mol/m^2] | tropospheric air mass factor
NO2_column_number_density_amf | float | {time} | [mol/m^2] | total air mass factor
NO2_column_number_density_avk | float | {time, vertical} | [] | averaging kernel
tropospheric_NO2_column_number_density_validity | int32 | {time} | [] | quality assurance value describing the quality of the product
stratospheric_NO2_column_number_density_amf | float | {time} | [mol/m^2] | stratospheric air mass factor
cloud_fraction | float | {time} | [] | cloud radiance fraction
NO2_slant_column_number_density | float | {time} | [mol/m^2] | total NO2 slant column density
NO2_slant_column_number_density_uncertainty | float | {time} | [mol/m^2] | total NO2 slant column density uncertainty
O3_slant_column_number_density | float | {time} | [mol/m^2] | O3 slant column density
O3_slant_column_number_density_uncertainty | float | {time} | [mol/m^2] | O3 slant column density uncertainty
H2O_vapor_slant_column_number_density | float | {time} | [mol/m^2] | H2O vapor slant column density
H2O_vapor_slant_column_number_density_uncertainty | float | {time} | [mol/m^2] | H2O vapor slant column density uncertainty
liquid_H2O_slant_column_number_density | float | {time} | [mol/m^2] | H2O liquid coefficient
liquid_H2O_slant_column_number_density_uncertainty | float | {time} | [mol/m^2] | H2O liquid coefficient uncertainty
stratospheric_NO2_column_number_density | float | {time} | [mol/m^2] | stratospheric NO2 vertical column density
stratospheric_NO2_column_number_density_uncertainty | float | {time} | [mol/m^2] | stratospheric NO2 vertical column density uncertainty
NO2_column_number_density | float | {time} | [mol/m^2] | NO2 column number density values in the selected column option
NO2_column_number_density_uncertainty | float | {time} | [mol/m^2] | NO2 column number density uncertainty values in the selected column option
surface_albedo | float | {time} | [] | surface albedo
pressure_bounds | double | {time, vertical, 2} | [Pa] | pressure boundaries
aerosol_index | float | {time} | [] | aerosol absorbing index 354/388 pair
cloud_albedo | float | {time} | [] | cloud albedo
cloud_albedo_uncertainty | float | {time} | [] | cloud albedo uncertainty
cloud_pressure | float | {time} | [Pa] | cloud pressure
cloud_pressure_uncertainty | float | {time} | [Pa] | cloud pressure uncertainty
scene_albedo | float | {time} | [] | scene albedo
scene_albedo_uncertainty | float | {time} | [] | scene albedo uncertainty
scene_pressure | float | {time} | [Pa] | scene pressure
scene_pressure_uncertainty | float | {time} | [Pa] | scene pressure uncertainty
tropopause_pressure | float | {time} | [Pa] | tropopause pressure (CAMS)
index | int32 | {time} |  | zero-based index of the sample within the source product

## Ingestion options

The table below lists the available ingestion options for `S5_L2_NO2` products.

option name | legal values | description
--- | --- | ---
total_column | total, summed | which NO2 column to ingest: ‘total’ (default) or ‘summed’

## Mapping description

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

field name | mapping description
--- | ---
datetime | path | /data/PRODUCT/time, /data/PRODUCT/delta_time[]
description | time converted from days since 2020-01-01 to seconds since 2020-01-01 (using 86400 seconds per day) and delta_time added; the time associated with a scanline is repeated for each pixel in the scanline
datetime_length | path | /data/PRODUCT/delta_time[]
description | delta_time[1] - delta_time[0]
orbit_index | path | /@orbit_start
validity | path | /data/PRODUCT/processing_quality_flags[]
description | the uint64 data is cast to int32
latitude | path | /data/PRODUCT/SUPPORT_DATA/GEOLOCATIONS/latitude[]
longitude | path | /data/PRODUCT/SUPPORT_DATA/GEOLOCATIONS/longitude[]
latitude_bounds | path | /data/PRODUCT/SUPPORT_DATA/GEOLOCATIONS/latitude_bounds[]
longitude_bounds | path | /data/PRODUCT/SUPPORT_DATA/GEOLOCATIONS/longitude_bounds[]
sensor_latitude | path | /data/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 | /data/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 | /data/PRODUCT/SUPPORT_DATA/GEOLOCATIONS/satellite_altitude[]
description | the satellite altitude associated with a scanline is repeated for each pixel in the scanline
sensor_orbit_phase | path | /data/PRODUCT/SUPPORT_DATA/GEOLOCATIONS/satellite_orbit_phase[]
solar_zenith_angle | path | /data/PRODUCT/SUPPORT_DATA/GEOLOCATIONS/solar_zenith_angle[]
solar_azimuth_angle | path | /data/PRODUCT/SUPPORT_DATA/GEOLOCATIONS/solar_azimuth_angle[]
sensor_zenith_angle | path | /data/PRODUCT/SUPPORT_DATA/GEOLOCATIONS/viewing_zenith_angle[]
sensor_azimuth_angle | path | /data/PRODUCT/SUPPORT_DATA/GEOLOCATIONS/viewing_azimuth_angle[]
surface_altitude | path | /data/PRODUCT/SUPPORT_DATA/INPUT_DATA/surface_altitude[]
surface_altitude_uncertainty | path | data/PRODUCT/SUPPORT_DATA/INPUT_DATA/surface_altitude_uncertainty[]
surface_pressure | path | data/PRODUCT/SUPPORT_DATA/INPUT_DATA/surface_pressure[]
surface_type | path | /data/PRODUCT/SUPPORT_DATA/INPUT_DATA/surface_classification[]
snow_ice_type | condition | band=band3a or band unset
path | /data/PRODUCT_BAND3A/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
condition | band=band3c
path | /data/PRODUCT_BAND3C/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 | condition | band=band3a or band unset
path | /data/PRODUCT_BAND3A/SUPPORT_DATA/INPUT_DATA/snow_ice_flag[]
description | if 1 <= snow_ice_flag <= 100 then snow_ice_flag/100.0 else 0.0
condition | band=band3c
path | /data/PRODUCT_BAND3C/SUPPORT_DATA/INPUT_DATA/snow_ice_flag[]
description | if 1 <= snow_ice_flag <= 100 then snow_ice_flag/100.0 else 0.0
tropospheric_NO2_column_number_density | path | data/PRODUCT/nitrogen_dioxide_tropospheric_column[]
tropospheric_NO2_column_number_density_uncertainty | path | data/PRODUCT/nitrogen_dioxide_tropospheric_column_uncertainty[]
tropospheric_NO2_column_number_density_amf | path | data/PRODUCT/nitrogen_dioxide_tropospheric_column_air_mass_factor[]
NO2_column_number_density_amf | path | data/PRODUCT/nitrogen_dioxide_total_column_air_mass_factor[]
NO2_column_number_density_avk | path | data/PRODUCT/nitrogen_dioxide_total_column_averaging_kernel[]
description | the vertical grid is inverted to make it ascending
tropospheric_NO2_column_number_density_validity | path | data/PRODUCT/qa_value[]
stratospheric_NO2_column_number_density_amf | path | data/PRODUCT/SUPPORT_DATA/DETAILED_RESULTS/nitrogen_dioxide_stratospheric_column_air_mass_factor[]
cloud_fraction | path | data/PRODUCT/SUPPORT_DATA/DETAILED_RESULTS/cloud_radiance_fraction[]
NO2_slant_column_number_density | path | data/PRODUCT/SUPPORT_DATA/DETAILED_RESULTS/nitrogen_dioxide_slant_column[]
NO2_slant_column_number_density_uncertainty | path | data/PRODUCT/SUPPORT_DATA/DETAILED_RESULTS/nitrogen_dioxide_slant_column_uncertainty[]
O3_slant_column_number_density | path | data/PRODUCT/SUPPORT_DATA/DETAILED_RESULTS/ozone_slant_column[]
O3_slant_column_number_density_uncertainty | path | data/PRODUCT/SUPPORT_DATA/DETAILED_RESULTS/ozone_slant_column_uncertainty[]
H2O_vapor_slant_column_number_density | path | data/PRODUCT/SUPPORT_DATA/DETAILED_RESULTS/water_vapor_slant_column[]
H2O_vapor_slant_column_number_density_uncertainty | path | data/PRODUCT/SUPPORT_DATA/DETAILED_RESULTS/water_vapor_slant_column_uncertainty[]
liquid_H2O_slant_column_number_density | path | data/PRODUCT/SUPPORT_DATA/DETAILED_RESULTS/water_liquid_slant_column[]
liquid_H2O_slant_column_number_density_uncertainty | path | data/PRODUCT/SUPPORT_DATA/DETAILED_RESULTS/water_liquid_slant_column_uncertainty[]
stratospheric_NO2_column_number_density | path | data/PRODUCT/SUPPORT_DATA/DETAILED_RESULTS/nitrogen_dioxide_stratospheric_column[]
stratospheric_NO2_column_number_density_uncertainty | path | data/PRODUCT/SUPPORT_DATA/DETAILED_RESULTS/nitrogen_dioxide_stratospheric_column_uncertainty[]
NO2_column_number_density | condition | total_column=total
path | data/PRODUCT/SUPPORT_DATA/DETAILED_RESULTS/nitrogen_dioxide_total_column[]
description | total NO2 vertical column density
condition | total_column=summed
path | data/PRODUCT/SUPPORT_DATA/DETAILED_RESULTS/nitrogen_dioxide_summed_total_column[]
description | sum of partial NO2 columns
NO2_column_number_density_uncertainty | condition | total_column=total
path | data/PRODUCT/SUPPORT_DATA/DETAILED_RESULTS/nitrogen_dioxide_total_column_uncertainty[]
description | total NO2 vertical column density uncertainty
condition | total_column=summed
path | data/PRODUCT/SUPPORT_DATA/DETAILED_RESULTS/nitrogen_dioxide_summed_total_column_uncertainty[]
description | sum of partial NO2 vertical column density uncertainty
surface_albedo | path | data/PRODUCT/SUPPORT_DATA/INPUT_DATA/surface_albedo[]
pressure_bounds | path | data/PRODUCT/SUPPORT_DATA/INPUT_DATA/pressure_coefficient_a[], data/PRODUCT/SUPPORT_DATA/INPUT_DATA/pressure_coefficient_b[], data/PRODUCT/SUPPORT_DATA/INPUT_DATA/surface_pressure[]
description | pressure in Pa at level k is derived from surface pressure in Pa as: pressure_coefficient_a[k] + pressure_coefficient_b[k] * surface_pressure[]; the top of atmosphere pressure is clamped to 1e-3 Pa
aerosol_index | path | data/PRODUCT/SUPPORT_DATA/INPUT_DATA/aerosol_index_354_388[]
cloud_albedo | path | data/PRODUCT/SUPPORT_DATA/INPUT_DATA/cloud_albedo[]
cloud_albedo_uncertainty | path | data/PRODUCT/SUPPORT_DATA/INPUT_DATA/cloud_albedo_uncertainty[]
cloud_pressure | path | data/PRODUCT/SUPPORT_DATA/INPUT_DATA/cloud_pressure[]
cloud_pressure_uncertainty | path | data/PRODUCT/SUPPORT_DATA/INPUT_DATA/cloud_pressure_uncertainty[]
scene_albedo | path | data/PRODUCT/SUPPORT_DATA/INPUT_DATA/scene_albedo[]
scene_albedo_uncertainty | path | data/PRODUCT/SUPPORT_DATA/INPUT_DATA/scene_albedo_uncertainty[]
scene_pressure | path | data/PRODUCT/SUPPORT_DATA/INPUT_DATA/scene_pressure[]
scene_pressure_uncertainty | path | data/PRODUCT/SUPPORT_DATA/INPUT_DATA/scene_pressure_uncertainty[]
tropopause_pressure | path | data/PRODUCT/SUPPORT_DATA/INPUT_DATA/tropopause_pressure[]