CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
castor_dqm_sourceclient-live_cfg.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 process = cms.Process("CASTORDQM")
4 #=================================
5 # Event Source
6 #================================+
7 # for live online DQM in P5
8 process.load("DQM.Integration.config.inputsource_cfi")
9 
10 # for testing in lxplus
11 #process.load("DQM.Integration.config.fileinputsource_cfi")
12 
13 #================================
14 # DQM Environment
15 #================================
16 #process.DQMStore.referenceFileName = 'castor_reference.root'
17 
18 process.load("Configuration.StandardSequences.GeometryRecoDB_cff")
19 
20 process.load("DQM.Integration.config.environment_cfi")
21 process.dqmEnv.subSystemFolder = "Castor"
22 process.dqmSaver.tag = "Castor"
23 
24 process.load("FWCore.MessageLogger.MessageLogger_cfi")
25 
26 
27 #============================================
28 # Castor Conditions: from Global Conditions Tag
29 #============================================
30 process.load("CondCore.DBCommon.CondDBSetup_cfi")
31 process.load("CondCore.DBCommon.CondDBCommon_cfi")
32 
33 process.CastorDbProducer = cms.ESProducer("CastorDbProducer")
34 
35 ###process.es_pool = cms.ESSource(
36 ### "PoolDBESSource",
37 ### process.CondDBSetup,
38 ### timetype = cms.string('runnumber'),
39 ### connect = cms.string('frontier://(proxyurl=http://localhost:3128)(serverurl=http://localhost:8000/FrontierOnProd)(serverurl=http://localhost:8000/FrontierOn Prod)(retrieve-ziplevel=0)(failovertoserver=no)/CMS_COND_31X_HCAL'),
40 ### authenticationMethod = cms.untracked.uint32(0),
41 ### toGet = cms.VPSet(
42 ### cms.PSet(
43 ### record = cms.string('CastorPedestalsRcd'),
44 ### tag = cms.string('castor_pedestals_v1.0')
45 ### ),
46 ### cms.PSet(
47 ### record = cms.string('CastorPedestalWidthsRcd'),
48 ### tag = cms.string('castor_pedestalwidths_v1.0')
49 ### ),
50 ### cms.PSet(
51 ### record = cms.string('CastorGainsRcd'),
52 ### tag = cms.string('castor_gains_v1.0')
53 ### ),
54 ### cms.PSet(
55 ### record = cms.string('CastorGainWidthsRcd'),
56 ### tag = cms.string('castor_gainwidths_v1.0')
57 ### ),
58 ### cms.PSet(
59 ### record = cms.string('CastorQIEDataRcd'),
60 ### tag = cms.string('castor_qie_v1.0')
61 ### ),
62 ### cms.PSet(
63 ### record = cms.string('CastorChannelQualityRcd'),
64 ### tag = cms.string('castor_channelquality_v1.0')
65 ### ),
66 ### cms.PSet(
67 ### record = cms.string('CastorElectronicsMapRcd'),
68 ### tag = cms.string('castor_emap_dcc_v1.0')
69 ### )
70 ### )
71 ###)
72 
73 process.es_pool0 = cms.ESSource(
74  "PoolDBESSource",
75  process.CondDBSetup,
76  timetype = cms.string('runnumber'),
77  ###connect = cms.string('frontier://FrontierProd/CMS_COND_31X_HCAL'),
78  connect = cms.string('frontier://(proxyurl=http://localhost:3128)(serverurl=http://localhost:8000/FrontierOnProd)(serverurl=http://localhost:8000/FrontierOn Prod)(retrieve-ziplevel=0)(failovertoserver=no)/CMS_COND_31X_HCAL'),
79  authenticationMethod = cms.untracked.uint32(0),
80  toGet = cms.VPSet(
81  cms.PSet(
82  record = cms.string('CastorGainsRcd'),
83  tag = cms.string('CastorGains_v2.1_hlt') #all gains=1, corresponding to GR_P_V43D and CastorGains_v2.1_hlt in frontier://PromptProd/CMS_COND_31X_HCAL
84  )
85  )
86 )
87 
88 process.es_pool = cms.ESSource(
89  "PoolDBESSource",
90  process.CondDBSetup,
91  timetype = cms.string('runnumber'),
92  #connect = cms.string('frontier://cmsfrontier.cern.ch:8000/FrontierPrep/CMS_COND_30X_HCAL'),
93  #connect = cms.string('frontier://cmsfrontier.cern.ch:8000/FrontierProd/CMS_COND_31X_HCAL'),
94  ###connect = cms.string('frontier://FrontierProd/CMS_COND_HCAL_000'),
95  connect = cms.string('frontier://(proxyurl=http://localhost:3128)(serverurl=http://localhost:8000/FrontierOnProd)(serverurl=http://localhost:8000/FrontierOn Prod)(retrieve-ziplevel=0)(failovertoserver=no)/CMS_COND_HCAL_000'),
96  authenticationMethod = cms.untracked.uint32(0),
97  toGet = cms.VPSet(
98  cms.PSet(
99  record = cms.string('CastorSaturationCorrsRcd'),
100  tag = cms.string('CastorSaturationCorrs_v3.00_offline')
101  ),
102 #
103  cms.PSet(
104  record = cms.string('CastorPedestalsRcd'),
105  tag = cms.string('CastorPedestals_v3.00_offline')
106  ),
107 #
108  cms.PSet(
109  record = cms.string('CastorPedestalWidthsRcd'),
110  tag = cms.string('CastorPedestalWidths_v3.00_offline')
111  ),
112 #
113 # cms.PSet(
114 # record = cms.string('CastorGainsRcd'),
115 # tag = cms.string('CastorGains_v3.00_offline')
116 # ),
117 #
118  cms.PSet(
119  record = cms.string('CastorGainWidthsRcd'),
120  tag = cms.string('CastorGainWidths_v3.00_offline')
121  ),
122  cms.PSet(
123  record = cms.string('CastorQIEDataRcd'),
124  tag = cms.string('CastorQIEData_v3.00_offline')
125  ),
126  cms.PSet(
127  record = cms.string('CastorChannelQualityRcd'),
128  tag = cms.string('CastorChannelQuality_v3.00_offline')
129  ),
130  cms.PSet(
131  record = cms.string('CastorElectronicsMapRcd'),
132  tag = cms.string('CastorElectronicsMap_v3.00_offline')
133  )
134  )
135 )
136 
137 
138 #-----------------------------
139 # Castor DQM Source + SimpleReconstrctor
140 #-----------------------------
141 ###process.load("EventFilter.CastorRawToDigi.CastorRawToDigi_cfi")
142 ###process.load("RecoLocalCalo.CastorReco.CastorSimpleReconstructor_cfi")
143 process.castorreco = cms.EDProducer("CastorSimpleReconstructor",
144  correctionPhaseNS = cms.double(0.0),
145  digiLabel = cms.InputTag("castorDigis"),
146  samplesToAdd = cms.int32(10),
147  Subdetector = cms.string('CASTOR'),
148  firstSample = cms.int32(0),
149  correctForPhaseContainment = cms.bool(False),
150  correctForTimeslew = cms.bool(False),
151  tsFromDB = cms.bool(False), #True
152  setSaturationFlag = cms.bool(True),
153  maxADCvalue = cms.int32(127),
154  doSaturationCorr = cms.bool(False) #True
155 )
156 ###process.castorreco.tsFromDB = cms.untracked.bool(False)
157 process.load('RecoLocalCalo.Castor.Castor_cff') #castor tower and jet reconstruction
158 
159 ###process.castorDigis = cms.EDProducer("CastorRawToDigi",
160 ### CastorFirstFED = cms.untracked.int32(690),
161 ### FilterDataQuality = cms.bool(True),
162 ### ExceptionEmptyData = cms.untracked.bool(True),
163 ### InputLabel = cms.InputTag("source"),
164 ### UnpackCalib = cms.untracked.bool(False),
165 ### FEDs = cms.untracked.vint32(690,691,692),
166 ### lastSample = cms.int32(9),
167 ### firstSample = cms.int32(0)
168 ###)
169 
170 process.castorDigis = cms.EDProducer("CastorRawToDigi",
171  CastorFirstFED = cms.int32(690),
172  FilterDataQuality = cms.bool(True),
173  ExceptionEmptyData = cms.untracked.bool(True),
174  InputLabel = cms.InputTag("rawDataCollector"), #source #rawDataCollector
175  #UnpackCalib = cms.untracked.bool(False),
176  # castor technical trigger processor
177  UnpackTTP = cms.bool(True),
178  FEDs = cms.untracked.vint32(690,691,692),
179  lastSample = cms.int32(9),
180  firstSample = cms.int32(0),
181  CastorCtdc = cms.bool(False),
182  UseNominalOrbitMessageTime = cms.bool(True),
183  ExpectedOrbitMessageTime = cms.int32(-1)#,
184  # Do not complain about missing FEDs
185  #ComplainEmptyData = cms.untracked.bool(False),
186 )
187 
188 ###process.castorMonitor = cms.EDAnalyzer("CastorMonitorModule",
189 ### ### GLOBAL VARIABLES
190 ### debug = cms.untracked.int32(0), # make debug an int so that different
191 ### # values can trigger different levels of messaging
192 ### # Turn on/off timing diagnostic info
193 ### showTiming = cms.untracked.bool(False),
194 ### dump2database = cms.untracked.bool(False),
195 ### pedestalsInFC = cms.untracked.bool(False),
196 ###
197 ### # Define Labels
198 ### digiLabel = cms.InputTag("castorDigis"),
199 ### rawLabel = cms.InputTag("source"),
200 ### unpackerReportLabel = cms.InputTag("castorDigis"),
201 ### CastorRecHitLabel = cms.InputTag("castorreco"),
202 ### CastorTowerLabel = cms.InputTag("CastorTowerReco"),
203 ### CastorBasicJetsLabel = cms.InputTag("ak7BasicJets"),
204 ### CastorJetIDLabel = cms.InputTag("ak7CastorJetID"),
205 ###
206 ### DataIntMonitor= cms.untracked.bool(True),
207 ### TowerJetMonitor= cms.untracked.bool(False),
208 ###
209 ### DigiMonitor = cms.untracked.bool(True),
210 ### DigiPerChannel = cms.untracked.bool(True),
211 ### DigiInFC = cms.untracked.bool(False),
212 ###
213 ### RecHitMonitor = cms.untracked.bool(True),
214 ### RecHitsPerChannel = cms.untracked.bool(True),
215 ###
216 ### ChannelQualityMonitor= cms.untracked.bool(True),
217 ### nThreshold = cms.untracked.double(60),
218 ### dThreshold = cms.untracked.double(1.0),
219 ### OfflineMode = cms.untracked.bool(False),
220 ### averageEnergyMethod = cms.untracked.bool(True),
221 ###
222 ### PSMonitor= cms.untracked.bool(True),
223 ### numberSigma = cms.untracked.double(1.5),
224 ### thirdRegionThreshold = cms.untracked.double(999999.0), # to avoid empty cells in reportSummary
225 ### EDMonitor= cms.untracked.bool(True),
226 ### HIMonitor= cms.untracked.bool(True),
227 ###
228 ### diagnosticPrescaleTime = cms.untracked.int32(-1),
229 ### diagnosticPrescaleUpdate = cms.untracked.int32(-1),
230 ### diagnosticPrescaleLS = cms.untracked.int32(-1),
231 ###
232 ### LEDMonitor = cms.untracked.bool(True),
233 ### LEDPerChannel = cms.untracked.bool(True),
234 ### FirstSignalBin = cms.untracked.int32(0),
235 ### LastSignalBin = cms.untracked.int32(9),
236 ### LED_ADC_Thresh = cms.untracked.double(-1000.0)
237 ### )
238 
239 process.castorMonitor = cms.EDAnalyzer("CastorMonitorModule",
240  ### GLOBAL VARIABLES
241  debug = cms.untracked.int32(0), # make debug an int so that different
242  # values can trigger different levels of messaging
243  # 0 - no debug infomration
244  # 1 - Program flow in/out
245  # 2 - All major computations
246  # Turn on/off timing diagnostic info
247  showTiming = cms.untracked.bool(False),
248  dump2database = cms.untracked.bool(False),
249  pedestalsInFC = cms.untracked.bool(False),
250  # Define Labels
251  digiLabel = cms.InputTag("castorDigis"),
252  rawLabel = cms.InputTag("rawDataCollector"), #rawDataCollector #source
253  unpackerReportLabel = cms.InputTag("castorDigis"),
254  CastorRecHitLabel = cms.InputTag("castorreco"),
255  CastorTowerLabel = cms.InputTag("CastorTowerReco"),
256  CastorBasicJetsLabel = cms.InputTag("ak7CastorJets"),
257  CastorJetIDLabel = cms.InputTag("ak7CastorJetID"),
258  DataIntMonitor= cms.untracked.bool(True),
259  TowerJetMonitor= cms.untracked.bool(True),
260  DigiMonitor = cms.untracked.bool(True),
261  DigiPerChannel = cms.untracked.bool(True),
262  DigiInFC = cms.untracked.bool(False),
263  RecHitMonitor = cms.untracked.bool(True),
264  RecHitsPerChannel = cms.untracked.bool(True),
265  ChannelQualityMonitor= cms.untracked.bool(True),
266  nThreshold = cms.untracked.double(60),
267  dThreshold = cms.untracked.double(0.1),
268  OfflineMode = cms.untracked.bool(True),
269  averageEnergyMethod = cms.untracked.bool(True),
270  PSMonitor= cms.untracked.bool(True),
271  numberSigma = cms.untracked.double(1.5),
272  thirdRegionThreshold = cms.untracked.double(999999.0),
273  HIMonitor= cms.untracked.bool(True),
274  diagnosticPrescaleTime = cms.untracked.int32(-1),
275  diagnosticPrescaleUpdate = cms.untracked.int32(-1),
276  diagnosticPrescaleLS = cms.untracked.int32(-1),
277  LEDMonitor = cms.untracked.bool(True),
278  LEDPerChannel = cms.untracked.bool(True),
279  FirstSignalBin = cms.untracked.int32(0),
280  LastSignalBin = cms.untracked.int32(9),
281  LED_ADC_Thresh = cms.untracked.double(-1000.0)
282 )
283 
284 #-----------------------------
285 # Scheduling
286 #-----------------------------
287 process.options = cms.untracked.PSet(
288  Rethrow = cms.untracked.vstring('ProductNotFound',
289  'TooManyProducts',
290  'TooFewProducts')
291 )
292 
293 # castorDigis -> CastorRawToDigi_cfi
294 # castorreco -> CastorSimpleReconstructor_cfi
295 # castorMonitor -> CastorMonitorModule_cfi
296 
297 process.p = cms.Path(process.castorDigis*process.castorreco*process.castorMonitor*process.dqmEnv*process.dqmSaver)
298 #process.p = cms.Path(process.castorDigis*process.castorMonitor*process.dqmEnv*process.dqmSaver)
299 #process.p = cms.Path(process.castorMonitor*process.dqmEnv*process.dqmSaver)
300 
301 
302 process.castorDigis.InputLabel = cms.InputTag("rawDataCollector")
303 process.castorMonitor.rawLabel = cms.InputTag("rawDataCollector")
304 
305 #--------------------------------------------------
306 # Heavy Ion Specific Fed Raw Data Collection Label
307 #--------------------------------------------------
308 
309 print "Running with run type = ", process.runType.getRunTypeName()
310 
311 if (process.runType.getRunTypeName() == process.runType.hi_run):
312  process.castorDigis.InputLabel = cms.InputTag("rawDataRepacker")
313  process.castorMonitor.rawLabel = cms.InputTag("rawDataRepacker")
314 
315 
316 ### process customizations included here
318 process = customise(process)
process customizations included here