Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Easy IDL/Healpix Question

  1. Oct 24, 2009 #1
    Put this in the astro forum, since you guys are the most likely to be using this software...please move if that's inappropriate:

    I have IDL/Healpix installed on my system, and I'm trying to run what I think should be a fairly simple set of commands, but the code is freezing in the first line of the while loop, without getting to any of the print commands:

    The maps in question are healpix format and have about 192000 columns, so it's not that 1000 is larger than the map size.

    Code (Text):

    read_fits_map, "maps.fits", map
    read_fits_map, "mask.fits", mask
    numpixels=0
    totalvalue=0
    numi = 0L
    while numi lt 1000 do begin
            if mask[numi] EQ 0 then begin
                    totalvalue = totalvalue + map[numi]
                    numpixels = numpixels + 1
            endif
            print, numi
            numi = numi + 1
    endwhile
    print, totalvalue
    print, numpixels
     
    I've tried using a for loop:

    Code (Text):

    Compile_Opt defint32
    read_fits_map, "maps.fits", map
    read_fits_map, "mask.fits", mask
    numpixels=0
    totalvalue=0
    numi = 0L
    for numi=0L, 1, 1000 do begin
            if mask[numi] EQ 0 then begin
                    totalvalue = totalvalue + map[numi]
                    numpixels = numpixels + 1
            endif
            print, numi
            numi = numi + 1
    endfor
    print, totalvalue
    print, numpixels
     
    and that produces an error on the endif statement of the first run.

    Can anybody help me with this?

    Thanks in advance,

    ~Lyuokdea
     
  2. jcsd
  3. Oct 24, 2009 #2
    It seems that it is an error with the setup with my system....

    going into hidl and typing:

    y=-2
    if y lt 0 THEN BEGIN
    t=2
    ENDIF

    gives a syntax error on the ENDIF command...however i believe this is entirely correct. Please correct me if i'm wrong, or let me know of a way to fix that.

    The same thing happens in normal idl

    Thanks,

    ~Lyuokdea
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook