6 | | <h4>Implementation Guide</h4> |
7 | | <ol><li><a href="ImplementationGuide">Main page</a></li> |
8 | | <li><a href="AdaptParallelization">Adaptation of the parallelization</a></li> |
9 | | <li><a href="InitPdaf">Initialization of PDAF</a></li> |
10 | | <li><a href="ModifyModelforEnsembleIntegration">Modifications for ensemble integration</a></li> |
11 | | <li><a href="OMI_ImplementationofAnalysisStep">Implementation of the analysis step</a></li> |
| 6 | <h4>Implementation Guide - Analysis step</h4> |
| 7 | <ol><li><a href="ImplementAnalysisLocal">Implementation of the analysis step</a></li> |
17 | | <li><a href="ImplementAnalysisLocal_untilPDAF221">Implementation for Local Filters without PDAFlcoal</a></li> |
18 | | <li><a href="ImplementAnalysislenkfOmi">Implementation for LEnKF</a></li> |
19 | | </ol> |
20 | | <li> <a href="Implement3DVarAnalysisOverview"> General overview for 3D-Var methods</a></li> |
21 | | <ol> |
22 | | <li><a href="ImplementAnalysis_3DVar">Implementation for 3D-Var</a></li> |
23 | | <li><a href="ImplementAnalysis_3DEnVar">Implementation for 3D Ensemble Var</a></li> |
24 | | <li><a href="ImplementAnalysis_Hyb3DVar">Implementation for Hybrid 3D-Var</a></li> |
25 | | </ol> |
26 | | <li><a href="OMI_nondiagonal_observation_error_covariance_matrices">Using nondiagonal R-matrices</a></li> |
27 | | <li><a href="PDAF_OMI_Overview">PDAF-OMI Overview</a></li> |
28 | | </ol> |
29 | | <li><a href="AddingMemoryandTimingInformation">Memory and timing information</a></li> |
30 | | <li><a href="EnsembleGeneration">Ensemble Generation</a></li> |
31 | | <li><a href="DataAssimilationDiagnostics">Diagnostics</a></li> |
| 12 | </ol> |
| 13 | </ol> |
| 14 | </ol> |
45 | | For the analysis step of the local filters we need different operations related to the observations. These operations are requested by PDAF by call-back routines supplied by the user and provided in the OMI structure. The names of the routines that are provided by the user are specified in the call to the routine `PDAFomi_assimilate_local` in the fully-parallel implementation (or `PDAFomi_put_state_local` for the 'flexible' implementation) that was discussed before. With regard to the parallelization, all these routines (except `U_collect_state`, `U_distribute_state`, and `U_next_observation`) are executed by the filter processes (`filterpe=.true.`) only. |
46 | | |
47 | | For completeness we discuss here all user-supplied routines that are specified in the interface to `PDAFomi_assimilate_local`. Many of the routines are identical to those used for the global filters. Hence, when the user-supplied routines for the global filters have been already implemented, one can base on these routines to speed up the implementation. Due to this, it can also be reasonable to first fully implement a global filter version and subsequently implement the corresponding localized filter by modifying and extending the global routines. |
| 28 | For the analysis step of the local filters we need different operations related to the observations. These operations are requested by PDAF by call-back routines supplied by the user and provided in the OMI structure. The names of the routines that are provided by the user are specified in the call to the routine `PDAFlocalomi_assimilate` in the fully-parallel implementation (or `PDAFlocalomi_put_state` for the 'flexible' implementation) that was discussed before. With regard to the parallelization, all these routines (except `U_collect_state`, `U_distribute_state`, and `U_next_observation`) are executed by the filter processes (`filterpe=.true.`) only. |
| 29 | |
| 30 | For completeness we discuss here all user-supplied routines that are specified in the interface to `PDAFlocalomi_assimilate`. Many of the routines are identical to those used for the global filters. Hence, when the user-supplied routines for the global filters have been already implemented, one can base on these routines to speed up the implementation. Due to this, it can also be reasonable to first fully implement a global filter version and subsequently implement the corresponding localized filter by modifying and extending the global routines. |