wiki:PDAFomi_gather_obs

PDAFomi_gather_obs

This page documents the routine PDAFomi_gather_obs of PDAF-OMI.

The routine has to be called in init_dim_obs_OBTYPE in each observation module. It initializes the observation information for PDAF-OMI.

See the page describing PDAF-OMI observation modules for the full documentation of OMI observation modules.

The interface is:

  SUBROUTINE PDAFomi_gather_obs(thisobs, dim_obs_p, obs_p, ivar_obs_p, ocoord_p, &
       ncoord, cradius, dim_obs)

    TYPE(obs_f), INTENT(inout) :: thisobs   ! Data type with full observation information
    INTEGER, INTENT(in) :: dim_obs_p        ! Number of process-local observations
    REAL, INTENT(in) :: obs_p(:)            ! Vector of process-local observations
    REAL, INTENT(in) :: ivar_obs_p(:)       ! Vector of process-local inverse observation error variance
    REAL, INTENT(in) :: ocoord_p(:,:)       ! Array of process-local observation coordinates
    INTEGER, INTENT(in) :: ncoord           ! Number of rows (first index) of coordinate array
    REAL, INTENT(in) :: cradius             ! Typical localization radius (the maximum radius used in this process domain) 
    INTEGER, INTENT(out) :: dim_obs         ! Full number of observations

Notes:

  • The only direect output is dim_obs, which is then returned to init_dim_obs_pdafomi in callback_obs_pdafomi.F90.
  • The value of cradius can be some maximum value. It is only utilized if domain-limited observations are activated (see page on using the option `use_global_obs`)
  • Also in case of non-isotropic localization cradius is a single value. It should be set of the largest radius in the horizontal direction used in the parallel process domain.
Last modified 10 months ago Last modified on Jun 4, 2024, 9:15:13 AM
Note: See TracWiki for help on using the wiki.