Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2022-01-27 00:42:22

0001 import FWCore.ParameterSet.Config as cms
0002 
0003 from RecoMuon.MuonIdentification.isolation_cff import *
0004 from RecoMuon.MuonIdentification.caloCompatibility_cff import *
0005 from RecoMuon.MuonIdentification.MuonTimingFiller_cfi import *
0006 from RecoMuon.MuonIdentification.MuonShowerDigiFiller_cfi import *
0007 from RecoMuon.MuonIdentification.TrackerKinkFinder_cfi import *
0008 from TrackingTools.TrackAssociator.default_cfi import *
0009 muons1stStep = cms.EDProducer("MuonIdProducer",
0010     # MuonCaloCompatibility
0011     MuonCaloCompatibilityBlock,
0012     # TrackDetectorAssociator
0013     TrackAssociatorParameterBlock,
0014     # MuonIsolation
0015     MIdIsoExtractorPSetBlock,
0016     # MuonTiming
0017     TimingFillerBlock,
0018     # MuonShowerDigi
0019     MuonShowerDigiFillerBlock,
0020     # Kink finder
0021     TrackerKinkFinderParametersBlock,
0022 
0023     fillEnergy = cms.bool(True),
0024     storeCrossedHcalRecHits = cms.bool(True),
0025 
0026     # OR
0027     maxAbsPullX = cms.double(3.0),
0028     maxAbsEta = cms.double(3.0),
0029 
0030     # Selection parameters
0031     minPt = cms.double(0.5),
0032     inputCollectionTypes = cms.vstring('inner tracks', 
0033                                        'links', 
0034                                        'outer tracks',
0035                                        'tev firstHit',
0036                                        'tev picky',
0037                                        'tev dyt'),
0038     addExtraSoftMuons = cms.bool(False),
0039     fillGlobalTrackRefits = cms.bool(True),
0040 
0041     # internal
0042     debugWithTruthMatching = cms.bool(False),
0043     # input tracks
0044     inputCollectionLabels = cms.VInputTag(cms.InputTag("generalTracks"), cms.InputTag("globalMuons"), cms.InputTag("standAloneMuons","UpdatedAtVtx"),
0045                                           cms.InputTag("tevMuons","firstHit"),cms.InputTag("tevMuons","picky"),cms.InputTag("tevMuons","dyt")),
0046     fillCaloCompatibility = cms.bool(True),
0047     # OR
0048     maxAbsPullY = cms.double(9999.0),
0049     # AND
0050     maxAbsDy = cms.double(9999.0),
0051     minP = cms.double(2.5),
0052     minPCaloMuon = cms.double(1e9),
0053 
0054     # Match parameters
0055     maxAbsDx = cms.double(3.0),
0056     fillIsolation = cms.bool(True),
0057     writeIsoDeposits = cms.bool(True),
0058     minNumberOfMatches = cms.int32(1),
0059     fillMatching = cms.bool(True),
0060     fillShowerDigis = cms.bool(True),
0061 
0062     # global fit for candidate p4 requirements
0063     ptThresholdToFillCandidateP4WithGlobalFit = cms.double(200.0),
0064     sigmaThresholdToFillCandidateP4WithGlobalFit = cms.double(2.0),
0065 
0066     # global quality
0067     fillGlobalTrackQuality = cms.bool(False), #input depends on external module output --> set to True where the sequence is defined
0068     globalTrackQualityInputTag = cms.InputTag('glbTrackQual'),
0069     selectHighPurity = cms.bool(False),
0070     pvInputTag = cms.InputTag('offlinePrimaryVertices'),
0071 
0072     # tracker kink finding
0073     fillTrackerKink = cms.bool(True),
0074     
0075     # calo muons
0076     minCaloCompatibility = cms.double(0.6),
0077 
0078     # arbitration cleaning                       
0079     runArbitrationCleaner = cms.bool(True),
0080     arbitrationCleanerOptions = cms.PSet( ME1a = cms.bool(True),
0081                                           Overlap = cms.bool(True),
0082                                           Clustering = cms.bool(True),
0083                                           OverlapDPhi   = cms.double(0.0786), # 4.5 degrees
0084                                           OverlapDTheta = cms.double(0.02), # 1.14 degrees
0085                                           ClusterDPhi   = cms.double(0.6), # 34 degrees
0086                                           ClusterDTheta = cms.double(0.02) # 1.14
0087     ),
0088 
0089     # tracker muon arbitration
0090     arbitrateTrackerMuons = cms.bool(True)
0091 )
0092 
0093 from Configuration.Eras.Modifier_run3_GEM_cff import run3_GEM
0094 run3_GEM.toModify( muons1stStep, TrackAssociatorParameters = dict(useGEM = True ) )
0095 from Configuration.Eras.Modifier_phase2_muon_cff import phase2_muon
0096 phase2_muon.toModify( muons1stStep, TrackAssociatorParameters = dict(useME0 = True ) )
0097 from Configuration.Eras.Modifier_phase2_GE0_cff import phase2_GE0
0098 phase2_GE0.toModify( muons1stStep, TrackAssociatorParameters = dict(useME0 = False ) )
0099 
0100 muonEcalDetIds = cms.EDProducer("InterestingEcalDetIdProducer",
0101                                 inputCollection = cms.InputTag("muons1stStep")
0102 )
0103 
0104 from Configuration.ProcessModifiers.pp_on_AA_cff import pp_on_AA
0105 pp_on_AA.toModify(muons1stStep, minPt = 0.8, selectHighPurity = True)
0106 
0107 from Configuration.ProcessModifiers.recoFromReco_cff import recoFromReco
0108 recoFromReco.toModify(muons1stStep,fillShowerDigis = False)