cacciato09_model_dictionary¶
- halotools.empirical_models.cacciato09_model_dictionary(threshold=10, **kwargs)[source]¶
Dictionary to build an CLF-style model based on Cacciato et al. (2009), arXiv:0807.4932. The behavior of this model is governed by a conditional luminosity function (CLF). See Cacciato et al. (2009) Composite Model for a tutorial on this model.
There are two populations, centrals and satellites. Central occupation statistics are given by a nearest integer distribution; the class governing this behavior is
Cacciato09Cens
. Central galaxies are assumed to reside at the exact center of the host halo; the class governing this behavior isTrivialPhaseSpace
.Satellite occupation statistics are given by a Poisson distribution with first moment given by a power law with an exponential cut-off at the high-luminosity end; the class governing this behavior is
Cacciato09Sats
; satellites in this model follow an (unbiased) NFW profile, as governed by theNFWPhaseSpace
class.This composite model is built by the
HodModelFactory
.- Parameters:
- thresholdfloat, optional
Logarithm of the primary galaxy property threshold. If the primary galaxy property is luminosity, it is given in h=1 solar luminosity units.
- concentration_binningtuple, optional
Three-element tuple. The first entry will be the minimum value of the concentration in the lookup table for the satellite NFW profile, the second entry the maximum, the third entry the linear spacing of the grid. Default is set in
model_defaults
. If high-precision is not required, the lookup tables will build much faster ifconcentration_binning
is set to (1, 25, 0.5).
- Returns:
- model_dictionarydict
Dictionary passed to
HodModelFactory
Examples
>>> from halotools.empirical_models import HodModelFactory >>> model_dictionary = cacciato09_model_dictionary() >>> model_instance = HodModelFactory(**model_dictionary)
The default settings are set in the
model_defaults
module. To load a model based on a different threshold and redshift:>>> model_dictionary = cacciato09_model_dictionary(threshold = 11, redshift = 1) >>> model_instance = HodModelFactory(**model_dictionary)
For this model, you can also use the following syntax candy, which accomplishes the same task as the above:
>>> from halotools.empirical_models import PrebuiltHodModelFactory >>> model_instance = PrebuiltHodModelFactory('cacciato09', threshold = 11, redshift = 1)
As with all instances of the
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)