easysnowdata.stations.clients.NorSWEClient#

class easysnowdata.stations.clients.NorSWEClient(path: str | Path | None = None, record_id: str | None = None, cache_dir: str | Path | None = None, session: Any = None, timeout: int = 120, max_retries: int = 3, backoff: int = 4)[source]#

Bases: CanSWEStyleClient

Client for the NorSWE netCDF (latest Zenodo version, cached locally).

No credentials are needed. The first use downloads 2.4 GB.

Parameters:
  • path (str or Path, optional) – Use this local .nc instead of resolving / downloading.

  • record_id (str, optional) – Pin a Zenodo record (e.g. "15263370" for v3).

  • cache_dir (str or Path, optional) – Override easysnowdata.config.cache_dir("stations", "norswe").

  • session (requests.Session, optional) – Session used for the Zenodo API call.

  • timeout (int) – Shared retry-loop settings.

  • max_retries (int) – Shared retry-loop settings.

  • backoff (int) – Shared retry-loop settings.

NAME: str = 'norswe'#

Network key, also the cache sub-directory name.

CONCEPT_RECID: str = '10287092'#

Zenodo concept record id (resolves to the latest version).

FILE_SUFFIX: str = '.zip'#

Suffix of the Zenodo file to fetch (".nc" or ".zip").

DATASET_URL: str = 'https://doi.org/10.5281/zenodo.10287092'#

Landing page of the dataset (used as station_url fallback).

ERROR#

alias of NorSWEError

VARIABLES: dict[str, dict] = {'den': {'description': 'Bulk snow density derived as snw / snd.', 'name': 'Bulk Snow Density', 'notes': 'Derived by the dataset authors, only where both SWE and depth exist; returned as % (kg m-3 ÷ 1000 × 100).', 'output_units': '%', 'scale': 0.1, 'source': 'ECCC NorSWE (Mortimer & Vionnet 2025) — https://doi.org/10.5281/zenodo.10287092', 'type': 'density', 'units': 'kg m-3'}, 'snd': {'description': 'Depth of snow on the ground.', 'name': 'Snow Depth', 'notes': 'Stored in m; returned in cm (× 100).', 'output_units': 'cm', 'scale': 100.0, 'source': 'ECCC NorSWE (Mortimer & Vionnet 2025) — https://doi.org/10.5281/zenodo.10287092', 'type': 'snwd', 'units': 'm'}, 'snw': {'description': 'Water equivalent of snow cover (SWE).', 'name': 'Snow Water Equivalent', 'notes': 'Stored as kg m-2 (= mm of water); returned in cm (× 0.1).', 'output_units': 'cm', 'scale': 0.1, 'source': 'ECCC NorSWE (Mortimer & Vionnet 2025) — https://doi.org/10.5281/zenodo.10287092', 'type': 'swe', 'units': 'kg m-2'}}#

Native variables (copy of VARIABLES_TEMPLATE with source).

get_all_stations(active_only: bool = False, bbox: tuple[float, float, float, float] | None = None, sources: list[str] | str | None = None, methods: list[int | str] | int | str | None = None, daily_only: bool = False, countries: list[str] | str | None = None, prefixes: list[str] | str | None = None, mountain_only: bool = False) → list[dict][source]#

Every NorSWE station; see CanSWEStyleClient.get_all_stations.

Extra filters: countries ("RU", "FI", …), prefixes (id prefixes, e.g. "NOHRSC" for airborne gamma or "SNOTEL"), mountain_only (mmask == 1).

Examples using easysnowdata.stations.clients.NorSWEClient#

Northern Hemisphere historical SWE (NorSWE)

Northern Hemisphere historical SWE (NorSWE)