Skip to content

History (IT-DPC-SRI)

dpc_radar.history

Fifteen years of radar rain: the IT-DPC-SRI archive (2010-2025), read from disk.

IT-DPC-SRI (Fondazione Bruno Kessler on DPC data, CC BY-SA 4.0, doi:10.5281/zenodo.18637608 <https://doi.org/10.5281/zenodo.18637608>_) is the national SRI mosaic, rain intensity in mm/h from the radar alone, as one Zarr v2 store: one chunk per time step, 1400 x 1200 pixels of 1 km in a Transverse Mercator projection centred on 42°N 12.5°E, a frame every 15 minutes until 2014, every 10 until 2020, every 5 after. It is published as a single 50 GB .zarr.tar.zst: unpack it once, then point :class:SriHistory at the .zarr folder.

It is read here without zarr or xarray: the Blosc codec (extra history, pip install "dpc-radar[history]") is enough to decompress a frame.

It is the history the API does not give (it keeps only the last months), and it is radar only: it under-estimates heavy rain, so compare it with the «Merging» of :mod:dpc_radar.archive where both exist.

An hour covered for less than half by frames is None, not measured: a gap in the archive is not a dry hour.

SriHistory

Hourly rain at lon/lat points from the IT-DPC-SRI Zarr store on disk.

pixel

pixel(points: list[tuple[float, float]]) -> list[tuple[int, int] | None]

(row, column) of each lon/lat point; None outside the grid.

frame

frame(i: int) -> np.ndarray | None

Frame i of the store in mm/h (NaN for no data); None if its chunk is missing.

time

time(i: int) -> datetime

The time of frame i.

hourly

hourly(points: list[tuple[float, float]], start: datetime, end: datetime) -> dict[datetime, list[float | None]]

Rain of every hour (h-1, h] in (start, end], per lon/lat point (mm).

The mean of the intensities of the hour's frames, each weighted by the time it covers until the next one (15 minutes at most), read as the median of the 3x3 pixels around the point. The same signature as :meth:dpc_radar.archive.MergingArchive.hourly: the two are interchangeable.