Data assimilation with OpenDA · Data assimilation with OpenDA OpenDA course November 2012 Alja...

21
Data assimilation with OpenDA OpenDA course November 2012 Alja Vrieling, Nils van Velzen, Martin Verlaan, Stef Hummel, Julius Sumihar, Albrecht Weerts, Ghada El Serafy, Herman Gerritsen

Transcript of Data assimilation with OpenDA · Data assimilation with OpenDA OpenDA course November 2012 Alja...

Page 1: Data assimilation with OpenDA · Data assimilation with OpenDA OpenDA course November 2012 Alja Vrieling, Nils van Velzen, Martin Verlaan, Stef Hummel, Julius Sumihar, Albrecht Weerts,

Data assimilation with OpenDAOpenDA courseNovember 2012

Alja Vrieling, Nils van Velzen, Martin Verlaan, Stef Hummel,

Julius Sumihar, Albrecht Weerts, Ghada El Serafy, Herman Gerritsen

Page 2: Data assimilation with OpenDA · Data assimilation with OpenDA OpenDA course November 2012 Alja Vrieling, Nils van Velzen, Martin Verlaan, Stef Hummel, Julius Sumihar, Albrecht Weerts,

Outline

Data assimilation and model calibration in one sheetWhat is OpenDAOpenDA architectureCoupling models into OpenDAExample of CalibrationExample of Data assimilationOpenDA and Parallel computingSummary

2Data assimilation with OpenDA

Page 3: Data assimilation with OpenDA · Data assimilation with OpenDA OpenDA course November 2012 Alja Vrieling, Nils van Velzen, Martin Verlaan, Stef Hummel, Julius Sumihar, Albrecht Weerts,

Data assimilation and model calibrationin one sheet

• (real time) data assimilation

• model calibration

• impact of observations• reconstruction of sources

3Data assimilation with OpenDA

Page 4: Data assimilation with OpenDA · Data assimilation with OpenDA OpenDA course November 2012 Alja Vrieling, Nils van Velzen, Martin Verlaan, Stef Hummel, Julius Sumihar, Albrecht Weerts,

OpenDA Toolbox

Motivation:the algorithms are model/observation independent BUT• DA methods work on top of models serious changes to model code.• Spaghetti code• Difficult to change algorithm• Maintenance problems• Difficult to test algorithms• Difficult/impossible to reuse code• Expensive!

4Data assimilation with OpenDA

Page 5: Data assimilation with OpenDA · Data assimilation with OpenDA OpenDA course November 2012 Alja Vrieling, Nils van Velzen, Martin Verlaan, Stef Hummel, Julius Sumihar, Albrecht Weerts,

What is OpenDA

• Content:• Set of interfaces that define interactions between components• Library of data-assimilation algorithms• DA philosophy• Building blocks only need to

be implemented once

5Data assimilation with OpenDA

Page 6: Data assimilation with OpenDA · Data assimilation with OpenDA OpenDA course November 2012 Alja Vrieling, Nils van Velzen, Martin Verlaan, Stef Hummel, Julius Sumihar, Albrecht Weerts,

What is OpenDA

• Open source (LGPL)• Why OpenDA?

• More efficient than development for each application• Shared knowledge between applications• Development of algorithms with e.g. universities• Easier to test, which should result in fewer bugs• Optimized building blocks• Development template

6Data assimilation with OpenDA

Page 7: Data assimilation with OpenDA · Data assimilation with OpenDA OpenDA course November 2012 Alja Vrieling, Nils van Velzen, Martin Verlaan, Stef Hummel, Julius Sumihar, Albrecht Weerts,

OpenDA Website

7Data assimilation with OpenDA

• www.openda.org• Downloads

• Users• Developers

• Documentation• Wrappers for models• OpenDA association

Page 8: Data assimilation with OpenDA · Data assimilation with OpenDA OpenDA course November 2012 Alja Vrieling, Nils van Velzen, Martin Verlaan, Stef Hummel, Julius Sumihar, Albrecht Weerts,

OpenDA Main Application

8Data assimilation with OpenDA

Single program for• Editing input files• Running simulations and calibrations• All models and observation sources• GUI and command line• Sequential and parallel

Page 9: Data assimilation with OpenDA · Data assimilation with OpenDA OpenDA course November 2012 Alja Vrieling, Nils van Velzen, Martin Verlaan, Stef Hummel, Julius Sumihar, Albrecht Weerts,

OpenDA architectureObject Oriented Approach

9Data assimilation with OpenDA

Page 10: Data assimilation with OpenDA · Data assimilation with OpenDA OpenDA course November 2012 Alja Vrieling, Nils van Velzen, Martin Verlaan, Stef Hummel, Julius Sumihar, Albrecht Weerts,

Models in OpenDA

Formal form of a model

State of model instancex: state vector, u: forcings, p: parameters, w: stochastic partObject oriented concepts:

Data encapsulation; state cannot be directly changed only through the methods like:

GetState, AxpyonState, Compute...Multiple instances of modelAlgorithm has no knowledge on model internals

10Data assimilation with OpenDA

dxdt

= M ( x (t ) ,u (t ) , p ,w(t ))

x (t) , u (t ) , p , w(t)

Page 11: Data assimilation with OpenDA · Data assimilation with OpenDA OpenDA course November 2012 Alja Vrieling, Nils van Velzen, Martin Verlaan, Stef Hummel, Julius Sumihar, Albrecht Weerts,

Models in OpenDA

• Models in Data Assimilation context are stochastic!• Normal dynamic model (codes) are not

11Data assimilation with OpenDA

Page 12: Data assimilation with OpenDA · Data assimilation with OpenDA OpenDA course November 2012 Alja Vrieling, Nils van Velzen, Martin Verlaan, Stef Hummel, Julius Sumihar, Albrecht Weerts,

Models in OpenDA

• A model wrapper is needed for each model:• Black box• Java• C/Fortran• C#

• Testing OpenDA models• Java• Matlab• C#

12Data assimilation with OpenDA

Page 13: Data assimilation with OpenDA · Data assimilation with OpenDA OpenDA course November 2012 Alja Vrieling, Nils van Velzen, Martin Verlaan, Stef Hummel, Julius Sumihar, Albrecht Weerts,

Models in OpenDA

13Data assimilation with OpenDA

OpenDA

MyStochModel MyWrapper

TheirModel.exe

MyStochModel

Black Box wrapperOpe

nDA

OpenDABridge

java

C/Fortran

other

own

3rdpa

rty

MyModel MyModel

Page 14: Data assimilation with OpenDA · Data assimilation with OpenDA OpenDA course November 2012 Alja Vrieling, Nils van Velzen, Martin Verlaan, Stef Hummel, Julius Sumihar, Albrecht Weerts,

Models in OpenDA

14Data assimilation with OpenDA

OpenDA

Black Box wrapperOpe

nDA

java

C#

own

3rdpa

rty

MyModel

OpenDA

Black Box wrapper OpenMI Wrapper

OpenMI Model

Generate

Page 15: Data assimilation with OpenDA · Data assimilation with OpenDA OpenDA course November 2012 Alja Vrieling, Nils van Velzen, Martin Verlaan, Stef Hummel, Julius Sumihar, Albrecht Weerts,

Example of model calibrationSWAN 3rd generation wave model

15Data assimilation with OpenDA

Wave breaking and interaction over a bar

0.4

0.3

0.2

0.1

0

0.5m

X

Z0

1:20

10

1:10

20 30m

WAVES

STATIONS01 02 0403 0705 06 08

totS =wind input+ non-linear interactions (quadruplets & triads)+whitecapping + bottom friction+ depth induced wave breaking

Page 16: Data assimilation with OpenDA · Data assimilation with OpenDA OpenDA course November 2012 Alja Vrieling, Nils van Velzen, Martin Verlaan, Stef Hummel, Julius Sumihar, Albrecht Weerts,

Example of model calibrationSWAN 3rd generation wave model

16Data assimilation with OpenDA

Page 17: Data assimilation with OpenDA · Data assimilation with OpenDA OpenDA course November 2012 Alja Vrieling, Nils van Velzen, Martin Verlaan, Stef Hummel, Julius Sumihar, Albrecht Weerts,

Example of model calibrationSWAN 3rd generation wave model

17Data assimilation with OpenDA

Page 18: Data assimilation with OpenDA · Data assimilation with OpenDA OpenDA course November 2012 Alja Vrieling, Nils van Velzen, Martin Verlaan, Stef Hummel, Julius Sumihar, Albrecht Weerts,

Example of data assimilationOperational storm surge forecasting

18Data assimilation with OpenDA

Page 19: Data assimilation with OpenDA · Data assimilation with OpenDA OpenDA course November 2012 Alja Vrieling, Nils van Velzen, Martin Verlaan, Stef Hummel, Julius Sumihar, Albrecht Weerts,

Example of data assimilationOperational storm surge forecasting

19Data assimilation with OpenDA

Page 20: Data assimilation with OpenDA · Data assimilation with OpenDA OpenDA course November 2012 Alja Vrieling, Nils van Velzen, Martin Verlaan, Stef Hummel, Julius Sumihar, Albrecht Weerts,

OpenDA and Parallel Computing

• Model evaluation is often the most time consuming part (90-99%)• Often natural parallelism in the model timestepping• Parallel time stepping for all native OpenDA models (OO)

20Data assimilation with OpenDA

Page 21: Data assimilation with OpenDA · Data assimilation with OpenDA OpenDA course November 2012 Alja Vrieling, Nils van Velzen, Martin Verlaan, Stef Hummel, Julius Sumihar, Albrecht Weerts,

Summary

• OpenDA: Data assimilation toolbox for Data assimilation/calibration.• Object oriented design allows easy exchange of building blocks.• End users do not need to do any programming for experimenting.• Various ways for adjusting (your) model for use in OpenDA.• Conceptual support for all kinds of parallel computing.

21Data assimilation with OpenDA