Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2023-03-17 11:16:22

0001 import FWCore.ParameterSet.Config as cms
0002 
0003 from SimGeneral.HepPDTESSource.pythiapdt_cfi           import *
0004 from Configuration.StandardSequences.MagneticField_cff import *
0005 
0006 patAODTrackCandsUnfiltered = cms.EDProducer("ConcreteChargedCandidateProducer",
0007     src          = cms.InputTag("generalTracks"),
0008     particleType = cms.string('mu+')   # to fix mass hypothesis
0009 )
0010 
0011 patAODTrackCands = cms.EDFilter("CandViewSelector",
0012     src = cms.InputTag("patAODTrackCandsUnfiltered"),
0013     cut = cms.string('pt > 15')
0014 )
0015 
0016 ## Configure tracker isolation
0017 from RecoMuon.MuonIsolationProducers.trackExtractorBlocks_cff import MIsoTrackExtractorCtfBlock
0018 patAODTrackIsoDepositCtfTk = cms.EDProducer("CandIsoDepositProducer",
0019     src                  = cms.InputTag("patAODTrackCands"),
0020     trackType            = cms.string('best'),
0021     MultipleDepositsFlag = cms.bool(False),
0022     ExtractorPSet        = cms.PSet( MIsoTrackExtractorCtfBlock )
0023 )
0024 
0025 ## Configure calorimetric isolation
0026 from RecoMuon.MuonIsolationProducers.caloExtractorByAssociatorBlocks_cff import MIsoCaloExtractorByAssociatorTowersBlock
0027 patAODTrackIsoDepositCalByAssociatorTowers = cms.EDProducer("CandIsoDepositProducer",
0028     src                  = cms.InputTag("patAODTrackCands"),
0029     trackType            = cms.string('best'),
0030     MultipleDepositsFlag = cms.bool(True),
0031     ExtractorPSet        = cms.PSet( MIsoCaloExtractorByAssociatorTowersBlock )
0032 )
0033 
0034 ## Select isolation labels to use
0035 patAODTrackIsolationLabels = cms.VInputTag(
0036    #cms.InputTag("patAODTrackIsoDepositCalByAssociatorTowers","ecal"), 
0037    #cms.InputTag("patAODTrackIsoDepositCalByAssociatorTowers","hcal"), 
0038    #cms.InputTag("patAODTrackIsoDepositCalByAssociatorTowers","ho"), 
0039     cms.InputTag("patAODTrackIsoDepositCtfTk")
0040 )
0041 
0042 # Isolation converter module
0043 patAODTrackIsolations = cms.EDFilter("MultipleIsoDepositsToValueMaps",
0044     collection   = cms.InputTag("patAODTrackCands"),
0045     associations = patAODTrackIsolationLabels
0046 )
0047 
0048 # Isolation re-keying to clean layer 0 output collection
0049 layer0TrackIsolations = cms.EDFilter("CandManyValueMapsSkimmerIsoDeposits",
0050     collection   = cms.InputTag("allLayer0TrackCands"),
0051     backrefs     = cms.InputTag("allLayer0TrackCands"),
0052     commonLabel  = cms.InputTag("patAODTrackIsolations"),
0053     associations = patAODTrackIsolationLabels
0054 )
0055 
0056 # sequence to run on AOD before PAT cleaners
0057 patAODTrackCandSequence = cms.Sequence(
0058         patAODTrackCandsUnfiltered *
0059         patAODTrackCands *
0060         patAODTrackIsoDepositCalByAssociatorTowers *
0061         patAODTrackIsoDepositCtfTk *
0062         patAODTrackIsolations
0063 )
0064 
0065 # sequence to run at end of layer 0 
0066 patLayer0TrackCandSequence = cms.Sequence( layer0TrackIsolations )
0067