hmf.halos.mass_definitions.SOVirial.change_definition

SOVirial.change_definition(m: numpy.ndarray, mdef, profile=None, c=None, z=0, cosmo=FlatLambdaCDM(name="Planck15", H0=67.7 km / (Mpc s), Om0=0.307, Tcmb0=2.725 K, Neff=3.05, m_nu=[0.   0.   0.06] eV, Ob0=0.0486))

Change the spherical overdensity mass definition.

This requires using a profile, for which the halomod package must be used.

Parameters
  • m (float or array_like) – The halo mass to be changed, in \(M_\odot/h\). Must be broadcastable with c, if provided.

  • mdef (MassDefinition subclass instance) – The mass definition to which to change.

  • profile (halomod.profiles.Profile instance, optional) – An instantiated profile object from which to calculate the expected definition change. If not provided, a mocked NFW profile is used.

  • c (float or array_like, optional) – The concentration(s) of the halos given. If not given, the concentrations will be automatically calculated using the profile object.

Returns

  • m_f (float or array_like) – The masses of the halos in the new definition.

  • r_f (float or array_like) – The radii of the halos in the new definition.

  • c_f (float or array_like) – The concentrations of the halos in the new definition.