Esempio n. 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])
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()
    })
Esempio n. 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)
Esempio n. 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)
Esempio n. 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 ]) 
Esempio n. 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
Esempio n. 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"
Esempio n. 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'
Esempio n. 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"

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