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

        Excludes FR object IDs and sign cut.
        '''
        if not selections.ZMuMuSelection(row): return False
        if selections.overlap(row, 'm1','m2','e','m3') : return False
        if not selections.signalMuonSelection(row,'m3'): return False
        if not selections.signalElectronSelection(row,'e'): return False
        #if row.LT < 25: return False
        if row.ePt + row.m3Pt < 35: return False
        if row.eMissingHits > 1: return False
        return True
Ejemplo n.º 2
0
    def preselection(self, row):
        ''' Preselection applied to events.

        Excludes FR object IDs and sign cut.
        '''
        if not selections.ZMuMuSelection(row): return False
        if selections.overlap(row, 'm1', 'm2', 'm3', '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.m3Pt + row.tPt < 35: return False
        #if (row.m3_t_SVfitMass < 100 or row.m3_t_SVfitMass > 150): return False # for MSSM
        return selections.signalMuonSelection(row, 'm3')
Ejemplo n.º 3
0
    def preselection(self, row):
        ''' Preselection applied to events.

        Excludes FR object IDs and sign cut.
        '''
        #Z Selection
        if not selections.ZMuMuSelection(row): return False
        if selections.overlap(row, 'm1', 'm2', 'e', '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 bool(row.tAntiElectronTight): return False
        #if row.LT < 45: return False
        if row.ePt + row.tPt < 25: return False
        return selections.signalElectronSelection(row, 'e')
Ejemplo n.º 4
0
    def preselection(self, row):
        ''' Preselection applied to events.

        Excludes FR object IDs and sign cut.
        '''
        if not selections.ZMuMuSelection(row): return False
        if selections.overlap(row, 'm1', 'm2', '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
Ejemplo n.º 5
0
    def zSelection(self, row):
        #if not selections.ZMuMuSelectionNoVetos(row): return False
        #if bool(row.muGlbIsoVetoPt10):  return False
        #if bool(row.bjetCSVVeto):       return False
        #if selections.overlap(row, 'm1','m2','m3','t') : return False
        #if row.tPt < 5:                 return False
        ### if row.m3Pt < 10:              return False
        ### if row.m3AbsEta > 2.4:         return False
        ### if row.m3DZ > 0.1:             return False
        ### return True
        #return selections.signalMuonSelection(row,'m3')

        if not selections.ZMuMuSelection(row): return False
        if selections.overlap(row, 'm1', 'm2', 'm3', '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, 'm3')
Ejemplo n.º 6
0
    def zSelection(self, row):
        #if not selections.ZMuMuSelectionNoVetos(row): return False
        #if selections.overlap(row, 'm1','m2','e','t') : return False
        #if bool(row.eVetoMVAIso):       return False
        #if bool(row.bjetCSVVeto):       return False
        #if row.tPt < 5:                  return False
        ## if row.ePt     < 10:            return False
        ## if row.eAbsEta > 2.5:           return False
        ## if row.eDZ     > 0.1:           return False
        ## return True
        #return selections.signalElectronSelection(row,'e')

        if not selections.ZMuMuSelection(row): return False
        if selections.overlap(row, 'm1', 'm2', 'e', '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 bool(row.tAntiElectronTight): return False
        #if row.LT < 45: return False
        return selections.signalElectronSelection(row, 'e')
Ejemplo n.º 7
0
 def zSelection(self, row):
     if not selections.ZMuMuSelection(row): return False
     return (not selections.overlap(row, 'm1', 'm2', 't1', 't2'))