CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
IterativePixelLessStep_cff.py
Go to the documentation of this file.
2 
3 # step 4
4 
5 # seeding
6 #from FastSimulation.Tracking.IterativeFourthSeedProducer_cff import *
8 iterativePixelLessSeeds = FastSimulation.Tracking.TrajectorySeedProducer_cfi.trajectorySeedProducer.clone()
9 iterativePixelLessSeeds.firstHitSubDetectorNumber = [3]
10 iterativePixelLessSeeds.firstHitSubDetectors = [3, 4, 6]
11 iterativePixelLessSeeds.secondHitSubDetectorNumber = [3]
12 iterativePixelLessSeeds.secondHitSubDetectors = [3, 4, 6]
13 iterativePixelLessSeeds.thirdHitSubDetectorNumber = [0]
14 iterativePixelLessSeeds.thirdHitSubDetectors = []
15 iterativePixelLessSeeds.seedingAlgo = ['PixelLessPairs']
16 ###iterativePixelLessSeeds.minRecHits = [5]
17 iterativePixelLessSeeds.minRecHits = [3]
18 iterativePixelLessSeeds.pTMin = [0.3]
19 #cut on fastsim simtracks. I think it should be removed for the 4th step
20 #iterativePixelLessSeeds.maxD0 = [20.]
21 #iterativePixelLessSeeds.maxZ0 = [50.]
22 iterativePixelLessSeeds.maxD0 = [99.]
23 iterativePixelLessSeeds.maxZ0 = [99.]
24 #-----
25 iterativePixelLessSeeds.numberOfHits = [3]
26 #values for the seed compatibility constraint
27 iterativePixelLessSeeds.originRadius = [1.0]
28 iterativePixelLessSeeds.originHalfLength = [12.0]
29 iterativePixelLessSeeds.originpTMin = [0.4] # was 0.6
30 iterativePixelLessSeeds.zVertexConstraint = [-1.0]
31 iterativePixelLessSeeds.primaryVertices = ['none']
32 
33 iterativePixelLessSeeds.newSyntax = True
34 #iterativePixelLessSeeds.layerList = ['TIB1+TIB2',
35 # 'TIB1+TID1_pos','TIB1+TID1_neg',
36 # 'TID3_pos+TEC1_pos','TID3_neg+TEC1_neg',
37 # 'TID1_pos+TID2_pos','TID2_pos+TID3_pos',
38 # 'TEC1_pos+TEC2_pos','TEC2_pos+TEC3_pos','TEC3_pos+TEC4_pos','TEC3_pos+TEC5_pos','TEC4_pos+TEC5_pos',
39 # 'TID1_neg+TID2_neg','TID2_neg+TID3_neg',
40 # 'TEC1_neg+TEC2_neg','TEC2_neg+TEC3_neg','TEC3_neg+TEC4_neg','TEC3_neg+TEC5_neg','TEC4_neg+TEC5_neg']
41 from RecoTracker.IterativeTracking.PixelLessStep_cff import pixelLessStepSeedLayers
42 iterativePixelLessSeeds.layerList = pixelLessStepSeedLayers.layerList
43 
44 # candidate producer
45 #from FastSimulation.Tracking.IterativeFourthCandidateProducer_cff import *
47 iterativePixelLessTrackCandidates = FastSimulation.Tracking.TrackCandidateProducer_cfi.trackCandidateProducer.clone()
48 iterativePixelLessTrackCandidates.SeedProducer = cms.InputTag("iterativePixelLessSeeds","PixelLessPairs")
49 iterativePixelLessTrackCandidates.TrackProducers = ['initialStepTracks', 'lowPtTripletStepTracks', 'pixelPairStepTracks', 'detachedTripletStepTracks','mixedTripletStepTracks'] # add 0 and 0.5 ?
50 iterativePixelLessTrackCandidates.KeepFittedTracks = False
51 iterativePixelLessTrackCandidates.MinNumberOfCrossedLayers = 6 # was 5
52 
53 
54 # track producer
55 #from FastSimulation.Tracking.IterativeFourthTrackProducer_cff import *
57 iterativePixelLessTracks = RecoTracker.TrackProducer.CTFFinalFitWithMaterial_cfi.ctfWithMaterialTracks.clone()
58 iterativePixelLessTracks.src = 'iterativePixelLessTrackCandidates'
59 iterativePixelLessTracks.TTRHBuilder = 'WithoutRefit'
60 ##iterativePixelLessTracks.Fitter = 'KFFittingSmootherWithOutlierRejection'
61 iterativePixelLessTracks.Fitter = 'KFFittingSmootherFourth'
62 iterativePixelLessTracks.Propagator = 'PropagatorWithMaterial'
63 
64 
65 # track merger
66 #from FastSimulation.Tracking.IterativeFourthTrackMerger_cfi import *
67 pixelLessStepTracks = cms.EDProducer("FastTrackMerger",
68  TrackProducers = cms.VInputTag(cms.InputTag("iterativePixelLessTrackCandidates"),
69  cms.InputTag("iterativePixelLessTracks")),
70  RemoveTrackProducers = cms.untracked.VInputTag(cms.InputTag("initialStepTracksr"),
71  cms.InputTag("lowPtTripletStepTracks"),
72  cms.InputTag("pixelPairStepTracks"),
73  cms.InputTag("detachedTripletStepTracks"),
74  cms.InputTag("mixedTripletStepTracks")),
75  trackAlgo = cms.untracked.uint32(9),
76  MinNumberOfTrajHits = cms.untracked.uint32(6), # was 5
77  MaxLostTrajHits = cms.untracked.uint32(0)
78  )
79 
80 # track selection
81 import RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi
82 pixelLessStepSelector = RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.multiTrackSelector.clone(
83  src='pixelLessStepTracks',
84  trackSelectors= cms.VPSet(
85  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
86  name = 'pixelLessStepLoose',
87  chi2n_par = 0.5,
88  res_par = ( 0.003, 0.001 ),
89  minNumberLayers = 5,
90  maxNumberLostLayers = 1,
91  minNumber3DLayers = 3,
92  d0_par1 = ( 1.5, 4.0 ),
93  dz_par1 = ( 1.5, 4.0 ),
94  d0_par2 = ( 1.5, 4.0 ),
95  dz_par2 = ( 1.5, 4.0 )
96  ),
97  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
98  name = 'pixelLessStepTight',
99  preFilterName = 'pixelLessStepLoose',
100  chi2n_par = 0.35,
101  res_par = ( 0.003, 0.001 ),
102  minNumberLayers = 5,
103  maxNumberLostLayers = 0,
104  minNumber3DLayers = 3,
105  d0_par1 = ( 1.2, 4.0 ),
106  dz_par1 = ( 1.2, 4.0 ),
107  d0_par2 = ( 1.2, 4.0 ),
108  dz_par2 = ( 1.2, 4.0 )
109  ),
110  RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
111  name = 'pixelLessStep',
112  preFilterName = 'pixelLessStepTight',
113  chi2n_par = 0.25,
114  res_par = ( 0.003, 0.001 ),
115  minNumberLayers = 5,
116  maxNumberLostLayers = 0,
117  minNumber3DLayers = 3,
118  d0_par1 = ( 1., 4.0 ),
119  dz_par1 = ( 1., 4.0 ),
120  d0_par2 = ( 1., 4.0 ),
121  dz_par2 = ( 1., 4.0 )
122  ),
123  ) #end of vpset
124  ) #end of clone
125 
126 
127 # sequence
128 iterativePixelLessStep = cms.Sequence(iterativePixelLessSeeds+
129  iterativePixelLessTrackCandidates+
130  iterativePixelLessTracks+
131  pixelLessStepTracks+
132  pixelLessStepSelector)
133