]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG/FLOW/Tasks/AliAnalysisTaskFittingQDistribution.h
from Ante Bilandzic:
[u/mrichter/AliRoot.git] / PWG / FLOW / Tasks / AliAnalysisTaskFittingQDistribution.h
1 /* 
2  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. 
3  * See cxx source for full Copyright notice 
4  * $Id$ 
5  */
6
7 /**************************************
8  *    analysis task for fitting       * 
9  *         q-distribution             *
10  *                                    * 
11  * authors: Naomi van der Kolk        *
12  *           (kolk@nikhef.nl)         *  
13  *          Raimond Snellings         *
14  *           (snelling@nikhef.nl)     * 
15  *          Ante Bilandzic            *
16  *           (abilandzic@gmail.com)   * 
17  * ***********************************/
18
19 #ifndef ALIANALYSISTASKFITTINGQDISTRIBUTION_H
20 #define ALIANALYSISTASKFITTINGQDISTRIBUTION_H
21
22 #include "AliAnalysisTaskSE.h"
23 #include "AliFlowCommonConstants.h"
24
25 class TString;
26 class TList;
27 class AliFlowEventSimple;
28 class AliFlowAnalysisWithFittingQDistribution;
29 class TH2D;
30
31 //================================================================================================================
32
33 class AliAnalysisTaskFittingQDistribution : public AliAnalysisTaskSE{
34  public:
35   AliAnalysisTaskFittingQDistribution();
36   AliAnalysisTaskFittingQDistribution(const char *name, Bool_t useWeights=kFALSE);
37   virtual ~AliAnalysisTaskFittingQDistribution(){}; 
38
39   virtual void   UserCreateOutputObjects();
40   virtual void   UserExec(Option_t *option);
41   virtual void   Terminate(Option_t *);
42
43   void SetBookOnlyBasicCCH(Bool_t const bobcch) {this->fBookOnlyBasicCCH = bobcch;};
44   Bool_t GetBookOnlyBasicCCH() const {return this->fBookOnlyBasicCCH;};   
45   void SetUsePhiWeights(Bool_t const uPhiW) {this->fUsePhiWeights = uPhiW;};
46   Bool_t GetUsePhiWeights() const {return this->fUsePhiWeights;};
47   void SetHarmonic(Int_t const harmonic) {this->fHarmonic = harmonic;};
48   Int_t GetHarmonic() const {return this->fHarmonic;};  
49   // q-distribution:
50   void SetqMin(Double_t const qmin) {this->fqMin = qmin;};
51   Double_t GetqMin() const {return this->fqMin;};
52   void SetqMax(Double_t const qmax) {this->fqMax = qmax;};
53   Double_t GetqMax() const {return this->fqMax;};
54   void SetqNbins(Int_t const qNbins) {this->fqNbins = qNbins;};
55   Int_t GetqNbins() const {return this->fqNbins;};  
56   void SetStoreqDistributionVsMult(Bool_t const sqdvm) {this->fStoreqDistributionVsMult = sqdvm;};
57   Bool_t GetStoreqDistributionVsMult() const {return this->fStoreqDistributionVsMult;};  
58   void SetqDistributionVsMult(TH2D* const qdvm) {this->fqDistributionVsMult = qdvm;};
59   TH2D* GetqDistributionVsMult() const {return this->fqDistributionVsMult;};
60   void SetMinMult(Double_t const minm) {this->fMinMult = minm;};
61   Double_t GetMinMult() const {return this->fMinMult;};
62   void SetMaxMult(Double_t const maxm) {this->fMaxMult = maxm;};
63   Double_t GetMaxMult() const {return this->fMaxMult;};
64   void SetnBinsMult(Int_t const nbm) {this->fnBinsMult = nbm;};
65   Int_t GetnBinsMult() const {return this->fnBinsMult;};  
66   void SetDoFit(Bool_t df) {this->fDoFit = df;};
67   Bool_t GetDoFit() const {return this->fDoFit;}; 
68   void SetExactNoRPs(Int_t const enr) {this->fExactNoRPs = enr;};
69   Int_t GetExactNoRPs() const {return this->fExactNoRPs;};
70   void SetMultiplicityIs(AliFlowCommonConstants::ERefMultSource mi) {this->fMultiplicityIs = mi;};
71  
72  private:
73   AliAnalysisTaskFittingQDistribution(const AliAnalysisTaskFittingQDistribution& aatfqd);
74   AliAnalysisTaskFittingQDistribution& operator=(const AliAnalysisTaskFittingQDistribution& aatfqd);
75
76   AliFlowEventSimple* fEvent;                    // the input event
77   AliFlowAnalysisWithFittingQDistribution* fFQD; // Fitting q-distribution (FQD) object
78   TList *fListHistos;                            // collection of output 
79      
80   Bool_t fBookOnlyBasicCCH;              // book only basis common control histrograms (by default book them all) 
81   Bool_t fUseWeights;                    // use any weights
82   Bool_t fUsePhiWeights;                 // phi weights
83   TList* fListWeights;                   // list with weights  
84   Int_t fHarmonic;                       // harmonic   
85   Double_t fqMin;                        // lower boundary of TH1D *fqDistribution
86   Double_t fqMax;                        // upper boundary of TH1D *fqDistribution
87   Int_t fqNbins;                         // number of bins of TH1D *fqDistribution                                             
88   Bool_t fStoreqDistributionVsMult;      // store q-distributions vs M
89   TH2D *fqDistributionVsMult;            // distribution of Q/sqrt{M} vs multiplicity
90   Double_t fMinMult;                     // minimum multiplicity
91   Double_t fMaxMult;                     // maximum multiplicity
92   Int_t fnBinsMult;                      // number of multiplicity bins
93   Bool_t fDoFit;                         // do the final fit
94   Int_t fExactNoRPs;                     // when shuffled, select only this number of RPs for the analysis 
95   AliFlowCommonConstants::ERefMultSource fMultiplicityIs; // by default kRP
96                                                           
97   ClassDef(AliAnalysisTaskFittingQDistribution, 1); 
98 };
99
100 //================================================================================================================
101
102 #endif
103
104
105
106
107
108
109
110
111
112
113