Version 23 (modified by lnerger, 10 years ago) (diff)


Welcome to the home of PDAF - the Parallel Data Assimilation Framework

PDAF is developed,
hosted and maintained at the
Computing Center of the Alfred Wegener Institute.
Added Implementation Guide with notes on specific routines for SEIK.
Release of Version 1.6.1 (release notes)

The Parallel Data Assimilation Framework - PDAF - is a software framework that simplifies the implementation of data assimilation systems using existing numerical models. Reducing the work required for the implementation will enable users to obtain a data assimilation system with less work. Thus, they can focus on applying data assimilation, rather than implementing it. PDAF provides a well-defined interface that separates the model from the assimilation routines. This allows to continue the development of the assimilation methods and the model independently. New developments on the algorithmic side can be readily made available through the interface such that they can be tested immediately with existing implementations.

PDAF provides fully implemented and optimized data assimilation algorithm. The Framework is optimized for the application with large-scale models that usually run on big parallel computers. However, it is also well suited for smaller models and even toy models.

PDAF simplifies the implementation of data assimilation systems using existing model code by the following:

  1. PDAF provides fully implemented, parallelized, and optimized ensemble-based algorithms for data assimilation. Currently, these are ensemble-based Kalman filters like the LSEIK, LETKF, and EnKF methods.
  2. PDAF is attached to the model source code by minimal changes to the code. These changes only concern the general part of the code, but not the numerics of the model. In addition, a small set of routines is required that are specific to the model or the observations to be assimilated. These routines can be implemented like routines of the model.
  3. PDAF is called through a well-defined standard interface. This allows, for example, to switch between the LSEIK and LETKF methods without additional coding.
  4. PDAF provides parallelization support for the data assimilation system. If your numerical model is already parallelized, PDAF enables the data assimilation system to run several model tasks in parallel within a single executable. However, PDAF can also be used without parallelization, for example to test small systems.
  5. PDAF does not require that your model can be called as a subroutine. Rather PDAF is added to the model and the formed data assimilation system can be executed pretty much like the model-program would without data assimilation.

PDAF is an open-source project. Thus, users are welcome to contribute to the further enhancement of PDAF, e.g. by contributing further assimilation methods or interface routines for different numerical models.

This Wiki contains a growing documentation for PDAF. We will also add a possibility to register and download PDAF.