]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG4/totEt/AliAnalysisHadEtCorrections.cxx
- adding histograms for energy deposited by identified charged particles
[u/mrichter/AliRoot.git] / PWG4 / totEt / AliAnalysisHadEtCorrections.cxx
1 //Created by Christine Nattrass, Rebecca Scott, Irakli Martashvili
2 //University of Tennessee at Knoxville
3 // This is a container class for the correction factors for the hadronic 
4 // component of transverse energy
5 // It is filled by the output of AliAnalysisTaskHadEt from spinning over Monte 
6 // Carlo data (using AliAnalysisHadEtMonteCarlo)
7 //It is used by AliAnalysisTaskHadEt while spinning over reconstructed data 
8 // (using AliAnalysisHadEtReconstructed)
9 //Please see https://twiki.cern.ch/twiki/bin/view/ALICE/ETCaloAnalysis
10 #include "AliAnalysisHadEtCorrections.h"
11 #include "TMath.h"
12 #include <iostream>
13 #include "Rtypes.h"
14 #include "TNamed.h"
15
16 using namespace std;
17
18 ClassImp(AliAnalysisHadEtCorrections);
19
20
21 AliAnalysisHadEtCorrections::AliAnalysisHadEtCorrections() : TNamed(),
22   fEtaCut(0)
23   ,fAcceptanceCorrectionFull(0)
24   ,fAcceptanceCorrectionEMCAL(0)
25   ,fAcceptanceCorrectionPHOS(0)
26   ,fNeutralCorrection(0)
27   ,fNotHadronicCorrection(0)
28   ,fpTcutCorrectionTPC(0)
29   ,fpTcutCorrectionITS(0)
30   ,fNeutralCorrectionLow(0)
31   ,fNotHadronicCorrectionLow(0)
32   ,ffpTcutCorrectionTPCLow(0)
33   ,ffpTcutCorrectionITSLow(0)
34   ,fNeutralCorrectionHigh(0)
35   ,fNotHadronicCorrectionHigh(0)
36   ,ffpTcutCorrectionTPCHigh(0)
37   ,ffpTcutCorrectionITSHigh(0)
38   ,fnotIDTPC(0)
39   ,fnotIDITS(0)
40   ,fnotIDNoID(0)
41   ,fEfficiencyPionTPC(0)
42   ,fEfficiencyKaonTPC(0)
43   ,fEfficiencyProtonTPC(0)
44   ,fEfficiencyHadronTPC(0)
45   ,fEfficiencyPionITS(0)
46   ,fEfficiencyKaonITS(0)
47   ,fEfficiencyProtonITS(0)
48   ,fEfficiencyHadronITS(0)
49   ,fBackgroundTPC(0)
50   ,fBackgroundITS(0)
51 {//default constructor
52   //This seems to solve a compiler error
53   cout<<"Creating new AliAnalysisHadEtCorrections"<<endl;
54
55 }
56 AliAnalysisHadEtCorrections::~AliAnalysisHadEtCorrections()
57 {//destructor
58   //Clear();
59     delete fnotIDTPC;
60     delete fnotIDITS;
61     delete fnotIDNoID;
62     delete fEfficiencyPionTPC;
63     delete fEfficiencyKaonTPC;
64     delete fEfficiencyProtonTPC;
65     delete fEfficiencyHadronTPC;
66     delete fEfficiencyPionITS;
67     delete fEfficiencyKaonITS;
68     delete fEfficiencyProtonITS;
69     delete fEfficiencyHadronITS;
70     delete fBackgroundTPC;
71     delete fBackgroundITS;
72 //     fnotIDTPC->Clear();
73 //     fnotIDITS->Clear();
74 //     fnotIDNoID->Clear();
75 //     fEfficiencyPionTPC->Clear();
76 //     fEfficiencyKaonTPC->Clear();
77 //     fEfficiencyProtonTPC->Clear();
78 //     fEfficiencyHadronTPC->Clear();
79 //     fEfficiencyPionITS->Clear();
80 //     fEfficiencyKaonITS->Clear();
81 //     fEfficiencyProtonITS->Clear();
82 //     fEfficiencyHadronITS->Clear();
83 //     fBackgroundTPC->Clear();
84 //     fBackgroundITS->Clear();
85 }
86 AliAnalysisHadEtCorrections::AliAnalysisHadEtCorrections(const AliAnalysisHadEtCorrections *g): TNamed(),
87   fEtaCut(g->fEtaCut)
88   ,fAcceptanceCorrectionFull(g->fAcceptanceCorrectionFull)
89   ,fAcceptanceCorrectionEMCAL(g->fAcceptanceCorrectionEMCAL)
90   ,fAcceptanceCorrectionPHOS(g->fAcceptanceCorrectionPHOS)
91   ,fNeutralCorrection(g->fNeutralCorrection)
92   ,fNotHadronicCorrection(g->fNotHadronicCorrection)
93   ,fpTcutCorrectionTPC(g->fpTcutCorrectionTPC)
94   ,fpTcutCorrectionITS(g->fpTcutCorrectionITS)
95   ,fNeutralCorrectionLow(g->fNeutralCorrectionLow)
96   ,fNotHadronicCorrectionLow(g->fNotHadronicCorrectionLow)
97   ,ffpTcutCorrectionTPCLow(g->ffpTcutCorrectionTPCLow)
98   ,ffpTcutCorrectionITSLow(g->ffpTcutCorrectionITSLow)
99   ,fNeutralCorrectionHigh(g->fNeutralCorrectionHigh)
100   ,fNotHadronicCorrectionHigh(g->fNotHadronicCorrectionHigh)
101   ,ffpTcutCorrectionTPCHigh(g->ffpTcutCorrectionTPCHigh)
102   ,ffpTcutCorrectionITSHigh(g->ffpTcutCorrectionITSHigh)
103   ,fnotIDTPC(0)
104   ,fnotIDITS(0)
105   ,fnotIDNoID(0)
106   ,fEfficiencyPionTPC(0)
107   ,fEfficiencyKaonTPC(0)
108   ,fEfficiencyProtonTPC(0)
109   ,fEfficiencyHadronTPC(0)
110   ,fEfficiencyPionITS(0)
111   ,fEfficiencyKaonITS(0)
112   ,fEfficiencyProtonITS(0)
113   ,fEfficiencyHadronITS(0)
114   ,fBackgroundTPC(0)
115   ,fBackgroundITS(0)
116 {//copy constructor
117   //SetName(g->GetName());
118   fnotIDTPC = new TH1D(*(g->fnotIDTPC));
119   fnotIDITS = new TH1D(*(g->fnotIDITS));
120   fnotIDNoID = new TH1D(*(g->fnotIDNoID));
121   fEfficiencyPionTPC = new TH1D(*(g->fEfficiencyPionTPC));
122   fEfficiencyKaonTPC = new TH1D(*(g->fEfficiencyKaonTPC));
123   fEfficiencyProtonTPC = new TH1D(*(g->fEfficiencyProtonTPC));
124   fEfficiencyHadronTPC = new TH1D(*(g->fEfficiencyHadronTPC));
125   fEfficiencyPionITS = new TH1D(*(g->fEfficiencyPionITS));
126   fEfficiencyKaonITS = new TH1D(*(g->fEfficiencyKaonITS));
127   fEfficiencyProtonITS = new TH1D(*(g->fEfficiencyProtonITS));
128   fEfficiencyHadronITS = new TH1D(*(g->fEfficiencyHadronITS));
129   fBackgroundTPC = new TH1D(*(g->fBackgroundTPC));
130   fBackgroundITS = new TH1D(*(g->fBackgroundITS));
131 }
132
133 // AliAnalysisHadEtCorrections & operator = (const AliAnalysisHadEtCorrections & g) {
134
135 //   fEtaCut=g->fEtaCut;
136 //   fAcceptanceCorrectionFull=g->fAcceptanceCorrectionFull;
137 //   fAcceptanceCorrectionEMCAL=g->fAcceptanceCorrectionEMCAL;
138 //   fAcceptanceCorrectionPHOS=g->fAcceptanceCorrectionPHOS;
139 //   fNeutralCorrection=g->fNeutralCorrection;
140 //   fNotHadronicCorrection=g->fNotHadronicCorrection;
141 //   fpTcutCorrectionTPC=g->fpTcutCorrectionTPC;
142 //   fpTcutCorrectionITS=g->fpTcutCorrectionITS;
143 //   fNeutralCorrectionLow=g->fNeutralCorrectionLow;
144 //   fNotHadronicCorrectionLow=g->fNotHadronicCorrectionLow;
145 //   ffpTcutCorrectionTPCLow=g->ffpTcutCorrectionTPCLow;
146 //   ffpTcutCorrectionITSLow=g->ffpTcutCorrectionITSLow;
147 //   fNeutralCorrectionHigh=g->fNeutralCorrectionHigh;
148 //   fNotHadronicCorrectionHigh=g->fNotHadronicCorrectionHigh;
149 //   ffpTcutCorrectionTPCHigh=g->ffpTcutCorrectionTPCHigh;
150 //   ffpTcutCorrectionITSHigh=g->ffpTcutCorrectionITSHigh;
151
152 //   fnotIDTPC = g->fnotIDTPC;
153 //   fnotIDITS = g->fnotIDITS;
154 //   fnotIDNoID = g->fnotIDNoID;
155 //   fEfficiencyPionTPC = g->fEfficiencyPionTPC;
156 //   fEfficiencyKaonTPC = g->fEfficiencyKaonTPC;
157 //   fEfficiencyProtonTPC = g->fEfficiencyProtonTPC;
158 //   fEfficiencyHadronTPC = g->fEfficiencyHadronTPC;
159 //   fEfficiencyPionITS = g->fEfficiencyPionITS;
160 //   fEfficiencyKaonITS = g->fEfficiencyKaonITS;
161 //   fEfficiencyProtonITS = g->fEfficiencyProtonITS;
162 //   fEfficiencyHadronITS = g->fEfficiencyHadronITS;
163 //   fBackgroundTPC = g->fBackgroundTPC;
164 //   fBackgroundITS = g->fBackgroundITS;
165 // }