Halo Bias¶
Halo bias quantifies the excess clustering of halos over the clustering of dark matter. Bias is, in general, a function of halo mass and scale, but this module currently implements only scalefree bias models.
Basics¶
Bias can be evaluated as a function of either mass or peak height. The parameters that need to be passed depend on the bias model to some degree, and on whether the mass needs to be converted to peak height first:
from colossus.lss import peaks
from colossus.lss import bias
M = 1E14
z = 0.0
nu = peaks.peakHeight(M, z)
b = bias.haloBiasFromNu(nu, model = 'sheth01')
b = bias.haloBias(M, model = 'tinker10', z = z, mdef = 'vir')
Please see the Tutorials for more extensive code examples.
Bias models¶
The simplest bias model (cole89
) is based on the peakbackground split model and was derived in a
number of different papers. The rest of the models was calibrated using numerical simulations:
ID  Parameters  zdependence  Reference 

cole89  M/nu  No  Cole & Kaiser 1989, Mo & White 1996 
jing98  M/nu, z  Through nonlinear mass  Jing 1998 
sheth01  M/nu  No  Sheth et al. 2001 
seljak04  M/nu, z  Through nonlinear mass  Seljak & Warren 2004 
pillepich10  M/nu  No  Pillepich et al. 2010 
tinker10  M/nu, z, mdef  Through mass definition  Tinker et al. 2010 
bhattacharya11  M/nu, z  Yes  Bhattacharya et al. 2011 
comparat17  M/nu  No  Comparat et al. 2017 
The zdependence column indicates whether a model predicts a bias that varies with redshift at fixed peak height. At fixed mass, all models predict a strongly varying bias. The Tinker et al. 2010 model was calibrated for a range of overdensities with respect to the mean density of the universe. Thus, depending on the mass definition used, this model can predict a slight redshift evolution.
Module contents¶
HaloBiasModel () 
Characteristics of halo bias models. 
models 
Dictionary containing a list of models. 
haloBias (M, z[, mdef, model]) 
The halo bias at a given mass. 
haloBiasFromNu (nu[, z, mdef, model]) 
The halo bias at a given peak height. 
twoHaloTerm (r, M, z, mdef[, model]) 
The 2halo term as a function of radius and halo mass. 
modelCole89 (nu) 
The peakbackground split prediction for halo bias. 
modelJing98 (nu, z) 
A bias model calibrated on scalefree simulations. 
modelSheth01 (nu) 
The halo bias model of Sheth et al 2001. 
modelSeljak04 (nu, z[, cosmo_term]) 
A numerically calibrated bias model. 
modelPillepich10 (nu) 
The halo bias model of Pillepich et al 2010. 
modelTinker10 (nu, z, mdef) 
The halo bias model of Tinker et al 2010. 
modelBhattacharya11 (nu, z) 
A bias model based on a mass function calibration. 
modelComparat17 (nu) 
A bias model based on a mass function calibration. 
Module reference¶

class
lss.bias.
HaloBiasModel
¶ Characteristics of halo bias models.
This object contains certain characteristics of a halo bias model. Currently, this object is empty. The
models
dictionary contains one item of this class for each available model.

lss.bias.
models
= {'bhattacharya11': <lss.bias.HaloBiasModel object at 0x11a48f240>, 'cole89': <lss.bias.HaloBiasModel object at 0x11a48f5c0>, 'comparat17': <lss.bias.HaloBiasModel object at 0x11abbb630>, 'jing98': <lss.bias.HaloBiasModel object at 0x11a48f518>, 'pillepich10': <lss.bias.HaloBiasModel object at 0x11a48fc88>, 'seljak04': <lss.bias.HaloBiasModel object at 0x11a48f978>, 'sheth01': <lss.bias.HaloBiasModel object at 0x11a48f208>, 'tinker10': <lss.bias.HaloBiasModel object at 0x11a48ff60>}¶ Dictionary containing a list of models.
An ordered dictionary containing one
HaloBiasModel
entry for each model.

lss.bias.
haloBiasFromNu
(nu, z=None, mdef=None, model='tinker10', **kwargs)¶ The halo bias at a given peak height.
Redshift and mass definition are necessary only for particular models (see table above).
Parameters:  nu: array_like
Peak height; can be a number or a numpy array.
 z: array_like
Redshift; can be a number or a numpy array. Only necessary for certain models.
 mdef: str
The mass definition corresponding to the mass that was used to evaluate the peak height. Only necessary for certain models. See Halo Mass Definitions for details.
 model: str
The bias model used.
 kwargs: kwargs
Extra arguments passed to the function of the particular model. See the documentation of those functions for valid arguments.
Returns:  bias: array_like
Halo bias; has the same dimensions as
nu
orz
.
See also
haloBias
 The halo bias at a given mass.

lss.bias.
haloBias
(M, z, mdef=None, model='tinker10', **kwargs)¶ The halo bias at a given mass.
This function is a wrapper around
haloBiasFromNu()
. The mass definition is necessary only for certain models whereas the redshift is always necessary in order to convert mass to peak height.Parameters:  M: array_like
Halo mass in \(M_{\odot}/h\); can be a number or a numpy array.
 z: array_like
Redshift; can be a number or a numpy array.
 mdef: str
The mass definition in which
M
is given. Only necessary for certain models. See Halo Mass Definitions for details. model: str
The bias model used.
 kwargs: kwargs
Extra arguments passed to the function of the particular model. See the documentation of those functions for valid arguments.
Returns:  bias: array_like
Halo bias; has the same dimensions as
M
orz
.
See also
haloBiasFromNu
 The halo bias at a given peak height.

lss.bias.
twoHaloTerm
(r, M, z, mdef, model='tinker10')¶ The 2halo term as a function of radius and halo mass.
The 2halo term in the halomatter correlation function describes the excess density around halos due to the proximity of other peaks. This contribution can be approximated as the matter matter correlation function times a linear bias which depends on the peak height of the halo. Sometimes this term includes an additional factor of the mean density which is omitted here.
Note that this 2halo term is also implemented as an outer profile in the Colossus halo module, see the documentation of
halo.profile_outer
.Parameters:  r: array_like
Halocentric radius in comoving Mpc/h; can be a number or a numpy array.
 M: float
Halo mass in \(M_{\odot}/h\)
 z: float
Redshift
 mdef: str
The mass definition in which
M
is given. See Halo Mass Definitions for details. model: str
The bias model used.
Returns:  rho_2h: array_like
The density due to the 2halo term in physical \(M_{\odot}h^2/{\rm kpc}^3\); has the same dimensions as
r
.

lss.bias.
modelCole89
(nu)¶ The peakbackground split prediction for halo bias.
For a derivation of this model, see Cole & Kaiser 1989 or Mo & White 1996.
Parameters:  nu: array_like
Peak height; can be a number or a numpy array.
Returns:  bias: array_like
Halo bias; has the same dimensions as
nu
.

lss.bias.
modelJing98
(nu, z)¶ A bias model calibrated on scalefree simulations.
This bias model relies on the slope of the power spectrum. It was calibrated on scalefree simulations with a powerlaw power spectrum, but is also applicable to LCDM cosmologies. Note that in the original notation, the peak height is only valid for scalefree models, but it is stated in Section 3 that one should use the properly defined peak height for CDM cosmologies.
Moreover, we use the zerobaryon approximation to the power spectrum of Eisenstein & Hu to avoid wiggles in the slope.
Parameters:  nu: array_like
Peak height; can be a number or a numpy array.
 z: float
Redshift.
Returns:  bias: array_like
Halo bias; has the same dimensions as
nu
.

lss.bias.
modelSheth01
(nu)¶ The halo bias model of Sheth et al 2001.
Parameters:  nu: array_like
Peak height; can be a number or a numpy array.
Returns:  bias: array_like
Halo bias; has the same dimensions as
nu
.

lss.bias.
modelSeljak04
(nu, z, cosmo_term=False)¶ A numerically calibrated bias model.
This bias model corresponds to Equation 5 in Seljak & Warren 2004. If
cosmo_term == True
, Equation 6 is used. Colossus currently does not implement a running of the spectral index, the corresponding parameter \(\alpha_{\rm s}\) is thus set to zero.Parameters:  nu: array_like
Peak height; can be a number or a numpy array.
 z: float
Redshift.
 cosmo_term: bool
Include the cosmological term of Equation 6.
Returns:  bias: array_like
Halo bias; has the same dimensions as
nu
.

lss.bias.
modelPillepich10
(nu)¶ The halo bias model of Pillepich et al 2010.
Parameters:  nu: array_like
Peak height; can be a number or a numpy array.
Returns:  bias: array_like
Halo bias; has the same dimensions as
nu
.

lss.bias.
modelTinker10
(nu, z, mdef)¶ The halo bias model of Tinker et al 2010.
The mass definition
mdef
must correspond to the mass that was used to evaluate the peak height. Note that the Tinker bias function is universal in redshift at fixed peak height, but only for mass definitions defined wrt. the mean density of the universe. For other definitions, \(\Delta_{\rm m}\) evolves with redshift, leading to an evolving bias at fixed peak height.Parameters:  nu: array_like
Peak height; can be a number or a numpy array.
 z: array_like
Redshift; can be a number or a numpy array.
 mdef: str
The mass definition. See Halo Mass Definitions for details.
Returns:  bias: array_like
Halo bias; has the same dimensions as
nu
orz
.

lss.bias.
modelBhattacharya11
(nu, z)¶ A bias model based on a mass function calibration.
This bias model is derived using the peakbackground split logic of Sheth & Tormen 1999, but with the updated and zdependent bestfit parameters derived for the mass function. The authors note that this bias function does not match the numerical results as well as direct calibrations.
Parameters:  nu: array_like
Peak height; can be a number or a numpy array.
 z: float
Redshift.
Returns:  bias: array_like
Halo bias; has the same dimensions as
nu
.

lss.bias.
modelComparat17
(nu)¶ A bias model based on a mass function calibration.
This model is equivalent to the Bhattacharya et al 2011 model in that it uses the same functional form and that its bestfit parameters are derived from a fit to the mass function rather than bias itself. However, this model does not depend on redshift. The parameters used here are updated compared to the published version of the paper.
Parameters:  nu: array_like
Peak height; can be a number or a numpy array.
Returns:  bias: array_like
Halo bias; has the same dimensions as
nu
.