sundownDate = '20131204' obsDate = '20131205' seq = '033506' populationMax=1000 beginTime = 0 expTime = 300 fn = FileName(run, sundownDate, obsDate+"-"+seq) cosmic = Cosmic(fn, beginTime=0, endTime=10, loggingLevel=logging.INFO) fcd = cosmic.findCosmics(nSigma=10, stride=10, threshold=15) print "done: fcd.keys=",fcd.keys() maskedTime = Cosmic.countMaskedBins(fcd['interval']) maskedPercent = 100*maskedTime/(cosmic.endTime-cosmic.beginTime) print "maskedPercent=",maskedPercent cosmic.file.setCosmicMask(fcd['interval']) fcd2 = cosmic.findCosmics() #plt.xkcd() plt.plot(fcd['populationHg'][0],drawstyle='steps-mid',label="all data") plt.plot(fcd2['populationHg'][0],drawstyle='steps-mid',label="cosmics masked") plt.xlim(xmax=1000) plt.xscale('symlog',linthreshx=0.9) plt.yscale('symlog',linthreshy=0.5) plt.title('%s %s %s %s'%(run,sundownDate,obsDate,seq)) plt.xlabel("number of photons in one tick") plt.ylabel("number of ticks")
def testCountMaskedBins(self): """count the number of time bins that the interval masks""" i = interval([1,3]) | interval([10,20]) cmb = Cosmic.countMaskedBins(i) self.assertEquals(12,cmb)
beginTime = 123 endTime = 133 plt.clf() for nSigma,stride,threshold,style in zip(nSigmas, strides, thresholds, styles): print "seq=",seq fn = FileName(run, sundownDate, obsDate+"-"+seq) #cosmic = Cosmic(fn, endTime='exptime') cosmic = Cosmic(fn, beginTime=beginTime, endTime=endTime, loggingLevel=logging.CRITICAL) fc = cosmic.findCosmics(stride=stride, threshold=threshold, populationMax=populationMax, nSigma=nSigma) tMasked = Cosmic.countMaskedBins(fc['interval']) ppmMasked = 1000000*tMasked/(endTime-beginTime) print "ppmMasked=",ppmMasked cosmic.file.cosmicMask = fc['interval'] cosmic.file.cosmicMaskIsApplied = True fc = cosmic.findCosmics(stride=stride, threshold=threshold, populationMax=populationMax, nSigma=nSigma) print "this should be zero: ",Cosmic.countMaskedBins(fc['interval']) populationSum = np.array(fc['populationHg'][0]) del cosmic