Beispiel #1
0
cands_filename = sys.argv[1]
fake_candidates = parser.parse(cands_filename)

planted_objects = match.PlantedObject(fake_candidates)

reals_filename = cands_filename.replace('cands', 'reals')
fake_reals = parser.parse(reals_filename)


missed_filename = os.path.join("missed", os.path.basename(cands_filename))
missed_fptr = open(missed_filename, 'w+')
missed_cands = astrom.StreamingAstromWriter(missed_fptr, sys_header=fake_candidates.sys_header)


(cands_index, cands_planted_index) = match.planted(fake_candidates, planted_objects, tolerance=10.0)
(reals_index, reals_planted_index) = match.planted(fake_reals, planted_objects, tolerance=10.0)
assert isinstance(cands_index, numpy.ma.MaskedArray)
assert isinstance(reals_index, numpy.ma.MaskedArray)

lost = []
found = []
for idx in range(len(cands_index)):
    if not cands_index.mask[idx]:
        found.append(cands_planted_index[cands_index[idx]])
        if reals_planted_index.mask[cands_index[idx]]:
            lost.append(cands_planted_index[cands_index[idx]])
            missed_cands.write_source(fake_candidates.get_sources()[idx])

if len(found) > 0:
    ascii.write(planted_objects.table[found], os.path.basename(reals_filename)+".fnd")
filename = sys.argv[1]

dirname = os.path.dirname(filename)
basename = os.path.basename(filename)
scramble_filename = os.path.join(dirname, basename[3:])


parser = astrom.AstromParser()
fake_candidates = parser.parse(filename)
for observation in fake_candidates.observations:
    observation.fk = ""

planted_objects = match.PlantedObject(fake_candidates)

(fk_index, planted_index) = match.planted(fake_candidates, planted_objects, tolerance=8.0)

print fk_index.mask
print fk_index
print planted_index

detections = fake_candidates.get_sources()

faint_fptr = open(scramble_filename, 'w+')
faint_cands = astrom.StreamingAstromWriter(faint_fptr,
                                           sys_header=fake_candidates.sys_header)

for idx in range(len(fk_index)):
    # Record source if no matching Object.planted entry
    print detections[idx], fk_index[idx]
    if fk_index.mask[idx]: