Esempio n. 1
0
    def preselection(self, row):
        ''' Preselection applied to events.

        Excludes FR object IDs and sign cut.
        '''
        if not selections.ZEESelection(row): return False
        if selections.overlap(row, 'e1', 'e2', 'e3', 'm'): return False
        if not selections.signalMuonSelection(row, 'm'): return False
        if not selections.signalElectronSelection(row, 'e3'): return False
        #if row.LT < 25: return False
        if row.e3Pt + row.mPt < 35: return False
        if row.e3MissingHits > 1: return False
        return True
Esempio n. 2
0
    def preselection(self, row):
        ''' Preselection applied to events.

        Excludes FR object IDs and sign cut.
        '''
        #Z Selection
        if not selections.ZEESelection(row): return False
        if selections.overlap(row, 'e1','e2','e3','t') : return False
        if not selections.signalTauSelection(row,'t'): return False
        if not bool(row.tAntiMuonLoose): return False
        if not bool(row.tAntiElectronMVA2Tight): return False
        if not selections.signalElectronSelection(row,'e3'): return False
        if row.LT < 25: return False
        return True
Esempio n. 3
0
    def preselection(self, row):
        ''' Preselection applied to events.

        Excludes FR object IDs and sign cut.
        '''
        #Z Selection
        if not selections.ZEESelection(row): return False
        if selections.overlap(row, 'e1', 'e2', 'm', 't'): return False
        if not selections.signalTauSelection(row, 't'): return False
        if not bool(row.tAntiMuonTight2): return False
        if not bool(row.tAntiElectronLoose): return False
        #if row.LT < 45: return False
        if row.mPt + row.tPt < 35: return False
        return selections.signalMuonSelection(row, 'm')
Esempio n. 4
0
    def zSelection(self, row):
        #if not selections.ZEESelectionNoVetos(row): return False
        #if selections.overlap(row, 'e1','e2','e3','t') : return False
        #if bool(row.eVetoMVAIso):       return False
        #if bool(row.bjetCSVVeto):       return False    
        #if row.tPt < 5:                 return False     
        #if not selections.signalElectronSelection(row,'e3'): return False

        if not selections.ZEESelection(row): return False
        if selections.overlap(row, 'e1','e2','e3','t') : return False
        if not selections.signalTauSelection(row,'t',5): return False
        if not bool(row.tAntiMuonLoose): return False
        if not bool(row.tAntiElectronMVA2Tight): return False
        if not selections.signalElectronSelection(row,'e3'): return Fals
        return True
Esempio n. 5
0
    def zSelection(self, row):
        #if not selections.ZEESelectionNoVetos(row): return False
        #if bool(row.muGlbIsoVetoPt10):  return False
        #if bool(row.bjetCSVVeto):       return False
        #if selections.overlap(row, 'e1','e2','m','t') : return False
        #if row.tPt < 5:                 return False
        ## if row.mPt < 10:              return False
        ## if row.mAbsEta > 2.4:         return False
        ## if row.mDZ > 0.1:             return False
        ## return True
        #return selections.signalMuonSelection(row,'m')

        if not selections.ZEESelection(row): return False
        if selections.overlap(row, 'e1', 'e2', 'm', 't'): return False
        if not selections.signalTauSelection(row, 't', 5): return False
        if not bool(row.tAntiMuonTight2): return False
        if not bool(row.tAntiElectronLoose): return False
        return selections.signalMuonSelection(row, 'm')
Esempio n. 6
0
    def preselection(self, row):
        ''' Preselection applied to events.

        Excludes FR object IDs and sign cut.
        '''
        if not selections.ZEESelection(row): return False
        #print "passed Z->EE selection"
        if selections.overlap(row, 'e1', 'e2', 't1', 't2'): return False
        if not selections.signalTauSelection(row, 't1'): return False
        if not selections.signalTauSelection(row, 't2'): return False
        if not bool(row.t1AntiMuonLoose2): return False
        if not bool(row.t1AntiElectronLoose): return False
        if not bool(row.t2AntiMuonLoose2): return False
        if not bool(row.t2AntiElectronLoose): return False
        if row.t1Pt < row.t2Pt: return False  #Avoid double counting
        #if row.LT < 75: return False
        if row.t1Pt + row.t2Pt < 70: return False
        return True
Esempio n. 7
0
 def zSelection(self, row):
     if not selections.ZEESelection(row): return False
     return (not selections.overlap(row, 'e1', 'e2', 't1', 't2'))