AliPhysics  7c37cfa (7c37cfa)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliFlowAnalysisWithSimpleSP.h
Go to the documentation of this file.
1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2  * See cxx source for full Copyright notice */
3 
4 /* $Id$ */
5 
6 
7 #ifndef ALIFLOWANALYSISWITHSIMPLESP_H
8 #define ALIFLOWANALYSISWITHSIMPLESP_H
9 
10 class AliFlowTrackSimple;
11 class AliFlowEventSimple;
12 class AliFlowCommonHist;
14 
15 #include "TList.h"
16 #include "AliFlowAnalysis.h"
17 
18 class TH1D;
19 class TH1F;
20 class TH2D;
21 class TProfile;
22 class TDirectoryFile;
23 
25 // Description: Simple scalar product method
26 // author: Redmer Alexander Bertens (rbertens@cern.ch)
27 // but cloned from the original Scalar Product task
29 
31  public:
32 
33  AliFlowAnalysisWithSimpleSP(); //default constructor
34  virtual ~AliFlowAnalysisWithSimpleSP(); //destructor
35 
36  void Init(); //Define output objects
37  void Make(AliFlowEventSimple* anEvent); //Main routine
38  void GetOutputHistograms(TList *outputListHistos); //Copy output objects from TList
39  void Finish(Bool_t A = kFALSE); //Fill results
40  void WriteHistograms(TDirectoryFile *outputFileName) const; //writes histograms locally (for OnTheFly)
41 
42 
43  void SetHarmonic(Int_t iHarmonic) { fHarmonic = iHarmonic; }
44  void SetWeights(Bool_t weights) { fWeights = weights; }
45  void SetScaling(Bool_t scaling) { fScaling = scaling; }
51  fExternalResErr = s;}
52  Bool_t IsEqualRel(double dX, double dY, double epsilon) {
53  return TMath::Abs(dX - dY) <= epsilon;
54  }
55 
56  void SetDebug(Bool_t bVal) { fDebug = bVal; }
57  void SetBookOnlyBasicCCH(Bool_t bVal) { fMinimalBook = bVal; }
58  void SetTotalQvector(Int_t iVal) { fTotalQvector = iVal; }
59 
60  void SetUsePhiWeights(Bool_t bVal) { fUsePhiWeights = bVal; }
61  void SetWeightsList(TList* const aWeightsList) { fWeightsList = (TList*)aWeightsList->Clone(); }
62 
63  TList* GetHistList() const { return fHistList; }
64  TProfile* GetHistProConfig() const { return fHistProConfig; }
65  TH1D* GetHistProUQ(Int_t iRFPorPOI, Int_t iPTorETA) const { return fHistProUQ[iRFPorPOI][iPTorETA]; }
66  TProfile* GetHistProQaQbNorm() const { return fHistProQaQbNorm; }
67  TProfile* GetHistProNUAq() const { return fHistProNUAq; }
68  TProfile* GetHistProNUAu(Int_t iRFPorPOI, Int_t iPTorETA, Int_t iIMorRE) const { return fHistProNUAu[iRFPorPOI][iPTorETA][iIMorRE]; }
70  TProfile* GetHistProUQQaQb( Int_t iRFPorPOI, Int_t iPTorETA ) const { return fHistProUQQaQb[iRFPorPOI][iPTorETA]; }
71  TH1D* GetHistSumOfWeightsu(Int_t iRFPorPOI, Int_t iPTorETA, Int_t iWeight) const { return fHistSumOfWeightsu[iRFPorPOI][iPTorETA][iWeight]; }
74 
75  private:
76  AliFlowAnalysisWithSimpleSP(const AliFlowAnalysisWithSimpleSP& anAnalysis); //copy constructor
77  AliFlowAnalysisWithSimpleSP& operator=(const AliFlowAnalysisWithSimpleSP& anAnalysis); //assignment operator
78 
79 
80  Int_t fDebug ; // flag for analysis: more print statements
81  Bool_t fMinimalBook; // flag to turn off QA and minimize FlowCommonHist
82  Int_t fUsePhiWeights; // use phi weights
83  Int_t fApplyCorrectionForNUA; // apply correction for non-uniform acceptance
84  Int_t fHarmonic; // harmonic
85  Bool_t fWeights; // use evnet weights
86  Bool_t fScaling; // use qvec scaling
87  Int_t fNormalizationType; // 0: EP mode || 1: SP mode
88  Bool_t fV0SanityCheck; // test to suppress NaN/inf values
89  Float_t fExternalResolution; // external resolution (only used when set)
90  Float_t fExternalResErr; // uncertainty of external resolution
91  Int_t fTotalQvector; // 1:Qa 2:Qb 3:QaQb
92 
93  TList* fWeightsList; // list holding input histograms with phi weights
94  TList* fHistList; // list to hold all output histograms
95  TProfile* fHistProConfig; // configuration values
96  TProfile* fHistProQaQbNorm; // average of QaQb
97  TH1D* fHistSumOfWeights; // holds sum of Na*Nb and (Na*Nb)^2
98  TProfile* fHistProNUAq; // NUA related qq
99  Float_t fCentralityWeight; // centrality weight
100 
101  //QAHists
102  TProfile* fHistProQNorm; // QNorm
103  TH1D* fHistProQaQb; // QaQb
104  TH1D* fHistProQaQbM; // QaQb/MaMb
105  TH2D* fHistMaMb; // MaMb
106  TH2D* fHistQNormQaQbNorm; // QNorm vs QaQbNorm
107  TH2D* fHistQaNormMa; // QaNorm Ma
108  TH2D* fHistQbNormMb; // QbNorm Mb
109  TH1D* fResolution; // Resolution
110  TH1D* fHistQaQb; // QaQb
111  TH1D* fHistQaQc; // QaQc
112  TH1D* fHistQbQc; // QbQc
113  TH1D* fHistQaQbCos; // QaQbCos
114  TH1I* fHistNumberOfSubtractedDaughters; //how many daughters were subtracted during Q calculation?
115 
116  AliFlowCommonHist* fCommonHists; // control histograms
117  AliFlowCommonHist* fCommonHistsuQ; // control histograms
119 
120  TH1F* fPhiWeightsSub[2]; // histogram holding phi weights for subevents
121  TProfile* fHistProUQ[2][2]; // uQ for RP|POI PT|ETA
122  TProfile* fHistProUQQaQb[2][2]; // holds weighted average of <QuQaQb> for RP|POI PT|ETA
123  TH1D* fHistSumOfWeightsu[2][2][3]; // holds sums of 0: Nq', 1: Nq'^2, 2: Nq'*Na*Nb
124  TProfile* fHistProNUAu[2][2][2]; // NUA related qq for RP|POI PT|ETA
125 
126  ClassDef(AliFlowAnalysisWithSimpleSP,1) // class version
127 };
128 
129 
130 #endif
AliFlowCommonHistResults * fCommonHistsRes
TH1D * GetHistSumOfWeightsu(Int_t iRFPorPOI, Int_t iPTorETA, Int_t iWeight) const
TProfile * GetHistProNUAu(Int_t iRFPorPOI, Int_t iPTorETA, Int_t iIMorRE) const
TProfile * GetHistProUQQaQb(Int_t iRFPorPOI, Int_t iPTorETA) const
virtual void Finish()
AliFlowCommonHist * GetCommonHists() const
void Make(AliFlowEventSimple *anEvent)
TH1D * GetHistProUQ(Int_t iRFPorPOI, Int_t iPTorETA) const
void SetExternalResolution(Float_t r, Float_t s)
int Int_t
Definition: External.C:63
Definition: External.C:204
float Float_t
Definition: External.C:68
void SetWeightsList(TList *const aWeightsList)
Definition: External.C:228
Definition: External.C:212
Bool_t IsEqualRel(double dX, double dY, double epsilon)
void GetOutputHistograms(TList *outputListHistos)
void WriteHistograms(TDirectoryFile *outputFileName) const
bool Bool_t
Definition: External.C:53
AliFlowAnalysisWithSimpleSP & operator=(const AliFlowAnalysisWithSimpleSP &anAnalysis)
AliFlowCommonHistResults * GetCommonHistsRes() const