CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
PhotonConversionTrajectorySeedProducerFromQuadruplets_cff.py
Go to the documentation of this file.
2 
4 
6 TrackRefitterStd = TrackRefitter.clone(src=cms.InputTag("generalTracks"))
7 
8 
9 convFilter = cms.EDProducer("QualityFilter",
10  TrackQuality = cms.string('loose'),
11  recTracks = cms.InputTag("TrackRefitterStd")
12  )
13 
14 convClusters = cms.EDProducer("TrackClusterRemover",
15  trajectories = cms.InputTag("convFilter"),
16  pixelClusters = cms.InputTag("siPixelClusters"),
17  stripClusters = cms.InputTag("siStripClusters"),
18  Common = cms.PSet(maxChi2 = cms.double(30.0))
19  )
20 
22 convPixelRecHits = RecoLocalTracker.SiPixelRecHits.SiPixelRecHits_cfi.siPixelRecHits.clone(
23  src = 'convClusters'
24  )
25 
27 convStripRecHits = RecoLocalTracker.SiStripRecHitConverter.SiStripRecHitConverter_cfi.siStripMatchedRecHits.clone(
28  ClusterProducer = 'convClusters'
29  )
30 
31 convLayerPairs = cms.ESProducer("SeedingLayersESProducer",
32  ComponentName = cms.string('convLayerPairs'),
33  layerList = cms.vstring('BPix1+BPix2',
34 
35  'BPix2+BPix3',
36  'BPix2+FPix1_pos',
37  'BPix2+FPix1_neg',
38  'BPix2+FPix2_pos',
39  'BPix2+FPix2_neg',
40 
41  'FPix1_pos+FPix2_pos',
42  'FPix1_neg+FPix2_neg',
43 
44  'BPix3+TIB1',
45 
46  'TIB1+TID1_pos',
47  'TIB1+TID1_neg',
48  'TIB1+TID2_pos',
49  'TIB1+TID2_neg',
50  'TIB1+TIB2',
51 
52  'TIB2+TID1_pos',
53  'TIB2+TID1_neg',
54  'TIB2+TID2_pos',
55  'TIB2+TID2_neg',
56  'TIB2+TIB3',
57 
58  'TIB3+TIB4',
59  'TIB3+TID1_pos',
60  'TIB3+TID1_neg',
61 
62  'TIB4+TOB1',
63 
64  'TOB1+TOB2',
65  'TOB1+TEC1_pos',
66  'TOB1+TEC1_neg',
67 
68  'TOB2+TOB3',
69  'TOB2+TEC1_pos',
70  'TOB2+TEC1_neg',
71 
72  'TOB3+TOB4',
73  'TOB3+TEC1_pos',
74  'TOB3+TEC1_neg',
75 
76  'TOB4+TOB5',
77 
78  'TOB5+TOB6',
79 
80  'TID1_pos+TID2_pos',
81  'TID2_pos+TID3_pos',
82  'TID3_pos+TEC1_pos',
83 
84  'TID1_neg+TID2_neg',
85  'TID2_neg+TID3_neg',
86  'TID3_neg+TEC1_neg',
87 
88  'TEC1_pos+TEC2_pos',
89  'TEC2_pos+TEC3_pos',
90  'TEC3_pos+TEC4_pos',
91  'TEC4_pos+TEC5_pos',
92  'TEC5_pos+TEC6_pos',
93  'TEC6_pos+TEC7_pos',
94  'TEC7_pos+TEC8_pos',
95 
96  'TEC1_neg+TEC2_neg',
97  'TEC2_neg+TEC3_neg',
98  'TEC3_neg+TEC4_neg',
99  'TEC4_neg+TEC5_neg',
100  'TEC5_neg+TEC6_neg',
101  'TEC6_neg+TEC7_neg',
102  'TEC7_neg+TEC8_neg'
103  #other combinations could be added
104  ),
105 
106  BPix = cms.PSet(
107  hitErrorRZ = cms.double(0.006),
108  hitErrorRPhi = cms.double(0.0027),
109  TTRHBuilder = cms.string('TTRHBuilderWithoutAngle4PixelPairs'),
110  HitProducer = cms.string('convPixelRecHits'),
111  useErrorsFromParam = cms.bool(True)
112  ),
113  FPix = cms.PSet(
114  hitErrorRZ = cms.double(0.0036),
115  hitErrorRPhi = cms.double(0.0051),
116  TTRHBuilder = cms.string('TTRHBuilderWithoutAngle4PixelPairs'),
117  HitProducer = cms.string('convPixelRecHits'),
118  useErrorsFromParam = cms.bool(True)
119  ),
120  TIB1 = cms.PSet(
121  TTRHBuilder = cms.string('WithTrackAngle'),
122  matchedRecHits = cms.InputTag("convStripRecHits","matchedRecHit"),
123  #useSimpleRphiHitsCleaner = cms.bool(False),
124  #stereoRecHits = cms.InputTag("siStripMatchedRecHits","stereoRecHitUnmatched"),
125  #rphiRecHits = cms.InputTag("siStripMatchedRecHits","rphiRecHitUnmatched")
126  ),
127  TIB2 = cms.PSet(
128  TTRHBuilder = cms.string('WithTrackAngle'),
129  matchedRecHits = cms.InputTag("convStripRecHits","matchedRecHit"),
130  #useSimpleRphiHitsCleaner = cms.bool(False),
131  #stereoRecHits = cms.InputTag("siStripMatchedRecHits","stereoRecHitUnmatched"),
132  #rphiRecHits = cms.InputTag("siStripMatchedRecHits","rphiRecHitUnmatched")
133  ),
134  TIB3 = cms.PSet(
135  TTRHBuilder = cms.string('WithTrackAngle'),
136  rphiRecHits = cms.InputTag("convStripRecHits","rphiRecHit")
137  ),
138  TIB4 = cms.PSet(
139  TTRHBuilder = cms.string('WithTrackAngle'),
140  rphiRecHits = cms.InputTag("convStripRecHits","rphiRecHit")
141  ),
142  TID1 = cms.PSet(
143  useSimpleRphiHitsCleaner = cms.bool(False),
144  stereoRecHits = cms.InputTag("convStripRecHits","stereoRecHitUnmatched"),
145  matchedRecHits = cms.InputTag("convStripRecHits","matchedRecHit"),
146  useRingSlector = cms.bool(True),
147  TTRHBuilder = cms.string('WithTrackAngle'),
148  rphiRecHits = cms.InputTag("convStripRecHits","rphiRecHitUnmatched"),
149  maxRing = cms.int32(3),
150  minRing = cms.int32(1)
151  ),
152  TID2 = cms.PSet(
153  useSimpleRphiHitsCleaner = cms.bool(False),
154  stereoRecHits = cms.InputTag("convStripRecHits","stereoRecHitUnmatched"),
155  matchedRecHits = cms.InputTag("convStripRecHits","matchedRecHit"),
156  useRingSlector = cms.bool(True),
157  TTRHBuilder = cms.string('WithTrackAngle'),
158  rphiRecHits = cms.InputTag("convStripRecHits","rphiRecHitUnmatched"),
159  maxRing = cms.int32(3),
160  minRing = cms.int32(1)
161  ),
162  TID3 = cms.PSet(
163  useSimpleRphiHitsCleaner = cms.bool(False),
164  stereoRecHits = cms.InputTag("convStripRecHits","stereoRecHitUnmatched"),
165  matchedRecHits = cms.InputTag("convStripRecHits","matchedRecHit"),
166  useRingSlector = cms.bool(True),
167  TTRHBuilder = cms.string('WithTrackAngle'),
168  rphiRecHits = cms.InputTag("convStripRecHits","rphiRecHitUnmatched"),
169  maxRing = cms.int32(2),
170  minRing = cms.int32(1)
171  ),
172  TEC = cms.PSet(
173  useSimpleRphiHitsCleaner = cms.bool(False),
174  minRing = cms.int32(1),
175  matchedRecHits = cms.InputTag("convStripRecHits","matchedRecHit"),
176  useRingSlector = cms.bool(True),
177  TTRHBuilder = cms.string('WithTrackAngle'),
178  rphiRecHits = cms.InputTag("convStripRecHits","rphiRecHitUnmatched"),
179  maxRing = cms.int32(2),
180  stereoRecHits = cms.InputTag("convStripRecHits","stereoRecHitUnmatched")
181  ),
182  TOB1 = cms.PSet(
183  matchedRecHits = cms.InputTag("convStripRecHits","matchedRecHit"),
184  TTRHBuilder = cms.string('WithTrackAngle')
185  ),
186  TOB2 = cms.PSet(
187  matchedRecHits = cms.InputTag("convStripRecHits","matchedRecHit"),
188  TTRHBuilder = cms.string('WithTrackAngle')
189  ),
190  TOB3 = cms.PSet(
191  TTRHBuilder = cms.string('WithTrackAngle'),
192  rphiRecHits = cms.InputTag("convStripRecHits","rphiRecHit")
193  ),
194  TOB4 = cms.PSet(
195  TTRHBuilder = cms.string('WithTrackAngle'),
196  rphiRecHits = cms.InputTag("convStripRecHits","rphiRecHit")
197  ),
198  TOB5 = cms.PSet(
199  TTRHBuilder = cms.string('WithTrackAngle'),
200  rphiRecHits = cms.InputTag("convStripRecHits","rphiRecHit")
201  ),
202  TOB6 = cms.PSet(
203  TTRHBuilder = cms.string('WithTrackAngle'),
204  rphiRecHits = cms.InputTag("convStripRecHits","rphiRecHit")
205  )
206  )
207 
208 
209 photonConvTrajSeedFromQuadruplets.TrackRefitter = cms.InputTag('TrackRefitterStd')
210 
211 # TRACKER DATA CONTROL
213 convMeasurementTracker = RecoTracker.MeasurementDet.MeasurementTrackerESProducer_cfi.MeasurementTracker.clone(
214  ComponentName = 'convMeasurementTracker',
215  pixelClusterProducer = 'convClusters',
216  stripClusterProducer = 'convClusters'
217  )
218 
219 # QUALITY CUTS DURING TRACK BUILDING
220 import TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi
221 convCkfTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi.trajectoryFilterESProducer.clone(
222  ComponentName = 'convCkfTrajectoryFilter',
223  filterPset = TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi.trajectoryFilterESProducer.filterPset.clone(
224  maxLostHits = 1,
225  minimumNumberOfHits = 3,
226  minPt = 0.1
227  )
228  )
229 
230 # TRACK BUILDING
232 convCkfTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilderESProducer_cfi.GroupedCkfTrajectoryBuilder.clone(
233  ComponentName = 'convCkfTrajectoryBuilder',
234  MeasurementTrackerName = 'convMeasurementTracker',
235  trajectoryFilterName = 'convCkfTrajectoryFilter',
236  minNrOfHitsForRebuild = 3
237  )
238 
239 # MAKING OF TRACK CANDIDATES
241 convTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
242  src = cms.InputTag('photonConvTrajSeedFromQuadruplets:convSeedCandidates'),
243  TrajectoryBuilder = 'convCkfTrajectoryBuilder'
244 )
245 
246 # TRACK FITTING
248 convStepTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
249  src = 'convTrackCandidates',
250  clusterRemovalInfo = 'convClusters',
251  AlgorithmName = cms.string('iter9')
252  )
253 
254 # TRACK SELECTION AND QUALITY FLAG SETTING.
255 import RecoTracker.FinalTrackSelectors.selectLoose_cfi
256 import RecoTracker.FinalTrackSelectors.selectTight_cfi
257 import RecoTracker.FinalTrackSelectors.selectHighPurity_cfi
258 import RecoTracker.FinalTrackSelectors.simpleTrackListMerger_cfi
259 #since they are equal I comment out the first
260 # convStepLoose = RecoTracker.FinalTrackSelectors.selectLoose_cfi.selectLoose.clone(
261 # src = 'convStepTracks',
262 # keepAllTracks = True,
263 # copyExtras = False,
264 # copyTrajectories = True,
265 # chi2n_par = 2.,
266 # res_par = ( 0.003, 0.001 ),
267 # minNumberLayers = 3,
268 # maxNumberLostLayers = 1,
269 # minNumber3DLayers = 1,
270 # d0_par1 = ( 5., 8.0 ),
271 # dz_par1 = ( 5., 8.0 ),
272 # d0_par2 = ( 5., 8.0 ),
273 # dz_par2 = ( 5., 8.0 )
274 # )
275 # convStepTight = RecoTracker.FinalTrackSelectors.selectTight_cfi.selectTight.clone(
276 # src = 'convStepLoose',
277 # keepAllTracks = True,
278 # copyExtras = False,
279 # copyTrajectories = True,
280 # chi2n_par = 2.,
281 # res_par = ( 0.003, 0.001 ),
282 # minNumberLayers = 3,
283 # maxNumberLostLayers = 1,
284 # minNumber3DLayers = 1,
285 # d0_par1 = ( 5., 8.0 ),
286 # dz_par1 = ( 5., 8.0 ),
287 # d0_par2 = ( 5., 8.0 ),
288 # dz_par2 = ( 5., 8.0 )
289 # )
290 convStep = RecoTracker.FinalTrackSelectors.selectHighPurity_cfi.selectHighPurity.clone(
291 # src = 'convStepTight',
292  src = 'convStepTracks',
293  keepAllTracks = True,
294  copyExtras = False,
295  copyTrajectories = True,
296  applyAdaptedPVCuts = False,
297  chi2n_par = 2.,
298  res_par = ( 0.003, 0.001 ),
299  minNumberLayers = 3,
300  maxNumberLostLayers = 1,
301  minNumber3DLayers = 1,
302  d0_par1 = ( 5., 8.0 ),
303  dz_par1 = ( 5., 8.0 ),
304  d0_par2 = ( 5., 8.0 ),
305  dz_par2 = ( 5., 8.0 )
306  )
307 
308 #import RecoTracker.FinalTrackSelectors.trackListMerger_cfi
309 #QuadSeedStep = RecoTracker.FinalTrackSelectors.trackListMerger_cfi.trackListMerger.clone(
310 # TrackProducers = cms.VInputTag(cms.InputTag('convStepTracks')),
311 # hasSelector=cms.vint32(1),
312 # selectedTrackQuals = cms.VInputTag(cms.InputTag("convStep")),
313 # setsToMerge = cms.VPSet( cms.PSet( tLists=cms.vint32(0), pQual=cms.bool(True) )),
314 # writeOnlyTrkQuals=cms.bool(True)
315 #)
316 
317 convSequence = cms.Sequence( TrackRefitterStd * convFilter * convClusters * convPixelRecHits * convStripRecHits
318  * photonConvTrajSeedFromQuadruplets
319  *convTrackCandidates*convStepTracks
320  #*convStepLoose*convStepTight
321  *convStep
322  #*QuadSeedStep
323  )
324 
325 
326 
327