.. _physics-conditionalMassFunction: Conditional Mass Function ========================= Class providing empirical models of the conditional stellar mass function (CSMF)---the mean number of galaxies :math:`\langle N(M_\star|M_\mathrm{halo})\rangle` of stellar mass :math:`M_\star` hosted by a dark matter halo of mass :math:`M_\mathrm{halo}`, separately for central and satellite galaxies. The CSMF is the key ingredient of halo occupation distribution (HOD) and stellar-to-halo mass relation (SHMR) models used to populate :math:`N`-body simulations with galaxies and to interpret galaxy clustering observations without running a full semi-analytic model. **Default implementation:** ``conditionalMassFunctionBehroozi2010`` Methods ------- ``massFunction`` → ``double precision`` Return the cumulative conditional mass function, :math:`\langle N(M_\star|M_\mathrm{halo}) \rangle \equiv \phi(M_\star|M_\mathrm{halo})`. * ``double precision , intent(in ) :: massHalo , mass`` * ``type (enumerationHaloModelGalaxyTypeType), intent(in ), optional :: galaxyType`` ``massFunctionVariance`` → ``double precision`` Return the variance in the cumulative conditional mass function, :math:`\langle N(M_\star|M_\mathrm{halo}) \rangle \equiv \phi(M_\star|M_\mathrm{halo})`. * ``double precision, intent(in ) :: massHalo,massLow,massHigh`` .. _physics-conditionalMassFunctionBehroozi2010: ``conditionalMassFunctionBehroozi2010`` --------------------------------------- A conditional mass function class which implements the fitting functions of :cite:t:`behroozi_comprehensive_2010`: .. math:: \langle N_\mathrm{c}(M_\star|M)\rangle \equiv \int_{M_\star}^\infty \phi_\mathrm{c}(M_\star^\prime) \d \ln M_\star^\prime = {1 \over 2} \left[ 1 - \hbox{erf}\left( {\log_{10}M_\star - \log_{10} f_\mathrm{SHMR}(M) \over \sqrt{2}\sigma_{\log M_\star}} \right) \right]. Here, the function :math:`f_\mathrm{SHMR}(M)` is the solution of .. math:: \log_{10}M = \log_{10}M_1 + \beta \log_{10}\left({M_\star \over M_{\star,0}}\right) + {(M_\star/M_{\star,0})^\delta \over 1 + (M_\star/M_{\star,0})^{-\gamma}} - {1/2}. For satellites, .. math:: \langle N_\mathrm{s}(M_\star|M)\rangle \equiv \int_{M_\star}^\infty \phi_\mathrm{s}(M_\star^\prime) \d \ln M_\star^\prime = \langle N_\mathrm{c}(M_\star|M)\rangle \left({f^{-1}_\mathrm{SHMR}(M_\star) \over M_\mathrm{sat}}\right)^{\alpha_\mathrm{sat}} \exp\left(- {M_\mathrm{cut} \over f^{-1}_\mathrm{SHMR}(M_\star)} \right), where .. math:: {M_\mathrm{sat} \over 10^{12} \mathrm{M}_\odot} = B_\mathrm{sat} \left({f^{-1}_\mathrm{SHMR}(M_\star) \over 10^{12} \mathrm{M}_\odot}\right)^{\beta_\mathrm{sat}}, and .. math:: {M_\mathrm{cut} \over 10^{12} \mathrm{M}_\odot} = B_\mathrm{cut} \left({f^{-1}_\mathrm{SHMR}(M_\star) \over 10^{12} \mathrm{M}_\odot}\right)^{\beta_\mathrm{cut}}. By default, parameter values are taken from the fit of :cite:t:`leauthaud_new_2011`, specifically their ``SIG_MOD1`` method for their :math:`z_1` sample. These default values, and the Galacticus input parameters which can be used to adjust them are shown in Table :numref:`{number} `. This method assumes that :math:`P_\mathrm{s}(N|M_\star,M;\delta \ln M_\star)` is a Poisson distribution while :math:`P_\mathrm{c}(N|M_\star,M;\delta \ln M_\star)` has a Bernoulli distribution, with each distribution's free parameter fixed by requiring .. math:: \phi(M_\star;M) \delta \ln M_\star = \sum_{N=0}^\infty N P(N|M_\star,M;\delta \ln M_\star) .. list-table:: Parameters of the :cite:t:`behroozi_comprehensive_2010` conditional stellar mass function model, along with their default values and the corresponding Galacticus input parameters. :name: table-Behroozi2010FitParameters :header-rows: 1 * - Parameter - Default - Galacticus name * - :math:`\alpha_\mathrm{sat}` - 1.0 - ``[conditionalStellarMassFunctionBehrooziAlphaSatellite]`` * - :math:`\log_{10} M_1` - 12.520 - ``[conditionalStellarMassFunctionBehrooziLog10M1]`` * - :math:`\log_{10} M_{\star,0}` - 10.916 - ``[conditionalStellarMassFunctionBehrooziLog10Mstar0]`` * - :math:`\beta` - 0.457 - ``[conditionalStellarMassFunctionBehrooziBeta]`` * - :math:`\delta` - 0.5666 - ``[conditionalStellarMassFunctionBehrooziDelta]`` * - :math:`\gamma` - 1.53 - ``[conditionalStellarMassFunctionBehrooziGamma]`` * - :math:`\sigma_{\log M_\star}` - 0.206 - ``[conditionalStellarMassFunctionBehrooziSigmaLogMstar]`` * - :math:`B_\mathrm{cut}` - 1.47 - ``[conditionalStellarMassFunctionBehrooziBCut]`` * - :math:`B_\mathrm{sat}` - 10.62 - ``[conditionalStellarMassFunctionBehrooziBSatellite]`` * - :math:`\beta_\mathrm{cut}` - :math:`-`\ 0.13 - ``[conditionalStellarMassFunctionBehrooziBetaCut]`` * - :math:`\beta_\mathrm{sat}` - 0.859 - ``[conditionalStellarMassFunctionBehrooziBetaSatellite]`` **(Default implementation)** **Methods** * ``compute`` — Compute the cumulative conditional mass function, :math:`\langle N(M_\star|M_\mathrm{halo}) \rangle \equiv \phi(M_\star|M_\mathrm{halo})`. **Parameters** * ``[alphaSatellite]`` (default ``1.0d0``) — The parameter :math:`\alpha_\mathrm{sat}` from the fitting functions of :cite:t:`behroozi_comprehensive_2010`. * ``[log10M1]`` (default ``12.520d0``) — The parameter :math:`\log_{10}M_1` from the fitting functions of :cite:t:`behroozi_comprehensive_2010`. * ``[log10Mstar0]`` (default ``10.916d0``) — The parameter :math:`\log_{10}M_{\star,0}` from the fitting functions of :cite:t:`behroozi_comprehensive_2010`. * ``[beta]`` (default ``0.457d0``) — The parameter :math:`\beta` from the fitting functions of :cite:t:`behroozi_comprehensive_2010`. * ``[delta]`` (default ``0.5666d0``) — The parameter :math:`\delta` from the fitting functions of :cite:t:`behroozi_comprehensive_2010`. * ``[gamma]`` (default ``1.53d0``) — The parameter :math:`\gamma` from the fitting functions of :cite:t:`behroozi_comprehensive_2010`. * ``[sigmaLogMstar]`` (default ``0.206d0``) — The parameter :math:`\sigma_{\log M_\star}` from the fitting functions of :cite:t:`behroozi_comprehensive_2010`. * ``[BCut]`` (default ``1.47d0``) — The parameter :math:`B_\mathrm{cut}` from the fitting functions of :cite:t:`behroozi_comprehensive_2010`. * ``[BSatellite]`` (default ``10.62d0``) — The parameter :math:`B_\mathrm{sat}` from the fitting functions of :cite:t:`behroozi_comprehensive_2010`. * ``[betaCut]`` (default ``-0.13d0``) — The parameter :math:`\beta_\mathrm{cut}` from the fitting functions of :cite:t:`behroozi_comprehensive_2010`. * ``[betaSatellite]`` (default ``0.859d0``) — The parameter :math:`\beta_\mathrm{sat}` from the fitting functions of :cite:t:`behroozi_comprehensive_2010`.