pyPDAF.PDAF.omi_init_dim_obs_l_noniso_locweights

pyPDAF.PDAF.omi_init_dim_obs_l_noniso_locweights()

The function has to be called in init_dim_obs_l_OBTYPE in each observation module if a domain-localized filter (LESTKF/LETKF/LNETF/LSEIK)is used. It initialises the local observation information for PDAF-OMI for a single local analysis domain. This is used for non-isotropic localisation and different weight functions for horizontal and vertical directions. See https://pdaf.awi.de/trac/wiki/OMI_observation_modules#init_dim_obs_l_OBSTYPE and https://pdaf.awi.de/trac/wiki/PDAFomi_init_dim_obs_l#Settingdifferentweightfunctsforhorizontalandverticaldirections.

Parameters:
  • i_obs (int) – index of observation type

  • coords_l (ndarray[tuple[ncoord], np.float64]) –

    Coordinates of current analysis domain

    The array dimension ncoord is number of coordinate dimension.

  • locweights (ndarray[tuple[2], np.intc]) – Types of localization function 0) unit weight; 1) exponential; 2) 5-th order polynomial; 3) 5-th order polynomial with regulatioin using mean variance; 4) 5-th order polynomial with regulatioin using variance of single observation point; The first dimension is horizontal weight function and the second is the vertical function

  • cradius (ndarray[tuple[ncoord], np.float64]) –

    Vector of localization cut-off radii for each dimension; observation weight=0 if distance > cradius

    The array dimension ncoord is number of coordinate dimension.

  • sradius (ndarray[tuple[ncoord], np.float64]) –

    Vector of support radii of localization function for each dimension. It has no impact if locweight=0; weight = exp(-d / sradius) if locweight=1; weight = 0 if d >= sradius else f(sradius, distance) if locweight in [2,3,4].

    The array dimension ncoord is number of coordinate dimension.

  • cnt_obs_l (int) – Local dimension of current observation vector

Returns:

cnt_obs_l – Local dimension of current observation vector

Return type:

int