Era5Retriever#

class rojak.datalib.ecmwf.era5.Era5Retriever(dataset_name, folder_name, default_name=None, pressure_levels=None, variables=None, times=None)[source]#

Downloads ERA5 reanalysis data from the Copernicus Climate Data Store (CDS) via cdsapi

Parameters:
__init__(dataset_name, folder_name, default_name=None, pressure_levels=None, variables=None, times=None)[source]#
Parameters:
  • dataset_name (Era5DatasetName) – ERA5 dataset to request from, either pressure-level or single-level data

  • folder_name (str) – Name of the subdirectory (within base_output_dir passed to download_files()) to download the files into

  • default_name (Era5DefaultsName | None) – Name of a default request body to use as the base of the request. If None, an empty request body is used and pressure_levels/variables must be provided instead.

  • pressure_levels (list[int] | None) – Pressure levels (in hPa) to request. If provided, overrides the levels in default_name’s request body. Required if default_name is None and dataset_name is "pressure-level".

  • variables (list[str] | None) – Variables to request. If provided, overrides the variables in default_name’s request body. Required if default_name is None.

  • times (list[str] | None) – Times of day to request. If provided, overrides the times in default_name’s request body. Defaults to six hourly if not given.

Raises:

InvalidEra5RequestConfigurationError – If default_name is None and pressure_levels (for a pressure-level dataset) or variables is not provided

Return type:

None

Methods

__init__(dataset_name, folder_name[, ...])

compute_date_combinations(years, months, days)

Expand years/months/days into every Date combination

download_files(years, months, days, ...)

Download the ERA5 data file for every combination of years, months, and days

Attributes

request_body

request_dataset_name

cds_client

folder_name