CMS 3D CMS Logo

ALCARECOPromptCalibProdSiStripHitEfficiency_cff.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 # ------------------------------------------------------------------------------
4 # configure a filter to run only on the events selected by TkAlMinBias AlcaReco
6 ALCARECOCalMinBiasFilterForSiStripHitEff = hltHighLevel.clone(
7  HLTPaths = ['pathALCARECOSiStripCalMinBias'],
8  throw = True,
9  TriggerResultsTag = ("TriggerResults","","RECO")
10 )
11 
12 # ------------------------------------------------------------------------------
13 # This is the sequence for track refitting of the track saved by SiStripCalMinBias
14 # to have access to transient objects produced during RECO step and not saved
16 ALCARECOMonitoringTracks = AlignmentTrackSelector.clone(
17  # src = 'generalTracks',
18  src = 'ALCARECOSiStripCalMinBias',
19  filter = True,
20  applyBasicCuts = True,
21  ptMin = 0.8,
22  nHitMin = 6,
23  chi2nMax = 10.)
24 
25 # FIXME: the beam-spot should be kept in the AlCaReco (if not already there) and dropped from here
32 
33 ALCARECOMonitoringTracksRefit = TrackRefitter.clone(
34  src = "ALCARECOMonitoringTracks",
35  NavigationSchool = cms.string("")
36 )
37 
38 # ------------------------------------------------------------------------------
39 # refit and BS can be dropped if done together with RECO.
40 # track filter can be moved in acalreco if no otehr users
41 ALCARECOTrackFilterRefit = cms.Sequence(ALCARECOMonitoringTracks +
42  MeasurementTrackerEvent +
43  offlineBeamSpot +
44  ALCARECOMonitoringTracksRefit)
45 
46 # ------------------------------------------------------------------------------
47 # This is the module actually doing the calibration
48 from CalibTracker.SiStripHitEfficiency.siStripHitEfficiencyWorker_cfi import siStripHitEfficiencyWorker
49 ALCARECOSiStripHitEff = siStripHitEfficiencyWorker.clone(
50  dqmDir = "AlCaReco/SiStripHitEfficiency",
51  lumiScalers= "scalersRawToDigi",
52  addLumi = True,
53  commonMode = "siStripDigis:CommonMode",
54  addCommonMode= False,
55  combinatorialTracks = "ALCARECOMonitoringTracksRefit",
56  trajectories = "ALCARECOMonitoringTracksRefit",
57  siStripClusters = "siStripClusters",
58  siStripDigis = "siStripDigis",
59  trackerEvent = "MeasurementTrackerEvent",
60  # part 2
61  Layer = 0, # =0 means do all layers
62  Debug = True,
63  # do not cut on the total number of tracks
64  cutOnTracks = False,
65  trackMultiplicity = 1000,
66  # use or not first and last measurement of a trajectory (biases), default is false
67  useFirstMeas = False,
68  useLastMeas = False,
69  useAllHitsFromTracksWithMissingHits = False,
70  doMissingHitsRecovery = False,
71 
72  ClusterMatchingMethod = 4, # default 0 case0,1,2,3,4
73  ClusterTrajDist = 15, # default 64
74 )
75 
76 from Configuration.Eras.Modifier_run3_common_cff import run3_common
77 run3_common.toModify(ALCARECOSiStripHitEff,
78  useAllHitsFromTracksWithMissingHits = True,
79  doMissingHitsRecovery = True)
80 
81 # ----------------------------------------------------------------------------
82 MEtoEDMConvertSiStripHitEff = cms.EDProducer("MEtoEDMConverter",
83  Name = cms.untracked.string('MEtoEDMConverter'),
84  Verbosity = cms.untracked.int32(0), # 0 provides no output
85  # 1 provides basic output
86  # 2 provide more detailed output
87  Frequency = cms.untracked.int32(50),
88  MEPathToSave = cms.untracked.string('AlCaReco/SiStripHitEfficiency'))
89 
90 # The actual sequence
91 seqALCARECOPromptCalibProdSiStripHitEfficiency = cms.Sequence(
92  ALCARECOCalMinBiasFilterForSiStripHitEff *
93  ALCARECOTrackFilterRefit *
94  ALCARECOSiStripHitEff *
95  MEtoEDMConvertSiStripHitEff)
dont throw on unknown path names