194def defineHistograms(cellMonGroup,LayerNames,isHLT=False,isDatabaseNoise=True,isReco=True,jumpHEC=False):
195
196
197 from LArMonitoring.GlobalVariables import lArDQGlobals
198
199 sc_hist_path='SC/'
200 if isHLT: sc_hist_path='EXPERT'
201
202
203 cellMonGroup.defineHistogram('superCellEt;h_SuperCellEt',
204 title='Super Cell E_T [MeV]; MeV; # entries',
205 type='TH1F', path=sc_hist_path,
206 xbins = 100,xmin=0,xmax=50000)
207 cellMonGroup.defineHistogram('superCellEta;h_SuperCellEta',
208 title='Super Cell eta; #eta; # entries',
209 type='TH1F', path=sc_hist_path,
210 xbins = 100,xmin=-5,xmax=5)
211 cellMonGroup.defineHistogram('superCelltime;h_SuperCelltime',
212 title='Super Cell time [ns]; ns; # entries',
213 type='TH1F', path=sc_hist_path,
214 xbins = 100, xmin=-400,xmax=400)
215 cellMonGroup.defineHistogram('superCellprovenance;h_SuperCellprovenance',
216 title='Super Cell provenance; bitmask ; # entries',
217 type='TH1F', path=sc_hist_path,
218 xbins = 700, xmin=0,xmax=700)
219 cellMonGroup.defineHistogram('BCID,superCellEt;h_SuperCellEt_vs_BCID',
220 title='Super Cell ET [MeV] vs BCID ; BCID from train front; %',
221 type='TH2F', path=sc_hist_path,
222 xbins = 100, xmin=0,xmax=100,
223 ybins = 80, ymin=-1000,ymax=1000)
224 cellMonGroup.defineHistogram('BCID,superCellEtRef;h_SuperCellEtRef_vs_BCID',
225 title='Super Cell ET [MeV] vs BCID ; BCID from train front; %',
226 type='TH2F', path=sc_hist_path,
227 xbins = 100, xmin=0,xmax=100,
228 ybins = 80, ymin=-1000,ymax=1000)
229
230 cellMonGroup.defineHistogram('resolutionHET;h_SuperCellResolution',
231 title='Super Cell reconstruction resolution ; %; # entries',
232 type='TH1F', path=sc_hist_path,
233 xbins = 70, xmin=-20,xmax=120)
234 cellMonGroup.defineHistogram('resolutionPass;h_SuperCellResolutionPass',
235 title='Super Cell reconstruction resolution for BCIDed ; %; # entries',
236 type='TH1F', path=sc_hist_path,
237 xbins = 70, xmin=-20,xmax=120)
238 cellMonGroup.defineHistogram('superCellEt,resolution;h_SuperCellResolution_vs_ET',
239 title='Super Cell reconstruction resolution vs ET ; [MeV]; %',
240 type='TH2F', path=sc_hist_path,
241 xbins = 100, xmin=0,xmax=50000,
242 ybins = 70, ymin=-20,ymax=120)
243 cellMonGroup.defineHistogram('superCellEta,resolutionHET;h_SuperCellResolution_vs_eta',
244 title='Super Cell reconstruction resolution vs #eta ; #eta; %',
245 type='TH2F', path=sc_hist_path,
246 xbins = 100, xmin=-5,xmax=5,
247 ybins = 40, ymin=-20,ymax=20)
248 cellMonGroup.defineHistogram('BCID,resolution;h_SuperCellResolution_vs_BCID',
249 title='Super Cell reconstruction resolution vs BCID ; BCID from train front; %',
250 type='TH2F', path=sc_hist_path,
251 xbins = 100, xmin=0,xmax=100,
252 ybins = 80, ymin=-120,ymax=120)
253
254 cellMonGroup.defineHistogram('superCellEtRef,superCellEt;h_SuperCellEtLin',
255 title='Super Cell E_T Linearity; Ref SC E_T [MeV]; SC E_T [MeV]',
256 type='TH2F', path=sc_hist_path,
257 xbins = 100,xmin=0,xmax=50000,
258 ybins = 100,ymin=0,ymax=50000)
259 cellMonGroup.defineHistogram('superCellprovenanceRef,superCellprovenance;h_SuperCellprovenanceLin',
260 title='Super Cell provenance Linearity; Ref SC bitmask ; SC bitmask',
261 type='TH2F', path=sc_hist_path,
262 xbins = 17, xmin=0,xmax=680,
263 ybins = 17, ymin=0,ymax=680)
264 cellMonGroup.defineHistogram('BCID;h_BCID',
265 title='BCID from the front of the train; BCID ; # entries',
266 type='TH1F', path=sc_hist_path,
267 xbins = 120, xmin=0,xmax=120)
268 if ( isReco ):
269 cellMonGroup.defineHistogram('superCelltimeReco;h_SuperCelltimeReco',
270 title='Reco Super Cell time [ns]; ns; # entries',
271 type='TH1F', path=sc_hist_path,
272 xbins = 100, xmin=-400,xmax=400)
273 cellMonGroup.defineHistogram('superCelltimeRef,superCelltimeReco;h_SuperCelltimeLin',
274 title='Super Cell time Linearity; Ref SC time [ns]; Reco SC time [ns]',
275 type='TH2F', path=sc_hist_path,
276 xbins = 100, xmin=-200,xmax=200,
277 ybins = 100, ymin=-200,ymax=200)
278
279
280 partxbins=lArDQGlobals.SuperCell_Variables["etaRange"]["All"]["All"]
281 partybins=lArDQGlobals.SuperCell_Variables["phiRange"]["All"]["All"]
282 cellMonGroup.defineHistogram('superCellEta,superCellPhi,superCellEtDiff;h_SuperCellCoverage_EtDiff',
283 title='ET Diff: #phi vs #eta;#eta;#phi',
284 type='TProfile2D', path=sc_hist_path,
285 xbins = partxbins, ybins = partybins)
286
287
288 sc_hist_path='SC_Layer/'
289 if isHLT: sc_hist_path='EXPERT'
290 for part in LayerNames:
291 partp='('+part+')'
292
293 Part = part[:-2]
294 if Part == "FCAL":
295 Part = "FCal"
296 Side = part[-1]
297 Sampling = part[-2]
298 if Sampling == "P":
299 Sampling = "0"
300 if ( jumpHEC and ("HEC" in Part) and ( "0" not in Sampling ) ):
301 continue
302 partxbins=lArDQGlobals.SuperCell_Variables["etaRange"][Part][Side][Sampling]
303 partybins=lArDQGlobals.SuperCell_Variables["phiRange"][Part][Side][Sampling]
304 cellMonGroup.defineHistogram('superCellEta_'+part+',superCellPhi_'+part+',superCellEtDiff_'+part+';h_SuperCellCoverage_EtDiff_'+part,
305 title='ET Diff '+part+': #phi vs #eta;#eta;#phi',
306 type='TProfile2D', path=sc_hist_path,
307 xbins = partxbins, ybins = partybins)
308
309
310 cellMonGroup.defineHistogram('superCellEt_'+part+';h_SuperCellEt'+part,
311 title='Super Cell E_T [MeV] '+partp+'; MeV; # entries',
312 type='TH1F', path=sc_hist_path,
313 xbins = 100,xmin=0,xmax=50000)
314 cellMonGroup.defineHistogram('superCellEta_'+part+';h_SuperCellEta'+part,
315 title='Super Cell eta '+partp+'; #eta; # entries',
316 type='TH1F', path=sc_hist_path,
317 xbins = 100,xmin=-5,xmax=5)
318 cellMonGroup.defineHistogram('superCelltime_'+part+';h_SuperCelltime'+part,
319 title='Super Cell time [ns] '+partp+'; ns; # entries',
320 type='TH1F', path=sc_hist_path,
321 xbins = 100, xmin=-400,xmax=400)
322 cellMonGroup.defineHistogram('superCellprovenance_'+part+';h_SuperCellprovenance'+part,
323 title='Super Cell provenance '+partp+'; bitmask ; # entries',
324 type='TH1F', path=sc_hist_path,
325 xbins = 700, xmin=0,xmax=700)
326 cellMonGroup.defineHistogram('BCID,superCellEt_'+part+';h_SuperCellET_vs_BCID'+part,
327 title='Super Cell ET [MeV] vs BCID '+partp+'; BCID from train front; %',
328 type='TH2F', path=sc_hist_path,
329 xbins = 100, xmin=0,xmax=100,
330 ybins = 100, ymin=-1000,ymax=1000)
331 cellMonGroup.defineHistogram('BCID,superCellEtRef_'+part+';h_SuperCellRefET_vs_BCID'+part,
332 title='Super Cell ET [MeV] vs BCID '+partp+'; BCID from train front; %',
333 type='TH2F', path=sc_hist_path,
334 xbins = 100, xmin=0,xmax=100,
335 ybins = 100, ymin=-1000,ymax=1000)
336
337 cellMonGroup.defineHistogram('resolutionHET_'+part+';h_SuperCellResolution'+part,
338 title='Super Cell reconstruction resolution '+partp+'; %; # entries',
339 type='TH1F', path=sc_hist_path,
340 xbins = 70, xmin=-20,xmax=120)
341 cellMonGroup.defineHistogram('resolutionPass_'+part+';h_SuperCellResolutionPass'+part,
342 title='Super Cell reconstruction resolution for BCIDed '+partp+'; %; # entries',
343 type='TH1F', path=sc_hist_path,
344 xbins = 70, xmin=-20,xmax=120)
345 cellMonGroup.defineHistogram('superCellEt_'+part+',resolution_'+part+';h_SuperCellResolution_vs_ET'+part,
346 title='Super Cell reconstruction resolution vs ET '+partp+'; [MeV]; %',
347 type='TH2F', path=sc_hist_path,
348 xbins = 100, xmin=0,xmax=50000,
349 ybins = 70, ymin=-20,ymax=120)
350 cellMonGroup.defineHistogram('superCellEta_'+part+',resolutionHET_'+part+';h_SuperCellResolution_vs_eta'+part,
351 title='Super Cell reconstruction resolution vs #eta '+partp+'; #eta; %',
352 type='TH2F', path=sc_hist_path,
353 xbins = 100, xmin=-5,xmax=5,
354 ybins = 40, ymin=-20,ymax=20)
355 cellMonGroup.defineHistogram('BCID,resolution_'+part+';h_SuperCellResolution_vs_BCID'+part,
356 title='Super Cell reconstruction resolution vs BCID '+partp+'; BCID from train front; %',
357 type='TH2F', path=sc_hist_path,
358 xbins = 100, xmin=0,xmax=100,
359 ybins = 80, ymin=-120,ymax=120)
360
361 cellMonGroup.defineHistogram('superCellEtRef_'+part+',superCellEt_'+part+';h_SuperCellEtLin'+part,
362 title='Super Cell E_T Linearity '+partp+'; Ref SC E_T [MeV]; SC E_T [MeV]',
363 type='TH2F', path=sc_hist_path,
364 xbins = 100,xmin=0,xmax=50000,
365 ybins = 100,ymin=0,ymax=50000)
366 cellMonGroup.defineHistogram('superCelltimeRef_'+part+',superCelltimeReco_'+part+';h_SuperCelltimeLin'+part,
367 title='Super Cell time Linearity '+partp+'; Ref SC time [ns]; Reco SC time [ns]',
368 type='TH2F', path=sc_hist_path,
369 xbins = 100, xmin=-200,xmax=200,
370 ybins = 100, ymin=-200,ymax=200)
371 cellMonGroup.defineHistogram('superCellprovenanceRef_'+part+',superCellprovenance_'+part+';h_SuperCellprovenanceLin'+part,
372 title='Super Cell provenance Linearity '+partp+'; Ref SC bitmask ; SC bitmask',
373 type='TH2F', path=sc_hist_path,
374 xbins = 17, xmin=0,xmax=680,
375 ybins = 17, ymin=0,ymax=680)
376 if isReco:
377 cellMonGroup.defineHistogram('superCelltimeReco_'+part+';h_SuperCelltimeReco'+part,
378 title='Reco Super Cell time [ns] '+partp+'; ns; # entries',
379 type='TH1F', path=sc_hist_path,
380 xbins = 100, xmin=-400,xmax=400)
381
382
383 if ( isDatabaseNoise ):
384 for part in LayerNames:
385
386 cellMonGroup.defineHistogram('cellEnergy_'+part+';CellEnergy_'+part,
387 title='Cell Energy in ' +part+';Cell Energy [MeV];Cell Events',
388 type='TH1F', path=sc_hist_path,
389 xbins = 100,xmin=0,xmax=50000
390 )
391
392 cellMonGroup.defineHistogram('celleta_'+part+';NCellsActiveVsEta_'+part,
393 title="No. of Active Cells in #eta for "+part+";cell #eta",
394 type='TH1F', path=sc_hist_path,
395 xbins = 100,xmin=-5,xmax=5
396 )
397
398 cellMonGroup.defineHistogram('cellphi_'+part+';NCellsActiveVsPhi_'+part,
399 title="No. of Active Cells in #phi for "+part+";cell #phi",
400 type='TH1F', path=sc_hist_path,
401 xbins = 100,xmin=-5,xmax=5
402 )
403
404 cellMonGroup.defineHistogram('celleta_'+part+',cellphi_'+part+';DatabaseNoiseVsEtaPhi_'+part,
405 title="Map of Noise Values from the Database vs (#eta,#phi) for "+part+";cell #eta;cell #phi",
406 weight='cellnoisedb_'+part,
407 cutmask='doDatabaseNoisePlot',
408 type='TH2F', path=sc_hist_path,
409 xbins = 100,xmin=-5,xmax=5,
410 ybins = 100,ymin=-5,ymax=5,
411 merge='weightedAverage')
412
413
414
415 return cellMonGroup
416
417