Source code for halotools.empirical_models.composite_models.smhm_models.behroozi10

"""
Module containing the subhalo-based composite model
based on the Behroozi et al. (2010) stellar-to-halo-mass relation.
"""
from __future__ import division, print_function, absolute_import, unicode_literals

from ...smhm_models import Behroozi10SmHm

from ....sim_manager import sim_defaults

__all__ = ['behroozi10_model_dictionary']


[docs] def behroozi10_model_dictionary(redshift=sim_defaults.default_redshift, **kwargs): """ Dictionary that can be passed to the `~halotools.empirical_models.SubhaloModelFactory` to build a subhalo-based composite model using the stellar-to-halo-mass relation published in Behroozi et al. (2010), `arXiv:1205.5807 <http://arxiv.org/abs/astro-ph/1205.5807/>`_. For a tutorial on this composite model, see :ref:`behroozi10_composite_model`. Parameters ---------- redshift : float, optional Redshift of the stellar-to-halo-mass relation of the model. Must be consistent with the redshift of the halo catalog you populate. Default value is set in the `~halotools.sim_manager.sim_defaults` by the ``default_redshift`` variable. prim_haloprop_key : string, optional String giving the column name of the primary halo property governing stellar mass. Default is set in the `~halotools.empirical_models.model_defaults` module by the ``default_smhm_haloprop`` variable. scatter_model : object, optional Class governing stochasticity of stellar mass. Default scatter is log-normal, implemented by the `~halotools.empirical_models.LogNormalScatterModel` class. scatter_abscissa : array_like, optional Array of values giving the abscissa at which the level of scatter will be specified by the input ordinates. Default behavior will result in constant scatter at a level set in the `~halotools.empirical_models.model_defaults` module by the ``default_smhm_scatter`` variable. scatter_ordinates : array_like, optional Array of values defining the level of scatter at the input abscissa. Default behavior will result in constant scatter at a level set in the `~halotools.empirical_models.model_defaults` module by the ``default_smhm_scatter`` variable. Examples -------- Calling the `behroozi10_model_dictionary` with no arguments retrieves a python dictionary that can be passed to the `~halotools.empirical_models.SubhaloModelFactory` to build the `behroozi10` composite model with default settings: >>> from halotools.empirical_models import SubhaloModelFactory >>> model_dictionary = behroozi10_model_dictionary() >>> model_instance = SubhaloModelFactory(**model_dictionary) As with all instances of the `~halotools.empirical_models.PrebuiltHodModelFactory`, you can populate a mock by passing the model a halo catalog: >>> from halotools.sim_manager import FakeSim >>> halocat = FakeSim(redshift = model_instance.redshift) >>> model_instance.populate_mock(halocat) """ stellar_mass_model = Behroozi10SmHm(redshift=redshift, **kwargs) return {'stellar_mass': stellar_mass_model}