2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved.
3 * See cxx source for full Copyright notice
7 /**************************************
8 * analysis task for fitting *
11 * authors: Naomi van der Kolk *
14 * (snelling@nikhef.nl) *
16 * (abilandzic@gmail.com) *
17 * ***********************************/
19 #ifndef ALIANALYSISTASKFITTINGQDISTRIBUTION_H
20 #define ALIANALYSISTASKFITTINGQDISTRIBUTION_H
22 #include "AliAnalysisTaskSE.h"
23 #include "AliFlowCommonConstants.h"
27 class AliFlowEventSimple;
28 class AliFlowAnalysisWithFittingQDistribution;
31 //================================================================================================================
33 class AliAnalysisTaskFittingQDistribution : public AliAnalysisTaskSE{
35 AliAnalysisTaskFittingQDistribution();
36 AliAnalysisTaskFittingQDistribution(const char *name, Bool_t useWeights=kFALSE);
37 virtual ~AliAnalysisTaskFittingQDistribution(){};
39 virtual void UserCreateOutputObjects();
40 virtual void UserExec(Option_t *option);
41 virtual void Terminate(Option_t *);
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;};
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 SetMultiplicityIs(AliFlowCommonConstants::ERefMultSource mi) {this->fMultiplicityIs = mi;};
71 AliAnalysisTaskFittingQDistribution(const AliAnalysisTaskFittingQDistribution& aatfqd);
72 AliAnalysisTaskFittingQDistribution& operator=(const AliAnalysisTaskFittingQDistribution& aatfqd);
74 AliFlowEventSimple* fEvent; // the input event
75 AliFlowAnalysisWithFittingQDistribution* fFQD; // Fitting q-distribution (FQD) object
76 TList *fListHistos; // collection of output
78 Bool_t fBookOnlyBasicCCH; // book only basis common control histrograms (by default book them all)
79 Bool_t fUseWeights; // use any weights
80 Bool_t fUsePhiWeights; // phi weights
81 TList* fListWeights; // list with weights
82 Int_t fHarmonic; // harmonic
83 Double_t fqMin; // lower boundary of TH1D *fqDistribution
84 Double_t fqMax; // upper boundary of TH1D *fqDistribution
85 Int_t fqNbins; // number of bins of TH1D *fqDistribution
86 Bool_t fStoreqDistributionVsMult; // store q-distributions vs M
87 TH2D *fqDistributionVsMult; // distribution of Q/sqrt{M} vs multiplicity
88 Double_t fMinMult; // minimum multiplicity
89 Double_t fMaxMult; // maximum multiplicity
90 Int_t fnBinsMult; // number of multiplicity bins
91 Bool_t fDoFit; // do the final fit
92 AliFlowCommonConstants::ERefMultSource fMultiplicityIs; // by default kRP
94 ClassDef(AliAnalysisTaskFittingQDistribution, 1);
97 //================================================================================================================