def getMuonSelector(self, name="", inputCollection="", outputLinkCollection=""): if name != "": self.name = name if inputCollection != "": self.inputCollection = inputCollection if outputLinkCollection != "": self.outputLinkCollection = outputLinkCollection muonParametersList = [] muonParametersMinList = [] muonParametersMaxList = [] muonParametersUseRelativeCutsList = [] if self.doRelPtCone20: muonParametersList.append(17) # ptcone20 muonParametersMinList.append(0.) muonParametersMaxList.append(self.relPtCone20Max) muonParametersUseRelativeCutsList.append(True) return D2PDMuonSelector( self.name, inputCollection=self.inputCollection, outputLinkCollection=self.outputLinkCollection, minNumberPassed=self.minNumberPassed, ptMin=self.ptMin * Units.GeV, absEtaMax=self.absEtaMax, muonAcceptIsCombined=self.acceptIsCombined, muonAcceptIsSegmentTagged=self.acceptIsSegmentTagged, muonRequireIsLoose=self.muonRequireIsLoose, muonRequireIsTight=self.muonRequireIsTight, muonParametersList=muonParametersList, muonParametersMinList=muonParametersMinList, muonParametersMaxList=muonParametersMaxList, muonParametersUseRelativeCutsList=muonParametersUseRelativeCutsList )
include.block("SMEWTrilepSkim/SMTRILEP_MuonSelector.py") from D3PDMakerConfig.D3PDMakerFlags import D3PDMakerFlags from D2PDMaker.D2PDMakerConf import D2PDMuonSelector from D2PDMaker.D2PDMakerConf import D2PDParticleCombiner from AthenaCommon.AlgSequence import AlgSequence preseq = AlgSequence(D3PDMakerFlags.PreD3PDAlgSeqName()) # STACO preseq += D2PDMuonSelector("SMTRILEP_TrilepStacoMuonFilter", inputCollection='StacoMuonCollection', outputCollection='TrilepStacoMuons', ptMin=4.0 * Units.GeV, minNumberPassed=1) # THIRD Muons preseq += D2PDMuonSelector("SMTRILEP_TrilepThirdMuonFilter", inputCollection='Muons', outputCollection='TrilepThirdMuons', ptMin=4.0 * Units.GeV, minNumberPassed=1) # CALO muons - apply eta cut preseq += D2PDMuonSelector("SMTRILEP_TrilepCaloMuonFilter", inputCollection='CaloMuonCollection', outputCollection='TrilepCaloMuons', ptMin=12.0 * Units.GeV, etaMin=-0.2,
from OutputStreamAthenaPool.MultipleStreamManager import MSMgr #==================================================================== # Define the individual particle selections #==================================================================== # - the muon selector # Load the actual filter from D2PDMaker.D2PDMakerConf import D2PDMuonSelector # Create an instance of this filter and add it to the AlgSequence # Also, configure the filter to your needs. This are just some examples topSequence += D2PDMuonSelector( "MuonSelectorInExampleSimpleZmumuStream", OutputLevel = INFO, inputCollection = 'MuidMuonCollection', outputLinkCollection = 'MyZmumuTightMuonLinkCollection', minNumberPassed = 2, ptMin = 15.0*Units.GeV, muonRequireIsTight = True, etaMin = -2.5, etaMax = 2.5 ) #==================================================================== # Define the particle combinations #==================================================================== # - the Z->mumu Boson (on-shell) from D2PDMaker.D2PDMakerConf import D2PDParticleCombiner topSequence += D2PDParticleCombiner( "D2PDParticleCombinerInExampleSimpleZmumuStream_ZmumuBoson", OutputLevel = INFO, compositeParticlePDG_ID = 23, # This is a Z Boson
OutputLevel=INFO, inputCollection='ElectronAODCollection', outputLinkCollection='ElectronMediumLinkCollectionInHighMassDiJetStream', minNumberPassed=1, electronIsEM=egammaPID.ElectronMedium, electronAuthor=egammaParameters.AuthorElectron) algsToBookkeep.append("ElectronMediumSelectorInHighMassDiJetStream") # Load the actual filter from D2PDMaker.D2PDMakerConf import D2PDMuonSelector # Create an instance of this filter and add it to the AlgSequence # Also, configure the filter to your needs. This are just some examples topSequence += D2PDMuonSelector( "StacoMuonTightSelectorInHighMassDiJetStream", OutputLevel=INFO, inputCollection='StacoMuonCollection', outputLinkCollection='StacoMuonTightLinkCollectionInHighMassDiJetStream', minNumberPassed=1, muonRequireIsTight=True) topSequence += D2PDMuonSelector( "MuidMuonTightSelectorInHighMassDiJetStream", OutputLevel=INFO, inputCollection='MuidMuonCollection', outputLinkCollection='MuidMuonTightLinkCollectionInHighMassDiJetStream', minNumberPassed=1, muonRequireIsTight=True) #==================================================================== # Do the offline selection for all wanted jet collections #==================================================================== finalFilterNames = []
from D2PDMaker.D2PDFlags import D2PDFlags from RecExConfig.RecFlags import rec ## This handels multiple output streams from OutputStreamAthenaPool.MultipleStreamManager import MSMgr #==================================================================== # Define the individual particle selections #==================================================================== # - the muon selector --- for testing! from D2PDMaker.D2PDMakerConf import D2PDMuonSelector topSequence += D2PDMuonSelector( "MuonSelectorInExampleH4lStream", OutputLevel=INFO, inputCollection='StacoMuonCollection', outputLinkCollection='MyH4lLooseMuonLinkCollection', minNumberPassed=2, etMin=5.0 * Units.GeV, etaMin=-2.5, etaMax=2.5, etaVetoRanges="[-1.52, -1.37], [1.37, 1.52]") # - the electron selector from D2PDMaker.D2PDMakerConf import D2PDElectronSelector topSequence += D2PDElectronSelector( "ElectronSelectorInExampleH4lStream", OutputLevel=INFO, inputCollection='ElectronAODCollection', outputLinkCollection='MyH4lLooseElectronLinkCollection', minNumberPassed=2, etMin=15.0 * Units.GeV, etaMin=-2.5,
from D2PDMaker.D2PDMakerConf import D2PDParticleCombiner ## Import the module that allows to use named units, e.g. GeV import AthenaCommon.SystemOfUnits as Units ## Get pre sequence from AthenaCommon.AlgSequence import AlgSequence preseq = AlgSequence(D3PDMakerFlags.PreD3PDAlgSeqName()) ## Define event selector from D2PDMaker.D2PDMakerConf import D2PDMuonSelector WPrimeStacoMuonSelector = D2PDMuonSelector( "WPrimeStacoMuonSelector", OutputLevel=INFO, inputCollection='StacoMuonCollection', minNumberPassed=1, ptMin=25.0 * Units.GeV, muonRequireIsCombined=True) WPrimeMuonsSelector = D2PDMuonSelector( "WPrimeMuonsSelector", OutputLevel=INFO, inputCollection='Muons', minNumberPassed=1, ptMin=25.0 * Units.GeV, ) preseq += WPrimeStacoMuonSelector preseq += WPrimeMuonsSelector
## Creation: George Redlinger, Lucian Ancu & David Cote, September 2010 ## This file defines the SUSY filters without any instanciation ## The default values are for the newest cut version, but older cut versions are also listed at the bottom ## Import the module that allows to use named units, e.g. GeV import AthenaCommon.SystemOfUnits as Units from D2PDMaker.D2PDFlags import D2PDFlags # Muons filters from D2PDMaker.D2PDMakerConf import D2PDMuonSelector ### STACO ### StacoMuonSelectorSUSY_forEMu = D2PDMuonSelector( "StacoMuonSelectorSUSY_forEMu", inputCollection = 'StacoMuonCollection', outputLinkCollection = 'SelectedStacoMuonLinks_forEMu', muonRequireIsCombined = True, etaMin = -2.5, etaMax = 2.5, minNumberPassed = 1, ptMin = 6.0*Units.GeV ) #StacoMuonSelectorSUSY is a sub-set of StacoMuonSelectorSUSY_forEMu, with tighter pT cut StacoMuonSelectorSUSY = D2PDMuonSelector( "StacoMuonSelectorSUSY", inputCollection = 'SelectedStacoMuonLinks_forEMu', outputLinkCollection = 'SelectedStacoMuonLinks', ptMin = 12.0*Units.GeV, minNumberPassed = 1 ) #StacoDiMuonSelectorSUSY is a sub-set of StacoMuonSelectorSUSY_forEMu, requiring two muons StacoDiMuonSelectorSUSY = D2PDMuonSelector( "StacoDiMuonSelectorSUSY",
include.block( "PhysicsD3PDMaker/MuonSelector.py" ) from D3PDMakerConfig.D3PDMakerFlags import D3PDMakerFlags from D2PDMaker.D2PDMakerConf import D2PDMuonSelector from D2PDMaker.D2PDMakerConf import D2PDParticleCombiner from AthenaCommon.AlgSequence import AlgSequence preseq = AlgSequence (D3PDMakerFlags.PreD3PDAlgSeqName()) # STACO preseq += D2PDMuonSelector( "SMWZ_HighPtStacoMuonFilter", inputCollection = 'StacoMuonCollection', outputCollection = 'HighPtStacoMuons', ptMin = 20.0*Units.GeV, minNumberPassed = 1 ) # MUID preseq += D2PDMuonSelector( "SMWZ_HighPtMuidMuonFilter", inputCollection = 'MuidMuonCollection', outputCollection = 'HighPtMuidMuons', ptMin = 20.0*Units.GeV, minNumberPassed = 1 )
## This handels multiple output streams from OutputStreamAthenaPool.MultipleStreamManager import MSMgr #==================================================================== # Define the individual particle selections #==================================================================== # - the electron selector # Load the actual filter from D2PDMaker.D2PDMakerConf import D2PDMuonSelector # Create an instance of this filter and add it to the AlgSequence # Also, configure the filter to your needs. This are just some examples topSequence += D2PDMuonSelector( "MuonSelectorInExampleSimpleWmunuStream", OutputLevel=INFO, inputCollection='StacoMuonCollection', outputLinkCollection='MyWmunuLooseMuonLinkCollection', minNumberPassed=1, etMin=10.0 * Units.GeV, etaMin=-2.5, etaMax=2.5, ) #==================================================================== # Define the particle combinations #==================================================================== # - the W->mu nu Boson (on-shell) from D2PDMaker.D2PDMakerConf import D2PDLeptonNeutrinoCombiner topSequence += D2PDLeptonNeutrinoCombiner( "D2PDLeptonNeutrinoCombinerInExampleSimpleWmunuStream_WmunuBoson", OutputLevel=INFO, compositeParticlePDG_ID=24, # This is a W Boson
# add muon and jet algs, but don't add to RequireAlgs (they're used for LeptonJetsFilter) outputJetContainerName = "HSG5GAMZ_jetLinkCollection" zbb_or_zllSequencer += D2PDJetSelector( "HSG5GAMZ_jetFilter", OutputLevel=outputLevel, inputCollection='AntiKt4TopoEMJets', outputLinkCollection=outputJetContainerName, ptMin=19.0 * Units.GeV, minNumberPassed=0) from D2PDMaker.D2PDMakerConf import D2PDMuonSelector outputMuonContainerName = "HSG5GAMZ_muonLinkCollection" zbb_or_zllSequencer += D2PDMuonSelector( "HSG5GAMZ_muonFilter", OutputLevel=outputLevel, inputCollection='StacoMuonCollection', outputLinkCollection=outputMuonContainerName, ptMin=19.0 * Units.GeV, muonRequireIsLoose=True, minNumberPassed=0) # now add LeptonJetsSelector from HSG5DPDUtils.HSG5DPDUtilsConf import HSG5__LeptonJetsFilter zbb_or_zllSequencer += HSG5__LeptonJetsFilter( "HSG5GAMZ_leptonJetsFilter", OutputLevel=outputLevel, SelectedJetContainerName=outputJetContainerName, SelectedMuonContainerName=outputMuonContainerName, MinSumJetsAndMuon=3) sequencer += zbb_or_zllSequencer HSG5D3PD_Stream.AcceptAlgs.append("HSG5GAMZ_leptonJetsFilter")
include.block("PhysicsD3PDMaker/LowPtMuonPairSelector.py") from D3PDMakerConfig.D3PDMakerFlags import D3PDMakerFlags from D2PDMaker.D2PDMakerConf import D2PDMuonSelector from D2PDMaker.D2PDMakerConf import D2PDParticleCombiner from AthenaCommon.AlgSequence import AlgSequence preseq = AlgSequence(D3PDMakerFlags.PreD3PDAlgSeqName()) # STACO preseq += D2PDMuonSelector("SMWZ_LowPtMuonFilter", inputCollection='StacoMuonCollection', outputCollection='LowPtStacoMuons', ptMin=5.0 * Units.GeV) preseq += D2PDParticleCombiner( "SMWZ_JPsimumuStacoFilter", inputCollectionList=['LowPtStacoMuons', 'LowPtStacoMuons'], outputCollection='JPsimumuStacoSelection', minNumberPassed=1, massMax=15.0 * Units.GeV) preseq += D2PDParticleCombiner( "SMWZ_ZmumuStacoFilter", inputCollectionList=['LowPtStacoMuons', 'LowPtStacoMuons'], outputCollection='ZmumuStacoSelection', minNumberPassed=1, massMin=50.0 * Units.GeV)