]>
Commit | Line | Data |
---|---|---|
f7d5860b | 1 | #ifndef ALIEMCALJETFINDERPLOTS_H |
2 | #define ALIEMCALJETFINDERPLOTS_H | |
3 | ||
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * * * See cxx source for full Copyright notice */ | |
6 | ||
73aa79d4 | 7 | |
f7d5860b | 8 | /* $Id$ */ |
9 | ||
10 | //_________________________________________________________________________ | |
11 | // Class for Filling jetfinder plots | |
12 | // | |
13 | //*-- Author: Mark Horner (LBL/UCT) | |
14 | // | |
15 | // | |
16 | ||
17 | ||
18 | ||
19 | #include "TObject.h" | |
20 | #include "TH1F.h" | |
21 | #include "TH2F.h" | |
22 | ||
23 | #include "AliEMCALJetFinderOutput.h" | |
24 | ||
25 | class AliEMCALJetFinderPlots : public TObject | |
26 | { | |
27 | public: | |
28 | AliEMCALJetFinderPlots(); | |
29 | ~AliEMCALJetFinderPlots(); | |
30 | void SetConeRadius(Float_t coneradius){fConeRadius = coneradius;} | |
31 | void SetNominalEnergy(Float_t energy){fNominalEnergy = energy;} | |
32 | void SetDebug(Int_t debug){fDebug = debug;} | |
5a4d90c5 | 33 | void SetBackHisto(TH1F* histo){fhBackHisto=histo;} |
26daf90e | 34 | void FillFromOutput(AliEMCALJetFinderOutput* output,Float_t weight=1.0); |
73aa79d4 | 35 | //========================== CASE 1 ======================== |
36 | // Only consider events with only 1 jet | |
ab01dff2 | 37 | TH1F* GetFragmFcn(){return fhFragmFcn;} |
38 | TH1F* GetPartonFragmFcn(){return fhPartonFragmFcn;} | |
1515a8af | 39 | TH1F* GetPT(){return fhJetPT;} |
40 | TH1F* GetPartonPT(){return fhPartonPT;} | |
ab01dff2 | 41 | TH1F* GetJetJT(){return fhJetJT;} |
42 | TH1F* GetPartonJT(){return fhPartonJT;} | |
43 | TH1F* GetJetPL(){return fhJetPL;} | |
44 | TH1F* GetPartonPL(){return fhPartonPL;} | |
45 | TH1F* GetJetEt(){return fhJetEt;} | |
5a4d90c5 | 46 | TH1F* GetJetEtDiff(){return fhJetEtDiff;} |
ab01dff2 | 47 | TH1F* GetJetEta(){return fhJetEta;} |
48 | TH1F* GetPartonEta(){return fhPartonEta;} | |
49 | TH1F* GetPartonPhi(){return fhPartonPhi;} | |
50 | TH1F* GetJetPhi(){return fhJetPhi;} | |
51 | TH1F* GetEtaDiff(){return fhEtaDiff;} | |
52 | TH1F* GetPhiDiff(){return fhPhiDiff;} | |
53 | TH2F* GetEtaPhiSpread(){return fhEtaPhiSpread;} | |
54 | TH1F* GetNJets(){return fhNJets;} | |
73aa79d4 | 55 | |
56 | //========================== CASE 2 ======================== | |
57 | // Only consider events with at least 2 jets | |
ab01dff2 | 58 | TH1F* GetFragmFcn2(){return fhFragmFcn2;} |
59 | TH1F* GetPartonFragmFcn2(){return fhPartonFragmFcn2;} | |
1515a8af | 60 | TH1F* GetPT2(){return fhJetPT2;} |
61 | TH1F* GetPartonPT2(){return fhPartonPT2;} | |
ab01dff2 | 62 | TH1F* GetJetJT2(){return fhJetJT2;} |
63 | TH1F* GetPartonJT2(){return fhPartonJT2;} | |
64 | TH1F* GetJetPL2(){return fhJetPL2;} | |
65 | TH1F* GetPartonPL2(){return fhPartonPL2;} | |
66 | TH1F* GetJetEt2(){return fhJetEt2;} | |
5a4d90c5 | 67 | TH1F* GetJetEtDiff2(){return fhJetEtDiff2;} |
ab01dff2 | 68 | TH1F* GetJetEta2(){return fhJetEta2;} |
69 | TH1F* GetPartonEta2(){return fhPartonEta2;} | |
70 | TH1F* GetPartonPhi2(){return fhPartonPhi2;} | |
71 | TH1F* GetJetPhi2(){return fhJetPhi2;} | |
72 | TH1F* GetEtaDiff2(){return fhEtaDiff2;} | |
73 | TH1F* GetPhiDiff2(){return fhPhiDiff2;} | |
74 | TH2F* GetEtaPhiSpread2(){return fhEtaPhiSpread2;} | |
75 | TH1F* GetNJets2(){return fhNJets2;} | |
76 | TH1F* GetJetEtSecond2(){return fhJetEtSecond2;} | |
77 | TH1F* GetJetEtRatio2(){return fhJetEtRatio2;} | |
78 | TH1F* GetEtaPhiDist2(){return fhEtaPhiDist2;} | |
73aa79d4 | 79 | |
492f773f | 80 | |
81 | TH1F* GetJetPt(){return fhJetPT ;} | |
82 | TH1F* GetPartonPt(){return fhPartonPT ;} | |
83 | TH1F* GetJetPt2(){return fhJetPT2;} | |
84 | TH1F* GetPartonPt2(){return fhPartonPT2;} | |
85 | TH1F* GetRecoBinFragmFcn() {return fhRecoBinFragmFcn;} | |
5a4d90c5 | 86 | TH1F* GetRecoBinFragmFcnNoBg() {return fhRecoBinFragmFcnNoBg;} |
492f773f | 87 | TH1F* GetRecoBinPartonFragmFcn() {return fhRecoBinPartonFragmFcn;} |
88 | ||
63131144 | 89 | //============================== ALL CASES ============================================ |
90 | ||
91 | TH2F* GetInputOutput(){return fhInputOutput;} | |
92 | ||
93 | //============================== Reconstruction Bin Comparison ============================================ | |
94 | ||
95 | TH1F* GetRecoBinPt(){return fhRecoBinPt;} // ("fhRecoBinPt","Reconstructed Pt Distribution",100,0,1); | |
9622226e | 96 | TH1F* GetRecoBinPtNoBg(){return fhRecoBinPtNoBg;} // ("fhRecoBinPt","Reconstructed Pt Distribution",100,0,1); |
63131144 | 97 | TH1F* GetRecoBinPartonPt(){return fhRecoBinPartonPt;} // ("fhRecoBinPartonPt","Input Pt Distribution",100,0,1); |
98 | TH1F* GetRecoBinJetEt(){return fhRecoBinJetEt;} // ("fhRecoJetEt","E_{T}^{reco}",250,0.,250.); | |
99 | TH1F* GetRecoBinInputJetEt(){return fhRecoBinInputJetEt;} // ("fhRecoInputJetEt","E_{T}^{reco}",250,0.,250.); | |
100 | ||
f7d5860b | 101 | private: |
102 | void InitPlots(); | |
103 | Int_t fDebug; // Debug value | |
104 | Float_t fConeRadius; // Cone radius to be used in filling | |
105 | Float_t fNominalEnergy; // Force a nominal energy - specifically for 80+20 jets | |
106 | AliEMCALJetFinderOutput* fOutput; // Output object to be analysed | |
73aa79d4 | 107 | //===================== CASE 1 =========================================== |
ab01dff2 | 108 | TH1F *fhFragmFcn; // ("hFragmFcn","Fragmentation Function",100,0,1); |
109 | TH1F *fhPartonFragmFcn;// ("hFragmFcn","Parton Fragmentation Function",100,0,1); | |
110 | TH1F *fhPartonJT; // ("hPartonJT","Track Momentum Perpendicular to Parton Axis",100,0.,10.); | |
111 | TH1F *fhPartonPL; // ("hPartonPL","Track Momentum Parallel to Parton Axis ",100,0.,100.); | |
112 | TH1F *fhJetJT; // ("hJetJT","Track Momentum Perpendicular to Jet Axis",100,0.,10.); | |
113 | TH1F *fhJetPL; // ("hJetPL","Track Momentum Parallel to Jet Axis ",100,0.,100.); | |
114 | TH1F *fhJetEt; // ("hJetEt","E_{T}^{reco}",250,0.,250.); | |
5a4d90c5 | 115 | TH1F *fhJetEtDiff; // ("hJetEt","E_{T}^{reco}",250,0.,250.); |
ab01dff2 | 116 | TH1F *fhJetEta; // ("hJetEta","#eta_{jet}^{reco}",180,-0.9,0.9); |
117 | TH1F *fhJetPhi; // ("hJetPhi","#phi_{jet}^{reco}",62,0.,3.1); | |
118 | TH1F *fhPartonEta; // ("hPartonEta","#eta_{Parton}",180,-0.9,0.9); | |
119 | TH1F *fhPartonPhi; // ("hPartonPhi","#phi_{Parton}",62,0.,3.1); | |
120 | TH1F *fhEtaDiff; // ("hEtaDiff","#eta_{jet}^{reco}-#eta_{jet}^{input}",100,-0.5,0.5); | |
121 | TH1F *fhPhiDiff; // ("hPhiDiff","#phi_{jet}^{reco}-#phi_{jet}^{input}",100,-0.5,0.5); | |
122 | TH2F *fhEtaPhiSpread; // ("hEtaPhiSpread","#eta - #phi Distribution | |
f7d5860b | 123 | //of Reconstructed Jets",192,-0.7,0.7,288,pi/3,pi); |
ab01dff2 | 124 | TH1F *fhNJets; // ("hNJets","N Reconstructed jets",11,-0.5,10.5); |
73aa79d4 | 125 | |
126 | //============================== CASE 2 ============================================ | |
127 | ||
ab01dff2 | 128 | TH1F *fhFragmFcn2; // ("hFragmFcn2","Fragmentation Function",100,0,1); |
129 | TH1F *fhPartonFragmFcn2;// ("hFragmFcn2","Parton Fragmentation Function",100,0,1); | |
130 | TH1F *fhPartonJT2; // ("hPartonJT2","Track Momentum Perpendicular to Parton Axis",100,0.,10.); | |
131 | TH1F *fhPartonPL2; // ("hPartonPL2","Track Momentum Parallel to Parton Axis ",100,0.,100.); | |
132 | TH1F *fhJetJT2; // ("hJetJT2","Track Momentum Perpendicular to Jet Axis",100,0.,10.); | |
133 | TH1F *fhJetPL2; // ("hJetPL2","Track Momentum Parallel to Jet Axis ",100,0.,100.); | |
134 | TH1F *fhJetEt2; // ("hJetEt2","E_{T}^{reco}",250,0.,250.); | |
5a4d90c5 | 135 | TH1F *fhJetEtDiff2; // ("hJetEt","E_{T}^{reco}",250,0.,250.); |
ab01dff2 | 136 | TH1F *fhJetEta2; // ("hJetEta2","#eta_{jet}^{reco}",180,-0.9,0.9); |
137 | TH1F *fhJetPhi2; // ("hJetPhi2","#phi_{jet}^{reco}",62,0.,3.1); | |
138 | TH1F *fhPartonEta2; // ("hPartonEta2","#eta_{Parton}",180,-0.9,0.9); | |
139 | TH1F *fhPartonPhi2; // ("hPartonPhi2","#phi_{Parton}",62,0.,3.1); | |
140 | TH1F *fhEtaDiff2; // ("hEtaDiff2","#eta_{jet}^{reco}-#eta_{jet}^{input}",100,-0.5,0.5); | |
141 | TH1F *fhPhiDiff2; // ("hPhiDiff2","#phi_{jet}^{reco}-#phi_{jet}^{input}",100,-0.5,0.5); | |
142 | TH2F *fhEtaPhiSpread2; // ("hEtaPhiSpread2","#eta - #phi Distribution | |
73aa79d4 | 143 | //of Reconstructed Jets",192,-0.7,0.7,288,pi/3,pi); |
ab01dff2 | 144 | TH1F *fhNJets2; // ("hNJets2","N Reconstructed jets",11,-0.5,10.5); |
145 | TH1F *fhJetEtSecond2; //("hJetEtSecond2","E_{T}^{reco}",250,0.,250.); | |
146 | TH1F *fhJetEtRatio2; //("hJetEtRatio2","Ratio of Second Highest to Highest",100,0,1); | |
147 | TH1F *fhEtaPhiDist2; //("hEtaPhiDist2","Angular Distance Between First and Second",100,0,3); | |
73aa79d4 | 148 | |
63131144 | 149 | //============================== ALL CASES ============================================ |
73aa79d4 | 150 | |
63131144 | 151 | TH2F *fhInputOutput; //("hJetEtRatio2","Ratio of Second Highest to Highest",100,0,1); |
73aa79d4 | 152 | |
63131144 | 153 | //============================== Reconstruction Bin Comparison ============================================ |
154 | ||
155 | TH1F *fhRecoBinPt; // ("fhRecoBinPt","Reconstructed Pt Distribution",100,0,1); | |
9622226e | 156 | TH1F *fhRecoBinPtNoBg; // ("fhRecoBinPt","Reconstructed Pt Distribution",100,0,1); |
63131144 | 157 | TH1F *fhRecoBinPartonPt; // ("fhRecoBinPartonPt","Input Pt Distribution",100,0,1); |
158 | TH1F *fhRecoBinJetEt; // ("fhRecoJetEt","E_{T}^{reco}",250,0.,250.); | |
159 | TH1F *fhRecoBinInputJetEt; // ("fhRecoInputJetEt","E_{T}^{reco}",250,0.,250.); | |
1515a8af | 160 | TH1F* fhJetPT ;// new TH1F("hJetPT","P_{T} Distribution",200,0,200); |
161 | TH1F* fhPartonPT ;// new TH1F("hPartonPT","Parton P_{T} Distribution",200,0,1); | |
162 | TH1F* fhJetPT2 ;// new TH1F("hJetPT","P_{T} Distribution",200,0,200); | |
163 | TH1F* fhPartonPT2 ;// new TH1F("hPartonPT","Parton P_{T} Distribution",200,0,1); | |
164 | TH1F* fhRecoBinFragmFcn;//new TH1F("fhRecoBinFragmFcn","Reconstructed Frag. Fcn",100,0,1); | |
5a4d90c5 | 165 | TH1F* fhRecoBinFragmFcnNoBg;//new TH1F("fhRecoBinFragmFcn","Reconstructed Frag. Fcn",100,0,1); |
1515a8af | 166 | TH1F* fhRecoBinPartonFragmFcn;// new TH1F("fhRecoBinPartonFragmFcn","Input Bin Fragm Fcn Distribution",100,0,1); |
da2f0870 | 167 | |
168 | TH1F* fhJetInvE;// new TH1F("fhJetInvE","#frac{1}{E_{R}}",100,0,1); | |
169 | TH1F* fhJetInvE2;// new TH1F("fhJetInvE2","#frac{1}{E_{R}}",100,0,1); | |
5a4d90c5 | 170 | |
171 | TH1F* fhBackHisto; | |
172 | Float_t fScaleFactor; //Scaling to get back to correct energy | |
44f59d68 | 173 | Bool_t fInitialised; // have histograms been initialised |
f7d5860b | 174 | |
175 | ||
492f773f | 176 | ClassDef(AliEMCALJetFinderPlots,6) |
f7d5860b | 177 | |
178 | }; | |
179 | #endif | |
180 |