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