Changes between Version 22 and Version 23 of OfflineImplementationGuide


Ignore:
Timestamp:
May 19, 2025, 5:23:07 PM (13 days ago)
Author:
lnerger
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • OfflineImplementationGuide

    v22 v23  
    3434An example of the implementation is given in the tutorial provided with PDAF  in `tutorial/offline_2D_serial` (or `tutorial/offline 2D_parallel` for a parallelized case). These examples base on the template code at `templates/offline`. Several subroutines that contain specific operations for the model and observations are called by PDAF through its defined interface as call-back routines. These subroutines need to be implemented by the user. The operations in all these subroutines are rather elementary like filling the array of the ensemble of model states from model output files and the initialization of the vector of observations. The tutorial code includes examples for these routines for a simple case.
    3535
    36 We recommend to base your own implementation on the tutorial example or the template by adding to or adapting the functionality, adding reading and writing routines for model files.
     36We recommend to base your own implementation on the tutorial example or the template by adding to or adapting the functionality, and adding reading and writing routines for model files.
    3737
    3838Figure 1 provides an overview of the call structure of the offline code.
     
    4444* **column 1 'User code'**: The main program calls the three routines shown in this column. These are interface routines, which define variables for PDAF and then call core-subroutines of PDAF
    4545* **column 2 'PDAF'**: These are the PDAF core routines which are called by the routines in column 1 to the left.
    46 * **column 3 'Call-back routines'**: This column shows the call-back routines, which are called by the PDAF routines in column 2 to the left. The routines in the purple box `callback_obs_pdafomi.F90` are the subroutines that handle observations. The three red routines are used only for localized ensemble filters.
     46* **column 3 'Call-back routines'**: This column shows the call-back routines, which are called by the PDAF routines in column 2 to the left. The routines in the purple box `callback_obs_pdafomi.F90` are the subroutines that handle observations. The 3 routines in red are used only for localized ensemble filters.
    4747* **column 4 'OMI observation modules'**: This column shows observation modules that are used for the specific handling of each observation type. This handling is arranged by the PDAF Observation Module Interface (OMI). The observation-related call-back routines in column 3 to the left call routines in each of the observation modules.
    4848* **column 5 'PDAF'**: Some of the call-back routines and the routines in the observation modules call PDAF core routines, e.g. for diagnostics, localization, and to intialize OMI.