Changes between Version 8 and Version 9 of ImplementAnalysisLocal_untilPDAF221


Ignore:
Timestamp:
Jun 10, 2025, 2:53:12 PM (16 months ago)
Author:
lnerger
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • ImplementAnalysisLocal_untilPDAF221

    v8 v9  
    3636== Overview ==
    3737
    38 || This page describes the implementation approach of PDAF2. This is intended for reference for existing implemenations performed for PDAF2. See the [wiki:ImplementationofAnalysisStep_PDAF3 page on implementing the analysis step with PDAF3] for the updated recommendations. ||
    39 
    40 This documentation describes the implementation with OMI as it was standard since the introduction of PDAF-OMI in PDAF version 1.16 and until and including PDAF version 2.2.1. With PDAF 2.3 we introduced the [wiki:PDAFlocal_overview PDAFlocal interface], which simplifies the implemenation of the local analysis. This approach is described on the page on the [wiki:ImplementAnalysisLocal Implementation for Local Filters with PDAF-OMI].
     38|| This page describes the implementation approach of PDAF2. This is intended for reference for existing implementations performed for PDAF2. See the [wiki:ImplementationofAnalysisStep_PDAF3 page on implementing the analysis step with PDAF3] for the updated recommendations. ||
     39
     40This documentation describes the implementation with OMI as it was standard since the introduction of PDAF-OMI in PDAF version 1.16 and until and including PDAF version 2.2.1. With PDAF 2.3 we introduced the [wiki:PDAFlocal_overview PDAFlocal interface], which simplifies the implemenation of the local analysis. This approach is described on the page on the [wiki:ImplementAnalysisLocal_PDAF23 Implementation for Local Filters with PDAF-OMI].
    4141
    4242PDAF-OMI provides generic routines for the analysis step, which only distinguish global and local filters. This page describes the implementation of the analysis step for domain-local filters (LESTKF, LETKF, LNETF, LSEIK).
    … …  
    4949== `PDAFomi_assimilate_local` ==
    5050
    51 The general aspects of the filter-specific routines `PDAF_assimilate_*` have been described on the page [ModifyModelforEnsembleIntegration Modification of the model code for the ensemble integration] and its sub-page on [InsertAnalysisStep inserting the analysis step].  The routine is used in the fully-parallel implementation variant of the data assimilation system. When the 'flexible' implementation variant is used, the routines `PDAF_put_state_*' is used as described further below.
     51The general aspects of the filter-specific routines `PDAF_assimilate_*` have been described on the page [wiki:ModifyModelforEnsembleIntegration_PDAF23 Modification of the model code for the ensemble integration] and its sub-page on [wiki:InsertAnalysisStep_PDAF23 inserting the analysis step].  The routine is used in the fully-parallel implementation variant of the data assimilation system. When the 'flexible' implementation variant is used, the routines `PDAF_put_state_*' is used as described further below.
    5252
    5353The interface for the routine `PDAFomi_assimilate_local` contains names for routines that operate on the local analysis domains (marked by the suffix `_l`). Further there are routines that convert between a local and a global model state vector (`U_g2l_state` and `U_l2g_state`).
    … …  
    8383== `PDAFomi_put_state_local` ==
    8484
    85 When the 'flexible' implementation variant is chosen for the assimilation system, the routine `PDAFomi_put_state_local` has to be used instead of `PDAFomi_assimilate_local`. The general aspects of the filter specific routines `PDAF_put_state_*` have been described on the page [ModifyModelforEnsembleIntegration Modification of the model code for the ensemble integration]. The interface of the routine is identical with that of `PDAFomi_assimilate_local` with the exception the specification of the user-supplied routines `U_distribute_state` and `U_next_observation` are missing.
     85When the 'flexible' implementation variant is chosen for the assimilation system, the routine `PDAFomi_put_state_local` has to be used instead of `PDAFomi_assimilate_local`. The general aspects of the filter specific routines `PDAF_put_state_*` have been described on the page [wiki:ModifyModelforEnsembleIntegration_PDAF23 Modification of the model code for the ensemble integration]. The interface of the routine is identical with that of `PDAFomi_assimilate_local` with the exception the specification of the user-supplied routines `U_distribute_state` and `U_next_observation` are missing.
    8686
    8787The interface when using one of the local filters is the following:
    … …  
    9696== User-supplied routines ==
    9797
    98 Here, all user-supplied routines are described that are required in the call to `PDAFomi_assimilate_local` or `PDAFomi_put_state_local`. For some of the generic routines, we link to the page on [ModifyModelforEnsembleIntegration modifying the model code for the ensemble integration].
     98Here, all user-supplied routines are described that are required in the call to `PDAFomi_assimilate_local` or `PDAFomi_put_state_local`. For some of the generic routines, we link to the page on [wiki:ModifyModelforEnsembleIntegration-PDAF23 modifying the model code for the ensemble integration].
    9999
    100100To indicate user-supplied routines we use the prefix `U_`. In the tutorials in `tutorial/` and in the template directory `templates/` these routines exist without the prefix, but with the extension `_pdaf`. The files are named correspondingly. The user-routines relating to OMI are collected in the file callback_obs_pdafomi.F90. In the section titles below we provide the name of the template file in parentheses.
    … …  
    107107This routine is independent of the filter algorithm used.
    108108
    109 See the page on [InsertAnalysisStep#U_collect_statecollect_state_pdaf.F90 inserting the analysis step] for the description of this routine.
     109See the page on [wiki:InsertAnalysisStep_PDAF23#U_collect_statecollect_state_pdaf.F90 inserting the analysis step] for the description of this routine.
    110110
    111111
    … …  
    114114This routine is independent of the filter algorithm used.
    115115
    116 See the page on [InsertAnalysisStep#U_distribute_statedistribute_state_pdaf.F90 inserting the analysis step] for the description of this routine.
     116See the page on [wiki:InsertAnalysisStep_PDAF23#U_distribute_statedistribute_state_pdaf.F90 inserting the analysis step] for the description of this routine.
    117117
    118118
    … …  
    121121This is a call-back routine for PDAF-OMI initializing the observation information. The routine just calls a routine from the observation module for each observation type.
    122122
    123 See the [wiki:OMI_Callback_obs_pdafomi documentation on callback_obs_pdafomi.F90] for more information.
     123See the [wiki:OMI_Callback_obs_pdafomi_PDAF23 documentation on callback_obs_pdafomi.F90] for more information.
    124124
    125125
    … …  
    129129This is a call-back routine for PDAF-OMI applying the observation operator to the state vector. The routine calls a routine from the observation module for each observation type.
    130130
    131 See the [wiki:OMI_Callback_obs_pdafomi documentation on callback_obs_pdafomi.F90] for more information.
     131See the [wiki:OMI_Callback_obs_pdafomi_PDAF23 documentation on callback_obs_pdafomi.F90] for more information.
    132132
    133133
    … …  
    136136The routine has already been described for modifying the model for the ensemble integration and for inserting the analysis step.
    137137
    138 See the page on [InsertAnalysisStep#U_prepoststepprepoststep_ens_pdaf.F90 inserting the analysis step] for the description of this routine.
     138See the page on [wiki:InsertAnalysisStep_PDAF23#U_prepoststepprepoststep_ens_pdaf.F90 inserting the analysis step] for the description of this routine.
    139139
    140140
    … …  
    188188This is a call-back routine for PDAF-OMI that initializes the local observation vector. The routine calls a routine from the observation module for each observation type.
    189189
    190 See the [wiki:OMI_Callback_obs_pdafomi documentation on callback_obs_pdafomi.F90] for more information.
     190See the [wiki:OMI_Callback_obs_pdafomi_PDAF23 documentation on callback_obs_pdafomi.F90] for more information.
    191191
    192192
    … …  
    237237This routine is independent of the filter algorithm used.
    238238
    239 See the page on [InsertAnalysisStep#U_next_observationnext_observation_pdaf.F90 inserting the analysis step] for the description of this routine.
     239See the page on [wiki:InsertAnalysisStep_PDAF23#U_next_observationnext_observation_pdaf.F90 inserting the analysis step] for the description of this routine.
    240240
    241241