test
CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
customizeHLTforMC.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 def customizeHLTforFastSim(process,_fastSim=True):
4  process=customizeHLTforMC(process,_fastSim)
5  return process
6 
7 def customizeHLTforFullSim(process,_fastSim=False):
8  process=customizeHLTforMC(process,_fastSim)
9  return process
10 
11 def customizeHLTforMC(process,_fastSim=False):
12  """adapt the HLT to run on MC, instead of data
13  see Configuration/StandardSequences/Reconstruction_Data_cff.py
14  which does the opposite, for RECO"""
15 
16  # PFRecHitProducerHCAL
17  if 'hltParticleFlowRecHitHCAL' in process.__dict__:
18  process.hltParticleFlowRecHitHCAL.ApplyPulseDPG = cms.bool(False)
19  process.hltParticleFlowRecHitHCAL.LongShortFibre_Cut = cms.double(1000000000.0)
20 
21  # customise hltHbhereco to use the Method 3 time slew parametrization and response correction for Monte Carlo (PR #11091)
22  if 'hltHbhereco' in process.__dict__:
23  process.hltHbhereco.pedestalSubtractionType = cms.int32( 1 )
24  process.hltHbhereco.pedestalUpperLimit = cms.double( 2.7 )
25  process.hltHbhereco.timeSlewParsType = cms.int32( 3 )
26  # new time slew parametrisation
27  process.hltHbhereco.timeSlewPars = cms.vdouble( 12.2999, -2.19142, 0, 12.2999, -2.19142, 0, 12.2999, -2.19142, 0 )
28  # old response correction, matching the 2015D 25ns data
29  process.hltHbhereco.respCorrM3 = cms.double( 1.0 )
30 
31 
32  if _fastSim:
33 
34  fastsim = cms.ProcessFragment( process.name_() )
35  fastsim.load( "FastSimulation.HighLevelTrigger.HLTSetup_cff" )
36 
37  fastSimUnsupportedPaths = (
38 
39  # paths for which a recovery is not foreseen/possible
40  "AlCa_*_v*",
41  "DQM_*_v*",
42  "HLT_*Calibration_v*",
43  "HLT_DTErrors_v*",
44  "HLT_Random_v*",
45  "HLT_HcalNZS_v*",
46  "HLT_HcalPhiSym_v*",
47  "HLT_Activity_Ecal*_v*",
48  "HLT_IsoTrackHB_v*",
49  "HLT_IsoTrackHE_v*",
50  "HLT_L1SingleMuOpen_AntiBPTX_v*",
51  "HLT_JetE*_NoBPTX*_v*",
52  "HLT_L2Mu*_NoBPTX*_v*",
53  "HLT_Beam*_v*",
54  #"HLT_L1Tech_*_v*",
55  "HLT_HI*",
56  "HLT_PA*",
57  "HLT_GlobalRunHPDNoise_v*",
58  "HLT_L1TrackerCosmics_v*",
59  "HLT_HcalUTCA_v*",
60  "HLT_L1FatEvents_v*",
61 
62  # TODO: paths not supported by FastSim, but for which a recovery should be attempted
63  "HLT_DoubleMu33NoFiltersNoVtx_v*",
64  "HLT_DoubleMu38NoFiltersNoVtx_v*",
65  "HLT_Mu38NoFiltersNoVtx_Photon38_CaloIdL_v*",
66  "HLT_Mu42NoFiltersNoVtx_Photon42_CaloIdL_v*",
67  "HLT_DoubleMu23NoFiltersNoVtxDisplaced_v*",
68  "HLT_DoubleMu28NoFiltersNoVtxDisplaced_v*",
69  "HLT_Mu28NoFiltersNoVtxDisplaced_Photon28_CaloIdL_v*",
70  "HLT_Mu33NoFiltersNoVtxDisplaced_Photon33_CaloIdL_v*",
71  "HLT_HT350_DisplacedDijet80_Tight_DisplacedTrack_v*",
72  "HLT_HT350_DisplacedDijet80_DisplacedTrack_v*",
73  "HLT_HT500_DisplacedDijet40_Inclusive_v*",
74  "HLT_HT350_DisplacedDijet40_DisplacedTrack_v*",
75  "HLT_HT550_DisplacedDijet40_Inclusive_v*",
76  "HLT_HT350_DisplacedDijet80_DisplacedTrack_v*",
77  "HLT_HT400_DisplacedDijet40_Inclusive_v*",
78  "HLT_HT250_DisplacedDijet40_DisplacedTrack_v*",
79  "HLT_HT200_DisplacedDijet40_DisplacedTrack_v*",
80  "HLT_HT350_DisplacedDijet40_Inclusive_v*",
81  "HLT_TrkMu15_DoubleTrkMu5NoFiltersNoVtx_v*",
82  "HLT_TrkMu17_DoubleTrkMu8NoFiltersNoVtx_v*",
83  "HLT_MET60_IsoTrk*",
84  "HLT_MET75_IsoTrk50_v*",
85  "HLT_MET90_IsoTrk50_v*",
86  "HLT_VBF_DisplacedJet40_DisplacedTrack_v*",
87  "HLT_VBF_DisplacedJet40_TightID_DisplacedTrack_v*",
88  "HLT_VBF_DisplacedJet40_VTightID_DisplacedTrack_v*",
89  "HLT_VBF_DisplacedJet40_VVTightID_DisplacedTrack_v*",
90  "HLT_VBF_DisplacedJet40_Hadronic_2PromptTrack_v*",
91  "HLT_VBF_DisplacedJet40_DisplacedTrack_2TrackIP2DSig5_v*",
92  "HLT_Mu33NoFiltersNoVtxDisplaced_DisplacedJet50_Tight_v*",
93  "HLT_Mu33NoFiltersNoVtxDisplaced_DisplacedJet50_Loose_v*",
94  "HLT_Mu38NoFiltersNoVtxDisplaced_DisplacedJet60_Tight_v*",
95  "HLT_Mu38NoFiltersNoVtxDisplaced_DisplacedJet60_Loose_v*",
96  "HLT_Mu38NoFiltersNoVtx_DisplacedJet60_Loose_v*",
97  "HLT_Mu28NoFiltersNoVtx_DisplacedJet40_Loose_v*",
98  "HLT_Mu28NoFiltersNoVtx_CentralCaloJet40_v*",
99  "HLT_Mu23NoFiltersNoVtx_Photon23_CaloIdL_v*",
100  "HLT_DoubleMu18NoFiltersNoVtx_v*",
101  "HLT_DoubleMuNoFiltersNoVtx_SaveObjects_v*",
102  "MC_DoubleMuNoFiltersNoVtx_v*",
103  "HLT_L1MuOpenNotHF2Pixel_SingleTrack*",
104  "HLT_L1TOTEM0_RomanPotsAND_PixelClusters*",
105  )
106 
107  ESModulesToRemove = (
108 # "CaloTowerGeometryFromDBEP",
109 # "CastorGeometryFromDBEP",
110 # "EcalBarrelGeometryFromDBEP",
111 # "EcalEndcapGeometryFromDBEP",
112 # "EcalPreshowerGeometryFromDBEP",
113 # "HcalGeometryFromDBEP",
114 # "ZdcGeometryFromDBEP",
115 # "XMLFromDBSource",
116 # "sistripconn",
117 
118 # "navigationSchoolESProducer",
119 # "TransientTrackBuilderESProducer",
120 # "SteppingHelixPropagatorAny",
121 # "OppositeMaterialPropagator",
122 # "MaterialPropagator",
123 # "CaloTowerConstituentsMapBuilder",
124 # "CaloTopologyBuilder",
125  )
126 
127  ModulesToRemove = (
128  # "hltL3MuonIsolations",
129  "hltCkfL1SeededTrackCandidates",
130  "hltCtfL1SeededithMaterialTracks",
131  "hltCkf3HitL1SeededTrackCandidates",
132  "hltCtf3HitL1SeededWithMaterialTracks",
133  "hltCkf3HitActivityTrackCandidates",
134  "hltCtf3HitActivityWithMaterialTracks",
135  "hltActivityCkfTrackCandidatesForGSF",
136  "hltL1SeededCkfTrackCandidatesForGSF",
137  "hltMuCkfTrackCandidates",
138  "hltMuCtfTracks",
139  "hltTau3MuCkfTrackCandidates",
140  "hltTau3MuCtfWithMaterialTracks",
141  "hltMuTrackJpsiCkfTrackCandidates",
142  "hltMuTrackJpsiCtfTracks",
143  "hltMuTrackJpsiEffCkfTrackCandidates",
144  "hltMuTrackJpsiEffCtfTracks",
145  "hltJpsiTkPixelSeedFromL3Candidate",
146  "hltCkfTrackCandidatesJpsiTk",
147  "hltCtfWithMaterialTracksJpsiTk",
148  "hltMuTrackCkfTrackCandidatesOnia",
149  "hltMuTrackCtfTracksOnia",
150 
151  "hltFEDSelector",
152  "hltL3TrackCandidateFromL2OIState",
153  "hltL3TrackCandidateFromL2OIHit",
154  "hltL3TrackCandidateFromL2IOHit",
155  "hltL3TrackCandidateFromL2NoVtx",
156  "hltHcalDigis",
157  "hltHcalDigisL1EGSeeded",
158  "hltHcalDigisL1EGUnseeded",
159  "hltHoreco",
160  "hltHfreco",
161  "hltHbhereco",
162  "hltHbherecoMethod2L1EGSeeded",
163  "hltHbherecoMethod2L1EGUnseeded",
164  "hltESRawToRecHitFacility",
165  "hltEcalRecHitAll",
166  "hltESRecHitAll",
167  # === eGamma
168  "hltEgammaCkfTrackCandidatesForGSF",
169  "hltEgammaGsfTracks",
170  "hltEgammaCkfTrackCandidatesForGSFUnseeded",
171  "hltEgammaGsfTracksUnseeded",
172  # === hltPF
173  "hltPFJetCkfTrackCandidates",
174  "hltPFJetCtfWithMaterialTracks",
175  "hltPFlowTrackSelectionHighPurity",
176  # === hltFastJet
177  "hltDisplacedHT250L1FastJetRegionalPixelSeedGenerator",
178  "hltDisplacedHT250L1FastJetRegionalCkfTrackCandidates",
179  "hltDisplacedHT250L1FastJetRegionalCtfWithMaterialTracks",
180  "hltDisplacedHT300L1FastJetRegionalPixelSeedGenerator",
181  "hltDisplacedHT300L1FastJetRegionalCkfTrackCandidates",
182  "hltDisplacedHT300L1FastJetRegionalCtfWithMaterialTracks",
183  "hltBLifetimeRegionalPixelSeedGeneratorbbPhiL1FastJet",
184  "hltBLifetimeRegionalCkfTrackCandidatesbbPhiL1FastJet",
185  "hltBLifetimeRegionalCtfWithMaterialTracksbbPhiL1FastJet",
186  "hltBLifetimeRegionalPixelSeedGeneratorHbbVBF",
187  "hltBLifetimeRegionalCkfTrackCandidatesHbbVBF",
188  "hltBLifetimeRegionalCtfWithMaterialTracksHbbVBF",
189  "hltBLifetimeBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20HbbL1FastJet",
190  "hltBLifetimeBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20HbbL1FastJet",
191  "hltBLifetimeBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20HbbL1FastJet",
192  "hltBLifetimeDiBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20HbbL1FastJet",
193  "hltBLifetimeDiBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20HbbL1FastJet",
194  "hltBLifetimeDiBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20HbbL1FastJet",
195  # === hltBLifetimeRegional
196  "hltBLifetimeRegionalPixelSeedGeneratorHbb",
197  "hltBLifetimeRegionalCkfTrackCandidatesHbb",
198  "hltBLifetimeRegionalCtfWithMaterialTracksHbb",
199  "hltBLifetimeRegionalPixelSeedGeneratorbbPhi",
200  "hltBLifetimeRegionalCkfTrackCandidatesbbPhi",
201  "hltBLifetimeRegionalCtfWithMaterialTracksbbPhi",
202  "hltBLifetimeBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20Hbb",
203  "hltBLifetimeBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20Hbb",
204  "hltBLifetimeBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20Hbb",
205  "hltBLifetimeDiBTagIP3D1stTrkRegionalPixelSeedGeneratorJet20Hbb",
206  "hltBLifetimeDiBTagIP3D1stTrkRegionalCkfTrackCandidatesJet20Hbb",
207  "hltBLifetimeDiBTagIP3D1stTrkRegionalCtfWithMaterialTracksJet20Hbb",
208  "hltBLifetimeFastRegionalPixelSeedGeneratorHbbVBF",
209  "hltBLifetimeFastRegionalCkfTrackCandidatesHbbVBF",
210  "hltBLifetimeFastRegionalCtfWithMaterialTracksHbbVBF",
211  "hltBLifetimeRegionalPixelSeedGeneratorbbPhiL1FastJetFastPV",
212  "hltBLifetimeRegionalCkfTrackCandidatesbbPhiL1FastJetFastPV",
213  "hltBLifetimeRegionalCtfWithMaterialTracksbbPhiL1FastJetFastPV",
214  "hltFastPixelBLifetimeRegionalPixelSeedGeneratorHbb",
215  "hltFastPixelBLifetimeRegionalCkfTrackCandidatesHbb",
216  "hltFastPixelBLifetimeRegionalCtfWithMaterialTracksHbb",
217 
218  "hltPixelTracksForMinBias",
219  "hltPixelTracksForMinBias01",
220  "hltPixelTracksForHighMult",
221  "hltRegionalPixelTracks",
222  "hltPixelTracksReg",
223  "hltPixelTracksL3Muon",
224  "hltPixelTracksGlbTrkMuon",
225  "hltPixelTracksHighPtTkMuIso",
226  "hltPixelTracksHybrid",
227  "hltPixelTracksForPhotons",
228  "hltPixelTracksForEgamma",
229  "hltPixelTracksElectrons",
230  "hltPixelTracksForHighPt",
231  "hltHighPtPixelTracks",
232  "hltPixelTracksForNoPU",
233  "hltPixelTracksForSeedsTau3mu",
234  "hltPixelTracksGlbDiTrkMuon",
235 
236  "hltFastPixelHitsVertex",
237  "hltFastPixelTracks",
238  "hltFastPixelTracksRecover",
239 
240  "hltPixelLayerPairs",
241  "hltPixelLayerTriplets",
242  "hltPixelLayerTripletsReg",
243  "hltPixelLayerTripletsHITHB",
244  "hltPixelLayerTripletsHITHE",
245  "hltPixelLayerTripletsAfterSplitting",
246  "hltMixedLayerPairs",
247 
248  "hltFastPrimaryVertexbbPhi",
249  "hltPixelTracksFastPVbbPhi",
250  "hltPixelTracksRecoverbbPhi",
251  "hltFastPixelHitsVertexVHbb",
252  "hltFastPixelTracksVHbb",
253  "hltFastPixelTracksRecoverVHbb",
254 
255  "hltFastPrimaryVertex",
256  "hltFastPVPixelVertexFilter",
257  "hltFastPVPixelTracks",
258  "hltFastPVPixelTracksRecover",
259 
260  "hltPAGoodHighPurityFullTracks",
261 
262  # "hltPixelMatchElectronsActivity",
263 
264  "hltMuonCSCDigis",
265  "hltMuonDTDigis",
266  "hltMuonRPCDigis",
267 # "hltGtDigis",
268 # "hltL1GtTrigReport",
269  # "hltCsc2DRecHits",
270  # "hltDt1DRecHits",
271  # "hltRpcRecHits",
272  "hltScalersRawToDigi",
273  "hltEcalPreshowerDigis",
274  "hltEcalDigis",
275  "hltEcalDetIdToBeRecovered",
276 
277  )
278 
279  SequencesToRemove = (
280  "HLTL1SeededEgammaRegionalRecoTrackerSequence",
281  "HLTEcalActivityEgammaRegionalRecoTrackerSequence",
282  "HLTPixelMatchElectronActivityTrackingSequence",
283  "HLTDoLocalStripSequence",
284  "HLTDoLocalPixelSequence",
285  "HLTDoLocalPixelSequenceRegL2Tau",
286  "HLTDoLocalStripSequenceReg",
287  "HLTDoLocalPixelSequenceReg",
288  "HLTDoLocalStripSequenceRegForBTag",
289  "HLTDoLocalPixelSequenceRegForBTag",
290  "HLTDoLocalPixelSequenceRegForNoPU",
291  "HLTDoLocalPixelSequenceAfterSplitting",
292  "HLTPADoLocalStripSequenceAfterSplitting",
293  "HLTBeginSequence",
294  "HLTBeginSequenceL1Fat",
295  "HLTBeginSequenceNZS",
296  "HLTBeginSequenceBPTX",
297  "HLTBeginSequenceAntiBPTX",
298  "HLTHBHENoiseSequence",
299  "HLTIterativeTrackingIter04",
300  "HLTIterativeTrackingIter02",
301  "HLTIterativeTracking",
302  "HLTIterativeTrackingForHighPt",
303  "HLTIterativeTrackingTau3Mu",
304  "HLTIterativeTrackingGlbDiTrkMuonIter02",
305  "HLTIterativeTrackingReg",
306  "HLTIterativeTrackingForPA",
307  "HLTPAIterativeTracking",
308  "HLTIterativeTrackingForElectronIter02",
309  "HLTIterativeTrackingForPhotonsIter02",
310  "HLTIterativeTrackingL3MuonIter02",
311  "HLTIterativeTrackingGlbTrkMuonIter02",
312  "HLTIterativeTrackingL3MuonRegIter02",
313  "HLTIterativeTrackingHighPtTkMu",
314  "HLTIterativeTrackingHighPtTkMuIsoIter02",
315  "HLTIterativeTrackingForBTagIter02",
316  "HLTIterativeTrackingForBTagIter12",
317  "HLTIterativeTrackingForTauIter04",
318  "HLTIterativeTrackingForTauIter02",
319  "HLTIterativeTrackingDisplacedJpsiIter02",
320  "HLTIterativeTrackingDisplacedPsiPrimeIter02",
321  "HLTIterativeTrackingDisplacedNRMuMuIter02",
322  "HLTIterativeTrackingDisplacedTau3muIter02",
323  "HLTIterativeTrackingForBTagIteration0",
324  "HLTIterativeTrackingIteration4DisplacedJets",
325  "HLTRegionalCKFTracksForL3Isolation",
326  "HLTHBHENoiseCleanerSequence",
327  )
328 
329 # Removing ESmodules
330  for label in ESModulesToRemove:
331  if (hasattr(process,label)):
332  delattr(process,label)
333 
334 # Removing paths
335  import fnmatch,re
336  ExplicitList = []
337  HLTSchedule = tuple( path.label_() for path in process.HLTSchedule)
338  for path in HLTSchedule:
339  getattr(process,path).insert(1,process.HLTL1UnpackerSequence)
340  for black in fastSimUnsupportedPaths:
341  compiled = re.compile(fnmatch.translate(black))
342  for path in HLTSchedule:
343  if compiled.search(path) is not None:
344  ExplicitList += [path]
345  UniqueList = []
346  for path in ExplicitList:
347  if path not in UniqueList:
348  UniqueList += [path]
349  for path in UniqueList:
350  process.schedule.remove(getattr(process,path))
351  process.setSchedule_(process.schedule)
352  process.prune()
353 
354 # Removing streams and datasets PSets
355  if hasattr(process,'streams'):
356  delattr(process,'streams')
357  if hasattr(process,'datasets'):
358  delattr(process,'datasets')
359 
360 # Removing sequences, possibly to be taken from fastsim import
361  for label in SequencesToRemove:
362  if hasattr(process,label):
363  if hasattr(fastsim,label):
364  setattr(process,label,getattr(fastsim,label))
365  else:
366  object = getattr(process,label)
367  list = tuple(process.sequences_().keys())
368  for name in list:
369  sequence = getattr(process,name)
370  more=True
371  while more:
372  more = sequence.remove(object)
373  list = tuple(process.paths_().keys())
374  for name in list:
375  path = getattr(process,name)
376  more=True
377  while more:
378  more = path.remove(object)
379  delattr(process,label)
380 
381 # Removing modules, possibly to be taken from fastsim import
382  for label in ModulesToRemove:
383  if hasattr(process,label):
384  if hasattr(fastsim,label):
385  setattr(process,label,getattr(fastsim,label))
386  else:
387  object = getattr(process,label)
388  # remove from sequences
389  list = tuple(process.sequences_().keys())
390  for name in list:
391  sequence = getattr(process,name)
392  more=True
393  while more:
394  more = sequence.remove(object)
395  # remove from paths
396  list = tuple(process.paths_().keys())
397  for name in list:
398  path = getattr(process,name)
399  more=True
400  while more:
401  more = path.remove(object)
402  # remove from end paths
403  list = tuple(process.endpaths_().keys())
404  for name in list:
405  path = getattr(process,name)
406  more=True
407  while more:
408  more = path.remove(object)
409  delattr(process,label)
410 
411 # Special transformations:
412  if hasattr(process,'hltGetConditions') and hasattr(process,'HLTriggerFirstPath'):
413  process.hltDummyConditions = cms.EDFilter( "HLTBool", result = cms.bool( True ) )
414  process.HLTriggerFirstPath.replace(process.hltGetConditions,process.hltDummyConditions)
415  if hasattr(process,'hltPixelVertices'):
416  process.hltPixelVertices.beamSpot = cms.InputTag('offlineBeamSpot')
417  specialModules = ( 'hltEcalRecHit', 'hltEcalPreshowerRecHit', )
418  for label in specialModules:
419  if hasattr(process,label):
420  setattr(fastsim,label,getattr(process,label))
421 
422 # Use fastsim imports
423  for label in fastsim.producers_().keys():
424  if hasattr(process,label):
425  setattr(process,label,getattr(fastsim,label))
426  for label in fastsim.filters_().keys():
427  if hasattr(process,label):
428  setattr(process,label,getattr(fastsim,label))
429  for label in fastsim.analyzers_().keys():
430  if hasattr(process,label):
431  setattr(process,label,getattr(fastsim,label))
432  for label in fastsim.sequences_().keys():
433  if hasattr(process,label):
434  setattr(process,label,getattr(fastsim,label))
435 
436 # Update InputTags
437 
438  InputTags = (
439 # ('hltGtDigis','gtDigis'),
440 # ('hltL1GtObjectMap','gtDigis'),
441  ('hltEcalDigis:ebDigis','ecalDigis:ebDigis'),
442  ('hltEcalDigis:eeDigis','ecalDigis:eeDigis'),
443  ('hltMuonCSCDigis','muonCSCDigis'),
444  ('hltMuonCSCDigis:MuonCSCStripDigi','muonCSCDigis:MuonCSCStripDigi'),
445  ('hltMuonCSCDigis:MuonCSCWireDigi','muonCSCDigis:MuonCSCWireDigi'),
446  ('hltMuonDTDigis','muonDTDigis'),
447  ('hltMuonRPCDigis','muonRPCDigis'),
448  ('hltEcalPreshowerDigis','ecalPreshowerDigis'),
449  ('hltHbhereco', 'hbhereco'),
450  ('hltHbherecoMethod2L1EGSeeded', 'hbhereco'),
451  ('hltHbherecoMethod2L1EGUnseeded', 'hbhereco'),
452  ('hltHoreco', 'horeco'),
453  ('hltHfreco', 'hfreco'),
454 
455  ('hltIter2Merged', 'generalTracks'),
456  ('hltIter2HighPtMerged', 'generalTracks'),
457  ('hltIter2MergedForElectrons', 'generalTracks'),
458  ('hltIter2MergedForPhotons', 'generalTracks'),
459  ('hltIter2L3MuonMerged', 'generalTracks'),
460  ('hltIter2MergedForBTag', 'generalTracks'),
461  ('hltIter2MergedForTau', 'generalTracks'),
462  ('hltIter2GlbTrkMuonMerged', 'generalTracks'),
463  ('hltIter2HighPtTkMuMerged', 'generalTracks'),
464  ('hltIter2HighPtTkMuIsoMerged', 'generalTracks'),
465  ('hltIter2DisplacedJpsiMerged', 'generalTracks'),
466  ('hltIter2DisplacedPsiPrimeMerged', 'generalTracks'),
467  ('hltIter2DisplacedNRMuMuMerged', 'generalTracks'),
468  ('hltIter2DisplacedTau3muMerged', 'generalTracks'),
469  ('hltIter2GlbDiTrkMuonMerged', 'generalTracks'),
470  ('hltIter0PFlowTrackSelectionHighPurityForBTag', 'generalTracks'),
471  ('hltIter4HighPtMerged', 'generalTracks'),
472  ('hltIterativeTrackingForPAMerged', 'generalTracks'),
473  #('hltPAIterativeTrackingMerged', 'generalTracks'),
474  ('hltPAIterativeTrackingMerged', 'generalTracks'),
475  ('hltPAGoodHighPurityFullTracks','generalTracks'),
476 
477  ('hltFastPVPixelTracks','hltPixelTracks'),
478  ('hltFastPVPixelTracksRecover','hltPixelTracks'),
479  ('hltPixelTracksL3Muon','hltPixelTracks'),
480  ('hltPixelTracksGlbTrkMuon','hltPixelTracks'),
481  ('hltPixelTracksHighPtTkMuIso','hltPixelTracks'),
482  ('hltPixelTracksHybrid','hltPixelTracks'),
483  ('hltPixelTracksForPhotons','hltPixelTracks'),
484  ('hltPixelTracksForEgamma','hltPixelTracks'),
485  ('hltPixelTracksElectrons','hltPixelTracks'),
486  ('hltPixelTracksForHighPt','hltPixelTracks'),
487  ('hltHighPtPixelTracks','hltPixelTracks'),
488  ('hltPixelTracksForNoPU','hltPixelTracks'),
489  ('hltPixelTracksForSeedsTau3mu','hltPixelTracks'),
490  ('hltPixelTracksGlbDiTrkMuon','hltPixelTracks'),
491 
492  ('hltL1extraParticles','l1extraParticles'),
493  ('hltL1extraParticles:Central','l1extraParticles:Central'),
494  ('hltL1extraParticles:Forward','l1extraParticles:Forward'),
495  ('hltL1extraParticles:Isolated','l1extraParticles:Isolated'),
496  ('hltL1extraParticles:NonIsolated','l1extraParticles:NonIsolated'),
497  ('hltL1extraParticles:Tau','l1extraParticles:Tau'),
498  ('hltL1extraParticles:IsoTau','l1extraParticles:IsoTau'),
499  ('hltOfflineBeamSpot','offlineBeamSpot'),
500  ('hltOnlineBeamSpot','offlineBeamSpot'),
501  ('hltSiStripClusters','MeasurementTrackerEvent'),
502  ('hltSiStripClustersAfterSplitting','MeasurementTrackerEvent'),
503  )
504  from HLTrigger.Configuration.CustomConfigs import MassReplaceInputTag
505  for pair in InputTags:
506  process = MassReplaceInputTag(process,pair[0],pair[1])
507 
508 # Update top-level named parameters
509  NamedParameters = (
510 # ('GMTReadoutCollection',cms.InputTag('gtDigis'),cms.InputTag('gmtDigis')),
511  ('killDeadChannels',cms.bool(True),cms.bool(False)),
512  ('recoverEBFE',cms.bool(True),cms.bool(False)),
513  ('recoverEEFE',cms.bool(True),cms.bool(False)),
514  ('src',cms.InputTag('hltHcalTowerNoiseCleaner'),cms.InputTag('hltTowerMakerForAll')),
515  ('src',cms.InputTag('hltHcalTowerNoiseCleanerWithrechit'),cms.InputTag('hltTowerMakerForAll')),
516  ('initialSeeds',cms.InputTag('noSeedsHere'),cms.InputTag('hltPixelPairSeeds')),
517  ('preFilteredSeeds',cms.bool(True),cms.bool(False)),
518  )
519  from HLTrigger.Configuration.CustomConfigs import MassReplaceParameter
520  for thrice in NamedParameters:
521  process = MassReplaceParameter(process,thrice[0],thrice[1],thrice[2])
522 
523 # Update nested named parameters
524  for label in ('hltEgammaElectronPixelSeeds','hltEgammaElectronPixelSeedsUnseeded',):
525  if hasattr(process,label):
526  getattr(process,label).SeedConfiguration.initialSeeds = cms.InputTag('hltPixelPairSeeds')
527  getattr(process,label).SeedConfiguration.preFilteredSeeds = cms.bool(False)
528 
529 # Extending fastsim import
530  fastsim.extend(process)
531  fastsim.setSchedule_(fastsim.schedule)
532  fastsim.prune()
533 
534 # muon seeds
535  import FastSimulation.HighLevelTrigger.full2fast as full2fast
536  if hasattr(fastsim,"hltL3TrajSeedOIHit"):
537  full2fast.modify_hltL3TrajSeedOIHit(fastsim.hltL3TrajSeedOIHit)
538  if hasattr(fastsim,"hltL3NoFiltersTrajSeedOIHit"):
539  full2fast.modify_hltL3TrajSeedOIHit(fastsim.hltL3NoFiltersTrajSeedOIHit)
540  if hasattr(fastsim,"hltL3TrajSeedIOHit"):
541  full2fast.modify_hltL3TrajSeedIOHit(fastsim.hltL3TrajSeedIOHit)
542  if hasattr(fastsim,"hltL3NoFiltersTrajSeedIOHit"):
543  full2fast.modify_hltL3NoFiltersTrajSeedIOHit(fastsim.hltL3NoFiltersTrajSeedIOHit)
544 
545  return fastsim
546 
547  else:
548 
549  return process
def modify_hltL3TrajSeedOIHit
Definition: full2fast.py:3
bool insert(Storage &iStorage, ItemType *iItem, const IdTag &iIdTag)
Definition: HCMethods.h:49
def MassReplaceParameter
def modify_hltL3TrajSeedIOHit
Definition: full2fast.py:12