= PDAFomi_diag_get_obs = This page documents the routine `PDAFomi_diag_get_obs` of PDAF, which was introduced with PDAF V3.0. This is part of the [wiki:PDAFomi_observation_diagnostics PDAF-OMI observation diagnostics module]. The routine returns a pointer to a vector of observations of the specified observation type (`id_obs`) and a pointer to the corresponding array of observation coordinates. Usually all PDAFomi_diag routines are called in `prepoststep_pdaf` where the observation information can be retrieved and analyzed. The interface is: {{{ SUBROUTINE PDAFomi_diag_get_obs(id_obs, dim_obs_p_diag, ncoord, obs_p_ptr, ocoord_p_ptr) INTEGER, INTENT(in) :: id_obs ! Index of observation type to return INTEGER, INTENT(out) :: dim_obs_p_diag ! Observation dimension INTEGER, INTENT(out) :: ncoord ! Number of observation dimensions REAL, POINTER, INTENT(out) :: obs_p_ptr(:) ! Pointer to observation vector REAL, POINTER, INTENT(out) :: ocoord_p_ptr(:,:) ! Pointer to coordinate array ! (index order as in observation modules) }}} **Notes:** * In case of a parallelized model, the vector `obs_p_prt` and the array `ocoord_p_prt` contain the values for the process-sub-domain of the calling processor. * In Fortran user code the pointer to the observation vector should be declared in the form[[BR]] `REAL, POINTER :: obs_p_ptr(:)`[[BR]] It does not need to be allocated. The target vector has the length `dim_obs_p_diag`. * In Fortran user code the pointer to the observation coordinates should be declared in the form[[BR]] `REAL, POINTER :: ocoord_p_ptr(:,:)`[[BR]] It does not need to be allocated. The target array has the size `(ncoord, dim_obs_p_diag)`. * If the observation diagnostics have not been activated by using [wiki:PDAFomi_set_obs_diag] the pointers will not be set and `dim_obs_p_diag=0` and `ncoord=0` will be returned. These values can be checked before assessing the pointer arrays * The array `ocoord_p_ptr(:,:)` is organized as in the observation modules: * First index: index of different coordinate directions for observation specified by the second index * Second index: index of the observation