10 yResidualsOfflineValidation=
"""
11 import FWCore.ParameterSet.Config as cms
13 process = cms.Process("OfflineValidator")
15 process.load("Alignment.OfflineValidation..oO[dataset]Oo._cff")
17 process.source.inputCommands = cms.untracked.vstring('keep *', 'drop *_MEtoEDMConverter_*_*') # hack to get rid of the memory consumption problem in 2_2_X and beond
18 process.options = cms.untracked.PSet(
19 wantSummary = cms.untracked.bool(False),
20 Rethrow = cms.untracked.vstring("ProductNotFound"), # make this exception fatal
21 fileMode = cms.untracked.string('NOMERGE') # no ordering needed, but calls endRun/beginRun etc. at file boundaries
25 ## Maximum number of Events
27 process.maxEvents = cms.untracked.PSet(
28 input = cms.untracked.int32(.oO[nEvents]Oo.)
32 ## Messages & Convenience
34 process.load("FWCore.MessageLogger.MessageLogger_cfi")
35 process.MessageLogger = cms.Service("MessageLogger",
36 destinations = cms.untracked.vstring('LOGFILE_Offline_.oO[name]Oo.',
40 ## report only every 100th record
41 ##process.MessageLogger.cerr.FwkReport.reportEvery = 100
45 ## Alignment Track Selection
47 process.load("Alignment.CommonAlignmentProducer.AlignmentTrackSelector_cfi")
48 process.AlignmentTrackSelector.src = 'TrackRefitter1'
49 process.AlignmentTrackSelector.filter = True
50 process.AlignmentTrackSelector.applyBasicCuts = True
51 process.AlignmentTrackSelector.pMin = 4.
52 process.AlignmentTrackSelector.pMax = 9999.
53 process.AlignmentTrackSelector.ptMin = 0.
54 process.AlignmentTrackSelector.ptMax = 9999.
55 process.AlignmentTrackSelector.etaMin = -999.
56 process.AlignmentTrackSelector.etaMax = 999.
57 process.AlignmentTrackSelector.nHitMin = 8
58 process.AlignmentTrackSelector.nHitMin2D = 2
59 process.AlignmentTrackSelector.chi2nMax = 999.
60 process.AlignmentTrackSelector.applyMultiplicityFilter = False
61 process.AlignmentTrackSelector.maxMultiplicity = 1
62 process.AlignmentTrackSelector.applyNHighestPt = False
63 process.AlignmentTrackSelector.nHighestPt = 1
64 process.AlignmentTrackSelector.seedOnlyFrom = 0
65 process.AlignmentTrackSelector.applyIsolationCut = False
66 process.AlignmentTrackSelector.minHitIsolation = 0.8
67 process.AlignmentTrackSelector.applyChargeCheck = False
68 process.AlignmentTrackSelector.minHitChargeStrip = 50.
69 #process.AlignmentTrackSelector.trackQualities = ["highPurity"]
70 #process.AlignmentTrackSelector.iterativeTrackingSteps = ["iter1","iter2"]
73 #-- new track hit filter
74 # TrackerTrackHitFilter takes as input the tracks/trajectories coming out from TrackRefitter1
75 process.load("RecoTracker.FinalTrackSelectors.TrackerTrackHitFilter_cff")
76 process.TrackerTrackHitFilter.src = 'TrackRefitter1'
77 process.TrackerTrackHitFilter.useTrajectories= True # this is needed only if you require some selections; but it will work even if you don't ask for them
78 process.TrackerTrackHitFilter.minimumHits = 8
79 process.TrackerTrackHitFilter.commands = cms.vstring("keep PXB","keep PXE","keep TIB","keep TID","keep TOB","keep TEC")
80 process.TrackerTrackHitFilter.detsToIgnore = [
81 # see https://hypernews.cern.ch/HyperNews/CMS/get/tracker-performance/484.html
83 369136710, 369136714, 402668822,
85 436310989, 436310990, 436299301, 436299302,
87 470340521, 470063045, 470063046, 470114669, 470114670, 470161093, 470161094, 470164333, 470164334, 470312005, 470312006, 470312009, 470067405, 470067406, 470128813
89 process.TrackerTrackHitFilter.replaceWithInactiveHits = True
90 process.TrackerTrackHitFilter.stripAllInvalidHits = False
91 process.TrackerTrackHitFilter.rejectBadStoNHits = True
92 process.TrackerTrackHitFilter.StoNcommands = cms.vstring("ALL 14.0")
93 process.TrackerTrackHitFilter.rejectLowAngleHits= True
94 process.TrackerTrackHitFilter.TrackAngleCut= 0.35 # in rads, starting from the module surface
95 process.TrackerTrackHitFilter.usePixelQualityFlag= True
97 #now we give the TrackCandidate coming out of the TrackerTrackHitFilter to the track producer
98 import RecoTracker.TrackProducer.CosmicFinalFitWithMaterialP5_cff
99 process.HitFilteredTracks = RecoTracker.TrackProducer.CosmicFinalFitWithMaterialP5_cff.cosmictrackfinderP5.clone(
100 src = 'TrackerTrackHitFilter'
104 ## Load and Configure TrackRefitter1
107 process.load("RecoTracker.TrackProducer.TrackRefitters_cff")
109 process.TrackRefitter1 = RecoTracker.TrackProducer.TrackRefitterP5_cfi.TrackRefitterP5.clone(
110 src = '.oO[TrackCollection]Oo.',
111 TrajectoryInEvent = True,
112 TTRHBuilder = "WithTrackAngle",
113 NavigationSchool = ""
116 process.TrackRefitter2 = process.TrackRefitter1.clone(
117 src = 'HitFilteredTracks')
123 process.load("RecoVertex.BeamSpotProducer.BeamSpot_cff")
126 ## GlobalTag Conditions (if needed)
128 process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff")
129 process.GlobalTag.globaltag = ".oO[GlobalTag]Oo."
130 #process.GlobalTag.connect="frontier://FrontierProd/CMS_COND_21X_GLOBALTAG"
131 # process.GlobalTag.connect="frontier://FrontierProd/CMS_COND_31X_GLOBALTAG"
133 ## LAYERWISE Lorentz Angle ###################
135 process.SiStripLorentzAngle = cms.ESSource("PoolDBESSource",
137 cms.untracked.string('TBufferBlobStreamingService'),
138 DBParameters = cms.PSet(
139 messageLevel = cms.untracked.int32(2),
141 cms.untracked.string('/afs/cern.ch/cms/DB/conddb')
143 timetype = cms.string('runnumber'),
144 toGet = cms.VPSet(cms.PSet(
145 record = cms.string('SiStripLorentzAngleRcd'),
146 tag = cms.string('SiStripLA_CRAFT_layers')
148 connect = cms.string('sqlite_file:/afs/cern.ch/user/j/jdraeger/public/LA_object/LA_CRAFT_layers.db')
150 process.es_prefer_SiStripLorentzAngle = cms.ESPrefer("PoolDBESSource","SiStripLorentzAngle")
155 process.load("Configuration.Geometry.GeometryDB_cff")
160 process.load("Configuration/StandardSequences/MagneticField_38T_cff")
164 ## to apply misalignments
165 #TrackerDigiGeometryESModule.applyAlignment = True
168 ## Load and Configure OfflineValidation
170 process.load("Alignment.OfflineValidation.TrackerOfflineValidation_.oO[offlineValidationMode]Oo._cff")
171 process.TrackerOfflineValidation.oO[offlineValidationMode]Oo..Tracks = 'TrackRefitter2'
172 process.TrackerOfflineValidation.oO[offlineValidationMode]Oo..trajectoryInput = 'TrackRefitter2'
173 process.TrackerOfflineValidation.oO[offlineValidationMode]Oo..moduleLevelHistsTransient = cms.bool(.oO[offlineModuleLevelHistsTransient]Oo.)
174 process.TrackerOfflineValidation.oO[offlineValidationMode]Oo..stripYResiduals = True
175 .oO[offlineValidationFileOutput]Oo.
180 process.p = cms.Path(process.offlineBeamSpot*process.TrackRefitter1*process.TrackerTrackHitFilter*process.HitFilteredTracks
181 *process.TrackRefitter2*process.AlignmentTrackSelector*process.seqTrackerOfflineValidation.oO[offlineValidationMode]Oo.)
189 from CondCore.DBCommon.CondDBSetup_cfi import *
190 process.APE = cms.ESSource("PoolDBESSource",CondDBSetup,
191 connect = cms.string('frontier://FrontierProd/CMS_COND_31X_FROM21X'),
192 timetype = cms.string("runnumber"),
194 cms.PSet(record = cms.string('TrackerAlignmentErrorRcd'),
195 tag = cms.string('TrackerIdealGeometryErrors210_mc')
198 process.es_prefer_APE = cms.ESPrefer("PoolDBESSource", "APE")
204 CosmicsOfflineValidation=
"""
205 import FWCore.ParameterSet.Config as cms
207 process = cms.Process("OfflineValidator")
209 process.load("Alignment.OfflineValidation..oO[dataset]Oo._cff")
211 process.options = cms.untracked.PSet(
212 wantSummary = cms.untracked.bool(False),
213 Rethrow = cms.untracked.vstring("ProductNotFound"), # make this exception fatal
214 # fileMode = cms.untracked.string('NOMERGE') # no ordering needed, but calls endRun/beginRun etc. at file boundaries
218 ## Maximum number of Events
220 process.maxEvents = cms.untracked.PSet(
221 input = cms.untracked.int32(.oO[nEvents]Oo.)
225 ## Messages & Convenience
227 process.load("FWCore.MessageLogger.MessageLogger_cfi")
228 process.MessageLogger.cerr = cms.untracked.PSet(placeholder = cms.untracked.bool(True))
229 process.MessageLogger.cout = cms.untracked.PSet(INFO = cms.untracked.PSet(
230 reportEvery = cms.untracked.int32(1000) # every 1000th only
231 # limit = cms.untracked.int32(10) # or limit to 10 printouts...
233 process.MessageLogger.statistics.append('cout')
238 process.load("RecoVertex.BeamSpotProducer.BeamSpot_cff")
241 process.load("RecoTracker.TrackProducer.TrackRefitters_cff")
243 ##-- Track hit filter
244 ## TrackerTrackHitFilter takes as input the tracks/trajectories coming out from TrackRefitter1
245 #process.load("RecoTracker.FinalTrackSelectors.TrackerTrackHitFilter_cff")
246 #process.TrackerTrackHitFilter.src = 'TrackRefitter1'
248 #-- 1st refit from file
249 process.TrackRefitter1 = process.TrackRefitterP5.clone(
250 src ='ALCARECOTkAlCosmicsCTF0T',
251 NavigationSchool = cms.string(''),
252 TrajectoryInEvent = True,
253 TTRHBuilder = "WithAngleAndTemplate" #default
256 #-- 2nd fit for AlignmentProducer
257 process.TrackRefitter2 = process.TrackRefitter1.clone(
258 src = 'AlignmentTrackSelector'
262 process.load("RecoTracker.FinalTrackSelectors.TrackerTrackHitFilter_cff")
263 process.TrackerTrackHitFilter.src = 'TrackRefitter1'
264 process.TrackerTrackHitFilter.useTrajectories= True # this is needed only if you require some selections; but it will work even if you don't ask for them
265 process.TrackerTrackHitFilter.minimumHits = 8
266 process.TrackerTrackHitFilter.commands = cms.vstring("keep PXB","keep PXE","keep TIB","keep TID","keep TOB","keep TEC")
267 process.TrackerTrackHitFilter.detsToIgnore = []
268 process.TrackerTrackHitFilter.replaceWithInactiveHits = True
269 process.TrackerTrackHitFilter.stripAllInvalidHits = False
270 process.TrackerTrackHitFilter.rejectBadStoNHits = True
271 process.TrackerTrackHitFilter.StoNcommands = cms.vstring("ALL 18.0")
272 process.TrackerTrackHitFilter.rejectLowAngleHits = True
273 process.TrackerTrackHitFilter.TrackAngleCut = 0.1# in rads, starting from the module surface; small value since we have bows!
274 process.TrackerTrackHitFilter.usePixelQualityFlag = True #False
277 ## now we give the TrackCandidate coming out of the TrackerTrackHitFilter to the track producer
278 import RecoTracker.TrackProducer.CTFFinalFitWithMaterialP5_cff
279 process.TrackCandidateFitter = RecoTracker.TrackProducer.CTFFinalFitWithMaterialP5_cff.ctfWithMaterialTracksCosmics.clone(
280 src = 'TrackerTrackHitFilter',
281 NavigationSchool = cms.string(''),
282 TTRHBuilder = "WithAngleAndTemplate"
284 #-- Filter tracks for alignment
285 process.load("Alignment.CommonAlignmentProducer.AlignmentTrackSelector_cfi")
286 process.AlignmentTrackSelector.src = 'TrackCandidateFitter'
287 process.AlignmentTrackSelector.applyBasicCuts = True
288 process.AlignmentTrackSelector.pMin = 4
289 process.AlignmentTrackSelector.pMax = 9999.
290 process.AlignmentTrackSelector.ptMin = 0
291 process.AlignmentTrackSelector.etaMin = -999.
292 process.AlignmentTrackSelector.etaMax = 999.
293 process.AlignmentTrackSelector.nHitMin = 8
294 process.AlignmentTrackSelector.nHitMin2D = 2
295 process.AlignmentTrackSelector.chi2nMax = 99.
296 process.AlignmentTrackSelector.applyMultiplicityFilter = True# False
297 process.AlignmentTrackSelector.maxMultiplicity = 1
299 ## GlobalTag Conditions (if needed)
301 process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff")
302 process.GlobalTag.globaltag = ".oO[GlobalTag]Oo."
308 process.load("Configuration.Geometry.GeometryDB_cff")
313 process.load("Configuration/StandardSequences/MagneticField_38T_cff")
315 .oO[LorentzAngleTemplate]Oo.
320 #process.load("Configuration.Geometry.GeometryDB_cff")
326 ## Load and Configure OfflineValidation
329 process.load("Alignment.OfflineValidation.TrackerOfflineValidation_.oO[offlineValidationMode]Oo._cff")
330 process.TrackerOfflineValidation.oO[offlineValidationMode]Oo..Tracks = 'TrackRefitter2'
331 process.TrackerOfflineValidation.oO[offlineValidationMode]Oo..trajectoryInput = 'TrackRefitter2'
332 process.TrackerOfflineValidation.oO[offlineValidationMode]Oo..moduleLevelHistsTransient = cms.bool(.oO[offlineModuleLevelHistsTransient]Oo.)
333 process.TrackerOfflineValidation.oO[offlineValidationMode]Oo..moduleLevelProfiles = cms.bool(.oO[offlineModuleLevelProfiles]Oo.)
334 process.TFileService.fileName = '.oO[outputFile]Oo.'
340 process.p = cms.Path( process.offlineBeamSpot
341 *process.TrackRefitter1
342 *process.TrackerTrackHitFilter
343 *process.TrackCandidateFitter
344 *process.AlignmentTrackSelector
345 *process.TrackRefitter2
346 *process.seqTrackerOfflineValidationStandalone
355 CosmicsAt0TOfflineValidation=
"""
356 import FWCore.ParameterSet.Config as cms
358 process = cms.Process("OfflineValidator")
360 process.load("Alignment.OfflineValidation..oO[dataset]Oo._cff")
362 process.options = cms.untracked.PSet(
363 wantSummary = cms.untracked.bool(False),
364 Rethrow = cms.untracked.vstring("ProductNotFound"), # make this exception fatal
365 fileMode = cms.untracked.string('NOMERGE') # no ordering needed, but calls endRun/beginRun etc. at file boundaries
369 ## Maximum number of Events
371 process.maxEvents = cms.untracked.PSet(
372 input = cms.untracked.int32(.oO[nEvents]Oo.)
376 ## Messages & Convenience
378 process.load("FWCore.MessageLogger.MessageLogger_cfi")
379 process.MessageLogger.cerr = cms.untracked.PSet(placeholder = cms.untracked.bool(True))
380 process.MessageLogger.cout = cms.untracked.PSet(INFO = cms.untracked.PSet(
381 reportEvery = cms.untracked.int32(1000) # every 1000th only
382 # limit = cms.untracked.int32(10) # or limit to 10 printouts...
384 process.MessageLogger.statistics.append('cout')
388 # TrackerTrackHitFilter takes as input the tracks/trajectories coming out from TrackRefitter1
389 process.load("RecoTracker.FinalTrackSelectors.TrackerTrackHitFilter_cff")
390 process.TrackerTrackHitFilter.src = 'TrackRefitter1'
392 #-- Alignment Track Selection
393 process.load("Alignment.CommonAlignmentProducer.AlignmentTrackSelector_cfi")
394 process.AlignmentTrackSelector.src = 'HitFilteredTracks'
395 process.AlignmentTrackSelector.filter = True
397 .oO[TrackSelectionTemplate]Oo.
398 # Override the pmin setting since not meaningful with B=0T
399 process.AlignmentTrackSelector.pMin = 4.
401 #### momentum constraint for 0T
402 # First momentum constraint
403 process.load("RecoTracker.TrackProducer.MomentumConstraintProducer_cff")
404 import RecoTracker.TrackProducer.MomentumConstraintProducer_cff
405 process.AliMomConstraint1 = RecoTracker.TrackProducer.MomentumConstraintProducer_cff.MyMomConstraint.clone()
406 process.AliMomConstraint1.src = '.oO[TrackCollection]Oo.'
407 process.AliMomConstraint1.fixedMomentum = 5.0
408 process.AliMomConstraint1.fixedMomentumError = 0.005
410 # Second momentum constraint
411 #process.load("RecoTracker.TrackProducer.MomentumConstraintProducer_cff")
412 #import RecoTracker.TrackProducer.MomentumConstraintProducer_cff
413 #process.AliMomConstraint2 = RecoTracker.TrackProducer.MomentumConstraintProducer_cff.MyMomConstraint.clone()
414 #process.AliMomConstraint2.src = 'AlignmentTrackSelector'
415 #process.AliMomConstraint2.fixedMomentum = 5.0
416 #process.AliMomConstraint2.fixedMomentumError = 0.005
420 #now we give the TrackCandidate coming out of the TrackerTrackHitFilter to the track producer
421 import RecoTracker.TrackProducer.CTFFinalFitWithMaterialP5_cff
422 process.HitFilteredTracks = RecoTracker.TrackProducer.CTFFinalFitWithMaterialP5_cff.ctfWithMaterialTracksCosmics.clone(
423 src = 'TrackerTrackHitFilter'
425 ### TrajectoryInEvent = True,
426 ### TTRHBuilder = "WithAngleAndTemplate"
430 ## Load and Configure TrackRefitter1
433 process.load("RecoTracker.TrackProducer.TrackRefitters_cff")
436 # parameters for TrackRefitter
437 #process.load("RecoTracker.TrackProducer.RefitterWithMaterial_cff")
438 import RecoTracker.TrackProducer.TrackRefitters_cff
439 process.TrackRefitter1 = process.TrackRefitterP5.clone(
440 src = '.oO[TrackCollection]Oo.', #'AliMomConstraint1',
441 TrajectoryInEvent = True,
442 TTRHBuilder = "WithAngleAndTemplate",
443 NavigationSchool = "",
444 constraint = 'momentum', ### SPECIFIC FOR CRUZET
445 srcConstr='AliMomConstraint1' ### SPECIFIC FOR CRUZET$works only with tag V02-10-02 TrackingTools/PatternTools / or CMSSW >=31X
448 process.TrackRefitter2 = process.TrackRefitter1.clone(
449 src = 'AlignmentTrackSelector',
450 srcConstr='AliMomConstraint1',
451 constraint = 'momentum' ### SPECIFIC FOR CRUZET
458 process.load("RecoVertex.BeamSpotProducer.BeamSpot_cff")
461 ## GlobalTag Conditions (if needed)
463 process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff")
464 process.GlobalTag.globaltag = ".oO[GlobalTag]Oo."
465 # process.GlobalTag.connect="frontier://FrontierProd/CMS_COND_31X_GLOBALTAG"
467 .oO[LorentzAngleTemplate]Oo.
472 process.load("Configuration.Geometry.GeometryDB_cff")
477 #process.load("Configuration/StandardSequences/MagneticField_38T_cff")
478 process.load("Configuration.StandardSequences.MagneticField_0T_cff") # 0T runs
482 ## to apply misalignments
483 #TrackerDigiGeometryESModule.applyAlignment = True
486 ## Load and Configure OfflineValidation
488 process.load("Alignment.OfflineValidation.TrackerOfflineValidation_.oO[offlineValidationMode]Oo._cff")
489 process.TrackerOfflineValidation.oO[offlineValidationMode]Oo..Tracks = 'TrackRefitter2'
490 process.TrackerOfflineValidation.oO[offlineValidationMode]Oo..trajectoryInput = 'TrackRefitter2'
491 process.TrackerOfflineValidation.oO[offlineValidationMode]Oo..moduleLevelHistsTransient = cms.bool(.oO[offlineModuleLevelHistsTransient]Oo.)
492 process.TFileService.fileName = '.oO[outputFile]Oo.'
498 process.p = cms.Path(process.offlineBeamSpot*process.AliMomConstraint1*process.TrackRefitter1*process.TrackerTrackHitFilter*process.HitFilteredTracks
499 *process.AlignmentTrackSelector*process.TrackRefitter2*process.seqTrackerOfflineValidation.oO[offlineValidationMode]Oo.)
506 CosmicsAt0TParallelOfflineValidation=
"""
507 import FWCore.ParameterSet.Config as cms
509 process = cms.Process("OfflineValidator")
511 process.load("Alignment.OfflineValidation..oO[dataset]Oo._cff")
513 process.options = cms.untracked.PSet(
514 wantSummary = cms.untracked.bool(False),
515 Rethrow = cms.untracked.vstring("ProductNotFound"), # make this exception fatal
516 fileMode = cms.untracked.string('NOMERGE') # no ordering needed, but calls endRun/beginRun etc. at file boundaries
520 ## Maximum number of Events
521 ## and number of events to be skipped
522 ## in case of parallel job nIndex
523 ## .oO[nIndex]Oo * .oO[nEvents]Oo/.oO[nJobs]Oo
525 process.maxEvents = cms.untracked.PSet(
526 input = cms.untracked.int32(.oO[nEvents]Oo./.oO[nJobs]Oo.)
528 process.source.skipEvents=cms.untracked.uint32(.oO[nIndex]Oo.*.oO[nEvents]Oo./.oO[nJobs]Oo.)
531 ## Messages & Convenience
533 process.load("FWCore.MessageLogger.MessageLogger_cfi")
534 process.MessageLogger.cerr = cms.untracked.PSet(placeholder = cms.untracked.bool(True))
535 process.MessageLogger.cout = cms.untracked.PSet(INFO = cms.untracked.PSet(
536 reportEvery = cms.untracked.int32(1000) # every 1000th only
537 # limit = cms.untracked.int32(10) # or limit to 10 printouts...
539 process.MessageLogger.statistics.append('cout')
542 # TrackerTrackHitFilter takes as input the tracks/trajectories coming out from TrackRefitter1
543 process.load("RecoTracker.FinalTrackSelectors.TrackerTrackHitFilter_cff")
544 process.TrackerTrackHitFilter.src = 'TrackRefitter1'
546 #-- Alignment Track Selection
547 process.load("Alignment.CommonAlignmentProducer.AlignmentTrackSelector_cfi")
548 process.AlignmentTrackSelector.src = 'HitFilteredTracks'
549 process.AlignmentTrackSelector.filter = True
551 .oO[TrackSelectionTemplate]Oo.
552 # Override the pmin setting since not meaningful with B=0T
553 process.AlignmentTrackSelector.pMin = 4.
555 #### momentum constraint for 0T
556 # First momentum constraint
557 process.load("RecoTracker.TrackProducer.MomentumConstraintProducer_cff")
558 import RecoTracker.TrackProducer.MomentumConstraintProducer_cff
559 process.AliMomConstraint1 = RecoTracker.TrackProducer.MomentumConstraintProducer_cff.MyMomConstraint.clone()
560 process.AliMomConstraint1.src = '.oO[TrackCollection]Oo.'
561 process.AliMomConstraint1.fixedMomentum = 5.0
562 process.AliMomConstraint1.fixedMomentumError = 0.005
564 # Second momentum constraint
565 #process.load("RecoTracker.TrackProducer.MomentumConstraintProducer_cff")
566 #import RecoTracker.TrackProducer.MomentumConstraintProducer_cff
567 #process.AliMomConstraint2 = RecoTracker.TrackProducer.MomentumConstraintProducer_cff.MyMomConstraint.clone()
568 #process.AliMomConstraint2.src = 'AlignmentTrackSelector'
569 #process.AliMomConstraint2.fixedMomentum = 5.0
570 #process.AliMomConstraint2.fixedMomentumError = 0.005
572 #now we give the TrackCandidate coming out of the TrackerTrackHitFilter to the track producer
573 import RecoTracker.TrackProducer.CTFFinalFitWithMaterialP5_cff
574 process.HitFilteredTracks = RecoTracker.TrackProducer.CTFFinalFitWithMaterialP5_cff.ctfWithMaterialTracksCosmics.clone(
575 src = 'TrackerTrackHitFilter',
576 NavigationSchool = cms.string(''),
577 TTRHBuilder = "WithAngleAndTemplate"
579 ### TrajectoryInEvent = True,
580 ### TTRHBuilder = "WithAngleAndTemplate"
584 ## Load and Configure TrackRefitter1
586 process.load("RecoTracker.TrackProducer.TrackRefitters_cff")
589 # parameters for TrackRefitter
590 #process.load("RecoTracker.TrackProducer.RefitterWithMaterial_cff")
591 import RecoTracker.TrackProducer.TrackRefitters_cff
592 process.TrackRefitter1 = process.TrackRefitterP5.clone(
593 src = '.oO[TrackCollection]Oo.', #'AliMomConstraint1',
594 TrajectoryInEvent = True,
595 TTRHBuilder = "WithAngleAndTemplate",
596 NavigationSchool = "",
597 constraint = 'momentum', ### SPECIFIC FOR CRUZET
598 srcConstr='AliMomConstraint1' ### SPECIFIC FOR CRUZET$works only with tag V02-10-02 TrackingTools/PatternTools / or CMSSW >=31X
601 process.TrackRefitter2 = process.TrackRefitter1.clone(
602 src = 'AlignmentTrackSelector',
603 srcConstr='AliMomConstraint1',
604 constraint = 'momentum' ### SPECIFIC FOR CRUZET
611 process.load("RecoVertex.BeamSpotProducer.BeamSpot_cff")
614 ## GlobalTag Conditions (if needed)
616 process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff")
617 process.GlobalTag.globaltag = ".oO[GlobalTag]Oo."
618 # process.GlobalTag.connect="frontier://FrontierProd/CMS_COND_31X_GLOBALTAG"
619 .oO[LorentzAngleTemplate]Oo.
624 process.load("Configuration.StandardSequences.Geometry_cff")
629 #process.load("Configuration/StandardSequences/MagneticField_38T_cff")
630 process.load("Configuration.StandardSequences.MagneticField_0T_cff") # 0T runs
635 ## Load and Configure OfflineValidation
637 process.load("Alignment.OfflineValidation.TrackerOfflineValidation_.oO[offlineValidationMode]Oo._cff")
638 process.TrackerOfflineValidation.oO[offlineValidationMode]Oo..Tracks = 'TrackRefitter2'
639 process.TrackerOfflineValidation.oO[offlineValidationMode]Oo..trajectoryInput = 'TrackRefitter2'
640 process.TrackerOfflineValidation.oO[offlineValidationMode]Oo..moduleLevelHistsTransient = cms.bool(.oO[offlineModuleLevelHistsTransient]Oo.)
641 process.TFileService.fileName = '.oO[outputFile]Oo.'
646 process.p = cms.Path(process.offlineBeamSpot*process.AliMomConstraint1*process.TrackRefitter1*process.TrackerTrackHitFilter*process.HitFilteredTracks
647 *process.AlignmentTrackSelector*process.TrackRefitter2*process.seqTrackerOfflineValidation.oO[offlineValidationMode]Oo.)
653 CosmicsParallelOfflineValidation=
"""
654 import FWCore.ParameterSet.Config as cms
656 process = cms.Process("OfflineValidator")
658 process.load("Alignment.OfflineValidation..oO[dataset]Oo._cff")
660 process.options = cms.untracked.PSet(
661 wantSummary = cms.untracked.bool(False),
662 Rethrow = cms.untracked.vstring("ProductNotFound"), # make this exception fatal
663 fileMode = cms.untracked.string('NOMERGE') # no ordering needed, but calls endRun/beginRun etc. at file boundaries
667 ## Maximum number of Events
668 ## and number of events to be skipped
669 ## in case of parallel job nIndex
670 ## .oO[nIndex]Oo * .oO[nEvents]Oo/.oO[nJobs]Oo
672 process.maxEvents = cms.untracked.PSet(
673 input = cms.untracked.int32(.oO[nEvents]Oo./.oO[nJobs]Oo.)
675 process.source.skipEvents=cms.untracked.uint32(.oO[nIndex]Oo.*.oO[nEvents]Oo./.oO[nJobs]Oo.)
678 ## Messages & Convenience
680 process.load("FWCore.MessageLogger.MessageLogger_cfi")
681 process.MessageLogger.cerr = cms.untracked.PSet(placeholder = cms.untracked.bool(True))
682 process.MessageLogger.cout = cms.untracked.PSet(INFO = cms.untracked.PSet(
683 reportEvery = cms.untracked.int32(1000) # every 1000th only
684 # limit = cms.untracked.int32(10) # or limit to 10 printouts...
686 process.MessageLogger.statistics.append('cout')
691 process.load("RecoVertex.BeamSpotProducer.BeamSpot_cff")
694 process.load("RecoTracker.TrackProducer.TrackRefitters_cff")
696 ##-- Track hit filter
697 ## TrackerTrackHitFilter takes as input the tracks/trajectories coming out from TrackRefitter1
698 #process.load("RecoTracker.FinalTrackSelectors.TrackerTrackHitFilter_cff")
699 #process.TrackerTrackHitFilter.src = 'TrackRefitter1'
701 #-- 1st refit from file
702 process.TrackRefitter1 = process.TrackRefitterP5.clone(
703 src ='ALCARECOTkAlCosmicsCTF0T',
704 NavigationSchool = cms.string(''),
705 TrajectoryInEvent = True,
706 TTRHBuilder = "WithAngleAndTemplate" #default
709 #-- 2nd fit for AlignmentProducer
710 process.TrackRefitter2 = process.TrackRefitter1.clone(
711 src = 'AlignmentTrackSelector'
715 process.load("RecoTracker.FinalTrackSelectors.TrackerTrackHitFilter_cff")
716 process.TrackerTrackHitFilter.src = 'TrackRefitter1'
717 process.TrackerTrackHitFilter.useTrajectories= True # this is needed only if you require some selections; but it will work even if you don't ask for them
718 process.TrackerTrackHitFilter.minimumHits = 8
719 process.TrackerTrackHitFilter.commands = cms.vstring("keep PXB","keep PXE","keep TIB","keep TID","keep TOB","keep TEC")
720 process.TrackerTrackHitFilter.detsToIgnore = []
721 process.TrackerTrackHitFilter.replaceWithInactiveHits = True
722 process.TrackerTrackHitFilter.stripAllInvalidHits = False
723 process.TrackerTrackHitFilter.rejectBadStoNHits = True
724 process.TrackerTrackHitFilter.StoNcommands = cms.vstring("ALL 18.0")
725 process.TrackerTrackHitFilter.rejectLowAngleHits = True
726 process.TrackerTrackHitFilter.TrackAngleCut = 0.35# in rads, starting from the module surface
727 process.TrackerTrackHitFilter.usePixelQualityFlag = True #False
730 ## now we give the TrackCandidate coming out of the TrackerTrackHitFilter to the track producer
731 import RecoTracker.TrackProducer.CTFFinalFitWithMaterialP5_cff
732 process.TrackCandidateFitter = RecoTracker.TrackProducer.CTFFinalFitWithMaterialP5_cff.ctfWithMaterialTracksCosmics.clone(
733 src = 'TrackerTrackHitFilter',
734 NavigationSchool = cms.string(''),
735 TTRHBuilder = "WithAngleAndTemplate"
737 #-- Filter tracks for alignment
738 process.load("Alignment.CommonAlignmentProducer.AlignmentTrackSelector_cfi")
739 process.AlignmentTrackSelector.src = 'TrackCandidateFitter'
740 process.AlignmentTrackSelector.applyBasicCuts = True
741 process.AlignmentTrackSelector.pMin = 4
742 process.AlignmentTrackSelector.pMax = 9999.
743 process.AlignmentTrackSelector.ptMin = 0
744 process.AlignmentTrackSelector.etaMin = -999.
745 process.AlignmentTrackSelector.etaMax = 999.
746 process.AlignmentTrackSelector.nHitMin = 8
747 process.AlignmentTrackSelector.nHitMin2D = 2
748 process.AlignmentTrackSelector.chi2nMax = 99.
749 process.AlignmentTrackSelector.applyMultiplicityFilter = True# False
750 process.AlignmentTrackSelector.maxMultiplicity = 1
752 ## GlobalTag Conditions (if needed)
754 process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff")
755 process.GlobalTag.globaltag = ".oO[GlobalTag]Oo."
761 process.load("Configuration.StandardSequences.GeometryDB_cff")
766 process.load("Configuration/StandardSequences/MagneticField_38T_cff")
769 .oO[LorentzAngleTemplate]Oo.
774 #process.load("Configuration.StandardSequences.Geometry_cff")
779 ## Load and Configure OfflineValidation
782 process.load("Alignment.OfflineValidation.TrackerOfflineValidation_.oO[offlineValidationMode]Oo._cff")
783 process.TrackerOfflineValidation.oO[offlineValidationMode]Oo..Tracks = 'TrackRefitter2'
784 process.TrackerOfflineValidation.oO[offlineValidationMode]Oo..trajectoryInput = 'TrackRefitter2'
785 process.TrackerOfflineValidation.oO[offlineValidationMode]Oo..moduleLevelHistsTransient = cms.bool(.oO[offlineModuleLevelHistsTransient]Oo.)
786 process.TrackerOfflineValidation.oO[offlineValidationMode]Oo..moduleLevelProfiles = cms.bool(.oO[offlineModuleLevelProfiles]Oo.)
787 process.TFileService.fileName = '.oO[outputFile]Oo.'
793 process.p = cms.Path( process.offlineBeamSpot
794 *process.TrackRefitter1
795 *process.TrackerTrackHitFilter
796 *process.TrackCandidateFitter
797 *process.AlignmentTrackSelector
798 *process.TrackRefitter2
799 *process.seqTrackerOfflineValidationStandalone
807 TrackSelectionCosmicsDuringCollisions =
"""
809 process.AlignmentTrackSelector.applyBasicCuts = True
810 # Note that pMin is overridden and set to zero in
811 # the offlineTemplate0T
812 process.AlignmentTrackSelector.pMin = 4.
813 process.AlignmentTrackSelector.pMax = 9999.
814 process.AlignmentTrackSelector.ptMin = 0.
815 process.AlignmentTrackSelector.ptMax = 9999.
816 process.AlignmentTrackSelector.etaMin = -999.
817 process.AlignmentTrackSelector.etaMax = 999.
818 process.AlignmentTrackSelector.nHitMin = 8
819 process.AlignmentTrackSelector.nHitMin2D = 2
820 process.AlignmentTrackSelector.chi2nMax = 999.
821 process.AlignmentTrackSelector.applyMultiplicityFilter = False
822 process.AlignmentTrackSelector.maxMultiplicity = 1
823 process.AlignmentTrackSelector.applyNHighestPt = False
824 process.AlignmentTrackSelector.nHighestPt = 1
825 process.AlignmentTrackSelector.seedOnlyFrom = 0
826 process.AlignmentTrackSelector.applyIsolationCut = False
827 process.AlignmentTrackSelector.minHitIsolation = 0.8
828 process.AlignmentTrackSelector.applyChargeCheck = False
829 process.AlignmentTrackSelector.minHitChargeStrip = 50.
830 #process.AlignmentTrackSelector.trackQualities = ["highPurity"]
831 #process.AlignmentTrackSelector.iterativeTrackingSteps = ["iter1","iter2"]
834 process.TrackerTrackHitFilter.useTrajectories= True # this is needed only if you require some selections; but it will work even if you don't ask for them
835 process.TrackerTrackHitFilter.minimumHits = 8
836 process.TrackerTrackHitFilter.commands = cms.vstring("keep PXB","keep PXE","keep TIB","keep TID","keep TOB","keep TEC")
837 process.TrackerTrackHitFilter.detsToIgnore = [
838 # see https://hypernews.cern.ch/HyperNews/CMS/get/tracker-performance/484.html
840 #369136710, 369136714, 402668822,
842 #436310989, 436310990, 436299301, 436299302,
844 #470340521, 470063045, 470063046, 470114669, 470114670, 470161093, 470161094, 470164333, 470164334, 470312005, 470312006, 470312009, 470067405, 470067406, 470128813
846 process.TrackerTrackHitFilter.replaceWithInactiveHits = True
847 process.TrackerTrackHitFilter.stripAllInvalidHits = False
848 process.TrackerTrackHitFilter.rejectBadStoNHits = True
849 process.TrackerTrackHitFilter.StoNcommands = cms.vstring("ALL 18.0")
850 process.TrackerTrackHitFilter.rejectLowAngleHits= True
851 process.TrackerTrackHitFilter.TrackAngleCut= 0.35 # in rads, starting from the module surface
852 process.TrackerTrackHitFilter.usePixelQualityFlag= True
854 #######################################
855 ##Trigger settings for Cosmics during collisions
856 #######################################
857 process.load('L1TriggerConfig.L1GtConfigProducers.L1GtTriggerMaskTechTrigConfig_cff')
858 process.load('HLTrigger/HLTfilters/hltLevel1GTSeed_cfi')
859 process.L1T1=process.hltLevel1GTSeed.clone()
860 process.L1T1.L1TechTriggerSeeding = cms.bool(True)
861 process.L1T1.L1SeedsLogicalExpression=cms.string('25')
862 process.hltHighLevel = cms.EDFilter("HLTHighLevel",
863 TriggerResultsTag = cms.InputTag("TriggerResults","","HLT"),
864 HLTPaths = cms.vstring('HLT_TrackerCosmics'),
865 eventSetupPathsKey = cms.string(''),
866 andOr = cms.bool(False),
867 throw = cms.bool(True)
871 process.triggerSelection=cms.Sequence(process.L1T1*process.hltHighLevel)
877 TrackSelectionCosmicsData =
"""
879 process.AlignmentTrackSelector.applyBasicCuts = True
880 # Note that pMin is overridden and set to zero in
881 # the offlineTemplate0T
882 process.AlignmentTrackSelector.pMin = 4.
883 process.AlignmentTrackSelector.pMax = 9999.
884 process.AlignmentTrackSelector.ptMin = 0.
885 process.AlignmentTrackSelector.ptMax = 9999.
886 process.AlignmentTrackSelector.etaMin = -999.
887 process.AlignmentTrackSelector.etaMax = 999.
888 process.AlignmentTrackSelector.nHitMin = 8
889 process.AlignmentTrackSelector.nHitMin2D = 2
890 process.AlignmentTrackSelector.chi2nMax = 999.
891 process.AlignmentTrackSelector.applyMultiplicityFilter = False
892 process.AlignmentTrackSelector.maxMultiplicity = 1
893 process.AlignmentTrackSelector.applyNHighestPt = False
894 process.AlignmentTrackSelector.nHighestPt = 1
895 process.AlignmentTrackSelector.seedOnlyFrom = 0
896 process.AlignmentTrackSelector.applyIsolationCut = False
897 process.AlignmentTrackSelector.minHitIsolation = 0.8
898 process.AlignmentTrackSelector.applyChargeCheck = False
899 process.AlignmentTrackSelector.minHitChargeStrip = 50.
900 #process.AlignmentTrackSelector.trackQualities = ["highPurity"]
901 #process.AlignmentTrackSelector.iterativeTrackingSteps = ["iter1","iter2"]
904 process.TrackerTrackHitFilter.useTrajectories= True # this is needed only if you require some selections; but it will work even if you don't ask for them
905 process.TrackerTrackHitFilter.minimumHits = 8
906 process.TrackerTrackHitFilter.commands = cms.vstring("keep PXB","keep PXE","keep TIB","keep TID","keep TOB","keep TEC")
907 process.TrackerTrackHitFilter.detsToIgnore = [
908 # see https://hypernews.cern.ch/HyperNews/CMS/get/tracker-performance/484.html
910 #369136710, 369136714, 402668822,
912 #436310989, 436310990, 436299301, 436299302,
914 #470340521, 470063045, 470063046, 470114669, 470114670, 470161093, 470161094, 470164333, 470164334, 470312005, 470312006, 470312009, 470067405, 470067406, 470128813
916 process.TrackerTrackHitFilter.replaceWithInactiveHits = True
917 process.TrackerTrackHitFilter.stripAllInvalidHits = False
918 process.TrackerTrackHitFilter.rejectBadStoNHits = True
919 process.TrackerTrackHitFilter.StoNcommands = cms.vstring("ALL 18.0")
920 process.TrackerTrackHitFilter.rejectLowAngleHits= True
921 process.TrackerTrackHitFilter.TrackAngleCut= 0.35 # in rads, starting from the module surface
922 process.TrackerTrackHitFilter.usePixelQualityFlag= True
923 #process.TrackerTrackHitFilter.PxlCorrClusterChargeCut = 10000.0
924 #process.triggerSelection=cms.Sequence(process.hltPhysicsDeclared)
930 TrackSelectionCosmicsDataBPIX =
"""
932 process.AlignmentTrackSelector.applyBasicCuts = True
933 # Note that pMin is overridden and set to zero in
934 # the offlineTemplate0T
935 process.AlignmentTrackSelector.pMin = 4.
936 process.AlignmentTrackSelector.pMax = 9999.
937 process.AlignmentTrackSelector.ptMin = 0.
938 process.AlignmentTrackSelector.ptMax = 9999.
939 process.AlignmentTrackSelector.etaMin = -999.
940 process.AlignmentTrackSelector.etaMax = 999.
941 process.AlignmentTrackSelector.nHitMin = 8
942 process.AlignmentTrackSelector.nHitMin2D = 2
943 process.AlignmentTrackSelector.chi2nMax = 999.
944 process.AlignmentTrackSelector.applyMultiplicityFilter = False
945 process.AlignmentTrackSelector.maxMultiplicity = 1
946 process.AlignmentTrackSelector.applyNHighestPt = False
947 process.AlignmentTrackSelector.nHighestPt = 1
948 process.AlignmentTrackSelector.seedOnlyFrom = 0
949 process.AlignmentTrackSelector.applyIsolationCut = False
950 process.AlignmentTrackSelector.minHitIsolation = 0.8
951 process.AlignmentTrackSelector.applyChargeCheck = False
952 process.AlignmentTrackSelector.minHitChargeStrip = 50.
953 process.AlignmentTrackSelector.minHitsPerSubDet = cms.PSet(
954 inTEC = cms.int32(0),
955 inTOB = cms.int32(0),
956 inFPIX = cms.int32(0),
957 inTID = cms.int32(0),
958 inBPIX = cms.int32(1),
959 inTIB = cms.int32(0),
960 inPIXEL = cms.int32(0),
961 inTIDplus = cms.int32(0),
962 inTIDminus = cms.int32(0),
963 inTECplus = cms.int32(0),
964 inTECminus = cms.int32(0),
965 inFPIXplus = cms.int32(0),
966 inFPIXminus = cms.int32(0),
967 inENDCAP = cms.int32(0),
968 inENDCAPplus = cms.int32(0),
969 inENDCAPminus = cms.int32(0),
971 #process.AlignmentTrackSelector.trackQualities = ["highPurity"]
972 #process.AlignmentTrackSelector.iterativeTrackingSteps = ["iter1","iter2"]
975 process.TrackerTrackHitFilter.useTrajectories= True # this is needed only if you require some selections; but it will work even if you don't ask for them
976 process.TrackerTrackHitFilter.minimumHits = 8
977 process.TrackerTrackHitFilter.commands = cms.vstring("keep PXB","keep PXE","keep TIB","keep TID","keep TOB","keep TEC")
978 process.TrackerTrackHitFilter.detsToIgnore = [
979 # see https://hypernews.cern.ch/HyperNews/CMS/get/tracker-performance/484.html
981 #369136710, 369136714, 402668822,
983 #436310989, 436310990, 436299301, 436299302,
985 #470340521, 470063045, 470063046, 470114669, 470114670, 470161093, 470161094, 470164333, 470164334, 470312005, 470312006, 470312009, 470067405, 470067406, 470128813
987 process.TrackerTrackHitFilter.replaceWithInactiveHits = True
988 process.TrackerTrackHitFilter.stripAllInvalidHits = False
989 process.TrackerTrackHitFilter.rejectBadStoNHits = True
990 process.TrackerTrackHitFilter.StoNcommands = cms.vstring("ALL 18.0")
991 process.TrackerTrackHitFilter.rejectLowAngleHits= True
992 process.TrackerTrackHitFilter.TrackAngleCut= 0.35 # in rads, starting from the module surface
993 process.TrackerTrackHitFilter.usePixelQualityFlag= True
995 process.triggerSelection=cms.Sequence(process.hltPhysicsDeclared)
1001 TrackSelectionCosmicsDataFPIXplus =
"""
1003 process.AlignmentTrackSelector.applyBasicCuts = True
1004 # Note that pMin is overridden and set to zero in
1005 # the offlineTemplate0T
1006 process.AlignmentTrackSelector.pMin = 4.
1007 process.AlignmentTrackSelector.pMax = 9999.
1008 process.AlignmentTrackSelector.ptMin = 0.
1009 process.AlignmentTrackSelector.ptMax = 9999.
1010 process.AlignmentTrackSelector.etaMin = -999.
1011 process.AlignmentTrackSelector.etaMax = 999.
1012 process.AlignmentTrackSelector.nHitMin = 8
1013 process.AlignmentTrackSelector.nHitMin2D = 2
1014 process.AlignmentTrackSelector.chi2nMax = 999.
1015 process.AlignmentTrackSelector.applyMultiplicityFilter = False
1016 process.AlignmentTrackSelector.maxMultiplicity = 1
1017 process.AlignmentTrackSelector.applyNHighestPt = False
1018 process.AlignmentTrackSelector.nHighestPt = 1
1019 process.AlignmentTrackSelector.seedOnlyFrom = 0
1020 process.AlignmentTrackSelector.applyIsolationCut = False
1021 process.AlignmentTrackSelector.minHitIsolation = 0.8
1022 process.AlignmentTrackSelector.applyChargeCheck = False
1023 process.AlignmentTrackSelector.minHitChargeStrip = 50.
1024 process.AlignmentTrackSelector.minHitsPerSubDet = cms.PSet(
1025 inTEC = cms.int32(0),
1026 inTOB = cms.int32(0),
1027 inFPIX = cms.int32(0),
1028 inTID = cms.int32(0),
1029 inBPIX = cms.int32(0),
1030 inTIB = cms.int32(0),
1031 inPIXEL = cms.int32(0),
1032 inTIDplus = cms.int32(0),
1033 inTIDminus = cms.int32(0),
1034 inTECplus = cms.int32(0),
1035 inTECminus = cms.int32(0),
1036 inFPIXplus = cms.int32(1),
1037 inFPIXminus = cms.int32(0),
1038 inENDCAP = cms.int32(0),
1039 inENDCAPplus = cms.int32(0),
1040 inENDCAPminus = cms.int32(0),
1042 #process.AlignmentTrackSelector.trackQualities = ["highPurity"]
1043 #process.AlignmentTrackSelector.iterativeTrackingSteps = ["iter1","iter2"]
1046 process.TrackerTrackHitFilter.useTrajectories= True # this is needed only if you require some selections; but it will work even if you don't ask for them
1047 process.TrackerTrackHitFilter.minimumHits = 8
1048 process.TrackerTrackHitFilter.commands = cms.vstring("keep PXB","keep PXE","keep TIB","keep TID","keep TOB","keep TEC")
1049 process.TrackerTrackHitFilter.detsToIgnore = [
1050 # see https://hypernews.cern.ch/HyperNews/CMS/get/tracker-performance/484.html
1052 #369136710, 369136714, 402668822,
1054 #436310989, 436310990, 436299301, 436299302,
1056 #470340521, 470063045, 470063046, 470114669, 470114670, 470161093, 470161094, 470164333, 470164334, 470312005, 470312006, 470312009, 470067405, 470067406, 470128813
1058 process.TrackerTrackHitFilter.replaceWithInactiveHits = True
1059 process.TrackerTrackHitFilter.stripAllInvalidHits = False
1060 process.TrackerTrackHitFilter.rejectBadStoNHits = True
1061 process.TrackerTrackHitFilter.StoNcommands = cms.vstring("ALL 18.0")
1062 process.TrackerTrackHitFilter.rejectLowAngleHits= True
1063 process.TrackerTrackHitFilter.TrackAngleCut= 0.35 # in rads, starting from the module surface
1064 process.TrackerTrackHitFilter.usePixelQualityFlag= True
1066 process.triggerSelection=cms.Sequence(process.hltPhysicsDeclared)
1072 TrackSelectionCosmicsDataFPIXminus =
"""
1074 process.AlignmentTrackSelector.applyBasicCuts = True
1075 # Note that pMin is overridden and set to zero in
1076 # the offlineTemplate0T
1077 process.AlignmentTrackSelector.pMin = 4.
1078 process.AlignmentTrackSelector.pMax = 9999.
1079 process.AlignmentTrackSelector.ptMin = 0.
1080 process.AlignmentTrackSelector.ptMax = 9999.
1081 process.AlignmentTrackSelector.etaMin = -999.
1082 process.AlignmentTrackSelector.etaMax = 999.
1083 process.AlignmentTrackSelector.nHitMin = 8
1084 process.AlignmentTrackSelector.nHitMin2D = 2
1085 process.AlignmentTrackSelector.chi2nMax = 999.
1086 process.AlignmentTrackSelector.applyMultiplicityFilter = False
1087 process.AlignmentTrackSelector.maxMultiplicity = 1
1088 process.AlignmentTrackSelector.applyNHighestPt = False
1089 process.AlignmentTrackSelector.nHighestPt = 1
1090 process.AlignmentTrackSelector.seedOnlyFrom = 0
1091 process.AlignmentTrackSelector.applyIsolationCut = False
1092 process.AlignmentTrackSelector.minHitIsolation = 0.8
1093 process.AlignmentTrackSelector.applyChargeCheck = False
1094 process.AlignmentTrackSelector.minHitChargeStrip = 50.
1095 process.AlignmentTrackSelector.minHitsPerSubDet = cms.PSet(
1096 inTEC = cms.int32(0),
1097 inTOB = cms.int32(0),
1098 inFPIX = cms.int32(0),
1099 inTID = cms.int32(0),
1100 inBPIX = cms.int32(0),
1101 inTIB = cms.int32(0),
1102 inPIXEL = cms.int32(0),
1103 inTIDplus = cms.int32(0),
1104 inTIDminus = cms.int32(0),
1105 inTECplus = cms.int32(0),
1106 inTECminus = cms.int32(0),
1107 inFPIXplus = cms.int32(0),
1108 inFPIXminus = cms.int32(1),
1109 inENDCAP = cms.int32(0),
1110 inENDCAPplus = cms.int32(0),
1111 inENDCAPminus = cms.int32(0),
1113 #process.AlignmentTrackSelector.trackQualities = ["highPurity"]
1114 #process.AlignmentTrackSelector.iterativeTrackingSteps = ["iter1","iter2"]
1117 process.TrackerTrackHitFilter.useTrajectories= True # this is needed only if you require some selections; but it will work even if you don't ask for them
1118 process.TrackerTrackHitFilter.minimumHits = 8
1119 process.TrackerTrackHitFilter.commands = cms.vstring("keep PXB","keep PXE","keep TIB","keep TID","keep TOB","keep TEC")
1120 process.TrackerTrackHitFilter.detsToIgnore = [
1121 # see https://hypernews.cern.ch/HyperNews/CMS/get/tracker-performance/484.html
1123 #369136710, 369136714, 402668822,
1125 #436310989, 436310990, 436299301, 436299302,
1127 #470340521, 470063045, 470063046, 470114669, 470114670, 470161093, 470161094, 470164333, 470164334, 470312005, 470312006, 470312009, 470067405, 470067406, 470128813
1129 process.TrackerTrackHitFilter.replaceWithInactiveHits = True
1130 process.TrackerTrackHitFilter.stripAllInvalidHits = False
1131 process.TrackerTrackHitFilter.rejectBadStoNHits = True
1132 process.TrackerTrackHitFilter.StoNcommands = cms.vstring("ALL 18.0")
1133 process.TrackerTrackHitFilter.rejectLowAngleHits= True
1134 process.TrackerTrackHitFilter.TrackAngleCut= 0.35 # in rads, starting from the module surface
1135 process.TrackerTrackHitFilter.usePixelQualityFlag= True
1137 process.triggerSelection=cms.Sequence(process.hltPhysicsDeclared)
1143 TrackSelectionMinBiasData =
"""
1144 ##### For Tracks:collisions taken in deco mode
1145 process.AlignmentTrackSelector.applyBasicCuts = True
1146 # Note that pMin is overridden and set to zero in
1147 # the offlineTemplate0T
1148 process.AlignmentTrackSelector.pMin = 3
1149 process.AlignmentTrackSelector.pMax = 9999.
1150 process.AlignmentTrackSelector.ptMin = 0.65
1151 process.AlignmentTrackSelector.ptMax = 9999.
1152 process.AlignmentTrackSelector.etaMin = -999.
1153 process.AlignmentTrackSelector.etaMax = 999.
1154 process.AlignmentTrackSelector.nHitMin = 8
1155 process.AlignmentTrackSelector.nHitMin2D = 2
1156 process.AlignmentTrackSelector.chi2nMax = 999.
1157 process.AlignmentTrackSelector.applyMultiplicityFilter = False
1158 process.AlignmentTrackSelector.maxMultiplicity = 1
1159 process.AlignmentTrackSelector.applyNHighestPt = False
1160 process.AlignmentTrackSelector.nHighestPt = 1
1161 process.AlignmentTrackSelector.seedOnlyFrom = 0
1162 process.AlignmentTrackSelector.applyIsolationCut = False
1163 process.AlignmentTrackSelector.minHitIsolation = 0.8
1164 process.AlignmentTrackSelector.applyChargeCheck = False
1165 process.AlignmentTrackSelector.minHitChargeStrip = 50.
1166 #process.AlignmentTrackSelector.trackQualities = ["highPurity"]
1167 #process.AlignmentTrackSelector.iterativeTrackingSteps = ["iter1","iter2"]
1170 process.TrackerTrackHitFilter.useTrajectories= True # this is needed only if you require some selections; but it will work even if you don't ask for them
1171 process.TrackerTrackHitFilter.minimumHits = 8
1172 process.TrackerTrackHitFilter.commands = cms.vstring("keep PXB","keep PXE","keep TIB","keep TID","keep TOB","keep TEC")
1173 process.TrackerTrackHitFilter.detsToIgnore = [
1174 # see https://hypernews.cern.ch/HyperNews/CMS/get/tracker-performance/484.html
1176 #369136710, 369136714, 402668822,
1178 #436310989, 436310990, 436299301, 436299302,
1181 #470340521, 470063045, 470063046, 470114669, 470114670, 470161093, 470161094, 470164333, 470164334, 470312005, 470312006, 470312009, 470067405, 470067406, 470128813
1183 process.TrackerTrackHitFilter.replaceWithInactiveHits = True
1184 process.TrackerTrackHitFilter.stripAllInvalidHits = False
1185 process.TrackerTrackHitFilter.rejectBadStoNHits = True
1186 process.TrackerTrackHitFilter.StoNcommands = cms.vstring("ALL 12.0")
1187 process.TrackerTrackHitFilter.rejectLowAngleHits= True
1188 process.TrackerTrackHitFilter.TrackAngleCut= 0.17 # in rads, starting from the module surface
1189 process.TrackerTrackHitFilter.usePixelQualityFlag= True
1194 #bit 0 is selecting bunch crossing
1195 #bit 40 MinBias trigger
1198 process.triggerSelection=cms.Sequence(process.oneGoodVertexFilter)
1205 TrackSelectionIsolatedMuons =
"""
1206 ##### For Tracks:collisions taken in deco mode
1208 process.AlignmentTrackSelector.applyBasicCuts = True
1209 # Note that pMin is overridden and set to zero in
1210 # the offlineTemplate0T
1211 process.AlignmentTrackSelector.pMin = 0
1212 process.AlignmentTrackSelector.pMax = 9999.
1213 process.AlignmentTrackSelector.ptMin = 3.
1214 process.AlignmentTrackSelector.ptMax = 9999.
1215 process.AlignmentTrackSelector.etaMin = -999.
1216 process.AlignmentTrackSelector.etaMax = 999.
1217 process.AlignmentTrackSelector.nHitMin = 8
1218 process.AlignmentTrackSelector.nHitMin2D = 2
1219 process.AlignmentTrackSelector.chi2nMax = 999.
1220 process.AlignmentTrackSelector.applyMultiplicityFilter = False
1221 process.AlignmentTrackSelector.maxMultiplicity = 1
1222 process.AlignmentTrackSelector.applyNHighestPt = False
1223 process.AlignmentTrackSelector.nHighestPt = 1
1224 process.AlignmentTrackSelector.seedOnlyFrom = 0
1225 process.AlignmentTrackSelector.applyIsolationCut = False
1226 process.AlignmentTrackSelector.minHitIsolation = 0.8
1227 process.AlignmentTrackSelector.applyChargeCheck = False
1228 process.AlignmentTrackSelector.minHitChargeStrip = 50.
1229 #process.AlignmentTrackSelector.trackQualities = ["highPurity"]
1230 #process.AlignmentTrackSelector.iterativeTrackingSteps = ["iter1","iter2"]
1233 process.TrackerTrackHitFilter.useTrajectories= True # this is needed only if you require some selections; but it will work even if you don't ask for them
1234 process.TrackerTrackHitFilter.minimumHits = 8
1235 process.TrackerTrackHitFilter.commands = cms.vstring("keep PXB","keep PXE","keep TIB","keep TID","keep TOB","keep TEC")
1236 process.TrackerTrackHitFilter.detsToIgnore = [
1237 # see https://hypernews.cern.ch/HyperNews/CMS/get/tracker-performance/484.html
1239 #369136710, 369136714, 402668822,
1241 #436310989, 436310990, 436299301, 436299302,
1243 #470340521, 470063045, 470063046, 470114669, 470114670, 470161093, 470161094, 470164333, 470164334, 470312005, 470312006, 470312009, 470067405, 470067406, 470128813
1245 process.TrackerTrackHitFilter.replaceWithInactiveHits = True
1246 process.TrackerTrackHitFilter.stripAllInvalidHits = False
1247 process.TrackerTrackHitFilter.rejectBadStoNHits = True
1248 process.TrackerTrackHitFilter.StoNcommands = cms.vstring("ALL 12.0")
1249 process.TrackerTrackHitFilter.rejectLowAngleHits= True
1250 process.TrackerTrackHitFilter.TrackAngleCut= 0.17 # in rads, starting from the module surface
1251 process.TrackerTrackHitFilter.usePixelQualityFlag= True
1256 #bit 0 is selecting bunch crossing
1257 #bit xy for muons trigger
1260 #process.triggerSelection=cms.Sequence(process.bptxAnd)
1269 CosmicsOfflineValidation_Deformations=
"""
1270 import FWCore.ParameterSet.Config as cms
1272 process = cms.Process("OfflineValidator")
1274 process.load("Alignment.OfflineValidation..oO[dataset]Oo._cff")
1276 #process.source.inputCommands = cms.untracked.vstring('keep *', 'drop *_MEtoEDMConverter_*_*') # hack to get rid of the memory consumption problem in 2_2_X and beond
1277 process.options = cms.untracked.PSet(
1278 wantSummary = cms.untracked.bool(False),
1279 Rethrow = cms.untracked.vstring("ProductNotFound"), # make this exception fatal
1280 fileMode = cms.untracked.string('NOMERGE') # no ordering needed, but calls endRun/beginRun etc. at file boundaries
1284 ## Maximum number of Events
1286 process.maxEvents = cms.untracked.PSet(
1287 input = cms.untracked.int32(.oO[nEvents]Oo.)
1291 ## Messages & Convenience
1293 process.load("FWCore.MessageLogger.MessageLogger_cfi")
1294 process.MessageLogger.cerr = cms.untracked.PSet(placeholder = cms.untracked.bool(True))
1295 process.MessageLogger.cout = cms.untracked.PSet(INFO = cms.untracked.PSet(
1296 reportEvery = cms.untracked.int32(1000) # every 1000th only
1297 # limit = cms.untracked.int32(10) # or limit to 10 printouts...
1299 process.MessageLogger.statistics.append('cout')
1302 #-- Track hit filter
1303 # TrackerTrackHitFilter takes as input the tracks/trajectories coming out from TrackRefitter1
1304 process.load("RecoTracker.FinalTrackSelectors.TrackerTrackHitFilter_cff")
1305 process.TrackerTrackHitFilter.src = 'TrackRefitter1'
1309 #-- Alignment Track Selection
1310 process.load("Alignment.CommonAlignmentProducer.AlignmentTrackSelector_cfi")
1311 process.AlignmentTrackSelector.src = 'HitFilteredTracks'
1312 process.AlignmentTrackSelector.filter = True
1314 .oO[TrackSelectionTemplate]Oo.
1316 #now we give the TrackCandidate coming out of the TrackerTrackHitFilter to the track producer
1317 import RecoTracker.TrackProducer.CTFFinalFitWithMaterialP5_cff
1318 process.HitFilteredTracks = RecoTracker.TrackProducer.CTFFinalFitWithMaterialP5_cff.ctfWithMaterialTracksCosmics.clone(
1319 src = 'TrackerTrackHitFilter',
1320 ### TrajectoryInEvent = True,
1321 NavigationSchool = '',
1322 TTRHBuilder = "WithAngleAndTemplate"
1326 ## Load and Configure TrackRefitter1
1331 process.load("RecoTracker.TrackProducer.TrackRefitters_cff")
1333 process.TrackRefitter1 = process.TrackRefitterP5.clone(
1334 src = 'ALCARECOTkAlCosmicsCTF0T',
1335 TrajectoryInEvent = True,
1336 NavigationSchool = '',
1337 TTRHBuilder = "WithAngleAndTemplate"
1339 process.TrackRefitter2 = process.TrackRefitter1.clone(
1340 src = 'AlignmentTrackSelector',
1348 process.load("RecoVertex.BeamSpotProducer.BeamSpot_cff")
1351 ## GlobalTag Conditions (if needed)
1353 process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff")
1354 # process.GlobalTag.connect = "frontier://FrontierProd/CMS_COND_31X_GLOBALTAG"
1355 process.GlobalTag.globaltag = ".oO[GlobalTag]Oo."
1358 .oO[LorentzAngleTemplate]Oo.
1363 process.load("Configuration.Geometry.GeometryDB_cff")
1368 process.load("Configuration/StandardSequences/MagneticField_38T_cff")
1372 from CondCore.DBCommon.CondDBSetup_cfi import *
1373 process.trackerSurfaces = cms.ESSource(
1376 connect = cms.string('.oO[dbpath]Oo.'),
1377 toGet = cms.VPSet(cms.PSet(record = cms.string("TrackerSurfaceDeformationRcd"),
1378 tag = cms.string("Deformations")
1382 process.es_prefer_trackerSurfaces = cms.ESPrefer("PoolDBESSource", "trackerSurfaces")
1384 ## to apply misalignments
1385 #TrackerDigiGeometryESModule.applyAlignment = True
1388 ## Load and Configure OfflineValidation
1391 process.load("Alignment.OfflineValidation.TrackerOfflineValidation_.oO[offlineValidationMode]Oo._cff")
1392 process.TrackerOfflineValidation.oO[offlineValidationMode]Oo..Tracks = 'TrackRefitter2'
1393 process.TrackerOfflineValidation.oO[offlineValidationMode]Oo..trajectoryInput = 'TrackRefitter2'
1394 #process.TrackerOfflineValidation.oO[offlineValidationMode]Oo..moduleLevelHistsTransient = cms.bool(.oO[offlineModuleLevelHistsTransient]Oo.)
1395 process.TrackerOfflineValidationStandalone.moduleLevelHistsTransient = cms.bool(False)
1396 process.TrackerOfflineValidationStandalone.moduleLevelProfiles = cms.bool(True)
1397 process.TFileService.fileName = '.oO[outputFile]Oo.'
1402 process.p = cms.Path(process.offlineBeamSpot*process.TrackRefitter1*process.TrackerTrackHitFilter*process.HitFilteredTracks
1403 *process.AlignmentTrackSelector*process.TrackRefitter2*process.seqTrackerOfflineValidation.oO[offlineValidationMode]Oo.)
1411 TrackSelectionCosmicsDataDef =
"""
1412 # import CalibTracker.Configuration.Common.PoolDBESSource_cfi
1413 # process.trackerBowedSensors = CalibTracker.Configuration.Common.PoolDBESSource_cfi.poolDBESSource.clone(
1414 # connect = cms.string('.oO[dbpath]Oo.'),
1416 # toGet = cms.VPSet(cms.PSet(record = cms.string('TrackerSurfaceDeformationRcd'),
1417 # tag = cms.string('Deformations')
1421 # process.prefer_trackerBowedSensors = cms.ESPrefer("PoolDBESSource", "trackerBowedSensors")
1423 process.AlignmentTrackSelector.applyBasicCuts = True
1424 # Note that pMin is overridden and set to zero in
1425 # the offlineTemplate0T
1426 process.AlignmentTrackSelector.pMin = 4.
1427 process.AlignmentTrackSelector.pMax = 9999.
1428 process.AlignmentTrackSelector.ptMin = 0.
1429 process.AlignmentTrackSelector.ptMax = 9999.
1430 process.AlignmentTrackSelector.etaMin = -999.
1431 process.AlignmentTrackSelector.etaMax = 999.
1432 process.AlignmentTrackSelector.nHitMin = 8
1433 process.AlignmentTrackSelector.nHitMin2D = 2
1434 process.AlignmentTrackSelector.chi2nMax = 999.
1435 process.AlignmentTrackSelector.applyMultiplicityFilter = True
1436 process.AlignmentTrackSelector.maxMultiplicity = 1
1437 process.AlignmentTrackSelector.applyNHighestPt = False
1438 process.AlignmentTrackSelector.nHighestPt = 1
1439 process.AlignmentTrackSelector.seedOnlyFrom = 0
1440 process.AlignmentTrackSelector.applyIsolationCut = False
1441 process.AlignmentTrackSelector.minHitIsolation = 0.8
1442 process.AlignmentTrackSelector.applyChargeCheck = False
1443 process.AlignmentTrackSelector.minHitChargeStrip = 50.
1444 #process.AlignmentTrackSelector.trackQualities = ["highPurity"]
1445 #process.AlignmentTrackSelector.iterativeTrackingSteps = ["iter1","iter2"]
1448 process.TrackerTrackHitFilter.useTrajectories= True # this is needed only if you require some selections; but it will work even if you don't ask for them
1449 process.TrackerTrackHitFilter.minimumHits = 8
1450 process.TrackerTrackHitFilter.commands = cms.vstring("keep PXB","keep PXE","keep TIB","keep TID","keep TOB","keep TEC")
1451 process.TrackerTrackHitFilter.detsToIgnore = [
1452 # see https://hypernews.cern.ch/HyperNews/CMS/get/tracker-performance/484.html
1454 #369136710, 369136714, 402668822,
1456 #436310989, 436310990, 436299301, 436299302,
1458 #470340521, 470063045, 470063046, 470114669, 470114670, 470161093, 470161094, 470164333, 470164334, 470312005, 470312006, 470312009, 470067405, 470067406, 470128813
1460 process.TrackerTrackHitFilter.replaceWithInactiveHits = True
1461 process.TrackerTrackHitFilter.stripAllInvalidHits = False
1462 process.TrackerTrackHitFilter.rejectBadStoNHits = True
1463 process.TrackerTrackHitFilter.StoNcommands = cms.vstring("ALL 18.0")
1464 process.TrackerTrackHitFilter.rejectLowAngleHits= True
1465 process.TrackerTrackHitFilter.TrackAngleCut= 0.35 # in rads, starting from the module surface
1466 process.TrackerTrackHitFilter.usePixelQualityFlag= True
1467 #process.TrackerTrackHitFilter.PxlCorrClusterChargeCut = 10000.0
1468 process.triggerSelection=cms.Sequence(process.hltPhysicsDeclared)
1474 TrackSelectionCosmicsInterfillLADef =
"""
1475 # import CalibTracker.Configuration.Common.PoolDBESSource_cfi
1476 # process.trackerBowedSensors = CalibTracker.Configuration.Common.PoolDBESSource_cfi.poolDBESSource.clone(
1477 # connect = cms.string('.oO[dbpath]Oo.'),
1479 # toGet = cms.VPSet(cms.PSet(record = cms.string('TrackerSurfaceDeformationRcd'),
1480 # tag = cms.string('Deformations')
1484 # process.prefer_trackerBowedSensors = cms.ESPrefer("PoolDBESSource", "trackerBowedSensors")
1487 process.myLA = CalibTracker.Configuration.Common.PoolDBESSource_cfi.poolDBESSource.clone(
1488 connect = cms.string ('frontier://PromptProd/CMS_COND_31X_STRIP'),
1489 toGet = cms.VPSet(cms.PSet(
1490 record = cms.string('SiStripLorentzAngleRcd'),
1491 tag = cms.string('SiStripLorentzAnglePeak_GR10_v1_offline')
1495 process.es_prefer_myLA = cms.ESPrefer("PoolDBESSource","myLA")
1497 #-- initialize beam spot
1498 process.load("RecoVertex.BeamSpotProducer.BeamSpot_cfi")
1501 process.AlignmentTrackSelector.applyBasicCuts = True
1502 # Note that pMin is overridden and set to zero in
1503 # the offlineTemplate0T
1504 process.AlignmentTrackSelector.pMin = 4.
1505 process.AlignmentTrackSelector.pMax = 9999.
1506 process.AlignmentTrackSelector.ptMin = 0.
1507 process.AlignmentTrackSelector.ptMax = 9999.
1508 process.AlignmentTrackSelector.etaMin = -999.
1509 process.AlignmentTrackSelector.etaMax = 999.
1510 process.AlignmentTrackSelector.nHitMin = 8
1511 process.AlignmentTrackSelector.nHitMin2D = 2
1512 process.AlignmentTrackSelector.chi2nMax = 999.
1513 process.AlignmentTrackSelector.applyMultiplicityFilter = False
1514 process.AlignmentTrackSelector.maxMultiplicity = 1
1515 process.AlignmentTrackSelector.applyNHighestPt = False
1516 process.AlignmentTrackSelector.nHighestPt = 1
1517 process.AlignmentTrackSelector.seedOnlyFrom = 0
1518 process.AlignmentTrackSelector.applyIsolationCut = False
1519 process.AlignmentTrackSelector.minHitIsolation = 0.8
1520 process.AlignmentTrackSelector.applyChargeCheck = False
1521 process.AlignmentTrackSelector.minHitChargeStrip = 50.
1522 #process.AlignmentTrackSelector.trackQualities = ["highPurity"]
1523 #process.AlignmentTrackSelector.iterativeTrackingSteps = ["iter1","iter2"]
1526 process.TrackerTrackHitFilter.useTrajectories= True # this is needed only if you require some selections; but it will work even if you don't ask for them
1527 process.TrackerTrackHitFilter.minimumHits = 8
1528 process.TrackerTrackHitFilter.commands = cms.vstring("keep PXB","keep PXE","keep TIB","keep TID","keep TOB","keep TEC")
1529 process.TrackerTrackHitFilter.detsToIgnore = [
1530 # see https://hypernews.cern.ch/HyperNews/CMS/get/tracker-performance/484.html
1532 #369136710, 369136714, 402668822,
1534 #436310989, 436310990, 436299301, 436299302,
1536 #470340521, 470063045, 470063046, 470114669, 470114670, 470161093, 470161094, 470164333, 470164334, 470312005, 470312006, 470312009, 470067405, 470067406, 470128813
1538 process.TrackerTrackHitFilter.replaceWithInactiveHits = True
1539 process.TrackerTrackHitFilter.stripAllInvalidHits = False
1540 process.TrackerTrackHitFilter.rejectBadStoNHits = True
1541 process.TrackerTrackHitFilter.StoNcommands = cms.vstring("ALL 18.0")
1542 process.TrackerTrackHitFilter.rejectLowAngleHits= True
1543 process.TrackerTrackHitFilter.TrackAngleCut= 0.35 # in rads, starting from the module surface
1544 process.TrackerTrackHitFilter.usePixelQualityFlag= True
1546 #######################################
1547 ##Trigger settings for Cosmics during collisions
1548 #######################################
1549 process.load('L1TriggerConfig.L1GtConfigProducers.L1GtTriggerMaskTechTrigConfig_cff')
1550 process.load('HLTrigger/HLTfilters/hltLevel1GTSeed_cfi')
1551 process.L1T1=process.hltLevel1GTSeed.clone()
1552 process.L1T1.L1TechTriggerSeeding = cms.bool(True)
1553 process.L1T1.L1SeedsLogicalExpression=cms.string('25')
1554 process.hltHighLevel = cms.EDFilter("HLTHighLevel",
1555 TriggerResultsTag = cms.InputTag("TriggerResults","","HLT"),
1556 HLTPaths = cms.vstring('HLT_TrackerCosmics'),
1557 eventSetupPathsKey = cms.string(''),
1558 andOr = cms.bool(False),
1559 throw = cms.bool(True)
1563 process.triggerSelection=cms.Sequence(process.L1T1*process.hltHighLevel)
1569 TrackSelectionMinBiasDataDef =
"""
1570 # import CalibTracker.Configuration.Common.PoolDBESSource_cfi
1571 # process.trackerBowedSensors = CalibTracker.Configuration.Common.PoolDBESSource_cfi.poolDBESSource.clone(
1572 # connect = cms.string('.oO[dbpath]Oo.'),
1574 # toGet = cms.VPSet(cms.PSet(record = cms.string('TrackerSurfaceDeformationRcd'),
1575 # tag = cms.string('Deformations')
1579 # process.prefer_trackerBowedSensors = cms.ESPrefer("PoolDBESSource", "trackerBowedSensors")
1581 ##### For Tracks:collisions taken in deco mode
1582 process.AlignmentTrackSelector.applyBasicCuts = True
1583 # Note that pMin is overridden and set to zero in
1584 # the offlineTemplate0T
1585 process.AlignmentTrackSelector.pMin = 3
1586 process.AlignmentTrackSelector.pMax = 9999.
1587 process.AlignmentTrackSelector.ptMin = 0.65
1588 process.AlignmentTrackSelector.ptMax = 9999.
1589 process.AlignmentTrackSelector.etaMin = -999.
1590 process.AlignmentTrackSelector.etaMax = 999.
1591 process.AlignmentTrackSelector.nHitMin = 8
1592 process.AlignmentTrackSelector.nHitMin2D = 2
1593 process.AlignmentTrackSelector.chi2nMax = 999.
1594 process.AlignmentTrackSelector.applyMultiplicityFilter = False
1595 process.AlignmentTrackSelector.maxMultiplicity = 1
1596 process.AlignmentTrackSelector.applyNHighestPt = False
1597 process.AlignmentTrackSelector.nHighestPt = 1
1598 process.AlignmentTrackSelector.seedOnlyFrom = 0
1599 process.AlignmentTrackSelector.applyIsolationCut = False
1600 process.AlignmentTrackSelector.minHitIsolation = 0.8
1601 process.AlignmentTrackSelector.applyChargeCheck = False
1602 process.AlignmentTrackSelector.minHitChargeStrip = 50.
1603 #process.AlignmentTrackSelector.trackQualities = ["highPurity"]
1604 #process.AlignmentTrackSelector.iterativeTrackingSteps = ["iter1","iter2"]
1607 process.TrackerTrackHitFilter.useTrajectories= True # this is needed only if you require some selections; but it will work even if you don't ask for them
1608 process.TrackerTrackHitFilter.minimumHits = 8
1609 process.TrackerTrackHitFilter.commands = cms.vstring("keep PXB","keep PXE","keep TIB","keep TID","keep TOB","keep TEC")
1610 process.TrackerTrackHitFilter.detsToIgnore = [
1611 # see https://hypernews.cern.ch/HyperNews/CMS/get/tracker-performance/484.html
1613 #369136710, 369136714, 402668822,
1615 #436310989, 436310990, 436299301, 436299302,
1618 #470340521, 470063045, 470063046, 470114669, 470114670, 470161093, 470161094, 470164333, 470164334, 470312005, 470312006, 470312009, 470067405, 470067406, 470128813
1620 process.TrackerTrackHitFilter.replaceWithInactiveHits = True
1621 process.TrackerTrackHitFilter.stripAllInvalidHits = False
1622 process.TrackerTrackHitFilter.rejectBadStoNHits = True
1623 process.TrackerTrackHitFilter.StoNcommands = cms.vstring("ALL 12.0")
1624 process.TrackerTrackHitFilter.rejectLowAngleHits= True
1625 process.TrackerTrackHitFilter.TrackAngleCut= 0.17 # in rads, starting from the module surface
1626 process.TrackerTrackHitFilter.usePixelQualityFlag= True
1631 #bit 0 is selecting bunch crossing
1632 #bit 40 MinBias trigger
1635 process.triggerSelection=cms.Sequence(process.oneGoodVertexFilter)
1642 TrackSelectionIsolatedMuonsDef =
"""
1643 ##### For Tracks:collisions taken in deco mode
1644 # import CalibTracker.Configuration.Common.PoolDBESSource_cfi
1645 # process.trackerBowedSensors = CalibTracker.Configuration.Common.PoolDBESSource_cfi.poolDBESSource.clone(
1646 # connect = cms.string('.oO[dbpath]Oo.'),
1648 # toGet = cms.VPSet(cms.PSet(record = cms.string('TrackerSurfaceDeformationRcd'),
1649 # tag = cms.string('Deformations')
1653 # process.prefer_trackerBowedSensors = cms.ESPrefer("PoolDBESSource", "trackerBowedSensors")
1656 process.AlignmentTrackSelector.applyBasicCuts = True
1657 # Note that pMin is overridden and set to zero in
1658 # the offlineTemplate0T
1659 process.AlignmentTrackSelector.pMin = 3.
1660 process.AlignmentTrackSelector.pMax = 9999.
1661 process.AlignmentTrackSelector.ptMin = 5.
1662 process.AlignmentTrackSelector.ptMax = 9999.
1663 process.AlignmentTrackSelector.etaMin = -3.
1664 process.AlignmentTrackSelector.etaMax = 3.
1665 process.AlignmentTrackSelector.nHitMin = 10
1666 process.AlignmentTrackSelector.nHitMin2D = 2
1667 process.AlignmentTrackSelector.chi2nMax = 999.
1668 process.AlignmentTrackSelector.applyMultiplicityFilter = False
1669 process.AlignmentTrackSelector.maxMultiplicity = 1
1670 process.AlignmentTrackSelector.applyNHighestPt = False
1671 process.AlignmentTrackSelector.nHighestPt = 1
1672 process.AlignmentTrackSelector.seedOnlyFrom = 0
1673 process.AlignmentTrackSelector.applyIsolationCut = False
1674 process.AlignmentTrackSelector.minHitIsolation = 0.8
1675 process.AlignmentTrackSelector.applyChargeCheck = False
1676 process.AlignmentTrackSelector.minHitChargeStrip = 30.
1677 #process.AlignmentTrackSelector.trackQualities = ["highPurity"]
1678 #process.AlignmentTrackSelector.iterativeTrackingSteps = ["iter1","iter2"]
1681 process.TrackerTrackHitFilter.useTrajectories= True # this is needed only if you require some selections; but it will work even if you don't ask for them
1682 process.TrackerTrackHitFilter.minimumHits = 8
1683 process.TrackerTrackHitFilter.commands = cms.vstring("keep PXB","keep PXE","keep TIB","keep TID","keep TOB","keep TEC")
1684 process.TrackerTrackHitFilter.detsToIgnore = [
1685 # see https://hypernews.cern.ch/HyperNews/CMS/get/tracker-performance/484.html
1687 #369136710, 369136714, 402668822,
1689 #436310989, 436310990, 436299301, 436299302,
1691 #470340521, 470063045, 470063046, 470114669, 470114670, 470161093, 470161094, 470164333, 470164334, 470312005, 470312006, 470312009, 470067405, 470067406, 470128813
1693 process.TrackerTrackHitFilter.replaceWithInactiveHits = True
1694 process.TrackerTrackHitFilter.stripAllInvalidHits = False
1695 process.TrackerTrackHitFilter.rejectBadStoNHits = True
1696 process.TrackerTrackHitFilter.StoNcommands = cms.vstring("ALL 12.0")
1697 process.TrackerTrackHitFilter.rejectLowAngleHits= True
1698 process.TrackerTrackHitFilter.TrackAngleCut= 0.17 # in rads, starting from the module surface
1699 process.TrackerTrackHitFilter.usePixelQualityFlag= True
1704 #bit 0 is selecting bunch crossing
1705 #bit xy for muons trigger
1708 #process.triggerSelection=cms.Sequence(process.bptxAnd)