Wilkinson Microwave Anisotropy Probe

The data made available through this page has been updated. The most recent version of this data may be accessed through /product/map/current/

Product Name
Likelihood Software


This is the software used by the WMAP team to compute Fisher and Master matrices, and to compute the likelihoods of various models.

This software is written in Fortran 90; it has been tested with the SGI MIPSpro, NAG, and Intel Fortran 90 compilers. It requires the following libraries:

  • The cfitsio library:
  • A set of Cholesky factorization routines. On the SGI systems, the SCSL Science Library contains the relevant routines; the LAPACK library can provide the routines on other systems.

Three tarballs are supplied.

  • The first contains the most commonly desired subset of the necessary supporting data. The compressed version is 382MB in size, and it decompresses to 645MB.
  • The second contains all the supporting data the WMAP team used. It includes 'standard-cleaned' TB/EB data and Gibbs polarization cleaned data. The compressed file is 1058MB in size, and it decompresses to 1960MB.
  • The third contains only the software; no supporting data is included, limiting its usefulness but resulting in a MUCH smaller file. The compressed file is 34kB in size, and it decompresses to 180kB.

To build it, you should edit the Makefile to support your current environment; the provided Makefile shows several possible configurations; these configurations have been tested.

make			# Builds the likelihood software library.
make check		# Builds and the test program, and diff's the output
			# to the correct results. 

Output differences of ~0.001 between platforms are normal.

A patch was provided to LAMBDA by Ted Kisner of the Lawrence Berkeley National Laboratory to allow the data directory to be identified through an environment variable. To install, retrieve the patch tarball from the download page, unpack it, and copy the patch file to the top level likelihood software directory. Execute the command:

patch -p1 patch_wmap_likelihood_p3v1

Then follow the build instructions above.

Modification History:

  • 2006-Mar-16 - Version 2.0 - Initial release.
  • 2006-Mar-17 - Version 2.1 - Additional error reporting routines have been added to provide safe exit from the likelihood routine in the event of errors.
  • 2006-Oct-16 - Version 2.2 - The main new features are:
    • The ability to evaluate the TT likelihood in pixel space up to l=30.
    • The point source correction was reduced by 18% and its uncertainty doubled.
    • The HEALPix library is no longer required to build this software.
  • 2006-Oct-18 - Version 2.2.1 - Failures in the beam error module are now treated as a warning instead of an error. Warnings are not fatal to a processing run; instead the beam correction is set to zero, the problem is reported, and processing continues.
  • 2006-Nov-24 - Version 2.2.2 - This version includes a faster low-l TT likelihood module, suggested by Jon Sievers of CITA. It used signal-to-noise eignemode compression to reduce the dimensionality of the covariance matrices, while retaining numerical precision. It should produce numerically equivalent results to previous releases of version 2.2. This version also fixes some memory allocation and compiler-related problems. More details concerning the speed improvement may be found in http://lambda.gsfc.nasa.gov/product/map/dr2/likelihood_faster_v2p2p2/
  • 2008-Feb - Version 3.0 - The 5-year data initial release. See "CHANGES" for the list of changes made since the initial release. Note that this version has two options for computing the low-l TT likelihood (pixel and gibbs), and an option to compute the likelihood for TB and EB spectra.
  • 2008-Oct - A data directory identification patch was provided by T. Kisner of the Lawrence Berkeley National Laboratory.
  • 2009-Mar - Software optimization was improved through the reordering of many nested DO loops throughout the software. The 2008-Oct patch has not yet been integrated.

See "CHANGES" for more details describing each release.


We thank the following individuals for useful feedback on previous versions of this code:

  • Rachel Bean
  • Olivier Dore
  • Hans Kristian Eriksen
  • Kevin Huffenberger
  • Antony Lewis
  • Hiranya Peiris
  • Jon Sievers
  • Licia Verde

Tarball contents

The tarball contains a data subdirectory that contains various input files. These input files are either ASCII text files containing columns of data, or FITS files containing binary data.

The tarball also contains the following files:

  • README.txt
    This descriptive file.
  • test.f90
    A wrapper program shows you how to call the likelihood code and allow you to run and test it. For the test data provided you should get the output stored in output.std so you may compare your output to this with a simple diff command.
  • WMAP_5yr_likelihood.F90
    This is the central likelihood routine from which others are called.
    • MASTER codes for TTTT (l=2-1000) and TETE (l=2-450) + a log determinant term for TETE
    • The option of using a pixel based likelihood for TT 2≤l≤30 instead of MASTER
    • The option of using a gibbs-sampling likelihood for TT 2≤l≤32 instead of MASTER
    • The option of using a pixel based likelihood for TE, EE and BB 2≤l≤24 (this substitutes for MASTER TETE 2<l<24)
    • The option of using a pixel based likelihood for TE, TB, EE, BB and EB 2≤l≤24 (this substitutes for MASTER TETE 2<l<24).
    • The option of using a master likelihood for TB (l=2-450) + a log determinant term for TBTB
  • WMAP_5yr_options.F90
    The options/parameters for use in the code are all contained the WMAP_options module; a sample is shown below.
  • WMAP_5yr_teeebb_pixlike.F90
    The low l TE/EE/BB combined pixel based analysis for l=2-23
  • WMAP_5yr_tetbeebbeb_pixlike.F90
    The low l TE/TB/EE/BB/EB combined pixel based analysis for l=2-23
  • WMAP_5yr_tt_beam_and_ptsrc_chisq.f90
    Extra chisq corrections in TTTT from the beams and point source uncertainties.
  • WMAP_5yr_gibbs.F90
    The low l TT gibbs-sampling likelihood code for l≤32.
  • WMAP_5yr_tt_pixlike.F90
    The low l TT pixel based likelihood code for l≤30.
  • WMAP_5yr_util.f90
    IO tools and error checker.
  • read_archive_map.f90/read_archive_map.fh
    A subroutine that read a skymap from a binary table in a FITS file.
  • read_fits.f90/read_fits.fh
    A collections of subroutines that read two and three dimension floating point and complex arrays from the primary header/data unit of a FITS file.
  • br_mod_dist.f90
    An F90 module for computing the Blackwell-Rao estimator given signal samples from the posterior [Written by Hans Kristian Eriksen] Used by the low l TT gibbs-sampling likelihood option.
  • Makefile
    This is a standard makefile to compile the code.
  • data/
    A directory containing data necessary to the software.
    The list of changes made since the initial release.

Additional Information

Back to Product Page

A service of the HEASARC and of the Astrophysics Science Division at NASA/GSFC
Goddard Space Flight Center, National Aeronautics and Space Administration
HEASARC Director: Dr. Alan P. Smale
LAMBDA Director: Dr. Eric R. Switzer
NASA Official: Dr. Eric R. Switzer
Web Curator: Mr. Michael R. Greason