コード例 #1
0
def configure():
    lhcbApp.DataType = 'Upgrade'
    lhcbApp.Simulation = True
    lhcbApp.setProp(
        "Detectors",
        ['VP', 'UT', 'FT', 'Rich1Pmt', 'Rich2Pmt', 'Spd', 'Prs', 'Ecal', 'Hcal', 'Muon', 'Magnet']
    )

    vp_sequence = GaudiSequencer('PrPixelStoreClusters_Seq')
    vp_sequence.Members.append(PrPixelStoreClusters())

    appConf = ApplicationMgr()
    appConf.ExtSvc += ['ToolSvc', 'DataOnDemandSvc']
    appConf.TopAlg += [vp_sequence]

    PreLoadPions = NoPIDsParticleMaker('PreLoadPions')
    PreLoadPions.Particle = 'pions'
    PreLoadKaons = NoPIDsParticleMaker('PreLoadKaons')
    PreLoadKaons.Particle = 'kaon'
    appConf.TopAlg += [PreLoadPions, PreLoadKaons]
コード例 #2
0
def selMuonTTParts(name, protoParticlesMaker):
    """
    Make Particles out of the muonTT ProtoParticles
    """
    MuonTTParts = NoPIDsParticleMaker(name + "MuonTTParts")
    MuonTTParts.Particle = 'muon'
    MuonTTParts.addTool(TrackSelector)
    MuonTTParts.TrackSelector.TrackTypes = ["Long"]
    MuonTTParts.Input = "Rec/" + name + "_SelMuonTTPParts/ProtoParticles"
    MuonTTParts.OutputLevel = 4
    #
    return Selection(name + "_SelMuonTTParts",
                     Algorithm=MuonTTParts,
                     RequiredSelections=[protoParticlesMaker],
                     InputDataSetter=None)
コード例 #3
0
    def _InclPhiLDLine(self, name_prefix, config):
        name = name_prefix + "LDLine"
        ## Downstream kaons track selector
        from Configurables import NoPIDsParticleMaker
        pmalg = NoPIDsParticleMaker(name + 'NoPIDsKaons', Particle='kaon')
        pmalg.Particle = 'Kaon'
        from Configurables import TrackSelector
        pmalg.addTool(TrackSelector)
        pmalg.TrackSelector.TrackTypes = ['Downstream', 'Long']
        DownNoPIDsKaons = pmalg
        _DownNoPIDsKaons = DataOnDemand(Location="Phys/" + name +
                                        'NoPIDsKaons/Particles')

        #Phi2KK_DC = ""
        Phi2KK_CC = self._Phi2KK_CC(config)
        Phi2KK_MC = self._Phi2KK_MC(config, False, False)
        ps = config['LDPrescale']

        #print "CC and MC for InclPhi LD stripping line."
        #print "Prescale: ", ps
        #print Phi2KK_CC
        #print Phi2KK_MC

        _Phi2KK = CombineParticles(
            #  "_"+name+"Phi2KK"
            DecayDescriptor="phi(1020) -> K+ K-"
            #, DaughtersCuts = {"K+": Phi2KK_DC}
            ,
            CombinationCut=Phi2KK_CC,
            MotherCut=Phi2KK_MC)
        Phi2KK = Selection(name + "Phi2KK",
                           Algorithm=_Phi2KK,
                           RequiredSelections=[_DownNoPIDsKaons])

        return StrippingLine(
            name
            #              , HLT = "HLT_PASS_RE('Hlt1MB.*Decision')"
            ,
            prescale=ps,
            postscale=1,
            checkPV=False,
            selection=Phi2KK)
コード例 #4
0
caloProtos = tracking.hlt2ChargedAllPIDsProtos()
muonProtos = tracking.hlt2ChargedAllPIDsProtos()
hadronProtos = tracking.hlt2ChargedAllPIDsProtos()

##########################################################################
#
# Neutral protoparticles
#
neutralProtos = tracking.hlt2NeutralProtos()
##########################################################################
# Make the pions
#
Hlt2NoCutsPions = NoPIDsParticleMaker("Hlt2NoCutsPions")
Hlt2NoCutsPions.Input = hadronProtos.outputSelection()
Hlt2NoCutsPions.Output = 'Hlt2/Hlt2NoCutsPions/Particles'
Hlt2NoCutsPions.Particle = "pion"
Hlt2NoCutsPions.WriteP2PVRelations = False
##########################################################################
# Make the kaons
#
Hlt2NoCutsKaons = Hlt2NoCutsPions.clone("Hlt2NoCutsKaons")
Hlt2NoCutsKaons.Output = 'Hlt2/Hlt2NoCutsKaons/Particles'
Hlt2NoCutsKaons.Particle = "kaon"
##########################################################################
# Make the protons
#
Hlt2NoCutsProtons = Hlt2NoCutsPions.clone("Hlt2NoCutsProtons")
Hlt2NoCutsProtons.Output = 'Hlt2/Hlt2NoCutsProtons/Particles'
Hlt2NoCutsProtons.Particle = "proton"
##########################################################################
# Make the Muons
コード例 #5
0
# Make the Muons
#
Hlt2TagAndProbeMuons = CombinedParticleMaker("Hlt2TagAndProbeMuons")
Hlt2TagAndProbeMuons.Particle = "muon"
Hlt2TagAndProbeMuons.addTool(ProtoParticleMUONFilter('Muon'))
Hlt2TagAndProbeMuons.Muon.Selection = ["RequiresDet='MUON' IsMuon=True"]
Hlt2TagAndProbeMuons.Input = muonWithCaloProtos.outputSelection()
Hlt2TagAndProbeMuons.Output = 'Hlt2/Hlt2TagAndProbeMuons/Particles'
Hlt2TagAndProbeMuons.WriteP2PVRelations = False
##########################################################################
#
# No PID muon particles, for association with probe track
#
##########################################################################
Hlt2LongAssocParts = NoPIDsParticleMaker("Hlt2LongAssocParts")
Hlt2LongAssocParts.Particle = 'pion'  # call this a pion for CombinePart to distringuish from probe
Hlt2LongAssocParts.addTool(TrackSelector)
Hlt2LongAssocParts.TrackSelector.TrackTypes = ["Long"]
Hlt2LongAssocParts.Input = muonWithCaloProtos.outputSelection()
Hlt2LongAssocParts.Output = "Hlt2/Hlt2LongAssocMuons/Particles"

##########################################################################
#
# MuonTT particles
#
##########################################################################
Hlt2MuonTTParts = NoPIDsParticleMaker("Hlt2MuonTTParts")
Hlt2MuonTTParts.Particle = 'muon'
Hlt2MuonTTParts.addTool(TrackSelector)
Hlt2MuonTTParts.TrackSelector.TrackTypes = ["Long"]
Hlt2MuonTTParts.Input = muonTTProtos.outputSelection()