pyPDAF.PDAFomi.gather_obs¶
- pyPDAF.PDAFomi.gather_obs()¶
Gather the dimension of a given type of observation across multiple local domains/filter processors.
This function can be used in the user-supplied function of
py__init_dim_obs_f_pdaf()
.- This function does three things:
Receiving observation dimension on each local process.
Gather the total dimension of given observation type across local process and the displacement of PE-local observations relative to the total observation vector
Set the observation vector, observation coordinates, the inverse of the observation variance, and localisation radius for this observation type.
- Parameters:
i_obs (int) – index of observation type
dim_obs_p (int) – PE-local dimension of observation vector
obs_p (ndarray[tuple[dim_obs_p, ...], np.float64]) – PE-local observation vector The array dimension dim_obs_p is dimension of PE-local observation vector
ivar_obs_p (ndarray[tuple[dim_obs_p, ...], np.float64]) – PE-local inverse of observation error variance The array dimension dim_obs_p is dimension of PE-local observation vector
ocoord_p (ndarray[tuple[thisobs(i_obs)%ncoord, dim_obs_p, ...], np.float64]) – pe-local observation coordinates The 1st-th dimension dim_obs_p is dimension of PE-local observation vector
ncoord (int) – Number of rows of coordinate array
lradius (float) – localization radius
- Returns:
dim_obs – Full number of observations
- Return type:
int