]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGCF/Correlations/JCORRAN/AliJHistos.h
Merge branch 'master' of https://git.cern.ch/reps/AliRoot
[u/mrichter/AliRoot.git] / PWGCF / Correlations / JCORRAN / AliJHistos.h
1 /* Copyright(c) 1998-2014, ALICE Experiment at CERN, All rights reserved. *
2  * See cxx source for full Copyright notice */
3
4 // Short comment describing what this class does needed!
5
6 //===========================================================
7 // AliJHistos.h
8 //
9 //   J
10 //===========================================================
11
12 #ifndef ALIJHISTOS_H
13 #define ALIJHISTOS_H
14
15 #include <iostream>
16 #include <fstream>
17 #include <stdlib.h>
18 #include <stdio.h>
19
20 #include <TH1.h>
21 #include <TH2.h>
22 #include <TProfile.h>
23 #include <TFile.h>
24 #include <TList.h>
25 #include <TLorentzVector.h>
26
27 #include "AliJConst.h"
28 #include "AliJHistManager.h"
29
30 class AliJCard;
31 class AliJBaseTrack;
32 class AliJPhoton;
33 class AliJTrack;
34
35 using namespace std;
36
37 inline ostream &operator << (ostream &out_file, const TLorentzVector &Vec)
38 {
39   out_file<<"Px="<<Vec.Px()<<" Py="<<Vec.Py()<<" Pz="<<Vec.Pz()<<" E="<<Vec.E()<<" M="<<Vec.M()<<endl;
40   out_file<<"Theta="<<Vec.Theta()<<" Phi="<<Vec.Phi()<<" p="<<Vec.Rho()<<endl;
41   return(out_file);
42 }
43
44 class AliJHistos {
45   
46 public:
47   AliJHistos(AliJCard* cardP); //constructor
48   virtual ~AliJHistos();    //destructor
49   AliJHistos(const AliJHistos& obj);
50   AliJHistos& operator=(const AliJHistos& obj);
51   
52   // create histograms
53   void CreateAzimuthCorrHistos();
54   void CreateIAAMoons();
55   void CreateXEHistos();
56   void CreateXtHistos();
57   
58   void CreateEventTrackHistos();
59   void CreateJetHistos();
60   
61   void CreatePairPtCosThetaStar();
62   void CreatePtCorrHistos();
63   void CreateRunByRunHistos(int runID, int runcounter) const;
64   
65   void ReadInclusiveHistos(const char *inclusFileName);
66   
67 public:
68   AliJCard  *fCard;       // card
69   
70   AliJHistManager * fHMG; // Histogram manager
71   AliJBin fCentBin;       // Bin of Centrality
72   AliJBin fVtxBin;        // Bin of Z-vertex Bin
73   AliJBin fPTtBin;        // Bin of pT Trigged
74   AliJBin fPTaBin;        // Bin of pT Associated
75   AliJBin fXEBin;         // Bin of XE
76   AliJBin fKLongBin;      // Bin of Klong
77   AliJBin fRGapBin;       // Bin of R-gap
78   AliJBin fEtaGapBin;     // Bin of Eta-gap
79   AliJBin fPhiGapBin;     // Bin of Phi-gap
80   AliJBin fMassBin;       // Bin of Mass
81   AliJBin fTypBin;        // Bin of type ( data, mixed ), but is being used for any 2 dimension
82   AliJBin fTypBin3;       // Bin of type3, is being used for any 3 dimension
83   AliJBin fPairPtBin;     // Bin of pT pair
84   
85   AliJTProfile fhMixStat; // comment me
86   
87   //==Pt stat. fcorrelations ===============================================
88   AliJTH1D fTestHist; // test only, remove it not needed
89   AliJTH1D fhPtNear; // comment me
90   AliJTH1D fhPtFar ; // comment me
91   
92   //assorted
93   AliJTH1D fhPhi; // comment me
94   AliJTH1D fhDphiAssoc; // comment me
95   AliJTH1D fhDphiAssocXEbin; // comment me
96                                //2D
97   AliJTH2D fhDphiAssoc2DIAA; // comment me
98   AliJTH2D fhDphiAssoc2D; // comment me
99   
100   // JV // 2D dphi deta histos to study better the background
101   AliJTH2D fhDphiDetaKlong;  // 2D histogram from deltaPhi-deltaEta plane in klong and eta gap bins
102   AliJTH2D fhDphiDetaKlongR; // 2D histogram from deltaPhi-deltaEta plane in klong and R gap bins
103   AliJTH2D fhDphiDetaXe;     // 2D histogram from deltaPhi-deltaEta plane in xlong and eta gap bins
104   AliJTH2D fhDphiDetaXeR;    // 2D histogram from deltaPhi-deltaEta plane in xlong and R gap bins
105   AliJTH2D fhDphiDetaPta;    // 2D histogram from deltaPhi-deltaEta plane in pta and eta gap bins
106   AliJTH2D fhDphiDetaPtaR;   // 2D histogram from deltaPhi-deltaEta plane in pta and R gap bins
107   
108   // JV // pTa distributions in background bins
109   AliJTH1D fhBgAssocKlong;   // background pta distribution in klong and eta gap bins
110   AliJTH1D fhBgAssocKlongR;  // background pta distribution in klong and R gap bins
111   AliJTH1D fhBgAssocXe;      // background pta distribution in xlong and eta gap bins
112   AliJTH1D fhBgAssocXeR;     // background pta distribution in xlong and R gap bins
113   AliJTH1D fhBgAssocPta;     // background pta distribution in pta and eta gap bins
114   AliJTH1D fhBgAssocPtaR;    // background pta distribution in pta and R gap bins
115   
116   AliJTH1D fhDphiAssocIsolTrigg ; // comment me
117   AliJTProfile fhMeanPtAssoc ; // comment me
118   AliJTProfile fhMeanZtAssoc ; // comment me
119   AliJTH1D fhPtAssocUE; //FK// Eta Gap dependent UE
120   AliJTH1D fhPtaEtaGapN; //FK// pta spectrum with Eta Gap
121   AliJTH1D fhPtaRGapN; //FK// pta spectrum with Eta Gap
122   AliJTH1D fhPtAssocUEIsolTrigg; //FK// trigger isolated hadron
123   AliJTH1D fhPtAssocN, fhPtAssocF; // comment needed
124   
125   //cosThetaStar
126   AliJTH1D fhCosThetaStar; // comment me
127   AliJTH2D fhCMSrap;           // comment me
128   AliJTProfile fpCMSrap; // comment me
129   AliJTH1D fhInvMass, fhPairPtMass, fhPairDPhi, fhPairDpT; // comment me
130   AliJTH1D fhPairPtDphi, fhPairPt; // comment me
131   
132   AliJTH1D fhDEtaNear; // comment me
133   AliJTH1D fhDEtaNearM; // comment me
134   AliJTH1D fhDEtaNearXEbin; // comment me
135   AliJTH1D fhDEtaNearMXEbin; // comment me
136   
137   AliJTH1D fhDRNearPt; // comment me
138   AliJTH1D fhDRFarPt; // comment me
139   AliJTH1D fhDRNearPtMoon; // comment me
140   AliJTH1D fhDRFarPtMoon; // comment me
141   AliJTH1D fhDRNearPtMoonM; // comment me
142   AliJTH1D fhDRFarPtMoonM ; // comment me
143   
144   //AliJTH1D *hDEtaUE;
145   AliJTH1D fhDEtaFar; // comment me
146   AliJTH1D fhIphiTrigg; // comment me
147   AliJTH1D fhIetaTrigg; // comment me
148   AliJTH1D fhIphiAssoc; // comment me
149   AliJTH1D fhIetaAssoc; // comment me
150   AliJTH1D fhFixPtBin; // comment me
151   AliJTH1D fhTriggPtBin; // comment me
152   AliJTH1D fhTriggPtBinIsolTrigg; //FK// trigger isolated hadron
153   AliJTH1D fhTriggMult; // comment me
154   AliJTH1D fhAssocPtBin; // comment me
155   //TH1D *hInvMassLike[2][kMaxNoCentrBin][kPtDim], *hInvMassUnLike[2][kMaxNoCentrBin][kPtDim];
156   
157   //==================================================
158   // xe slopes - done manually for the pp purpose only
159   // you have to determine 7 trigger bins
160   //==================================================
161   AliJTH1D     fhxEN, fhxEF,  fhxEFIsolTrigg; // comment me
162   AliJTH1D     fhPoutF; // comment me
163   AliJTH1D         fhxEPtBin; // all=0,near=1,far=2
164                         // xe bins
165   AliJTH1D     fhJT;  // comment me
166   AliJTH1D     fhJTBg;  // comment me
167   AliJTH1D     fhJTBgR;  // comment me
168                          // klong bins
169   AliJTH1D     fhJTKlong;  // comment me
170   AliJTH1D     fhJTKlongBg;  // comment me
171   AliJTH1D     fhJTKlongBgR;  // comment me
172                               // pta bins
173   AliJTH1D     fhJTPta;  // comment me
174   AliJTH1D     fhJTPtaBg;  // comment me
175   AliJTH1D     fhJTPtaBgR;  // comment me
176   
177   //FK//mix2    inclusve spectra
178
179   AliJHistManager * fHmgInclusive;
180   AliJTH1D fhIetaTriggFromFile; //FK//mix2
181   AliJTH1D fhIetaAssocFromFile  ;//FK//mix2
182   AliJTH1D fhIphiTriggFromFile  ;//FK//mix2
183   AliJTH1D fhIphiAssocFromFile  ;//FK//mix2
184   AliJTH1D fhDphiAssocMixFromFile  ;//FK//mix2
185   
186   TH1D *fhDEtaNearMixFromFile[kMaxNoCentrBin][kPtDim][kPtDim]; // comment me
187   
188   //===================================================
189   // Event/Track histograms
190   //===================================================
191   AliJTH1D fhLPpt; // comment me
192   AliJTH1D fhLPpairPt; // comment me
193   AliJTH1D fhChargedPt, fhChargedPtNoCorr; // comment me
194   AliJTH1D fhChargedPtJacek; // comment me
195   AliJTH1D fhChargedPtJacekEta; // 3 bins in eta
196   AliJTH1D fhChargedPtFiete; // comment me
197   AliJTH1D fhVdelta2,fhVdelta3, fhVN; // comment me
198   AliJTProfile fhTrackingEfficiency; // comment needed
199   AliJTProfile fpV2, fpV3, fpVdeltaNorm; // comment me
200   AliJTH1D fhChargedEta; // comment me
201   AliJTH1D fhLPeta; // comment me
202   AliJTH1D fhAssocMult; // comment me
203   AliJTH1D fhChargedMult, fhChargedMultCut; // comment me
204   AliJTH2D fhChargedMultCent; // comment me
205   
206   // XAliJT histogrmas
207   AliJTH1D     fhXt;  // comment needed
208   AliJTH1D     fhXtWeighted; // comment needed
209   AliJTH1D     fhXtWeightedHT; // HT pions
210   AliJTH1D       fhPtForXt; // comment me
211   AliJTProfile fhConeActivity;          // pT sum in cone, to be compared to the ALICE UE results
212   AliJTProfile fhConeActivityIsolated;  // activity for isolated triggers
213   AliJTProfile fhPerpConeActivity;      // pT sum in cone perpendicular to the leading particle
214   AliJTProfile fhPerpConeActivityIsolated;  // same as above but for isolated leading particle
215   
216   AliJTH1D  fhV0AMult; // comment needed
217   
218   AliJTH1D fhZVertRaw; // comment me
219   AliJTH1D fhZVertRawErr; // comment me
220   AliJTH1D fhZVert; // comment me
221   AliJTH1D fhCentr; // comment me
222   AliJTH1D fhiCentr; // comment me
223   AliJTH1D fhEventPerRun; // comment me
224   AliJTH2D fhVertexZTriggVtx; // comment me
225   
226   AliJTH1D fhIsolatedLPpt; // comment me
227   AliJTH1D fhBkgActivity; // comment me
228   
229   // D.J
230   //===================================================
231   // Jet with LP Histograms
232   //===================================================
233   AliJTH1D fhDphiLPJet; // comment me
234   AliJTH1D fhDEtaLPJet; // comment me
235   AliJTH1D fhDPtLPJet; // comment me
236   AliJTH1D fhLPJetPTt; // comment me
237   AliJTH1D fhLPJetPt; // comment me
238   AliJTH1D fhLPJetEtaPTt; // comment me
239   AliJTH1D fhLPJetRapidityPTt; // comment me
240   AliJTH1D fhLPJetMassPTt; // comment me
241   
242   AliJTH1D fhLeadingJetWLPPTt; // comment me
243   
244   AliJTH1D fhJetPt; // comment me
245   AliJTH1D fhLeadingJetPt; // comment me
246   AliJTH1D fhLeadingJetWLPPt; // comment me
247   
248   AliJTH1D fhJetAssymPTt; // comment me
249   AliJTH1D fhJetMassPTt; // comment me
250   AliJTH1D fhJetUEPt; // comment me
251   
252   //===================================================
253   // Jet Histograms
254   //===================================================
255   AliJTH1D fhJetDphi; // comment me
256   AliJTH1D fhJetDeta; // comment me
257   AliJTH1D fhJetMultPt; // comment me
258   
259   //==================================================
260   // Background study
261   //==================================================
262   AliJTH1D fhJetRho; // comment me
263   AliJTH1D fhJetRhoSigma; // comment me
264   
265   AliJTH1D fhJetPartMult; // comment me
266   
267   AliJTH1D fhRecoDiJetM; // comment me
268   AliJTH1D fhRecoDiJetdPhi; // comment me
269   AliJTH1D fhRecoDiJetkT; // comment me
270   
271   //===================================================
272   // parton 71 Histogram
273   //===================================================
274   AliJTH1D fhNParton71 ; // comment me
275   AliJTH1D fhNStringGroup; // comment me
276   AliJTH1D fhNStringGroupFrom; // comment me
277   AliJTH1D fhNTracksInStringGroupFrom; // comment me
278   AliJTH1D fhRapidity71From; // comment me
279   AliJTH1D fhPt71From; // comment me
280   
281   //===================================================
282   // PHENIX histograms
283   //===================================================
284   //==Run-by-Run calib ================================
285   TH1D *fTofPbSc[kMaxNoRuns]; TH1D *fTofPbGl[kMaxNoRuns]; // comment me
286   //==Pt and FlipSlide Spectra=============================================
287   TH1D *fhCglPt3PC[kMaxNoCentrBin],    *fhCglPtFlip3PC[kMaxNoCentrBin]; // comment me
288   TH1D *fhCglPt32PC[kMaxNoCentrBin],   *fhCglPtFlip32PC[kMaxNoCentrBin]; // comment me
289
290
291   AliJTH1D fhTrackSelection; // checking bit convention
292   
293   // Manual bin definitions
294   int fNJacek;        // Number of bins in Jacek binning
295   double *fPttJacek;  // Bin borders in Jacek binning
296   int fNEta;          // Number of bins in eta binning
297   double *fEta;       // Bin borders in eta binning
298   int fNJanFiete;     // Number of bins in JanFiete binning
299   double *fJanFiete;  // Bin borders in JanFiete binning
300   
301   // additional histos
302   AliJTH1D fhEvents; // comment needed
303   AliJTH1D fhEventTrigger; // comment needed
304   
305 protected:
306   double fmaxEtaRange;                       // maximum eta range
307   double fmaxTriggEtaRange;                  // should be the same as above. Use for GeoAccCorr
308   double ftriggFiducCut;                     // fiducial cut for the trigger part in eta. Not in use I think (Jan)
309   int fnUE, fnUEfar;                           // logarithmic binning for some pT and UE histos
310   double fUEBinsx[101], fUEBinsxFar[101];      // logarithmic bins for the underlaying event
311   double fLowRange, fHighRange;                // lower and upper range for dphi histos
312 };
313
314 #endif
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336