alm2map*


This routine is a wrapper to 5 other routines:alm2map_sc, alm2map_sc_pre, alm2map_pol, alm2map_pol_pre1, alm2map_pol_pre2. These routines synthesize a HEALPix temperature map (and if specified, polarisation maps) from input almT (and if specified almE and almB) values. The different routines are called dependent on what parameters are passed. Some routines synthesize maps with or without precomputed harmonics and some with or without polarisation.


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


FORMAT

call alm2map*( nsmax, nlmax, nmmax, alm_TGC, map_TQU, plm )


ARGUMENTS

name&dimensionality kind in/out description
       
nsmax I4B IN the Nside value of the map to synthesize.
nlmax I4B IN the maximum l value used for the alm.
nmmax I4B IN the maximum m value used for the alm.
map_TQU(0:12*nsmax**2-1) SP IN if only a temperature map is to be synthesized, the map-array should be passed with this rank.
map_TQU(0:12*nsmax**2-1, 1:3) SP OUT if both temperature an polarisation maps are to be synthesized, the map array should have this rank, where the second index is (1,2,3) corresponding to (T,Q,U).
alm_TGC(1:p, 0:nlmax, 0:nmmax) SPC IN The alm values to make the map from. p is 1 or 3 dependent on wether polarisation is included or not. In the former case, the first index is (1,2,3) corresponding to (T,E,B).
plm(0:(nlmax+1)*(nlmax+2)*nsmax-1), OPTIONAL DP IN If this optional matrix is passed with this rank, precomputed Plm($ \theta$) are used instead of recursion.
plm(0:(nlmax+1)*(nlmax+2)*nsmax-1, 1:3), OPTIONAL DP IN If this optional matrix is passed with this rank, precomputed Plm($ \theta$) AND precomputed tensor harmonics are used instead of recursion.


EXAMPLE:

call alm2map(256, 512, 512, alm(1:3,0:512,0:512), map(0:12*256**2-1,1:3), plm(0:513*514*256-1,1:3)

Make temperature and polarisation maps from the scalar and tensor alm passen in alm. The maps have Nside of 256, and are constructed from alm values up to 512 in l and m. Since the optional plm array is passed with both precomputed Plm($ \theta$) AND tensor harmonics, there will be no recursions in the routine and execution will be considerably faster.


MODULES & ROUTINES

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

ring_synthesize
Performs FFT over m for synthesis of the rings.
utilities
module, containing:
die_alloc
routine to print error message, when an array is too big.


RELATED ROUTINES

This section lists the routines related to alm2map*


synfast
executable using alm2map*to synthesize maps.
map2alm
routine performing the inverse transform of alm2map.
create_alm
routine to generate randomly distributed alm coefficients according to a given power spectrum

Eric Hivon 2003-02-07