comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » Re: A strange error with WHERE
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Return to the default flat view Create a new topic Submit Reply
Re: A strange error with WHERE [message #67482 is a reply to message #67481] Thu, 30 July 2009 20:33 Go to previous messageGo to previous message
Lindzen is currently offline  Lindzen
Messages: 4
Registered: July 2009
Junior Member
On 7月31日, 上午11时22分, David Fanning <n...@dfanning.com> wrote:
> Lindzen writes:
>>     I come across a strange error with WHERE function. Could you
>> please help me to check it?
>> Here is part of the code. I will explain below the code.
>
>> outer1_begin: id_hr  = where(r03_temp ge 50)
>>                     n_hr   = n_elements(id_hr)
>
>> if (n_elements(id_hr) gt 1) then begin
>>   id_max    = where(r03_temp eq max(r03_temp))
>>   lonc  = lon_aoc(id_max)
>>   latc  = lat_aoc(id_max)
>
>>   ii=0
>>   outer2_begin: print,ii
>>   ii=ii+1
>>     lon_left  = lonc-ii*0.5
>>     lon_right = lonc+ii*0.5
>>     lat_up    = latc+ii*0.5
>>     lat_down  = latc-ii*0.5
>>     id_box    = where(lon_aoc ge lon_left)
>
>> Here lon_left=117.25, is a flot number. lon_aoc is a 80*30 matrix,
>> with many values larger than 117.25.
>> If I use id=where(lon_aoc ge 117.25), id returns right results.
>> However, the above code returns -1 to id_box. It is really strange.
>> Could anyone help me? Thank you very much!
>
> There is nothing wrong with the WHERE function.
> There is (certainly) something wrong with one
> of your assumptions. You will need to discover
> which one it is. The HELP and PRINT commands are
> useful for this chore.
>
> Cheers,
>
> David
>
> --
> David Fanning, Ph.D.
> Fanning Software Consulting, Inc.
> Coyote's Guide to IDL Programming:http://www.dfanning.com/
> Sepore ma de ni thui. ("Perhaps thou speakest truth.")

Thanks David.
However, there is nothing wrong with the assumption. I selected one
case which fits the IF assumption, and checked the code line by line.
Even if I delete the IF line, the error still exist.
HELP, lon_left shows that lon_left is a flot.
PRINT,lon_left shows the exact value of 117.25.
That is why I think it is strange.

Lin
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: workbench stops responding
Next Topic: Re: make_rt for 32 and 64 bit applications?

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Fri Oct 10 10:42:15 PDT 2025

Total time taken to generate the page: 0.64155 seconds