Changes between Version 24 and Version 25 of GeneralImplementationConcept


Ignore:
Timestamp:
May 17, 2025, 10:37:56 AM (24 hours ago)
Author:
lnerger
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • GeneralImplementationConcept

    v24 v25  
    1818
    1919Data assimilation requires 3 components. These are
    20  * **Model**:[[BR]] The numerical model provides the initialization and integration of all model fields. It defines the dynamics of the system that is simulated.
    21  * **Observations**:[[BR]] The observations of the system provide additional information.
    22  * **Assimilation method**:[[BR]] The assimilation method combines the model and observational information.
     20 * **Model**:[[BR]] The numerical model provides the initialization and integration of all model fields. It defines the dynamics of the system that is simulated. This provides the first source of information on the system.
     21 * **Observations**:[[BR]] The observations of the system provide the second source of information.
     22 * **Assimilation method**:[[BR]] The assimilation method combines the information from the model and observations.
    2323
    2424Figure 1 shows how these components are combined by PDAF.
     
    2828
    2929
    30 Generally, all three components are independent. In particular, the assimilation methods are implemented in the core part of PDAF. To combine the model and observational information one has to define the relation of the observations to the model fields (For example, model fields might be directly observed or the observed quantities are more complex functions of the model fields. In addition, the observations might be at different locations than the model grid points so that interpolation is required.) In addition one has to fill the state vector that is using in the DA methods with the model fields and write the analysis state vector back to the model fields. These relations and operations are implemented in separate routines that are supplied to the assimilation system by the user. These routines are called through a well-defined standard interface. To ease the implementation complexity, these user-defined routines can be implemented like routines of the model code. Thus, if a user has experience with the model, it should be rather easy to extend it by the routines required for the assimilation system.
     30PDAF combines these three components, which are otherwise independent.
     31* The **model** is provided by the user. It computes the time evolution of the model fields. For the data assimilation, it provides information on the model state fields, the time, and the model grid to the other components.
     32* The **assimilation methods** (DA methods) are implemented in the core part of PDAF. They obtain information from the model and the observations and operate on abstract state vectors. For this, one has to fill and ensemble of state vectors with the values of the model fields. After the assimilation update, the analysis state vector is written back to the model fields. This functionality is implemented in separate routines that are supplied to the assimilation system by the user. The DA methods also interacts with the observations, providing the state vectors to the observation operator and obtaining observed model state vectors.
     33* Information on **observations** (observation values, their coordinates and error estimates) have to be read from files. Further, one has to define the observation operator, which computes the model equivalent to the observations. PDAF-OMI provides a structured way for the handling of observations and to provide PDAF with the required information.
     34
     35Both, the subroutines of PDAF and the user-provided subroutines are called through a well-defined standard interface. To ease the implementation complexity, the user-defined routines can be implemented like routines of the model code. Thus, if a user has experience with the model, it should be rather easy to extend it by the routines required for the assimilation system.
    3136
    3237== Online and offline assimilation systems ==
    3338
    3439There are two possibilities to build a data assimilation system
    35  1. '''Online mode:''' [[BR]] In this case, the model code is extended by calls to PDAF core routines. A single program is compiled. While running this single program, the necessary ensemble integrations and the actual assimilation are performed and the information transfer between the model and the data assimilation functions are performed in memory.
    36  1. '''Offline mode:''' [[BR]] The model is executed separately from the assimilation program. Output files from the model are used as inputs for the assimilation program, which writes restart files for the model after computing the analysis step.
     40 1. '''Online mode:''' [[BR]] In the online mode, calls to subroutines for the data assimilation are inserted into the model code. Thesse routines call the PDAF core routines. A single data-assimilative model program is compiled. While running this single program, the necessary ensemble integrations and the actual assimilation are performed. The information transfer between the model and the data assimilation functions are performed in memory.
     41 1. '''Offline mode:''' [[BR]] In the offline mode, the model is executed separately from the assimilation program. The model write restart files, which are used as inputs for the assimilation program. After computing the analysis step with the DA method, the assimilation program writes new restart files for the model, which is then started to compute the next forecast phase. In Figure 1, the model on the bottom left side is replaced by the reading and writing of files.
    3742
    38 PDAF supports both the online and offline modes. The online mode is usually more efficient on parallel computers, since less files have to be written to disks and the model does not need to be restarted after the analysis step. However, the required coding is simpler for the offline than the online mode, since no modification to the model source code is necessary.
     43PDAF supports both the online and offline modes. The online mode is usually more efficient on parallel computers, since less files have to be written to disks and the model does not need to be restarted after the analysis step. However, the required programming is simpler for the offline more than the online mode, since no modification to the model source code is necessary.
    3944
    4045The better efficiency of the online mode of the data assimilation system is caused by several factors:
    41  * The initialization phase of the model program is executed only once
    42  * The output files are limited to the necessary outputs for the estimated forecast and analysis states and/or ensembles. In contrast for the offline mode restart files have to be written and read for each forecast/assimilation cycle.
    43  * The assimilation system for the online mode can make efficient use of a large number of processors by executing a single program containing the full assimilation system. In contrast, in the offline mode, separate programs for the forecasts and the assimilation have to be run, each of these use typically less processors.
     46 * The initialization phase of the model program is executed only once.
     47 * The output files are limited to the necessary outputs for the estimated forecast and analysis states and/or ensembles. In contrast, for the offline mode restart files have to be written and read for each forecast/assimilation cycle and also the model is stopped and restarted
     48 * The assimilation system for the online mode can make efficient use of a large number of processors by executing a single program containing the full assimilation system. In contrast, in the offline mode, separate programs for the forecasts and the assimilation have to be run, each of these use typically a smaller number of processors.
    4449
    45 Generally the user-provided code for the analysis step is very similar for the online and offline modes. The difference is mainly that in the online mode, one can access model fields and model grid information from the model source code (usually Fortran modules, if the model is programmed in Fortran) while in the offline mode one need to read the model fields and grid information from files. Oen can implement this in a way that for the offline mode mainly there reading routines are used in the initialization phase, while all other subroutines remain independent on how the model fields and gird information are obtained.
     50Generally the user-provided program code for the analysis step is very similar for the online and offline modes. The difference is mainly that in the online mode, one can access model fields and model grid information from the model source code (if the model is programmed in Fortran, the information is usually accessible via Fortran modules) while in the offline mode one needs to read the model fields and grid information from files. One can implement these reading operations in a way that for the offline mode the reading routines are used in the initialization phase, while all other subroutines remain independent on how the model fields and gird information are obtained.
    4651
    47 The implementation concepts of the online and offline modes of PDAF are described on separate pages:
     52The implementation concepts of the online and offline modes of PDAF are further described on separate pages:
    4853 * [ImplementationConceptOnline Online mode: Attaching PDAF to a model]
    4954 * [ImplementationConceptOffline Offline mode: Separating model integrations and the assimilation step]