COMMAH

The ‘COncentration-Mass relation and Mass Accretion History’ (COMMAH) code follows the model of Correa et al. (2015c). COMMAH calculates dark matter halo concentrations as a function of halo mass and redshift. It is a semi-analytic model intimately based on hierarchical structure formation. It uses an analytic model for the halo mass accretion history, based on extended Press Schechter (EPS) theory (see Correa et al. 2015a), and an empirical relation between concentration and an appropriate definition of formation time obtained through fits to the results of numerical simulations (see Correa et al. 2015b). The resulting concentration-mass relations are tested against the simulations and do not exhibit an upturn at high masses or high redshifts as claimed by recent works. Because our semi-analytic model is based on EPS theory, it can be applied to wide ranges in mass and redshift as shown in the figure below.

CM_relation

Figure 1. Predicted concentration-mass relation for the WMAP5 cosmology over a wide range of halo masses and redshifts. The solid lines correspond to our c-M model obtained from the halo MAH as described in Section 4 of Correa et al. 2015c. The lines are coloured as a function of redshift as indicated. The dashed lines correspond to power-law fits to the high-mass c−M relation at z = 0, 1, 2 and 3, and are in good agreement with the empirical relation from Duffy et al. (2008) (c = 6.71(M/2×1012h-1 M)−0.091(1+z)−0.44).

Interestingly, it predicts a break in the z=0 concentration-mass (hereafter, c-M) relation at a mass scale of 1011M, which we find to be produced by the varying power in the density perturbations.


 
COMMAH is available in IDL and python:

Python code was written and is maintained by Alan Duffy.

Download: COMMAH has been included in the pypi python package. To download COMMAH using pip type

pip install commah

 
In addition, COMMAH is hosted in both BitBucket and github repositories. You can clone any of the repositories by typing

git clone https://bitbucket.org/astroduff/commah

 
or,

git clone https://github.com/astroduff/commah

 
You need to have installed the free version control system git. The last option is to download the code here.

Basic usage: COMMAH.py requires the following standard libraries: numpy, scipy and cosmolopy. In the python shell you can begin with the following calling sequence

In [1]: import commah
In [2]: output = commah.run(‘WMAP1’,zi=0.,Mi=1e12,z=[0.0,1.0,1.5,3.0,5.0])
In [3]: output[‘c’]
Out[3]: array([[8.84952006,6.41136808,5.5846723,4.24172252,3.53294106]])
In [4]: output[‘Mz’]
Out[4]: array([[1.00000e+12,6.02554e+11,4.52997e+11,1.82783e+11,5.14619e+10]])
In [5]: output[‘dMdt’]
Out[5]: array([[31.88483435,83.06488935,106.30413759,138.85684425,109.70682285]])

 
In the example above the user input the cosmology WMAP1, the initial redshift zi, the mass at the initial redshift Mi and the output redshift z. After that the user asked for the dark matter halo concentrations at the output redshifts (‘c’), for the halo mass at the output redshifts (‘Mz’) and for the accretion rate at the requested reshifts (‘dMdt’). In addition, the user can also request the rms of the primordial density field σ, the peak height ν, and the formation redshift zf.

The user can also request the concentration and accretion rate of dark matter halos of mass Mi at a particular redshift zi.

In [1]: import commah
In [2]: output = commah.run(‘WMAP1’,zi=2.,Mi=[1e12,5e11,1e11,5e10])
In [3]: output[‘c’]
Out[3]: array([[4.6732888],[4.87151256],[5.37096703],[5.59182459]])
In [5]: output[‘dMdt’]
Out[5]: array([[406.86787551],[192.92677084],[34.29907519],[16.37394805]])

 
Find a detailed documentation here with examples, cosmology setting, functions description, etc.


 
IDL code was written and is maintained by Camila Correa.

Installation: no need for installation, you can just download the code here.

Basic Usage: The code performs two different calculations: it looks for the concentration-mass relation for a particular redshift and mass range, or calculates the halo mass history for a given initial halo mass and redshift range.

COMMAH.pro requires two input files: COM.in and MAH.in. To calculate the concentration-mass relation, the user needs to specify the cosmology, the redshift, the initial and final halo mass and the step or mass interval in the file COM.in. As a result the COMMAH.pro will output 5 columns: concentration, halo mass, rms of primordial density field, peak height and accretion rate. To calculate the halo mass history, the user has to specify the cosmology, the initial mass, the initial redshift, final redshift and step or mass interval in the file MAH.in. Consequently, COMMAH.pro will output 6 columns: redshift, halo mass, accretion rate, concentration, virial radius and scale radius.

To run the code modify the input files and type

$IDL> run,/COM
$IDL> run,/MAH

 


 
The following files were created using COMMAH. Each file contains columns of redshift, concentration, halo mass (in units of Log10[M]), mass variance (σ), peak height (ν) and accretion rate (in units of Log10[M/yr]). The concentration and halo mass definition correspond to M200, defined as all matter within a virial radius for which the mean internal density is 200 times the critical density.

Cosmology Ωm ΩΛ h σ8 ns c-M File
Planck 0.317 0.683 0.67 0.834 0.962 c-M Planck
WMAP9 0.282 0.718 0.70 0.817 0.964 c-M WMAP9
WMAP5 0.258 0.742 0.72 0.796 0.963 c-M WMAP5
WMAP3 0.238 0.762 0.73 0.74 0.951 c-M WMAP3
WMAP1/MILL 0.25 0.75 0.73 0.90 1.000 c-M WMAP1

 
How to cite COMMAH? If you use COMMAH for a publication, please cite Correa et al. (2015c)Correa et al. (2015b) and Correa et al. (2015a).


 

Halo Mass Accretion Histories

Analytic model

The COMMAH code includes the calculation of halo mass accretion histories (MAH), following the analytic halo MAH model introduced in Correa et al. (2015a) and extended in Correa et al. (2015c). This analytic model is based on EPS theory, is physically motivated, can be extrapolated to very low masses and is suitable for any cosmology.

The following files were created using COMMAH. Each file contains columns of redshift, halo mass (M(z), in units of Log10[M]), accretion rate (in units of Log10[M/yr]), halo concentration (c200), virial radius (r200 in units of Log10[Mpc]) and scale radius (in units of Log10[Mpc]).

Cosmology Ωm ΩΛ h σ8 ns Files
Planck 0.317 0.683 0.67 0.834 0.962 MAHPlanck
WMAP9 0.282 0.718 0.70 0.817 0.964 MAHWMAP9
WMAP5 0.258 0.742 0.72 0.796 0.963 MAHWMAP5
WMAP3 0.238 0.762 0.73 0.74 0.951 MAHWMAP3
WMAP1 0.25 0.75 0.73 0.90 1.000 MAHWMAP1

Semi-analytic model

In the COMMAH code, all the calculations have been based on a halo mass defined as the mass of all matter within the radius r200 at which the mean internal density <ρ>(< r200) is a factor of Δ = 200 times the critical density of the universe, ρcrit (from now on we denote this halo mass by M200).

However, in the literature a number of values have been used for Δ. For that reason in Correa et al. (2015b), my collaborators and I studied how the halo mass accretion histories depend on the adopted mass definition. We analysed halo mass histories of relaxed halos using three different halo mass definitions. First, we use M200. Second, we use Mmean, which is the mass within the radius rmean for which the mean internal density is 200 times the mean background density. Finally, Mviris the mass within the radius rvir for which the mean internal density is Δvir times the critical density as determined by Bryan & Norman (1998).

The code SemiAnalyticMAH calculates the halo mass accretion histories for the three halo mass definitions mentioned above.

Cosmology Ωm ΩΛ h σ8 ns Files
WMAP5 0.258 0.742 0.72 0.796 0.963

MAHWMAP5M200(z)

MMEAN(z)

MVIR(z)