Esempio n. 1
0
def TOSFilter(name=None, sel=None):
    from Configurables import TisTosParticleTagger
    _filter = TisTosParticleTagger(name + "_TriggerTos")
    #_filter.TisTosSpecs = { "Hlt1Global%TOS" : 0, "Hlt2Global%TOS" : 0 }
    _filter.TisTosSpecs = {"Hlt1.*Decision%TOS": 0, "Hlt2.*Decision%TOS": 0}
    _filter.NoRegex = False
    _sel = Selection("Sel" + name + "_TriggerTos",
                     RequiredSelections=[sel],
                     Algorithm=_filter)
    return _sel
Esempio n. 2
0
def TOSFilter( name = None, sel = None ):
    """
    Function to return a selection object, filtering for TOS candidates from input selection
    """
    from Configurables import TisTosParticleTagger
    
    _filter = TisTosParticleTagger(name+"_TriggerTos")
    _filter.TisTosSpecs = { "Hlt1Global%TOS" : 0, "Hlt2Global%TOS" : 0 }
    _filter.NoRegex = True
    
    _sel = Selection("Sel" + name + "_TriggerTos", RequiredSelections = [ sel ], Algorithm = _filter )
    return _sel
Esempio n. 3
0
def TOSFilter( name = None, sel = None, trigger = None ):
    """
    Function to return a selection object, filtering for TOS candidates from input selection
    """
    from Configurables import TisTosParticleTagger
    
    _filter = TisTosParticleTagger(name+"_TriggerTos")
    _filter.TisTosSpecs = { trigger+"%TOS" : 0 }
    _filter.NoRegex = True
    
    from PhysSelPython.Wrappers import Selection
    _sel = Selection("Sel" + name + "_TriggerTos", RequiredSelections = sel, Algorithm = _filter )
    return _sel
Esempio n. 4
0
def filterHLT2ForBJpsiK(name, BJpsiKSel, triggers):
    """
    Filter B->J/psi K to be triggered on mu+track for the long track muon and Kaon
    """
    Hlt2BJpsiK = TisTosParticleTagger(name + "_Hlt2BJpsiK")
    #Hlt2BJpsiK.TisTosSpecs = { "Hlt2MuTrackDecision%TOS" : 0}
    Hlt2BJpsiK.TisTosSpecs = triggers
    Hlt2BJpsiK.ProjectTracksToCalo = False
    Hlt2BJpsiK.CaloClustForCharged = False
    Hlt2BJpsiK.CaloClustForNeutral = False
    Hlt2BJpsiK.TOSFrac = {4: 0.0, 5: 0.0}
    Hlt2BJpsiK.NoRegex = True
    #Hlt2BJpsiK.PassOnAll = True
    return Selection(name,
                     Algorithm=Hlt2BJpsiK,
                     RequiredSelections=[BJpsiKSel])
Esempio n. 5
0
def selHlt2BJpsiKMu(name, hlt1Filter, triggers):
    """
    Filter the long track muon to be TUS on a HLT2 mu+track trigger, for B->J/psi K selection (mainly a speed up)
    """
    Hlt2BJpsiKMu = TisTosParticleTagger(name + "Hlt2BJpsiKMu")
    #Hlt2BJpsiKMu.TisTosSpecs = { "Hlt2MuTrackDecision%TUS" : 0} # TUS, not TOS, not a typo!!!
    Hlt2BJpsiKMu.TisTosSpecs = triggers
    Hlt2BJpsiKMu.ProjectTracksToCalo = False
    Hlt2BJpsiKMu.CaloClustForCharged = False
    Hlt2BJpsiKMu.CaloClustForNeutral = False
    Hlt2BJpsiKMu.TOSFrac = {4: 0.0, 5: 0.0}
    Hlt2BJpsiKMu.NoRegex = True
    #Hlt2BJpsiKMu.PassOnAll = True # TESTING!
    #
    return Selection(name + "_SelHlt2BJpsiKMu",
                     Algorithm=Hlt2BJpsiKMu,
                     RequiredSelections=[hlt1Filter])
Esempio n. 6
0
def selHlt2Z(name, hlt1Filter, triggers):
    """
    Filter the long track muon to be TOS on a HLT2 single muon trigger, for Z selection
    """
    Hlt2Z = TisTosParticleTagger(name + "Hlt2Z")
    #Hlt2Z.TisTosSpecs = { "Hlt2SingleMuonHighPTDecision%TOS" : 0}
    Hlt2Z.TisTosSpecs = triggers
    Hlt2Z.ProjectTracksToCalo = False
    Hlt2Z.CaloClustForCharged = False
    Hlt2Z.CaloClustForNeutral = False
    Hlt2Z.TOSFrac = {4: 0.0, 5: 0.0}
    Hlt2Z.NoRegex = True
    #Hlt2Z.PassOnAll = True # TESTING!
    #
    return Selection(name + "_SelHlt2Z",
                     Algorithm=Hlt2Z,
                     RequiredSelections=[hlt1Filter])
Esempio n. 7
0
def selHlt1Upsilon(name, longPartsFilter, triggers):
    """
    Filter the long track muon to be TOS on a HLT1 single muon trigger, for Upsilon selection
    """
    Hlt1Upsilon = TisTosParticleTagger(name + "Hlt1Upsilon")
    #Hlt1Upsilon.TisTosSpecs = { "Hlt1TrackMuonDecision%TOS" : 0, "Hlt1SingleMuonNoIPDecision%TOS" : 0, "Hlt1SingleMuonHighPTDecision%TOS" : 0}
    Hlt1Upsilon.TisTosSpecs = triggers
    Hlt1Upsilon.ProjectTracksToCalo = False
    Hlt1Upsilon.CaloClustForCharged = False
    Hlt1Upsilon.CaloClustForNeutral = False
    Hlt1Upsilon.TOSFrac = {4: 0.0, 5: 0.0}
    Hlt1Upsilon.NoRegex = True
    #Hlt1Upsilon.PassOnAll = True # TESTING!
    #
    return Selection(name + "_SelHlt1Upsilon",
                     Algorithm=Hlt1Upsilon,
                     RequiredSelections=[longPartsFilter])
Esempio n. 8
0
def selHlt2BJpsiKK(
    name, longPartsFilter, triggers
):  # No HLT1 needed, as event in HLT1 already triggered with single muon
    """
    Filter the long track Kaon to be TUS on a HLT2 mu+track trigger, for B->J/psi K selection (mainly a speed up)
    """
    Hlt2BJpsiKK = TisTosParticleTagger(name + "Hlt2BJpsiKK")
    #Hlt2BJpsiKK.TisTosSpecs = { "Hlt2MuTrackDecision%TUS" : 0}  # TUS, not TOS, not a typo!!!
    Hlt2BJpsiKK.TisTosSpecs = triggers
    Hlt2BJpsiKK.ProjectTracksToCalo = False
    Hlt2BJpsiKK.CaloClustForCharged = False
    Hlt2BJpsiKK.CaloClustForNeutral = False
    Hlt2BJpsiKK.TOSFrac = {4: 0.0, 5: 0.0}
    Hlt2BJpsiKK.NoRegex = True
    #Hlt2BJpsiKK.PassOnAll = True # TESTING!
    #
    return Selection(name + "_SelHlt2BJpsiKK",
                     Algorithm=Hlt2BJpsiKK,
                     RequiredSelections=[longPartsFilter])