Skip to content

Ensemble

glofas_ewds.ensemble

How likely a forecast peak is: the share of ensemble members above a threshold.

Pure: nothing here does I/O.

The control run says one future; the 50 perturbed members of the same run say how sure it is. Three members over the river's ordinary high flow and forty over it are the same control forecast and very different news. The threshold is yours: a node's own reference (:func:~glofas_ewds.reference.references) or a return level (:func:~glofas_ewds.return_period.return_levels), never a regional figure.

A member that is all NaN (masked) does not vote. With no member left, or no threshold, the answer is None: "I don't know", never "0 %".

exceedance_probability

exceedance_probability(members: ArrayLike, threshold: float | None) -> float | None

Share (0-1) of members whose peak over the lead times reaches threshold.

members is (member, lead time), as :func:~glofas_ewds.glofas.ensemble_members gives it.

exceedance_by_lead

exceedance_by_lead(members: ArrayLike, threshold: float | None) -> list[float] | None

For each lead time, the share of members at or above threshold.

Says when: [0.0, 0.1, 0.6, 0.4, ...] is a peak most likely on day 3. A lead time where every member is masked gives NaN.