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

Home » Public Forums » archive » Re: explain THIS one
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: explain THIS one [message #58533 is a reply to message #58532] Mon, 04 February 2008 06:51 Go to previous messageGo to previous message
Spon is currently offline  Spon
Messages: 178
Registered: September 2007
Senior Member
On Feb 4, 2:31 pm, cmanc...@ufl.edu wrote:
> On Feb 4, 9:29 am, cmanc...@ufl.edu wrote:
>
>
>
>> I'm having an error in my code and I stop it to check out what is
>> going on. Here's the three relevant lines of code:
>
>> minmag = min(sims[mag,*],max=maxmag)
>> nbins = (maxmag-minmag)/magbinsize
>> magres = fltarr(3*nfilters,nbins)
>
>> Here's some commands I type into a command line to investigate my
>> issues:
>
>> IDL> help,nbins
>> NBINS FLOAT = 7.00000
>> IDL> help,magres
>> MAGRES FLOAT = Array[6, 6]
>
>> Anyone see a problem here? nbins is a float of size 7.0, and yet
>> magres ends up with 6 rows!!!! To add to the fun I then type the
>> following:
>
>> IDL> nbins = 7.0
>> IDL> magres = fltarr(3*nfilters,nbins)
>> IDL> help,magres
>> MAGRES FLOAT = Array[6, 7]
>
>> To summarize, my array is created with the wrong dimensions, so I re-
>> assign one of the variables with the exact same value that it had
>> before, recreate my array, and it works! ?????? Looks like a bug to
>> me...
>
> And in case anyone thinks this might be part of the problem:
>
> IDL> help,nbins
> NBINS FLOAT = 7.00000
> IDL> help,nfilters
> NFILTERS LONG = 2
> IDL> magres = fltarr(3*nfilters,long(nbins))
> IDL> help,magres
> MAGRES FLOAT = Array[6, 6]

help,fltarr(6,6.99)
<Expression> FLOAT = Array[6, 6]

nbins = (maxmag-minmag)/magbinsize
If this ever returns a value just under 7.00000 it'll always be
rounded down when it's converted . I suspect this is what's happening
to you.

To test it, you could try:
magres = fltarr(3*nfilters,round(nbins))

Does this fix your problem?
Chris
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Previous Topic: explain THIS one
Next Topic: How to perform the 1-D signal filter?

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

Current Time: Sat Oct 11 15:00:58 PDT 2025

Total time taken to generate the page: 0.40106 seconds