Checking Error Status of PDAF-OMI
PDAF-OMI Guide
- Overview
- callback_obs_pdafomi.F90
- Observation Modules
- Observation Operators
- Checking error status
- Debugging functionality
- Implementing the analysis step with OMI
- Using nondiagonal R-matrices
- Porting an existing implemention to OMI
- Additional OMI Functionality
PDAF-OMI performs several consistency checks. If they fail, PDAF-OMI will print an error message, but the program is not stopped. Starting from PDAF V2.2 there OMI has an error status flag that can be checked from the user code. If an error occured, one can stop the program on the user side.
The error flag can be checked by calling the routine PDAFomi_check_error
, which was introduced with PDAF version 2.2. The routine is documented below. It returns the value of the PDAF-OMI error flag. Since PDAF-OMI executes internal routines in which errors could occur due to an inconsistent configuration of the observations, a direct returning an error flag as a subroutine argument is not always possible. For this reasion there is this separate routine to check for the error flag.
A useful place to insert this routine for error-checking are the routines in callback_obs_pdafomi.F90.
The interface is:
SUBROUTINE PDAFomi_check_error(ierror) INTEGER, INTENT(in) :: ierror ! Value of PDAF-OMI error flag ! (0): no error ! (>0): an error occured - check screen outputs
Notes:
- The routine is provied through the module 'PDAFomi'. Thus one has to use-include the routine by
USE PDAFomi, only: PDAFomi_set_debug_flag
- The errors that are checked by PDAF-OMI relate to the configuration of the obserations, e.g. it is checked whether some dimensions are consistent.
- If an error occurred PDAF-OMI also prints an error message, but it does not stop the program.