def test_query_position(igmsp):
# One match
_, _, idx = igmsp.qcat.query_position((0.0019,17.7737), 1*u.arcsec)
assert idx >= 0
# Blank
_, _, idx = igmsp.qcat.query_position((10.038604,55.298477), 1*u.arcsec)
assert len(idx) == 0
# Multiple (insure rank order)
icoord = SkyCoord(ra=0.0055, dec=-1.5, unit='deg')
_, subcat, _ = igmsp.qcat.query_position(icoord, 1*u.deg)
# Test
coord = SkyCoord(ra=subcat['RA'], dec=subcat['DEC'], unit='deg')
sep = icoord.separation(coord)
isrt = np.argsort(sep)
assert isrt[0] == 0
assert isrt[-1] == len(subcat)-1
# Multiple but grab only 1
_, _, idxs = igmsp.qcat.query_position(icoord, 1*u.deg, max_match=1)
assert len(idxs) == 1
评论列表
文章目录