Пример #1
0
    def MakeVeloParticles(self, name, particle, protoParticlesMaker):

        particleMaker = NoPIDsParticleMaker("For%sParticleMaker%s" %
                                            (self.name, name),
                                            Particle=particle)
        particleMaker.Input = self.VeloProtoOutputLocation

        DataOnDemandSvc().AlgMap.update({
            "/Event/Phys/" + particleMaker.name() + '/Particles':
            particleMaker.getFullName(),
            "/Event/Phys/" + particleMaker.name() + '/Vertices':
            particleMaker.getFullName()
        })

        AllVeloParticles = Selection("For%sSelAllVeloParts%s" %
                                     (self.name, name),
                                     Algorithm=particleMaker,
                                     RequiredSelections=[protoParticlesMaker],
                                     InputDataSetter=None)

        ### filter on the IP of the velo tracks
        return Selection(
            "For%sSelVeloParts%s" % (self.name, name),
            Algorithm=FilterDesktop(
                name + "For%sFilterVeloTrackIP%s" % (self.name, name),
                Code="(MIPDV(PRIMARY) > %(VeloMINIP)s)" % self.__confdict__),
            RequiredSelections=[AllVeloParticles])
Пример #2
0
def makeAllParticles(name, trackcont, particle):
    particleMaker = NoPIDsParticleMaker(name, Particle=particle)
    particleMaker.Input = "Rec/ProtoP/" + trackcont + "ProtoPMaker"
    DataOnDemandSvc().AlgMap.update({
        "/Event/Phys/" + particleMaker.name() + '/Particles':
        particleMaker.getFullName(),
        "/Event/Phys/" + particleMaker.name() + '/Vertices':
        particleMaker.getFullName()
    })
Пример #3
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)
Пример #4
0
def makeMyMuons(name, protoParticlesMaker):
   """
     Make Particles out of the muon ProtoParticles
   """
   particleMaker =  NoPIDsParticleMaker(name+"ParticleMaker" , Particle = "Muon")
   particleMaker.Input = "Rec/ProtoP/"+name+"ProtoPMaker/ProtoParticles"
   #particleMaker.OutputLevel = 0

   DataOnDemandSvc().AlgMap.update( {
           "/Event/Phys/" + particleMaker.name() + '/Particles' : particleMaker.getFullName(),
           "/Event/Phys/" + particleMaker.name() + '/Vertices'  : particleMaker.getFullName() 
   } )


   return Selection(name+"SelVeloMuonParts", Algorithm = particleMaker, RequiredSelections = [protoParticlesMaker], InputDataSetter=None)
Пример #5
0
def configIso():
    from Configurables import ChargedProtoParticleMaker, DaVinci
    veloprotos = ChargedProtoParticleMaker("ProtoPMaker")
    veloprotos.Inputs = ["Rec/Track/Best"]
    veloprotos.Output = "Rec/ProtoP/myProtoPMaker/ProtoParticles"
    DaVinci().appendToMainSequence( [ veloprotos ])

    from Configurables       import ProtoParticleCALOFilter, CombinedParticleMaker,NoPIDsParticleMaker
    from CommonParticles.Utils import trackSelector, updateDoD
    algorithm = NoPIDsParticleMaker('StdNoPIDsVeloPions',  Particle =
            'pion',  )
    algorithm.Input = "Rec/ProtoP/myProtoPMaker/ProtoParticles"
    selector = trackSelector ( algorithm , trackTypes = ['Velo'] )
    locations = updateDoD ( algorithm )
    DaVinci().appendToMainSequence( [ algorithm ]) 
Пример #6
0
name = "Lambdab2Lcmunu"
veloprotos = ChargedProtoParticleMaker(name + "ProtoPMaker")
veloprotos.Inputs = ["Rec/Track/Best"]
veloprotos.Output = "Rec/ProtoP/myProtoPMaker/ProtoParticles"

DaVinci().appendToMainSequence([veloprotos])

from Gaudi.Configuration import *
from Configurables import ProtoParticleCALOFilter, CombinedParticleMaker, NoPIDsParticleMaker
from CommonParticles.Utils import *

algorithm = NoPIDsParticleMaker(
    'StdNoPIDsVeloPions',
    Particle='pion',
)
algorithm.Input = "Rec/ProtoP/myProtoPMaker/ProtoParticles"
selector = trackSelector(algorithm, trackTypes=['Velo'])

locations = updateDoD(algorithm)
DaVinci().appendToMainSequence([algorithm])

##############################################################################################
##### TOOLS AND TRIGGERS AND STRIPPING LINES AND LOKI VARIABLES
##############################################################################################
enablePacking = True

from Configurables import DecayTreeTuple, FitDecayTrees, TupleToolRecoStats, TupleToolTrigger, TupleToolSubMass
from Configurables import TupleToolTISTOS, CondDB, SelDSTWriter, TupleToolL0Calo
from Configurables import TupleToolTrackInfo, TupleToolRICHPid, TupleToolGeometry, TupleToolPid
from Configurables import TupleToolANNPID
from Configurables import TupleToolSLTruth
Пример #7
0
#hadronProtos 	= tracking.hlt2ChargedNoPIDsProtos( )

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"
Пример #8
0
# Customize DaVinci main sequence #
###################################

from Configurables import ChargedProtoParticleMaker
from Configurables import NoPIDsParticleMaker
from CommonParticles.Utils import trackSelector, updateDoD

# Provide required information for VELO pions.
ms_all_protos = ChargedProtoParticleMaker(name='MyProtoPMaker')
ms_all_protos.Inputs = ['Rec/Track/Best']
ms_all_protos.Output = 'Rec/ProtoP/MyProtoPMaker/ProtoParticles'

# NOTE: The name 'StdNoPIDsVeloPions' is hard-coded in the tuple tool, so the
#       name should not be changed.
ms_velo_pions = NoPIDsParticleMaker('StdNoPIDsVeloPions', Particle='pion')
ms_velo_pions.Input = ms_all_protos.Output

trackSelector(ms_velo_pions, trackTypes=['Velo'])
updateDoD(ms_velo_pions)

DaVinci().appendToMainSequence([ms_all_protos, ms_velo_pions])


#######################
# Particle references #
#######################

if not DaVinci().Simulation:
    stream = 'Dimuon'
else:
    stream = 'AllStreams'
Пример #9
0
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()
Hlt2MuonTTParts.Output = "Hlt2/Hlt2MuonTTMuons/Particles"

##########################################################################