Section: Software and Platforms

Data assimilation library: Verdandi

Participants : Vivien Mallet, Dominique Chapelle [M3DISIM] , Philippe Moireau [M3DISIM] , Anne Tilloy, Paul Baudin, Tristan Perotin.

The leading idea is to develop a data assimilation library intended to be generic, at least for high-dimensional systems. Data assimilation methods, developed and used by several teams at Inria, are generic enough to be coded independently of the system to which they are applied. Therefore these methods can be put together in a library aiming at:

  • making easier the application of methods to a great number of problems,

  • making the developments perennial and sharing them,

  • improving the broadcast of data assimilation works.

An object-oriented language (C++) has been chosen for the core of the library. A high-level interface to Python is automatically built. The design study raised many questions, related to high dimensional scientific computing, the limits of the object contents and their interfaces. The chosen object-oriented design is mainly based on three class hierarchies: the methods, the observation managers and the models. Several base facilities have also been included, for message exchanges between the objects, output saves, logging capabilities, computing with sparse matrices.

In 2013, version 1.5 was released with better consistency between the methods. Verdandi received improvements in its test cases. Increased flexibility was introduced in error descriptions, especially for uncertainty quantification.

A C++ interface to the Nucleus for European Modelling of the Ocean (see the web site NEMO http://www.nemo-ocean.eu/ ) has been developed so that it can be plugged to Verdandi. The interface currently enables the application of Monte Carlo simulations and the ensemble Kalman filter.