Belle II Software development
DQMHistAnalysisTOP_test.py
1#!/usr/bin/env python3
2
3
10
11# script to analyze raw histograms from TOP
12#
13# Usage: basf2 DQMHistAnalysisTOP_test.py input_files
14# input_files: one of the raw dqm files placed under /group/belle2/phase3/dqm/dqmsrv1/
15#
16# i.e basf2 DQMHistAnalysisTOP_test.py /group/belle2/phase3/dqm/dqmsrv1/e0018/dqmhisto/erecodqm_e0018r001313.root
17# -----------------------------------------------------------------------------------------------
18
19
20import basf2 as b2
21import sys
22
23argv = sys.argv
24if len(argv) < 2:
25 print('\nUsage: %s input_filename\n' % argv[0])
26 exit(1)
27inputFile = sys.argv[1]
28
29# Set log level
30b2.set_log_level(b2.LogLevel.INFO)
31
32# Create main path
33main = b2.create_path()
34
35# Load histograms from file
36main.add_module('DQMHistAnalysisInputRootFile',
37 Experiment=0,
38 RunList=[0],
39 FileList=[inputFile],
40 EventsList=[1],
41 SelectHistograms=["DQMInfo/rtype", "DAQ/Nevent", "TOP/*"],
42 EventInterval=1,
43 NullHistogramMode=False)
44
45# Plot all histograms from the file
46main.add_module("DQMHistAutoCanvas")
47
48# Analysis module
49main.add_module('DQMHistAnalysisTOP')
50
51# Output canvases to root file
52main.add_module('DQMHistAnalysisOutputFile',
53 HistoFile="output_dqmHistAnalysis.root",
54 SaveHistos=False,
55 SaveCanvases=True)
56
57# Process all event at main path
58b2.process(main)
59
60# Print modules' statistics
61print(b2.statistics)