Idl中数组match
跳到导航
跳到搜索
一维数组的match
astro_lib中的match和match2
- match,(数组中不能有重复)
CALLING SEQUENCE:
match, a, b, suba, subb, [ COUNT =, /SORT, EPSILON = ]
超大整数的match,比如SDSS的objID会出问题
- match2可以用在某一样本是另外一个样本的子样本,这样可以完全匹配
match2,a,b,suba,subb
如果a完全是b的子集,那么b[suba]=a
该程序可用于找出子样本的补集
a=[3,2,1] b=indgen(5) match2,a,b,suba,subb print,b[where(subb eq -1)]
多维数据的match
- matchnd
天球坐标的match
- idlutils中的spherematch
- spherematch,Ra1,Dec1,Ra2,Dec2,matchlength,ID1,ID2,dis
- 注意matchlength的单位是度
- 我自己根据spherematch写了一个spherematch_kth,可以自动搜索在某个距离范围内,第kth个match [1]
- idlutils里面有djs_ANGLE_NMATCH 和djs_ANGLE_MATCH程序,功能类似。
- sdssidl中有一个CLOSE_MATCH_RADEC