Dark Matter Halo Splashback Radii

Class providing the splashback radius, \(R_\mathrm{sp}\), of dark matter halos—the radius at which accreted material reaches the apocenter of its first orbit after collapse. Physically this marks the true outer edge of the collapsed halo, and manifests observationally as a sharp steepening of the density profile. It is not a spherical overdensity radius, and so does not correspond to any fixed density contrast: it depends primarily on the halo’s mass accretion rate, \(\Gamma\), with rapidly accreting halos having smaller \(R_\mathrm{sp}/R_\mathrm{200m}\).

Implementations of this class differ both in the model used and, for those models calibrated against the distribution of particle apocenters, in which statistic of that distribution is being predicted (see the definition parameter of the darkMatterHaloSplashbackRadiusDiemer2017 and darkMatterHaloSplashbackRadiusDiemer2020 classes).

Default implementation: darkMatterHaloSplashbackRadiusDiemer2020

Methods

radiusdouble precision

Returns the splashback radius, \(R_\mathrm{sp}\) (in Mpc), of the halo in node.

  • type(treeNode) node [inout]

  • class(massDistributionClass) massDistribution_ (optional) [inout]

radiusRatiodouble precision

Returns the ratio \(R_\mathrm{sp}/R_\mathrm{200m}\) for the halo in node. Splashback models are formulated in terms of this ratio, so this method allows a caller which has already computed \(R_\mathrm{200m}\) for its own density profile to obtain a splashback radius consistent with that profile, instead of with the profile used internally by this class.

  • type(treeNode) node [inout]

  • class(massDistributionClass) massDistribution_ (optional) [inout]

massdouble precision

Returns the splashback mass, \(M_\mathrm{sp}\) (in \(\mathrm{M}_\odot\)), of the halo in node—that is, the mass enclosed by the splashback radius. Note that this is predicted directly by the fitting functions of those models which provide it, and is in general not equal to the mass enclosed within \(R_\mathrm{sp}\) in any given density profile model. An error is reported by models which do not predict this quantity.

  • type(treeNode) node [inout]

  • class(massDistributionClass) massDistribution_ (optional) [inout]

massRatiodouble precision

Returns the ratio \(M_\mathrm{sp}/M_\mathrm{200m}\) for the halo in node. An error is reported by models which do not predict this quantity.

  • type(treeNode) node [inout]

  • class(massDistributionClass) massDistribution_ (optional) [inout]

radiusScatterdouble precision

Returns the 68% scatter in \(\log_{10}(R_\mathrm{sp}/R_\mathrm{200m})\) for halos matching those in node. An error is reported by models which do not predict this scatter.

  • type(treeNode) node [inout]

  • class(massDistributionClass) massDistribution_ (optional) [inout]

massScatterdouble precision

Returns the 68% scatter in \(\log_{10}(M_\mathrm{sp}/M_\mathrm{200m})\) for halos matching those in node. An error is reported by models which do not predict this scatter.

  • type(treeNode) node [inout]

  • class(massDistributionClass) massDistribution_ (optional) [inout]

darkMatterHaloSplashbackRadiusDiemer

An abstract splashback radius class providing the functional forms shared by the Diemer et al. (2017) and Diemer (2020) models.

Methods

propertiesGet

Return the properties of the halo needed to evaluate the splashback fitting functions.

  • type(treeNode) node [inout]

  • double precision gamma [out]

  • double precision peakHeight [out]

  • double precision omegaMatter [out]

  • double precision radius200Mean [out]

  • double precision mass200Mean [out]

  • class(massDistributionClass) massDistribution_ (optional) [inout]

darkMatterHaloSplashbackRadiusDiemer2017

A splashback radius class implementing the model of Diemer et al. (2017). The splashback radius and mass are given by

\[{X_\mathrm{sp} \over X_\mathrm{200m}} = A + B \exp\left( - {\Gamma \over C} \right),\]

where \(X\) is either radius or mass, and the coefficients \(A\), \(B\), and \(C\) depend on the matter density parameter, \(\Omega_\mathrm{M}\), the peak height, \(\nu\), computed from \(M_\mathrm{200m}\), and on which statistic of the distribution of particle apocenters is being predicted (set by [definition]). Here \(\Gamma\) is the mass accretion rate measured over one dynamical time.

The model was calibrated over the ranges \(0 \le \nu \le 5\) and \(0 \le z \le 8\); it is evaluated here without restriction, so results outside of those ranges should be treated as extrapolations.

Parameters

  • [definition] (string; one of mean, percentile50, percentile75, percentile87, percentile90; default mean) — The statistic of the distribution of particle apocenters which defines the splashback radius. Allowed values are mean (the mean of the distribution), and percentile50, percentile75, percentile87, and percentile90 (the corresponding percentiles of the distribution).

darkMatterHaloSplashbackRadiusDiemer2020

A splashback radius class implementing the model of Diemer (2020). The splashback radius and mass are given by

\[{X_\mathrm{sp} \over X_\mathrm{200m}} = A + B \exp\left( - {\Gamma \over C} \right),\]

where \(X\) is either radius or mass, and the coefficients \(A\), \(B\), and \(C\) depend on the matter density parameter, \(\Omega_\mathrm{M}\), the peak height, \(\nu\), computed from \(M_\mathrm{200m}\), and on which statistic of the distribution of particle apocenters is being predicted (set by [definition]). Here \(\Gamma\) is the mass accretion rate measured over one dynamical time. This model supersedes that of Diemer et al. (2017), having been recalibrated against a larger set of simulations.

The model was calibrated over the ranges \(0 \le \nu \le 5\) and \(0 \le z \le 8\); it is evaluated here without restriction, so results outside of those ranges should be treated as extrapolations.

(Default implementation)

Parameters

  • [definition] (string; one of mean, percentile50, percentile75, percentile87, percentile90; default mean) — The statistic of the distribution of particle apocenters which defines the splashback radius. Allowed values are mean (the mean of the distribution), and percentile50, percentile75, percentile87, and percentile90 (the corresponding percentiles of the distribution).

darkMatterHaloSplashbackRadiusDiemerKravtsov2014

A splashback radius class which uses the truncation radius of the outer density profile of Diemer and Kravtsov (2014), given by their equation (6),

\[{R_\mathrm{t} \over R_\mathrm{200m}} = \alpha - \beta \nu,\]

where \(\alpha=\)[alpha], \(\beta=\)[beta], and \(\nu\) is the peak height computed from \(M_\mathrm{200m}\).

Note that this is not a splashback radius. \(R_\mathrm{t}\) is a fitting parameter of the Diemer and Kravtsov (2014) outer density profile which controls where that profile steepens; it correlates with, but is not equal to, the splashback radius. It is provided by this class both because it is the quantity historically used by the accretion flow mass distribution classes in Galacticus, and because it is a useful point of comparison for the models which do predict a true splashback radius. For physical applications prefer darkMatterHaloSplashbackRadiusDiemer2020.

Since this model makes no prediction for the splashback mass, or for the scatter in either quantity, attempting to evaluate those will result in an error.

Methods

propertiesGet

Return the properties of the halo needed to evaluate the truncation radius.

  • type(treeNode) node [inout]

  • double precision peakHeight [out]

  • double precision radius200Mean [out]

  • class(massDistributionClass) massDistribution_ (optional) [inout]

Parameters

  • [alpha] (real; default 1.90d0) — The parameter \(\alpha\) in the truncation radius \(R_\mathrm{t}/R_\mathrm{200m} = \alpha - \beta \nu\) of Diemer and Kravtsov (2014). Default from: Diemer and Kravtsov (2014), equation (6).

  • [beta] (real; default 0.18d0) — The parameter \(\beta\) in the truncation radius \(R_\mathrm{t}/R_\mathrm{200m} = \alpha - \beta \nu\) of Diemer and Kravtsov (2014). Default from: Diemer and Kravtsov (2014), equation (6).

darkMatterHaloSplashbackRadiusShi2016

A splashback radius class implementing the fitting functions of Shi (2016), which are calibrated against the self-similar spherical collapse solution for the accretion flow around a halo. Specifically,

\[{R_\mathrm{sp} \over R_\mathrm{200m}} = \exp\left[ \left( 0.24 + 0.074 \ln s \right) \ln \Omega_\mathrm{M} + 0.55 - 0.15 s \right],\]

and the mean overdensity enclosed by the splashback radius is

\[\Delta_\mathrm{sp} = 33 \Omega_\mathrm{M}^{-0.45} \exp\left[ \left( 0.88 - 0.14 \ln \Omega_\mathrm{M} \right) s^{0.6} \right],\]

from which the splashback mass follows as \(M_\mathrm{sp}/M_\mathrm{200m} = (\Delta_\mathrm{sp}/200) (R_\mathrm{sp}/R_\mathrm{200m})^3\). Here \(s = \mathrm{d}\log M / \mathrm{d}\log a\) is the instantaneous mass accretion rate—note that this differs from the \(\Gamma_\mathrm{dyn}\) averaged over a dynamical time which is used by the darkMatterHaloSplashbackRadiusDiemer2017 and darkMatterHaloSplashbackRadiusDiemer2020 classes.

These fitting functions were calibrated over the range \(0.5 \le s \le 5\); results outside of that range should be treated as extrapolations. This class makes no prediction for the scatter in \(R_\mathrm{sp}\) or \(M_\mathrm{sp}\), so attempting to evaluate those will result in an error.

Methods

propertiesGet

Return the properties of the halo needed to evaluate the splashback fitting functions.

  • type(treeNode) node [inout]

  • double precision accretionRate [out]

  • double precision omegaMatter [out]

  • double precision radius200Mean [out]

  • double precision mass200Mean [out]

  • class(massDistributionClass) massDistribution_ (optional) [inout]