Documentation Status Tests codecov Last Commit

The Accelerated Reionization Era Simulations (ARES) code was designed to rapidly generate models for the global 21-cm signal. It can also be used as a 1-D radiative transfer code, stand-alone non-equilibrium chemistry solver, global radiation background calculator, or semi-analytic galaxy formation model.

A few papers on how it works:

Plus some more applications:

Be warned: this code is still under active development – use at your own risk! Correctness of results is not guaranteed.


If you use ARES in paper please reference Mirocha (2014) if it’s an application of the global 21-cm modeling machinery and Mirocha et al. (2012) if you use the 1-D radiative transfer and/or SED optimization. Note that for some applications, ARES relies heavily on lookup tables and publicly-available software packages that should be referenced as well. These include:

Please also provide a link to this page as a footnote.


You will need:

and optionally,

Note: ares has been tested only with Python 2.7.x and Python 3.7.x.

Getting started

To clone a copy and install:

git clone
cd ares
python install

ares will look in $ARES/input for lookup tables of various kinds. To download said lookup tables, run:


This might take a few minutes. If something goes wrong with the download, you can run

python fresh

to get fresh copies of everything.

Quick Example

To generate a model for the global 21-cm signal, simply type:

import ares

sim = ares.simulations.Global21cm()      # Initialize a simulation object

You can examine the contents of sim.history, a dictionary which contains the redshift evolution of all IGM physical quantities, or use some built-in analysis routines:


If the plot doesn’t appear automatically, set interactive: True in your matplotlibrc file or type:

import matplotlib.pyplot as pl


If you encounter problems with installation or running simple scripts, first check the Troubleshooting page in the documentation to see if you’re dealing with a common problem. If you don’t find your problem listed there, please let me know!


Primary author: Jordan Mirocha (McGill)

Additional contributions / corrections / suggestions from:

  • Geraint Harker
  • Jason Sun
  • Keith Tauscher
  • Jacob Jost
  • Greg Salvesen
  • Adrian Liu
  • Saurabh Singh
  • Rick Mebane
  • Krishma Singal
  • Donald Trinh
  • Omar Ruiz Macias
  • Arnab Chakraborty
  • Madhurima Choudhury
  • Saul Kohn
  • Aurel Schneider
  • Kristy Fu
  • Garett Lopez
  • Ranita Jana
  • Daniel Meinert
  • Henri Lamarre
  • Matteo Leo
  • Emma Klemets
  • Felix Bilodeau-Chagnon