\hline""" print "Cut & ", for s in samples: print groups[s]['mplabel']+' & ', print 'Total & Data & Signal \\\\' print '\\hline' for il in [0,1]: nl=il+3 cut="(mp>"+str(mmin)+") & (mp<"+str(mmax)+")" if il: cut+=" & (mn>"+str(mmin)+") & (mn<"+str(mmax)+")" if mod in extras.keys(): cut+=" & "+extras[mod][il] for c in range(len(cuts[cMod][il])): cut+=" & "+cuts[cMod][il][c].substitute(mass=m) filt=filterByCutHDF(flist+['ap-'+str(m),'pp-'+str(m)],cut,["mp"],getModel(mod)) yld=getYieldHDF(filt,samples,getModel(mod),addErr=False) print str(nl)+'l-'+str(c+1),'&', for s in samples: print "$"+str(round(yld[s],2))+"\pm"+str(round(yld[s+'-err'],2))+'$ &', print "$"+str(round(yld['bg'],2))+'\pm'+str(round(yld['bg-err'],2))+'$ & $'+str(yld['data'])+'\pm'+str(round(yld['data-err'],2))+'$ & $'+str(round(yld['signal'],2))+'\pm'+str(round(yld['signal-err'],2))+'$ \\\\' print '\\hline' print """ \end{tabular} } \end{center} \end{table*} """
if il: cutCR+=" & ((mn<"+str(mmin)+") | (mn>"+str(mmax)+"))" cutSR+=" & (mn>"+str(mmin)+") & (mn<"+str(mmax)+")" if mod in extras.keys(): cutCR+=" & "+extras[mod][il] cutSR+=" & "+extras[mod][il] cutCR+=" & "+cuts[cMod][il][0].substitute(mass=mass) for c in range(mx): cutSR+=" & "+cuts[cMod][il][c].substitute(mass=mass) print "Debug:",il,nt,cutCR,cutSR crdata=filterByCutHDF(flist2,cutCR,["mp"],getModel(mod)) srdata=filterByCutHDF(flist2,cutSR,["mp"],getModel(mod)) yldCR=getYieldHDF(crdata,samples,getModel(mod),addErr=True) yldSR=getYieldHDF(srdata,samples,getModel(mod),addErr=True) nDataCR[il][nt]=yldCR['data'] nDataSR[il][nt]=yldSR['data'] nBGCR[il][nt]=yldCR['bg'] nBGSR[il][nt]=yldSR['bg'] #for s in samples: # nBGCR[il][nt]+=yldCR[s] # nBGSR[il][nt]+=yldSR[s] nSigPP[il][nt]+=yldSR['pp-'+str(mass)] nSigAP[il][nt]+=yldSR['ap-'+str(mass)] alpha=nBGSR[il][nt]*1./nBGCR[il][nt]