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 
69  return process
70 
71 # 2018 equivalents
73  #start with a repeat of 2017
75  return process
76 
78  #start with a repeat of 2017
80  return process
81 
83  #start with a repeat of 2017
85  return process
86 
89  return process
90 
93  return process
94 
95 
96 
97 ##############################################################################
98 def customisePPData(process):
99  #deprecated process= customiseCommon(process)
100  ##all customisation for data are now deprecated to Reconstruction_Data_cff
101  #left as a place holder to alter production sequences in case of emergencies
102  return process
103 
104 
105 ##############################################################################
106 def customisePPMC(process):
107  #deprecated process=customiseCommon(process)
108  #left as a place holder to alter production sequences in case of emergencies
109  return process
110 
111 ##############################################################################
112 def customiseCosmicData(process):
113  return process
114 
115 
116 ##############################################################################
117 def customiseCosmicMC(process):
118  return process
119 
120 ##############################################################################
121 def customiseVALSKIM(process):
122  print "WARNING"
123  print "this method is outdated, please use RecoTLR.customisePPData"
124  process= customisePPData(process)
125  return process
126 
127 
128 ##############################################################################
129 def customiseExpress(process):
130  process= customisePPData(process)
131  process = _swapOfflineBSwithOnline(process)
132  return process
133 
134 ##############################################################################
135 def customisePrompt(process):
136  process= customisePPData(process)
137  process = _addLumiProducer(process)
138 
139  return process
140 
141 ##############################################################################
142 # Heavy Ions
143 ##############################################################################
144 # keep it in case modification is needed
145 def customiseCommonHI(process):
146  return process
147 
148 ##############################################################################
149 def customiseExpressHI(process):
150  process = customiseCommonHI(process)
151  process = _swapOfflineBSwithOnline(process)
152 
153  return process
154 
155 ##############################################################################
156 def customisePromptHI(process):
157  process = customiseCommonHI(process)
158 
159  process = _addLumiProducer(process)
160 
161  return process
162 
163 ##############################################################################
164 ##############################################################################
165 
172  from SLHCUpgradeSimulations.Configuration.muonCustoms import unganged_me1a_geometry,customise_csc_LocalReco
173  process = unganged_me1a_geometry(process)
174  process = customise_csc_LocalReco(process)
175 
176  if hasattr(process,'valCscTriggerPrimitiveDigis'):
177  #this is not doing anything at the moment
178  process.valCscTriggerPrimitiveDigis.commonParam.gangedME1a = cms.bool(False)
179  if hasattr(process,'valCsctfTrackDigis'):
180  process.valCsctfTrackDigis.gangedME1a = cms.untracked.bool(False)
181 
182  from SLHCUpgradeSimulations.Configuration.postLS1Customs import customise_Reco,customise_RawToDigi,customise_DQM
183  if hasattr(process,'RawToDigi'):
184  process=customise_RawToDigi(process)
185  if hasattr(process,'reconstruction'):
186  process=customise_Reco(process)
187  if hasattr(process,'dqmoffline_step'):
188  process=customise_DQM(process)
189 
190  return process
191 
192 # add stage1
194  process = customiseDataRun2Common(process)
195 
196  from L1Trigger.L1TCommon.customsPostLS1 import customiseL1RecoForStage1
197  process=customiseL1RecoForStage1(process)
198 
199  return process
200 
201 ##############################################################################
202 # common+ "25ns" Use this for data daking starting from runs in 2015C (>= 253256 )
204  process = customiseDataRun2Common_withStage1(process)
205 
206  _hcalCustoms25ns(process)
207 
208  from SLHCUpgradeSimulations.Configuration.postLS1Customs import customise_DQM_25ns
209  if hasattr(process,'dqmoffline_step'):
210  process=customise_DQM_25ns(process)
211  return process
212 
213 # common+50ns. Needed only for runs >= 253000 if taken with 50ns
215  process = customiseDataRun2Common_withStage1(process)
216 
217  process = _overridesFor50ns(process)
218 
219  return process
220 
221 ##############################################################################
222 # keep it in case modification is needed
224  process = customiseDataRun2Common_withStage1(process)
225 
226  process = _overridesFor50ns(process)
227  # HI Specific additional customizations:
228  # from L1Trigger.L1TCommon.customsPostLS1 import customiseSimL1EmulatorForPostLS1_Additional_HI
229  # process = customiseSimL1EmulatorForPostLS1_Additional_HI(process)
230 
231  return process
def customise_DQM_25ns(process)
def customisePostEra_Run2_2017_ppRef(process)
Definition: RecoTLR.py:67
def _overridesFor50ns(process)
Definition: RecoTLR.py:22
def customise_Reco(process)
def customisePostEra_Run2_2017_pp_on_XeXe(process)
Definition: RecoTLR.py:63
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:112
def customiseVALSKIM(process)
Definition: RecoTLR.py:121
def customisePPMC(process)
Definition: RecoTLR.py:106
def customiseExpressHI(process)
Definition: RecoTLR.py:149
def customisePostEra_Run2_2018_express_trackingOnly(process)
Definition: RecoTLR.py:77
def customise_DQM(process)
def _addLumiProducer(process)
Definition: RecoTLR.py:11
def customiseRun2CommonHI(process)
keep it in case modification is needed
Definition: RecoTLR.py:223
def customise_RawToDigi(process)
def customiseDataRun2Common(process)
ALL FUNCTIONS BELOW ARE GOING TO BE REMOVED IN 81X.
Definition: RecoTLR.py:171
def customisePostEra_Run2_2018_harvesting_trackingOnly(process)
Definition: RecoTLR.py:82
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:156
def customisePrompt(process)
Definition: RecoTLR.py:135
def customiseDataRun2Common_25ns(process)
common+ "25ns" Use this for data daking starting from runs in 2015C (>= 253256 )
Definition: RecoTLR.py:203
def customiseExpress(process)
Definition: RecoTLR.py:129
def customisePostEra_Run2_25ns(process)
Definition: RecoTLR.py:38
def customise_HI_PostEra_Run2_2018(process)
Definition: RecoTLR.py:87
def unganged_me1a_geometry(process)
Definition: muonCustoms.py:4
def customiseDataRun2Common_50nsRunsAfter253000(process)
Definition: RecoTLR.py:214
def customisePostEra_Run2_2017_harvesting_trackingOnly(process)
Definition: RecoTLR.py:58
def customisePPData(process)
Definition: RecoTLR.py:98
def customisePostEra_Run2_2018(process)
Definition: RecoTLR.py:72
def customiseDataRun2Common_withStage1(process)
Definition: RecoTLR.py:193
def customiseL1RecoForStage1(process)
def customisePostEra_Run2_2018_pp_on_AA(process)
Definition: RecoTLR.py:91
def customiseCosmicMC(process)
Definition: RecoTLR.py:117
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:145