Ejemplo n.º 1
0
def test_extratarg():
    #Test that extratarg tag is
    # 0 or 4 (duplicates) for main survey targets
    # 1 for commissioning (bit 1)
    # 2 for tellurics (bit 2)
    # 3 1m (bit 3)
    mainIndx= (((_DATA['APOGEE_TARGET1'] & 2**11) != 0)\
                   +((_DATA['APOGEE_TARGET1'] & 2**12) != 0)
               +((_DATA['APOGEE_TARGET1'] & 2**13) != 0))
    mainIndx*= (_DATA['EXTRATARG'] != 2**4) #rm duplicates
    #Also rm commissioning
    commIndx= _DATA['COMMISS'] == 1
    mainIndx*= (True-commIndx)
    assert numpy.sum(mainIndx*(_DATA['EXTRATARG'] != 0)) == 0, '%i main survey targets have EXTRATARG neq 0' % numpy.sum(mainIndx*_DATA['EXTRATARG'] > 0)
    commBitSet= numpy.array([bitmask.bit_set(1,e) for e in _DATA['EXTRATARG']],
                            dtype='bool')
    assert numpy.sum(commIndx*(True-commBitSet)) == 0, '%i commissioning targets do not have bit 1 in EXTRATARG set' % numpy.sum(commIndx*(True-commBitSet)) == 0
    tellIndx= (_DATA['APOGEE_TARGET2'] & 2**9) != 0
    tellBitSet= numpy.array([bitmask.bit_set(2,e) for e in _DATA['EXTRATARG']],
                            dtype='bool')
    #Rm the tellurics that are main targets
    tellIndx*= (True-mainIndx)
    assert numpy.sum(tellIndx*(True-tellBitSet)) == 0, '%i telluric targets do not have bit 2 in EXTRATARG set' % numpy.sum(tellIndx*(True-tellBitSet))
    #1m
    onemIndx= numpy.array(['apogee.apo1m' in s for s in _DATA['APSTAR_ID']])
    onemBitSet= numpy.array([bitmask.bit_set(3,e) for e in _DATA['EXTRATARG']],
                            dtype='bool')
    assert numpy.sum(onemIndx*(True-onemBitSet)) == 0, '%i 1m targets do not have bit 3 in EXTRATARG set' % numpy.sum(onemIndx*(True-onemBitSet))
    return None
Ejemplo n.º 2
0
def test_extratarg():
    #Test that extratarg tag is
    # 0 or 4 (duplicates) for main survey targets
    # 1 for commissioning (bit 1)
    # 2 for tellurics (bit 2)
    # 3 1m (bit 3)
    mainIndx= (((_DATA['APOGEE_TARGET1'] & 2**11) != 0)\
                   +((_DATA['APOGEE_TARGET1'] & 2**12) != 0)
               +((_DATA['APOGEE_TARGET1'] & 2**13) != 0))
    mainIndx*= (_DATA['EXTRATARG'] != 2**4) #rm duplicates
    #Also rm commissioning
    commIndx= _DATA['COMMISS'] == 1
    mainIndx*= (True^commIndx)
    assert numpy.sum(mainIndx*(_DATA['EXTRATARG'] != 0)) == 0, '%i main survey targets have EXTRATARG neq 0' % numpy.sum(mainIndx*_DATA['EXTRATARG'] > 0)
    commBitSet= numpy.array([bitmask.bit_set(1,e) for e in _DATA['EXTRATARG']],
                            dtype='bool')
    assert numpy.sum(commIndx*(True^commBitSet)) == 0, '%i commissioning targets do not have bit 1 in EXTRATARG set' % numpy.sum(commIndx*(True^commBitSet)) == 0
    tellIndx= (_DATA['APOGEE_TARGET2'] & 2**9) != 0
    tellBitSet= numpy.array([bitmask.bit_set(2,e) for e in _DATA['EXTRATARG']],
                            dtype='bool')
    #Rm the tellurics that are main targets
    tellIndx*= (True^mainIndx)
    assert numpy.sum(tellIndx*(True^tellBitSet)) == 0, '%i telluric targets do not have bit 2 in EXTRATARG set' % numpy.sum(tellIndx*(True^tellBitSet))
    #1m
    onemIndx= numpy.array(['apogee.apo1m' in s for s in _DATA['APSTAR_ID']])
    onemBitSet= numpy.array([bitmask.bit_set(3,e) for e in _DATA['EXTRATARG']],
                            dtype='bool')
    assert numpy.sum(onemIndx*(True^onemBitSet)) == 0, '%i 1m targets do not have bit 3 in EXTRATARG set' % numpy.sum(onemIndx*(True^onemBitSet))
    return None
Ejemplo n.º 3
0
def test_extratarg():
    #Test that extratarg tag is
    # 0 for main survey targets, 
    # 1 for commissioning (bit 1)
    # 2 for tellurics (bit 2)
    mainIndx= (((_DATA['APOGEE_TARGET1'] & 2**11) != 0)\
                   +((_DATA['APOGEE_TARGET1'] & 2**12) != 0)
               +((_DATA['APOGEE_TARGET1'] & 2**13) != 0))
    #Also rm commissioning
    commIndx= _DATA['COMMISS'] == 1
    mainIndx*= (True-commIndx)
    assert numpy.sum(mainIndx*(_DATA['EXTRATARG'] != 0)) == 0, '%i main survey targets have EXTRATARG neq 0' % numpy.sum(mainIndx*_DATA['EXTRATARG'] > 0)
    commBitSet= numpy.array([bitmask.bit_set(1,e) for e in _DATA['EXTRATARG']],
                            dtype='bool')
    assert numpy.sum(commIndx*(True-commBitSet)) == 0, '%i commissioning targets do not have bit 1 in EXTRATARG set' % numpy.sum(commIndx*(True-commBitSet)) == 0
    tellIndx= (_DATA['APOGEE_TARGET2'] & 2**9) != 0
    tellBitSet= numpy.array([bitmask.bit_set(2,e) for e in _DATA['EXTRATARG']],
                            dtype='bool')
    #Rm the tellurics that are main targets
    tellIndx*= (True-mainIndx)
    assert numpy.sum(tellIndx*(True-tellBitSet)) == 0, '%i telluric targets do not have bit 2 in EXTRATARG set' % numpy.sum(tellIndx*(True-tellBitSet))
    return None
Ejemplo n.º 4
0
def bitsNotSet(bitmask,maskbits):
    """
    Given a bitmask, returns True where any of maskbits are set 
    and False otherwise.
    
    bitmask:   bitmask to check
    maskbits:  bits to check if set in the bitmask
    
    """
    goodLocs_bool = np.zeros(bitmask.shape).astype(bool)
    for m in maskbits:
        bitind = bm.bit_set(m,bitmask)
        goodLocs_bool[bitind] = True
    return goodLocs_bool