earthkit.meteo.extreme.array.cpf

earthkit.meteo.extreme.array.cpf(clim, ens, sort_clim=True, sort_ens=True, epsilon=None, symmetric=False, from_zero=False, clim_dim=0, ens_dim=0)

Compute Crossing Point Forecast (CPF).

The reduction axis (ensemble and quantiles) is configurable by the user, but the other dimensions of clim and ens must be aligned and match.

WARNING: this code is experimental, use at your own risk!

Parameters:
  • clim (array-like) – Per-point climatology. The reduction axis (quantiles) is set by clim_dim.

  • ens (array-like) – Ensemble forecast. The reduction axis (ensemble members) is set by ens_dim.

  • sort_clim (bool) – If True, sort the climatology first

  • sort_ens (bool) – If True, sort the ensemble first

  • epsilon (float or None) – If set, use this as a threshold for low-signal regions. Ignored if symmetric is True

  • symmetric (bool) – If True, make CPF values below 0.5 use a symmetric computation (CPF of opposite values)

  • from_zero (bool) – If True, start looking for a crossing from the minimum, rather than the median

  • clim_dim (int) – Dimension index of the climatology/quantile dimension in clim. Default is 0.

  • ens_dim (int) – Dimension index of the ensemble/member dimension in ens. Default is 0.

Returns:

CPF values.

Return type:

array-like