alm2cl*

This routine computes the auto (or cross) power spectra of a one (or two) sets of spherical harmonics coefficients $a_{\ell m}$,

$\displaystyle C_{12}^{XY}(\ell) = \frac{1}{2 \ell +1}
\sum_{m=-\ell}^{\ell} a_{1,\ell m}^X
a_{2,\ell m}^{Y*},$ (1)

with $X$ and $Y$ belonging to $T,E,B$.
If requested, for $X \ne Y$, symmetrized power spectra

$\displaystyle C_{\{12\}}^{\{XY\}}(\ell) \equiv \frac{C_{12}^{XY}(\ell)+C_{12}^{YX}(\ell)}{2} = \frac{C_{12}^{XY}(\ell)+C_{21}^{XY}(\ell)}{2}$ (2)

are output.

Location in HEALPix directory tree: src/f90/mod/alm_tools.F90 


FORMAT

call alm2cl*( nlmax, nmmax, alm1, [alm2,] cl, [symmetric] )

Arguments appearing in italic are optional.


ARGUMENTS

name & dimensionality kind in/out description
       
nlmax I4B IN the maximum $\ell$ value used for the $a_{\ell m}$.
nmmax I4B IN the maximum $m$ value used for the $a_{\ell m}$.
alm1(1:p, 0:nlmax, 0:nmmax) SPC/ DPC IN First set of $a_{\ell m}$ values. $p$ is 3 or 1 depending on wether polarisation is included or not. In the former case, the first index runs from 1 to 3 corresponding to (T,E,B).
alm2(1:p, 0:nlmax, 0:nmmax) SPC/ DPC IN Second set of $a_{\ell m}$ values.
cl(0:nlmax,1:d) SP/ DP OUT resulting auto or cross power spectra. If both alm1 and alm2 are present, cl will be their cross power spectrum. If only alm1 is present,cl will be its power spectrum. If $d=1$, only the temperature spectrum $C_{\ell}^{TT}$ will be output. If $d=4$ and $p=3$, the output will be $C_{\ell}^{TT}$, $C_{\ell}^{EE}$, $C_{\ell}^{BB}$ and $C_{\ell}^{TE}$. If $d\geq 6$ and $p=3$, $C_{\ell}^{TB}$ and $C_{\ell}^{EB}$ will also be output, and if $d\geq 9$, $p=3$, and symmetric is not set, $C_{\ell}^{ET}$, $C_{\ell}^{BT}$ and $C_{\ell}^{BE}$ will be included.
symmetric LGT IN If set to .true. when $d\geq4$, $p=3$ and alm2 is present then a symmetrized version of the cross spectra will be output in cl, namely $C_{\ell}^{TT}$, $C_{\ell}^{EE}$, $C_{\ell}^{BB}$, $(C_{\ell}^{TE}+C_{\ell}^{ET})/2$, $(C_{\ell}^{TB}+C_{\ell}^{BT})/2$ and $(C_{\ell}^{EB}+C_{\ell}^{BE})/2$. default:.false. (un-symmetrized output)


EXAMPLE:

lmax = 128 ; mmax = lmax
call alm2cl(lmax, mmax, alm1, cl_auto)
call alm2cl(lmax, mmax, alm1, alm2, cl_cross)
call alm2cl(lmax, mmax, alm1, alm2, cl_sym, symmetric=.true.)
cl_auto will contain the (auto) power spectrum of the $a_{\ell m}$ coefficients alm1 up to $\ell = 128$, cl_cross will be the cross power spectra of the two sets of $a_{\ell m}$ coefficients alm1 and alm2, while cl_sym will be a symmetrized version of cl_cross.


MODULES & ROUTINES

This section lists the modules and routines used by alm2cl*.

none


RELATED ROUTINES

This section lists the routines related to alm2cl*

map2alm
routine extracting the $a_{\ell m}$ coefficients from a HEALPix map
create_alm
routine to generate randomly distributed $a_{\ell m}$ coefficients according to a given power spectrum

Version 3.83, 2024-11-13