ROOT logo
/*************************************************************************
* Copyright(c) 1998-2008, ALICE Experiment at CERN, All rights reserved. *
*                                                                        *
* Author: The ALICE Off-line Project.                                    *
* Contributors are mentioned in the code where appropriate.              *
*                                                                        *
* Permission to use, copy, modify and distribute this software and its   *
* documentation strictly for non-commercial purposes is hereby granted   *
* without fee, provided that the above copyright notice appears in all   *
* copies and that both the copyright notice and this permission notice   *
* appear in the supporting documentation. The authors make no claims     *
* about the suitability of this software for any purpose. It is          *
* provided "as is" without express or implied warranty.                  * 
**************************************************************************/
// AliFlowAnalysisWithMCEventPlane:
// Description: Maker to analyze Flow from the generated MC reaction plane.
//              This class is used to get the real value of the flow 
//              to compare the other methods to when analysing simulated events
// author: N. van der Kolk (kolk@nikhef.nl)

#define AliFlowAnalysisWithMCEventPlane_cxx
 
#include "Riostream.h"
#include "TFile.h"
#include "TProfile.h"
#include "TProfile2D.h"
#include "TList.h"
#include "TH1F.h"
#include "TMath.h"
#include "TVector2.h"

#include "AliFlowCommonConstants.h"
#include "AliFlowEventSimple.h"
#include "AliFlowTrackSimple.h"
#include "AliFlowCommonHist.h"
#include "AliFlowCommonHistResults.h"
#include "AliFlowAnalysisWithMCEventPlane.h"
#include "AliFlowVector.h"

class AliFlowVector;

using std::endl;
using std::cout;
ClassImp(AliFlowAnalysisWithMCEventPlane)

  //-----------------------------------------------------------------------
 
 AliFlowAnalysisWithMCEventPlane::AliFlowAnalysisWithMCEventPlane():
   fQsum(NULL),
   fQ2sum(0),
   fEventNumber(0),
   fDebug(kFALSE),
   fHistList(NULL),
   fCommonHists(NULL),
   fCommonHistsRes(NULL),
   fHistRP(NULL),
   fHistProIntFlow(NULL),
   fHistProIntFlowVsM(NULL),
   fHistProDiffFlowPtEtaRP(NULL),
   fHistProDiffFlowPtRP(NULL),
   fHistProDiffFlowEtaRP(NULL),
   fHistProDiffFlowPtEtaPOI(NULL),
   fHistProDiffFlowPtPOI(NULL),
   fHistProDiffFlowEtaPOI(NULL),
   fHistSpreadOfFlow(NULL),
   fHarmonic(2),
   fMixedHarmonicsList(NULL),
   fEvaluateMixedHarmonics(kFALSE),
   fMixedHarmonicsSettings(NULL),
   fnBinsMult(10000),
   fMinMult(0.),  
   fMaxMult(10000.),   
   fNinCorrelator(2),
   fMinCorrelator(2),
   fXinPairAngle(0.5)
{

  // Constructor.
  fHistList = new TList();

  fQsum = new TVector2;        // flow vector sum
  
  fMixedHarmonicsList = new TList();
  this->InitalizeArraysForMixedHarmonics();  

}
 
//-----------------------------------------------------------------------

AliFlowAnalysisWithMCEventPlane::~AliFlowAnalysisWithMCEventPlane() 
{
 //destructor
  delete fHistList;
  delete fQsum; 
}
 
//-----------------------------------------------------------------------

void AliFlowAnalysisWithMCEventPlane::WriteHistograms(TString* outputFileName)
{
 //store the final results in output .root file
 TFile *output = new TFile(outputFileName->Data(),"RECREATE");
 //output->WriteObject(fHistList, "cobjMCEP","SingleKey");
 fHistList->SetName("cobjMCEP");
 fHistList->SetOwner(kTRUE);
 fHistList->Write(fHistList->GetName(), TObject::kSingleKey);
 delete output;
}

//-----------------------------------------------------------------------

void AliFlowAnalysisWithMCEventPlane::WriteHistograms(TString outputFileName)
{
 //store the final results in output .root file
 TFile *output = new TFile(outputFileName.Data(),"RECREATE");
 //output->WriteObject(fHistList, "cobjMCEP","SingleKey");
 fHistList->SetName("cobjMCEP");
 fHistList->SetOwner(kTRUE);
 fHistList->Write(fHistList->GetName(), TObject::kSingleKey);
 delete output;
}

//-----------------------------------------------------------------------

void AliFlowAnalysisWithMCEventPlane::WriteHistograms(TDirectoryFile *outputFileName)
{
 //store the final results in output .root file
 fHistList->SetName("cobjMCEP");
 fHistList->SetOwner(kTRUE);
 outputFileName->Add(fHistList);
 outputFileName->Write(outputFileName->GetName(), TObject::kSingleKey);
}

//-----------------------------------------------------------------------
void AliFlowAnalysisWithMCEventPlane::Init() {

  //Define all histograms
  cout<<"---Analysis with the real MC Event Plane---"<<endl;

  //save old value and prevent histograms from being added to directory
  //to avoid name clashes in case multiple analaysis objects are used
  //in an analysis
  Bool_t oldHistAddStatus = TH1::AddDirectoryStatus();
  TH1::AddDirectory(kFALSE);
 
  Int_t iNbinsPt = AliFlowCommonConstants::GetMaster()->GetNbinsPt();
  Double_t dPtMin = AliFlowCommonConstants::GetMaster()->GetPtMin();	     
  Double_t dPtMax = AliFlowCommonConstants::GetMaster()->GetPtMax();
  
  Int_t iNbinsEta = AliFlowCommonConstants::GetMaster()->GetNbinsEta();
  Double_t dEtaMin = AliFlowCommonConstants::GetMaster()->GetEtaMin();	     
  Double_t dEtaMax = AliFlowCommonConstants::GetMaster()->GetEtaMax();  

  fCommonHists = new AliFlowCommonHist("AliFlowCommonHistMCEP");
  fHistList->Add(fCommonHists);
  fCommonHistsRes = new AliFlowCommonHistResults("AliFlowCommonHistResultsMCEP","",fHarmonic);
  fHistList->Add(fCommonHistsRes);
  
  // store harmonic in common control histogram: 
  (fCommonHists->GetHarmonic())->Fill(0.5,fHarmonic);
  
  fHistRP = new TH1F("Flow_RP_MCEP","Flow_RP_MCEP",100,0.,3.14);
  fHistRP->SetXTitle("Reaction Plane Angle");
  fHistRP->SetYTitle("Counts");
  fHistList->Add(fHistRP);
  
  fHistProIntFlow = new TProfile("FlowPro_V_MCEP","FlowPro_V_MCEP",1,0.,1.);
  fHistProIntFlow->SetLabelSize(0.06);
  (fHistProIntFlow->GetXaxis())->SetBinLabel(1,"v_{n}{MCEP}");
  fHistProIntFlow->SetYTitle("");
  fHistList->Add(fHistProIntFlow);
  
  fHistProIntFlowVsM = new TProfile("FlowPro_VsM_MCEP","FlowPro_VsM_MCEP",10000,0.,10000.); // to be improved - hardwired 10000
  //fHistProIntFlowVsM->SetLabelSize(0.06);
  (fHistProIntFlowVsM->GetXaxis())->SetTitle("M");
  fHistProIntFlowVsM->SetYTitle("");
  fHistList->Add(fHistProIntFlowVsM);
  
  fHistProDiffFlowPtEtaRP = new TProfile2D("FlowPro_VPtEtaRP_MCEP","FlowPro_VPtEtaRP_MCEP",iNbinsPt,dPtMin,dPtMax,iNbinsEta,dEtaMin,dEtaMax);
  fHistProDiffFlowPtEtaRP->SetXTitle("P_{t}");
  fHistProDiffFlowPtEtaRP->SetYTitle("#eta");
  fHistList->Add(fHistProDiffFlowPtEtaRP);
 
  fHistProDiffFlowPtRP = new TProfile("FlowPro_VPtRP_MCEP","FlowPro_VPtRP_MCEP",iNbinsPt,dPtMin,dPtMax);
  fHistProDiffFlowPtRP->SetXTitle("P_{t}");
  fHistProDiffFlowPtRP->SetYTitle("");
  fHistList->Add(fHistProDiffFlowPtRP);  
  
  fHistProDiffFlowEtaRP = new TProfile("FlowPro_VetaRP_MCEP","FlowPro_VetaRP_MCEP",iNbinsEta,dEtaMin,dEtaMax);
  fHistProDiffFlowEtaRP->SetXTitle("#eta");
  fHistProDiffFlowEtaRP->SetYTitle("");
  fHistList->Add(fHistProDiffFlowEtaRP);
  
  fHistProDiffFlowPtEtaPOI = new TProfile2D("FlowPro_VPtEtaPOI_MCEP","FlowPro_VPtEtaPOI_MCEP",iNbinsPt,dPtMin,dPtMax,iNbinsEta,dEtaMin,dEtaMax);
  fHistProDiffFlowPtEtaPOI->SetXTitle("P_{t}");
  fHistProDiffFlowPtEtaPOI->SetYTitle("#eta");
  fHistList->Add(fHistProDiffFlowPtEtaPOI);
  
  fHistProDiffFlowPtPOI = new TProfile("FlowPro_VPtPOI_MCEP","FlowPro_VPtPOI_MCEP",iNbinsPt,dPtMin,dPtMax);
  fHistProDiffFlowPtPOI->SetXTitle("P_{t}");
  fHistProDiffFlowPtPOI->SetYTitle("");
  fHistList->Add(fHistProDiffFlowPtPOI);  
  
  fHistProDiffFlowEtaPOI = new TProfile("FlowPro_VetaPOI_MCEP","FlowPro_VetaPOI_MCEP",iNbinsEta,dEtaMin,dEtaMax);
  fHistProDiffFlowEtaPOI->SetXTitle("#eta");
  fHistProDiffFlowEtaPOI->SetYTitle("");
  fHistList->Add(fHistProDiffFlowEtaPOI);         
  
  fHistSpreadOfFlow = new TH1D("fHistSpreadOfFlow","fHistSpreadOfFlow",1000,-1,1);
  fHistSpreadOfFlow->SetXTitle("v_{2}");
  fHistSpreadOfFlow->SetYTitle("counts");
  fHistList->Add(fHistSpreadOfFlow);           
 
  fEventNumber = 0;  //set number of events to zero
  
  if(fEvaluateMixedHarmonics) this->BookObjectsForMixedHarmonics();
        
  TH1::AddDirectory(oldHistAddStatus);
} 
 
//-----------------------------------------------------------------------
 
void AliFlowAnalysisWithMCEventPlane::Make(AliFlowEventSimple* anEvent) {

  //Calculate v2 from the MC reaction plane
  if (anEvent) {
  
    // get the MC reaction plane angle
    Double_t aRP = anEvent->GetMCReactionPlaneAngle();  
    //fill control histograms     
    fCommonHists->FillControlHistograms(anEvent);

    //get the Q vector from the FlowEvent
    AliFlowVector vQ = anEvent->GetQ(fHarmonic); 
    //cout<<"vQ.Mod() = " << vQ.Mod() << endl;
    //for chi calculation:
    *fQsum += vQ;
    //cout<<"fQsum.Mod() = "<<fQsum.Mod()<<endl;
    fQ2sum += vQ.Mod2();
    //cout<<"fQ2sum = "<<fQ2sum<<endl;
        
    fHistRP->Fill(aRP);   
    
    Double_t dPhi = 0.;
    Double_t dv  = 0.;
    Double_t dPt  = 0.;
    Double_t dEta = 0.;
    //Double_t dPi = TMath::Pi();  
    
    // profile to calculate flow e-b-y:
    TProfile *flowEBE = new TProfile("flowEBE","flowEBE",1,0,1);
                                                                                         
    //calculate flow
    //loop over the tracks of the event
    Int_t iNumberOfTracks = anEvent->NumberOfTracks(); 
    Int_t iNumberOfRPs = anEvent->GetEventNSelTracksRP(); 
    for (Int_t i=0;i<iNumberOfTracks;i++) 
      {
	AliFlowTrackSimple* pTrack = anEvent->GetTrack(i) ; 
	if (pTrack){
	  if (pTrack->InRPSelection()){
            dPhi = pTrack->Phi();
            dv  = TMath::Cos(fHarmonic*(dPhi-aRP));
	         dPt  = pTrack->Pt();
	         dEta = pTrack->Eta();
            //reference flow:
            fHistProIntFlow->Fill(0.,dv);
            //reference flow versus multiplicity:
            fHistProIntFlowVsM->Fill(iNumberOfRPs+0.5,dv);
            //reference flow e-b-e:
            flowEBE->Fill(0.,dv);
            //differential flow (Pt, Eta, RP):
            fHistProDiffFlowPtEtaRP->Fill(dPt,dEta,dv,1.);
            //differential flow (Pt, RP):
            fHistProDiffFlowPtRP->Fill(dPt,dv,1.);
            //differential flow (Eta, RP):
            fHistProDiffFlowEtaRP->Fill(dEta,dv,1.);
          }
	  if (pTrack->InPOISelection()) {
	    dPhi = pTrack->Phi();
	    //if (dPhi<0.) dPhi+=2*TMath::Pi();
	    //calculate flow v2:
	    dv  = TMath::Cos(fHarmonic*(dPhi-aRP));
	    dPt  = pTrack->Pt();
	    dEta = pTrack->Eta();
	    //differential flow (Pt, Eta, POI):
            fHistProDiffFlowPtEtaPOI->Fill(dPt,dEta,dv,1.);
	    //differential flow (Pt, POI):
            fHistProDiffFlowPtPOI->Fill(dPt,dv,1.);
            //differential flow (Eta, POI):
            fHistProDiffFlowEtaPOI->Fill(dEta,dv,1.); 
	  }	      
	}//track selected
      }//loop over tracks
	  
    fEventNumber++;
    //    cout<<"@@@@@ "<<fEventNumber<<" events processed"<<endl;
    
    // store flow value for this event:
    fHistSpreadOfFlow->Fill(flowEBE->GetBinContent(1),flowEBE->GetBinEntries(1));
    delete flowEBE; 
  
    if(fEvaluateMixedHarmonics) EvaluateMixedHarmonics(anEvent);
  }    
}
  //--------------------------------------------------------------------    

void AliFlowAnalysisWithMCEventPlane::GetOutputHistograms(TList *outputListHistos) {
 // get the pointers to all output histograms before calling Finish()
 if (outputListHistos) {
    //Get the common histograms from the output list
    AliFlowCommonHist *pCommonHists = dynamic_cast<AliFlowCommonHist*> 
      (outputListHistos->FindObject("AliFlowCommonHistMCEP"));
    AliFlowCommonHistResults *pCommonHistResults = 
      dynamic_cast<AliFlowCommonHistResults*> 
      (outputListHistos->FindObject("AliFlowCommonHistResultsMCEP"));

    TProfile *pHistProIntFlow = dynamic_cast<TProfile*> 
      (outputListHistos->FindObject("FlowPro_V_MCEP")); 
      
    TProfile2D *pHistProDiffFlowPtEtaRP = dynamic_cast<TProfile2D*> 
      (outputListHistos->FindObject("FlowPro_VPtEtaRP_MCEP")); 
                               
    TProfile *pHistProDiffFlowPtRP = dynamic_cast<TProfile*> 
      (outputListHistos->FindObject("FlowPro_VPtRP_MCEP")); 
     
    TProfile *pHistProDiffFlowEtaRP = dynamic_cast<TProfile*> 
      (outputListHistos->FindObject("FlowPro_VetaRP_MCEP"));
 
    TProfile2D *pHistProDiffFlowPtEtaPOI = dynamic_cast<TProfile2D*> 
      (outputListHistos->FindObject("FlowPro_VPtEtaPOI_MCEP")); 
          
    TProfile *pHistProDiffFlowPtPOI = dynamic_cast<TProfile*> 
      (outputListHistos->FindObject("FlowPro_VPtPOI_MCEP")); 
     
    TProfile *pHistProDiffFlowEtaPOI = dynamic_cast<TProfile*> 
      (outputListHistos->FindObject("FlowPro_VetaPOI_MCEP"));                             

    if (pCommonHists && pCommonHistResults && pHistProIntFlow && 
	pHistProDiffFlowPtRP && pHistProDiffFlowEtaRP && 
	pHistProDiffFlowPtPOI && pHistProDiffFlowEtaPOI) {
      this->SetCommonHists(pCommonHists);
      this->SetCommonHistsRes(pCommonHistResults);
      this->SetHistProIntFlow(pHistProIntFlow);
      this->SetHistProDiffFlowPtEtaRP(pHistProDiffFlowPtEtaRP);
      this->SetHistProDiffFlowPtRP(pHistProDiffFlowPtRP);      
      this->SetHistProDiffFlowEtaRP(pHistProDiffFlowEtaRP);  
      this->SetHistProDiffFlowPtEtaPOI(pHistProDiffFlowPtEtaPOI);
      this->SetHistProDiffFlowPtPOI(pHistProDiffFlowPtPOI);      
      this->SetHistProDiffFlowEtaPOI(pHistProDiffFlowEtaPOI);          
    } else {
      cout<<"WARNING: Histograms needed to run Finish() are not accessible!"<<endl;  }
    
    //fListHistos->Print();
  
   TList *pMixedHarmonicsList = dynamic_cast<TList*> 
     (outputListHistos->FindObject("Mixed Harmonics"));
   if(pMixedHarmonicsList) {this->GetOutputHistoramsForMixedHarmonics(pMixedHarmonicsList);} 
  
  } else { cout << "histogram list pointer is empty" << endl;}

}

//--------------------------------------------------------------------    

void AliFlowAnalysisWithMCEventPlane::GetOutputHistoramsForMixedHarmonics(TList *mixedHarmonicsList)
{
 // Get pointers to all objects relevant for mixed harmonics study.
 
 if(mixedHarmonicsList)
 {
  // ...
 } else
   {
    cout<<endl;
    cout<<"WARNING (MCEP): mixedHarmonicsList in NULL in MCEP::GetOutputHistoramsForMixedHarmonics() !!!! "<<endl;
    cout<<endl;
   } 
  
} // end of void AliFlowAnalysisWithMCEventPlane::GetOutputHistoramsForMixedHarmonics(TList *mixedHarmonicsList)

//--------------------------------------------------------------------    

void AliFlowAnalysisWithMCEventPlane::Finish() {
   
  //*************make histograms etc. 
  if (fDebug) cout<<"AliFlowAnalysisWithMCEventPlane::Terminate()"<<endl;
   
  Int_t iNbinsPt  = AliFlowCommonConstants::GetMaster()->GetNbinsPt();  
  Int_t iNbinsEta = AliFlowCommonConstants::GetMaster()->GetNbinsEta(); 
  
  // access harmonic:
  if(fCommonHists && fCommonHists->GetHarmonic())
  {
   fHarmonic = (Int_t)(fCommonHists->GetHarmonic())->GetBinContent(1); // to be improved (moved somewhere else?)
  } 
         
  //reference flow :
  Double_t dV = fHistProIntFlow->GetBinContent(1);  
  Double_t dErrV = fHistProIntFlow->GetBinError(1); // to be improved (treatment of errors for non-Gaussian distribution needed!)  
  //fill reference flow:
  fCommonHistsRes->FillIntegratedFlow(dV,dErrV);
  cout<<"dV"<<fHarmonic<<"{MC} is       "<<dV<<" +- "<<dErrV<<endl;
  
  //RP:
  TH1F* fHistPtRP = NULL;
  if(fCommonHists && fCommonHists->GetHistPtRP())
  {
   fHistPtRP = fCommonHists->GetHistPtRP(); 
  }
  Double_t dYieldPtRP = 0.;
  Double_t dVRP = 0.;
  Double_t dErrVRP = 0.;
  Double_t dSumRP = 0.;
  //differential flow (RP, Pt): 
  Double_t dvPtRP = 0.;           
  Double_t dErrvPtRP = 0.;
  for(Int_t b=1;b<=iNbinsPt;b++)
  {
   dvPtRP    = fHistProDiffFlowPtRP->GetBinContent(b);
   dErrvPtRP = fHistProDiffFlowPtRP->GetBinError(b);//to be improved (treatment of errors for non-Gaussian distribution needed!)
   fCommonHistsRes->FillDifferentialFlowPtRP(b, dvPtRP, dErrvPtRP);
   if(fHistPtRP){
	//integrated flow (RP)
	dYieldPtRP = fHistPtRP->GetBinContent(b);
	dVRP += dvPtRP*dYieldPtRP;
	dSumRP += dYieldPtRP;
	//error on integrated flow
	dErrVRP += dYieldPtRP*dYieldPtRP*dErrvPtRP*dErrvPtRP;
      }
  }
  
  if (!(TMath::AreEqualAbs(dSumRP, 0.0, 1e-10)) ) {
    dVRP /= dSumRP;  //because pt distribution should be normalised
    dErrVRP /= (dSumRP*dSumRP);
    dErrVRP = TMath::Sqrt(dErrVRP); 
  }
  // fill integrated flow (RP):
  fCommonHistsRes->FillIntegratedFlowRP(dVRP,dErrVRP);
  cout<<"dV"<<fHarmonic<<"{MC} (RP) is  "<<dVRP<<" +- "<<dErrVRP<<endl;
  
  //differential flow (RP, Eta): 
  Double_t dvEtaRP = 0.;           
  Double_t dErrvEtaRP = 0.;
  for(Int_t b=1;b<=iNbinsEta;b++)
  {
   dvEtaRP    = fHistProDiffFlowEtaRP->GetBinContent(b);
   dErrvEtaRP = fHistProDiffFlowEtaRP->GetBinError(b);//to be improved (treatment of errors for non-Gaussian distribution needed!)
   fCommonHistsRes->FillDifferentialFlowEtaRP(b, dvEtaRP, dErrvEtaRP);
  }
                                                                                                                                   
  //POI:
  TH1F* fHistPtPOI = NULL;
  if(fCommonHists && fCommonHists->GetHistPtPOI())
  {
   fHistPtPOI = fCommonHists->GetHistPtPOI(); 
  }
  Double_t dYieldPtPOI = 0.;
  Double_t dVPOI = 0.;
  Double_t dErrVPOI = 0.;
  Double_t dSumPOI = 0.;
  Double_t dvproPtPOI = 0.;
  Double_t dErrdifcombPtPOI = 0.; 
  Double_t dvproEtaPOI = 0.;
  Double_t dErrdifcombEtaPOI = 0.;   
  //Pt:
  if(fHistProDiffFlowPtPOI) {
    for(Int_t b=1;b<=iNbinsPt;b++){
      dvproPtPOI = fHistProDiffFlowPtPOI->GetBinContent(b);
      dErrdifcombPtPOI = fHistProDiffFlowPtPOI->GetBinError(b);//to be improved (treatment of errors for non-Gaussian distribution needed!)
      //fill TH1D
      fCommonHistsRes->FillDifferentialFlowPtPOI(b, dvproPtPOI, dErrdifcombPtPOI); 
      if (fHistPtPOI){
	//integrated flow (POI)
	dYieldPtPOI = fHistPtPOI->GetBinContent(b);
	dVPOI += dvproPtPOI*dYieldPtPOI;
	dSumPOI += dYieldPtPOI;
	//error on integrated flow
	dErrVPOI += dYieldPtPOI*dYieldPtPOI*dErrdifcombPtPOI*dErrdifcombPtPOI;
      }
    }//end of for(Int_t b=0;b<iNbinsPt;b++)  
  } else { cout<<"fHistProFlow is NULL"<<endl; }

  if (!(TMath::AreEqualAbs(dSumPOI, 0.0, 1e-10)) ) {
    dVPOI /= dSumPOI;  //because pt distribution should be normalised
    dErrVPOI /= (dSumPOI*dSumPOI);
    dErrVPOI = TMath::Sqrt(dErrVPOI); 
  }
  cout<<"dV"<<fHarmonic<<"{MC} (POI) is "<<dVPOI<<" +- "<<dErrVPOI<<endl;

  fCommonHistsRes->FillIntegratedFlowPOI(dVPOI,dErrVPOI);
  
  //Eta:
  if(fHistProDiffFlowEtaPOI)
  {
   for(Int_t b=1;b<=iNbinsEta;b++)
   {
    dvproEtaPOI = fHistProDiffFlowEtaPOI->GetBinContent(b);
    dErrdifcombEtaPOI = fHistProDiffFlowEtaPOI->GetBinError(b);//to be improved (treatment of errors for non-Gaussian distribution needed!)
    //fill common hist results:
    fCommonHistsRes->FillDifferentialFlowEtaPOI(b, dvproEtaPOI, dErrdifcombEtaPOI); 
   }
  }   
  
  cout<<endl;     	      	  
  //cout<<".....finished"<<endl;
}

//-----------------------------------------------------------------------

void AliFlowAnalysisWithMCEventPlane::InitalizeArraysForMixedHarmonics()
{
 // Iinitialize all arrays for mixed harmonics.

 for(Int_t cs=0;cs<2;cs++) // cos/sin
 {
  fPairCorrelator[cs] = NULL;
  fPairCorrelatorVsM[cs] = NULL;
  for(Int_t sd=0;sd<2;sd++) // pt sum/difference
  {
   fPairCorrelatorVsPtSumDiff[cs][sd] = NULL;
  }
 }

} // end of void InitalizeArraysForMixedHarmonics()

//-----------------------------------------------------------------------

void AliFlowAnalysisWithMCEventPlane::BookObjectsForMixedHarmonics()
{
 // Book all objects needed for mixed harmonics.
 
 // List holding all objects relevant for mixed harmonics:
 fMixedHarmonicsList->SetName("Mixed Harmonics");
 fMixedHarmonicsList->SetOwner(kTRUE);   
 fHistList->Add(fMixedHarmonicsList); 
 
 // Profile holding settings relevant for mixed harmonics:
 TString mixedHarmonicsSettingsName = "fMixedHarmonicsSettings";
 fMixedHarmonicsSettings = new TProfile(mixedHarmonicsSettingsName.Data(),"Settings for Mixed Harmonics",4,0,4);
 //fMixedHarmonicsSettings->GetXaxis()->SetLabelSize(0.025);
 fMixedHarmonicsSettings->GetXaxis()->SetBinLabel(1,"fEvaluateMixedHarmonics");
 fMixedHarmonicsSettings->Fill(0.5,(Int_t)fEvaluateMixedHarmonics); 
 fMixedHarmonicsSettings->GetXaxis()->SetBinLabel(2,"fNinCorrelator");
 fMixedHarmonicsSettings->Fill(1.5,(Int_t)fNinCorrelator);
 fMixedHarmonicsSettings->GetXaxis()->SetBinLabel(3,"fMinCorrelator");
 fMixedHarmonicsSettings->Fill(2.5,(Int_t)fMinCorrelator);
 fMixedHarmonicsSettings->GetXaxis()->SetBinLabel(4,"x in #phi_{pair}"); // phi_{pair} = x*phi1+(1-x)*phi2
 fMixedHarmonicsSettings->Fill(3.5,fXinPairAngle); 
 fMixedHarmonicsList->Add(fMixedHarmonicsSettings);
 
 // Profiles used to calculate <cos[m*phi_{pair}-n*RP]> and <sin[m*phi_{pair}-n*RP]>, where phi_{pair} = x*phi1+(1-x)*phi2:
 TString cosSinFlag[2] = {"Cos","Sin"};
 TString cosSinTitleFlag[2] = {"cos[m#phi_{pair}-n#psi_{RP}]","sin[m#phi_{pair}-n#psi_{RP}]"};
 if(fNinCorrelator == 2 && fMinCorrelator == 2 && TMath::Abs(fXinPairAngle-0.5)<1.e-44) // default values
 {
  cosSinTitleFlag[0] = "cos[#phi_{1}+#phi_{2}-2#psi_{RP})]";
  cosSinTitleFlag[1] = "sin[#phi_{1}+#phi_{2}-2#psi_{RP})]";   
 }
 TString psdFlag[2] = {"Sum","Diff"};
 TString psdTitleFlag[2] = {"(p_{t,1}+p_{t,2})/2","#left|p_{t,1}-p_{t,2}#right|"}; 
 TString pairCorrelatorName = "fPairCorrelator";
 TString pairCorrelatorVsMName = "fPairCorrelatorVsM";
 TString pairCorrelatorVsPtSumDiffName = "fPairCorrelatorVsPt";
 Int_t iNbinsPt = AliFlowCommonConstants::GetMaster()->GetNbinsPt();
 Double_t dPtMin = AliFlowCommonConstants::GetMaster()->GetPtMin();	     
 Double_t dPtMax = AliFlowCommonConstants::GetMaster()->GetPtMax(); 
 for(Int_t cs=0;cs<2;cs++)
 { 
  fPairCorrelator[cs] = new TProfile(Form("%s, %s",pairCorrelatorName.Data(),cosSinFlag[cs].Data()),cosSinTitleFlag[cs].Data(),1,0.,1.);
  fPairCorrelator[cs]->GetXaxis()->SetBinLabel(1,cosSinTitleFlag[cs].Data());
  fMixedHarmonicsList->Add(fPairCorrelator[cs]); 
  
  fPairCorrelatorVsM[cs] = new TProfile(Form("%s, %s",pairCorrelatorVsMName.Data(),cosSinFlag[cs].Data()),cosSinTitleFlag[cs].Data(),fnBinsMult,fMinMult,fMaxMult);
  fPairCorrelatorVsM[cs]->GetXaxis()->SetTitle("# of RPs");
  fMixedHarmonicsList->Add(fPairCorrelatorVsM[cs]); 
  
  for(Int_t sd=0;sd<2;sd++)
  {
   fPairCorrelatorVsPtSumDiff[cs][sd] = new TProfile(Form("%s%s, %s",pairCorrelatorVsPtSumDiffName.Data(),psdFlag[sd].Data(),cosSinFlag[cs].Data()),cosSinTitleFlag[cs].Data(),iNbinsPt,dPtMin,dPtMax);
   fPairCorrelatorVsPtSumDiff[cs][sd]->GetXaxis()->SetTitle(psdTitleFlag[sd].Data());
   fMixedHarmonicsList->Add(fPairCorrelatorVsPtSumDiff[cs][sd]); 
  } // end of for(Int_t sd=0;sd<2;sd++)
 } // end of for(Int_t cs=0;cs<2;cs++)

} // end of void AliFlowAnalysisWithMCEventPlane::BookObjectsForMixedHarmonics()

//-----------------------------------------------------------------------

void AliFlowAnalysisWithMCEventPlane::EvaluateMixedHarmonics(AliFlowEventSimple* anEvent)
{
 // Evaluate correlators relevant for the mixed harmonics.
 
 // Get the MC reaction plane angle:
 Double_t dReactionPlane = anEvent->GetMCReactionPlaneAngle();  
 // Get the number of tracks:
 Int_t iNumberOfTracks = anEvent->NumberOfTracks(); 
 Int_t nRP = anEvent->GetEventNSelTracksRP(); // number of Reference Particles
 AliFlowTrackSimple *pTrack = NULL;
 Double_t dPhi1 = 0.;
 Double_t dPhi2 = 0.;
 Double_t dPt1 = 0.;
 Double_t dPt2 = 0.;
 Double_t n = fNinCorrelator; // shortcut
 Double_t m = fMinCorrelator; // shortcut
 Double_t x = fXinPairAngle; // shortcut
 for(Int_t i=0;i<iNumberOfTracks;i++) 
 {
  pTrack = anEvent->GetTrack(i); 
  if(pTrack && pTrack->InRPSelection())
  {
   dPhi1 = pTrack->Phi();
   dPt1 = pTrack->Pt();
  }
  for(Int_t j=0;j<iNumberOfTracks;j++) 
  {
   if(j==i) continue;
   pTrack = anEvent->GetTrack(j); 
   if(pTrack && pTrack->InPOISelection())
   {
    dPhi2 = pTrack->Phi();
    dPt2 = pTrack->Pt();
   }  
   Double_t dPhiPair = x*dPhi1+(1.-x)*dPhi2;
   Double_t dPtSum = 0.5*(dPt1+dPt2);
   Double_t dPtDiff = TMath::Abs(dPt1-dPt2);
   fPairCorrelator[0]->Fill(0.5,TMath::Cos(m*dPhiPair-n*dReactionPlane),1.); 
   fPairCorrelator[1]->Fill(0.5,TMath::Sin(m*dPhiPair-n*dReactionPlane),1.); 
   fPairCorrelatorVsM[0]->Fill(nRP+0.5,TMath::Cos(m*dPhiPair-n*dReactionPlane),1.);
   fPairCorrelatorVsM[1]->Fill(nRP+0.5,TMath::Sin(m*dPhiPair-n*dReactionPlane),1.);
   fPairCorrelatorVsPtSumDiff[0][0]->Fill(dPtSum,TMath::Cos(m*dPhiPair-n*dReactionPlane),1.);
   fPairCorrelatorVsPtSumDiff[1][0]->Fill(dPtSum,TMath::Sin(m*dPhiPair-n*dReactionPlane),1.);
   fPairCorrelatorVsPtSumDiff[0][1]->Fill(dPtDiff,TMath::Cos(m*dPhiPair-n*dReactionPlane),1.);
   fPairCorrelatorVsPtSumDiff[1][1]->Fill(dPtDiff,TMath::Sin(m*dPhiPair-n*dReactionPlane),1.);
  } // end of for(Int_t j=i+1;j<iNumberOfTracks;j++) 
 } // end of for(Int_t i=0;i<iNumberOfTracks;i++) 
 
} // end of void AliFlowAnalysisWithMCEventPlane::EvaluateMixedHarmonics()



 AliFlowAnalysisWithMCEventPlane.cxx:1
 AliFlowAnalysisWithMCEventPlane.cxx:2
 AliFlowAnalysisWithMCEventPlane.cxx:3
 AliFlowAnalysisWithMCEventPlane.cxx:4
 AliFlowAnalysisWithMCEventPlane.cxx:5
 AliFlowAnalysisWithMCEventPlane.cxx:6
 AliFlowAnalysisWithMCEventPlane.cxx:7
 AliFlowAnalysisWithMCEventPlane.cxx:8
 AliFlowAnalysisWithMCEventPlane.cxx:9
 AliFlowAnalysisWithMCEventPlane.cxx:10
 AliFlowAnalysisWithMCEventPlane.cxx:11
 AliFlowAnalysisWithMCEventPlane.cxx:12
 AliFlowAnalysisWithMCEventPlane.cxx:13
 AliFlowAnalysisWithMCEventPlane.cxx:14
 AliFlowAnalysisWithMCEventPlane.cxx:15
 AliFlowAnalysisWithMCEventPlane.cxx:16
 AliFlowAnalysisWithMCEventPlane.cxx:17
 AliFlowAnalysisWithMCEventPlane.cxx:18
 AliFlowAnalysisWithMCEventPlane.cxx:19
 AliFlowAnalysisWithMCEventPlane.cxx:20
 AliFlowAnalysisWithMCEventPlane.cxx:21
 AliFlowAnalysisWithMCEventPlane.cxx:22
 AliFlowAnalysisWithMCEventPlane.cxx:23
 AliFlowAnalysisWithMCEventPlane.cxx:24
 AliFlowAnalysisWithMCEventPlane.cxx:25
 AliFlowAnalysisWithMCEventPlane.cxx:26
 AliFlowAnalysisWithMCEventPlane.cxx:27
 AliFlowAnalysisWithMCEventPlane.cxx:28
 AliFlowAnalysisWithMCEventPlane.cxx:29
 AliFlowAnalysisWithMCEventPlane.cxx:30
 AliFlowAnalysisWithMCEventPlane.cxx:31
 AliFlowAnalysisWithMCEventPlane.cxx:32
 AliFlowAnalysisWithMCEventPlane.cxx:33
 AliFlowAnalysisWithMCEventPlane.cxx:34
 AliFlowAnalysisWithMCEventPlane.cxx:35
 AliFlowAnalysisWithMCEventPlane.cxx:36
 AliFlowAnalysisWithMCEventPlane.cxx:37
 AliFlowAnalysisWithMCEventPlane.cxx:38
 AliFlowAnalysisWithMCEventPlane.cxx:39
 AliFlowAnalysisWithMCEventPlane.cxx:40
 AliFlowAnalysisWithMCEventPlane.cxx:41
 AliFlowAnalysisWithMCEventPlane.cxx:42
 AliFlowAnalysisWithMCEventPlane.cxx:43
 AliFlowAnalysisWithMCEventPlane.cxx:44
 AliFlowAnalysisWithMCEventPlane.cxx:45
 AliFlowAnalysisWithMCEventPlane.cxx:46
 AliFlowAnalysisWithMCEventPlane.cxx:47
 AliFlowAnalysisWithMCEventPlane.cxx:48
 AliFlowAnalysisWithMCEventPlane.cxx:49
 AliFlowAnalysisWithMCEventPlane.cxx:50
 AliFlowAnalysisWithMCEventPlane.cxx:51
 AliFlowAnalysisWithMCEventPlane.cxx:52
 AliFlowAnalysisWithMCEventPlane.cxx:53
 AliFlowAnalysisWithMCEventPlane.cxx:54
 AliFlowAnalysisWithMCEventPlane.cxx:55
 AliFlowAnalysisWithMCEventPlane.cxx:56
 AliFlowAnalysisWithMCEventPlane.cxx:57
 AliFlowAnalysisWithMCEventPlane.cxx:58
 AliFlowAnalysisWithMCEventPlane.cxx:59
 AliFlowAnalysisWithMCEventPlane.cxx:60
 AliFlowAnalysisWithMCEventPlane.cxx:61
 AliFlowAnalysisWithMCEventPlane.cxx:62
 AliFlowAnalysisWithMCEventPlane.cxx:63
 AliFlowAnalysisWithMCEventPlane.cxx:64
 AliFlowAnalysisWithMCEventPlane.cxx:65
 AliFlowAnalysisWithMCEventPlane.cxx:66
 AliFlowAnalysisWithMCEventPlane.cxx:67
 AliFlowAnalysisWithMCEventPlane.cxx:68
 AliFlowAnalysisWithMCEventPlane.cxx:69
 AliFlowAnalysisWithMCEventPlane.cxx:70
 AliFlowAnalysisWithMCEventPlane.cxx:71
 AliFlowAnalysisWithMCEventPlane.cxx:72
 AliFlowAnalysisWithMCEventPlane.cxx:73
 AliFlowAnalysisWithMCEventPlane.cxx:74
 AliFlowAnalysisWithMCEventPlane.cxx:75
 AliFlowAnalysisWithMCEventPlane.cxx:76
 AliFlowAnalysisWithMCEventPlane.cxx:77
 AliFlowAnalysisWithMCEventPlane.cxx:78
 AliFlowAnalysisWithMCEventPlane.cxx:79
 AliFlowAnalysisWithMCEventPlane.cxx:80
 AliFlowAnalysisWithMCEventPlane.cxx:81
 AliFlowAnalysisWithMCEventPlane.cxx:82
 AliFlowAnalysisWithMCEventPlane.cxx:83
 AliFlowAnalysisWithMCEventPlane.cxx:84
 AliFlowAnalysisWithMCEventPlane.cxx:85
 AliFlowAnalysisWithMCEventPlane.cxx:86
 AliFlowAnalysisWithMCEventPlane.cxx:87
 AliFlowAnalysisWithMCEventPlane.cxx:88
 AliFlowAnalysisWithMCEventPlane.cxx:89
 AliFlowAnalysisWithMCEventPlane.cxx:90
 AliFlowAnalysisWithMCEventPlane.cxx:91
 AliFlowAnalysisWithMCEventPlane.cxx:92
 AliFlowAnalysisWithMCEventPlane.cxx:93
 AliFlowAnalysisWithMCEventPlane.cxx:94
 AliFlowAnalysisWithMCEventPlane.cxx:95
 AliFlowAnalysisWithMCEventPlane.cxx:96
 AliFlowAnalysisWithMCEventPlane.cxx:97
 AliFlowAnalysisWithMCEventPlane.cxx:98
 AliFlowAnalysisWithMCEventPlane.cxx:99
 AliFlowAnalysisWithMCEventPlane.cxx:100
 AliFlowAnalysisWithMCEventPlane.cxx:101
 AliFlowAnalysisWithMCEventPlane.cxx:102
 AliFlowAnalysisWithMCEventPlane.cxx:103
 AliFlowAnalysisWithMCEventPlane.cxx:104
 AliFlowAnalysisWithMCEventPlane.cxx:105
 AliFlowAnalysisWithMCEventPlane.cxx:106
 AliFlowAnalysisWithMCEventPlane.cxx:107
 AliFlowAnalysisWithMCEventPlane.cxx:108
 AliFlowAnalysisWithMCEventPlane.cxx:109
 AliFlowAnalysisWithMCEventPlane.cxx:110
 AliFlowAnalysisWithMCEventPlane.cxx:111
 AliFlowAnalysisWithMCEventPlane.cxx:112
 AliFlowAnalysisWithMCEventPlane.cxx:113
 AliFlowAnalysisWithMCEventPlane.cxx:114
 AliFlowAnalysisWithMCEventPlane.cxx:115
 AliFlowAnalysisWithMCEventPlane.cxx:116
 AliFlowAnalysisWithMCEventPlane.cxx:117
 AliFlowAnalysisWithMCEventPlane.cxx:118
 AliFlowAnalysisWithMCEventPlane.cxx:119
 AliFlowAnalysisWithMCEventPlane.cxx:120
 AliFlowAnalysisWithMCEventPlane.cxx:121
 AliFlowAnalysisWithMCEventPlane.cxx:122
 AliFlowAnalysisWithMCEventPlane.cxx:123
 AliFlowAnalysisWithMCEventPlane.cxx:124
 AliFlowAnalysisWithMCEventPlane.cxx:125
 AliFlowAnalysisWithMCEventPlane.cxx:126
 AliFlowAnalysisWithMCEventPlane.cxx:127
 AliFlowAnalysisWithMCEventPlane.cxx:128
 AliFlowAnalysisWithMCEventPlane.cxx:129
 AliFlowAnalysisWithMCEventPlane.cxx:130
 AliFlowAnalysisWithMCEventPlane.cxx:131
 AliFlowAnalysisWithMCEventPlane.cxx:132
 AliFlowAnalysisWithMCEventPlane.cxx:133
 AliFlowAnalysisWithMCEventPlane.cxx:134
 AliFlowAnalysisWithMCEventPlane.cxx:135
 AliFlowAnalysisWithMCEventPlane.cxx:136
 AliFlowAnalysisWithMCEventPlane.cxx:137
 AliFlowAnalysisWithMCEventPlane.cxx:138
 AliFlowAnalysisWithMCEventPlane.cxx:139
 AliFlowAnalysisWithMCEventPlane.cxx:140
 AliFlowAnalysisWithMCEventPlane.cxx:141
 AliFlowAnalysisWithMCEventPlane.cxx:142
 AliFlowAnalysisWithMCEventPlane.cxx:143
 AliFlowAnalysisWithMCEventPlane.cxx:144
 AliFlowAnalysisWithMCEventPlane.cxx:145
 AliFlowAnalysisWithMCEventPlane.cxx:146
 AliFlowAnalysisWithMCEventPlane.cxx:147
 AliFlowAnalysisWithMCEventPlane.cxx:148
 AliFlowAnalysisWithMCEventPlane.cxx:149
 AliFlowAnalysisWithMCEventPlane.cxx:150
 AliFlowAnalysisWithMCEventPlane.cxx:151
 AliFlowAnalysisWithMCEventPlane.cxx:152
 AliFlowAnalysisWithMCEventPlane.cxx:153
 AliFlowAnalysisWithMCEventPlane.cxx:154
 AliFlowAnalysisWithMCEventPlane.cxx:155
 AliFlowAnalysisWithMCEventPlane.cxx:156
 AliFlowAnalysisWithMCEventPlane.cxx:157
 AliFlowAnalysisWithMCEventPlane.cxx:158
 AliFlowAnalysisWithMCEventPlane.cxx:159
 AliFlowAnalysisWithMCEventPlane.cxx:160
 AliFlowAnalysisWithMCEventPlane.cxx:161
 AliFlowAnalysisWithMCEventPlane.cxx:162
 AliFlowAnalysisWithMCEventPlane.cxx:163
 AliFlowAnalysisWithMCEventPlane.cxx:164
 AliFlowAnalysisWithMCEventPlane.cxx:165
 AliFlowAnalysisWithMCEventPlane.cxx:166
 AliFlowAnalysisWithMCEventPlane.cxx:167
 AliFlowAnalysisWithMCEventPlane.cxx:168
 AliFlowAnalysisWithMCEventPlane.cxx:169
 AliFlowAnalysisWithMCEventPlane.cxx:170
 AliFlowAnalysisWithMCEventPlane.cxx:171
 AliFlowAnalysisWithMCEventPlane.cxx:172
 AliFlowAnalysisWithMCEventPlane.cxx:173
 AliFlowAnalysisWithMCEventPlane.cxx:174
 AliFlowAnalysisWithMCEventPlane.cxx:175
 AliFlowAnalysisWithMCEventPlane.cxx:176
 AliFlowAnalysisWithMCEventPlane.cxx:177
 AliFlowAnalysisWithMCEventPlane.cxx:178
 AliFlowAnalysisWithMCEventPlane.cxx:179
 AliFlowAnalysisWithMCEventPlane.cxx:180
 AliFlowAnalysisWithMCEventPlane.cxx:181
 AliFlowAnalysisWithMCEventPlane.cxx:182
 AliFlowAnalysisWithMCEventPlane.cxx:183
 AliFlowAnalysisWithMCEventPlane.cxx:184
 AliFlowAnalysisWithMCEventPlane.cxx:185
 AliFlowAnalysisWithMCEventPlane.cxx:186
 AliFlowAnalysisWithMCEventPlane.cxx:187
 AliFlowAnalysisWithMCEventPlane.cxx:188
 AliFlowAnalysisWithMCEventPlane.cxx:189
 AliFlowAnalysisWithMCEventPlane.cxx:190
 AliFlowAnalysisWithMCEventPlane.cxx:191
 AliFlowAnalysisWithMCEventPlane.cxx:192
 AliFlowAnalysisWithMCEventPlane.cxx:193
 AliFlowAnalysisWithMCEventPlane.cxx:194
 AliFlowAnalysisWithMCEventPlane.cxx:195
 AliFlowAnalysisWithMCEventPlane.cxx:196
 AliFlowAnalysisWithMCEventPlane.cxx:197
 AliFlowAnalysisWithMCEventPlane.cxx:198
 AliFlowAnalysisWithMCEventPlane.cxx:199
 AliFlowAnalysisWithMCEventPlane.cxx:200
 AliFlowAnalysisWithMCEventPlane.cxx:201
 AliFlowAnalysisWithMCEventPlane.cxx:202
 AliFlowAnalysisWithMCEventPlane.cxx:203
 AliFlowAnalysisWithMCEventPlane.cxx:204
 AliFlowAnalysisWithMCEventPlane.cxx:205
 AliFlowAnalysisWithMCEventPlane.cxx:206
 AliFlowAnalysisWithMCEventPlane.cxx:207
 AliFlowAnalysisWithMCEventPlane.cxx:208
 AliFlowAnalysisWithMCEventPlane.cxx:209
 AliFlowAnalysisWithMCEventPlane.cxx:210
 AliFlowAnalysisWithMCEventPlane.cxx:211
 AliFlowAnalysisWithMCEventPlane.cxx:212
 AliFlowAnalysisWithMCEventPlane.cxx:213
 AliFlowAnalysisWithMCEventPlane.cxx:214
 AliFlowAnalysisWithMCEventPlane.cxx:215
 AliFlowAnalysisWithMCEventPlane.cxx:216
 AliFlowAnalysisWithMCEventPlane.cxx:217
 AliFlowAnalysisWithMCEventPlane.cxx:218
 AliFlowAnalysisWithMCEventPlane.cxx:219
 AliFlowAnalysisWithMCEventPlane.cxx:220
 AliFlowAnalysisWithMCEventPlane.cxx:221
 AliFlowAnalysisWithMCEventPlane.cxx:222
 AliFlowAnalysisWithMCEventPlane.cxx:223
 AliFlowAnalysisWithMCEventPlane.cxx:224
 AliFlowAnalysisWithMCEventPlane.cxx:225
 AliFlowAnalysisWithMCEventPlane.cxx:226
 AliFlowAnalysisWithMCEventPlane.cxx:227
 AliFlowAnalysisWithMCEventPlane.cxx:228
 AliFlowAnalysisWithMCEventPlane.cxx:229
 AliFlowAnalysisWithMCEventPlane.cxx:230
 AliFlowAnalysisWithMCEventPlane.cxx:231
 AliFlowAnalysisWithMCEventPlane.cxx:232
 AliFlowAnalysisWithMCEventPlane.cxx:233
 AliFlowAnalysisWithMCEventPlane.cxx:234
 AliFlowAnalysisWithMCEventPlane.cxx:235
 AliFlowAnalysisWithMCEventPlane.cxx:236
 AliFlowAnalysisWithMCEventPlane.cxx:237
 AliFlowAnalysisWithMCEventPlane.cxx:238
 AliFlowAnalysisWithMCEventPlane.cxx:239
 AliFlowAnalysisWithMCEventPlane.cxx:240
 AliFlowAnalysisWithMCEventPlane.cxx:241
 AliFlowAnalysisWithMCEventPlane.cxx:242
 AliFlowAnalysisWithMCEventPlane.cxx:243
 AliFlowAnalysisWithMCEventPlane.cxx:244
 AliFlowAnalysisWithMCEventPlane.cxx:245
 AliFlowAnalysisWithMCEventPlane.cxx:246
 AliFlowAnalysisWithMCEventPlane.cxx:247
 AliFlowAnalysisWithMCEventPlane.cxx:248
 AliFlowAnalysisWithMCEventPlane.cxx:249
 AliFlowAnalysisWithMCEventPlane.cxx:250
 AliFlowAnalysisWithMCEventPlane.cxx:251
 AliFlowAnalysisWithMCEventPlane.cxx:252
 AliFlowAnalysisWithMCEventPlane.cxx:253
 AliFlowAnalysisWithMCEventPlane.cxx:254
 AliFlowAnalysisWithMCEventPlane.cxx:255
 AliFlowAnalysisWithMCEventPlane.cxx:256
 AliFlowAnalysisWithMCEventPlane.cxx:257
 AliFlowAnalysisWithMCEventPlane.cxx:258
 AliFlowAnalysisWithMCEventPlane.cxx:259
 AliFlowAnalysisWithMCEventPlane.cxx:260
 AliFlowAnalysisWithMCEventPlane.cxx:261
 AliFlowAnalysisWithMCEventPlane.cxx:262
 AliFlowAnalysisWithMCEventPlane.cxx:263
 AliFlowAnalysisWithMCEventPlane.cxx:264
 AliFlowAnalysisWithMCEventPlane.cxx:265
 AliFlowAnalysisWithMCEventPlane.cxx:266
 AliFlowAnalysisWithMCEventPlane.cxx:267
 AliFlowAnalysisWithMCEventPlane.cxx:268
 AliFlowAnalysisWithMCEventPlane.cxx:269
 AliFlowAnalysisWithMCEventPlane.cxx:270
 AliFlowAnalysisWithMCEventPlane.cxx:271
 AliFlowAnalysisWithMCEventPlane.cxx:272
 AliFlowAnalysisWithMCEventPlane.cxx:273
 AliFlowAnalysisWithMCEventPlane.cxx:274
 AliFlowAnalysisWithMCEventPlane.cxx:275
 AliFlowAnalysisWithMCEventPlane.cxx:276
 AliFlowAnalysisWithMCEventPlane.cxx:277
 AliFlowAnalysisWithMCEventPlane.cxx:278
 AliFlowAnalysisWithMCEventPlane.cxx:279
 AliFlowAnalysisWithMCEventPlane.cxx:280
 AliFlowAnalysisWithMCEventPlane.cxx:281
 AliFlowAnalysisWithMCEventPlane.cxx:282
 AliFlowAnalysisWithMCEventPlane.cxx:283
 AliFlowAnalysisWithMCEventPlane.cxx:284
 AliFlowAnalysisWithMCEventPlane.cxx:285
 AliFlowAnalysisWithMCEventPlane.cxx:286
 AliFlowAnalysisWithMCEventPlane.cxx:287
 AliFlowAnalysisWithMCEventPlane.cxx:288
 AliFlowAnalysisWithMCEventPlane.cxx:289
 AliFlowAnalysisWithMCEventPlane.cxx:290
 AliFlowAnalysisWithMCEventPlane.cxx:291
 AliFlowAnalysisWithMCEventPlane.cxx:292
 AliFlowAnalysisWithMCEventPlane.cxx:293
 AliFlowAnalysisWithMCEventPlane.cxx:294
 AliFlowAnalysisWithMCEventPlane.cxx:295
 AliFlowAnalysisWithMCEventPlane.cxx:296
 AliFlowAnalysisWithMCEventPlane.cxx:297
 AliFlowAnalysisWithMCEventPlane.cxx:298
 AliFlowAnalysisWithMCEventPlane.cxx:299
 AliFlowAnalysisWithMCEventPlane.cxx:300
 AliFlowAnalysisWithMCEventPlane.cxx:301
 AliFlowAnalysisWithMCEventPlane.cxx:302
 AliFlowAnalysisWithMCEventPlane.cxx:303
 AliFlowAnalysisWithMCEventPlane.cxx:304
 AliFlowAnalysisWithMCEventPlane.cxx:305
 AliFlowAnalysisWithMCEventPlane.cxx:306
 AliFlowAnalysisWithMCEventPlane.cxx:307
 AliFlowAnalysisWithMCEventPlane.cxx:308
 AliFlowAnalysisWithMCEventPlane.cxx:309
 AliFlowAnalysisWithMCEventPlane.cxx:310
 AliFlowAnalysisWithMCEventPlane.cxx:311
 AliFlowAnalysisWithMCEventPlane.cxx:312
 AliFlowAnalysisWithMCEventPlane.cxx:313
 AliFlowAnalysisWithMCEventPlane.cxx:314
 AliFlowAnalysisWithMCEventPlane.cxx:315
 AliFlowAnalysisWithMCEventPlane.cxx:316
 AliFlowAnalysisWithMCEventPlane.cxx:317
 AliFlowAnalysisWithMCEventPlane.cxx:318
 AliFlowAnalysisWithMCEventPlane.cxx:319
 AliFlowAnalysisWithMCEventPlane.cxx:320
 AliFlowAnalysisWithMCEventPlane.cxx:321
 AliFlowAnalysisWithMCEventPlane.cxx:322
 AliFlowAnalysisWithMCEventPlane.cxx:323
 AliFlowAnalysisWithMCEventPlane.cxx:324
 AliFlowAnalysisWithMCEventPlane.cxx:325
 AliFlowAnalysisWithMCEventPlane.cxx:326
 AliFlowAnalysisWithMCEventPlane.cxx:327
 AliFlowAnalysisWithMCEventPlane.cxx:328
 AliFlowAnalysisWithMCEventPlane.cxx:329
 AliFlowAnalysisWithMCEventPlane.cxx:330
 AliFlowAnalysisWithMCEventPlane.cxx:331
 AliFlowAnalysisWithMCEventPlane.cxx:332
 AliFlowAnalysisWithMCEventPlane.cxx:333
 AliFlowAnalysisWithMCEventPlane.cxx:334
 AliFlowAnalysisWithMCEventPlane.cxx:335
 AliFlowAnalysisWithMCEventPlane.cxx:336
 AliFlowAnalysisWithMCEventPlane.cxx:337
 AliFlowAnalysisWithMCEventPlane.cxx:338
 AliFlowAnalysisWithMCEventPlane.cxx:339
 AliFlowAnalysisWithMCEventPlane.cxx:340
 AliFlowAnalysisWithMCEventPlane.cxx:341
 AliFlowAnalysisWithMCEventPlane.cxx:342
 AliFlowAnalysisWithMCEventPlane.cxx:343
 AliFlowAnalysisWithMCEventPlane.cxx:344
 AliFlowAnalysisWithMCEventPlane.cxx:345
 AliFlowAnalysisWithMCEventPlane.cxx:346
 AliFlowAnalysisWithMCEventPlane.cxx:347
 AliFlowAnalysisWithMCEventPlane.cxx:348
 AliFlowAnalysisWithMCEventPlane.cxx:349
 AliFlowAnalysisWithMCEventPlane.cxx:350
 AliFlowAnalysisWithMCEventPlane.cxx:351
 AliFlowAnalysisWithMCEventPlane.cxx:352
 AliFlowAnalysisWithMCEventPlane.cxx:353
 AliFlowAnalysisWithMCEventPlane.cxx:354
 AliFlowAnalysisWithMCEventPlane.cxx:355
 AliFlowAnalysisWithMCEventPlane.cxx:356
 AliFlowAnalysisWithMCEventPlane.cxx:357
 AliFlowAnalysisWithMCEventPlane.cxx:358
 AliFlowAnalysisWithMCEventPlane.cxx:359
 AliFlowAnalysisWithMCEventPlane.cxx:360
 AliFlowAnalysisWithMCEventPlane.cxx:361
 AliFlowAnalysisWithMCEventPlane.cxx:362
 AliFlowAnalysisWithMCEventPlane.cxx:363
 AliFlowAnalysisWithMCEventPlane.cxx:364
 AliFlowAnalysisWithMCEventPlane.cxx:365
 AliFlowAnalysisWithMCEventPlane.cxx:366
 AliFlowAnalysisWithMCEventPlane.cxx:367
 AliFlowAnalysisWithMCEventPlane.cxx:368
 AliFlowAnalysisWithMCEventPlane.cxx:369
 AliFlowAnalysisWithMCEventPlane.cxx:370
 AliFlowAnalysisWithMCEventPlane.cxx:371
 AliFlowAnalysisWithMCEventPlane.cxx:372
 AliFlowAnalysisWithMCEventPlane.cxx:373
 AliFlowAnalysisWithMCEventPlane.cxx:374
 AliFlowAnalysisWithMCEventPlane.cxx:375
 AliFlowAnalysisWithMCEventPlane.cxx:376
 AliFlowAnalysisWithMCEventPlane.cxx:377
 AliFlowAnalysisWithMCEventPlane.cxx:378
 AliFlowAnalysisWithMCEventPlane.cxx:379
 AliFlowAnalysisWithMCEventPlane.cxx:380
 AliFlowAnalysisWithMCEventPlane.cxx:381
 AliFlowAnalysisWithMCEventPlane.cxx:382
 AliFlowAnalysisWithMCEventPlane.cxx:383
 AliFlowAnalysisWithMCEventPlane.cxx:384
 AliFlowAnalysisWithMCEventPlane.cxx:385
 AliFlowAnalysisWithMCEventPlane.cxx:386
 AliFlowAnalysisWithMCEventPlane.cxx:387
 AliFlowAnalysisWithMCEventPlane.cxx:388
 AliFlowAnalysisWithMCEventPlane.cxx:389
 AliFlowAnalysisWithMCEventPlane.cxx:390
 AliFlowAnalysisWithMCEventPlane.cxx:391
 AliFlowAnalysisWithMCEventPlane.cxx:392
 AliFlowAnalysisWithMCEventPlane.cxx:393
 AliFlowAnalysisWithMCEventPlane.cxx:394
 AliFlowAnalysisWithMCEventPlane.cxx:395
 AliFlowAnalysisWithMCEventPlane.cxx:396
 AliFlowAnalysisWithMCEventPlane.cxx:397
 AliFlowAnalysisWithMCEventPlane.cxx:398
 AliFlowAnalysisWithMCEventPlane.cxx:399
 AliFlowAnalysisWithMCEventPlane.cxx:400
 AliFlowAnalysisWithMCEventPlane.cxx:401
 AliFlowAnalysisWithMCEventPlane.cxx:402
 AliFlowAnalysisWithMCEventPlane.cxx:403
 AliFlowAnalysisWithMCEventPlane.cxx:404
 AliFlowAnalysisWithMCEventPlane.cxx:405
 AliFlowAnalysisWithMCEventPlane.cxx:406
 AliFlowAnalysisWithMCEventPlane.cxx:407
 AliFlowAnalysisWithMCEventPlane.cxx:408
 AliFlowAnalysisWithMCEventPlane.cxx:409
 AliFlowAnalysisWithMCEventPlane.cxx:410
 AliFlowAnalysisWithMCEventPlane.cxx:411
 AliFlowAnalysisWithMCEventPlane.cxx:412
 AliFlowAnalysisWithMCEventPlane.cxx:413
 AliFlowAnalysisWithMCEventPlane.cxx:414
 AliFlowAnalysisWithMCEventPlane.cxx:415
 AliFlowAnalysisWithMCEventPlane.cxx:416
 AliFlowAnalysisWithMCEventPlane.cxx:417
 AliFlowAnalysisWithMCEventPlane.cxx:418
 AliFlowAnalysisWithMCEventPlane.cxx:419
 AliFlowAnalysisWithMCEventPlane.cxx:420
 AliFlowAnalysisWithMCEventPlane.cxx:421
 AliFlowAnalysisWithMCEventPlane.cxx:422
 AliFlowAnalysisWithMCEventPlane.cxx:423
 AliFlowAnalysisWithMCEventPlane.cxx:424
 AliFlowAnalysisWithMCEventPlane.cxx:425
 AliFlowAnalysisWithMCEventPlane.cxx:426
 AliFlowAnalysisWithMCEventPlane.cxx:427
 AliFlowAnalysisWithMCEventPlane.cxx:428
 AliFlowAnalysisWithMCEventPlane.cxx:429
 AliFlowAnalysisWithMCEventPlane.cxx:430
 AliFlowAnalysisWithMCEventPlane.cxx:431
 AliFlowAnalysisWithMCEventPlane.cxx:432
 AliFlowAnalysisWithMCEventPlane.cxx:433
 AliFlowAnalysisWithMCEventPlane.cxx:434
 AliFlowAnalysisWithMCEventPlane.cxx:435
 AliFlowAnalysisWithMCEventPlane.cxx:436
 AliFlowAnalysisWithMCEventPlane.cxx:437
 AliFlowAnalysisWithMCEventPlane.cxx:438
 AliFlowAnalysisWithMCEventPlane.cxx:439
 AliFlowAnalysisWithMCEventPlane.cxx:440
 AliFlowAnalysisWithMCEventPlane.cxx:441
 AliFlowAnalysisWithMCEventPlane.cxx:442
 AliFlowAnalysisWithMCEventPlane.cxx:443
 AliFlowAnalysisWithMCEventPlane.cxx:444
 AliFlowAnalysisWithMCEventPlane.cxx:445
 AliFlowAnalysisWithMCEventPlane.cxx:446
 AliFlowAnalysisWithMCEventPlane.cxx:447
 AliFlowAnalysisWithMCEventPlane.cxx:448
 AliFlowAnalysisWithMCEventPlane.cxx:449
 AliFlowAnalysisWithMCEventPlane.cxx:450
 AliFlowAnalysisWithMCEventPlane.cxx:451
 AliFlowAnalysisWithMCEventPlane.cxx:452
 AliFlowAnalysisWithMCEventPlane.cxx:453
 AliFlowAnalysisWithMCEventPlane.cxx:454
 AliFlowAnalysisWithMCEventPlane.cxx:455
 AliFlowAnalysisWithMCEventPlane.cxx:456
 AliFlowAnalysisWithMCEventPlane.cxx:457
 AliFlowAnalysisWithMCEventPlane.cxx:458
 AliFlowAnalysisWithMCEventPlane.cxx:459
 AliFlowAnalysisWithMCEventPlane.cxx:460
 AliFlowAnalysisWithMCEventPlane.cxx:461
 AliFlowAnalysisWithMCEventPlane.cxx:462
 AliFlowAnalysisWithMCEventPlane.cxx:463
 AliFlowAnalysisWithMCEventPlane.cxx:464
 AliFlowAnalysisWithMCEventPlane.cxx:465
 AliFlowAnalysisWithMCEventPlane.cxx:466
 AliFlowAnalysisWithMCEventPlane.cxx:467
 AliFlowAnalysisWithMCEventPlane.cxx:468
 AliFlowAnalysisWithMCEventPlane.cxx:469
 AliFlowAnalysisWithMCEventPlane.cxx:470
 AliFlowAnalysisWithMCEventPlane.cxx:471
 AliFlowAnalysisWithMCEventPlane.cxx:472
 AliFlowAnalysisWithMCEventPlane.cxx:473
 AliFlowAnalysisWithMCEventPlane.cxx:474
 AliFlowAnalysisWithMCEventPlane.cxx:475
 AliFlowAnalysisWithMCEventPlane.cxx:476
 AliFlowAnalysisWithMCEventPlane.cxx:477
 AliFlowAnalysisWithMCEventPlane.cxx:478
 AliFlowAnalysisWithMCEventPlane.cxx:479
 AliFlowAnalysisWithMCEventPlane.cxx:480
 AliFlowAnalysisWithMCEventPlane.cxx:481
 AliFlowAnalysisWithMCEventPlane.cxx:482
 AliFlowAnalysisWithMCEventPlane.cxx:483
 AliFlowAnalysisWithMCEventPlane.cxx:484
 AliFlowAnalysisWithMCEventPlane.cxx:485
 AliFlowAnalysisWithMCEventPlane.cxx:486
 AliFlowAnalysisWithMCEventPlane.cxx:487
 AliFlowAnalysisWithMCEventPlane.cxx:488
 AliFlowAnalysisWithMCEventPlane.cxx:489
 AliFlowAnalysisWithMCEventPlane.cxx:490
 AliFlowAnalysisWithMCEventPlane.cxx:491
 AliFlowAnalysisWithMCEventPlane.cxx:492
 AliFlowAnalysisWithMCEventPlane.cxx:493
 AliFlowAnalysisWithMCEventPlane.cxx:494
 AliFlowAnalysisWithMCEventPlane.cxx:495
 AliFlowAnalysisWithMCEventPlane.cxx:496
 AliFlowAnalysisWithMCEventPlane.cxx:497
 AliFlowAnalysisWithMCEventPlane.cxx:498
 AliFlowAnalysisWithMCEventPlane.cxx:499
 AliFlowAnalysisWithMCEventPlane.cxx:500
 AliFlowAnalysisWithMCEventPlane.cxx:501
 AliFlowAnalysisWithMCEventPlane.cxx:502
 AliFlowAnalysisWithMCEventPlane.cxx:503
 AliFlowAnalysisWithMCEventPlane.cxx:504
 AliFlowAnalysisWithMCEventPlane.cxx:505
 AliFlowAnalysisWithMCEventPlane.cxx:506
 AliFlowAnalysisWithMCEventPlane.cxx:507
 AliFlowAnalysisWithMCEventPlane.cxx:508
 AliFlowAnalysisWithMCEventPlane.cxx:509
 AliFlowAnalysisWithMCEventPlane.cxx:510
 AliFlowAnalysisWithMCEventPlane.cxx:511
 AliFlowAnalysisWithMCEventPlane.cxx:512
 AliFlowAnalysisWithMCEventPlane.cxx:513
 AliFlowAnalysisWithMCEventPlane.cxx:514
 AliFlowAnalysisWithMCEventPlane.cxx:515
 AliFlowAnalysisWithMCEventPlane.cxx:516
 AliFlowAnalysisWithMCEventPlane.cxx:517
 AliFlowAnalysisWithMCEventPlane.cxx:518
 AliFlowAnalysisWithMCEventPlane.cxx:519
 AliFlowAnalysisWithMCEventPlane.cxx:520
 AliFlowAnalysisWithMCEventPlane.cxx:521
 AliFlowAnalysisWithMCEventPlane.cxx:522
 AliFlowAnalysisWithMCEventPlane.cxx:523
 AliFlowAnalysisWithMCEventPlane.cxx:524
 AliFlowAnalysisWithMCEventPlane.cxx:525
 AliFlowAnalysisWithMCEventPlane.cxx:526
 AliFlowAnalysisWithMCEventPlane.cxx:527
 AliFlowAnalysisWithMCEventPlane.cxx:528
 AliFlowAnalysisWithMCEventPlane.cxx:529
 AliFlowAnalysisWithMCEventPlane.cxx:530
 AliFlowAnalysisWithMCEventPlane.cxx:531
 AliFlowAnalysisWithMCEventPlane.cxx:532
 AliFlowAnalysisWithMCEventPlane.cxx:533
 AliFlowAnalysisWithMCEventPlane.cxx:534
 AliFlowAnalysisWithMCEventPlane.cxx:535
 AliFlowAnalysisWithMCEventPlane.cxx:536
 AliFlowAnalysisWithMCEventPlane.cxx:537
 AliFlowAnalysisWithMCEventPlane.cxx:538
 AliFlowAnalysisWithMCEventPlane.cxx:539
 AliFlowAnalysisWithMCEventPlane.cxx:540
 AliFlowAnalysisWithMCEventPlane.cxx:541
 AliFlowAnalysisWithMCEventPlane.cxx:542
 AliFlowAnalysisWithMCEventPlane.cxx:543
 AliFlowAnalysisWithMCEventPlane.cxx:544
 AliFlowAnalysisWithMCEventPlane.cxx:545
 AliFlowAnalysisWithMCEventPlane.cxx:546
 AliFlowAnalysisWithMCEventPlane.cxx:547
 AliFlowAnalysisWithMCEventPlane.cxx:548
 AliFlowAnalysisWithMCEventPlane.cxx:549
 AliFlowAnalysisWithMCEventPlane.cxx:550
 AliFlowAnalysisWithMCEventPlane.cxx:551
 AliFlowAnalysisWithMCEventPlane.cxx:552
 AliFlowAnalysisWithMCEventPlane.cxx:553
 AliFlowAnalysisWithMCEventPlane.cxx:554
 AliFlowAnalysisWithMCEventPlane.cxx:555
 AliFlowAnalysisWithMCEventPlane.cxx:556
 AliFlowAnalysisWithMCEventPlane.cxx:557
 AliFlowAnalysisWithMCEventPlane.cxx:558
 AliFlowAnalysisWithMCEventPlane.cxx:559
 AliFlowAnalysisWithMCEventPlane.cxx:560
 AliFlowAnalysisWithMCEventPlane.cxx:561
 AliFlowAnalysisWithMCEventPlane.cxx:562
 AliFlowAnalysisWithMCEventPlane.cxx:563
 AliFlowAnalysisWithMCEventPlane.cxx:564
 AliFlowAnalysisWithMCEventPlane.cxx:565
 AliFlowAnalysisWithMCEventPlane.cxx:566
 AliFlowAnalysisWithMCEventPlane.cxx:567
 AliFlowAnalysisWithMCEventPlane.cxx:568
 AliFlowAnalysisWithMCEventPlane.cxx:569
 AliFlowAnalysisWithMCEventPlane.cxx:570
 AliFlowAnalysisWithMCEventPlane.cxx:571
 AliFlowAnalysisWithMCEventPlane.cxx:572
 AliFlowAnalysisWithMCEventPlane.cxx:573
 AliFlowAnalysisWithMCEventPlane.cxx:574
 AliFlowAnalysisWithMCEventPlane.cxx:575
 AliFlowAnalysisWithMCEventPlane.cxx:576
 AliFlowAnalysisWithMCEventPlane.cxx:577
 AliFlowAnalysisWithMCEventPlane.cxx:578
 AliFlowAnalysisWithMCEventPlane.cxx:579
 AliFlowAnalysisWithMCEventPlane.cxx:580
 AliFlowAnalysisWithMCEventPlane.cxx:581
 AliFlowAnalysisWithMCEventPlane.cxx:582
 AliFlowAnalysisWithMCEventPlane.cxx:583
 AliFlowAnalysisWithMCEventPlane.cxx:584
 AliFlowAnalysisWithMCEventPlane.cxx:585
 AliFlowAnalysisWithMCEventPlane.cxx:586
 AliFlowAnalysisWithMCEventPlane.cxx:587
 AliFlowAnalysisWithMCEventPlane.cxx:588
 AliFlowAnalysisWithMCEventPlane.cxx:589
 AliFlowAnalysisWithMCEventPlane.cxx:590
 AliFlowAnalysisWithMCEventPlane.cxx:591
 AliFlowAnalysisWithMCEventPlane.cxx:592
 AliFlowAnalysisWithMCEventPlane.cxx:593
 AliFlowAnalysisWithMCEventPlane.cxx:594
 AliFlowAnalysisWithMCEventPlane.cxx:595
 AliFlowAnalysisWithMCEventPlane.cxx:596
 AliFlowAnalysisWithMCEventPlane.cxx:597
 AliFlowAnalysisWithMCEventPlane.cxx:598
 AliFlowAnalysisWithMCEventPlane.cxx:599
 AliFlowAnalysisWithMCEventPlane.cxx:600
 AliFlowAnalysisWithMCEventPlane.cxx:601
 AliFlowAnalysisWithMCEventPlane.cxx:602
 AliFlowAnalysisWithMCEventPlane.cxx:603
 AliFlowAnalysisWithMCEventPlane.cxx:604
 AliFlowAnalysisWithMCEventPlane.cxx:605
 AliFlowAnalysisWithMCEventPlane.cxx:606
 AliFlowAnalysisWithMCEventPlane.cxx:607
 AliFlowAnalysisWithMCEventPlane.cxx:608
 AliFlowAnalysisWithMCEventPlane.cxx:609
 AliFlowAnalysisWithMCEventPlane.cxx:610
 AliFlowAnalysisWithMCEventPlane.cxx:611
 AliFlowAnalysisWithMCEventPlane.cxx:612
 AliFlowAnalysisWithMCEventPlane.cxx:613
 AliFlowAnalysisWithMCEventPlane.cxx:614
 AliFlowAnalysisWithMCEventPlane.cxx:615
 AliFlowAnalysisWithMCEventPlane.cxx:616
 AliFlowAnalysisWithMCEventPlane.cxx:617
 AliFlowAnalysisWithMCEventPlane.cxx:618
 AliFlowAnalysisWithMCEventPlane.cxx:619
 AliFlowAnalysisWithMCEventPlane.cxx:620
 AliFlowAnalysisWithMCEventPlane.cxx:621
 AliFlowAnalysisWithMCEventPlane.cxx:622
 AliFlowAnalysisWithMCEventPlane.cxx:623
 AliFlowAnalysisWithMCEventPlane.cxx:624
 AliFlowAnalysisWithMCEventPlane.cxx:625
 AliFlowAnalysisWithMCEventPlane.cxx:626
 AliFlowAnalysisWithMCEventPlane.cxx:627
 AliFlowAnalysisWithMCEventPlane.cxx:628
 AliFlowAnalysisWithMCEventPlane.cxx:629
 AliFlowAnalysisWithMCEventPlane.cxx:630
 AliFlowAnalysisWithMCEventPlane.cxx:631
 AliFlowAnalysisWithMCEventPlane.cxx:632
 AliFlowAnalysisWithMCEventPlane.cxx:633
 AliFlowAnalysisWithMCEventPlane.cxx:634
 AliFlowAnalysisWithMCEventPlane.cxx:635
 AliFlowAnalysisWithMCEventPlane.cxx:636
 AliFlowAnalysisWithMCEventPlane.cxx:637
 AliFlowAnalysisWithMCEventPlane.cxx:638
 AliFlowAnalysisWithMCEventPlane.cxx:639
 AliFlowAnalysisWithMCEventPlane.cxx:640
 AliFlowAnalysisWithMCEventPlane.cxx:641