ATLAS Offline Software
ALFA_GloRec.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef ALFA_GloRec_h
6 #define ALFA_GloRec_h
7 
8 
9 #include <string>
10 #include <iostream>
11 #include <fstream>
12 #include <list>
13 #include <vector>
14 #include <map>
15 #include <sys/stat.h>
16 #include <sys/types.h>
17 #include <dirent.h>
18 
20 #include "GaudiKernel/Algorithm.h"
21 #include "GaudiKernel/MsgStream.h"
22 #include "GaudiKernel/ServiceHandle.h"
23 #include "GaudiKernel/Kernel.h"
24 #include "StoreGate/StoreGateSvc.h"
26 
27 
40 
41 #include "TTree.h"
42 #include "TROOT.h"
43 #include "TStyle.h"
44 #include "TCanvas.h"
45 #include "TFile.h"
46 #include "TString.h"
47 #include "TLine.h"
48 #include "TPaveStats.h"
49 #include "TH1.h"
50 #include "TH1D.h"
51 #include "TH2.h"
52 #include "TH3F.h"
53 #include "THStack.h"
54 #include "TMath.h"
55 #include "TF1.h"
56 #include "TGraph2D.h"
57 #include "TGraph.h"
58 #include "TApplication.h"
59 #include "TH2F.h"
60 #include "TPad.h"
61 #include "TObjArray.h"
62 #include "TObjString.h"
63 
64 #include "AlfaLocalHits.h"
65 
66 class StoreGateSvc;
67 
68 
70 //
71 // ALFA_GloRec class declaration
72 //
74 class ALFA_GloRec : public AthAlgorithm
75 {
76 public:
77  ALFA_GloRec (const std::string& name, ISvcLocator* pSvcLocator);
78  ~ALFA_GloRec();
79 
80 private:
81 
82 
83 
85  // general members
88 
89 
91  // steerable members
93  int m_iDataType = 0;
99  std::string m_TruthCollectionName;
100 
101 
103  // methods
109  void InitHistos();
110  void FillTrackCandHistos(AlfaTrackCand * trkcand);
111  void WriteHistos();
112 
113 
115  // generated vertices and momenta
117  double m_px_g_pos;
118  double m_py_g_pos;
119  double m_pz_g_pos;
120  double m_x_g_pos;
121  double m_y_g_pos;
122  double m_z_g_pos;
123 
124  double m_px_g_neg;
125  double m_py_g_neg;
126  double m_pz_g_neg;
127  double m_x_g_neg;
128  double m_y_g_neg;
129  double m_z_g_neg;
130 
132  // histograms
138 
147 
160 
167 
174 
175 };
176 
177 #endif // ALFA_GloRec_h
ALFA_GloRec::m_th1_recxslopeovertruexslope
TH1F * m_th1_recxslopeovertruexslope
Definition: ALFA_GloRec.h:154
ALFA_GloRec::FillTrackCandHistos
void FillTrackCandHistos(AlfaTrackCand *trkcand)
Definition: ALFA_GloRec.cxx:432
ALFA_GloRec::m_th1_recxminusextrapxfarpot
TH1F * m_th1_recxminusextrapxfarpot
Definition: ALFA_GloRec.h:172
ALFA_GloRec::m_TruthCollectionName
std::string m_TruthCollectionName
Definition: ALFA_GloRec.h:99
ALFA_ODDigitCollection.h
ALFA_GloRec::m_z_g_neg
double m_z_g_neg
Definition: ALFA_GloRec.h:129
ALFA_GloRec::m_TObjArrTrackPathPatterns
TObjArray m_TObjArrTrackPathPatterns
Definition: ALFA_GloRec.h:95
ALFA_GloRec::m_x_g_neg
double m_x_g_neg
Definition: ALFA_GloRec.h:127
ALFA_GloRec::m_pz_g_pos
double m_pz_g_pos
Definition: ALFA_GloRec.h:119
ALFA_RawDataContainer.h
ALFA_GloRec::m_py_g_neg
double m_py_g_neg
Definition: ALFA_GloRec.h:125
ALFA_GloRec::m_x_g_pos
double m_x_g_pos
Definition: ALFA_GloRec.h:120
ALFA_GloRec::m_th2_extrapyvsrecynearpot
TH2F * m_th2_extrapyvsrecynearpot
Definition: ALFA_GloRec.h:162
ALFA_GloRec::m_th1_xslope_g
TH1F * m_th1_xslope_g
Definition: ALFA_GloRec.h:136
ALFA_GloRec::Truth_info
StatusCode Truth_info()
Definition: ALFA_GloRec.cxx:312
ALFA_GeometryReader.h
ALFA_GloRec::m_th2_extrapxvsrecxfarpot
TH2F * m_th2_extrapxvsrecxfarpot
Definition: ALFA_GloRec.h:168
ALFA_GloRec::m_th1_xfaruppotresiduals
TH1F * m_th1_xfaruppotresiduals
Definition: ALFA_GloRec.h:141
ALFA_GloRec::m_th1_recyslopeminustrueyslope
TH1F * m_th1_recyslopeminustrueyslope
Definition: ALFA_GloRec.h:159
ALFA_GloRec::ALFA_GloRec
ALFA_GloRec(const std::string &name, ISvcLocator *pSvcLocator)
Definition: ALFA_GloRec.cxx:73
ALFA_GloRec::m_th1_recyslopeovertrueyslope
TH1F * m_th1_recyslopeovertrueyslope
Definition: ALFA_GloRec.h:155
ALFA_GloRec::m_th1_recxslopeminustruexslope
TH1F * m_th1_recxslopeminustruexslope
Definition: ALFA_GloRec.h:158
ALFA_GloRec::~ALFA_GloRec
~ALFA_GloRec()
Definition: ALFA_GloRec.cxx:152
ALFA_GloRec::m_strGloRecCollectionName
std::string m_strGloRecCollectionName
Definition: ALFA_GloRec.h:97
ALFA_GloRec::m_th1_xfarlwpotresiduals
TH1F * m_th1_xfarlwpotresiduals
Definition: ALFA_GloRec.h:145
python.TrigEgammaMonitorHelper.TH2F
def TH2F(name, title, nxbins, bins_par2, bins_par3, bins_par4, bins_par5=None, bins_par6=None, path='', **kwargs)
Definition: TrigEgammaMonitorHelper.py:45
ALFA_GloRec::m_th1_yslope_g
TH1F * m_th1_yslope_g
Definition: ALFA_GloRec.h:137
ALFA_GloRec::m_th1_yfarlwpotresiduals
TH1F * m_th1_yfarlwpotresiduals
Definition: ALFA_GloRec.h:146
ALFA_GloRec::m_th1_recxminusextrapxnearpot
TH1F * m_th1_recxminusextrapxnearpot
Definition: ALFA_GloRec.h:165
ALFA_GloRec::m_y_g_neg
double m_y_g_neg
Definition: ALFA_GloRec.h:128
ALFA_GloRecEvCollection
Definition: ALFA_GloRecEvCollection.h:13
AthAlgorithm.h
ALFA_constants.h
ALFA_GloRec::m_th1_recyminusextrapynearpot
TH1F * m_th1_recyminusextrapynearpot
Definition: ALFA_GloRec.h:166
ALFA_GloRec::m_iDataType
int m_iDataType
Definition: ALFA_GloRec.h:93
ALFA_GloRec::m_th1_y_g
TH1F * m_th1_y_g
Definition: ALFA_GloRec.h:135
ALFA_GloRec::m_y_g_pos
double m_y_g_pos
Definition: ALFA_GloRec.h:121
StoreGateSvc
The Athena Transient Store API.
Definition: StoreGateSvc.h:125
ALFA_GloRec::m_th2_trueyvsrecy
TH2F * m_th2_trueyvsrecy
Definition: ALFA_GloRec.h:149
ALFA_GloRec::m_pz_g_neg
double m_pz_g_neg
Definition: ALFA_GloRec.h:126
ALFA_RawData.h
ALFA_GloRec::m_th2_extrapxvsrecxnearpot
TH2F * m_th2_extrapxvsrecxnearpot
Definition: ALFA_GloRec.h:161
McEventCollection.h
ALFA_GloRec::m_strLocRecCorrCollectionName
std::string m_strLocRecCorrCollectionName
Definition: ALFA_GloRec.h:98
ALFA_GloRec::m_th2_extrapyvsrecyfarpot
TH2F * m_th2_extrapyvsrecyfarpot
Definition: ALFA_GloRec.h:169
ALFA_GloRec::finalize
StatusCode finalize()
Definition: ALFA_GloRec.cxx:289
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ALFA_GloRec::m_th1_recyoverextrapyfarpot
TH1F * m_th1_recyoverextrapyfarpot
Definition: ALFA_GloRec.h:171
ALFA_GloRec::m_strTrackPathPatterns
std::string m_strTrackPathPatterns
Definition: ALFA_GloRec.h:94
ALFA_LocRecCorrEvCollection.h
ALFA_GloRec::m_th1_xnearuppotresiduals
TH1F * m_th1_xnearuppotresiduals
Definition: ALFA_GloRec.h:139
ALFA_GloRec::InitHistos
void InitHistos()
Definition: ALFA_GloRec.cxx:383
ALFA_GloRec::m_th1_yfaruppotresiduals
TH1F * m_th1_yfaruppotresiduals
Definition: ALFA_GloRec.h:142
ALFA_GloRec::execute
StatusCode execute()
Definition: ALFA_GloRec.cxx:197
ALFA_DigitCollection.h
ALFA_GloRec::m_th2_truexslopevsrecxslope
TH2F * m_th2_truexslopevsrecxslope
Definition: ALFA_GloRec.h:150
ALFA_GloRec::m_th1_recxminustruex
TH1F * m_th1_recxminustruex
Definition: ALFA_GloRec.h:156
AthAlgorithm
Definition: AthAlgorithm.h:47
ALFA_GloRec::m_th1_recyoverextrapynearpot
TH1F * m_th1_recyoverextrapynearpot
Definition: ALFA_GloRec.h:164
ALFA_GloRec::m_th1_recxovertruex
TH1F * m_th1_recxovertruex
Definition: ALFA_GloRec.h:152
ALFA_GloRec::m_th2_trueyslopevsrecyslope
TH2F * m_th2_trueyslopevsrecyslope
Definition: ALFA_GloRec.h:151
ALFA_GloRec::initialize
StatusCode initialize()
Definition: ALFA_GloRec.cxx:163
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
ALFA_GloRec::m_px_g_pos
double m_px_g_pos
Definition: ALFA_GloRec.h:117
ALFA_GloRecODEvCollection.h
AlfaLocalHits.h
ALFA_GloRec::m_th1_recyovertruey
TH1F * m_th1_recyovertruey
Definition: ALFA_GloRec.h:153
ALFA_GloRec::m_th2_truexvsrecx
TH2F * m_th2_truexvsrecx
Definition: ALFA_GloRec.h:148
ALFA_GloRec::m_th1_recxoverextrapxnearpot
TH1F * m_th1_recxoverextrapxnearpot
Definition: ALFA_GloRec.h:163
ALFA_GloRec::m_th1_recyminusextrapyfarpot
TH1F * m_th1_recyminusextrapyfarpot
Definition: ALFA_GloRec.h:173
ALFA_GloRec::m_th1_xnearlwpotresiduals
TH1F * m_th1_xnearlwpotresiduals
Definition: ALFA_GloRec.h:143
ALFA_GloRec::m_th1_x_g
TH1F * m_th1_x_g
Definition: ALFA_GloRec.h:134
ALFA_GloRec::WriteHistos
void WriteHistos()
Definition: ALFA_GloRec.cxx:512
ALFA_GloRec::m_strGloRecAnalysisFile
std::string m_strGloRecAnalysisFile
Definition: ALFA_GloRec.h:96
ALFA_GloRec::m_py_g_pos
double m_py_g_pos
Definition: ALFA_GloRec.h:118
ALFA_GloRec::m_th1_ynearuppotresiduals
TH1F * m_th1_ynearuppotresiduals
Definition: ALFA_GloRec.h:140
ALFA_GloRec::m_th1_recxoverextrapxfarpot
TH1F * m_th1_recxoverextrapxfarpot
Definition: ALFA_GloRec.h:170
ALFA_GloRec::m_th1_recyminustruey
TH1F * m_th1_recyminustruey
Definition: ALFA_GloRec.h:157
ALFA_LocRecCorrODEvCollection.h
ALFA_GloRec::m_z_g_pos
double m_z_g_pos
Definition: ALFA_GloRec.h:122
python.TrigEgammaMonitorHelper.TH1F
def TH1F(name, title, nxbins, bins_par2, bins_par3=None, path='', **kwargs)
Definition: TrigEgammaMonitorHelper.py:24
ALFA_RawDataCollection.h
ALFA_GloRec::m_px_g_neg
double m_px_g_neg
Definition: ALFA_GloRec.h:124
StoreGateSvc.h
ALFA_GloRecEvent.h
ALFA_GloRec
Definition: ALFA_GloRec.h:75
AlfaTrackCand
Definition: AlfaLocalHits.h:99
ALFA_GloRec::m_pGloRecEvCollection
ALFA_GloRecEvCollection * m_pGloRecEvCollection
Definition: ALFA_GloRec.h:87
ALFA_GloRecEvCollection.h
ALFA_GloRec::m_th1_ynearlwpotresiduals
TH1F * m_th1_ynearlwpotresiduals
Definition: ALFA_GloRec.h:144