dapper.integrations package

Subpackages

Submodules

dapper.integrations.era5 module

ERA5-Land sampling with automatic ECMWF ARCO/GEE backend selection.

class dapper.integrations.era5.ERA5SamplingPlan(requested_backend, backend, sampling_method, feature_count, grid_cell_count, estimated_seconds, estimated_download_mb, reason)[source]

Bases: object

Summary of Dapper’s ERA5-Land backend decision.

Parameters:
  • requested_backend (str)

  • backend (str)

  • sampling_method (str)

  • feature_count (int)

  • grid_cell_count (int)

  • estimated_seconds (float)

  • estimated_download_mb (float)

  • reason (str)

backend: str
estimated_download_mb: float
estimated_seconds: float
feature_count: int
grid_cell_count: int
reason: str
requested_backend: str
sampling_method: str
dapper.integrations.era5.era5_land_grid_cells(geometry)[source]

Return intersecting 0.1-degree ERA5-Land cells and normalized area weights.

Return type:

DataFrame

dapper.integrations.era5.plan_era5_land_sampling(domain, start_date, end_date='latest', *, backend='auto', sampling_method='auto', variables='elm', arco_max_grid_cells=25, arco_max_estimated_seconds=300.0)[source]

Plan an ERA5-Land request without contacting ECMWF or GEE.

Return type:

ERA5SamplingPlan

Parameters:
  • domain (Domain)

  • backend (str)

  • sampling_method (str)

  • arco_max_grid_cells (int)

  • arco_max_estimated_seconds (float)

dapper.integrations.era5.sample_era5_land(domain, start_date, end_date='latest', *, backend='auto', sampling_method='auto', variables='elm', output_dir=None, overwrite=False, keep_downloads=False, arco_max_grid_cells=25, arco_max_estimated_seconds=300.0, cds_client=None, gdrive_folder='dapper_era5_land', job_name=None, gee_scale='native', gee_years_per_task=5, skip_tasks=False)[source]

Sample ERA5-Land through ECMWF ARCO or Google Earth Engine.

Dates use an inclusive start and exclusive output end. ARCO downloads are synchronous and written as GEE-compatible CSV files under output_dir. GEE exports remain asynchronous Drive tasks. backend='auto' chooses ARCO only when every feature fits its service limits and the estimated request is below the configured cell/time thresholds.

ECMWF omits the incomplete 1950-01-01 source day from its ERA5-Land ARCO archive. When ARCO is selected for a request beginning on that date, Dapper warns and begins sampling on 1950-01-02 instead of silently switching the entire request to GEE. Sampling metadata records both dates. Use export_met(..., clip_to_full_years=True) to omit partial boundary years, or select backend='gee' explicitly when 1950-01-01 is required.

For polygon supports, sampling_method='auto' uses a local area-weighted mean of intersecting ERA5-Land cells with ARCO and GEE’s spatial mean with GEE. Points use nearest-cell sampling. Use sampling_method='nearest' to sample polygon representative points instead.

Sampling provenance is attached without changing the input Domain’s model coordinates or weights. GEE geometry-reference coordinates are recorded as sampling_reference_lon and sampling_reference_lat when available.

Return type:

Domain

Parameters:
  • domain (Domain)

  • backend (str)

  • sampling_method (str)

  • output_dir (str | Path | None)

  • overwrite (bool)

  • keep_downloads (bool)

  • arco_max_grid_cells (int)

  • arco_max_estimated_seconds (float)

  • gdrive_folder (str)

  • job_name (str | None)

  • gee_years_per_task (int)

  • skip_tasks (bool)

Module contents

dapper module: integrations.__init__.