[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[task #15713] Make quad structure to make unique hashes of 4 objects

From: Mohammad Akhlaghi
Subject: [task #15713] Make quad structure to make unique hashes of 4 objects
Date: Mon, 6 Jul 2020 13:25:05 -0400 (EDT)
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Firefox/78.0

Follow-up Comment #4, task #15713 (project gnuastro):

Very good! But just one thing: probably using the 3 nearest neighbors isn't
too good (there will be too many repetitions and thus too few quads for the

Maybe a better way to select the three neighbors would be this: let's assume
the healpix size is 'h' degrees. Look in a circle of radius of 'h' degrees
around each point sort them by distance, so the series of points becomes (p[0]
is the nearest, p[n] i the farthest):

p[0], p[1], ... p[n-4], p[n-3], p[n-2], p[n-1], p[n]

Then select p[n], p[n-2], p[n-4] as the other three points for constructing
the quad. 

I feel this will create less repetition between the quads (since the
probability that they be the same is much less than the 3 nearest neighbors).

This method has the advantage that the quads will be large (on a scale of the
healpix), thus decreasing statistical errors.

It will thus be a little more computationally expensive, but I think it will
be worth it. To fix the computational cost when there are many points within
the circle of radius 'h', it may be possible to exploit the kd-tree to find
these points instead of actually sorting them. Or we can simply discard many
of the points closer than 'h/2'. 

Another method (that is still seems to be more robust than the three nearest
neighbors) is to randomly select three points from all the points within a
distance of 'h'.

What do you think?


Reply to this item at:


  Message sent via Savannah

reply via email to

[Prev in Thread] Current Thread [Next in Thread]