libera_utils.footprint_matching.types.TimeMatch#

class libera_utils.footprint_matching.types.TimeMatch(*values)#

Bases: Enum

How a reader selects, in time, the samples it serves for one footprint.

A staged 24 h period can hold several observations of the same ground location: a swath product sees it on two or more passes, a reanalysis holds 24 hourly steps. Each reader declares one policy, applied after the geographic (bounding box) query. Time selection is a selection, never an average or an interpolation, so it does not change any value a sample carries.

Variables:
  • DAILY – The staged granule is a daily composite, climatology or static map (IGBP land cover, NISE snow/ice, VIIRS BRDF, VIIRS Deep Blue AOD, VIIRS L3 cloud). No per-sample selection; every sample in the box is served regardless of time.

  • NEAREST_STEP – The source is a time series of global grids (ERA5 hourly steps). The single step whose time is nearest the footprint time is served, with no interpolation between steps. A footprint farther than MAX_TIME_OFFSET from every step gets no samples.

  • NEAREST_PASS – The source is swath or point data with a time per sample (CERES FLASHFlux, CLDPIX). Of the samples in the box, those within PASS_WINDOW of the observation time of the sample nearest the footprint time are served: the nearest pass, whole, and no other pass. A footprint whose nearest sample is farther than MAX_TIME_OFFSET gets no samples.

__init__(*args, **kwds)#

Attributes

DAILY = 'daily'#
NEAREST_PASS = 'nearest_pass'#
NEAREST_STEP = 'nearest_step'#