1 import FWCore.ParameterSet.Config
as cms
4 from RecoMuon.MuonIdentification.earlyMuons_cfi
import earlyDisplacedMuons
8 import RecoTracker.SpecialSeedGenerators.outInSeedsFromStandaloneMuons_cfi
9 muonSeededSeedsOutInDisplaced = RecoTracker.SpecialSeedGenerators.outInSeedsFromStandaloneMuons_cfi.outInSeedsFromStandaloneMuons.clone(
10 src =
"earlyDisplacedMuons",
12 muonSeededSeedsOutInDisplaced.fromVertex = cms.bool(
False)
16 muonSeededMeasurementEstimatorForOutInDisplaced = TrackingTools.KalmanUpdators.Chi2MeasurementEstimator_cfi.Chi2MeasurementEstimator.clone(
17 ComponentName = cms.string(
'muonSeededMeasurementEstimatorForOutInDisplaced'),
18 MaxChi2 = cms.double(30.0),
19 nSigma = cms.double(3.),
25 muonSeededTrajectoryFilterForOutInDisplaced = RecoTracker.IterativeTracking.MuonSeededStep_cff.muonSeededTrajectoryFilterForInOut.clone()
26 muonSeededTrajectoryFilterForOutInDisplaced.constantValueForLostHitsFractionFilter = 10
27 muonSeededTrajectoryFilterForOutInDisplaced.minimumNumberOfHits = 5
30 muonSeededTrajectoryBuilderForOutInDisplaced = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone(
31 foundHitBonus = cms.double(1000.0),
32 lostHitPenalty = cms.double(1.0),
33 maxCand = cms.int32(3),
34 estimator = cms.string(
'muonSeededMeasurementEstimatorForOutInDisplaced'),
35 trajectoryFilter = cms.PSet(refToPSet_ = cms.string(
'muonSeededTrajectoryFilterForOutInDisplaced')),
36 inOutTrajectoryFilter = cms.PSet(refToPSet_ = cms.string(
'muonSeededTrajectoryFilterForOutInDisplaced')),
37 minNrOfHitsForRebuild = cms.int32(5),
38 requireSeedHitsInRebuild = cms.bool(
True),
39 keepOriginalIfRebuildFails = cms.bool(
False),
43 muonSeededTrackCandidatesOutInDisplaced = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
44 src = cms.InputTag(
"muonSeededSeedsOutInDisplaced"),
45 TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string(
"muonSeededTrajectoryBuilderForOutInDisplaced")),
46 TrajectoryCleaner = cms.string(
'muonSeededTrajectoryCleanerBySharedHits'),
47 numHitsForSeedCleaner = cms.int32(50),
48 onlyPixelHitsForSeedCleaner = cms.bool(
False),
53 muonSeededTracksOutInDisplaced = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
54 src = cms.InputTag(
"muonSeededTrackCandidatesOutInDisplaced"),
55 AlgorithmName = cms.string(
'muonSeededStepOutIn'),
56 Fitter = cms.string(
"muonSeededFittingSmootherWithOutliersRejectionAndRK"),
60 muonSeededTracksOutInDisplacedClassifier = RecoTracker.IterativeTracking.MuonSeededStep_cff.muonSeededTracksOutInClassifier.clone()
61 muonSeededTracksOutInDisplacedClassifier.src=
'muonSeededTracksOutInDisplaced'
65 muonSeededStepCoreDisplacedTask = cms.Task(
66 cms.TaskPlaceholder(
"muonSeededStepCoreInOutTask"),
67 muonSeededSeedsOutInDisplaced , muonSeededTrackCandidatesOutInDisplaced , muonSeededTracksOutInDisplaced
69 muonSeededStepCoreDisplaced = cms.Sequence(muonSeededStepCoreDisplacedTask)
72 muonSeededStepExtraDisplacedTask = cms.Task(
73 cms.TaskPlaceholder(
"muonSeededStepExtraInOutTask"),
74 muonSeededTracksOutInDisplacedClassifier
76 muonSeededStepExtraDisplaced = cms.Sequence(muonSeededStepExtraDisplacedTask)
79 muonSeededStepDisplacedTask = cms.Task(
81 muonSeededStepCoreDisplacedTask ,
82 muonSeededStepExtraDisplacedTask
84 muonSeededStepDisplaced = cms.Sequence(muonSeededStepDisplacedTask)
88 muonSeededSeedsOutInDisplacedAsTracks = cms.EDProducer(
"FakeTrackProducerFromSeed", src = cms.InputTag(
"muonSeededSeedsOutInDisplaced"))
90 muonSeededTrackCandidatesOutInDisplacedAsTracks = cms.EDProducer(
"FakeTrackProducerFromCandidate", src = cms.InputTag(
"muonSeededTrackCandidatesOutInDisplaced"))
92 muonSeededStepDebugDisplacedTask = cms.Task(
93 cms.TaskPlaceholder(
"muonSeededStepDebugInOutTask"),
94 muonSeededSeedsOutInDisplacedAsTracks , muonSeededTrackCandidatesOutInDisplacedAsTracks
96 muonSeededStepDebugDisplaced = cms.Sequence(muonSeededStepDebugDisplacedTask)