.. index:: overview, philosophy, development centers
Overview
========
This page gives a brief overview of CTDAS, with the intention to provide background information for (potential) new users. Afer reading the information below we recommend contacting one of the CTDAS development centers (Wageningen University and NOAA ESRL), or proceed to the :doc:`tutorial`.
The CarbonTracker DAS is programmed in python and uses it built-in functionality for many of its tasks.
Users of CTDAS are required to have a python installation on their system, with a small set of
open source add-ons. The minimum requirements are listed below, categorized by functionality.
Getting the CTDAS code
----------------------
* A working ``subversion`` (SVN) installation is needed, to check your system type::
$ svn --version
if the system returns an error, or a version < 1.5.0, please obtain svn from <http://subversion.tigris.org/>
Running CTDAS
-------------
* A ``python2.4`` or later installation.
.. note:: ``python3`` is not supported, one needs a python2.x version. To check your python version type::
$ python --version
* The python module ``numpy``, not included with a standard installation. You can obtain numpy from <http://numpy.scipy.org>
* The python module ``Nio`` created by NCAR/UCAR. This package is freely available as a binary download from UCAR's Earth System Grid at <http://www.earthsystemgrid.org>
.. note:: Registration is required at NCAR/UCAR, their software is free for academic users.
Performing inversions
---------------------
* An important component of the CTDAS system is the observation operator, usually in the form of an atmospheric
transport model. This model is a stand-alone piece of code that can subsample your state vector, and return a
set of observations. **You therefore require an atmospheric transport model that can run indepently on your
platform.**
.. note:: If you do not currently have access to such a transport model, or have no resources to run such a model
for long periods of time and for many ensemble configurations, you have probably stumbled onto this page not
understanding exactly what CTDAS is. We refer you to the :ref:`overview` for a more elaborate description.
* An actual CarbonTracker inversion requires a large collection of input datasets, including
* Observations to be assimilated
* a-priori surface fluxes for your trace components
* a-priori uncertainty distributions for your unknowns