Merger Tree Branching Probabilities

Class providing merger tree branching probabilities—the differential probability per unit “time” (specifically the variable \(w(t) = \delta_\mathrm{c}(t)/D(t)\)) that a halo of given mass splits into a more massive progenitor and a smaller branch. These probabilities are typically derived from the extended Press-Schechter formalism and its extensions. They control the statistical properties of the stochastically built merger trees and determine the mass spectrum of progenitors as a function of redshift.

Default implementation: mergerTreeBranchingProbabilityParkinsonColeHelly

Methods

ratedouble precision

Computes the probability per unit “time” of branching at the given mass.

  • double precision , intent(in ) :: mass, deltaCritical, time, massBranch

  • type (treeNode), intent(inout), target :: node

probabilitydouble precision

Computes the probability per unit “time” that a branching event occurs.

  • double precision , intent(in ) :: haloMass, deltaCritical, time, massResolution

  • type (treeNode), intent(inout), target :: node

probabilityBounddouble precision

Computes a bound (upper or lower) to the probability per unit “time” that a branching event occurs.

  • double precision , intent(in ) :: haloMass, deltaCritical, time, massResolution

  • type (enumerationMergerTreeBranchingBoundType), intent(in ) :: bound

  • type (treeNode ), intent(inout), target :: node

fractionSubresolutiondouble precision

Computes the fraction of subresolution mass accreted per unit “time”

  • double precision , intent(in ) :: haloMass, deltaCritical, time, massResolution

  • type (treeNode), intent(inout), target :: node

massBranchdouble precision

Returns the mass of a new halo created by a branching event.

  • double precision , intent(in ) :: haloMass , deltaCritical, time, massResolution, probabilityFraction

  • class (randomNumberGeneratorClass), intent(inout) :: randomNumberGenerator_

  • type (treeNode ), intent(inout), target :: node

stepMaximumdouble precision

Returns the maximum step in “time” allowed by this algorithm.

  • double precision, intent(in ) :: haloMass, deltaCritical, time, massResolution

mergerTreeBranchingProbabilityFakhouri2010

Merger tree branching probabilities using the algorithm of Fakhouri et al. (2010). The branching rate is given by

\[\frac{\mathrm{d}^2 N}{\mathrm{d} \xi \mathrm{d} z} = A \left(\frac{M}{10^{12}\hbox{M}_\odot}\right)^\alpha \xi^\beta \exp \left(\left[\frac{\xi}{\bar{\xi}}\right]^\gamma\right) (1+z)^\eta f_\mathrm{env}(\delta,M),\]

where \(M\) is the mass of the primary halo, \(\xi\) is the mass ratio of the merging halos, and \(A=\)[A], \(\alpha=\)[alpha], \(\beta=\)[beta], \(\gamma=\)[gamma], and \(\bar{\xi}=\)[xiBar] are parameters. The function \(f_\mathrm{env}(\delta,M)\) describes environmental dependence in the merger rate. We use the model of Fakhouri and Ma (2009):

\[f_\mathrm{env}(\delta,M) = B (1+\delta)^\mu \left( \frac{M}{10^{12}\mathrm{M}_\odot} \right)^\nu,\]

where \(\delta\) is the non-linear overdensity of the environment and \(B=\)[B], \(\mu=\)[mu], and \(\nu=\)[nu] are parameters.

Parameters

  • [alpha] (default 0.133d0) — The parameter \(\alpha\) appearing in equation (1) of Fakhouri et al. (2010).

  • [beta] (default -1.995d0) — The parameter \(\beta\) appearing in equation (1) of Fakhouri et al. (2010).

  • [gamma] (default 0.263d0) — The parameter \(\gamma\) appearing in equation (1) of Fakhouri et al. (2010).

  • [eta] (default 0.0993d0) — The parameter \(\eta\) appearing in equation (1) of Fakhouri et al. (2010).

  • [A] (default 0.0104d0) — The parameter \(A\) appearing in equation (1) of Fakhouri et al. (2010).

  • [xiBar] (default 9.72d-3) — The parameter \(\bar{\xi}\) appearing in equation (1) of Fakhouri et al. (2010).

  • [B] (default 0.963d0) — The parameter \(B\) (the overall normalization) appearing in equation (11; \(\delta_\mathrm{7-FOF}\) case) of Fakhouri and Ma (2009).

  • [mu] (default 0.130d0) — The parameter \(\mu\) (exponent of the density) appearing in equation (11; \(\delta_\mathrm{7-FOF}\) case) of Fakhouri and Ma (2009).

  • [nu] (default -0.0156d0) — The parameter \(\nu\) (exponent of the halo mass) appearing in equation (11; \(\delta_\mathrm{7-FOF}\) case) of Fakhouri and Ma (2009).

mergerTreeBranchingProbabilityGnrlzdPrssSchchtr

A merger tree branching probability class using a generalized Press-Schechter approach. Branching probabilities are computed from solutions to the excursion set barrier first crossing rate problem. Specifically, the branching probability per unit time is:

\[{\d f \over \d t} = {\mathrm{d} t \over \mathrm{d}\omega} \int_{M_\mathrm{min}}^{M/2} {M \over M^\prime} {\d f \over \d t} {\d S \over \d M^\prime} \left| {\d t \over \d \omega}\right| G[\omega,\sigma(M),\sigma(M^\prime)] \d M^\prime,\]

where \(\omega = \delta_\mathrm{c,0}/D(t)\). The rate of accretion of mass in halos below the resolution limit of the merger tree is

\[{\d R \over \d t} = {\mathrm{d} t \over \mathrm{d}\omega} \int_0^{M_\mathrm{min}} {\d f \over \d t} {\d S \over \d M^\prime} \left| {\d t \over \d \omega}\right| G[\omega,\sigma(M),\sigma(M^\prime)] \d M^\prime.\]

In the above, \(G[\omega,\sigma(M),\sigma(M^\prime)]\) is a modification to the merger rate as computed by the selected mergerTreeBranchingProbabilityModifierClass. If [smoothAccretion]\(=\)true then smooth accretion (i.e. accretion of matter not in dark matter halos) is accounted for at the rate:

\[{\d R_\mathrm{s} \over \d t} = {\mathrm{d} t \over \mathrm{d}\omega} G[\omega,\sigma_\mathrm{max},\sigma(M^\prime)] {\d \stackrel{\sim}{f} \over \d t},\]

where \(\sigma_\mathrm{max}\) is the peak value of \(\sigma(M)\) (for the lowest mass halos) and \(\d \stackrel{\sim}{f}/\d t\) is the rate at which excursion set trajectories fail to cross the barrier on any mass scale.

Methods

  • computeCommonFactors — Compute common factors needed for the calculations.

  • excursionSetTest — Compute common factors needed for the calculations.

Parameters

  • [deltaStepMaximum] (default 0.1d0) — Limits the step in \(\delta_\mathrm{crit}\) when constructing merger trees using the generalized Press-Schechter branching algorithm.

  • [massMinimum] (default 1.0d6) — The minimum mass to use in computing subresolution accretion rates when constructing merger trees using the generalized Press-Schechter branching algorithm.

  • [smoothAccretion] (default .true.) — Specifies whether or not to include smooth accretion in subresolution accretion rates when constructing merger trees using the generalized Press-Schechter branching algorithm.

  • [distributionFunctionLowerHalfOnly] (default .true.) — If true, only the lower half (\(M < M_0/2\)) of the branching rate distribution function is used, as per the algorithm of Cole et al. (2000).

  • [distributionFunctionNormalize] (default .true.) — If using the full range (\(M < M_0\)) of the branching rate distribution, if this parameter is true then divide the branching rate by 2. This is appropriate if two progenitors are to be sampled (i.e. a binary split). If the branching rate applies to only a single branch is it more appropriate to set this parameter to be true in which case this normalization by a factor 2 is not applied.

mergerTreeBranchingProbabilityParkinsonColeHelly

A merger tree branching probability class using the algorithm of Parkinson et al. (2008). The parameters \(G_0\), \(\gamma_1\) and \(\gamma_2\) of their algorithm are specified by the input parameters [G0], [gamma] and [gamma2] respectively. Additionally, the parameter accuracyFirstOrder limits the step in \(\delta_\mathrm{crit}\) so that it never exceeds accuracyFirstOrder\(\sqrt{2[\sigma^2(M_2/2)-\sigma^2(M_2)]}\), which ensures the the first order expansion of the merging rate that is assumed is accurate. To find bounds on the branching probability, we make use of the fact that eqn. (4) of Parkinson et al. (2008) can be written as

\[{\d f \over \d t} = {\mathrm{d} t \over \mathrm{d}\omega} \int_{M_\mathrm{min}}^{M/2} {M \over M^\prime} {\d f \over \d t} {\d S \over \d M^\prime} \left| {\d t \over \d \omega}\right| G[\omega,\sigma(M),\sigma(M^\prime)] \d M^\prime.\]

By holding the \(M^\prime\) in the denominator of the first term in the integrand fixed, we obtain an analytic solution to the integral in terms of hypergeometric functions. If we fix this \(M^\prime\) at \(M_\mathrm{min}\) we obtain an upper limit on the branching probability, while if we fix it to \(M/2\) a lower limit is obtained.

Calculation of branching probabilities involves computation of several hypergeometric functions which are numerically slow. Two parameters control the accuracy and application of these functions. First, [precisionHypergeometric](\(=10^{-6}\)) specifies the fractional tolerance to which these functions should be computed. Second, if [hypergeometricTabulate]\(=\)true then these functions will be tabulated for rapid lookup (at some loss of precision).

(Default implementation)

Methods

  • computeCommonFactors — Compute common factors needed for the calculations.

  • V — Compute the function \(V(q)\) from Parkinson et al. (2008).

  • modifier — Compute the part of the modifier term which depends on \(\sigma_\mathrm{s}\).

  • hypergeometricA — Compute the \(a\) parameter of the hypergeometric function.

Parameters

  • [G0] (default 0.57d0) — The parameter \(G_0\) appearing in the modified merger rate expression of Parkinson et al. (2008).

  • [gamma1] (default 0.38d0) — The parameter \(\gamma_1\) appearing in the modified merger rate expression of Parkinson et al. (2008).

  • [gamma2] (default -0.01d0) — The parameter \(\gamma_2\) appearing in the modified merger rate expression of Parkinson et al. (2008).

  • [accuracyFirstOrder] (default 0.1d0) — Limits the step in \(\delta_\mathrm{crit}\) when constructing merger trees using the Parkinson et al. (2008) algorithm, so that it never exceeds accuracyFirstOrder\(\sqrt{2[\sigma^2(M_2/2)-\sigma^2(M_2)]}\).

  • [precisionHypergeometric] (default 1.0d-6) — The fractional precision required in evaluates of hypergeometric functions in the modified Press-Schechter tree branching calculations.

  • [hypergeometricTabulate] (default .true.) — Specifies whether hypergeometric factors should be precomputed and tabulated in modified Press-Schechter tree branching functions.

  • [cdmAssumptions] (default .false.) — If true, assume that \(\alpha(=-\mathrm{d}\log \sigma/\mathrm{d}\log M)>0\) and \(\mathrm{d}\alpha/\mathrm{d}M>0\) (as is true in the case of CDM) when constructing merger trees using the Parkinson et al. (2008).

  • [tolerateRoundOffErrors] (default .false.) — If true, round-off errors in integrations of branching probability will be tolerated. This may degrade the accuracy of solutions, but can be unavoidable in models with cut-offs in their power spectra.

mergerTreeBranchingProbabilityPCHPlus

Merger tree branching probabilities using the algorithm of Parkinson et al. (2008) plus an additional term.

Parameters

  • [G0] (default 0.57d0) — The parameter \(G_0\) appearing in the modified merger rate expression of Parkinson et al. (2008).

  • [gamma1] (default 0.38d0) — The parameter \(\gamma_1\) appearing in the modified merger rate expression of Parkinson et al. (2008).

  • [gamma2] (default -0.01d0) — The parameter \(\gamma_2\) appearing in the modified merger rate expression of Parkinson et al. (2008).

  • [gamma3] (default 0.0d0) — The parameter \(\gamma_3\) appearing in the modified merger rate expression of Parkinson et al. (2008).

  • [gamma4] (default 0.0d0) — The parameter \(\gamma_4\) appearing in the modified merger rate expression of Parkinson et al. (2008).

  • [gamma5] (default 0.0d0) — The parameter \(\gamma_5\) appearing in the modified merger rate expression of Parkinson et al. (2008).

  • [accuracyFirstOrder] (default 0.1d0) — Limits the step in \(\delta_\mathrm{crit}\) when constructing merger trees using the Parkinson et al. (2008) algorithm, so that it never exceeds accuracyFirstOrder\(\sqrt{2[\sigma^2(M_2/2)-\sigma^2(M_2)]}\).

  • [precisionHypergeometric] (default 1.0d-6) — The fractional precision required in evaluates of hypergeometric functions in the modified Press-Schechter tree branching calculations.

  • [hypergeometricTabulate] (default .true.) — Specifies whether hypergeometric factors should be precomputed and tabulated in modified Press-Schechter tree branching functions.

  • [cdmAssumptions] (default .false.) — If true, assume that \(\alpha(=-\mathrm{d}\log \sigma/\mathrm{d}\log M)>0\) and \(\mathrm{d}\alpha/\mathrm{d}M>0\) (as is true in the case of CDM) when constructing merger trees using the Parkinson et al. (2008).

  • [tolerateRoundOffErrors] (default .false.) — If true, round-off errors in integrations of branching probability will be tolerated. This may degrade the accuracy of solutions, but can be unavoidable in models with cut-offs in their power spectra.

  • [G0] (default 0.57d0) — The parameter \(G_0\) appearing in the modified merger rate expression of Parkinson et al. (2008).

  • [gamma1] (default 0.38d0) — The parameter \(\gamma_1\) appearing in the modified merger rate expression of Parkinson et al. (2008).

  • [gamma2] (default -0.01d0) — The parameter \(\gamma_2\) appearing in the modified merger rate expression of Parkinson et al. (2008).

  • [gamma3] (default 0.0d0) — The parameter \(\gamma_3\) appearing in the extension of the modified merger rate expression of Parkinson et al. (2008) as defined in this class.