2 // Calculate the flow in the forward regions using the Q cumulants method
4 #ifndef ALIFORWARDMCFLOWTASKQC_H
5 #define ALIFORWARDMCFLOWTASKQC_H
7 * @file AliForwardMCFlowTaskQC.h
8 * @author Alexander Hansen alexander.hansen@cern.ch
9 * @date Tue Feb 14 2012
14 * @ingroup pwglf_forward_flow
16 #include "AliForwardFlowTaskQC.h"
17 #include "AliForwardFlowWeights.h"
22 * @defgroup pwg2_forward_tasks_flow Flow tasks
23 * @ingroup pwg2_forward_tasks
26 * Calculate the flow in the forward regions using the Q cumulants method
32 * - AnalysisResults.root
34 * @ingroup pwg2_forward_tasks_flow
35 * @ingroup pwg2_forward_flow
39 class AliForwardMCFlowTaskQC : public AliForwardFlowTaskQC
45 AliForwardMCFlowTaskQC();
49 * @param name Name of task
51 AliForwardMCFlowTaskQC(const char* name);
55 virtual ~AliForwardMCFlowTaskQC() {}
57 * Check for centrality in AliAODForwardMult object,
58 * if present return true - also sets fCent value
59 * can be used to get centrality from impact parameter
61 * @param aodfm AliAODForwardMultObject
65 virtual Bool_t GetCentrality(const AliAODForwardMult* aodfm);
67 * Set use parametrization from impact parameter for centrality
69 * @param use Use impact par
71 void SetUseImpactParameter(Bool_t use) { fUseImpactPar = use; }
73 * Set string to add flow to MC truth particles
77 void AddFlow(TString type = "") { fAddFlow = type; }
79 * Set which function fAddFlow should use
81 * @param type of AddFlow
83 void AddFlowType(Int_t number = 0) { fAddType = number; }
85 * Set which order of flow to add
87 * @param order Flow order
89 void AddFlowOrder(Int_t order = 2) { fAddOrder = order; }
95 * @param o Object to copy from
97 AliForwardMCFlowTaskQC(const AliForwardMCFlowTaskQC& o);
101 * @return Reference to this object
103 AliForwardMCFlowTaskQC& operator=(const AliForwardMCFlowTaskQC& o);
105 * Initiate vertex bin objects
107 void InitVertexBins();
109 * Initiate diagnostics histograms
121 * Loop over AliAODMCParticle branch object and fill d^2N/detadphi histograms
122 * add flow if arguments are set
124 * @return true on success
128 * Get centrality form MC impact parameter
130 Double_t GetCentFromB() const;
132 TList fBinsFMDTR; // List with FMDTR VertexBin objects
133 TList fBinsSPDTR; // List with SPDTR VertexBin objects
134 TList fBinsMC; // List with MC VertexBin objects
135 TH2D fdNdedpMC; // d^2N/detadphi MC truth histogram
136 AliForwardFlowWeights fWeights; // Flow after burner
137 TGraph* fImpactParToCent; // Parametrization of b to centrality
138 Bool_t fUseImpactPar; // Flag to use impact parameter for cent
139 TString fAddFlow; // Add flow string
140 Int_t fAddType; // Add flow type #
141 Int_t fAddOrder; // Add flow order
143 ClassDef(AliForwardMCFlowTaskQC, 2); // FMD MC analysis task