wradlib.clutter.classify_echo_fuzzy(dat, weights=None, trpz=None, thresh=0.5)

Fuzzy echo classification and clutter identification based on polarimetric moments.

The implementation is based on [Vulpiani et al., 2012]. At the moment, it only distinguishes between meteorological and non-meteorological echos.

For each decision variable and radar bin, the algorithm uses trapezoidal functions in order to define the membership to the non-meteorological echo class. Based on pre-defined weights, a linear combination of the different degrees of membership is computed. The echo is assumed to be non-meteorological in case the linear combination exceeds a threshold.

At the moment, the following decision variables are considered:

  • Texture of differential reflectivity (zdr)
  • Texture of correlation coefficient (rho)
  • Correlation coefficient (rho2)
  • Texture of differential propagation phase (phidp)
  • Doppler velocity (dop)
  • Static clutter map (map)
  • dat (dict) – dictionary of arrays. Contains the data of the decision variables. The shapes of the arrays should be (…, number of beams, number of gates) and the shapes need to be identical or be broadcastable.
  • weights (dict) – dictionray of floats. Defines the weights of the decision variables.
  • trpz (dict) – dictionary of lists of floats. Contains the arguments of the trapezoidal membership functions for each decision variable
  • thresh (float) – Threshold below which membership in non-meteorological membership class is assumed.

output (tuple) – a tuple of two boolean arrays of same shape as the input arrays The first array boolean array indicates non-meteorological echos based on the fuzzy classification. The second boolean array indicates where all the polarimetric moments had missing values which could be used as an additional information criterion.