The page documents the user-supplied call-back routine init_obsvar_pdaf.

The routine init_obsvar_pdaf (called U_init_obsvar inside the PDAF core routines) is a call-back routine that has to be provided by the user. The routine is used with the global filters ESTKF, ETKF, and SEIK as well as the local filters LESTKF, LETKF, and LSEIK. The routine is called during the filter analysis step. The routine is only called if the adaptive forgetting factor is used (type_forget=1 in the example impementation). When the routine is called it has to return the mean observation error variance.

The interface is the following:

SUBROUTINE init_obsvar_pdaf(step, dim_obs_p, obs_p, meanvar)


  • step : integer, intent(in)
    Current time step
  • dim_obs_p : integer, intent(in)
    Size of observation vector
  • obs_p : real, intent(in), dimension(dim_obs_p)
    Vector of observations
  • meanvar : real, intent(out)
    Mean observation error variance


  • For a model with domain-decomposition one might use the mean variance for the model sub-domain of the calling process. Alternatively one can compute a mean variance for the full model domain using MPI communication (e.g. the function MPI_allreduce).
  • The observation vector obs_p is provided to the routine for the case that the observation error variance is relative to the value of the observations.
Last modified 5 years ago Last modified on Jan 21, 2016, 1:28:37 PM