Changes between Initial Version and Version 1 of U_get_obs_f


Ignore:
Timestamp:
Feb 9, 2019, 12:29:29 PM (6 years ago)
Author:
lnerger
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • U_get_obs_f

    v1 v1  
     1= U_get_obs_f =
     2
     3The page document the user-supplied call-back routine `U_get_obs_f`.
     4
     5The routine `U_get_obs_f` is a call-back routine that has to be provided by the user. In the simplified interface the predefined name of the routine is `get_obs_f_pdaf`, but in the full interface, the user can choose the name of the routine.
     6This routine is used for generating synthetic observations with PDAF using [PDAF_generate_obs] or [PDAF_put_state_generate_obs].
     7The routine is called after PDAF has generated the observation vector. Here, PDAF provides the vector of synthetic observations to the user so that they can be stored, e.g. in a file.
     8
     9The interface is the following:
     10{{{
     11SUBROUTINE U_get_obs_f(step, dim_obs_f, observation_f)
     12}}}
     13with
     14 * `step` : `integer, intent(in)`[[BR]] Current time step
     15 * `dim_obs_f` : `integer, intent(in)`[[BR]] Size of the full observation vector
     16 * `observation_f` : `real, intent(out), dimension(dim_obs_f)`[[BR]] Full vector of synthetic observations (process-local)
     17
     18Hints:
     19 * For the generation of synthetic observations, PDAF does not distinguish between local and global filters. Without parallelization, the full observation vector would be the same for both types of filters. With parallelization the implementation of the observation operator used for generating the observations will define whether different process-domain have the same or distinct observation vectors (i.e. covering the global domain or different process-specific domains).
     20 * The usual operation performed in this routine is to write the generated synthetic observation into a file. The PDAF package provides the template routine [readwrite_obs readwrite_obs] for this. Depending on the parallelization, discussed above, one either writes a single file (of the full observation vector is the same for all processes. In this case one a single process calls the writing routine) or a different file for each process (in this case, each process call the routine with a different file name; usually indicating the process-rank number).