]>
Commit | Line | Data |
---|---|---|
477d6cee | 1 | #ifndef ALIANAPI0EBE_H |
2 | #define ALIANAPI0EBE_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | /* $Id: AliAnaPi0EbE.h 27413 2008-07-18 13:28:12Z gconesab $ */ | |
6 | ||
7 | //_________________________________________________________________________ | |
8 | // | |
9 | // Class for the analysis of high pT pi0 event by event | |
10 | // Pi0 identified by one of the following: | |
11 | // -Invariant mass of 2 cluster in calorimeter | |
12 | // -Shower shape analysis in calorimeter | |
13 | // -Invariant mass of one cluster in calorimeter and one photon reconstructed in TPC (in near future) | |
14 | // | |
15 | //-- Author: Gustavo Conesa (INFN-LNF) & Raphaelle Ichou (SUBATECH) | |
16 | //_________________________________________________________________________ | |
17 | ||
18 | ||
19 | // --- ROOT system --- | |
57b97dc6 | 20 | class TH3F ; |
477d6cee | 21 | class TList ; |
0c1383b5 | 22 | class TObjString; |
477d6cee | 23 | |
24 | // --- ANALYSIS system --- | |
25 | #include "AliAnaPartCorrBaseClass.h" | |
477d6cee | 26 | |
27 | class AliAnaPi0EbE : public AliAnaPartCorrBaseClass { | |
28 | ||
29 | public: | |
477d6cee | 30 | AliAnaPi0EbE() ; // default ctor |
78219bac | 31 | virtual ~AliAnaPi0EbE() ; //virtual dtor |
32 | private: | |
477d6cee | 33 | AliAnaPi0EbE(const AliAnaPi0EbE & g) ; // cpy ctor |
34 | AliAnaPi0EbE & operator = (const AliAnaPi0EbE & g) ;//cpy assignment | |
78219bac | 35 | |
36 | public: | |
0c1383b5 | 37 | |
c4a7d28a | 38 | //General |
0c1383b5 | 39 | TObjString * GetAnalysisCuts(); |
40 | TList * GetCreateOutputObjects(); | |
477d6cee | 41 | |
c4a7d28a | 42 | void Init(); |
43 | void InitParameters(); | |
44 | void Print(const Option_t * opt) const; | |
45 | ||
46 | void MakeAnalysisFillAOD() ; | |
47 | void MakeAnalysisFillHistograms() ; | |
477d6cee | 48 | |
c4a7d28a | 49 | // Main |
50 | void MakeInvMassInCalorimeter() ; | |
51 | void MakeInvMassInCalorimeterAndCTS() ; | |
52 | void MakeShowerShapeIdentification() ; | |
477d6cee | 53 | |
c4a7d28a | 54 | //Setters Getters |
55 | enum anaTypes {kIMCalo, kSSCalo, kIMCaloTracks}; | |
56 | anaTypes GetAnalysisType() const { return fAnaType ; } | |
57 | void SetAnalysisType(anaTypes ana) { fAnaType = ana ; } | |
477d6cee | 58 | |
c4a7d28a | 59 | TString GetInputAODGammaConvName() const { return fInputAODGammaConvName ; } |
60 | void SetInputAODGammaConvName(TString name) { fInputAODGammaConvName = name ; } | |
477d6cee | 61 | |
62 | //Only for pi0 SS identification case | |
c4a7d28a | 63 | void SetCalorimeter(TString & det) { fCalorimeter = det ; } |
477d6cee | 64 | |
c4a7d28a | 65 | void SetMinDistanceToBadChannel(Float_t m1, Float_t m2, Float_t m3) { |
66 | fMinDist = m1; fMinDist2 = m2; fMinDist3 = m3 ; } | |
477d6cee | 67 | |
57b97dc6 | 68 | //Histograms range |
69 | ||
c4a7d28a | 70 | void SetHistoShowerShapeRangeAndNBins(Float_t min, Float_t max, Int_t n) { |
71 | fHistoSSBins = n ; fHistoSSMax = max ; fHistoSSMin = min ; } | |
57b97dc6 | 72 | |
c4a7d28a | 73 | Int_t GetHistoShowerShapeBins() const { return fHistoSSBins ; } |
74 | Float_t GetHistoShowerShapeMin() const { return fHistoSSMin ; } | |
75 | Float_t GetHistoShowerShapeMax() const { return fHistoSSMax ; } | |
57b97dc6 | 76 | |
77 | ||
477d6cee | 78 | private: |
79 | ||
80 | anaTypes fAnaType; //Select analysis type | |
81 | ||
82 | //Only for pi0 SS identification case, kSSCalo | |
c4a7d28a | 83 | TString fCalorimeter ; // Calorimeter where the gamma is searched; |
84 | Float_t fMinDist ; // Minimal distance to bad channel to accept cluster | |
85 | Float_t fMinDist2; // Cuts on Minimal distance to study acceptance evaluation | |
86 | Float_t fMinDist3; // One more cut on distance used for acceptance-efficiency study | |
477d6cee | 87 | |
88 | //Only for combination of calorimeter and conversion photons, kIMCaloTracks | |
c4a7d28a | 89 | TClonesArray * fInputAODGammaConv; //! AOD array with conversion photons reconstructed in CTS |
90 | TString fInputAODGammaConvName; // Name of AOD branch with conversion photons | |
477d6cee | 91 | |
92 | //Histograms | |
c4a7d28a | 93 | Int_t fHistoSSBins; // Shower Shape parameter histogram number of bins |
94 | Float_t fHistoSSMax; // Shower Shape parameter position maximum value | |
95 | Float_t fHistoSSMin; // Shower Shape parameter position minimum value | |
57b97dc6 | 96 | |
c4a7d28a | 97 | TH1F * fhPtPi0 ; //! Number of identified pi0 vs pT |
98 | TH1F * fhEPi0 ; //! Number of identified pi0 vs E | |
99 | TH3F * fhEEtaPhiPi0 ; //! E vs eta phi of identified pi0 | |
100 | TH2F * fhEDispPi0 ; //! E vs disp of pi0 pairs | |
101 | TH2F * fhEDispBkg ; //! E vs disp of discarded pairs | |
102 | TH2F * fhELambda0Pi0 ; //! E vs lambda0 of pi0 pairs | |
103 | TH2F * fhELambda0Bkg ; //! E vs lambda0 of discarded pairs | |
104 | TH2F * fhELambda1Pi0 ; //! E vs lambda1 of pi0 pairs | |
105 | TH2F * fhELambda1Bkg ; //! E vs lambda1 of discarded pairs | |
106 | ||
107 | TH2F * fhELambdaPi0EtaCen ; //! E vs lambda0 of pi0 pairs, |eta| < 0.2 | |
108 | TH2F * fhELambdaPi0EtaMid ; //! E vs lambda0 of pi0 pairs, 0.2 < |eta| < 0.5 | |
109 | TH2F * fhELambdaPi0EtaBor ; //! E vs lambda0 of pi0 pairs |eta| > 0.5 | |
57b97dc6 | 110 | |
c4a7d28a | 111 | TH2F * fhClusterPairDiffTimeE; //! Pair of clusters time difference vs E |
112 | TH2F * fhClusterPairDiffTimeAsy; //! Pair of clusters time difference vs Asymmetry | |
113 | ||
114 | //MC histograms | |
115 | ||
116 | TH2F * fhELambdaPhNoConv ; //! E vs lambda0 of pi0 pairs(Really photons not conversion) | |
117 | TH2F * fhELambdaConvPhotons ; //! E vs lambda0 of pi0 pairs (converted photons) | |
118 | TH2F * fhELambdaElectrons ; //! E vs lambda0 of pi0 pairs (Electrons) | |
119 | TH2F * fhELambdaPi0NoPh ; //! E vs lambda0 of pi0 pairs(Son pi0s) | |
120 | TH2F * fhELambdaOtherParts ; //! E vs lambda0 vs pi0 pairs (other particles) | |
121 | ||
122 | TH1F * fhPtMCNoPi0; //! Number of identified pi0, not coming from pi0 | |
123 | TH2F * fhPhiMCNoPi0; //! Phi of identified pi0, not coming from pi0 | |
124 | TH2F * fhEtaMCNoPi0; //! eta of identified pi0, not coming from pi0 | |
125 | TH1F * fhPtMCPi0; //! Number of identified pi0, coming from pi0 | |
126 | TH2F * fhPhiMCPi0; //! Phi of identified pi0, coming from pi0 | |
127 | TH2F * fhEtaMCPi0; //! eta of identified pi0, coming from pi0 | |
128 | ||
129 | ||
130 | ClassDef(AliAnaPi0EbE,4) | |
131 | } ; | |
477d6cee | 132 | |
133 | ||
134 | #endif //ALIANAPI0EBE_H | |
135 | ||
136 | ||
137 |