How to use DART in your lectures or demonstrations.
The DART tutorial outlines a step-by-step approach to the concepts of ensemble data assimilation. DART-LAB is a set of Matlab® scripts and functions that require no additional datasets or observations. DART-LAB ....
Learning Data Assimilation with DART.
The DART tutorial outlines a step-by-step approach to the concepts of ensemble data assimilation. DART-LAB is a set of Matlab® scripts and functions that require no additional datasets or observations. DART-LAB ....
Use DART to run a 'perfect model' experiment.
Once a model is compatible with the DART facility, all of the
functionality of DART is available. This includes 'perfect model'
experiments (also called Observing System Simulation Experiments - OSSEs).
Essentially, the model is run forward from a known state and, at predefined times,
an observation forward operator is applied to the model state to harvest
synthetic observations. This model trajectory is known as the 'true state'.
The synthetic observations are then used in an
assimilation experiment. The assimilation performance can then be evaluated
precisely because the true state (of the model) is known.
There are a set of Matlab® functions to help explore the assimilation
performance in state-space as well as in observation-space.
Our For a little more information on OSSE's, go to our
Getting Started section on OSSE's
Running low-order models in DART.
The low-order models (Lorenz '63, '96, etc.) are a great place to start learning about data assimilation. These dynamical models were created as simple analogues to chaotic systems. Once you get comfortable running and exploring assimilations with the low-order models, you are well on your way to understanding assimilations with high-order (more realistic) models.
Running high-order (large) models in DART.
Some high-order models are already supported within DART, allowing one to leverage the knowledge gained from running the low-order models. The diagnostic routines, input mechanisms, etc., are as consistent as possible across the models.
You can add your own model to DART.
DART is designed to make it easy to perform data assimilation
with your own model with no changes to your model. DART doesn't
care what language your model was written with, nor does it need
to be MPI-aware to take advantage of multi-core machines.
Advancing each ensemble member is fundamentally an
'embarrassingly parallel' operation.
A Fortran90 module of mandatory interface routines needs to be written.
This model module fundamentally informs DART of the layout of the state
variables, necessary to use the DART stable of observation operators
and for the application of localization. In some cases, additional routines
are required to pack and unpack the model output and the DART output.
You can add support for new observations.
New observation types can be supported by simply writing a forward
Use DART to explore new assimilation algorithms.
The DART source code is freely distributed and may be modified and extended. The coding footprint of the existing algorithms is pretty compact, making it as easy as possible to employ a new algorithm.