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