hmfast.tracers.CMBLensingTracer

class hmfast.tracers.CMBLensingTracer(profile=None)[source]

Bases: Tracer

CMB weak lensing tracer.

Attributes:
profileMatterProfile

Matter profile used to model the CMB lensing convergence signal.

Methods

kernel(cosmology, z)

Compute the CMB lensing kernel \(W_{\kappa,\mathrm{cmb}}(z)\) at redshift \(z\).

update([profile])

Return a new CMBLensingTracer instance with updated attributes using PyTree logic.

update(profile=None)[source]

Return a new CMBLensingTracer instance with updated attributes using PyTree logic.

Parameters:
profileMatterProfile, optional

New matter profile to use for the tracer. If None, the profile is unchanged.

Returns:
CMBLensingTracer

New tracer instance with updated attributes.

kernel(cosmology, z)[source]

Compute the CMB lensing kernel \(W_{\kappa,\mathrm{cmb}}(z)\) at redshift \(z\).

The kernel is given by:

\[W_{\kappa_{\mathrm{CMB}}}(z) = \frac{3}{2} \Omega_m \left(\frac{H_0}{c}\right)^2 \frac{(1+z)}{\chi(z)} \frac{\chi_* - \chi(z)}{\chi_*}\]

where \(\chi_*\) is the comoving distance to the last scattering surface.

Parameters:
cosmologyCosmology

Cosmology object with required methods and parameters.

zfloat or array_like

Redshift(s) at which to compute the kernel.

Returns:
W_kappa_cmbarray_like

CMB lensing kernel evaluated at redshift(s) \(z\).