Sumatra is a tool for managing and tracking projects based on numerical simulation or analysis, with the aim of supporting reproducible research. It can be thought of as an automated electronic lab notebook for simulation/analysis projects.

Do any of these sound familiar?

  • "I thought I used the same parameters but I'm getting different results"
  • "I can't remember which version of the code I used to generate figure 6"
  • "The new student wants to reuse that model I published three years ago but he can't reproduce the figures"
  • "It worked yesterday"
  • "Why did I do that?"

Why isn't it easy to reproduce a computational experiment exactly? Especially months or years later, or in a different lab. The answer is probably related to the complexity of our code and our computing environments, and the difficulty of capturing every essential piece of information about our simulation or analysis. Using version control tools for your source code is an excellent starting point. Sumatra aims to take the next step. For more detail on the motivation behind Sumatra, see  the documentation.

Sumatra consists of:

  • a command-line interface, smt, for launching simulations/analyses with automatic recording of information about the context, annotating these records, linking to data files, etc.
  • a web interface with a built-in web-server, smtweb, for browsing and annotating simulation/analysis results.
  • a LaTeX package and Sphinx extension for including Sumatra-tracked figures and links to provenance information in papers and other documents.
  • a Python API, on which smt and smtweb are based, that can be used in your own scripts in place of using smt.

News

Sumatra development, including bug tracking, has moved to  BitBucket. The Mercurial repository here will be maintained for some time as a mirror of the BitBucket repository, but will eventually disappear.

Download

Sumatra 0.5 may be downloaded from  PyPI or from the  INCF Software Center, or you can checkout the code with Mercurial:

hg clone https://bitbucket.org/apdavison/sumatra

Nicolas Barbey has kindly created a  package for Arch Linux

Documentation

 http://pythonhosted.org/Sumatra/

 Slides from a presentation at EuroSciPy2010 (2 MB)  (hi-res 26 MB)

Support

Mailing list:  sumatra-users

If you find any bugs or wish to suggest a new feature or other enhancement, please  create a ticket.

If would like to participate in Sumatra development, head over to BitBucket:  https://bitbucket.org/apdavison/sumatra/

Licence

The code is released under the  CeCILL licence (GPL-equivalent), but we are considering changing to a less restrictive licence (e.g. BSD-like).