CMS 3D CMS Logo

RecoTLR.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 ##############################################################################
4 # common utilities
5 ##############################################################################
7  from RecoVertex.BeamSpotProducer.BeamSpotOnline_cfi import onlineBeamSpotProducer
8  process.offlineBeamSpot = onlineBeamSpotProducer.clone()
9  return process
10 
11 def _addLumiProducer(process):
12  if not hasattr(process,'lumiProducer'):
13  #unscheduled..
14  from RecoLuminosity.LumiProducer.lumiProducer_cff import lumiProducer,LumiDBService
15  process.lumiProducer=lumiProducer
16  #if it's scheduled
17  if hasattr(process, 'reconstruction_step'):
18  process.reconstruction_step+=process.lumiProducer
19 
20  return process
21 
22 def _overridesFor50ns(process):
23  process.bunchSpacingProducer.bunchSpacingOverride = cms.uint32(50)
24  process.bunchSpacingProducer.overrideBunchSpacing = cms.bool(True)
25 
26  return process
27 
28 ##############################################################################
29 # post-era customizations
30 # these are here instead of generating Data-specific eras
31 ##############################################################################
32 def _hcalCustoms25ns(process):
33  import RecoLocalCalo.HcalRecAlgos.RemoveAddSevLevel as HcalRemoveAddSevLevel
34  HcalRemoveAddSevLevel.AddFlag(process.hcalRecAlgos,"HFDigiTime",8)
35  HcalRemoveAddSevLevel.AddFlag(process.hcalRecAlgos,"HBHEFlatNoise",8)
36  return process
37 
39  _hcalCustoms25ns(process)
40  return process
41 
43  _hcalCustoms25ns(process)
44  return process
45 
47  import RecoLocalCalo.HcalRecAlgos.RemoveAddSevLevel as HcalRemoveAddSevLevel
48  HcalRemoveAddSevLevel.AddFlag(process.hcalRecAlgos,"HBHEFlatNoise",8)
49  HcalRemoveAddSevLevel.RemoveFlag(process.hcalRecAlgos,"HFDigiTime")
50  return process
51 
54  from Calibration.TkAlCaRecoProducers.PCLHPbeamspot_custom import customise_HPbeamspot as _customise_HPbeamspot
55  _customise_HPbeamspot(process)
56  return process
57 
59  from Calibration.TkAlCaRecoProducers.PCLHPbeamspot_custom import customise_HPbeamspot as _customise_HPbeamspot
60  _customise_HPbeamspot(process)
61  return process
62 
65  return process
66 
67 ##############################################################################
68 def customisePPData(process):
69  #deprecated process= customiseCommon(process)
70  ##all customisation for data are now deprecated to Reconstruction_Data_cff
71  #left as a place holder to alter production sequences in case of emergencies
72  return process
73 
74 
75 ##############################################################################
76 def customisePPMC(process):
77  #deprecated process=customiseCommon(process)
78  #left as a place holder to alter production sequences in case of emergencies
79  return process
80 
81 ##############################################################################
82 def customiseCosmicData(process):
83  return process
84 
85 
86 ##############################################################################
87 def customiseCosmicMC(process):
88  return process
89 
90 ##############################################################################
91 def customiseVALSKIM(process):
92  print "WARNING"
93  print "this method is outdated, please use RecoTLR.customisePPData"
94  process= customisePPData(process)
95  return process
96 
97 
98 ##############################################################################
99 def customiseExpress(process):
100  process= customisePPData(process)
101  process = _swapOfflineBSwithOnline(process)
102  return process
103 
104 ##############################################################################
105 def customisePrompt(process):
106  process= customisePPData(process)
107  process = _addLumiProducer(process)
108 
109  return process
110 
111 ##############################################################################
112 # Heavy Ions
113 ##############################################################################
114 # keep it in case modification is needed
115 def customiseCommonHI(process):
116  return process
117 
118 ##############################################################################
119 def customiseExpressHI(process):
120  process = customiseCommonHI(process)
121  process = _swapOfflineBSwithOnline(process)
122 
123  return process
124 
125 ##############################################################################
126 def customisePromptHI(process):
127  process = customiseCommonHI(process)
128 
129  process = _addLumiProducer(process)
130 
131  return process
132 
133 ##############################################################################
134 ##############################################################################
135 
142  from SLHCUpgradeSimulations.Configuration.muonCustoms import unganged_me1a_geometry,customise_csc_LocalReco
143  process = unganged_me1a_geometry(process)
144  process = customise_csc_LocalReco(process)
145 
146  if hasattr(process,'valCscTriggerPrimitiveDigis'):
147  #this is not doing anything at the moment
148  process.valCscTriggerPrimitiveDigis.commonParam.gangedME1a = cms.bool(False)
149  if hasattr(process,'valCsctfTrackDigis'):
150  process.valCsctfTrackDigis.gangedME1a = cms.untracked.bool(False)
151 
152  from SLHCUpgradeSimulations.Configuration.postLS1Customs import customise_Reco,customise_RawToDigi,customise_DQM
153  if hasattr(process,'RawToDigi'):
154  process=customise_RawToDigi(process)
155  if hasattr(process,'reconstruction'):
156  process=customise_Reco(process)
157  if hasattr(process,'dqmoffline_step'):
158  process=customise_DQM(process)
159 
160  return process
161 
162 # add stage1
164  process = customiseDataRun2Common(process)
165 
166  from L1Trigger.L1TCommon.customsPostLS1 import customiseL1RecoForStage1
167  process=customiseL1RecoForStage1(process)
168 
169  return process
170 
171 ##############################################################################
172 # common+ "25ns" Use this for data daking starting from runs in 2015C (>= 253256 )
174  process = customiseDataRun2Common_withStage1(process)
175 
176  _hcalCustoms25ns(process)
177 
178  from SLHCUpgradeSimulations.Configuration.postLS1Customs import customise_DQM_25ns
179  if hasattr(process,'dqmoffline_step'):
180  process=customise_DQM_25ns(process)
181  return process
182 
183 # common+50ns. Needed only for runs >= 253000 if taken with 50ns
185  process = customiseDataRun2Common_withStage1(process)
186 
187  process = _overridesFor50ns(process)
188 
189  return process
190 
191 ##############################################################################
192 # keep it in case modification is needed
194  process = customiseDataRun2Common_withStage1(process)
195 
196  process = _overridesFor50ns(process)
197  # HI Specific additional customizations:
198  # from L1Trigger.L1TCommon.customsPostLS1 import customiseSimL1EmulatorForPostLS1_Additional_HI
199  # process = customiseSimL1EmulatorForPostLS1_Additional_HI(process)
200 
201  return process
def customise_DQM_25ns(process)
def _overridesFor50ns(process)
Definition: RecoTLR.py:22
def customisePostEra_Run2_2017_pp_on_XeXe(process)
Definition: RecoTLR.py:63
def customise_DQM(process)
Definition: gemCustoms.py:36
def _hcalCustoms25ns(process)
post-era customizations these are here instead of generating Data-specific eras
Definition: RecoTLR.py:32
def customise_csc_LocalReco(process)
Definition: muonCustoms.py:207
def customiseCosmicData(process)
Definition: RecoTLR.py:82
def customise_Reco(process)
Definition: gemCustoms.py:33
def customiseVALSKIM(process)
Definition: RecoTLR.py:91
def customisePPMC(process)
Definition: RecoTLR.py:76
def customiseExpressHI(process)
Definition: RecoTLR.py:119
def _addLumiProducer(process)
Definition: RecoTLR.py:11
def customise_RawToDigi(process)
Definition: gemCustoms.py:30
def customiseRun2CommonHI(process)
keep it in case modification is needed
Definition: RecoTLR.py:193
def customiseDataRun2Common(process)
ALL FUNCTIONS BELOW ARE GOING TO BE REMOVED IN 81X.
Definition: RecoTLR.py:141
def customisePostEra_Run2_2017_express_trackingOnly(process)
Definition: RecoTLR.py:52
def customisePostEra_Run2_2017(process)
Definition: RecoTLR.py:46
def customisePromptHI(process)
Definition: RecoTLR.py:126
def customisePrompt(process)
Definition: RecoTLR.py:105
def customiseDataRun2Common_25ns(process)
common+ "25ns" Use this for data daking starting from runs in 2015C (>= 253256 )
Definition: RecoTLR.py:173
def customiseExpress(process)
Definition: RecoTLR.py:99
def customisePostEra_Run2_25ns(process)
Definition: RecoTLR.py:38
def unganged_me1a_geometry(process)
Definition: muonCustoms.py:4
def customiseDataRun2Common_50nsRunsAfter253000(process)
Definition: RecoTLR.py:184
def customisePostEra_Run2_2017_harvesting_trackingOnly(process)
Definition: RecoTLR.py:58
def customisePPData(process)
Definition: RecoTLR.py:68
def customiseDataRun2Common_withStage1(process)
Definition: RecoTLR.py:163
def customiseL1RecoForStage1(process)
def customiseCosmicMC(process)
Definition: RecoTLR.py:87
def _swapOfflineBSwithOnline(process)
common utilities
Definition: RecoTLR.py:6
def customisePostEra_Run2_2016(process)
Definition: RecoTLR.py:42
def customiseCommonHI(process)
Heavy Ions.
Definition: RecoTLR.py:115