uk.ac.starlink.table.join
Class HEALPixMatchEngine

java.lang.Object
  |
  +--uk.ac.starlink.table.join.SkyMatchEngine
        |
        +--uk.ac.starlink.table.join.HEALPixMatchEngine
All Implemented Interfaces:
MatchEngine

public class HEALPixMatchEngine
extends SkyMatchEngine

SkyMatchEngine implementation which works using the HEALPix pixelisation scheme. This works better than the HTM-based one for two reasons:

  1. It tends to be much faster to calculate a list of small pixels in a region, since the calculations are not hierarchical
  2. The pixels are square which means they generally have fewer neighbours than triangular HTM ones of a similar size

This implementation is based on the PixTools Java HEALPix classes written by Nickolai Kouropatkine at Fermilab.

See Also:
http://home.fnal.gov/~kuropat/HEALPIX/PixTools.html

Field Summary
 
Fields inherited from interface uk.ac.starlink.table.join.MatchEngine
NO_BINS
 
Constructor Summary
HEALPixMatchEngine(double separation)
          Constructs a new match engine which considers two points (RA,Dec tuples) to match if they are within a given angular distance on the celestial sphere.
 
Method Summary
 Object[] getBins(Object[] radec)
          Returns a set of keys for bins into which possible matches for a given tuple might fall.
 void setSeparation(double separation)
          Configures this match engine to consider two points (RA,Dec tuples) to match if they are within a given angular distance on the celestial sphere.
 
Methods inherited from class uk.ac.starlink.table.join.SkyMatchEngine
canBoundMatch, getMatchBounds, getMatchParameters, getSeparation, getTupleInfos, matchScore, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

HEALPixMatchEngine

public HEALPixMatchEngine(double separation)
Constructs a new match engine which considers two points (RA,Dec tuples) to match if they are within a given angular distance on the celestial sphere.

Parameters:
separation - match radius in radians
Method Detail

setSeparation

public void setSeparation(double separation)
Description copied from class: SkyMatchEngine
Configures this match engine to consider two points (RA,Dec tuples) to match if they are within a given angular distance on the celestial sphere.

Overrides:
setSeparation in class SkyMatchEngine
Parameters:
separation - match radius in radians

getBins

public Object[] getBins(Object[] radec)
Description copied from interface: MatchEngine
Returns a set of keys for bins into which possible matches for a given tuple might fall. The returned objects can be anything, but should have their equals and hashCode methods implemented properly for comparison.

Parameters:
radec - tuple
Returns:
set of bin keys which might be returned by invoking this method on other tuples which count as matches for the submitted tuple

Copyright © 2004 CLRC: Central Laboratory of the Research Councils. All rights reserved.