CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
postLS1Customs.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 from RecoTracker.Configuration.customiseForRunI import customiseForRunI
4 
6 
7  # deal with L1 Emulation separately
8  from L1Trigger.L1TCommon.customsPostLS1 import customiseSimL1EmulatorForStage1
9  process = customiseSimL1EmulatorForStage1(process)
10 
11  # deal with CSC separately
12  from SLHCUpgradeSimulations.Configuration.muonCustoms import customise_csc_PostLS1
13  process = customise_csc_PostLS1(process)
14 
15  # deal with FastSim separately
16  from SLHCUpgradeSimulations.Configuration.fastSimCustoms import customise_fastSimPostLS1
17  process = customise_fastSimPostLS1(process)
18 
19  # all the rest
20  if hasattr(process,'g4SimHits'):
21  process = customise_Sim(process)
22  if hasattr(process,'DigiToRaw'):
23  process = customise_DigiToRaw(process)
24  if hasattr(process,'RawToDigi'):
25  process = customise_RawToDigi(process)
26  if hasattr(process,'reconstruction'):
27  process = customise_Reco(process)
28  if hasattr(process,'digitisation_step') or ( hasattr(process,'mix') and hasattr(process.mix,'digitizers')):
29  process = customise_Digi_Common(process)
30  if hasattr(process,'HLTSchedule'):
31  process = customise_HLT(process)
32  if hasattr(process,'L1simulation_step'):
33  process = customise_L1Emulator(process)
34  if hasattr(process,'dqmoffline_step'):
35  process = customise_DQM(process)
36  if hasattr(process,'dqmHarvesting'):
37  process = customise_harvesting(process)
38  if hasattr(process,'validation_step'):
39  process = customise_Validation(process)
40  if hasattr(process,'datamixing_step'):
41  process = customise_DataMix(process)
42 
43  return process
44 
45 
46 def customisePostLS1(process,displayDeprecationWarning=True):
47  if displayDeprecationWarning :
48  print """
49  #
50  # -- Warning! You are using a deprecated customisation function. --
51  #
52  # It will probably run fine, but the customisations you are getting may be out of date.
53  # You should update your configuration file by
54  # If using cmsDriver:
55  # 1) remove the "--customise SLHCUpgradeSimulations/Configuration/postLS1Customs.customisePostLS1" option
56  # 2) add the option "--era Run2_25ns"
57  # If using a pre-made configuration file:
58  # 1) remove or comment out the "process = customisePostLS1(process)" line.
59  # 2) add "from Configuration.StandardSequences.Eras import eras" to the TOP of the config file (above
60  # the process declaration).
61  # 3) add "eras.Run2_25ns" as a parameter to the process object, e.g. "process = cms.Process('HLT',eras.Run2_25ns)"
62  #
63  # There is more information at https://twiki.cern.ch/twiki/bin/view/CMSPublic/SWGuideCmsDriverEras
64  #
65  """
66  # common customisation
67  process = customisePostLS1_Common(process)
68 
69  # 25ns specific customisation
70  if hasattr(process,'digitisation_step'):
71  process = customise_Digi_25ns(process)
72  if hasattr(process,'dqmoffline_step'):
73  process = customise_DQM_25ns(process)
74 
75  return process
76 
77 
79 
80  # common customisations
81  process = customisePostLS1_Common(process)
82 
83  # 50ns specific customisation
84  if hasattr(process,'digitisation_step'):
85  process = customise_Digi_50ns(process)
86 
87  return process
88 
89 
90 def customisePostLS1_50ns(process,displayDeprecationWarning=True):
91  if displayDeprecationWarning :
92  print """
93  #
94  # -- Warning! You are using a deprecated customisation function. --
95  #
96  # It will probably run fine, but the customisations you are getting may be out of date.
97  # You should update your configuration file by
98  # If using cmsDriver:
99  # 1) remove the "--customise SLHCUpgradeSimulations/Configuration/postLS1Customs.customisePostLS1_50ns" option
100  # 2) add the option "--era Run2_50ns"
101  # If using a pre-made configuration file:
102  # 1) remove or comment out the "process = customisePostLS1_50ns(process)" line.
103  # 2) add "from Configuration.StandardSequences.Eras import eras" to the TOP of the config file (above
104  # the process declaration).
105  # 3) add "eras.Run2_50ns" as a parameter to the process object, e.g. "process = cms.Process('HLT',eras.Run2_50ns)"
106  #
107  # There is more information at https://twiki.cern.ch/twiki/bin/view/CMSPublic/SWGuideCmsDriverEras
108  #
109  """
110 
111  # common customisations
112  process = customisePostLS1_Common(process)
113 
114  # 50ns specific customisation
115  if hasattr(process,'digitisation_step'):
116  process = customise_Digi_50ns(process)
117 
118  return process
119 
120 
121 def customisePostLS1_HI(process,displayDeprecationWarning=True):
122  if displayDeprecationWarning :
123  print """
124  #
125  # -- Warning! You are using a deprecated customisation function. --
126  #
127  # It will probably run fine, but the customisations you are getting may be out of date.
128  # You should update your configuration file by
129  # If using cmsDriver:
130  # 1) remove the "--customise SLHCUpgradeSimulations/Configuration/postLS1Customs.customisePostLS1_HI" option
131  # 2) add the option "--era Run2_HI"
132  # If using a pre-made configuration file:
133  # 1) remove or comment out the "process = customisePostLS1_HI(process)" line.
134  # 2) add "from Configuration.StandardSequences.Eras import eras" to the TOP of the config file (above
135  # the process declaration).
136  # 3) add "eras.Run2_HI" as a parameter to the process object, e.g. "process = cms.Process('HLT',eras.Run2_HI)"
137  #
138  # There is more information at https://twiki.cern.ch/twiki/bin/view/CMSPublic/SWGuideCmsDriverEras
139  #
140  """
141 
142  # common customisation
143  process = customisePostLS1_Common(process)
144 
145  # HI Specific additional customizations:
146  from L1Trigger.L1TCommon.customsPostLS1 import customiseSimL1EmulatorForPostLS1_Additional_HI
148 
149  # HI L1Menu:
150  #from L1Trigger.Configuration.customise_overwriteL1Menu import L1Menu_CollisionsHeavyIons2015_v0
151  #process = L1Menu_CollisionsHeavyIons2015_v0(process)
152 
153  return process
154 
155 def customisePostLS1_B0T(process):
156  # 50ns only
157 
158  process=customisePostLS1_50ns(process)
159  process=customiseForRunI(process)
160 
161  return process
162 
164  # 50ns only
165 
166  process=customisePostLS1_lowPU(process)
167  process=customiseForRunI(process)
168 
169  return process
170 
171 
172 def digiEventContent(process):
173  #extend the event content
174 
175  alist=['RAWDEBUG','FEVTDEBUG','FEVTDEBUGHLT','GENRAW','RAWSIMHLT','FEVT']
176  for a in alist:
177  b = a + 'output'
178  if hasattr(process,b):
179  getattr(process,b).outputCommands.append('keep *_simMuonCSCDigis_*_*')
180  getattr(process,b).outputCommands.append('keep *_simMuonRPCDigis_*_*')
181  getattr(process,b).outputCommands.append('keep *_simHcalUnsuppressedDigis_*_*')
182 
183  return process
184 
185 
186 def customise_DQM(process):
187  #process.dqmoffline_step.remove(process.jetMETAnalyzer)
188  # Turn off flag of gangedME11a
189  process.l1tCsctf.gangedME11a = cms.untracked.bool(False)
190  # Turn off "low bias voltage" region in HCAL noise filters
191  if hasattr(process,'HBHENoiseFilterResultProducer'):
192  process.HBHENoiseFilterResultProducer.IgnoreTS4TS5ifJetInLowBVRegion = cms.bool(False)
193  return process
194 
195 
196 def customise_DQM_25ns(process):
197  #Empty place-holder
198  # Switch to Stage1 Digi
199  process.load("L1Trigger.L1TCommon.l1tRawToDigi_cfi")
200  process.load("L1Trigger.L1TCommon.caloStage1LegacyFormatDigis_cfi")
201  if hasattr(process, 'RawToDigi'):
202  process.L1RawToDigiSeq = cms.Sequence(process.gctDigis+process.caloStage1Digis+process.caloStage1LegacyFormatDigis)
203  process.RawToDigi.replace(process.gctDigis, process.L1RawToDigiSeq)
204 
205  process.load('DQMOffline.L1Trigger.L1TriggerDqmOffline_cff')
206  if hasattr(process, 'l1tMonitorStage1Online'):
207  process.l1tRct.rctSource = 'caloStage1Digis'
208  process.l1tRctfromRCT.rctSource = 'rctDigis'
209  process.l1tPUM.regionSource = cms.InputTag("rctDigis")
210  process.l1tStage1Layer2.stage1_layer2_ = cms.bool(True)
211  process.l1tStage1Layer2.gctCentralJetsSource = cms.InputTag("caloStage1LegacyFormatDigis","cenJets")
212  process.l1tStage1Layer2.gctForwardJetsSource = cms.InputTag("caloStage1LegacyFormatDigis","forJets")
213  process.l1tStage1Layer2.gctTauJetsSource = cms.InputTag("caloStage1LegacyFormatDigis","tauJets")
214  process.l1tStage1Layer2.gctIsoTauJetsSource = cms.InputTag("caloStage1LegacyFormatDigis","isoTauJets")
215  process.l1tStage1Layer2.gctEnergySumsSource = cms.InputTag("caloStage1LegacyFormatDigis")
216  process.l1tStage1Layer2.gctIsoEmSource = cms.InputTag("caloStage1LegacyFormatDigis","isoEm")
217  process.l1tStage1Layer2.gctNonIsoEmSource = cms.InputTag("caloStage1LegacyFormatDigis","nonIsoEm")
218  process.dqmL1ExtraParticlesStage1.etTotalSource = 'caloStage1LegacyFormatDigis'
219  process.dqmL1ExtraParticlesStage1.nonIsolatedEmSource = 'caloStage1LegacyFormatDigis:nonIsoEm'
220  process.dqmL1ExtraParticlesStage1.etMissSource = 'caloStage1LegacyFormatDigis'
221  process.dqmL1ExtraParticlesStage1.htMissSource = 'caloStage1LegacyFormatDigis'
222  process.dqmL1ExtraParticlesStage1.forwardJetSource = 'caloStage1LegacyFormatDigis:forJets'
223  process.dqmL1ExtraParticlesStage1.centralJetSource = 'caloStage1LegacyFormatDigis:cenJets'
224  process.dqmL1ExtraParticlesStage1.tauJetSource = 'caloStage1LegacyFormatDigis:tauJets'
225  process.dqmL1ExtraParticlesStage1.isolatedEmSource = 'caloStage1LegacyFormatDigis:isoEm'
226  process.dqmL1ExtraParticlesStage1.etHadSource = 'caloStage1LegacyFormatDigis'
227  process.dqmL1ExtraParticlesStage1.hfRingEtSumsSource = 'caloStage1LegacyFormatDigis'
228  process.dqmL1ExtraParticlesStage1.hfRingBitCountsSource = 'caloStage1LegacyFormatDigis'
229  process.l1ExtraDQMStage1.stage1_layer2_ = cms.bool(True)
230  process.l1ExtraDQMStage1.L1ExtraIsoTauJetSource_ = cms.InputTag("dqmL1ExtraParticlesStage1", "IsoTau")
231 
232  if hasattr(process, 'l1Stage1HwValEmulatorMonitor'):
233  process.l1TdeRCT.rctSourceData = 'caloStage1Digis'
234  process.l1TdeRCTfromRCT.rctSourceData = 'rctDigis'
235  process.l1compareforstage1.GCTsourceData = cms.InputTag("caloStage1LegacyFormatDigis")
236  process.l1compareforstage1.GCTsourceEmul = cms.InputTag("valCaloStage1LegacyFormatDigis")
237  process.l1compareforstage1.stage1_layer2_ = cms.bool(True)
238  process.valStage1GtDigis.GctInputTag = 'caloStage1LegacyFormatDigis'
239 
240  return process
241 
242 
243 def customise_Validation(process):
244  #process.validation_step.remove(process.PixelTrackingRecHitsValid)
245  # We don't run the HLT
246  #process.validation_step.remove(process.HLTSusyExoVal)
247  #process.validation_step.remove(process.hltHiggsValidator)
248  return process
249 
250 
251 def customise_Sim(process):
252  # enable 2015 HF shower library
253  process.g4SimHits.HFShowerLibrary.FileName = 'SimG4CMS/Calo/data/HFShowerLibrary_npmt_noatt_eta4_16en_v3.root'
254  return process
255 
257  process = digiEventContent(process)
258  if hasattr(process,'mix') and hasattr(process.mix,'digitizers'):
259  if hasattr(process.mix.digitizers,'hcal') and hasattr(process.mix.digitizers.hcal,'ho'):
260  process.mix.digitizers.hcal.ho.photoelectronsToAnalog = cms.vdouble([4.0]*16)
261  process.mix.digitizers.hcal.ho.siPMCode = cms.int32(1)
262  process.mix.digitizers.hcal.ho.pixels = cms.int32(2500)
263  process.mix.digitizers.hcal.ho.doSiPMSmearing = cms.bool(False)
264  if hasattr(process.mix.digitizers,'hcal') and hasattr(process.mix.digitizers.hcal,'hf1'):
265  process.mix.digitizers.hcal.hf1.samplingFactor = cms.double(0.60)
266  if hasattr(process.mix.digitizers,'hcal') and hasattr(process.mix.digitizers.hcal,'hf2'):
267  process.mix.digitizers.hcal.hf2.samplingFactor = cms.double(0.60)
268  return process
269 
270 def customise_DataMix(process):
271  if hasattr(process,'mixData'):
272  if hasattr(process.mixData,'ho'):
273  process.mixData.ho.photoelectronsToAnalog = cms.vdouble([4.0]*16)
274  process.mixData.ho.siPMCode = cms.int32(1)
275  process.mixData.ho.pixels = cms.int32(2500)
276  process.mixData.ho.doSiPMSmearing = cms.bool(False)
277  if hasattr(process.mixData,'hf1'):
278  process.mixData.hf1.samplingFactor = cms.double(0.60)
279  if hasattr(process.mixData,'hf2'):
280  process.mixData.hf2.samplingFactor = cms.double(0.60)
281  return process
282 
283 
284 def customise_Digi_50ns(process):
285  if hasattr(process,'mix') and hasattr(process.mix,'digitizers'):
286  if hasattr(process.mix.digitizers,'pixel'):
287  # pixel dynamic inefficency - 13TeV - 50ns case
288  process.mix.digitizers.pixel.theInstLumiScaleFactor = cms.double(246.4)
289  process.mix.digitizers.pixel.theLadderEfficiency_BPix1 = cms.vdouble(
290  0.979259,
291  0.976677,
292  0.979259,
293  0.976677,
294  0.979259,
295  0.976677,
296  0.979259,
297  0.976677,
298  0.979259,
299  0.976677,
300  0.979259,
301  0.976677,
302  0.979259,
303  0.976677,
304  0.979259,
305  0.976677,
306  0.979259,
307  0.976677,
308  0.979259,
309  0.976677,
310  )
311  process.mix.digitizers.pixel.theLadderEfficiency_BPix2 = cms.vdouble(
312  0.994321,
313  0.993944,
314  0.994321,
315  0.993944,
316  0.994321,
317  0.993944,
318  0.994321,
319  0.993944,
320  0.994321,
321  0.993944,
322  0.994321,
323  0.993944,
324  0.994321,
325  0.993944,
326  0.994321,
327  0.993944,
328  0.994321,
329  0.993944,
330  0.994321,
331  0.993944,
332  0.994321,
333  0.993944,
334  0.994321,
335  0.993944,
336  0.994321,
337  0.993944,
338  0.994321,
339  0.993944,
340  0.994321,
341  0.993944,
342  0.994321,
343  0.993944,
344  )
345  process.mix.digitizers.pixel.theLadderEfficiency_BPix3 = cms.vdouble(
346  0.996787,
347  0.996945,
348  0.996787,
349  0.996945,
350  0.996787,
351  0.996945,
352  0.996787,
353  0.996945,
354  0.996787,
355  0.996945,
356  0.996787,
357  0.996945,
358  0.996787,
359  0.996945,
360  0.996787,
361  0.996945,
362  0.996787,
363  0.996945,
364  0.996787,
365  0.996945,
366  0.996787,
367  0.996945,
368  0.996787,
369  0.996945,
370  0.996787,
371  0.996945,
372  0.996787,
373  0.996945,
374  0.996787,
375  0.996945,
376  0.996787,
377  0.996945,
378  0.996787,
379  0.996945,
380  0.996787,
381  0.996945,
382  0.996787,
383  0.996945,
384  0.996787,
385  0.996945,
386  0.996787,
387  0.996945,
388  0.996787,
389  0.996945,
390  )
391  if hasattr(process,'mixData'):
392  # pixel dynamic inefficency - 13TeV - 50ns case
393  process.mixData.theInstLumiScaleFactor = cms.double(246.4)
394  process.mixData.theLadderEfficiency_BPix1 = cms.vdouble(
395  0.979259,
396  0.976677,
397  0.979259,
398  0.976677,
399  0.979259,
400  0.976677,
401  0.979259,
402  0.976677,
403  0.979259,
404  0.976677,
405  0.979259,
406  0.976677,
407  0.979259,
408  0.976677,
409  0.979259,
410  0.976677,
411  0.979259,
412  0.976677,
413  0.979259,
414  0.976677,
415  )
416  process.mixData.theLadderEfficiency_BPix2 = cms.vdouble(
417  0.994321,
418  0.993944,
419  0.994321,
420  0.993944,
421  0.994321,
422  0.993944,
423  0.994321,
424  0.993944,
425  0.994321,
426  0.993944,
427  0.994321,
428  0.993944,
429  0.994321,
430  0.993944,
431  0.994321,
432  0.993944,
433  0.994321,
434  0.993944,
435  0.994321,
436  0.993944,
437  0.994321,
438  0.993944,
439  0.994321,
440  0.993944,
441  0.994321,
442  0.993944,
443  0.994321,
444  0.993944,
445  0.994321,
446  0.993944,
447  0.994321,
448  0.993944,
449  )
450  process.mixData.theLadderEfficiency_BPix3 = cms.vdouble(
451  0.996787,
452  0.996945,
453  0.996787,
454  0.996945,
455  0.996787,
456  0.996945,
457  0.996787,
458  0.996945,
459  0.996787,
460  0.996945,
461  0.996787,
462  0.996945,
463  0.996787,
464  0.996945,
465  0.996787,
466  0.996945,
467  0.996787,
468  0.996945,
469  0.996787,
470  0.996945,
471  0.996787,
472  0.996945,
473  0.996787,
474  0.996945,
475  0.996787,
476  0.996945,
477  0.996787,
478  0.996945,
479  0.996787,
480  0.996945,
481  0.996787,
482  0.996945,
483  0.996787,
484  0.996945,
485  0.996787,
486  0.996945,
487  0.996787,
488  0.996945,
489  0.996787,
490  0.996945,
491  0.996787,
492  0.996945,
493  0.996787,
494  0.996945,
495  )
496  return process
497 
498 
499 def customise_Digi_25ns(process):
500  if hasattr(process,'mix') and hasattr(process.mix,'digitizers'):
501  if hasattr(process.mix.digitizers,'pixel'):
502  # pixel dynamic inefficency - 13TeV - 25ns case
503  process.mix.digitizers.pixel.theInstLumiScaleFactor = cms.double(364)
504  process.mix.digitizers.pixel.theLadderEfficiency_BPix1 = cms.vdouble(
505  1,
506  1,
507  1,
508  1,
509  1,
510  1,
511  1,
512  1,
513  1,
514  1,
515  1,
516  1,
517  1,
518  1,
519  1,
520  1,
521  1,
522  1,
523  1,
524  1,
525  )
526  process.mix.digitizers.pixel.theLadderEfficiency_BPix2 = cms.vdouble(
527  1,
528  1,
529  1,
530  1,
531  1,
532  1,
533  1,
534  1,
535  1,
536  1,
537  1,
538  1,
539  1,
540  1,
541  1,
542  1,
543  1,
544  1,
545  1,
546  1,
547  1,
548  1,
549  1,
550  1,
551  1,
552  1,
553  1,
554  1,
555  1,
556  1,
557  1,
558  1,
559  )
560  process.mix.digitizers.pixel.theLadderEfficiency_BPix3 = cms.vdouble(
561  1,
562  1,
563  1,
564  1,
565  1,
566  1,
567  1,
568  1,
569  1,
570  1,
571  1,
572  1,
573  1,
574  1,
575  1,
576  1,
577  1,
578  1,
579  1,
580  1,
581  1,
582  1,
583  1,
584  1,
585  1,
586  1,
587  1,
588  1,
589  1,
590  1,
591  1,
592  1,
593  1,
594  1,
595  1,
596  1,
597  1,
598  1,
599  1,
600  1,
601  1,
602  1,
603  1,
604  1,
605  )
606  process.mix.digitizers.pixel.theModuleEfficiency_BPix1 = cms.vdouble(
607  1,
608  1,
609  1,
610  1,
611  )
612  process.mix.digitizers.pixel.theModuleEfficiency_BPix2 = cms.vdouble(
613  1,
614  1,
615  1,
616  1,
617  )
618  process.mix.digitizers.pixel.theModuleEfficiency_BPix3 = cms.vdouble(
619  1,
620  1,
621  1,
622  1,
623  )
624  process.mix.digitizers.pixel.thePUEfficiency_BPix1 = cms.vdouble(
625  1.00023,
626  -3.18350e-06,
627  5.08503e-10,
628  -6.79785e-14,
629  )
630  process.mix.digitizers.pixel.thePUEfficiency_BPix2 = cms.vdouble(
631  9.99974e-01,
632  -8.91313e-07,
633  5.29196e-12,
634  -2.28725e-15,
635  )
636  process.mix.digitizers.pixel.thePUEfficiency_BPix3 = cms.vdouble(
637  1.00005,
638  -6.59249e-07,
639  2.75277e-11,
640  -1.62683e-15,
641  )
642  if hasattr(process,'mixData'):
643  # pixel dynamic inefficency - 13TeV - 25ns case
644  process.mixData.theInstLumiScaleFactor = cms.double(364)
645  process.mixData.theLadderEfficiency_BPix1 = cms.vdouble(
646  1,
647  1,
648  1,
649  1,
650  1,
651  1,
652  1,
653  1,
654  1,
655  1,
656  1,
657  1,
658  1,
659  1,
660  1,
661  1,
662  1,
663  1,
664  1,
665  1,
666  )
667  process.mixData.theLadderEfficiency_BPix2 = cms.vdouble(
668  1,
669  1,
670  1,
671  1,
672  1,
673  1,
674  1,
675  1,
676  1,
677  1,
678  1,
679  1,
680  1,
681  1,
682  1,
683  1,
684  1,
685  1,
686  1,
687  1,
688  1,
689  1,
690  1,
691  1,
692  1,
693  1,
694  1,
695  1,
696  1,
697  1,
698  1,
699  1,
700  )
701  process.mixData.theLadderEfficiency_BPix3 = cms.vdouble(
702  1,
703  1,
704  1,
705  1,
706  1,
707  1,
708  1,
709  1,
710  1,
711  1,
712  1,
713  1,
714  1,
715  1,
716  1,
717  1,
718  1,
719  1,
720  1,
721  1,
722  1,
723  1,
724  1,
725  1,
726  1,
727  1,
728  1,
729  1,
730  1,
731  1,
732  1,
733  1,
734  1,
735  1,
736  1,
737  1,
738  1,
739  1,
740  1,
741  1,
742  1,
743  1,
744  1,
745  1,
746  )
747  process.mixData.theModuleEfficiency_BPix1 = cms.vdouble(
748  1,
749  1,
750  1,
751  1,
752  )
753  process.mixData.theModuleEfficiency_BPix2 = cms.vdouble(
754  1,
755  1,
756  1,
757  1,
758  )
759  process.mixData.theModuleEfficiency_BPix3 = cms.vdouble(
760  1,
761  1,
762  1,
763  1,
764  )
765  process.mixData.thePUEfficiency_BPix1 = cms.vdouble(
766  1.00023,
767  -3.18350e-06,
768  5.08503e-10,
769  -6.79785e-14,
770  )
771  process.mixData.thePUEfficiency_BPix2 = cms.vdouble(
772  9.99974e-01,
773  -8.91313e-07,
774  5.29196e-12,
775  -2.28725e-15,
776  )
777  process.mixData.thePUEfficiency_BPix3 = cms.vdouble(
778  1.00005,
779  -6.59249e-07,
780  2.75277e-11,
781  -1.62683e-15,
782  )
783  return process
784 
785 
786 def customise_L1Emulator(process):
787  return process
788 
789 
790 def customise_RawToDigi(process):
791  if hasattr(process,'gtEvmDigis'):
792  process.RawToDigi.remove(process.gtEvmDigis)
793  return process
794 
795 
796 def customise_DigiToRaw(process):
797  return process
798 
799 
800 def customise_HLT(process):
801  return process
802 
803 
804 def customise_Reco(process):
805  #lowering HO threshold with SiPM
806  if hasattr(process,'particleFlowRecHitHO'):
807  for prod in process.particleFlowRecHitHO.producers:
808  prod.qualityTests = cms.VPSet(
809  cms.PSet(
810  name = cms.string("PFRecHitQTestThreshold"),
811  threshold = cms.double(0.05) # new threshold for SiPM HO
812  ),
813  cms.PSet(
814  name = cms.string("PFRecHitQTestHCALChannel"),
815  maxSeverities = cms.vint32(11),
816  cleaningThresholds = cms.vdouble(0.0),
817  flags = cms.vstring('Standard')
818  )
819  )
820 
821  #Lower Thresholds also for Clusters!!!
822 
823  for p in process.particleFlowClusterHO.seedFinder.thresholdsByDetector:
824  p.seedingThreshold = cms.double(0.08)
825 
826  for p in process.particleFlowClusterHO.initialClusteringStep.thresholdsByDetector:
827  p.gatheringThreshold = cms.double(0.05)
828 
829  for p in process.particleFlowClusterHO.pfClusterBuilder.recHitEnergyNorms:
830  p.recHitEnergyNorm = cms.double(0.05)
831 
832  process.particleFlowClusterHO.pfClusterBuilder.positionCalc.logWeightDenominator = cms.double(0.05)
833  process.particleFlowClusterHO.pfClusterBuilder.allCellsPositionCalc.logWeightDenominator = cms.double(0.05)
834 
835  # Muon reconstruction do not exclude bad chambers
836  if hasattr(process, 'muonDetIdAssociator'):
837  process.muonDetIdAssociator.includeBadChambers = cms.bool(True)
838 
839  return process
840 
841 
842 def customise_harvesting(process):
843  #process.dqmHarvesting.remove(process.dataCertificationJetMET)
844  #process.dqmHarvesting.remove(process.sipixelEDAClient)
845  #process.dqmHarvesting.remove(process.sipixelCertification)
846  return (process)
847 
848 
849 def recoOutputCustoms(process):
850 
851  alist=['AODSIM','RECOSIM','FEVTSIM','FEVTDEBUG','FEVTDEBUGHLT','RECODEBUG','RAWRECOSIMHLT','RAWRECODEBUGHLT']
852  for a in alist:
853  b = a + 'output'
854  if hasattr(process,b):
855  getattr(process,b).outputCommands.append('keep *_simMuonCSCDigis_*_*')
856  getattr(process,b).outputCommands.append('keep *_simMuonRPCDigis_*_*')
857  getattr(process,b).outputCommands.append('keep *_simHcalUnsuppressedDigis_*_*')
858  getattr(process,b).outputCommands.append('keep *_rawDataCollector_*_*')
859  return process
def customisePostLS1_lowPU
def customisePostLS1_Common
def customiseSimL1EmulatorForPostLS1_Additional_HI
def customiseSimL1EmulatorForStage1
def customise_csc_PostLS1
Definition: muonCustoms.py:233
def customise_fastSimPostLS1
def customisePostLS1_B0T_lowPU