hmfast.tracers.kSZTracer
- class hmfast.tracers.kSZTracer(profile=None)[source]
Bases:
Tracerkinetic Sunyaev-Zeldovich effect tracer.
- Attributes:
- profileDensityProfile
Electron density profile used to model the kinetic Sunyaev-Zeldovich signal.
Methods
kernel(cosmology, z)Compute the kSZ kernel \(W_{\mathrm{kSZ}}(z)\) at redshift \(z\).
update([profile])Return a new kSZTracer instance with updated attributes using PyTree logic.
- update(profile=None)[source]
Return a new kSZTracer instance with updated attributes using PyTree logic.
- Parameters:
- profileDensityProfile, optional
New density profile to use for the tracer. If None, the profile is unchanged.
- Returns:
- kSZTracer
New tracer instance with updated attributes.
- kernel(cosmology, z)[source]
Compute the kSZ kernel \(W_{\mathrm{kSZ}}(z)\) at redshift \(z\).
The kernel is given by:
\[W_{\mathrm{kSZ}}(\chi) = \frac{\sigma_T}{m_p} \frac{v_{\mathrm{rms}}(z)}{1+z}\]where \(\sigma_T\) is the Thomson cross-section, \(m_p\) is the proton mass, and \(z\) is the redshift. The velocity dispersion \(v_{\mathrm{rms}}(z)\) is computed from the given cosmology.
- Parameters:
- cosmologyCosmology
Cosmology object with required methods and parameters.
- zfloat or array_like
Redshift(s) at which to compute the kernel.
- Returns:
- W_kszarray_like
kSZ kernel evaluated at redshift(s) \(z\).