Healpix C++
3.83
|
This program reads a set of from disk and converts it to a set of .
Parameters read by syn_alm_cxx: nlmax (integer): maximum order of l nmmax (integer): maximum order of m (must not be larger than nlmax, default=nlmax) infile (string): input file containing the CMB power spectrum outfile (string): output file name for the calculated a_lm rand_seed (integer): random-number seed fwhm_arcmin (real): FWHM (in arcmin) of a Gaussian beam, which is used to smooth the resulting sky a_lm (default=0) polarisation (bool): if false, only the intensity a_lm are generated, if true, T, G and C a_lm are generated if (polarisation) full_ps (bool, default=false): if false, only TT, GG, CC and TG components of the spectrum are used if true, also TC and GC components are used endif double_precision (bool, default=false): if false, the a_lm are created in single precision, otherwise in double precision.
This program reads a set of from disk and converts them to a HEALPix map.
Parameters read by alm2map_cxx: nlmax (integer): maximum order of l nmmax (integer): maximum order of m (must not be larger than nlmax, default=nlmax) infile (string): input file containing the a_lm outfile (string): output file name for the Healpix map(s) nside (integer): nside parameter for the output map(s) polarisation (bool): if false, only the intensity map is generated, if true, maps for I, Q and U are generated fwhm_arcmin (double, default=0): FWHM in arc minutes of a Gaussian beam, which is used to smooth the a_lm windowfile (string, default=""): if supplied, the pixel window function from this file will be applied to the a_lm double_precision (bool, default=false): if false, a_lm and maps are read/written in single precision, otherwise in double precision.
This program performs harmonic analysis of a HEALPix map up to a user-specified maximum spherical harmonic order . The integrals are computed on the whole sphere. Scalar, or scalar and tensor, spherical harmonic coefficients are evaluated from the map(s) if the input provides, respectively, only the temperature, or temperature and polarisation maps. The total operation count scales as with a prefactor depending on .
Anafast_cxx reads a file containing the map(s) and produces a file containing the temperature power spectrum and, if requested, also the polarisation power spectra , and . The coefficients computed during the execution also can be written to a file if requested.
Anafast_cxx executes an approximate, discrete point-set quadrature on a sphere sampled at the HEALPix pixel centers. Spherical harmonic transforms are computed using recurrence relations for Legendre polynomials on co-latitude ( ) and Fast Fourier transforms on longitude ( ).
Anafast permits two execution options which allow a significant improvement of accuracy of the approximate quadrature performed by this facility:
Parameters read by anafast_cxx: nlmax (integer): maximum order of l nmmax (integer): maximum order of m (must not be larger than nlmax, default=nlmax) infile (string): input file containing the Healpix map outfile (string, default=""): output file name for power spectrum; if empty, no spectrum is written outfile_alms (string, default=""): output file name for the a_lm; if empty, no a_lm are written polarisation (bool): if false, only the intensity a_lm are generated, if true, a_lm for T, G and C component are generated ringweights (string, default=""): if supplied, ring weights will be read from this file NOTE: mutually exclusive with "pixelweights". pixelweights (string, default=""): if supplied, compressed pixel weights will be read from this file NOTE: mutually exclusive with "ringweights". iter_order (integer, default=0) number of iterations for the analysis (0: standard analysis) double_precision (bool, default=false): if false, maps and a_lm are read/written in single precision, otherwise in double precision. if (polarisation==true && outfile!="") full_powerspectrum (bool, default=false): if true, write a 6-column power spectrum; if false, write a 4-column power spectrum. endif remove_monopole (bool, default=false): if true, subtract the average pixel value from the temperature map, and add the corresponding value to almT(0,0) after the map2alm transform.
This program reads in a HEALPix sky map in FITS format and generates an image in TGA format. map2tga allows the selection of the projection scheme (Mollweide or Gnomonic for small patches of the sky), color table, color bar inclusion, linear or log scaling, maximum and minimum range for the plot and plot-title. The facility provides a command-line interface, but can also read a parameter file.
Usage: map2tga <parameter file> or: map2tga <input file> <output file> [-sig <int>] [-pal <int>] [-xsz <int>] [-bar] [-log] [-asinh] [-lon <float>] [-lat <float>] [-mul <float>] [-add <float>] [-min <float>] [-max <float>] [-res <float>] [-title <string>] [-flippal] [-gnomonic] [-interpol] [-equalize] [-viewer <viewer>] Parameters read by map2tga: infile (string): input file containing the Healpix map outfile (string): output TGA file sig (integer, default=1): column number of the requested Healpix map pal (integer, default=4): number of the color palette flippal (bool, default=false): whether the palette should be flipped xsz (integer, default=1024): number of image pixels in x direction bar (logical, default=false): whether a color bar should be added to the image log (logical, default=false): whether the logarithm of the map values should be displayed equalize (logical, default=false): whether histogram equalisation should be performed asinh (logical, default=false): whether the hyperbolic arcsine of the map values should be displayed lon (double, default=0): the longitude (in degrees) of the image center lat (double, default=0): the latitude (in degrees) of the image center mul (double, default=1): scale factor applied to the data add (double, default=0): offset added to the data (before multiplication) min (double, optional): if specified, this value is used as minimum of the color scale max (double, optional): if specified, this value is used as maximum of the color scale res (double, default=1): only for gnomonic projection: the size (in arcmin) of an image pixel title (string, optional): if specified, this value is used as the image title viewer (string, optional): if specified, this executable is used to show the resulting image pro (string, default="mollw"): if this is equal to "gno", gnomonic projection is used, else Mollweide interpol (bool, default=false): false: no interpolation true : bilinear interpolation
This program visualizes spin-2 fields of the sphere using the line integral convolution (LIC) technique.
It was originally written by David Larson and has later been adjusted to output Healpix maps instead of image files.
Usage: alice3 ... where ... indicates any combination of the optional parameters below. examples: alice3 in=wmap_ilc_3yr_v2_r6_sim.fits nside=512 ell=300 out=test NOTE: the syntax is slightly different from the one used in alice2! There must not be any spaces on either side of the "=" signs! [in=<fits file>] FITS file containing the Q and U polarization components in the second and third columns. [out=<string>] string used as a prefix for output files alice3 generates three different output FITS files: <out>_background.fits: the texture before the LI convolution <out>_texture.fits: the texture after LI convolution <out>_mod_texture.fits: the convolved texture, modulated with polarization intensity By default the code will exit with an error instead of overwriting an existing FITS file! If you want to override this behaviour, prepend your prefix with an exclamation mark (which may need to be protected from shell expansion by a leading backslash). [texture=<fits file>] optional input background texture if left empty, a texture is generated using the "ell" parameter [nside=<int>] nside of all generated maps [ell=<int>] ell value at which the generated background texture has power if ell==-1, use ell=2*nside if not supplied at all, use a Healpix map with given Nside containing white noise [rand_seed=<int>] seed for the random number generator (default=42). Only used when a texture is generated internally. [steps=<int>] number of steps to use for each line of the convolution (default: 100) [kernel_steps=<int>] extent of the convolution kernel (in steps) (default: 50) [step_arcmin=<float>] arcminutes for each step in the convolution (default: 10) [polmin=<float>] minimum value for the polarization magnitude [polmax=<float>] maximum value for the polarization magnitude
Performs a coordinate transformation on a set of .
Usage: rotalm_cxx <infile> <outfile> <itransform> <pol> Transform 1: Equatorial (2000) -> Galactic (2000) 2: Galactic (2000) -> Equatorial (2000) 3: Equatorial (2000) -> Ecliptic (2000) 4: Ecliptic (2000) -> Equatorial (2000) 5: Ecliptic (2000) -> Galactic (2000) 6: Galactic (2000) -> Ecliptic (2000) 7: Equatorial (1950) -> Galactic (1950) 8: Galactic (1950) -> Equatorial (1950) 9: Equatorial (1950) -> Ecliptic (1950) 10: Ecliptic (1950) -> Equatorial (1950) 11: Ecliptic (1950) -> Galactic (1950) 12: Galactic (1950) -> Ecliptic (1950)
This program reads a set of (unpolarised or polarised) , removes pixel window functions and/or Gaussian beams, applies different pixel window functions or Gaussian beams, and outputs the result.
Parameters read by mult_alm: infile (string): input file containing the a_lm outfile (string): output file name for the calculated a_lm fwhm_arcmin_in (real, default=0): FWHM (in arcmin) of a Gaussian beam, which will be _removed_ from the input a_lm fwhm_arcmin_out (real, default=0): FWHM (in arcmin) of a Gaussian beam, which will be used to smoothe the output a_lm pixwin_in (string, default=""): if supplied, the pixel window function from this file will be _removed_ from the input a_lm pixwin_out (string, default=""): if supplied, the pixel window function from this file will be applied to the output a_lm cl_in (string, default=""): if supplied, the power spectrum from this file will be _removed_ from the input a_lm NOTE: currently only supported for unpolarised a_lm cl_out (string, default=""): if supplied, the power pectrum from this file will be applied to the output a_lm NOTE: currently only supported for unpolarised a_lm polarisation (bool): if false, only the intensity a_lm are generated, if true, T, G and C a_lm are generated double_precision (bool, default=false): if false, the a_lm are read/written in single precision, otherwise in double precision.
This program reads a (unpolarised or polarised) HEALPix map, converts it to , performs a smoothing operation with a Gaussian beam, converts the back to a map and outputs the result.
Parameters read by smoothing_cxx: fwhm_arcmin (double): FWHM (in arcmin) of the Gaussian beam used for smoothing. If the value is negative, the smoothing of a Gaussian beam with an FWHM of -fwhm_arcmin will be _removed_ from the input map. nlmax (integer): maximum order of l infile (string): input file containing the Healpix map outfile (string, default=""): output file for the smoothed Healpix map polarisation (bool): if false, only an intensity map is smoothed if true, an IQU map is smoothed ringweights (string, default=""): if supplied, ring weights will be read from this file NOTE: mutually exclusive with "pixelweights". pixelweights (string, default=""): if supplied, compressed pixel weights will be read from this file NOTE: mutually exclusive with "ringweights". iter_order (integer, default=0) number of iterations for the analysis (0: standard analysis) double_precision (bool, default=false): if false, a_lm are read/written in single precision, otherwise in double precision.
This program reads one or two sets of , extracts the (unpolarised or polarised) power spectrum or the unpolarised cross power spectrum, and outputs the result.
Usage: calc_powspec <almfile1> [<almfile2>] <powspec_file>
This program inputs a HEALPix map, runs a median filter with the desired radius on it and saves the result to another file.
Usage: median_filter_cxx <input map> <output map> <radius in arcmin>
This program separates a_lm coefficients into different needlet bands, or reassembles various bands to full a_lm sets.
Parameters read by needlet_tool: mode (string): split: a single a_lm file is input and split into needlet bands assemble: multiple needlet bands are read and combined into a single a_lm file write_coefficients: needlet coefficients are written to a FITS file needlet_type (string): needatool: use needlets as defined by Pietrobon et al., ApJ 723, 1 (2010), following the construction in section 3 cosine : use needlets as defined by Basak et al., MNRAS 419, 1163 (2012), following the equations in section 3 sdw : use needlets as defined by Leistedt et al., A&A 558, A128 (2013), following equations 10 to 15 spline : use B-spline based wavelets, similar to those defined by Starck et al., A&A 446, 1191 (2006), but with band number ascending towards higher resolutions. if (needlet_type=="cosine"): llim: string For n bands, this list must contain n+2 comma-separated integers: - start of band 1 - start of band 2 == peak of band 1 - start of band 3 == peak of band 2 == end of band 1 [...] - start of band n == peak of band n-1 == end of band n-2 - peak of band n == end of band n-1 - end of band n The values must be strictly increasing, with the exception of the first and second value, which may both be 0. else B (double): B parameter for the respective needlet The window for the nth band peaks at l=B^n. endif minband, maxband (integer): the minimum and maximum needlet scales requested for the operation if (mode=="write_coefficients"): outfile_needlets(string): output file name root for needlet coefficients else infile (string): if mode=="split" : input file containing the a_lm if mode=="assemble": root name for the input a_lm files Full names are "<infile>###.fits", where ### is the three-digit number of the band outfile (string): if mode=="split" : root name for the output a_lm files Full names are "<outfile>###.fits", where ### is the three-digit number of the band if mode=="assemble": output file containing the assembled a_lm polarisation (bool, default=false): if false, only the intensity a_lm are processed, if true, the code currently exits with an error message, since polarisation is not yet supported. endif double_precision (bool, default=false): if false, a_lm are read/written in single precision, otherwise in double precision. General remarks on the code =========================== In contrast to most other needlet-related codes, needlet_tool does not read and write map data, but spherical harmonic coefficients. This is done because - the code is then independent of a particular pixelisation. - the necessary transforms between map and spherical harmonic domain are subject to many complications (like choice of band limits, removal of low multipoles, masking, pixel weighting, iterative map analysis, choice of resolution for the output maps, etc.) so that it would be cumbersome to reproduce all these details in needlet_tool. - the separation of the transforms and needlet operations does not degrade overall performance, so it is just as efficient to let the SHTs be done by dedicated codes like anafast/synfast etc. Splitting and then reassembling a set of a_lm should accurately reproduce the input a_lm at all l starting from the first peak (which is 1 for "needatool" and "sdw" needlets, but may be different for "cosine" wavelets). The remaining information in the input data (monopole for "needatool" and "sdw", part of the coefficients below the first peak for "cosine") is currently discarded, but could also be written to an additional output file.