Revision as of 16:03, 15 February 2014 by Jmb (Talk | contribs)
Jump to: navigation, search

DIVA (Data-Interpolating Variational Analysis) allows the spatial interpolation of data (analysis) in an optimal way, comparable to optimal interpolation (OI). In comparison to OI it takes into account coastlines, sub-basins and advection. Calculations are highly optimized and rely on a finite element resolution. Tools to generate the finite element mesh are provided as well as tools to optimize the parameters of the analysis. Quality control of data can be performed and error fields can be calculated. Also detrending of data is possible. Finally 3D and 4D extensions are included with emphasis on direct computations of climatologies from ODV spreadsheet files.

The DIVA development has received funding from the European Union Sixth Framework Programme (FP6/2002-2006) under grant agreement n° 026212, SeaDataNet, Seventh Framework Programme (FP7/2007-2013) under grant agreement n° 283607, SeaDataNet SeaDataNet II, and project EMODNet (MARE/2008/03 - Lot 3 Chemistry - SI2.531432) from the Directorate-General for Maritime Affairs and Fisheries.


In a few words

Diva is a software developed for gridding in situ data.

It uses a finite-element method to solve a variational principle which takes into account

  1. the distance between analysis and data (observation constraint),
  2. the regularity of the analysis (smoothness constraint),
  3. physical laws (behaviour constraint).

The advantage of the method over classic interpolation methods is multiple:

  • the coastline are taken into account during the analysis, since the variational principle is solved only in the region covered by the sea. This prevents the information from traveling across boundaries (e.g., peninsula, islands, etc) and then produce artificial mixing between water masses.
  • the numerical cost is not dependent on the number of data, but on the number of degrees of freedom, itself related to the size of the finite-element mesh.
In situ measurement and gridded field obtained using September temperature at 50 m in the Canary Island area.

How to get the code?

Diva is copyright © 2006-2013 by the GHER group and is distributed under the terms of the GNU General Public License (GPLv3 or later) http://www.gnu.org/copyleft/gpl.html or EUPL1.1 (or later) https://joinup.ec.europa.eu/software/page/eupl left as a choice to the user.

The binaries for various O.S. are also provided:
Mac O.S.: binaries_macOS_4.6.2.zip
(thanks to F. Laenen, Observatoire de la Côte d'Azur, France)
Linux Mint 14 Nadia (Debian, x86_64): binaries_Linux64_4.6.2.zip

The code runs preferentially with Linux operating systems, but can also be used under Windows, provided a unix-like environment is installed (Cygwin, Msys, ...)

The binary sources can be provided for several platforms, but if the code has to be re-compiled, then a Fortran compiler (gfortran, ifort, pgi) is needed, along with the NetCDF library if this format is to be used for the outputs.

We also recommend you to register on the Diva Users Group

Diva_installation: for more details about the installation.

The manual and documentation are available here.

A simple matlab interface for basic operations is available divaformatlab.zip

How to try DIVA without installing ?

If you are familiar with Ocean Data View (ODV) you can access DIVA gridding when plotting vertical or horizontal sections as the other 25000 scientists using ODV.

You can also use basic DIVA features in a web application Diva on Web if you have your data ready in a simple three-column ascii file or ODV ascii spreadsheet format.

If you are familiar with Matlab, some basic interface is provided here: divaformatlab.zip

User workshops

Since 2006, we organize a workshop for the users, principally members of the region groups responsible for the climatology production in SeaDataNet. During these workshop, several experts are present to help newcomers, but also latest developments are presented for advanced users. Generally a wish-list from users is established at the end of the workshop. Please contact us if you are interested in attending.

The method

In oceanography, a typical concern consists in determining a field on a regular grid of positions r knowing N;d data in locations rj, j=1,..., Nd. This is called the gridding problem and is useful for many applications such as data analysis, graphical display, forcing or initialization of a model.

It is designed to solve 2-D differential or variational problems of elliptic type with a finite element method. Its end is to obtain a gridded field from the knowledge of sparse data points.

You can discover more details about the method here: DIVA_method

Publications & documents

  • Related publications: a list of publications where Diva is described or employed to generate gridded fields.
  • Documents: user manuals, presentations and posters.
  • How to cite?

BibTeX entry:

author =  {Troupin, C. and Barth, A. and Sirjacobs, D. and Ouberdous, M. and 
Brankart, J.-M. and Brasseur, P. and Rixen, M. and Alvera-Azc\'{a}rate, A. and 
Belounis, M. and Capet, A. and Lenartz, F. and Toussaint, M.-E. and Beckers, J.-M.},
title = {Generation of analysis and consistent error fields using the Data
Interpolating Variational Analysis (Diva)},
journal = Ocean Modelling,
year = {2012},
volume = {52-53},
pages = {90-101},
doi = {10.1016/j.ocemod.2012.05.002},
url = {http://www.sciencedirect.com/science/article/pii/S1463500312000790 }
  • How to acknowledge?

The research leading to the last developments of \diva has received funding from the European Union Seventh Framework Programme (FP7/2007-2013) under grant agreement No. 283607, SeaDataNet 2, and from project EMODNET (MARE/2008/03 - Lot 3 Chemistry - SI2.531432) from the Directorate-General for Maritime Affairs and Fisheries.

Plotting tools


  • Some scripts in matlab for helping in the preparation of figures: Diva_matlab


Python is a object-oriented, free to use, programming language. It is directly available through the package manager of recent Linux distributions.

  • Some scripts in python for helping in the preparation of figures: Diva_python


DIVA has been used to prepare several regional climatologies.

The results can be found in Diva Products

Quality control of products

The issue of the quality of the products has been addressed by the EC. This page deals with the successive steps that have to be followed in order to ensure the quality of the products generated by the application of DIVA.

Quality control of products

Testing new versions

Every time a significant modification is made to the source code, a set of tests have to be performed to insure that no error was introduced. These tests will be described in the following page and only concern Diva developers or beta testers: Testing new versions

SVN commands for Diva

A list of commands used to manage the subversions of Diva, also only for developers or beta testers

SVN commands for Diva

Personal tools