Belle II Software release-09-00-00
MicrotpcStudyModule.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 MICROTPCSTUDYMODULE_H
10#define MICROTPCSTUDYMODULE_H
11
12#include <framework/core/HistoModule.h>
13#include <vector>
14
15#include <Math/Vector3D.h>
16#include <TH1.h>
17#include <TH2.h>
18#include <TH3.h>
19#include <TGraph.h>
20
21namespace Belle2 {
26 namespace microtpc {
27
37
38 public:
39
44
48 virtual ~MicrotpcStudyModule();
49
54 virtual void initialize() override;
55
60 virtual void beginRun() override;
61
65 virtual void event() override;
66
71 virtual void endRun() override;
72
77 virtual void terminate() override;
78
80 virtual void defineHisto() override;
81
82
83 private:
84
86 virtual void getXMLData();
87
95 double m_ChipRowY;
97 double m_z_DG;
99 int nTPC = 0;
101 std::vector<ROOT::Math::XYZVector> TPCCenter;
103 //int Event = 0;
105 TH1F* h_tpc_rate[20];
111 TH2F* h_mctpc_tvp[20];
113 TH2F* h_mctpc_tvpW[20];
115 TH2F* h_mctpc_zr[20];
117 TH1F* h_z[8];
119 TH2F* h_xy[8];
121 TH2F* h_zr[8];
123 TH2F* h_zx[8];
125 TH2F* h_zy[8];
127 TH2F* h_evtrl[8];
129 TH2F* h_evtrlb[8];
131 TH2F* h_evtrlc[8];
133 TH2F* h_evtrld[8];
135 TH2F* h_evtrl_He[8];
137 TH2F* h_evtrl_Hex[8];
141 TH2F* h_evtrl_p[8];
143 TH2F* h_evtrl_O[8];
145 TH2F* h_evtrl_C[8];
147 TH2F* h_evtrl_x[8];
148
150 TH2F* h_tevtrl[8];
152 TH2F* h_tevtrl_He[8];
154 TH2F* h_tevtrl_Hex[8];
158 TH2F* h_tevtrl_p[8];
160 TH2F* h_tevtrl_O[8];
162 TH2F* h_tevtrl_C[8];
164 TH2F* h_tevtrl_x[8];
165
167 TH2F* h_tvp[8];
169 TH2F* h_tvpb[8];
171 TH2F* h_tvpc[8];
173 TH2F* h_tvpd[8];
175 TH2F* h_wtvpb[8];
177 TH2F* h_wtvpc[8];
179 TH2F* h_wtvpd[8];
181 TH2F* h_tvp_He[8];
183 TH2F* h_tvp_Hex[8];
187 TH2F* h_tvp_p[8];
189 TH2F* h_tvp_O[8];
191 TH2F* h_tvp_C[8];
193 TH2F* h_tvp_x[8];
194
196 TH2F* h_ttvp[8];
198 TH2F* h_ttvp_He[8];
200 TH2F* h_ttvp_Hex[8];
204 TH2F* h_ttvp_p[8];
206 TH2F* h_ttvp_O[8];
208 TH2F* h_ttvp_C[8];
210 TH2F* h_ttvp_x[8];
212 TH2F* h_Wtvp1[8][12];
214 TH2F* h_Wtvp2[8][12];
216 TH2F* h_Wevtrl1[8][12];
218 TH2F* h_Wevtrl2[8][12];
226 std::vector<TGraph*> m_intProb;
228 std::vector<double> m_maxEnFrac;
230 TH2F* h_wtvp[8];
232 TH2F* h_wtvp_He[8];
234 TH2F* h_wtvp_Hex[8];
238 TH2F* h_wtvp_p[8];
240 TH2F* h_wtvp_O[8];
242 TH2F* h_wtvp_C[8];
244 TH2F* h_wtvp_x[8];
246 Bool_t xRec[8];
248 Bool_t pRec[8];
250 Bool_t HeRec[8];
252 Bool_t ORec[8];
254 Bool_t CRec[8];
256 //Bool_t ARec[8];
258 int pid_old[8];
259
261 //int npRecoils = 0;
263 //int nHeRecoils = 0;
265 //int nCRecoils = 0;
267 //int nORecoils = 0;
268
269 };
270
271 }
273}
274
275#endif /* MICROTPCSTUDYMODULE_H */
HistoModule.h is supposed to be used instead of Module.h for the modules with histogram definitions t...
Definition: HistoModule.h:29
Study module for Microtpcs (BEAST)
double m_ChipRowY
Chip row y dimension.
Bool_t HeRec[8]
He boolean per TPC.
virtual void initialize() override
Initialize the Module.
std::vector< double > m_maxEnFrac
vector of maximal energy fraction transfered to recoil
virtual void event() override
Event processor.
std::vector< TGraph * > m_intProb
vector of interaction probability vs E graphs for all recoils
MicrotpcStudyModule()
Constructor: Sets the description, the properties and the parameters of the module.
TH1F * h_z[8]
Charged density vs z vs section.
virtual void endRun() override
End-of-run action.
double m_ChipColumnX
Chip column x dimension.
virtual void getXMLData()
reads data from MICROTPC.xml: tube location, drift data filename, sigma of impulse response function
virtual void terminate() override
Termination action.
Bool_t xRec[8]
X-ray boolean per TPC.
virtual void beginRun() override
Called when entering a new run.
TH2F * h_zy[8]
Charged density vs y vs r.
std::vector< ROOT::Math::XYZVector > TPCCenter
TPC coordinate.
TH2F * h_zx[8]
Charged density vs x vs r.
TH2F * h_zr[8]
Charged density vs z vs r.
TH3F * h_mctpc_recoilW[3]
weighted recoil energy
TH2F * h_mctpc_kinetic_zoom[20]
Neutron kin energy dis.
TH2F * h_mctpc_kinetic[20]
Neutron kin energy dis.
TH2F * h_xy[8]
Charged density vs x vs y.
virtual void defineHisto() override
Defines the histograms.
Abstract base class for different kinds of events.