79 |
|
# 2) Constructs transient tracks and trajectories from persistent tracks |
80 |
|
# ------------------------------------------------------------------------------ |
81 |
|
from RecoTracker.TrackProducer.TrackRefitter_cfi import TrackRefitter |
82 |
< |
process.Refitter = TrackRefitter.clone( |
82 |
> |
process.GeomRefitter = TrackRefitter.clone( |
83 |
|
src = "AlignmentTrackSelector", |
84 |
|
TrajectoryInEvent = True ) |
85 |
|
|
99 |
|
# A-4) Refitter tracks without constraint |
100 |
|
# ------------------------------------------------------------------------------ |
101 |
|
process.TrackRefitterWithoutConstraint = TrackRefitter.clone( |
102 |
< |
src = "AlignmentTrackSelector", |
102 |
> |
src = "GeomRefitter", |
103 |
|
Fitter = cms.string('TwoBodyDecayTrackFitter')) |
104 |
|
|
105 |
|
# ------------------------------------------------------------------------------ |
106 |
|
# A-5) Fill Tree with refit tracks (without constraint) |
107 |
|
# ------------------------------------------------------------------------------ |
108 |
< |
process.treeproducer1 = cms.EDAnalyzer('AlignmentTree', |
108 |
> |
process.treeWithoutConstraints = cms.EDAnalyzer('AlignmentTree', |
109 |
|
trackLabel = cms.InputTag('TrackRefitterWithoutConstraint'), |
110 |
|
tkTraj = cms.InputTag('TrackRefitterWithoutConstraint'), |
111 |
|
labelTrajToTrack = cms.InputTag('TrackRefitterWithoutConstraint'), |
120 |
|
# B-4) Producer for full TwoBodyDecay constraint |
121 |
|
# ------------------------------------------------------------------------------ |
122 |
|
process.load("RecoTracker.TrackProducer.TwoBodyDecayConstraintProducer_cff") |
123 |
< |
#process.TwoBodyDecayConstraint.chi2Cut = 100 |
123 |
> |
process.TwoBodyDecayConstraint.src = "GeomRefitter" |
124 |
> |
process.TwoBodyDecayConstraint.chi2Cut = 10 |
125 |
> |
|
126 |
> |
|
127 |
|
|
128 |
|
# ------------------------------------------------------------------------------ |
129 |
|
# B-5) Refitter using the full TwoBodyDecay constraint |
130 |
|
# ------------------------------------------------------------------------------ |
131 |
|
process.TrackRefitterTBDFullConstraint = TrackRefitter.clone( |
132 |
< |
src = "AlignmentTrackSelector", |
132 |
> |
src = "GeomRefitter", |
133 |
|
srcConstr = "TwoBodyDecayConstraint", |
134 |
|
Fitter = cms.string('TwoBodyDecayTrackFitter'), |
135 |
|
constraint = "trackParameters", |
138 |
|
# ------------------------------------------------------------------------------ |
139 |
|
# B-6) Fill Tree with full TBD constraint |
140 |
|
# ------------------------------------------------------------------------------ |
141 |
< |
process.treeproducer2 = cms.EDAnalyzer('AlignmentTree', |
141 |
> |
process.treeTBDFullConstraints = cms.EDAnalyzer('AlignmentTree', |
142 |
|
trackLabel = cms.InputTag('TrackRefitterTBDFullConstraint'), |
143 |
|
tkTraj = cms.InputTag('TrackRefitterTBDFullConstraint'), |
144 |
|
labelTrajToTrack = cms.InputTag('TrackRefitterTBDFullConstraint'), |
154 |
|
# ------------------------------------------------------------------------------ |
155 |
|
process.load("RecoTracker.TrackProducer.TwoBodyDecayMomConstraintProducer_cff") |
156 |
|
process.TwoBodyDecayMomConstraint.isMC = True |
157 |
< |
#process.TwoBodyDecayMomConstraint.chi2Cut = 100 |
157 |
> |
process.TwoBodyDecayMomConstraint.src = "GeomRefitter" |
158 |
> |
process.TwoBodyDecayMomConstraint.chi2Cut = 10 |
159 |
|
|
160 |
|
# ------------------------------------------------------------------------------ |
161 |
|
# C-5) Refit the tracks with momentum constraint |
162 |
|
# ------------------------------------------------------------------------------ |
163 |
|
process.TrackRefitterTBDMomConstraint = TrackRefitter.clone( |
164 |
< |
src = "AlignmentTrackSelector", |
164 |
> |
src = "GeomRefitter", |
165 |
|
srcConstr = "TwoBodyDecayMomConstraint", |
166 |
|
Fitter = cms.string('TwoBodyDecayTrackFitter'), |
167 |
|
constraint = "momentum", |
170 |
|
# ------------------------------------------------------------------------------ |
171 |
|
# C-6) Fill Tree with mom TBD constraint |
172 |
|
# ------------------------------------------------------------------------------ |
173 |
< |
process.treeproducer3 = cms.EDAnalyzer('AlignmentTree', |
173 |
> |
process.treeTBDMomConstraints = cms.EDAnalyzer('AlignmentTree', |
174 |
|
trackLabel = cms.InputTag('TrackRefitterTBDMomConstraint'), |
175 |
|
tkTraj = cms.InputTag('TrackRefitterTBDMomConstraint'), |
176 |
|
labelTrajToTrack = cms.InputTag('TrackRefitterTBDMomConstraint'), |
186 |
|
# ------------------------------------------------------------------------------ |
187 |
|
process.doConstraintKinFit = cms.EDProducer('ZmassConstraintsProd', |
188 |
|
isMC = cms.bool(True), |
189 |
< |
trackLabel = cms.InputTag('AlignmentTrackSelector') |
189 |
> |
trackLabel = cms.InputTag('GeomRefitter') |
190 |
|
) |
191 |
|
|
192 |
|
# ------------------------------------------------------------------------------ |
193 |
|
# D-5) Refitter for KinFit |
194 |
|
# ------------------------------------------------------------------------------ |
195 |
|
process.TrackRefitterKinFit = TrackRefitter.clone( |
196 |
< |
src = "AlignmentTrackSelector", |
196 |
> |
src = "GeomRefitter", |
197 |
|
srcConstr = "doConstraintKinFit", |
198 |
|
Fitter = cms.string('TwoBodyDecayTrackFitter'), |
199 |
|
constraint = "momentum", |
202 |
|
# ------------------------------------------------------------------------------ |
203 |
|
# D-6) Fill Tree with KinFit constraint |
204 |
|
# ------------------------------------------------------------------------------ |
205 |
< |
process.treeproducer4 = cms.EDAnalyzer('AlignmentTree', |
205 |
> |
process.treeKinFitConstraints = cms.EDAnalyzer('AlignmentTree', |
206 |
|
trackLabel = cms.InputTag('TrackRefitterKinFit'), |
207 |
|
tkTraj = cms.InputTag('TrackRefitterKinFit'), |
208 |
|
labelTrajToTrack = cms.InputTag('TrackRefitterKinFit'), |
214 |
|
) |
215 |
|
|
216 |
|
# ------------------------------------------------------------------------------ |
217 |
< |
# E-4) Producer for TwoBodyDecay vertex constraint |
217 |
> |
# E-4) Producer for TwoBodyDecay vertex constraints |
218 |
|
# ------------------------------------------------------------------------------ |
219 |
|
process.load("RecoTracker.TrackProducer.TwoBodyDecayVertexConstraintProducer_cff") |
220 |
|
process.TwoBodyDecayVertexConstraint.isMC = True |
221 |
< |
#process.TwoBodyDecayVertexConstraint.chi2Cut = 100 |
221 |
> |
process.TwoBodyDecayVertexConstraint.src = "GeomRefitter" |
222 |
> |
process.TwoBodyDecayVertexConstraint.chi2Cut = 10 |
223 |
|
|
224 |
|
# ------------------------------------------------------------------------------ |
225 |
< |
# E-5) Producer for TwoBodyDecay vertex constraint |
225 |
> |
# E-5) Track refitter with vertex constraints |
226 |
|
# ------------------------------------------------------------------------------ |
227 |
|
process.TrackRefitterTBDVertexConstraint = TrackRefitter.clone( |
228 |
< |
src = "AlignmentTrackSelector", |
228 |
> |
src = "GeomRefitter", |
229 |
|
srcConstr = "TwoBodyDecayVertexConstraint", |
230 |
|
Fitter = cms.string('TwoBodyDecayTrackFitter'), |
231 |
|
constraint = "vertex", |
234 |
|
# ------------------------------------------------------------------------------ |
235 |
|
# E-6) Fill Tree with vertex TBD constraint |
236 |
|
# ------------------------------------------------------------------------------ |
237 |
< |
process.treeproducer5 = cms.EDAnalyzer('AlignmentTree', |
237 |
> |
process.treeTBDVertexConstraints = cms.EDAnalyzer('AlignmentTree', |
238 |
|
trackLabel = cms.InputTag('TrackRefitterTBDVertexConstraint'), |
239 |
|
tkTraj = cms.InputTag('TrackRefitterTBDVertexConstraint'), |
240 |
|
labelTrajToTrack = cms.InputTag('TrackRefitterTBDVertexConstraint'), |
251 |
|
|
252 |
|
|
253 |
|
process.p = cms.Path( process.AlignmentTrackSelector * |
254 |
< |
process.Refitter * |
254 |
> |
process.GeomRefitter * |
255 |
|
process.TrackRefitterWithoutConstraint * |
256 |
< |
process.treeproducer1 * |
256 |
> |
process.treeWithoutConstraints * |
257 |
|
process.TwoBodyDecayConstraint * |
258 |
|
process.TrackRefitterTBDFullConstraint * |
259 |
< |
process.treeproducer2 * |
259 |
> |
process.treeTBDFullConstraints * |
260 |
|
process.TwoBodyDecayMomConstraint * |
261 |
|
process.TrackRefitterTBDMomConstraint * |
262 |
< |
process.treeproducer3 * |
262 |
> |
process.treeTBDMomConstraints * |
263 |
|
process.doConstraintKinFit * |
264 |
|
process.TrackRefitterKinFit * |
265 |
< |
process.treeproducer4* |
265 |
> |
process.treeKinFitConstraints* |
266 |
|
process.TwoBodyDecayVertexConstraint * |
267 |
|
process.TrackRefitterTBDVertexConstraint * |
268 |
< |
process.treeproducer5) |
268 |
> |
process.treeTBDVertexConstraints) |
269 |
|
|
270 |
|
process.outpath = cms.EndPath(process.out) |