Viewing contents of file '../idllib/astron/pro/db_or.pro'
function db_or,list1,list2
;+
; NAME:
; DB_OR
; PURPOSE:
; Combine two vectors of entry numbers, removing duplicate values.
; EXPLANATION:
; DB_OR can also be used to remove duplicate values from any longword
; vector
;
; CALLING SEQUENCE:
; LIST = DB_OR( LIST1 ) ;Remove duplicate values from LIST1
; or
; LIST = DB_OR( LIST1, LIST2 ) ;Concatenate LIST1 and LIST2, remove dups
;
; INPUTS:
; LIST1, LIST2 - Vectors containing entry numbers, must be non-negative
; integers or longwords.
; OUTPUT:
; LIST - Vector containing entry numbers in either LIST1 or LIST2
;
; METHOD
; DB_OR returns where the histogram of the entry vectors is non-zero
;
; PROCEDURE CALLS
; ZPARCHECK - checks parameters
; REVISION HISTORY:
; Written, W. Landsman February, 1989
; Check for degenerate values W.L. February, 1993
; Converted to IDL V5.0 W. Landsman September 1997
;-
if N_params() EQ 0 then begin
print,'Syntax - list = db_or( list1, [ list2] )
return, -1
endif
zparcheck, 'DB_OR', list1, 1, [1,2,3], [1,2], 'First Entry Vector'
if N_params() eq 1 then begin
minlist1 = min( list1, max = maxlist1 )
if ( minlist1 EQ maxlist1 ) then return, minlist1 else $
return, where( histogram( list1 ) GT 0 ) + minlist1
endif
zparcheck, 'DB_OR', list1, 1, [1,2,3], [1,2], 'Second Entry Vector'
list = [list1, list2]
minlist = min( list, max = maxlist )
if ( minlist EQ maxlist ) then return, minlist else $
return,where( histogram( list ) GT 0 ) + minlist
end