pyPDAF.assimilate_local_nondiagr

pyPDAF.assimilate_local_nondiagr()

Online assimilation of domain local filters for a single DA step using non-diagnoal observation error covariance matrix.

Here, this function call is used for LE(S)TKF [1] and LSEIK [1] The filter type is set in pyPDAF.PDAF.init(). This function should be called at each model time step.

User-supplied functions are executed in the following sequence:
  1. py__collect_state_pdaf

  2. py__prepoststep_state_pdaf

  3. py__init_n_domains_p_pdaf

  4. py__init_dim_obs_pdaf

  5. py__obs_op_pdaf (for each ensemble member)

  6. loop over each local domain:
    1. py__init_dim_l_pdaf

    2. py__init_dim_obs_l_pdaf

    3. py__init_obs_l_pdaf

    4. py__prodRinvA_l_pdaf

    5. core DA algorithm

  7. py__prepoststep_state_pdaf

  8. py__distribute_state_pdaf

  9. py__next_observation_pdaf

References

Parameters:
  • py__collect_state_pdaf (Callable) – Routine to collect a state vector

  • py__distribute_state_pdaf (Callable) – Routine to distribute a state vector

  • py__init_dim_obs_pdaf (Callable) – Initialize dimension of full observation vector

  • py__obs_op_pdaf (Callable) – Full observation operator

  • py__init_n_domains_p_pdaf (Callable) – Provide number of local analysis domains

  • py__init_dim_l_pdaf (Callable) – Init state dimension for local ana. domain

  • py__init_dim_obs_l_pdaf (Callable) – Initialize local dimimension of obs. vector

  • py__prodrinva_l_pdaf (Callable) – Provide product of inverse of R with matrix A

  • py__prepoststep_pdaf (Callable) – User supplied pre/poststep routine

  • py__next_observation_pdaf (Callable) – Provide information on next forecast

  • outflag (int) – Status flag

Returns:

outflag – Status flag

Return type:

int