]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG1/AliComparisonRes.h
Changes needed to properly add and subtract the SDD low threshold with data compresse...
[u/mrichter/AliRoot.git] / PWG1 / AliComparisonRes.h
CommitLineData
6d1c79ca 1#ifndef ALICOMPARISONRES_H\r
2#define ALICOMPARISONRES_H\r
3\r
4//------------------------------------------------------------------------------\r
5// Class to keep information from comparison of \r
6// reconstructed and MC particle tracks (TPC resolution). \r
7// \r
8// Author: J.Otwinowski 04/02/2008 \r
9//------------------------------------------------------------------------------\r
10\r
11class TFile;\r
12class AliMCInfo;\r
13class AliESDRecInfo;\r
14class AliESDEvent; \r
15class AliESD;\r
16class AliESDfriend;\r
17class AliMCInfoCuts;\r
18class AliRecInfoCuts;\r
19class TH1I;\r
20class TH3F;\r
21class TH3;\r
22class TProfile;\r
23class TProfile2D;\r
24class AliESDVertex;\r
25\r
26#include "TNamed.h"\r
27\r
28class AliComparisonRes : public TNamed {\r
29public :\r
30 AliComparisonRes(); \r
31 virtual ~AliComparisonRes();\r
32 void InitHisto();\r
33 void InitCuts();\r
34 void Exec(AliMCInfo* infoMC, AliESDRecInfo *infoRC);\r
35 void ProcessConstrained(AliMCInfo* infoMC, AliESDRecInfo *infoRC);\r
36 void Process(AliMCInfo* infoMC, AliESDRecInfo *infoRC);\r
37\r
38 // Selection cuts\r
39 void SetAliRecInfoCuts(AliRecInfoCuts* cuts=0) {fCutsRC = cuts;} \r
40 void SetAliMCInfoCuts(AliMCInfoCuts* cuts=0) {fCutsMC = cuts;} \r
41 \r
42 AliRecInfoCuts* GetAliRecInfoCuts() const {return fCutsRC;} \r
43 AliMCInfoCuts* GetAliMCInfoCuts() const {return fCutsMC;} \r
44\r
45 // Merge output objects (needed by PROOF) \r
46 virtual Long64_t Merge(TCollection* list);\r
47\r
48 // Analyse output histograms\r
49 void Analyse();\r
50 static TH1F* MakeResol(TH2F * his, Int_t integ, Bool_t type); \r
51\r
52\r
53private:\r
54 //\r
55 // Control histograms\r
56 //\r
57 TH2F* fPtResolLPT; //-> pt resolution - low pt\r
58 TH2F* fPtResolHPT; //-> pt resolution - high pt \r
59 TH2F* fPtPullLPT; //-> pt resolution - low pt\r
60 TH2F* fPtPullHPT; //-> pt resolution - high pt \r
61\r
62 //\r
63 // Resolution constrained param\r
64 //\r
65 TH2F *fCPhiResolTan; //-> angular resolution - constrained\r
66 TH2F *fCTanResolTan; //-> angular resolution - constrained\r
67 TH2F *fCPtResolTan; //-> pt resolution - constrained\r
68 TH2F *fCPhiPullTan; //-> angular resolution - constrained\r
69 TH2F *fCTanPullTan; //-> angular resolution - constrained\r
70 TH2F *fCPtPullTan; //-> pt resolution - constrained\r
71\r
72 //\r
73 // Histograms for track resolution parameterisation\r
74 //\r
79916a3f 75\r
76 TH2F* f1Pt2Resol1PtTPC; //-> (1/mcpt-1/pt)/(1+1/pt)^2 vs 1/pt (TPC)\r
77 TH2F* f1Pt2Resol1PtTPCITS; //-> (1/mcpt-1/pt)/(1+1/pt)^2 vs 1/pt (TPC+ITS)\r
78 TH2F* fYResol1PtTPC; //-> (mcy-y)/(0.2+1/pt) vs 1/pt (TPC) \r
79 TH2F* fYResol1PtTPCITS; //-> (mcy-y)/(0.2+1/pt) vs 1/pt (TPC + ITS) \r
80 TH2F* fZResol1PtTPC; //-> (mcz-z)/(0.2+1/pt) vs 1/pt (TPC)\r
81 TH2F* fZResol1PtTPCITS; //-> (mcz-z)/(0.2+1/pt) vs 1/pt (TPC+ITS)\r
82 TH2F* fPhiResol1PtTPC; //-> (mcphi-phi)/(0.1+1/pt) vs 1/pt (TPC)\r
83 TH2F* fPhiResol1PtTPCITS; //-> (mcphi-phi)/(0.1+1/pt) vs 1/pt (TPC+ITS)\r
84 TH2F* fThetaResol1PtTPC; //-> (mctheta-theta)/(0.1+1/pt) vs 1/pt (TPC)\r
85 TH2F* fThetaResol1PtTPCITS; //-> (mctheta-theta)/(0.1+1/pt) vs 1/pt (TPC+ITS)\r
86 \r
87 // constrained\r
6d1c79ca 88 TH2F* fC1Pt2Resol1PtTPC; //-> (1/mcpt-1/pt)/(1+1/pt)^2 vs 1/pt (TPC)\r
89 TH2F* fC1Pt2Resol1PtTPCITS; //-> (1/mcpt-1/pt)/(1+1/pt)^2 vs 1/pt (TPC+ITS)\r
90 TH2F* fCYResol1PtTPC; //-> (mcy-y)/(0.2+1/pt) vs 1/pt (TPC) \r
91 TH2F* fCYResol1PtTPCITS; //-> (mcy-y)/(0.2+1/pt) vs 1/pt (TPC + ITS) \r
92 TH2F* fCZResol1PtTPC; //-> (mcz-z)/(0.2+1/pt) vs 1/pt (TPC)\r
93 TH2F* fCZResol1PtTPCITS; //-> (mcz-z)/(0.2+1/pt) vs 1/pt (TPC+ITS)\r
94 TH2F* fCPhiResol1PtTPC; //-> (mcphi-phi)/(0.1+1/pt) vs 1/pt (TPC)\r
95 TH2F* fCPhiResol1PtTPCITS; //-> (mcphi-phi)/(0.1+1/pt) vs 1/pt (TPC+ITS)\r
96 TH2F* fCThetaResol1PtTPC; //-> (mctheta-theta)/(0.1+1/pt) vs 1/pt (TPC)\r
97 TH2F* fCThetaResol1PtTPCITS; //-> (mctheta-theta)/(0.1+1/pt) vs 1/pt (TPC+ITS)\r
98\r
99 AliESDVertex *fVertex; //! \r
100\r
101 // Global cuts objects\r
102 AliRecInfoCuts* fCutsRC; // selection cuts for reconstructed tracks\r
103 AliMCInfoCuts* fCutsMC; // selection cuts for MC tracks\r
104\r
105 AliComparisonRes(const AliComparisonRes&); // not implemented\r
106 AliComparisonRes& operator=(const AliComparisonRes&); // not implemented\r
107\r
108 ClassDef(AliComparisonRes,1);\r
109};\r
110\r
111#endif\r