1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
4 /* $Id: AliAnalysisTaskPi0V2.h 45956 2010-12-10 12:55:37Z agheata $ */
5 /* AliAnalysisTaskPi0V2.h
7 * Template task producing a P_t spectrum and pseudorapidity distribution.
8 * Includes explanations of physics and primary track selections
10 * Based on tutorial example from offline pages
11 * Edited by Arvinder Palaha
13 #ifndef ALIANALYSISTASKEX01_H
14 #define ALIANALYSISTASKEX01_H
20 class AliESDCaloCluster;
21 class AliESDtrackCuts;
25 #ifndef ALIANALYSISTASKSE_H
26 #include "AliAnalysisTaskSE.h"
29 class AliAnalysisTaskPi0V2 : public AliAnalysisTaskSE {
31 AliAnalysisTaskPi0V2();
32 AliAnalysisTaskPi0V2(const char *name);
33 virtual ~AliAnalysisTaskPi0V2();
35 virtual void UserCreateOutputObjects();
36 virtual void UserExec(Option_t *option);
37 virtual void Terminate(Option_t *);
38 Double_t GetCrossEnergy(const AliVCluster *cluster, Short_t &idmax) const;
39 Double_t GetMaxCellEnergy(const AliVCluster *cluster, Short_t &id) const;
40 Bool_t IsWithinFiducialVolume(Short_t id) const;
41 Bool_t IsGoodCluster(const AliESDCaloCluster *c) const;
42 Bool_t IsGoodPion(const TLorentzVector& p1, const TLorentzVector& p2) const;
43 void FillPion(const TLorentzVector& p1, const TLorentzVector& p2, Double_t EPV0r, Double_t EPV0A, Double_t EPV0C, Double_t EPTPC);
44 void GetMom(TLorentzVector& p, const AliESDCaloCluster *c, Double_t *vertex);
45 void SetsubEventMethod(Bool_t b ) { fcheckEP2sub =b ;}
49 TList *fOutput; //! Output list
50 AliESDEvent *fESD; //!ESD object
52 Bool_t fcheckEP2sub; // do 2 sub event method
53 // NEW HISTO to be declared here
54 Double_t fCentrality; //! Centrality
55 Double_t fEPTPC; //! Evt plane TPC
56 Double_t fEPTPCreso; //! resolution of TPC method
57 Double_t fEPV0; //! EP V0
58 Double_t fEPV0A; //! EP V0A
59 Double_t fEPV0C; //! EP V0C
60 Double_t fEPV0Ar; //! EP V0A reduced
61 Double_t fEPV0Cr; //! EP V0C reduced
62 Double_t fEPV0r; //! EP V0 reduced
63 Double_t fEPV0AR4; //! EP V0A ring4 only
64 Double_t fEPV0AR5; //! EP V0A ring5 only
65 Double_t fEPV0AR6; //! EP V0A ring6 only
66 Double_t fEPV0AR7; //! EP V0A ring7 only
67 Double_t fEPV0CR0; //! EP V0C ring0 only
68 Double_t fEPV0CR1; //! EP V0C ring1 only
69 Double_t fEPV0CR2; //! EP V0C ring2 only
70 Double_t fEPV0CR3; //! EP V0C ring3 only
74 TH1F *hAllcentV0r; //!
75 TH1F *hAllcentV0A; //!
76 TH1F *hAllcentV0C; //!
77 TH1F *hAllcentTPC; //!
78 TH2F *hEPTPC; //! 2-D histo EPTPC vs cent
79 TH2F *hresoTPC; //! 2-D histo TPC resolution vs cent
80 TH2F *hEPV0; //! 2-D histo EPV0 vs cent
81 TH2F *hEPV0A; //! 2-D histo EPV0A vs cent
82 TH2F *hEPV0C; //! 2-D histo EPV0C vs cent
83 TH2F *hEPV0Ar; //! 2-D histo EPV0Ar vs cent
84 TH2F *hEPV0Cr; //! 2-D histo EPV0Cr vs cent
85 TH2F *hEPV0r; //! 2-D histo EPV0r vs cent
86 TH2F *hEPV0AR4; //! 2-D histo EPV0AR4 vs cent
87 TH2F *hEPV0AR7; //! 2-D histo EPV0AR7 vs cent
88 TH2F *hEPV0CR0; //! 2-D histo EPV0AR0 vs cent
89 TH2F *hEPV0CR3; //! 2-D histo EPV0AR3 vs cent
91 TH2F *hdifV0A_V0CR0; //! 2-D histo diff V0A, V0CR0 vs cent
92 TH2F *hdifV0A_V0CR3; //! 2-D histo diff V0A, V0CR3 vs cent
93 TH2F *hdifV0ACR0_V0CR3; //! 2-D histo diff V0CR0, V0CR3 vs cent
94 TH2F *hdifV0C_V0AR4; //! 2-D histo diff V0C, V0AR4 vs cent
95 TH2F *hdifV0C_V0AR7; //! 2-D histo diff V0C, V0AR7 vs cent
96 TH2F *hdifV0AR4_V0AR7; //! 2-D histo diff V0AR7, V0AR4 vs cent
98 TH2F *hdifV0A_V0C; //! 2-D histo diff V0A - V0C
99 TH2F *hdifV0A_TPC; //! 2-D histo diff V0A - TPC
100 TH2F *hdifV0C_TPC; //! 2-D histo diff V0C - TPC
101 TH2F *hdifV0C_V0A; //! 2-D histo diff V0C - V0A
103 TH3F *hdifEMC_EP; //! 2-D histo dif phi in EMC with EP
104 TH3F *hdifful_EP; //! 2-D histo dif phi in full with EP
105 TH3F *hdifout_EP; //! 2-D histo dif phi NOT in EMC with EP
107 THnSparse *fHEPV0r; //! Flow 4-D Histo
108 THnSparse *fHEPV0A; //! Flow 4-D Histo
109 THnSparse *fHEPV0C; //! Flow 4-D Histo
110 THnSparse *fHEPTPC; //! Flow 4-D Histo
114 AliAnalysisTaskPi0V2(const AliAnalysisTaskPi0V2&); // not implemented
115 AliAnalysisTaskPi0V2& operator=(const AliAnalysisTaskPi0V2&); // not implemented
117 ClassDef(AliAnalysisTaskPi0V2, 3); // example of analysis