29 | | Generally, all three components are independent. In particular, the filters 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 models 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 define the relation of the state vector that is considered in the filter algorithms to the model fields. These relations are defined 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. |
| 29 | 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. |
34 | | 1. '''Online mode:''' [[BR]] The model code is extended by calls to PDAF core routines. A single executable is compiled. While running this single executable the necessary ensemble integrations and the actual assimilation are performed. |
35 | | 1. '''Offline mode:''' [[BR]] The model is executed separately from the assimilation/filter 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. |
36 | | PDAF supports both the online and offline modes. Generally, we recommend to use the online mode because it is more efficient on parallel computers. However, the required coding is simpler for the offline than the online mode. |
| 34 | 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. |
| 35 | 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. |
| 36 | |
| 37 | 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. |