holodeck.sams.comps
Semi-Analytic Model - Components
This module provides the key building blocks for the holodeck SAMs. In particular, the:
Galaxy Stellar-Mass Function (GSMF) : number-density of galaxies as a function of stellar mass;
Galaxy Merger Rate (GMR) : rate of galaxy mergers per galaxy;
Galaxy Pair Fraction (GPF) : fraction of galaxy pairs, relative to all galaxies;
Galaxy Merger Time (GMT) : duration over which galaxy pairs are observable as pairs.
For more information see the holodeck.sams module, or the SAMs getting-started guide.
References
[Sesana2008] Sesana, Vecchio, Colacino 2008.
- [Rodriguez-Gomez2015] Rodriguez-Gomez, Genel, Vogelsberger, et al. 2015
The merger rate of galaxies in the Illustris simulation: a comparison with observations and semi-empirical models https://ui.adsabs.harvard.edu/abs/2015MNRAS.449…49R/abstract
[Chen2019] Chen, Sesana, Conselice 2019.
- [Leja2020] Leja, Speagle, Johnson, et al. 2020.
A New Census of the 0.2 < z < 3.0 Universe. I. The Stellar Mass Function https://ui.adsabs.harvard.edu/abs/2020ApJ…893..111L/abstract
- class holodeck.sams.comps._Galaxy_Stellar_Mass_Function(*args, **kwargs)[source]
Galaxy Stellar-Mass Function base-class. Used to calculate number-density of galaxies.
- mbh_mass_func(mbh, redz, mmbulge, scatter=None)[source]
Convert from the GSMF to a MBH mass function (number density), using a given Mbh-Mbulge relation.
- Parameters:
mbh (array_like) – Blackhole masses at which to evaluate the mass function.
redz (array_like) – Redshift(s) at which to evaluate the mass function.
mmbulge (relations._MMBulge_Relation subclass instance) – Scaling relation between galaxy and MBH masses.
scatter (None, bool, or float) – Introduce scatter in masses. * None or True : use the value from mmbulge._scatter_dex * False : do not introduce scatter * float : introduce scatter with this amplitude (in dex)
- Returns:
ndens – Number density of MBHs, in units of [Mpc^-3]
- Return type:
array_like
- class holodeck.sams.comps.GSMF_Schechter(phi0=-2.77, phiz=-0.27, mchar0_log10=11.24, mchar0=None, mcharz=0.0, alpha0=-1.24, alphaz=-0.03)[source]
Single Schechter Function - Galaxy Stellar Mass Function.
This is density per unit log10-interval of stellar mass, i.e. \(\Phi = dn / d\log_{10}(M)\)
See: [Chen2019] Eq.9 and enclosing section.
- _phi_func(redz)[source]
See: [Chen2019] Eq.9
- _mchar_func(redz)[source]
See: [Chen2019] Eq.10 - NOTE: added redz term
- _alpha_func(redz)[source]
See: [Chen2019] Eq.11
- class holodeck.sams.comps._GSMF_Single_Schechter(log10_phi_terms, log10_mstar_terms, alpha)[source]
Schechter function, with parameters as quadratics with respect to redshift.
Parameterization follows [Leja2020] and is primarily for use in the
GSMF_Double_Schechterclass. From [Leja2020] Eq.14:\[\frac{\partial n}{\partial \log_{10} \! M} = \ln(10) \phi \left(\frac{M}{M_\star}\right)^{\alpha+1} \exp[-M/M_\star].\]The power-law index \(\alpha\) is a scalar value, while the reference mass \(M_\star\), and the normalization \(\phi\) are defined as quadratics with respect to redshift:
\[\begin{split}\log_{10}(\phi) & = a_0 + a_1 z + a_2 z^2, \\ \log_{10}(M_\star) & = b_0 + b_1 z + b_2 z^2.\end{split}\]Class instances are callable, see
__call__(), and return galaxy number densities in units of \([\mathrm{Mpc}^{-3} \, \mathrm{dex}^{-1}]\).- _log10_phi_terms
these are the \(a_i\) terms in the defintion.
- _log10_mstar_terms
these are the \(b_i\) terms.
- _alpha
power-law index
- class holodeck.sams.comps.GSMF_Double_Schechter(phi1=[-2.383, -0.264, -0.107], phi2=[-2.818, -0.368, 0.046], mstar=[10.767, 0.124, -0.033], alpha1=-0.28, alpha2=-1.48)[source]
Sum of two Schechter functions, each parameterized as quadratics in redshift.
For each Schechter Function (
_GSMF_Single_Schechter), the normalizations (\(\phi\)) and characteristic masses (\(M_\star\)) are parameterized as quadratics with respect to redshift.Each Schechter function is parameterized as,
\[\begin{split}\frac{\partial n}{\partial \log_{10} \! M} & = \ln(10) \, \phi \cdot \left(\frac{M}{M_\star}\right)^{\alpha+1} \exp[-M/M_\star], \\ \log_{10}(\phi) & = a_0 + a_1 z + a_2 z^2, \\ \log_{10}(M_\star) & = b_0 + b_1 z + b_2 z^2.\end{split}\]The parameters for \(\phi\) and \(\alpha\) are different for the two functions, while the parameters for \(M_\star\) are shared (i.e. the same characteristic mass is used for both). Default parameters are the best fits from [Leja2020]. With uncertainties, these are:
phi_1: [ -2.383 ± 0.027, -0.264 ± 0.071, -0.107 ± 0.030], phi_2: [ -2.818 ± 0.050, -0.368 ± 0.070, +0.046 ± 0.020], M_star: [+10.767 ± 0.026, +0.124 ± 0.045, -0.033 ± 0.015].
- class holodeck.sams.comps._Galaxy_Merger_Rate(*args, **kwargs)[source]
Galaxy Merger Rate base class, used to model merger rates of galaxy pairs.
- class holodeck.sams.comps.GMR_Power_Law(norm0_log10=None, normz=None, malpha0=None, malphaz=None, mdelta0=None, mdeltaz=None, qgamma0=None, qgammaz=None)[source]
Galaxy Merger Rate - based on multiple power-laws.
See [Rodriguez-Gomez2015], Table 1. “merger rate as a function of descendant stellar mass M_star, progenitor stellar mass ratio mu_star”
- class holodeck.sams.comps.GMR_Illustris(norm0_log10=None, normz=None, malpha0=None, malphaz=None, mdelta0=None, mdeltaz=None, qgamma0=None, qgammaz=None, qgammam=None)[source]
Galaxy Merger Rate - based on fits to Illustris cosmological simulations.
See [Rodriguez-Gomez2015], Table 1. “merger rate as a function of descendant stellar mass M_star, progenitor stellar mass ratio mu_star”
- class holodeck.sams.comps._Galaxy_Pair_Fraction(*args, **kwargs)[source]
Galaxy Pair Fraction base class, used to describe the fraction of galaxies in mergers/pairs.
- class holodeck.sams.comps.GPF_Power_Law(frac_norm_allq=0.025, frac_norm=None, mref=None, mref_log10=11.0, malpha=0.0, zbeta=0.8, qgamma=0.0, obs_conv_qlo=0.25, max_frac=1.0)[source]
Galaxy Pair Fraction - Single Power-Law