The algorithm can be decomposed into a sequence of discrete steps, which are outlined below in pseudocode form.
- Filter suitable orbits
- Domain filter - Identify and retain only those orbits that intersect the predefined analysis domain.
- Pixel quality filter - From the orbits passing the previous Step, discard any orbit containing fewer than 500 high quality pixels (quality assurance flag qa = 1) within the domain. Pixel quality information is provided in the
TROPOMI Level 2 data products. - Correlation filter - For the orbits determined in the previous Step, remove orbits exhibiting strong correlations within the domain, defined as (0.5 < abs(R)) between
- methane mixing ratio and surface albedo, or
- methane mixing ratio and aerosol optical thickness.
- Wind-speed filter - For orbits determined in the previous step, reject any orbit for which the pressure averaged boundary layer wind speed is less than 2
() .
- For each orbit passing the filtering criteria described in Step 1, the following processing steps are applied.
- Background Concentration Determination
Sadavarte, et al., 2021 - Define the upwind box - Construct the box with dimensions of 0.5° × 0.5° located 0.5° upwind from the source. Calculate average value and pixel count
- Compute upwind statistics
- Calculate the mean
concentration within the upwind box. - Count the number of valid pixels contained within the upwind box.
- Calculate the mean
- Else the background value is the domain median concentration.
- Downwind Box Determination
- Direction adjustment
- Initialise the downwind box with:
- Length = 0.4°
- Width = 0.2°
- Orientation aligned with the pressure averaged boundary layer wind direction (rotation = 0°).
- Rotate downwind box by 5° increments over the range -40° to +40°
- For each rotation: compute the Methane enhancement (
concentration above background) within the box. - Select the rotation that yields the highest average enhancement.
- Initialise the downwind box with:
- Length adjustment
- Initialise a while loop using the selected rotation with the default box dimensions.
- Iteratively:
- Increase the box length by 0.1°.
- Recalculate the total enhancement within the extended box.
- Acceptance criterion:
- If the enhancement increases by more than 5
() , accept the new length and continue the loop. - Otherwise, reject the extension and terminate the loop.
- If the enhancement increases by more than 5
- Width adjustment
- Initialize the while loop with enhancement value for previously determined direction and length.
- Iteratively:
- Increase the box width by 0.05° on each side.
- Recalculate the total enhancement within the expanded box.
- Acceptance criterion:
- If the enhancement increases by more than 5
() , accept the new length and continue the loop. - Otherwise, reject the extension and terminate the loop.
- If the enhancement increases by more than 5
- Direction adjustment
- Transect Construction and Filtering
- Create 15 equally spaced transects across the final downwind box. Ignore the first 3 in the further analysis.
- For each transect (box model) - Determine the fraction of intersected pixels that are valid.
- Reject transects for which fewer than 75 % of intersected pixels are valid.
- If fewer than three transects remain valid, discard the entire orbit from further analysis.
- Emission Rate Calculation
- For each valid transect: Compute the excess
mass relative to the background. - Convert excess mass to an emission rate using the prescribed CSF formulation.
- Compute the final emission rate for the orbit as the arithmetic mean of emission rates across all valid transects.
- For each valid transect: Compute the excess
- Background Concentration Determination