clusterEtaMax        = 2.5,
                                electronID           = egammaPID.ElectronIDLoosePP,
                                etMin                = 10.0*Units.GeV )


from RecExConfig.RecAlgsFlags import recAlgs
if recAlgs.doEgammaBremReco():
    gsfElectronContainer = 'LowPtGSFElectrons'
    preseq += D2PDElectronSelector( "SMWZ_LowPtGSFElectronFilter",
                                    inputCollection      = 'GSFElectronAODCollection',
                                    outputCollection     = 'LowPtGSFElectrons',
                                    clusterEtaMin        = -2.5,
                                    clusterEtaMax        = 2.5,
                                    electronID           = egammaPID.ElectronIDMediumPP,
                                    etMin                = 5.0*Units.GeV )
else:
    gsfElectronContainer = 'None'


preseq += D2PDParticleCombiner( "SMWZ_JPsieeFilter",
                                inputCollectionList     = [ 'LowPtElectrons', 'LowPtElectrons' ],
                                outputCollection        = 'JPsieeSelection',
                                minNumberPassed         = 1,
                                massMax                 = 15.0*Units.GeV )

preseq += D2PDParticleCombiner( "SMWZ_ZeeFilter",
                                inputCollectionList     = [ 'MediumPtElectrons', 'MediumPtElectrons' ],
                                outputCollection        = 'ZeeSelection',
                                minNumberPassed         = 1,
                                massMin                 = 50.0*Units.GeV )
                                 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
                                     inputCollectionList     = [ 'MyZmumuTightMuonLinkCollection',
                                                                 'MyZmumuTightMuonLinkCollection' ],
                                     outputCollection        = 'MyZmumuLooseZmumuBosonCollection',
                                     minNumberPassed         = 1,
                                     chargeMax               = 0,
                                     massMin                 = 30.0*Units.GeV
                                     )



#====================================================================
# Define the test DPD output stream
#====================================================================
from D2PDMaker.D2PDHelpers import buildFileName
# This stream HAS TO start with "StreamD2AODM_"! If the input was an (D)ESD(M), this should start with "StreamD2ESD(M)_".
# See this twiki for more information: https://twiki.cern.ch/twiki/bin/view/AtlasProtected/DPDNamingConvention
streamName = "StreamD2AODM_MyZmumu"
fileName   = D2PDFlags.OutputDirectoryName() + "MyD2PDExampleSimpleZmumuStream.pool.root"
예제 #3
0
                                   outputLinkCollection='HighP' + jetCollName +
                                   'LinkCollectionInHighMassDiJetStream',
                                   minNumberPassed=1,
                                   absEtaMax=2.8,
                                   ptMin=280.0 * Units.GeV)
    algsToBookkeep.append(filterName)

    from D2PDMaker.D2PDMakerConf import D2PDParticleCombiner
    # - All combinations with pre-selected electrons with 15 GeV
    filterName = "HighMassDi" + jetCollName + "CombinerInHighMassDiJetStream"
    topSequence += D2PDParticleCombiner(
        filterName,
        OutputLevel=INFO,
        compositeParticlePDG_ID=23,  # This is a Z Boson
        inputCollectionList=[
            'HighP' + jetCollName + 'LinkCollectionInHighMassDiJetStream',
            jetCollName + 'LinkCollectionInHighMassDiJetStream'
        ],
        outputCollection='HighMassDi' + jetCollName +
        'CollectionInHighMassDiJetStream',
        minNumberPassed=1,
        massMin=700.0 * Units.GeV)
    algsToBookkeep.append(filterName)
    finalFilterNames.append(filterName)
    pass

#====================================================================
# Create a subsequence: Only when the first algorithm returns isEventAccepted, the rest is executed
#====================================================================
from AthenaCommon.AlgSequence import AthSequencer
thinSeqHighMassDiJetStream = AthSequencer("HighMassDiJetStreamThinningSeq")
topSequence += thinSeqHighMassDiJetStream
예제 #4
0
    etaVetoRanges="[-1.52, -1.37], [1.37, 1.52]",
    electronIsEM=egammaPID.ElectronLoose,
    electronAuthor=egammaParameters.AuthorElectron)

#====================================================================
# Define the particle combinations
#====================================================================

# - the Z->mumu Boson (on-shell)
from D2PDMaker.D2PDMakerConf import D2PDParticleCombiner
topSequence += D2PDParticleCombiner(
    "D2PDParticleCombinerInExampleH4lStream_ZmumuBoson",
    OutputLevel=INFO,
    compositeParticlePDG_ID=23,  # This is a Z Boson
    inputCollectionList=[
        'MyH4lLooseMuonLinkCollection', 'MyH4lLooseMuonLinkCollection'
    ],
    outputCollection='MyH4lLooseZmumuBosonCollection',
    minNumberPassed=1,
    chargeMax=0,
    massMin=70.0 * Units.GeV,
    massMax=110.0 * Units.GeV)

# - the Z->mumu Boson (off-shell)
from D2PDMaker.D2PDMakerConf import D2PDParticleCombiner
topSequence += D2PDParticleCombiner(
    "D2PDParticleCombinerInExampleH4lStream_ZmumuBosonOffShell",
    OutputLevel=INFO,
    compositeParticlePDG_ID=23,  # This is a Z Boson
    inputCollectionList=[
        'MyH4lLooseMuonLinkCollection', 'MyH4lLooseMuonLinkCollection'
    ],
예제 #5
0
                                              outputLinkCollection    = 'WenuStreamTruthWBosonLinkCollection',
                                              minNumberPassed         = 1,
                                              pdgIDList               = [ 24 ], # Z boson
                                              removeDocumentationLine = True,
                                              keepOnlyGenerator       = False,
                                              keepOnlyStable          = False,
                                              removeSelfDecay         = True
                                              )
    algsToBookkeep.append( "TruthWBosonSelectorInWenuStream" )

    # Combine truth electron and truth photon in a DeltaR cone of 0.05 (final state radiation recovery)
    from D2PDMaker.D2PDMakerConf import D2PDParticleCombiner
    topSequence += D2PDParticleCombiner( "TruthElectronTruthPhotonCombinerInWenuStream",
                                         OutputLevel             = INFO,
                                         compositeParticlePDG_ID = 11, # This is an electron
                                         inputCollectionList     = [ 'TruthElectronStatusCode1FromWBosonLinkCollection',
                                                                     'TruthPhotonFromFSRLinkCollection' ],
                                         outputCollection        = 'WenuStreamCombinedTruthElectronTruthPhotonCollection',
                                         deltaRMax               = 0.05
                                         )
    algsToBookkeep.append( "TruthElectronTruthPhotonCombinerInWenuStream" )


    # Truth matching/classification using the MCTruthClassifier
    # First, set up the standard MCTruthClassifier
    from MCTruthClassifier.MCTruthClassifierBase import MCTruthClassifier as ElectronMCTruthClassifierInWenuStream
    ElectronMCTruthClassifierInWenuStream.McEventCollection = mcEventCollectionForMCTruthClassifier

    # Now, use the MCTruthClassifier for the association/matching tool
    from AssociationComps.AssociationCompsConf import MCTruthClassifierAssociationTool
    ToolSvc += MCTruthClassifierAssociationTool( "ElectronMCTruthClassifierAssociationToolInWenuStream",
                                                 OutputLevel                = INFO,
예제 #6
0
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)

# MUID

preseq += D2PDMuonSelector("SMWZ_LowPtMuidMuonFilter",
                           inputCollection='MuidMuonCollection',
                           outputCollection='LowPtMuidMuons',