AliPhysics  2b88e80 (2b88e80)
AliAnalysisTaskMixedHarmonics.h
Go to the documentation of this file.
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 mixed harmomics *
9  * *
10  * authors: Naomi van der Kolk *
11  * (kolk@nikhef.nl) *
12  * Raimond Snellings *
13  * (snelling@nikhef.nl) *
14  * Ante Bilandzic *
15  * (anteb@nikhef.nl) *
16  * ***********************************/
17 
18 #ifndef ALIANALYSISTASKMIXEDHARMONICS_H
19 #define ALIANALYSISTASKMIXEDHARMONICS_H
20 
21 
22 #include "AliAnalysisTaskSE.h"
23 
24 class TString;
25 class TList;
26 class AliFlowEventSimple;
28 class AliAODEvent;
29 class AliVVertex;
30 class AliMultSelection;
31 class AliAnalysisUtils;
32 
33 //================================================================================================================
34 
36  public:
38  AliAnalysisTaskMixedHarmonics(const char *name, Bool_t useParticleWeights=kFALSE);
40 
41  virtual void UserCreateOutputObjects();
42  virtual void UserExec(Option_t *option);
43  virtual void Terminate(Option_t *);
44 
45  // common:
46  void SetHarmonic(Int_t const h) {this->fHarmonic = h;};
47  Int_t GetHarmonic() const {return this->fHarmonic;};
48  void SetNoOfMultipicityBins(Int_t const nomb) {this->fNoOfMultipicityBins = nomb;};
50  void SetMultipicityBinWidth(Double_t const mbw) {this->fMultipicityBinWidth = mbw;};
52  void SetMinMultiplicity(Double_t const mm) {this->fMinMultiplicity = mm;};
53  Double_t GetMinMultiplicity() const {return this->fMinMultiplicity;};
54  void SetOppositeChargesPOI(Bool_t const ocp) {this->fOppositeChargesPOI = ocp;};
60  void SetPrintOnTheScreen(Bool_t const pots) {this->fPrintOnTheScreen = pots;};
61  Bool_t GetPrintOnTheScreen() const {return this->fPrintOnTheScreen;};
62  void SetCalculateVsM(Bool_t const cvm) {this->fCalculateVsM = cvm;};
63  Bool_t GetCalculateVsM() const {return this->fCalculateVsM;};
64  void SetShowBinLabelsVsM(Bool_t const sblvm) {this->fShowBinLabelsVsM = sblvm;};
65  Bool_t GetShowBinLabelsVsM() const {return this->fShowBinLabelsVsM;};
66  // particle weights:
67  void SetUsePhiWeights(Bool_t const uPhiW) {this->fUsePhiWeights = uPhiW;};
68  Bool_t GetUsePhiWeights() const {return this->fUsePhiWeights;};
69  void SetUsePtWeights(Bool_t const uPtW) {this->fUsePtWeights = uPtW;};
70  Bool_t GetUsePtWeights() const {return this->fUsePtWeights;};
71  void SetUseEtaWeights(Bool_t const uEtaW) {this->fUseEtaWeights = uEtaW;};
72  Bool_t GetUseEtaWeights() const {return this->fUseEtaWeights;};
73  void SetRejectPileUp(Bool_t pileup) {this->fRejectPileUp = pileup;}
74  void SetRejectPileUpTight(Bool_t pileupT) {this->fRejectPileUpTight = pileupT;}
75  void SetFillQAHistograms(Bool_t const fillQA) {this->fFillQAHistograms = fillQA;};
76 
77  private:
80 
83  double GetWDist(const AliVVertex* v0, const AliVVertex* v1);
84 
85  AliMultSelection* fMultSelection;
86  AliAnalysisUtils* fAnalysisUtil;
87 
88 
89  AliFlowEventSimple *fEvent; // the input event
90  AliFlowAnalysisWithMixedHarmonics *fMH; // mixed harmonics object
91  TList *fListHistos; // collection of output
92  // common:
93  Int_t fHarmonic; // integer n in cos[n(phi1+phi2-2phi3)]
94  Int_t fNoOfMultipicityBins; // number of multiplicity bins
95  Double_t fMultipicityBinWidth; // width of multiplicity bin
96  Double_t fMinMultiplicity; // minimal multiplicity
97  Bool_t fOppositeChargesPOI; // two POIs, psi1 and psi2, in correlator <<cos[psi1+psi2-2phi3)]>> will be taken with opposite charges
98  Bool_t fEvaluateDifferential3pCorrelator; // evaluate <<cos[psi1+psi2-2phi3)]>>, where psi1 and psi2 are two POIs
99  Bool_t fCorrectForDetectorEffects; // correct 3-p correlator for detector effects
100  Bool_t fPrintOnTheScreen; // print or not the final results on the screen
101  Bool_t fCalculateVsM; // calculate correlators vs multiplicity
102  Bool_t fShowBinLabelsVsM; // in histograms holding results vs multiplicity show bin labels in the format M_lowEdge \leq M < M_upperEdge
103  // particle weights:
104  Bool_t fUseParticleWeights; // use any particle weights
105  Bool_t fUsePhiWeights; // use phi weights
106  Bool_t fUsePtWeights; // use pt weights
107  Bool_t fUseEtaWeights; // use eta weights
108 
112 
116 
117  TList *fWeightsList; // list with weights
118 
119 
120 
121 
122 
123 
124 
125 
126  ClassDef(AliAnalysisTaskMixedHarmonics, 1);
127 };
128 
129 //================================================================================================================
130 
131 #endif
132 
133 
134 
135 
136 
137 
138 
139 
140 
141 
142 
double Double_t
Definition: External.C:58
Definition: External.C:236
AliFlowEventSimple * fEvent
Event selection.
void SetEvaluateDifferential3pCorrelator(Bool_t const ed3pc)
void SetMultipicityBinWidth(Double_t const mbw)
void SetFillQAHistograms(Bool_t const fillQA)
AliFlowAnalysisWithMixedHarmonics * fMH
TH2F * fTPCvsESDTrk
Global vs TPC tracks for QA.
int Int_t
Definition: External.C:63
AliAnalysisUtils * fAnalysisUtil
MultSelection (RUN2 centrality estimator)
virtual void UserExec(Option_t *option)
TList * fWeightsList
Global vs TPC tracks for QA.
void SetShowBinLabelsVsM(Bool_t const sblvm)
AliAnalysisTaskMixedHarmonics & operator=(const AliAnalysisTaskMixedHarmonics &aatmh)
void SetCorrectForDetectorEffects(Bool_t const cfde)
const char Option_t
Definition: External.C:48
TH2F * fTPCvsGlobalTrkAfter
Global vs TPC tracks for QA.
bool Bool_t
Definition: External.C:53
double GetWDist(const AliVVertex *v0, const AliVVertex *v1)
Bool_t PileUpMultiVertex(const AliAODEvent *faod)