ARES depends on:

and optionally:

If you have mercurial installed, you can clone ARES and its entire revision history via:

hg clone ares
cd ares
python install

If you do not have mercurial installed, and would rather just grab a tarball of the most recent version, select the Download repository option on bitbucket.

You’ll need to set an environment variable which points to the ARES install directory, e.g. (in bash)

export ARES=/users/<yourusername>/ares

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. If you’re concerned that a download may have been interrupted and/or the file appears to be corrupted (strange I/O errors may indicate this), you can also just download fresh copies of the particular file you want to replace. For example, to grab a fresh initial conditions file, simply do

python fresh inits

ARES branches

ARES has two main branches. The first, default, is meant to be stable, and will only be updated with critical bug fixes or upon arrival at major development milestones. The “bleeding edge” lives in the ares-dev branch, and while you are more likely to find bugs in ares-dev, you will also find the newest features.

By default after you clone ARES you’ll be using the default branch. To switch, simply type:

hg update ares-dev

To switch back,

hg update default

For a discussion of the pros and cons of different branching techniques in mercurial, this article is a nice place to start.

ARES versions

The first stable release of ARES was used in Mirocha et al. (2015), and is tagged as v0.1 in the revision history. The tag v0.2 is associated with Mirocha, Furlanetto, & Sun (2017). Note that these tags are just shortcuts to specific revisions. You can switch between them just like you would switch between branches, e.g.,

hg update v0.2

If you’re unsure which version is best for you, see the Development History.

Don’t have Python already?

If you do not already have Python installed, you might consider downloading yt, which has a convenient installation script that will download and install Python and many commonly-used Python packages for you. Anaconda is also good for this.


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!