1 import FWCore.ParameterSet.Config
as cms
21 """Customise the HLT to run on Run 2 data/MC using the old readout for the HCAL barel""" 25 producer.processQIE8 =
True 29 producer.HBThreshold1 = 0.7
30 producer.HBThreshold2 = 0.7
31 producer.HBThreshold = 0.7
36 logWeightDenominatorHCAL2018 = cms.VPSet(
38 depths = cms.vint32(1, 2, 3, 4),
39 detector = cms.string(
'HCAL_BARREL1'),
40 logWeightDenominator = _thresholdsHB
43 depths = cms.vint32(1, 2, 3, 4, 5, 6, 7),
44 detector = cms.string(
'HCAL_ENDCAP'),
45 logWeightDenominator = _thresholdsHEphase1
50 if producer.producers[0].name.value() ==
'PFHBHERecHitCreator':
51 producer.producers[0].qualityTests[0].cuts[0].threshold = _thresholdsHB
54 if producer.seedFinder.thresholdsByDetector[0].detector.value() ==
'HCAL_BARREL1':
55 producer.seedFinder.thresholdsByDetector[0].seedingThreshold = _seedingThresholdsHB
56 producer.initialClusteringStep.thresholdsByDetector[0].gatheringThreshold = _thresholdsHB
57 producer.pfClusterBuilder.recHitEnergyNorms[0].recHitEnergyNorm = _thresholdsHB
58 producer.pfClusterBuilder.positionCalc.logWeightDenominatorByDetector = logWeightDenominatorHCAL2018
59 producer.pfClusterBuilder.allCellsPositionCalc.logWeightDenominatorByDetector = logWeightDenominatorHCAL2018
62 producer.pfClusterBuilder.allCellsPositionCalc.logWeightDenominatorByDetector = logWeightDenominatorHCAL2018
68 """Adapt the HLT to run the legacy DT unpacking 69 for pre2018 data/MC workflows as the default""" 71 if hasattr(process,
'hltMuonDTDigis'):
72 process.hltMuonDTDigis = cms.EDProducer(
"DTUnpackingModule",
73 useStandardFEDid = cms.bool(
True ),
74 maxFEDid = cms.untracked.int32( 779 ),
75 inputLabel = cms.InputTag(
"rawDataCollector" ),
76 minFEDid = cms.untracked.int32( 770 ),
77 dataType = cms.string(
"DDU" ),
78 readOutParameters = cms.PSet(
79 localDAQ = cms.untracked.bool(
False ),
80 debug = cms.untracked.bool(
False ),
81 rosParameters = cms.PSet(
82 localDAQ = cms.untracked.bool(
False ),
83 debug = cms.untracked.bool(
False ),
84 writeSC = cms.untracked.bool(
True ),
85 readDDUIDfromDDU = cms.untracked.bool(
True ),
86 readingDDU = cms.untracked.bool(
True ),
87 performDataIntegrityMonitor = cms.untracked.bool(
False )
89 performDataIntegrityMonitor = cms.untracked.bool(
False )
91 dqmOnly = cms.bool(
False )
97 """Customise the HLT to run on Run 2 data/MC using the old definition of the pixel calibrations 99 Up to 11.0.x, the pixel calibarations were fully specified in the configuration: 100 VCaltoElectronGain = 47 101 VCaltoElectronGain_L1 = 50 102 VCaltoElectronOffset = -60 103 VCaltoElectronOffset_L1 = -670 105 Starting with 11.1.x, the calibrations for Run 3 were moved to the conditions, leaving in the configuration only: 106 VCaltoElectronGain = 1 107 VCaltoElectronGain_L1 = 1 108 VCaltoElectronOffset = 0 109 VCaltoElectronOffset_L1 = 0 111 Since the conditions for Run 2 have not been updated to the new scheme, the HLT configuration needs to be reverted. 115 producer.VCaltoElectronGain = 47
116 producer.VCaltoElectronGain_L1 = 50
117 producer.VCaltoElectronOffset = -60
118 producer.VCaltoElectronOffset_L1 = -670
121 producer.VCaltoElectronGain = cms.double(1.)
122 producer.VCaltoElectronGain_L1 = cms.double(1.)
123 producer.VCaltoElectronOffset = cms.double(0.)
124 producer.VCaltoElectronOffset_L1 = cms.double(0.)
125 producer.isRun2 =
True 132 if hasattr(producer,
"ClusterThreshold_L1"):
133 producer.ClusterThreshold_L1 = 2000
135 if hasattr(producer,
"clusterThreshold_layer1"):
136 producer.clusterThreshold_layer1 = 2000
138 if hasattr(producer,
"clusterThreshold_layer1"):
139 producer.clusterThreshold_layer1 = 2000
153 if hasattr(prod,
'regressionConfig'):
154 prod.regressionConfig.regTrainedWithPS = cms.bool(
False)
159 """Customisation for the HLT BeamSpot when running on Run-2 (2018) data: 160 - For Run-2 data, disable the use of the BS transient record, in order to read the BS record from SCAL. 161 - Additionally, remove all instances of OnlineBeamSpotESProducer (not needed if useTransientRecord=False). 162 - See CMSHLT-2271 and CMSHLT-2300 for further details. 165 prod.useTransientRecord =
False 166 onlineBeamSpotESPLabels = [prod.label_()
for prod
in esproducers_by_type(process,
'OnlineBeamSpotESProducer')]
167 for espLabel
in onlineBeamSpotESPLabels:
168 delattr(process, espLabel)
173 """Customisation to apply the ECAL Run-2 Ultra-Legacy calibrations (CMSHLT-2339)""" 174 if hasattr(process,
'GlobalTag'):
175 if not hasattr(process.GlobalTag,
'toGet'):
176 process.GlobalTag.toGet = cms.VPSet()
177 process.GlobalTag.toGet += [
179 record = cms.string(
'EcalLaserAlphasRcd'),
180 tag = cms.string(
'EcalLaserAlphas_UL_Run1_Run2_2018_lastIOV_movedTo1')
183 record = cms.string(
'EcalIntercalibConstantsRcd'),
184 tag = cms.string(
'EcalIntercalibConstants_UL_Run1_Run2_2018_lastIOV_movedTo1')
188 print(
'# customiseECALCalibrationsFor2018Input -- the process.GlobalTag ESSource does not exist: no customisation applied.')
193 """Customise the HLT to run on Run 2 data/MC""" 213 prod.timeThreshold =
int(1e6)
219 prod.PixelShapeFile =
"RecoTracker/PixelLowPtUtilities/data/pixelShapePhase1_noL1.par" 220 prod.PixelShapeFileL1 =
"RecoTracker/PixelLowPtUtilities/data/pixelShapePhase1_loose.par" 225 for producer
in filters_by_type(process,
'HLTPixelIsolTrackL1TFilter'):
226 if hasattr(producer,
'L1GTSeedLabel'):
227 del producer.L1GTSeedLabel
228 if hasattr(producer,
'MinDeltaPtL1Jet'):
229 del producer.MinDeltaPtL1Jet
236 producer.beamSpot = cms.InputTag(
'hltOnlineBeamSpot')
238 if hasattr(process,
'HLT_HIRandom_v4'):
239 getattr(process,
'HLT_HIRandom_v4').
insert(2,process.HLTBeamSpot)
244 for producerType
in [
245 'SiPixelRawToClusterCUDA',
246 'SiPixelRawToClusterCUDAPhase1',
247 'SiPixelRawToClusterCUDAHIonPhase1',
252 producer.VCaltoElectronGain = cms.double(1.)
253 producer.VCaltoElectronGain_L1 = cms.double(1.)
254 producer.VCaltoElectronOffset = cms.double(0.)
255 producer.VCaltoElectronOffset_L1 = cms.double(0.)
260 for producerType
in [
261 'SiPixelRawToClusterCUDA',
262 'SiPixelRawToClusterCUDAPhase1',
263 'SiPixelRawToClusterCUDAHIonPhase1',
266 if hasattr(producer,
'isRun2'):
def customisePixelL1ClusterThresholdForRun2Input(process)
def customizeHLTfor42410(process)
def customizeHLTforCMSSW(process, menuType="GRun")
def filters_by_type(process, types)
def customiseECALCalibrationsFor2018Input(process)
def customizeHLTfor41058(process)
def customiseFor2017DtUnpacking(process)
def customiseForOffline(process)
void print(TMatrixD &m, const char *label=nullptr, bool mathematicaFormat=false)
bool insert(Storage &iStorage, ItemType *iItem, const IdTag &iIdTag)
def customiseHCALFor2018Input(process)
def customiseCTPPSFor2018Input(process)
def customizeHLTfor41632(process)
def customiseFor2018Input(process)
def customiseEGammaRecoFor2018Input(process)
def producers_by_type(process, types)
def customiseBeamSpotFor2018Input(process)
def customizeHLTfor41815(process)
def customizeHLTfor41495(process)
def customisePixelGainForRun2Input(process)
def esproducers_by_type(process, types)