wiki:PDAF_gather_obs_f_flex

Version 3 (modified by lnerger, 5 years ago) (diff)

--

PDAF_gather_obs_f_flex

This page documents the routine PDAF_gather_obs_f_flex of PDAF, which was introduced with PDAF V1.14.

In the local filters (LESKTF, LETKF, LSEIK, LNETF) this routine can be used to gather the full observation vector dimension from process-local observation vectors of size dim_obs_p and returns the full vector.

The routine is typically used in the routines init_dim_obs_f_pdaf and obs_op_f_pdaf if the analysis step of the local filters is parallelized.

The interface is the following:

  SUBROUTINE PDAF_gather__obs_f_flex(dim_obs_p, dim_obs_f, obs_p, obs_f, status)

with the following arguments:

  • dim_obs_p : integer, intent(in)
    Process-local dimension of observation vector
  • dim_obs_f : integer, intent(in)
    Full dimension of observation vector
  • obs_p : real, intent(in), dimension(dim_obs_p)
    Process-local observation vector
  • obs_f : real, intent(out), dimension(dim_obs_f)
    Full observation vector
  • status : integer, intent(out)
    Status flag (0 for no error)

Notes:

  • The routine PDAF_gather_dim_obs_f can be used to determine dim_obs_f.
  • This is more flexible variant to the routine PDAF_gather_obs_f. It's functionality is the same, but it does not rely on a previous call to the routine PDAF_gather_dim_obs_f.