plmgen

This program can be used to create a file containing the precomputed values of the associated Legendre polynomials $P_{lm}(\theta)$ (and, if requested, of the tensor spherical harmonics) for faster execution of the HEALPix map analysis/synthesis. The map resolution parameter, nsmax, and the maximum value of the spherical harmonic order $\ell_{max}$ must be specified.

Note: Since the introduction of optimized spherical harmonic transforms in HEALPix v2.20, this code has become obsolete and should no longer be used.

Location in HEALPix directory tree: src/f90/plmgen/plmgen.f90 


FORMAT

% plmgen


QUALIFIERS

nsmax =
Defines the resolution parameter for the map to be analysed/synthesized with the precomputed harmonics. (default= 32)
nlmax =
Defines the $\ell_{max}$ value for the execution. (default= 64)
simul_type =
Defines whether only scalar, or scalar and tensor harmonics are to be precomputed, 1=scalar only, 2=scalar AND tensor. (default=1)
outfile =
Defines the name for the file that will contain the precomputed harmonics. (default='plm.fits')


DESCRIPTION

The recursion of Legendre polynomials and tensor harmonics during the analysis and synthesis of HEALPix maps can be time consuming. Especially when repetitive applications are desired there is no need to compute the recursions every time. For such applications the values of $P_{\ell m}(\theta)$ can be precomputed with plmgen and stored in a file. When using synfast or anafast this file can be read in to shorten the analysis/synthesis execution time.

The memory (and disc) consumption of plmgen is $8 N_\lambda N_p$ bytes, with $N_\lambda = {\tt nsmax} ({\tt nlmax}+1)({\tt nlmax}+2)$ and Np is either 1 or 3, depending whether tensor harmonics are computed.

Currently an extra limitation $N_\lambda < 2^{31} = 2147483648$ also applies, corresponding to, eg, lmax $\le 1446$ for nsmax =1024.


DATASETS

The following datasets are involved in the plmgen processing.

Dataset Description
   
None required  
   
 


SUPPORT

This section lists those routines and facilities (including those external to the HEALPix distribution) which can assist in the utilisation of plmgen.

synfast
This HEALPix facility can generate a map using precomputed harmonics made from plmgen.
anafast
This HEALPix facility can analyse a map using precomputed harmonics.
plm_gen
Fortran subroutine used to generate the harmonics


EXAMPLE # 1:

plmgen  
plmgen runs in interactive mode, self-explanatory.


EXAMPLE # 2:

plmgen filename  
When `filename' is present, plmgen enters the non-interactive mode and parses its inputs from the file `filename'. This has the following structure: the first entry is a qualifier which announces to the parser which input immediately follows. If this input is omitted in the input file, the parser assumes the default value. If the equality sign is omitted, then the parser ignores the entry. In this way comments may also be included in the file. In this example, the file contains the following qualifiers:
simul_type= 1
nsmax= 32
nlmax= 86
outfile= plm.fits

Creates a binary FITS file called 'plm.fits' containing Legendre polynomials up to $\ell$ and m values of 86 for a nsmax=32 map. Legendre polynomials for all $\ell$ and m values for each angle $\theta$ corresponding to all of the HEALPix pixel center rings will be created.


RELEASE NOTES

■ Initial release HEALPix 1.00


MESSAGES

This section describes error messages generated by plmgen

Message Severity Text
     
can not allocate memory for array xxx Fatal You do not have sufficient system resources to run this facility at the map resolution you required. Try a lower map resolution.
     
Error: these values of Nside and l_max $\ldots$ are too large $\ldots$ Fatal You are exceeding the limitation on Nside and l_max. Try a lower l_max.
     
   

Version 3.82, 2022-07-28