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 

jing98 
M/nu, z 
Through nonlinear mass 

sheth01 
M/nu 
No 

seljak04 
M/nu, z 
Through nonlinear mass 

pillepich10 
M/nu 
No 

tinker10 
M/nu, z, mdef 
Through mass definition 

bhattacharya11 
M/nu, z 
Yes 

comparat17 
M/nu 
No 
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
Characteristics of halo bias models. 

Dictionary containing a list of models. 


The halo bias at a given mass. 

The halo bias at a given peak height. 

The 2halo term as a function of radius and halo mass. 

The peakbackground split prediction for halo bias. 

A bias model calibrated on scalefree simulations. 

The halo bias model of Sheth et al 2001. 

A numerically calibrated bias model. 

The halo bias model of Pillepich et al 2010. 

The halo bias model of Tinker et al 2010. 

A bias model based on a mass function calibration. 

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>, 'cole89': <lss.bias.HaloBiasModel object>, 'comparat17': <lss.bias.HaloBiasModel object>, 'jing98': <lss.bias.HaloBiasModel object>, 'pillepich10': <lss.bias.HaloBiasModel object>, 'seljak04': <lss.bias.HaloBiasModel object>, 'sheth01': <lss.bias.HaloBiasModel object>, 'tinker10': <lss.bias.HaloBiasModel object>}
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
.