|[an error occurred while processing this directive]||
The Data Assimilation Research Testbed -- DART
The 500hPa geopotential height from 20 ensemble members of an 80 member experiment with a T85 resolution of CAM (00Z 01 Feb 2003). The contour sets are from 5320 to 5800 by 80.
The DART software provides a flexible, extensible framework for conducting data assimilation research on a wide variety of models and observations. In order to facilitate the incorporation of new models, which in the Geoscience community are frequently written in Fortran 90, the DART software is written primarily in Fortran 90. Control scripts are primarily in C Shell, and the distribution includes Matlab® diagnostic scripts.
The DART system comes with many models -- ranging from 1-dimensional Lorenz systems to full global atmospheric and ocean models. DART also has extensive tutorial materials that explain typical DART experiments and explores many aspects of ensemble data assimilation. Download the DART source code and see the release notes for instructions on how to build an executable, run the "workshop" experiments, and look at the results. The DART_LAB directory contains presentation slides and interactive MATLAB demonstrations which illustrate and explain the fundamentals of the ensemble data assimilation algorithms. The tutorial directory contains a series of PDF files which go into more mathematical detail on various ensemble data assimilation topics, and specifics on the DART implementation.
DART is intended to be highly portable but has a strong Unix/Linux preference.
DART has been run successfully on Windows machines under the cygwin environment.
Those instructions are under development - if you would like to be a friendly
beta-tester please send me (Tim Hoar) an email and I'll send you the instructions,
as long as you promise to provide feedback (good or bad!) so I can improve them.
My email is thoar @ ucar . edu - minus the
Minimally, you will need a Fortran90 compiler and the netCDF libraries built with the F90 interface. History has shown that it is a very good idea to make sure your run-time environment has the following:
If you want to run your own model, all you need is an executable and some scripts
to interface with DART - we have templates and examples.
If your model can be called as a subroutine, life is good, and
the hardest part is usually a routine to parse the model state vector into
one whopping array - and back. Again - we have templates, examples, and a
document describing the required interfaces. That document exists in the
DART code -
DART/models/model_mod.html - as does all the most
Almost every DART program/module has a matching piece of documentation.
Starting with the Jamaica release there is an option to compile with the MPI (Message Passing Interface) libraries in order to run the assimilation step in parallel on hardware with multiple CPUs. Note that this is optional; MPI is not required to run DART. If you do want to run in parallel then we also require a working MPI library and appropriate cluster or SMP hardware. See the MPI intro for more information on running with the MPI option.
One of the beauties of ensemble data assimilation is that even if (particularly if) your model is single-threaded, you can still run efficiently on parallel machines by dealing out each ensemble member (an unique instance of the model) to a separate processor. If your model cannot run single-threaded, fear not, DART can do that too.
We work to keep the DART code highly portable. We avoid compiler-specific constructs, require no system-specific functions, and try as much as possible to be easy to build on new platforms.
DART has been compiled and run on Apple laptops and workstations, Linux clusters small and large, SGI Altix systems, IBM Power systems, IBM Intel systems, Cray systems.
DART has been compiled with compilers from Intel, PGI, Cray, GNU, IBM, Pathscale.
MPI versions of DART have run under batch systems including LSF, PBS, Moab/Torque, and Sun Grid Engine.
We have run successfully on a Windows machine under the
environment. If you are interested in this, please
The DART code is distributed via a Subversion (SVN) repository. Anonymous access is allowed, and the repository code is read-only for everyone except the DART development team. DART is distributed as source code, so you must be prepared to build the parts of the system you need before you can run it.
Using subversion makes it easy to update and compare your checked-out version of the code with the latest repository version of the code. If you are not familiar with the svn command (the client application of subversion), you should take a stroll through Tim's svn primer. Or there are several GUI programs that help you manage, check out, and merge subversion distributions. If you cannot use svn (e.g. because you are behind a firewall that does not permit subversion access), please email the DART team and we may be able to send you a tar file as a last resort.
The DART development team keeps released versions of the code which are stable (don't change) except for bug fixes. Generally we recommend users check out one of these versions. The DART development team makes frequent updates to the trunk version of the code as new features are developed. Those users who want to use recently added features are welcome to check out the trunk, but they should be prepared to work around possible non-backwards compatible changes and more lightly tested code than the released versions.
DART continues to evolve. We request that you register using this web page and afterwards you will be redirected to instructions on how to download a version of the DART code. Registration helps us track how many people are using our code, and allows us to contact current users in case of bugs or major updates. The DART mailing list is a very low-traffic list -- perhaps 4 emails per year -- so PLEASE use a real email address when signing up. We solemnly swear to protect your email address like it is our own! Even local NCAR users or users who have registered in the past are encouraged to reregister when downloading new versions. Thank you for your understanding.
|version||date||instructions||most noteable change(s)|
|lanai||13 Dec 2013||[doc]||Support for the CESM climate components under the CESM framework;
the MPAS models, the NOAH land model, the GITM ionosphere model,
the NOGAPS atmosphere model, the NAAPS aerosol model,
and the SQG surface quasi-geostrophic model.
Support for many new chemistry and aerosol observation types,
support for many new observations sources, many new diagnostic
routines, and new utilities.
|trunk||today||included in distrib.||varies, use svn log --revision ####:HEAD to see log messages about changes since revision ####.|
|kodiak||30 Jun 2011||[doc]||Damped Inflation, Sampling Error Correction, Boxcar
Kernel Filter option, support for new models, new observation types, new
diagnostics, new utilities.
|jamaica||12 Apr 2007||[doc]||vertical localization, extensive testing of MPI implementation,
full documentation for new algorithms, new tutorial sections
|pre_j||02 Oct 2006||[doc]||contains an updated scalable filter algorithm
|post_iceland||20 Jun 2006||[doc]||observation-space adaptive inflation, bug fixes,
obs_sequence_tool support ...
|iceland||23 Nov 2005||[doc]||huge expansion of real observation capability
better namelist processing, PBL_1d available.
|pre_iceland||20 Oct 2005||for developers only||huge expansion of real observation capability|
|DA workshop 2005||13 Jun 2005||docs included in distrib.||tutorial directory in distribution, observation preprocessing|
|hawaii||28 Feb 2005||[doc]||new filtering algorithms|
|pre-hawaii||20 Dec 2004||[doc]||new filtering algorithms|
|guam||12 Aug 2004||[doc]||new observation modules, removing autopromotion|
|fiji||29 Apr 2004||[doc]||enhanced portability, CAM, WRF|
|easter||8 March 2004||[doc]||initial release|
The DART system comes with an extensive set of tutorial materials, working
models with several different levels of complexity, and data to be assimilated.
It has been used in several multi-day workshops and can be used as the basis
to teach a section on Data Assimilation.
Download the DART software distribution and look in the
for pdf and powerpoint presentations, and MATLAB GUI point-and-click examples and
hands-on demonstrations. Also look in the
tutorial subdirectory for pdf files for each of the 22 tutorial sections.
Browsing the DART_LAB and tutorial directories in the distribution is worth the effort. Doing the tutorials is even better!
The full list of presentations (as well as some of the presentations themselves) and publications is available on our Publications page.
We're a small group, so the contact list is pretty short. Our central email contact is firstname.lastname@example.org. Or if you want to contact us individually, here is our information:
|lead scientist and manager||general / diagnostics||general / platforms / mpi||large processor count systems||CAM||WRF|
|Jeff Anderson||Tim Hoar||Nancy Collins||Helen Kershaw||Kevin Raeder||Glen Romine|
|jla @ ucar . edu||thoar @ ucar . edu||nancy @ ucar . edu||hkershaw @ ucar . edu||raeder @ ucar . edu||romine @ ucar . edu|
|Contact:||DART core group|
|Revision:||$Revision: 10979 $|
|Source:||$URL: https://svn-dares-dart.cgd.ucar.edu/DART/releases/Manhattan/documentation/html/index.shtml $|
|Change Date:||$Date: 2017-02-01 13:07:34 -0700 (Wed, 01 Feb 2017) $|
|Change history:||try "svn log" or "svn diff"|