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

Home » Public Forums » archive » Re: Pair Counts in an Annulus, for large data sets
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: Pair Counts in an Annulus, for large data sets [message #51259 is a reply to message #51258] Sat, 11 November 2006 03:51 Go to previous messageGo to previous message
enod is currently offline  enod
Messages: 41
Registered: November 2004
Member
Maybe you can try WHERE((seperation gt (r)) and (seperation lt (r +
deltar_r)).


Tian


On Nov 11, 1:52 pm, fatcat3...@gmail.com wrote:
> Hi There
>
> I have a large data set (~350,000 galaxies) of x,y points. For a given
> radius R [R=sqrt(x^2+y^2)], I need to count the total number of pairs
> in the annulus R+deltaR. That is, I choose a given data point as my
> center, then count the number of points that lie inside that annulus. I
> then do this for each of my data points to get the total number of
> pairs. A simplified version of the code I'm using now is as follows:
>
> ****************
> n = n_elements(x) ; number of data points
> seperation = fltarr(n) ; the seperation between data points
>
> for i=0L,n-1 do begin
> seperation = sqrt((x - x[i])^2 + (y - y[i])^2) ;distance between the
> two points, centering on point "i"
> seperation[i] = 999 ;simply because I don't want it to count itself
> as a pair
>
> if_inside = ((seperation gt (r)) and (seperation lt (r + deltar_r))
> ;has value "1" for points which lie inside, "0" for those outside
> counter = counter + total(if_sep) ;count up the number of pairs
> endfor
>
> num_pairs = counter / 2 ; since I don't want to count everything twice
> *****************
>
> I've tried my best to avoid the urge to put lots of for loops
> everywhere (you should have seen it before!), but I just don't know how
> to make it drastically more efficient. There must be a way though,
> because the computations for my code are just ridiculous.... Is there a
> way to eliminate that nasty loop I have, which would help things?
>
> Any help you can give would be greatly appreciated. I'm very new to
> IDL, as you surely know. I'm and undergrad, too.
>
> Tara.
[Message index]
 
Read Message
Read Message
Read Message
Previous Topic: Image warping in IDL
Next Topic: 'from lon-lat to TM' source code?

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

Current Time: Wed Oct 08 18:14:17 PDT 2025

Total time taken to generate the page: 0.00436 seconds