ARES

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, or global radiation background calculator.

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.

The documentation is still a work in progress.

Citation

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. Either way, please provide a link to this page as a footnote.

Getting started

To clone a copy and install:

git clone https://github.org/mirochaj/ares.git
cd ares
python setup.py install

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

python remote.py

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

python remote.py fresh

to get fresh copies of everything.

Dependencies

You will need:

and optionally,

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

Quick Example

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

import ares

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

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:

sim.GlobalSignature()

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

import matplotlib.pyplot as pl
pl.show()

See the documentation for more examples.

Documentation

To generate the documentation locally,

cd $ARES/docs
make html
open _build/html/index.html

This will open the documentation in a browser. For the above to work, you’ll need sphinx, numpydoc, and nbsphinx which can be installed via pip:

pip install sphinx
pip install numpydoc
pip install nbsphinx

You can also just view the latest build here.

Help

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!

Contributors

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