ROOT logo
AliRoot » PWG » FLOW » BASE » AliFlowAnalysisWithNestedLoops

class AliFlowAnalysisWithNestedLoops

Function Members (Methods)

public:
AliFlowAnalysisWithNestedLoops()
virtual~AliFlowAnalysisWithNestedLoops()
virtual voidAccessConstants()
virtual voidAccessSettings()
virtual voidBookAndFillProfileHoldingSettings()
virtual voidBookAndFillWeightsHistograms()
virtual voidBookAndNestAllLists()
virtual voidBookCommonHistograms()
virtual voidBookEverythingForMH()
virtual voidBookEverythingForRAD()
virtual voidCheckPointersForMH(TString where)
virtual voidCheckPointersForRAD(TString where)
virtual voidCheckPointersUsedInFinish()
virtual voidCheckPointersUsedInMake()
static TClass*Class()
virtual voidCrossCheckSettings()
virtual voidEvaluateNestedLoopsForMH(AliFlowEventSimple* anEvent)
virtual voidEvaluateNestedLoopsForRAD(AliFlowEventSimple* anEvent)
virtual voidFinish()
TProfile*Get3pCorrelatorPro() const
TProfile*Get3pCorrelatorVsPtSumDiffDirectPro(Int_t sd) const
TProfile*Get5pCorrelatorPro() const
TString*GetAnalysisLabel() const
TProfile*GetAnalysisSettings() const
TH1D*GetCharge() const
AliFlowCommonHist*GetCommonHists() const
TH1D*GetEtaWeights() const
Bool_tGetEvaluateDifferential3pCorrelator() const
Bool_tGetEvaluateNestedLoopsForMH() const
Bool_tGetEvaluateNestedLoopsForQC() const
Bool_tGetEvaluateNestedLoopsForRAD() const
Int_tGetHarmonic() const
TList*GetHistList() const
TString*GetHistListName() const
TList*GetListMH() const
TList*GetListQC() const
TList*GetListRAD() const
Bool_tGetOppositeChargesPOI() const
virtual voidGetOutputHistograms(TList* outputListHistos)
TH1F*GetPhiWeights() const
virtual voidGetPointersForBaseHistograms()
virtual voidGetPointersForCommonHistograms()
virtual voidGetPointersForMH()
virtual voidGetPointersForRAD()
Bool_tGetPrintOnTheScreen() const
TH1D*GetPtWeights() const
TH1D*GetRelativeAngleDistribution() const
Bool_tGetUseEtaWeights() const
TProfile*GetUseParticleWeights() const
Bool_tGetUsePhiWeights() const
Bool_tGetUsePtWeights() const
TList*GetWeightsList() const
virtual voidInit()
virtual voidInitializeArraysForMH()
virtual TClass*IsA() const
virtual voidMake(AliFlowEventSimple* anEvent)
virtual voidPrintOnTheScreen()
voidSet3pCorrelatorPro(TProfile *const s3pPro)
voidSet3pCorrelatorVsPtSumDiffDirectPro(TProfile *const s3pcvpsdd, Int_t sd)
voidSet5pCorrelatorPro(TProfile *const s3pPro)
voidSetAnalysisLabel(const char* al)
voidSetAnalysisSettings(TProfile *const as)
voidSetCharge(TH1D *const rad)
voidSetCommonHists(AliFlowCommonHist *const ch)
voidSetEtaWeights(TH1D *const histEtaWeights)
voidSetEvaluateDifferential3pCorrelator(Bool_t ed3pc)
voidSetEvaluateNestedLoopsForMH(Bool_t enlfMH)
voidSetEvaluateNestedLoopsForQC(Bool_t enlfQC)
voidSetEvaluateNestedLoopsForRAD(Bool_t enlfRAD)
voidSetHarmonic(Int_t harmonic)
voidSetHistList(TList *const hl)
voidSetHistListName(const char* hln)
voidSetListMH(TList *const lMH)
voidSetListQC(TList *const lQC)
voidSetListRAD(TList *const lRAD)
voidSetOppositeChargesPOI(Bool_t ocp)
voidSetPhiWeights(TH1F *const histPhiWeights)
voidSetPrintOnTheScreen(Bool_t pots)
voidSetPtWeights(TH1D *const histPtWeights)
voidSetRelativeAngleDistribution(TH1D *const rad)
voidSetUseEtaWeights(Bool_t uEtaW)
voidSetUseParticleWeights(TProfile *const uPW)
voidSetUsePhiWeights(Bool_t uPhiW)
voidSetUsePtWeights(Bool_t uPtW)
voidSetWeightsList(TList *const wl)
virtual voidShowMembers(TMemberInspector&)
virtual voidStoreHarmonic()
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidWriteHistograms(TString outputFileName)
virtual voidWriteHistograms(TDirectoryFile* outputFileName)

Data Members

private:
TProfile*f3pCorrelatorPro3-p correlator <<cos[n(phi1+phi2-2phi3)]>>
TProfile*f3pCorrelatorVsPtSumDiffDirectPro[2]differential 3-p correlator cos[n(2phi1-psi2-psi3)] vs [(p1+p2)/2,|p1-p2|]
TProfile*f5pCorrelatorPro5-p correlator <<cos[n(2phi1+2phi2+2phi3-3phi4-3phi5)]>>
TString*fAnalysisLabelanalysis label
TProfile*fAnalysisSettingsprofile to hold analysis settings
TH1D*fChargedistribution of phi1-phi2 for all distinct pairs of particles
AliFlowCommonHist*fCommonHistscommon control histograms (filled only with events with 3 or more tracks for 3-p correlators)
Double_tfEtaBinWidthbin width for eta histograms
Double_tfEtaMaxmaximum eta
Double_tfEtaMinminimum eta
TH1D*fEtaWeightshistogram holding phi weights
Bool_tfEvaluateDifferential3pCorrelatorevaluate <<cos[psi1+psi2-2phi3)]>>, where psi1 and psi2 are two POIs
Bool_tfEvaluateNestedLoopsForMHevaluate nested loops for mixed harmonics
Bool_tfEvaluateNestedLoopsForQCevaluate nested loops for Q-cumulants
Bool_tfEvaluateNestedLoopsForRADevaluate nested loops for relative angle distribution
Int_tfHarmonicharmonic
TList*fHistListbase list to hold all output objects
TString*fHistListNamename of base list
TList*fListMHlist holding objects relevant for debugging and cross-checking of MH class
TList*fListQClist holding objects relevant for debugging and cross-checking of Q-cumulants class
TList*fListRADlist holding objects for calculation of relative angle distribution phi1-phi2
Bool_tfOppositeChargesPOItwo POIs, psi1 and psi2, in correlator <<cos[psi1+psi2-2phi3)]>> will be taken with opposite charges
Double_tfPhiBinWidthbin width for phi histograms
Double_tfPhiMaxmaximum phi
Double_tfPhiMinminimum phi
TH1F*fPhiWeightshistogram holding phi weights
Bool_tfPrintOnTheScreenprint or not on the screen
Double_tfPtBinWidthbin width for pt histograms
Double_tfPtMaxmaximum pt
Double_tfPtMinminimum pt
TH1D*fPtWeightshistogram holding phi weights
TH1D*fRelativeAngleDistributiondistribution of phi1-phi2 for all distinct pairs of particles
Bool_tfUseEtaWeightsuse eta weights
TProfile*fUseParticleWeightsprofile with three bins to hold values of fUsePhiWeights, fUsePtWeights and fUseEtaWeights
Bool_tfUsePhiWeightsuse phi weights
Bool_tfUsePtWeightsuse pt weights
TList*fWeightsListlist to hold all histograms with particle weights: fUseParticleWeights, fPhiWeights, fPtWeights and fEtaWeights
Int_tfnBinsEtanumber of eta bins
Int_tfnBinsPhinumber of phi bins
Int_tfnBinsPtnumber of pt bins

Class Charts

Inheritance Chart:
AliFlowAnalysisWithNestedLoops

Function documentation

AliFlowAnalysisWithNestedLoops()
 Constructor.
~AliFlowAnalysisWithNestedLoops()
 Destructor.
void Init()
 Initialize and book all objects.
void Make(AliFlowEventSimple* anEvent)
 Running over data only in this method.
void Finish()
 Calculate the final results.
void GetOutputHistograms(TList* outputListHistos)
 Get pointers to all objects saved in the output file.
void GetPointersForBaseHistograms()
 Get pointers to base histograms.
void GetPointersForCommonHistograms()
 Get pointers to common control histograms.
void GetPointersForRAD()
 Get pointers to objects relevant for relative angle distributions.
void GetPointersForMH()
 Get pointers to objects evaluated with nested loops.
void WriteHistograms(TString outputFileName)
 Store the final results in output .root file.
void WriteHistograms(TDirectoryFile* outputFileName)
 Store the final results in output .root file.
void StoreHarmonic()
 Store harmonic n used in cos[n*(phi1+phi2-2phi3)] and cos[n*(psi1+psi2-2phi3)].
void BookAndNestAllLists()
 Book and nest all list in base list fHistList.
void BookAndFillProfileHoldingSettings()
 Book profile to hold all analysis settings.
void BookCommonHistograms()
 Book common control histograms and common histograms for final results.
void BookEverythingForRAD()
 Book all objects relevant calculation of relative angle distribution.
void AccessConstants()
 Access needed common constants from AliFlowCommonConstants.
void CrossCheckSettings()
 Cross-check if the user settings make sense.
void BookAndFillWeightsHistograms()
 Book and fill (by accessing file "weights.root") histograms which hold phi, pt and eta weights.
void CheckPointersUsedInMake()
 Check pointers used in method Make().
void CheckPointersUsedInFinish()
 Check pointers used in method Finish().
void CheckPointersForRAD(TString where)
 Check pointers relevant for calculation of relative angle distribution.
void CheckPointersForMH(TString where)
 Check pointers relevant for calculation of mixed harmonics.
void AccessSettings()
 Access the settings for analysis.
void InitializeArraysForMH()
 Initialize arrays mixed harmonics calculations.
void BookEverythingForMH()
 Book all objects relevant for mixed harmonics.
void EvaluateNestedLoopsForRAD(AliFlowEventSimple* anEvent)
 Evaluate nested loops needed for calculation of relative angle distribution.
void EvaluateNestedLoopsForMH(AliFlowEventSimple* anEvent)
 Evaluate nested loops needed for mixed harmonics.
 Remark: phi labels the azimuthal angle of RP particle and psi labels azimuthal angle of POI particle.
void PrintOnTheScreen()
 Print on the screen.
AliFlowAnalysisWithNestedLoops()
void SetHistList(TList *const hl)
 6.) Setters and getters:
{this->fHistList = hl;}
TList* GetHistList() const
{return this->fHistList;}
void SetHistListName(const char* hln)
{this->fHistListName->Append(*hln);}
TString * GetHistListName() const
{return this->fHistListName;}
void SetHarmonic(Int_t harmonic)
{this->fHarmonic = harmonic;}
Int_t GetHarmonic() const
{return this->fHarmonic;}
void SetAnalysisLabel(const char* al)
{this->fAnalysisLabel->Append(*al);}
TString * GetAnalysisLabel() const
{return this->fAnalysisLabel;}
void SetAnalysisSettings(TProfile *const as)
{this->fAnalysisSettings = as;}
TProfile* GetAnalysisSettings() const
{return this->fAnalysisSettings;}
void SetOppositeChargesPOI(Bool_t ocp)
{this->fOppositeChargesPOI = ocp;}
Bool_t GetOppositeChargesPOI() const
{return this->fOppositeChargesPOI;}
void SetEvaluateDifferential3pCorrelator(Bool_t ed3pc)
Bool_t GetEvaluateDifferential3pCorrelator() const
void SetPrintOnTheScreen(Bool_t pots)
{this->fPrintOnTheScreen = pots;}
Bool_t GetPrintOnTheScreen() const
{return this->fPrintOnTheScreen;}
void SetCommonHists(AliFlowCommonHist *const ch)
{this->fCommonHists = ch;}
AliFlowCommonHist* GetCommonHists() const
{return this->fCommonHists;}
void SetWeightsList(TList *const wl)
{this->fWeightsList = (TList*)wl->Clone();}
TList* GetWeightsList() const
{return this->fWeightsList;}
void SetUsePhiWeights(Bool_t uPhiW)
{this->fUsePhiWeights = uPhiW;}
Bool_t GetUsePhiWeights() const
{return this->fUsePhiWeights;}
void SetUsePtWeights(Bool_t uPtW)
{this->fUsePtWeights = uPtW;}
Bool_t GetUsePtWeights() const
{return this->fUsePtWeights;}
void SetUseEtaWeights(Bool_t uEtaW)
{this->fUseEtaWeights = uEtaW;}
Bool_t GetUseEtaWeights() const
{return this->fUseEtaWeights;}
void SetUseParticleWeights(TProfile *const uPW)
{this->fUseParticleWeights = uPW;}
TProfile* GetUseParticleWeights() const
{return this->fUseParticleWeights;}
void SetPhiWeights(TH1F *const histPhiWeights)
{this->fPhiWeights = histPhiWeights;}
TH1F* GetPhiWeights() const
{return this->fPhiWeights;}
void SetPtWeights(TH1D *const histPtWeights)
{this->fPtWeights = histPtWeights;}
TH1D* GetPtWeights() const
{return this->fPtWeights;}
void SetEtaWeights(TH1D *const histEtaWeights)
{this->fEtaWeights = histEtaWeights;}
TH1D* GetEtaWeights() const
{return this->fEtaWeights;}
void SetListRAD(TList *const lRAD)
{this->fListRAD = lRAD;}
TList* GetListRAD() const
{return this->fListRAD;}
void SetEvaluateNestedLoopsForRAD(Bool_t enlfRAD)
{this->fEvaluateNestedLoopsForRAD = enlfRAD;}
Bool_t GetEvaluateNestedLoopsForRAD() const
void SetRelativeAngleDistribution(TH1D *const rad)
TH1D* GetRelativeAngleDistribution() const
void SetCharge(TH1D *const rad)
{this->fCharge = rad;}
TH1D* GetCharge() const
 QC:
{return this->fCharge;}
void SetListQC(TList *const lQC)
{this->fListQC = lQC;}
TList* GetListQC() const
{return this->fListQC;}
void SetEvaluateNestedLoopsForQC(Bool_t enlfQC)
{this->fEvaluateNestedLoopsForQC = enlfQC;}
Bool_t GetEvaluateNestedLoopsForQC() const
 MH:
void SetListMH(TList *const lMH)
{this->fListMH = lMH;}
TList* GetListMH() const
{return this->fListMH;}
void SetEvaluateNestedLoopsForMH(Bool_t enlfMH)
{this->fEvaluateNestedLoopsForMH = enlfMH;}
Bool_t GetEvaluateNestedLoopsForMH() const
void Set3pCorrelatorPro(TProfile *const s3pPro)
{this->f3pCorrelatorPro = s3pPro;}
TProfile* Get3pCorrelatorPro() const
{return this->f3pCorrelatorPro;}
void Set5pCorrelatorPro(TProfile *const s3pPro)
{this->f5pCorrelatorPro = s3pPro;}
TProfile* Get5pCorrelatorPro() const
{return this->f5pCorrelatorPro;}
void Set3pCorrelatorVsPtSumDiffDirectPro(TProfile *const s3pcvpsdd, Int_t sd)
{this->f3pCorrelatorVsPtSumDiffDirectPro[sd] = s3pcvpsdd;}
TProfile* Get3pCorrelatorVsPtSumDiffDirectPro(Int_t sd) const
AliFlowAnalysisWithNestedLoops& operator=(const AliFlowAnalysisWithNestedLoops& afawQc)
 0.) Base: