Skip to content

pynbody/tangos

Tangos - The agile numerical galaxy organisation system

Build Status DOI

Tangos lets you build a database (along the lines of Eagle or MultiDark) for your own cosmological and zoom simulations.

It's a modular system for Python 3.6+, capable of generating and querying databases. Tangos:

  • is designed to store and manage results from your own analysis code;
  • provides web and python interfaces;
  • allows users to construct science-focussed queries, including across entire merger trees, without requiring any knowledge of SQL;

When building databases, tangos:

  • manages the process of populating the database with science data, including auto-parallelising your analysis;
  • can be customised to work with multiple python modules such as pynbody or yt to process raw simulation data;
  • can use your favourite database as the underlying store, thanks to sqlalchemy. By default, tangos uses the file-based database sqlite, but it is also routinely tested against the server-based MySQL (from v1.5) and PostgreSQL (from v1.7).

Getting started

For information on getting started refer to the tutorials on our github pages. These tutorials are also available in markdown format within the tangos repository.

Acknowledging the code

When using tangos, please acknowledge it by citing the release paper: Pontzen & Tremmel, 2018, ApJS 237, 2. DOI 10.3847/1538-4365/aac832; arXiv:1803.00010. Optionally you can also cite the Zenodo DOI for the specific version of tangos that you are using, which may be found here.