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:
- 1-D radiative transfer: Mirocha et al. (2012)
- Uniform backgrounds & global 21-cm signal: Mirocha (2014)
- Galaxy luminosity functions: Mirocha, Furlanetto, & Sun (2017)
- Population III star formation: Mirocha et al. (2018)
- Rest-ultraviolet colours at high-z: Mirocha, Mason, & Stark (2020)
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. Note that for some applications, ARES relies heavily on lookup tables and publicly-available software packages that should be referenced as well. These include:
- Collisional coupling coefficients from Zygelman (2005).
- Lyman-alpha transition probabilities from Pritchard & Furlanetto.
Please also provide a link to this page as a footnote.
You will need:
Note: ares has been tested only with Python 2.7.x and Python 3.7.x.
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:
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.
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
If the plot doesn’t appear automatically, set
interactive: True in your matplotlibrc file or type:
import matplotlib.pyplot as pl pl.show()
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
- Joshua Hibbard