CMS 3D CMS Logo

CkfElectronCandidateMaker_cff.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 #Chi2 estimator
5 ElectronChi2 = TrackingTools.KalmanUpdators.Chi2MeasurementEstimator_cfi.Chi2MeasurementEstimator.clone(
6  ComponentName = 'ElectronChi2',
7  MaxChi2 = 2000.,
8  nSigma = 3.,
9  MaxDisplacement = 100,
10  MaxSagitta = -1
11 )
12 # Trajectory Filter
14 TrajectoryFilterForElectrons = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
15  chargeSignificance = -1.0,
16  minPt = 2.0,
17  minHitsMinPt = -1,
18  ComponentType = 'CkfBaseTrajectoryFilter',
19  maxLostHits = 1,
20  maxNumberOfHits = -1,
21  maxConsecLostHits = 1,
22  nSigmaMinPt = 5.0,
23  minimumNumberOfHits = 5,
24  highEtaSwitch = 2.5,
25  minHitsAtHighEta = 3,
26  maxCCCLostHits = 9999,
27  minGoodStripCharge = dict(refToPSet_ = 'SiStripClusterChargeCutNone')
28 )
29 
30 # Phase2 has extended outer-tracker coverage
31 # so no need to relax cuts on number of hits at high eta
32 from Configuration.Eras.Modifier_phase2_common_cff import phase2_common
33 phase2_common.toModify(TrajectoryFilterForElectrons,
34  highEtaSwitch = 5.0,
35  minHitsAtHighEta = 5
36 )
37 
38 # Trajectory Builder
40 TrajectoryBuilderForElectrons = RecoTracker.CkfPattern.CkfTrajectoryBuilder_cfi.CkfTrajectoryBuilder.clone(
41  trajectoryFilter = dict(refToPSet_ = 'TrajectoryFilterForElectrons'),
42  maxCand = 5,
43  intermediateCleaning = False,
44  propagatorAlong = 'fwdGsfElectronPropagator',
45  propagatorOpposite = 'bwdGsfElectronPropagator',
46  estimator = 'ElectronChi2',
47  lostHitPenalty = 90.,
48  alwaysUseInvalidHits = True,
49  TTRHBuilder = 'WithTrackAngle',
50  updator = 'KFUpdator'
51 )
52 
53 # CKFTrackCandidateMaker
56 electronCkfTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
57  src = 'electronMergedSeeds',
58  TrajectoryBuilderPSet = dict(refToPSet_ = 'TrajectoryBuilderForElectrons'),
59  #TrajectoryCleaner = 'TrajectoryCleanerBySharedHits'
60  NavigationSchool = 'SimpleNavigationSchool',
61  RedundantSeedCleaner = 'CachingSeedCleanerBySharedInput',
62  TrajectoryCleaner = 'electronTrajectoryCleanerBySharedHits'
63 )
64 
65 from TrackingTools.TrajectoryCleaning.TrajectoryCleanerBySharedHits_cfi import trajectoryCleanerBySharedHits
66 electronTrajectoryCleanerBySharedHits = trajectoryCleanerBySharedHits.clone(
67  ComponentName = 'electronTrajectoryCleanerBySharedHits',
68  ValidHitBonus = 1000.0,
69  MissingHitPenalty = 0.0
70 )
71 
72 # "backward" propagator for electrons
74 # "forward" propagator for electrons
76 # TrajectoryFilter