wiki:U_init_dim_obs

Version 1 (modified by lnerger, 6 years ago) (diff)

--

U_init_dim_obs

The page document the user-supplied call-back routine U_init_dim_obs.

The routine U_init_dim_obs is a call-back routine that has to be provided by the user. In the simplified interface the predefined name of the routine is init_dim_obs_pdaf, but in the full interface, the user can choose the name of the routine. The routine is used with all global filters. The purpose of the routine is to determine the size of the vector of observations. The routine is called at the beginning of each analysis step.

The interface is the following:

SUBROUTINE U_init_dim_obs(step, dim_obs_p)

with

  • step : integer, intent(in)
    Current time step
  • dim_obs_p : `integer, intent(out)
    Size of the observation vector

Notes:

  • Without parallelization dim_obs_p will be the number of observations for the full model domain. When a domain-decomposed model is used, dim_obs_p will be the size of the observation vector for the sub-domain of the calling process.

Some hints:

  • It can be useful to not only determine the size of the observation vector at this point. One can also already gather information about the locations of the observations, which will be used later, e.g. to implement the observation operator. An array for the locations can be defined in a module like mod_assimilation of the example implementation.