CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
InitialStepPreSplitting_cff.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 ### STEP 0 ###
4 
5 # hit building
8 
9 # SEEDING LAYERS
11 initialStepSeedLayersPreSplitting = RecoTracker.TkSeedingLayers.PixelLayerTriplets_cfi.PixelLayerTriplets.clone()
12 initialStepSeedLayersPreSplitting.FPix.HitProducer = 'siPixelRecHitsPreSplitting'
13 initialStepSeedLayersPreSplitting.BPix.HitProducer = 'siPixelRecHitsPreSplitting'
14 
15 # seeding
17 from RecoTracker.TkTrackingRegions.GlobalTrackingRegionFromBeamSpot_cfi import RegionPsetFomBeamSpotBlock
18 initialStepSeedsPreSplitting = RecoTracker.TkSeedGenerator.GlobalSeedsFromTriplets_cff.globalSeedsFromTriplets.clone(
19  RegionFactoryPSet = RegionPsetFomBeamSpotBlock.clone(
20  ComponentName = cms.string('GlobalRegionProducerFromBeamSpot'),
21  RegionPSet = RegionPsetFomBeamSpotBlock.RegionPSet.clone(
22  ptMin = 0.6,
23  originRadius = 0.02,
24  nSigmaZ = 4.0
25  )
26  )
27  )
28 initialStepSeedsPreSplitting.OrderedHitsFactoryPSet.SeedingLayers = 'initialStepSeedLayersPreSplitting'
29 
31 import RecoPixelVertexing.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi
32 initialStepSeedsPreSplitting.OrderedHitsFactoryPSet.GeneratorPSet.SeedComparitorPSet = RecoPixelVertexing.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi.LowPtClusterShapeSeedComparitor.clone()
33 initialStepSeedsPreSplitting.OrderedHitsFactoryPSet.GeneratorPSet.SeedComparitorPSet.clusterShapeCacheSrc = 'siPixelClusterShapeCachePreSplitting'
34 initialStepSeedsPreSplitting.ClusterCheckPSet.PixelClusterCollectionLabel = 'siPixelClustersPreSplitting'
35 
36 # building
38 initialStepTrajectoryFilterBasePreSplitting = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
39  minimumNumberOfHits = 3,
40  minPt = 0.2,
41  maxCCCLostHits = 2,
42  minGoodStripCharge = cms.PSet(refToPSet_ = cms.string('SiStripClusterChargeCutLoose'))
43  )
44 import RecoPixelVertexing.PixelLowPtUtilities.StripSubClusterShapeTrajectoryFilter_cfi
45 initialStepTrajectoryFilterShapePreSplitting = RecoPixelVertexing.PixelLowPtUtilities.StripSubClusterShapeTrajectoryFilter_cfi.StripSubClusterShapeTrajectoryFilterTIX12.clone()
46 initialStepTrajectoryFilterPreSplitting = cms.PSet(
47  ComponentType = cms.string('CompositeTrajectoryFilter'),
48  filters = cms.VPSet(
49  cms.PSet( refToPSet_ = cms.string('initialStepTrajectoryFilterBasePreSplitting')),
50  cms.PSet( refToPSet_ = cms.string('initialStepTrajectoryFilterShapePreSplitting'))),
51 )
52 
53 import RecoTracker.MeasurementDet.Chi2ChargeMeasurementEstimator_cfi
54 initialStepChi2EstPreSplitting = RecoTracker.MeasurementDet.Chi2ChargeMeasurementEstimator_cfi.Chi2ChargeMeasurementEstimator.clone(
55  ComponentName = cms.string('initialStepChi2EstPreSplitting'),
56  nSigma = cms.double(3.0),
57  MaxChi2 = cms.double(30.0),
58  clusterChargeCut = cms.PSet(refToPSet_ = cms.string('SiStripClusterChargeCutTiny')),
59  pTChargeCutThreshold = cms.double(15.)
60 )
61 
63 initialStepTrajectoryBuilderPreSplitting = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone(
64  trajectoryFilter = cms.PSet(refToPSet_ = cms.string('initialStepTrajectoryFilterPreSplitting')),
65  alwaysUseInvalidHits = True,
66  maxCand = 3,
67  estimator = cms.string('initialStepChi2Est'),
68  maxDPhiForLooperReconstruction = cms.double(2.0),
69  maxPtForLooperReconstruction = cms.double(0.7)
70  )
71 
73 initialStepTrackCandidatesPreSplitting = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
74  src = cms.InputTag('initialStepSeedsPreSplitting'),
75  ### these two parameters are relevant only for the CachingSeedCleanerBySharedInput
76  numHitsForSeedCleaner = cms.int32(50),
77  onlyPixelHitsForSeedCleaner = cms.bool(True),
78  TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string('initialStepTrajectoryBuilderPreSplitting')),
79  doSeedingRegionRebuilding = True,
80  useHitsSplitting = True
81  )
82 initialStepTrackCandidatesPreSplitting.MeasurementTrackerEvent = 'MeasurementTrackerEventPreSplitting'
83 
84 # fitting
86 initialStepTracksPreSplitting = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
87  src = 'initialStepTrackCandidatesPreSplitting',
88  AlgorithmName = cms.string('initialStep'),
89  Fitter = cms.string('FlexibleKFFittingSmoother')
90  )
91 initialStepTracksPreSplitting.MeasurementTrackerEvent = 'MeasurementTrackerEventPreSplitting'
92 
93 #vertices
95 firstStepPrimaryVerticesPreSplitting = RecoVertex.PrimaryVertexProducer.OfflinePrimaryVertices_cfi.offlinePrimaryVertices.clone()
96 firstStepPrimaryVerticesPreSplitting.TrackLabel = cms.InputTag("initialStepTracksPreSplitting")
97 firstStepPrimaryVerticesPreSplitting.vertexCollections = cms.VPSet(
98  [cms.PSet(label=cms.string(""),
99  algorithm=cms.string("AdaptiveVertexFitter"),
100  minNdof=cms.double(0.0),
101  useBeamConstraint = cms.bool(False),
102  maxDistanceToBeam = cms.double(1.0)
103  )
104  ]
105  )
106 
107 #Jet Core emulation to identify jet-tracks
108 from RecoTracker.IterativeTracking.JetCoreRegionalStep_cff import initialStepTrackRefsForJets, caloTowerForTrk, ak4CaloJetsForTrk, jetsForCoreTracking
109 initialStepTrackRefsForJetsPreSplitting = initialStepTrackRefsForJets.clone(
110  src = 'initialStepTracksPreSplitting')
111 caloTowerForTrkPreSplitting = caloTowerForTrk.clone()
112 ak4CaloJetsForTrkPreSplitting = ak4CaloJetsForTrk.clone(
113  src = 'caloTowerForTrkPreSplitting',
114  srcPVs = 'firstStepPrimaryVerticesPreSplitting')
115 jetsForCoreTrackingPreSplitting = jetsForCoreTracking.clone(
116  src = 'ak4CaloJetsForTrkPreSplitting')
117 
118 #Cluster Splitting
119 from RecoLocalTracker.SubCollectionProducers.jetCoreClusterSplitter_cfi import jetCoreClusterSplitter
120 siPixelClusters = jetCoreClusterSplitter.clone(
121  pixelClusters = cms.InputTag('siPixelClustersPreSplitting'),
122  vertices = 'firstStepPrimaryVerticesPreSplitting',
123  cores = 'jetsForCoreTrackingPreSplitting'
124 )
125 
126 # Final sequence
128 from RecoTracker.MeasurementDet.MeasurementTrackerEventProducer_cfi import MeasurementTrackerEvent
130 InitialStepPreSplitting = cms.Sequence(initialStepSeedLayersPreSplitting*
131  initialStepSeedsPreSplitting*
132  initialStepTrackCandidatesPreSplitting*
133  initialStepTracksPreSplitting*
134  firstStepPrimaryVerticesPreSplitting*
135  initialStepTrackRefsForJetsPreSplitting*
136  caloTowerForTrkPreSplitting*
137  ak4CaloJetsForTrkPreSplitting*
138  jetsForCoreTrackingPreSplitting*
139  siPixelClusters*
140  siPixelRecHits*
141  MeasurementTrackerEvent*
142  siPixelClusterShapeCache)
143