Efficient data assimilation with OpenDAModule 1:
An introduction
14-03-12
Nils van Velzen, Martin Verlaan, Stef Hummel, Julius Sumihar, Alja Vrieling, Albrecht Weerts, Ghada El Serafy, Herman Gerritsen
Outline
Data assimilation and calibration in one sheet
What is OpenDA
OpenDA architecture
Coupling models into OpenDA
Example of Calibration
Example of Data assimilation
OpenDA and Parallel computing
Summary
14-03-12 2Efficient data assimilation with OpenDA
Data assimilation and Model calibration in one sheet
• A generic toolbox for data-assimilation
– (real time) data assimilation
– model calibration
– impact of observations
– reconstruction of sources
14-03-12 3Efficient data assimilation with OpenDA
What is OpenDA
• Motivation for a toolbox:
– 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 reusecode
– Expensive!
14-03-12 4Efficient data assimilation with OpenDA
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
14-03-12 5Efficient data assimilation with OpenDA
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
14-03-12 6Efficient data assimilation with OpenDA
OpenDA Website
14-03-12 7Efficient data assimilation with OpenDA
• www.openda.org• Downloads
– Users
– Developers
• Documentation
• Wrappers for models
• OpenDA association
OpenDA Main Application
14-03-12 8Efficient data 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
Coupling models into OpenDA
Formal form of a model
State of model instance
Object oriented concepts:
Data encapsulation; state cannot be directly changed only through the methods like:
GetState, AxpyState, Compute...
Multiple instances of model
Algorithm has no knowledge on model internals
14-03-12 10Efficient data assimilation with OpenDA
dxdt
=M (x(t ) , u(t) , p ,w(t ))
x (t) ,u (t) , p ,w(t)
Coupling models into OpenDA
• A model wrapper is needed for each model:
– Blackbox
– Native:
• Simple, only a few functions
• Full, the (whole) interface
• parallel
– Java
• Simple java models for testing and research
• Direct implementation of java interface
14-03-12 11Efficient data assimilation with OpenDA
Coupling models into OpenDA
• Models in Data assimilation context are stochastic!
• Normal dynamic model (codes) are not
14-03-12 12Efficient data assimilation with OpenDA
OpenDA InterfaceBlack Box Wrapper
• Uses input and output files of the model
• No source code of the model is needed
• Well suited for calibration
• Sometimes suited for Data Assimilation
14-03-12 13Efficient data assimilation with OpenDA
OpenDA InterfaceNative Wrapping
• Implement a specified set of functions (C/Fortran)
• Create a dynamic library
14-03-12 14Efficient data assimilation with OpenDA
Example of model calibration SWAN 3rd generation wave model
14-03-12 15Efficient data 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
Example of model calibration
SWAN 3rd generation wave model
14-03-12 16Efficient data assimilation with OpenDA
Example of model calibrationSWAN 3rd generation wave model
14-03-12 17Efficient data assimilation with OpenDA
Example of data assimilationOperational storm surge forecasting
14-03-12 18Efficient data assimilation with OpenDA
Example of data assimilationOperational storm surge forecasting
14-03-12 19Efficient data assimilation with OpenDA
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)
14-03-12 20Efficient data assimilation with OpenDA
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.
14-03-12 21Efficient data assimilation with OpenDA
Top Related