HEALPix

Fiche dév Ens Sup - Recherche
  • Création ou MAJ importante : 06/06/13
  • Correction mineure : 24/06/13
  • Auteur de la fiche : Eric Hivon (IAP)
  • Responsable thématique : Dirk Hoffmann (Centre de Physique des Particules de Marseille (CPPM-IN2P3))

HEALPix : analyse de données, simulation et visualisation sur la sphère

Ce logiciel a été développé (ou est en cours de développement) dans la communauté de l'Enseignement Supérieur et de la Recherche. Son état peut être variable (cf champs ci-dessous) donc sans garantie de bon fonctionnement.
  • Site web
  • Système : UNIX-like, Windows, MacOS X
  • Version actuelle : 3.11 - avril 2013
  • Licence(s) : GPL - GPLv2
  • Etat : diffusé, stable
  • Support : maintenu, développement en cours
  • Concepteur(s) : Eric Hivon; Martin Reinecke; Krzysztof M. Gorski; Anthony J. Banday; Benjamin D. Wandelt; Emmanuel Joliet; William O'Mullane; Cyrille Rosset; Andrea Zonca
  • Contact concepteur(s) : hivon at iap.fr
  • Laboratoire(s), service(s)... : APC, IAP, IRAP, Labo à l'étranger, MPA (Garching, Allemagne), Caltech (Pasadena, CA,Etats-Unis), TAC (Copenhague, Danemark), ESAC (Madrid, Espagne), JPL (Pasadena, CA, Etats-Unis), ESO (Garching, Allemagne)

 

Fonctionnalités générales du logiciel

Le logiciel HEALPix met en œuvre la pixellisation de la sphère HEALPix (Hierarchical Equal Area iso-Latitude Pixelation ou pixellisation hiérarchique iso-latitude de surface égale). Initialement développés pour la simulation et l'analyse des observations du satellite européen Planck (dédié à l'étude du fond diffus cosmologique (ou CMB) dont les résultats ont été livrés en mars 2013), cette pixellisation et ce logiciel, sont devenus un standard dans l'analyse et la simulation de données sur la sphère, y compris le satellite WMAP de la NASA pour l'observation du CMB, et l'observatoire Pierre Auger (dédié à l'étude des rayons cosmiques de très haute énergie), et sont utilisés pour d'autres études astrophysiques et géologiques.

Spécificités de la pixellisation

A une résolution donnée, tous les pixels HEALPix ont la même surface, même si leur forme diffère légèrement. Le caractère hiérarchique de la pixellisation permet de passer à la résolution supérieure en divisant chaque pixel en 4 sous-pixels de même surface. Cette propriété permet d'effectuer efficacement et rapidement les opérations de dégradation ou d'amélioration en résolution.

L'arrangement en cercles de latitude constante des pixels permet un calcul extrêmement efficace des harmoniques sphériques réduisant le nombre d’opérations nécessaires pour une synthèse ou une analyse d'une carte de Npix pixels jusqu'au multipôle Lmax de Npix Lmax2 à Npix½ Lmax2.

Fonctionnalités du logiciel

Le logiciel HEALPix permet la représentation de données sur la sphère, et d'effectuer des analyses ou simulations de ces cartes en harmoniques sphériques (scalaires ou spinnées) ainsi que différents types d'analyses statistiques et de manipulations. Les entrées et sorties des données se font par des fichiers FITS. Sont par exemple possibles :

  • la génération de cartes aléatoires (gaussiennes ou pas) à partir d'un spectre de puissance angulaire,
  • le calcul du spectre de puissance angulaire (ou fonction de corrélation angulaire) d'une carte,
  • le filtrage spectral arbitraire d'une carte sur la sphère,
  • la pixellisation de la sphere et la manipulation des pixels jusqu'à des tailles de pixels de 0.4 milliarcsecond (ce qui équivaudrait à 3.5 1018 pixels sur la sphere),
  • l'application d'un filtre médian sur une carte,
  • l'identification des extrema locaux d'une carte,
  • la recherche de tous les pixels dans une région donnée (disque, triangle, polygone, ...),
  • la manipulation de masques binaires afin d'identifier les 'trous' pour les boucher, ou d'apodiser les masques,
  • la visualisation des cartes HEALPix, que ce soit sur tout le ciel (projections de Mollweide et orthographique) ou une partie du ciel (projections gnomonique et cartesienne),
  • la sortie des cartes produites au format Google Map/Google Sky et DomeMaster.

Les opérations les plus coûteuses (en particulier le calcul des Harmoniques Sphériques) ont été particulièrement optimisées et sont parallelisées pour les architectures à mémoire partagée (grace à OpenMP).

Contenu du logiciel

Le logiciel est disponible sous forme de codes sources en C, C++, Fortran90, IDL/GDL, java et python. Dans chacun de ces languages sont disponibles

  • une librairie d'outils (subroutines, fonctions, procédures, modules, classes, ... suivant les langages) couvrant l'ensemble des fonctionnalités décrites ci-dessus, ainsi que certaines tâches ancillaires (eg, lecture de fichiers de parametres),
  • un jeu d'applications "prêtes à servir" basées sur cette librairie et mettant chacune en oeuvre une des fonctionnalités majeures d'HEALPix (génération ou analyse de cartes, filtrages, changements de résolution, visualisation, ...). Ces applications ont généralement pour interface un dialogue interactif ou un simple fichier ASCII de parametres. Les codes sources de ces applications peuvent servir de point de départ aux développements spécifiques des utilisateurs,
  • une documentation en PDF et/ou HTML décrivant en détail l'interface de programmation, le fonctionnement et les limitations de chaque outil et de chaque application.

Enfin des outils (script interactif et Makefile) sont fournis pour prendre en charge et faciliter la compilation et l'installation d'une ou plusieurs des différentes librairies et applications, pour différentes combinaisons de materiels informatiques, systemes d'exploitations, compilateurs, ...

Developpements exterieurs

Deux types de développements exterieurs (définis comme ne faisant pas (encore) partie du logiciel HEALPix officiel décrit ci-dessus) peuvent etre distingués:

  • additions de nouvelles fonctionnalités: par exemple de nombreux outils d'analyses basés sur les fonctionnelles de Minkowski, les ondelettes (iSAP, MRS, S2LET, SphereLab) ou l'identification de structure (DisPerSE) developpés par d'autres équipes de recherche peuvent être appliqués à des données pixellisées avec HEALPix,
  • des traductions ou re-implementations d'une partie des fonctionnalités existantes: par exemple en Matlab/Octave (Mealpix) et Yorick (YHeal), voir liste (presque) complète.
Contexte d’utilisation du logiciel

Logiciel utilisé pour l'analyse des données du satellite Planck.

Format supporté par l'outil de visualisation Aladin pour la représentation de données astronomiques étendues sur le ciel.

Publications liées au logiciel