Follow this link to skip to the main content

NASA - Jet Propulsion Laboratory
+ View the NASA Portal

Search JPL


Jet Propulsion Laboratory Home
Earth
Solar System
Stars & Galaxies
Technology
HEALPix
Introduction
Background
Software
Links




Jet Propulsion Laboratory National Aeronautics and Space Administration California Institute of Technology
spacer
Software Menu
Capabilities
Current Version
Documentation
Problems, Known Bugs, Solutions
Example Applications
Get HEALPix

 
Problems, Known Bugs, Solutions
 
This page provides a forum for feedback on bugs in the HEALPix package. We will publish contributions here if they are of general interest.
Please submit to (no attachment larger than 4 MB).


NOTE: If you encounter internal compiler errors when compiling the HEALPix source code, we strongly encourage you to report these problems to your compiler manufacturer, or to let your system administrators do this for you, even if workarounds for these compiler bugs exist. This is very important to improve the quality of compilers, and thus to make life easier for programmers.

NOTE: Version 4.1.0 of the gfortran compiler has a bug which causes silent miscompilation of the current HEALPix Fortran packages. This typically leads to segmentation faults when the HEALPix facilities are run. No workaround is known at this time.
The problem has been reported to the gfortran developers and will hopefully be fixed in version 4.1.1.
gfortran version 4.0.3 does not exhibit this problem.
Detected 03-16-2006 by M. Reinecke
Update: The bug has indeed been fixed in gfortran version 4.1.1.

Version 2.10 and 2.11

Version 2.01
  • In the IDL routine write_fits_cut4 the default extension was not properly defined. To fix this problem, replace src/idl/fits/write_fits_cut4.pro with the one found here.
    2006-11-09, reported by Jiang, B. Z.
  • Version 4.1.1 of the gfortran compiler has a bug preventing the correct compilation and usage of the Healpix routine fatal_error. To fix this problem, replace src/f90/mod/misc_utils.f90 with the one found here.
    2006-10-31, reported and fixed by V. Stolyarov
  • The IDL routine median_filter had several bugs affecting its FITS file output and did not deal properly with filtering radii provided in degrees. A new problem related to the /NESTED keyword also has been detected. To fix all these problems, replace src/idl/toolkit/median_filter.pro with the one found here.
    2006-03-09, reported and fixed by M.A. Miville-Deschenes
    Updated 2006-07-11, reported by Kwangil Seon
  • The IDL visualisation routines cartview, gnomview, mollview and orthview did not deal properly with polarised data read from multi-row arrays (Online option) and with cut-sky polarised data. To fix both these problems, replace src/idl/visu/loaddata_healpix.pro with the one found here.
    Updated 2006-04-27, reported by T. Banday & M. Landriau
  • One of Sun's Fortran compilers has a bug leading to an internal compiler error when compiling fitstools.f90. If you encounter this, you should change line 863 of src/f90/mod/fits_template.f90 from
     tform(1:ncl) = trim(adjustl(form))
    to
     tform(1:ncl) = form
    Updated 03-23-2006, reported by Tristan Smith
  • The F90 function median has been edited to compile properly with Portland Group Compiler (pgf90 5.2-4) and to fix a memory leak. To enjoy this upgrade, replace src/f90/mod/statistics.f90 with this one.
    Updated 03-09-2006, reported by M. Alvarez
  • The F90 module alm_tools has been slightly edited to facilitate the compilation of the MPI based Spherical Harmonics routines (ie, making the select_rings subroutine public). Replace src/f90/mod/alm_tools.f90 with this one.
    Updated 03-09-2006, reported and fixed by D. Larson
  • The F90 routine write_alms (called by alms2fits) has a bug and will not let you write polarised alms (as is the case when the alteralm facility is used on polarised alms with error bars). To fix this problem, replace src/f90/mod/fits_template.f90 with the one found here.
    Updated 01-23-2006, reported by D. Maino
  • To compile the Fortran package under Windows, you should proceed as follows: Updated 12-08-2005
Version 2.00
  • on Nov 05, 2005, version 2.01 was released to address the bugs and problems found
     in version 2.00 (click here for details)
  • If you run Healpix on Mac OS X with the g95 compiler, you will have to
    -- install the latest cctools available from g95.sf.net
    -- add -lSystemStubs to the LDFLAGS in the Makefile created by configure
    Updated 9-27-2005, reported by Andrew Jaffe
  • If you run Healpix on Mac OS X with the IBM XL Fortran compiler, you will have to
    -- change the cfitsio installation (click here for details),
    -- add -lSystemStubs to the LDFLAGS in the Makefile created by configure
    Updated 9-27-2005, reported by Hiranya Peiris
  • If you compile Healpix with the GNU Fortran 95 (gfortran) compiler, you will have to replace Healpix_2.00/src/f90/mod/healpix_fft.F90 with the one found here.
    Updated 9-27-2005       -- FIXED in v2.01 --
  • The C++ method Healpix_Base::neighbors() has a bug and will return incorrect neighbor lists in most cases. This bug can be fixed by replacing the following lines in src/cxx/Healpix_cxx/healpix_base.cc:

    line 585:
    result[m] = xyf2ring(ix+xoffset[m],iy+xoffset[m],face_num);
    should be changed to
    result[m] = xyf2ring(ix+xoffset[m],iy+yoffset[m],face_num);
    line 588:
    result[m] = xyf2nest(ix+xoffset[m],iy+xoffset[m],face_num);
    should be changed to
    result[m] = xyf2nest(ix+xoffset[m],iy+yoffset[m],face_num);

    Updated 11-03-2005, reported by Marshall Roth      -- FIXED in v2.01 --


Version 1.20
  • The g95 compiler is a Fortran90/95 compiler available for free on Linux, Mac OSX, Windows, Sun and HP platforms. It is available for download (as a self-contained precompiled executable) at http://g95.sf.net.
    Using it with Healpix requires some minimal editions to the configure script and to the src/f90/mod/healpix_fft*.F90 source files. A patch available here will modify those 3 files.
    Notes:
    -- we have only tested this compiler on Linux, and could not assess its overall performances yet,
    -- the editions performed in the patch above remain perfectly compatible with all the other compilers.
    Posted March 3, 2005


  • Some versions of the Intel F90 compiler (in particular version 8.1.021) may choke during the compilation of the healpix_types module, with an error message similar to

    fortcom: Severe: healpix_types.f90, line 24: Please report this error along with the circumstances in which it occurred in a Software Problem Report
    INTEGER, PARAMETER, public :: max_i1b = HUGE(1_i1b)
    ^
    [ Aborting due to internal error. ]
    compilation aborted for healpix_types.f90 (code 1)


    If this happens, edit the file src/f90/mod/healpix_types.f90 as follows:
    replace (in line #24)
        INTEGER, PARAMETER, public :: max_i1b = HUGE(1_i1b)
    with
        INTEGER, PARAMETER, public :: max_i1b = 127

    (Problem reported by Anna Bonaldi, Monica Relaño Pastor and Licia Verde.)
    Item added Feb 2, 2005


  • If you run Healpix on Mac OS X with the IBM XL Fortran compiler, you will have to change the cfitsio installation. Click here for details.


  • The patch #02 has been send to all registered users on March 26, 2004. It fixes the bugs reported since March 2003, and includes some code enhancements. Installation on Mac OS is now supported. Click here for details.


  • A problem occuring (under very limited circumstances) with the gaussian deviate random generator randgauss_boxmuller has been pointed out. Click here for details and for a corrected source file.


  • Note about overwritting existing FITS files in C or Fortran 90: CFITSIO (the library used for FITS I/O) will crash if you attempt to write a FITS file that already exists, unless you prepend it with '!' (exclamation mark) (in version 2.0 or newer) (e.g., outfile='!out.fits' will write 'out.fits', whether or not it already exists).

    Note that the HEALPix facilities synfast, anafast and smoothing test for the existence of the file before accepting an output file name as valid. A file whose name starts with '!' is considered as new and will be passed on to CFITSIO.

    (For the experts: beware of the effect of '!' in shell scripts. You may have to protect it with '\').


  • The patch #01 has been send to all registered users on March 1st, 2003. It fixes all the bugs reported to us so far, and includes some code enhancements. Click here for details.


  • We recommend that the GNU 'make' be used for compilation of HEALPix (ftp://ftp.gnu.org/gnu/make/). If you are using a different 'make' (specially under SunOS) you can get the message

        make: Fatal error in reader: Makefile, line 51: Unexpected
        end of line seen during compilation.


    If the compilation fails for this reason and the GNU make is not available, replace the files Makefile.in, src/f90/mod/Makefile and src/f90/lib/Makefile with those found in this tar file. You can then run the commands './configure' and 'make' to install the package.

    (Problem reported by Matias Zaldarriaga)


  • Some Fortran 90 compilers do not support 8 byte (or 64 bit) integers and either fail during the compilation of healpix_types or choke over the usage of the i8b parameter. If this happens, edit the file src/f90/mod/healpix_types.f90 as follows:

    replace line 11, which currently reads

        INTEGER, PARAMETER, public :: i8b = SELECTED_INT_KIND(18)
    with
        INTEGER, PARAMETER, public :: i8b = SELECTED_INT_KIND(9)

    (Problem reported by Viktor Eisler)

Version 1.10
  • Because of non-standard behaviour of native awk, the HEALPix configure script produces an error message on at least some versions of SunOS. If that happens to you, apply the following patch to configure.

    Replace:

        test `f90 -V 2>&1 | \
        awk '{if (/Compilers/) {print $0}}' |\


    with:

        test `f90 -V 2>&1 | head -1 |\

    (Problem reported by Adam Amara)

Version 1.00
  • The HEALPix Fortran90 Subroutines documentation on page 37 should read "double precision" for the kind of theta and phi, not integer. Also, create_alm requires the header_PS argument to be declared as

        character(len=80), dimension(1:60) :: header_PS

    and the filename and windowfile arguments as

        character(len=128) :: filename,windowfile

    (E. Pierpaoli)


  • The HEALPix Fortran90 Subroutines documentation contains an inaccuracy and an error relating to the use of cos_theta_cut in the section on map2alm.

    (G. Hinshaw)


  • The IDL routine index2lm.pro in the src/idl/misc directory gives a wrong m vector for large l. Download the corrected version.

    (B.D. Wandelt)


  • On some Sun machines there appears to be a problem with the subroutine which reads in FITS files when running the hotspot facility. A workaround is now available.

    (A. Jaffe)


  • IDL routines need recent version of IDL (e.g., IDL 5.0.3 chokes on "today()").

    (K. Ganga)


  • We found that DEC compilers have a non-standard definition of the default format "*". This makes this change necessary.

    (F.K. Hansen)


  • Line 239 in Healpix/src/f90/plmgen/plmgen.f90 should be removed.

    (F.K. Hansen)


  • Compiler bug workaround for DEC.

    (A. Connolly)


  • (Now solved (Version 1.0)) The standard implementation of P_lm recursion, may cause floating point exceptions on some platforms at l >> 2000; a new P_lm evaluation, applicable at high l-values is included with the new version of the package.

    (R. Stompor)


  • Owing to the limitations of 4 byte integers, the number of pixels in a map currently cannot exceed 805,306,368. This limits the smallest resolvable scale to 0.429 arcminutes.

    (B.D. Wandelt)
 
spacer
Privacy / Copyright
FIRST GOV Contacts:   NASA Home Page Site Manager:
Webmaster:

CL 03-2650