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

Home » Public Forums » archive » Re: Entry comparison between two arrays
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: Entry comparison between two arrays [message #60516 is a reply to message #60514] Tue, 20 May 2008 09:04 Go to previous message
juggernaut5k is currently offline  juggernaut5k
Messages: 1
Registered: May 2008
Junior Member
On May 20, 10:54 am, "crazywhiteboy...@gmail.com"
<crazywhiteboy...@gmail.com> wrote:
> Hello everyone,
>
> I'm new to IDL (started using last week for a summer research
> position), and have been working on a problem of comparing two
> structures of arrays. The concept is that each of the structures
> contain arrays of a year fraction, a day-of-year fraction, and other
> data that I need compare. However, to do this comparison I need to
> make sure both sets of data are corresponding to the same time (within
> a range of error). My initial thought was to do this in a loop (only
> have previous experience programming with Java and C doing small data
> sets) that records the array indexes of corresponding pairs, and use
> those indexes to build an another array that contains the two sets of
> data from the two structures of arrays side by side in an array. This
> idea works fine, but when I start trying to accomplish it on two
> arrays of roughly 1 million entries each, it spikes up to taking my
> whole summer to run. So what I'm looking for is how I might do this in
> array based calculations in IDL. If anyone can give me an idea, or
> point me in the direction of a good tool to use, I'd appreciate it
> much. Thanks

My guess as to how to solve this problem is to decide what your range
of error is and do something like this.
structure1 = {frac_year:[...], frac_day:[...], .....}
structure2 = {frac_year:[...], frac_day:[...], .....}

You can access the arrays in these structures either by name...(i.e.
structure1.frac_year) or by number...(i.e. structure1.(0))
Both have their usefulness for understanding code and ease of
automation.

diff = abs(structure1.(0) - structure2.(0)) ;- You can use numerical
structure indexing if you need to loop through a lot of structure
elements.
result = where(diff GT epsilon, count) ;- Epsilon is your error and
I'm guessing that you want to not continue if you surpass this error?
;- Or maybe you just want to omit
these points...I'm not sure.

At any rate if count is greater than zero then you have elements in
your arrays that are not within your set error bounds.
Do with them as you will by using result to index each arrays "outside
the error bound" elements.

Not sure if this is even close to what you want but it would work for
what I would envision I'd want....if I did something....
[Message index]
 
Read Message
Read Message
Read Message
Previous Topic: Entry comparison between two arrays
Next Topic: Re: DLM 32/64 bits

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

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

Total time taken to generate the page: 0.48325 seconds