HEALPix

Higher Edu - Research dev card
Development from the higher education and research community
  • Creation or important update: 19/09/13
  • Minor correction: 19/09/13
  • Index card author: Eric Hivon (IAP)
  • Theme leader : Dirk Hoffmann (Centre de Physique des Particules de Marseille (CPPM-IN2P3))
Keywords

HEALPix : data analysis, simulation and visualisation on the sphere

This software was developed (or is under development) within the higher education and research community. Its stability can vary (see fields below) and its working state is not guaranteed.
  • Web site
  • System: UNIX-like, Windows, MacOS X
  • Current version: 3.11 - April 2013
  • License(s): GPL - GPLv2
  • Status: stable release
  • Support: maintained, ongoing development
  • Designer(s): Eric Hivon; Martin Reinecke; Krzysztof M. Gorski; Anthony J. Banday; Benjamin D. Wandelt; Emmanuel Joliet; William O'Mullane; Cyrille Rosset; Andrea Zonca
  • Contact designer(s): hivon at iap.fr
  • Laboratory, service: APC, IAP, IRAP, Lab abroad, MPA (Garching, Allemagne), Caltech (Pasadena, CA,Etats-Unis), TAC (Copenhague, Danemark), ESAC (Madrid, Espagne), JPL (Pasadena, CA, Etats-Unis), ESO (Garching, Allemagne)

 

General software features

The HEALPix software implements the HEALPix (Hierarchical Equal Area iso-Latitude Pixelation) pixelation of the sphere. Initially developed for the simulation and analysis of ESA Planck satellite observations (dedicated to the study of the Cosmic Microwave Background (CMB) anisotropies, whose first results were delivered in March 2013), this software and its pixelation algorithm have become standard tools in the simulation and analysis of data on the sphere, including the NASA WMAP satellite, also dedicated to CMB observation, and the Pierre Auger ground based observatory for high energy cosmic rays, and are used for other astrophysical and geological studies.

Main features of the pixelation

At a given resolution, all HEALPix pixels have the same surface area, even if their shape varies slightly. Thanks to the hierarchical feature of the pixelation, upgrading its resolution to the next level simply amounts to divide each pixel into four sub-pixel of the same area. This allows quick and efficient upgrading and downgrading operations of existing maps.

Since the pixels are regularly spaced on iso-latitude rings, Spherical Harmonics can be computed very efficiently. The synthesis or analysis up to multipole Lmax  of a spherical data set containing Npix pixels is reduced from    Npix Lmax2   to   Npix┬Ż Lmax2  compared to non iso-latitude pixelation.

Features of the software package

The represents data on the sphere, and enables analysis or simulation of these maps in (scalar or spin-weighted) Spherical Harmonics, as well as various kinds of statistical analyses and processing. Portable FITS files are used for input and output. The list of available functions includes:

  • generation of random maps (gaussian or not) from an arbitrary angular power spectrum,
  • computation of the angular power spectrum (or angular correlation function) of a map,
  • convolution of a spherical map with an arbitrary circular window,
  • tessellation of the sphere and pixel processing supported down to a pixel size of 0.4 milliarcseconds (equivalent to 3.5 1018 pixels on the sphere),
  • median filtering of a map,
  • search of local extrema in a map,
  • query of pixels located in user defined disks, triangles, polygons, ...
  • processing of binary masks to identify 'holes' in order to fill them, or to apodize masks,
  • visualization of HEALPix sky maps either on the whole sky (using Mollweide or orthographic projections) or on a patch (gnomic or cartesian projections),
  • output in Google Map/Google Sky and DomeMaster format.

The most expensive operations, such a Spherical Harmonics Transform have been carefully optimised and benefit from a shared memory parallelisation based on OpenMP.

Contents of the software package

The software is available in C, C++, Fortran90, IDL/GDL, Java and python. The following modules are provided in each of these languages:

  • a library of tools (subroutines, functions, procedures, modules, classes, ...depending on languages) covering most of the functionnalities described above, as well as supporting ancillary tools (eg, parameter file parsing),
  • a set of stand-alone facilities based on the library above and each implementing one of HEALPix major features (map generation or analysis, filtering, resolution udgrade or downgrade, visualization). These applications are generally run via an interactive dialog or an ASCII parameter file. Their source code can be used as a starting point for user specific developments,
  • an extensive PDF and/or HTML documentation describing in details the API, inner working and limitations of each tool and application.

Finally, some tools (interactive script and Makefile) are provided to manage and facilitate the compilation and installation of one or several of the libraries and facilities, for most combinations of hardwares, operating systems, compilers, ...

Third Party Developements

One can distinguish two kinds of third party developements (defined as not (yet) being part of the official HEALPix package described above):

  • new functionalities, for instance many tools based on Minkowski functionals, wavelets (iSAP, MRS, S2LET, SphereLab), or structure identification (DisPerSE) developed by various research teams can be applied to data stored in HEALPix format,
  • translations, re-implementations or wrapping of (some of) existing functionalities, for instance in Matlab/Octave (Mealpix) and Yorick (YHeal) are available. (See (almost) exhaustive list.)

Context in which the software is used

Software used for the analysis of Planck satellite data.
Data format supported by Aladin visualisation software to represent diffuse astronomical data on the sky.

Publications related to the software