CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
IterativeMixedTripletStep_cff.py
Go to the documentation of this file.
2 
3 # step 3
4 
5 # seeding
6 #from FastSimulation.Tracking.IterativeMixedTripletStepSeedProducer_cff import *
8 iterativeMixedTripletStepSeeds = FastSimulation.Tracking.TrajectorySeedProducer_cfi.trajectorySeedProducer.clone()
9 iterativeMixedTripletStepSeeds.firstHitSubDetectorNumber = [2]
10 ##iterativeMixedTripletStepSeeds.firstHitSubDetectors = [1, 2, 6]
11 iterativeMixedTripletStepSeeds.firstHitSubDetectors = [1, 2]
12 iterativeMixedTripletStepSeeds.secondHitSubDetectorNumber = [3]
13 iterativeMixedTripletStepSeeds.secondHitSubDetectors = [1, 2, 6]
14 iterativeMixedTripletStepSeeds.thirdHitSubDetectorNumber = [0]
15 iterativeMixedTripletStepSeeds.thirdHitSubDetectors = []
16 iterativeMixedTripletStepSeeds.seedingAlgo = ['MixedTriplets']
17 iterativeMixedTripletStepSeeds.minRecHits = [3]
18 iterativeMixedTripletStepSeeds.pTMin = [0.15]
19 iterativeMixedTripletStepSeeds.maxD0 = [10.]
20 iterativeMixedTripletStepSeeds.maxZ0 = [30.]
21 iterativeMixedTripletStepSeeds.numberOfHits = [2]
22 iterativeMixedTripletStepSeeds.originRadius = [2.0] # was 1.2
23 iterativeMixedTripletStepSeeds.originHalfLength = [10.0] # was 7.0
24 iterativeMixedTripletStepSeeds.originpTMin = [0.35] # we need to add another seed for endcaps only, with 0.5
25 iterativeMixedTripletStepSeeds.zVertexConstraint = [-1.0]
26 iterativeMixedTripletStepSeeds.primaryVertices = ['none']
27 
28 
29 # candidate producer
30 #from FastSimulation.Tracking.IterativeThirdCandidateProducer_cff import *
32 iterativeMixedTripletStepCandidates = FastSimulation.Tracking.TrackCandidateProducer_cfi.trackCandidateProducer.clone()
33 iterativeMixedTripletStepCandidates.SeedProducer = cms.InputTag("iterativeMixedTripletStepSeeds","MixedTriplets")
34 iterativeMixedTripletStepCandidates.TrackProducers = ['pixelPairStepTracks', 'detachedTripletStepTracks']
35 iterativeMixedTripletStepCandidates.KeepFittedTracks = False
36 iterativeMixedTripletStepCandidates.MinNumberOfCrossedLayers = 3
37 
38 
39 # track producer
40 #from FastSimulation.Tracking.IterativeThirdTrackProducer_cff import *
42 iterativeMixedTripletStepTracks = RecoTracker.TrackProducer.CTFFinalFitWithMaterial_cfi.ctfWithMaterialTracks.clone()
43 iterativeMixedTripletStepTracks.src = 'iterativeMixedTripletStepCandidates'
44 iterativeMixedTripletStepTracks.TTRHBuilder = 'WithoutRefit'
45 ##iterativeMixedTripletStepTracks.Fitter = 'KFFittingSmootherWithOutlierRejection'
46 iterativeMixedTripletStepTracks.Fitter = 'KFFittingSmootherThird'
47 iterativeMixedTripletStepTracks.Propagator = 'PropagatorWithMaterial'
48 
49 # track merger
50 #from FastSimulation.Tracking.IterativeMixedTripletStepMerger_cfi import *
51 mixedTripletStepTracks = cms.EDProducer("FastTrackMerger",
52  TrackProducers = cms.VInputTag(cms.InputTag("iterativeMixedTripletStepCandidates"),
53  cms.InputTag("iterativeMixedTripletStepTracks")),
54  RemoveTrackProducers = cms.untracked.VInputTag(cms.InputTag("initialStepTracks"),
55  cms.InputTag("lowPtTripletStepTracks"),
56  cms.InputTag("pixelPairStepTracks"),
57  cms.InputTag("detachedTripletStepTracks")),
58  trackAlgo = cms.untracked.uint32(8),
59  MinNumberOfTrajHits = cms.untracked.uint32(4), # ?
60  MaxLostTrajHits = cms.untracked.uint32(0)
61  )
62 
63 # TRACK SELECTION AND QUALITY FLAG SETTING.
64 import RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi
65 mixedTripletStepSelector = RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.multiTrackSelector.clone(
66  src='mixedTripletStepTracks',
67  trackSelectors= cms.VPSet(
68  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
69  name = 'mixedTripletStepVtxLoose',
70  chi2n_par = 1.2,
71  res_par = ( 0.003, 0.001 ),
72  minNumberLayers = 3,
73  maxNumberLostLayers = 1,
74  minNumber3DLayers = 2,
75  d0_par1 = ( 1.2, 3.0 ),
76  dz_par1 = ( 1.2, 3.0 ),
77  d0_par2 = ( 1.3, 3.0 ),
78  dz_par2 = ( 1.3, 3.0 )
79  ),
80  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
81  name = 'mixedTripletStepTrkLoose',
82  chi2n_par = 0.6,
83  res_par = ( 0.003, 0.001 ),
84  minNumberLayers = 4,
85  maxNumberLostLayers = 1,
86  minNumber3DLayers = 3,
87  d0_par1 = ( 1.2, 4.0 ),
88  dz_par1 = ( 1.2, 4.0 ),
89  d0_par2 = ( 1.2, 4.0 ),
90  dz_par2 = ( 1.2, 4.0 )
91  ),
92  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
93  name = 'mixedTripletStepVtxTight',
94  preFilterName = 'mixedTripletStepVtxLoose',
95  chi2n_par = 0.6,
96  res_par = ( 0.003, 0.001 ),
97  minNumberLayers = 3,
98  maxNumberLostLayers = 1,
99  minNumber3DLayers = 3,
100  d0_par1 = ( 1.1, 3.0 ),
101  dz_par1 = ( 1.1, 3.0 ),
102  d0_par2 = ( 1.2, 3.0 ),
103  dz_par2 = ( 1.2, 3.0 )
104  ),
105  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
106  name = 'mixedTripletStepTrkTight',
107  preFilterName = 'mixedTripletStepTrkLoose',
108  chi2n_par = 0.4,
109  res_par = ( 0.003, 0.001 ),
110  minNumberLayers = 5,
111  maxNumberLostLayers = 1,
112  minNumber3DLayers = 4,
113  d0_par1 = ( 1.1, 4.0 ),
114  dz_par1 = ( 1.1, 4.0 ),
115  d0_par2 = ( 1.1, 4.0 ),
116  dz_par2 = ( 1.1, 4.0 )
117  ),
118  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
119  name = 'mixedTripletStepVtx',
120  preFilterName = 'mixedTripletStepVtxTight',
121  chi2n_par = 0.4,
122  res_par = ( 0.003, 0.001 ),
123  minNumberLayers = 3,
124  maxNumberLostLayers = 1,
125  minNumber3DLayers = 3,
126  d0_par1 = ( 1.1, 3.0 ),
127  dz_par1 = ( 1.1, 3.0 ),
128  d0_par2 = ( 1.2, 3.0 ),
129  dz_par2 = ( 1.2, 3.0 )
130  ),
131  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
132  name = 'mixedTripletStepTrk',
133  preFilterName = 'mixedTripletStepTrkTight',
134  chi2n_par = 0.3,
135  res_par = ( 0.003, 0.001 ),
136  minNumberLayers = 5,
137  maxNumberLostLayers = 0,
138  minNumber3DLayers = 4,
139  d0_par1 = ( 0.9, 4.0 ),
140  dz_par1 = ( 0.9, 4.0 ),
141  d0_par2 = ( 0.9, 4.0 ),
142  dz_par2 = ( 0.9, 4.0 )
143  )
144  ) #end of vpset
145  ) #end of clone
146 
147 import RecoTracker.FinalTrackSelectors.trackListMerger_cfi
148 mixedTripletStep = RecoTracker.FinalTrackSelectors.trackListMerger_cfi.trackListMerger.clone(
149  TrackProducers = cms.VInputTag(cms.InputTag('mixedTripletStepTracks'),
150  cms.InputTag('mixedTripletStepTracks')),
151  hasSelector=cms.vint32(1,1),
152  selectedTrackQuals = cms.VInputTag(cms.InputTag("mixedTripletStepSelector","mixedTripletStepVtx"),
153  cms.InputTag("mixedTripletStepSelector","mixedTripletStepTrk")),
154  setsToMerge = cms.VPSet( cms.PSet( tLists=cms.vint32(0,1), pQual=cms.bool(True) )),
155  writeOnlyTrkQuals=cms.bool(True)
156  )
157 
158 # sequence
159 iterativeMixedTripletStep = cms.Sequence(iterativeMixedTripletStepSeeds+
160  iterativeMixedTripletStepCandidates+
161  iterativeMixedTripletStepTracks+
162  mixedTripletStepTracks+
163  mixedTripletStepSelector+
164  mixedTripletStep)
165