Belle II Software development
DQMHistAnalysisTRGEFF.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * *
5 * See git log for contributors and copyright holders. *
6 * This file is licensed under LGPL-3.0, see LICENSE.md. *
7 **************************************************************************/
8
9#ifndef TRGEFFDQMANALYSISMODULE_H
10#define TRGEFFDQMANALYSISMODULE_H
11
12#pragma once
13
14
15//DQM
16#include <dqm/core/DQMHistAnalysis.h>
17
18
19#include <vector>
20#include <TCanvas.h>
21#include <TLine.h>
22#include <TH2Poly.h>
23#include <TEfficiency.h>
24
25namespace Belle2 {
30
35
36 public:
37
42
47 void initialize() override final;
48
52 void event() override final;
53
58 void endRun() override final;
59
64 void terminate() override final;
65
66 protected:
67 bool m_debug;
69
76
77 /*************************************************************************************
78 * More details meaning of the used histograms could be found in *
79 * 'basf2/trg/gdl/modules/trggdlDQM/include/TRGEFFDQMModule.h' and *
80 * 'basf2/trg/gdl/modules/trggdlDQM/src/TRGEFFDQMModule.cc' *
81 * The efficiency is calculated by the two histograms.("mask bits" and "object bit") *
82 * The name histogram of the mask bits. *
83 * The name histogram of the object bit with mask bits is ends with "_ftdf" *
84 * The canvas and efficiency for the object bit. *
85 *************************************************************************************/
86
89 TCanvas* m_cPhi_eff = nullptr;
90 TEfficiency* m_hPhi_eff = nullptr;
91
94 TCanvas* m_cPt_eff = nullptr;
95 TEfficiency* m_hPt_eff = nullptr;
96
97 // CDC TRG, remove the bhabha veto for f bit
98 TCanvas* m_c_nobha_f_phi_eff = nullptr;
99 TEfficiency* m_nobha_f_phi_eff = nullptr;
100
101 // CDC TRG, remove the bhabha veto for f bit
102 TCanvas* m_nobha_cPt_eff = nullptr;
103 TEfficiency* m_nobha_hPt_eff = nullptr;
104
105 // (t3>0 and !bhaveto and !veto), for z bit
108 TCanvas* m_cP3_z_eff = nullptr;
109 TEfficiency* m_hP3_z_eff = nullptr;
110
111 // (t3>0 and !bhaveto and !veto), for y bit
114 TCanvas* m_cP3_y_eff = nullptr;
115 TEfficiency* m_hP3_y_eff = nullptr;
116
117 // for CDC TRG, remove bhabha veto for z and y bit
118 TCanvas* m_nobha_cP3_z_eff = nullptr;
119 TEfficiency* m_nobha_hP3_z_eff = nullptr;
120
121 TCanvas* m_nobha_cP3_y_eff = nullptr;
122 TEfficiency* m_nobha_hP3_y_eff = nullptr;
123
124 TCanvas* m_c_nobha_phi_z_eff = nullptr;
125 TEfficiency* m_nobha_phi_z_eff = nullptr;
126
127 TCanvas* m_c_nobha_phi_y_eff = nullptr;
128 TEfficiency* m_nobha_phi_y_eff = nullptr;
129
130
131 //-"fyo" with track deleta_phi distribution
134 TCanvas* m_c_fyo_dphi_eff = nullptr;
135 TEfficiency* m_fyo_dphi_eff = nullptr;
136
137 // remove the bha_veto for fyo
138 TCanvas* m_c_nobha_fyo_dphi_eff = nullptr;
139 TEfficiency* m_nobha_fyo_dphi_eff = nullptr;
140
141 //-"stt " with track p, θ, phi distribution
144 TCanvas* m_c_stt_phi_eff = nullptr;
145 TEfficiency* m_stt_phi_eff = nullptr;
146
150 TCanvas* m_c_stt_P3_eff = nullptr;
151 TEfficiency* m_stt_P3_eff = nullptr;
152
156 TCanvas* m_c_stt_theta_eff = nullptr;
157 TEfficiency* m_stt_theta_eff = nullptr;
158
159 // for CDC TRG, remove the bha_veto of the stt bit. (the distribution of phi, p and theta)
160 TCanvas* m_c_nobha_stt_phi_eff = nullptr;
161 TEfficiency* m_nobha_stt_phi_eff = nullptr;
162
163 TCanvas* m_c_nobha_stt_P3_eff = nullptr;
164 TEfficiency* m_nobha_stt_P3_eff = nullptr;
165
166 TCanvas* m_c_nobha_stt_theta_eff = nullptr;
167 TEfficiency* m_nobha_stt_theta_eff = nullptr;
168
169
170 //-"hie" with ECL cluster energy sum distribution
173 TCanvas* m_c_hie_E_eff = nullptr;
174 TEfficiency* m_hie_E_eff = nullptr;
175
176 // remove the bha_veto for hie bit (the distribution of sum E)
177 TCanvas* m_c_nobha_hie_E_eff = nullptr;
178 TEfficiency* m_nobha_hie_E_eff = nullptr;
179
180
183 TCanvas* m_c_ecltiming_E_eff = nullptr;
184 TEfficiency* m_ecltiming_E_eff = nullptr;
185
186 // the theta distribution for the ecltiming bit.
187 TCanvas* m_c_ecltiming_theta_eff = nullptr;
188 TEfficiency* m_ecltiming_theta_eff = nullptr;
189
190 // the phi distribution for the ecltiming bit. the histograms of the cdc mask bits, the ecltiming with cdc mask bits.
191 TCanvas* m_c_ecltiming_phi_eff = nullptr;
192 TEfficiency* m_ecltiming_phi_eff = nullptr;
193
194
197 // -"klmhit" with KLM cluster or track φ,θ distribution
198 TCanvas* m_c_klmhit_phi_eff = nullptr;
199 TEfficiency* m_klmhit_phi_eff = nullptr;
200
201 TCanvas* m_c_klmhit_theta_eff = nullptr;
202 TEfficiency* m_klmhit_theta_eff = nullptr;
203
206 TCanvas* m_c_eklmhit_phi_eff = nullptr;
207 TEfficiency* m_eklmhit_phi_eff = nullptr;
208
209 // the theta distribution for eklmhit bit
210 TCanvas* m_c_eklmhit_theta_eff = nullptr;
211 TEfficiency* m_eklmhit_theta_eff = nullptr;
212
213 std::vector<std::tuple<std::string, TEfficiency**, TCanvas*, std::string, std::string>>
215
216 //mirabelle
218
219
220 };
221
223} // Belle2 namespace
224
225#endif
DQMHistAnalysisModule()
Constructor / Destructor.
TEfficiency * m_nobha_hP3_z_eff
remove the bha_veto, the efficiency of p for z bit
TEfficiency * m_hie_E_eff
the efficiency of phi for hie bit
TEfficiency * m_nobha_f_phi_eff
remove the bha_veto, the efficiency of phi for f bit
TCanvas * m_cP3_z_eff
for CDC TRG, the histograms for 3-momentum p with ecl mask bits, p of z bit with ecl mask bits.
TCanvas * m_c_nobha_phi_z_eff
remove the bha_veto, canvas for TRGEFF efficiency, z bit
TEfficiency * m_ecltiming_phi_eff
the efficiency of phi for ecltiming bit
void initialize() override final
Initialize the Module.
TEfficiency * m_eklmhit_phi_eff
the efficiency of phi for eklmhit bit
TCanvas * m_c_nobha_f_phi_eff
remove the bha_veto, canvas for TRGEFF efficiency, f bit
TCanvas * m_c_eklmhit_theta_eff
canvas for TRGEFF efficiency, eklmhit bit
bool m_IsCosmicRun
Run type flag for cosmic runs.
TCanvas * m_cP3_y_eff
for CDC TRG, the histograms for 3-momentum p with ecl mask bits, p of y bit with ecl mask bits.
TEfficiency * m_hPt_eff
the efficiency of Pt for f bit
TCanvas * m_c_klmhit_phi_eff
for KLM TRG, the histograms for the phi of the ecl mask bits, and the phi of klmhit bit with ecl mask...
TCanvas * m_nobha_cPt_eff
remove the bha_veto, Canvas for TRGEFF efficiency, Pt
bool m_IsDebugRun
Run type flag for debug runs.
bool m_IsPhysicsRun
Run type flag for physics runs.
TEfficiency * m_ecltiming_theta_eff
the efficiency of theta for ecltiming bit
bool m_enableAlert
Enable alert by base color of canvases.
TCanvas * m_c_ecltiming_theta_eff
canvas for TRGEFF efficiency, ecltiming bit
TCanvas * m_c_ecltiming_E_eff
for ECL TRG, the histograms for the sum energy E distribution in an event with cdc mask bits,...
TCanvas * m_c_stt_phi_eff
for CDC TRG, the histograms for the phi distribution with ecl mask bits, the phi of stt bit with ecl ...
TEfficiency * m_hP3_y_eff
the efficiency of p for y bit
TEfficiency * m_klmhit_phi_eff
the efficiency of phi for klmhit bit
TCanvas * m_c_eklmhit_phi_eff
for KLM TRG, the histograms for the phi of the ecl mask bits, and the phi of eklmhit bit with ecl mas...
TCanvas * m_c_fyo_dphi_eff
for CDC TRG, the histograms for the largest dphi in an event with ecl mask bits, the largest dphi in ...
TEfficiency * m_nobha_stt_theta_eff
remove the bha_veto, the efficiency of theta for stt bit
void terminate() override final
Termination action.
TEfficiency * m_nobha_hPt_eff
remove the bha_veto, the efficiency of Pt for f bit
TEfficiency * m_stt_P3_eff
the efficiency of p for stt bit
TEfficiency * m_nobha_hie_E_eff
remove the bha_veto, the efficiency of phi for hie bit
TCanvas * m_c_stt_P3_eff
for CDC TRG, the histograms for the largest momentum p distribution in an event of the ecl mask bits,...
void event() override final
Event processor.
TCanvas * m_c_nobha_stt_theta_eff
remove the bha_veto, canvas for TRGEFF efficiency, stt bit
TCanvas * m_c_stt_theta_eff
for CDC TRG, the theta of stt distribution.
TEfficiency * m_stt_phi_eff
the efficiency of phi for stt bit
TEfficiency * m_nobha_stt_phi_eff
remove the bha_veto, the efficiency of phi for stt bit
TCanvas * m_cPt_eff
for CDC TRG, the histograms for momentum pt of the ecl mask bits, the pt of f bit with ecl mask bits.
TCanvas * m_c_ecltiming_phi_eff
canvas for TRGEFF efficiency, ecltiming bit
TCanvas * m_cPhi_eff
for CDC TRG, the histograms for phi of the ecl mask bits, the phi of f bit with ecl mask bits.
TEfficiency * m_klmhit_theta_eff
the efficiency of theta for klmhit bit
TEfficiency * m_eklmhit_theta_eff
the efficiency of theta for eklmhit bit
TCanvas * m_c_nobha_phi_y_eff
remove the bha_veto, canvas for TRGEFF efficiency, y bit
void endRun() override final
End-of-run action.
TEfficiency * m_hP3_z_eff
the efficiency of p for z bit
TEfficiency * m_hPhi_eff
the efficiency of Phi
TCanvas * m_c_nobha_fyo_dphi_eff
remove the bha_veto, canvas for TRGEFF efficiency, fyo bit
TEfficiency * m_fyo_dphi_eff
the efficiency of dphi for fyo bit
TCanvas * m_c_klmhit_theta_eff
canvas for TRGEFF efficiency, klmhit bit
TCanvas * m_nobha_cP3_z_eff
remove the bha_veto, canvas for TRGEFF efficiency, z bit
TEfficiency * m_stt_theta_eff
the efficiency of theta for stt bit
TEfficiency * m_nobha_phi_y_eff
remove the bha_veto, the efficiency of phi for y bit
TCanvas * m_c_hie_E_eff
for ECL TRG, the histograms for the sum energy E distribution in an event within the thetaID range of...
TCanvas * m_c_nobha_stt_P3_eff
remove the bha_veto, canvas for TRGEFF efficiency, stt bit
TCanvas * m_nobha_cP3_y_eff
remove the bha_veto, canvas for TRGEFF efficiency, y bit
TCanvas * m_c_nobha_hie_E_eff
remove the bha_veto, canvas for TRGEFF efficiency, hie bit
Belle2::MonitoringObject * m_mon_trgeff
MonitoringObject for trg.
TEfficiency * m_nobha_fyo_dphi_eff
remove the bha_veto, the efficiency of dphi for fyo bit
TCanvas * m_c_nobha_stt_phi_eff
remove the bha_veto, canvas for TRGEFF efficiency, stt bit
TEfficiency * m_ecltiming_E_eff
the efficiency of phi for ecltiming bit
TEfficiency * m_nobha_phi_z_eff
remove the bha_veto, the efficiency of phi for z bit
TEfficiency * m_nobha_stt_P3_eff
remove the bha_veto, the efficiency of p for stt bit
std::vector< std::tuple< std::string, TEfficiency **, TCanvas *, std::string, std::string > > m_efficiencyList
Combined efficiency list,the histogram, efficiency, Canvas, title, Xtitle.
TEfficiency * m_nobha_hP3_y_eff
remove the bha_veto, the efficiency of p for y bit
MonitoringObject is a basic object to hold data for the run-dependency monitoring Run summary TCanvas...
Abstract base class for different kinds of events.