Hi folks:
I have noticed a strange occurence when I try to compare a number with
all the elements of an array. I'll show my situation in an example.
Consider the following array:
a = [2.0000, 2.1000, 2.2000, 2.3000, 2.4000, 2.5000, 2.6000].
Let, x = 2.2000, y = 2.4000
So, I want to find which elements of a match up with x and y.
Naturally, I do the following:
index0 = WHERE(a EQ x)
index0 = index[0] ; convert from 1-D array to single integer.
index1 = WHERE(a EQ y)
index1 = index[0]
So, when I execute, I may get the following:
PRINT, index0
2
PRINT, index1
-1
The output clearly tells me that x occurs at a[2] and that y does not exist
in a at all. By inspection, IDL should return the value 4. Does anyone
have any idea why this happens? Thanks,
Mik Kiss