#include "TChain.h"
#include "TList.h"
#include "TFile.h"
#include "TTree.h"
#include "TH1D.h"
#include "TH2D.h"
#include "TH3D.h"
#include "THnSparse.h"
#include "TCanvas.h"
#include "AliAnalysisTaskSE.h"
#include "AliAnalysisManager.h"
#include "AliAODEvent.h"
#include "AliVTrack.h"
#include "AliAODTrack.h"
#include "AliAODInputHandler.h"
#include "AliAODEvent.h"
#include "AliStack.h"
#include "AliAODMCHeader.h"
#include "AliAODMCParticle.h"
#include "AliMCEventHandler.h"
#include "AliMCEvent.h"
#include "AliStack.h"
#include "AliGenHijingEventHeader.h"
#include "AliGenEventHeader.h"
#include "AliPID.h"
#include "AliAODPid.h"
#include "AliPIDResponse.h"
#include "AliAODpidUtil.h"
#include "AliPIDCombined.h"
#include "AliHelperPID.h"
#include "AliEbyEHigherMomentsTask.h"
using std::cout;
using std::endl;
ClassImp(AliEbyEHigherMomentsTask)
AliEbyEHigherMomentsTask::AliEbyEHigherMomentsTask( const char *name )
: AliAnalysisTaskSE( name ),
fListOfHistos(0),
fArrayMC(0),
fAnalysisType(0),
fCentralityEstimator("V0M"),
fCentrality(0),
fVxMax(3.),
fVyMax(3.),
fVzMax(10.),
fPtLowerLimit(0.3),
fPtHigherLimit(1.5),
fNptBins(0),
fBin(0),
fEtaLowerLimit(-0.8),
fEtaHigherLimit(0.8),
fAODtrackCutBit(128),
fEventCounter(0),
fHistVxVy(0),
fTHnCentNplusNminusCh(0),
fTHnCentNplusNminusChTruth(0),
fPtBinNplusNminusCh(0),
fPtBinNplusNminusChTruth(0)
{
for ( Int_t i = 0; i < 4; i++) {
fHistQA[i] = NULL;
}
DefineOutput(1, TList::Class());
}
AliEbyEHigherMomentsTask::~AliEbyEHigherMomentsTask() {
if(fListOfHistos) delete fListOfHistos;
}
void AliEbyEHigherMomentsTask::UserCreateOutputObjects() {
fListOfHistos = new TList();
fListOfHistos->SetOwner(kTRUE);
fEventCounter = new TH1D("fEventCounter","EventCounter", 10, 0.5,10.5);
fEventCounter->GetXaxis()->SetBinLabel(1,"Event Accesed");
fEventCounter->GetXaxis()->SetBinLabel(2,"Within 0-80% centrality");
fEventCounter->GetXaxis()->SetBinLabel(5,"Have a vertex");
fEventCounter->GetXaxis()->SetBinLabel(6,"After vertex Cut");
fEventCounter->GetXaxis()->SetBinLabel(7,"Event Analyzed");
fListOfHistos->Add(fEventCounter);
fHistQA[0] = new TH1D("fHistQAvz", "Histo Vz After Cut", 500, -25., 25.);
fHistQA[1] = new TH1D("fHistQAPt","p_{T} distribution",600,0,6);
fHistQA[2] = new TH1D("fHistQAEta","#eta distribution",240,-1.2,1.2);
fHistQA[3] = new TH1D("fHistQAPhi","#phi distribution",340,0,6.8);
for(Int_t i = 0; i < 4; i++)
{
fListOfHistos->Add(fHistQA[i]);
}
fHistVxVy = new TH2D("fHistVxVy","Vertex-x Vs Vertex-y", 200, -1., 1., 200, -1., 1.);
fListOfHistos->Add(fHistVxVy);
const Int_t nDim = 3;
Int_t fBinsCh[nDim] = {100, 1500, 1500};
Double_t fMinCh[nDim] = { -0.5, -0.5, -0.5 };
Double_t fMaxCh[nDim] = { 99.5, 1499.5, 1499.5};
const Int_t dim = fNptBins*2 + 1;
Int_t bin[dim];
Double_t min[dim];
Double_t max[dim];
bin[0] = 100; min[0] = -0.5; max[0] = 99.5;
for(Int_t i = 1; i < dim; i++){
bin[i] = 900;
min[i] = -0.5;
max[i] = 899.5;
}
fTHnCentNplusNminusCh = new THnSparseD("fTHnCentNplusNminusCh","Cent-NplusChrg-NminusChrg", nDim, fBinsCh, fMinCh, fMaxCh);
fTHnCentNplusNminusCh->GetAxis(0)->SetTitle("Centrality");
fTHnCentNplusNminusCh->GetAxis(1)->SetTitle("Nplus");
fTHnCentNplusNminusCh->GetAxis(2)->SetTitle("Nminus");
fListOfHistos->Add(fTHnCentNplusNminusCh);
fPtBinNplusNminusCh = new THnSparseI("fPtBinNplusNminusCh","cent-nplus-nminus", dim, bin, min, max);
fListOfHistos->Add(fPtBinNplusNminusCh);
if( fAnalysisType == "MCAOD" ){
fTHnCentNplusNminusChTruth = new THnSparseD("fTHnCentNplusNminusChTruth","Cent-NplusChrg-NminusChrg", nDim, fBinsCh, fMinCh, fMaxCh);
fTHnCentNplusNminusChTruth->GetAxis(0)->SetTitle("Centrality");
fTHnCentNplusNminusChTruth->GetAxis(1)->SetTitle("Nplus");
fTHnCentNplusNminusChTruth->GetAxis(2)->SetTitle("Nminus");
fListOfHistos->Add(fTHnCentNplusNminusChTruth);
fPtBinNplusNminusChTruth = new THnSparseI("fPtBinNplusNminusChTruth","cent-nplus-nminus", dim, bin, min, max);
fListOfHistos->Add(fPtBinNplusNminusChTruth);
}
PostData(1, fListOfHistos);
}
void AliEbyEHigherMomentsTask::UserExec( Option_t * ){
fEventCounter->Fill(1);
if(fAnalysisType == "AOD") {
doAODEvent();
}
else if(fAnalysisType == "MCAOD") {
doMCAODEvent();
}
else return;
}
void AliEbyEHigherMomentsTask::doAODEvent(){
Double_t positiveSum = 0.;
Double_t negativeSum = 0.;
const Int_t dim = fNptBins*2;
Double_t PtCh[dim];
for(Int_t idx = 0; idx < dim; idx++){
PtCh[idx] = 0.;
}
AliAnalysisManager* manager = AliAnalysisManager::GetAnalysisManager();
if (!manager) {
cout<<"ERROR: Analysis manager not found."<<endl;
return;
}
AliAODInputHandler* inputHandler = dynamic_cast<AliAODInputHandler*> (manager->GetInputEventHandler());
if (!inputHandler) {
cout<<"ERROR: Input handler not found."<<endl;
return;
}
AliAODEvent *fAOD = dynamic_cast<AliAODEvent*>(InputEvent());
if (!fAOD)
{
cout<< "ERROR: AOD not found " <<endl;
return;
}
if(!ProperVertex(fAOD)) return;
AliAODHeader *aodHeader = dynamic_cast<AliAODHeader*>(fAOD->GetHeader());
if(!aodHeader) AliFatal("Not a standard AOD");
fCentrality = (Int_t)aodHeader->GetCentralityP()->GetCentralityPercentile(fCentralityEstimator.Data());
if(fCentrality < 0 || fCentrality >= 81) return;
fEventCounter->Fill(2);
Int_t nTracks = fAOD->GetNumberOfTracks();
for(Int_t i = 0; i < nTracks; i++) {
AliAODTrack* aodTrack = dynamic_cast<AliAODTrack *>(fAOD->GetTrack(i));
if(!aodTrack) {
AliError(Form("ERROR: Could not retrieve AODtrack %d",i));
continue;
}
if(!AcceptTrack(aodTrack) ) continue;
fBin = GetPtBin(aodTrack->Pt());
Short_t gCharge = aodTrack->Charge();
if(gCharge > 0){
positiveSum += 1.;
PtCh[fBin] += 1;
}
if(gCharge < 0){
negativeSum += 1.;
PtCh[fNptBins+fBin] += 1;
}
}
Double_t fContainerCh[3] = { static_cast<Double_t>(fCentrality), positiveSum, negativeSum};
fTHnCentNplusNminusCh->Fill(fContainerCh);
Double_t ptContainer[dim+1];
ptContainer[0] = fCentrality;
for(Int_t i = 1; i <= dim; i++){
ptContainer[i] = PtCh[i-1];
}
fPtBinNplusNminusCh->Fill(ptContainer);
fEventCounter->Fill(7);
PostData(1, fListOfHistos);
return;
}
void AliEbyEHigherMomentsTask::doMCAODEvent(){
Double_t positiveSumMCRec = 0.;
Double_t negativeSumMCRec = 0.;
Double_t positiveSumMCTruth = 0.;
Double_t negativeSumMCTruth = 0.;
const Int_t dim = fNptBins*2;
Double_t PtCh[dim];
Double_t ptChMC[dim];
for(Int_t idx = 0; idx < dim; idx++){
PtCh[idx] = 0;
ptChMC[idx] = 0;
}
AliAnalysisManager* manager = AliAnalysisManager::GetAnalysisManager();
if (!manager) {
cout<<"ERROR: Analysis manager not found."<<endl;
return;
}
AliAODInputHandler* inputHandler = dynamic_cast<AliAODInputHandler*> (manager->GetInputEventHandler());
if (!inputHandler) {
cout<<"ERROR: Input handler not found."<<endl;
return;
}
AliAODEvent *fAOD = dynamic_cast<AliAODEvent*>(InputEvent());
if (!fAOD)
{
cout<< "ERROR: AOD not found " <<endl;
return;
}
fArrayMC = dynamic_cast<TClonesArray*>(fAOD->FindListObject(AliAODMCParticle::StdBranchName()));
if (!fArrayMC) {
AliFatal("Error: MC particles branch not found!\n");
return;
}
AliAODMCHeader *mcHdr=NULL;
mcHdr=(AliAODMCHeader*)fAOD->GetList()->FindObject(AliAODMCHeader::StdBranchName());
if(!mcHdr) {
printf("MC header branch not found!\n");
return;
}
if(!ProperVertex(fAOD)) return;
AliAODHeader *aodHeader = dynamic_cast<AliAODHeader*>(fAOD->GetHeader());
if(!aodHeader) AliFatal("Not a standard AOD");
fCentrality = (Int_t)aodHeader->GetCentralityP()->GetCentralityPercentile(fCentralityEstimator.Data());
if( fCentrality < 0 || fCentrality >= 81) return;
fEventCounter->Fill(2);
Int_t nTracks = fAOD->GetNumberOfTracks();
for(Int_t i = 0; i < nTracks; i++) {
AliAODTrack* aodTrack = dynamic_cast<AliAODTrack *>(fAOD->GetTrack(i));
if(!aodTrack) {
AliError(Form("ERROR: Could not retrieve AODtrack %d",i));
continue;
}
if(!AcceptTrack(aodTrack) ) continue;
fBin = GetPtBin(aodTrack->Pt());
Short_t gCharge = aodTrack->Charge();
if(gCharge > 0){
positiveSumMCRec += 1.;
PtCh[fBin] += 1;
}
if(gCharge < 0){
negativeSumMCRec += 1.;
PtCh[fNptBins+fBin] += 1;
}
}
Int_t nMCTrack = fArrayMC->GetEntriesFast();
for (Int_t iMC = 0; iMC < nMCTrack; iMC++) {
AliAODMCParticle *partMC = (AliAODMCParticle*) fArrayMC->At(iMC);
if(!partMC){
AliError(Form("ERROR: Could not retrieve AODMCtrack %d",iMC));
continue;
}
if(partMC->Charge() == 0) continue;
if(!partMC->IsPhysicalPrimary()) continue;
if (partMC->Eta() < fEtaLowerLimit || partMC->Eta() > fEtaHigherLimit) continue;
if (partMC->Pt() < fPtLowerLimit || partMC->Pt() > fPtHigherLimit) continue;
Short_t gCharge = partMC->Charge();
Int_t mcbin = GetPtBin(partMC->Pt());
if(gCharge > 0){
positiveSumMCTruth += 1.;
ptChMC[mcbin] += 1.;
}
if(gCharge < 0){
negativeSumMCTruth += 1.;
ptChMC[fNptBins+mcbin] += 1.;
}
}
Double_t fContainerCh[3] = { static_cast<Double_t>(fCentrality), positiveSumMCRec, negativeSumMCRec};
Double_t fContainerChTruth[3] = { static_cast<Double_t>(fCentrality), positiveSumMCTruth, negativeSumMCTruth};
fTHnCentNplusNminusCh->Fill(fContainerCh);
fTHnCentNplusNminusChTruth->Fill(fContainerChTruth);
Double_t ptContainer[dim+1];
Double_t ptContainerMC[dim+1];
ptContainer[0] = fCentrality;
ptContainerMC[0] = fCentrality;
for(Int_t i = 1; i <= dim; i++){
ptContainer[i] = PtCh[i-1];
ptContainerMC[i] = ptChMC[i-1];
}
fPtBinNplusNminusCh->Fill(ptContainer);
fPtBinNplusNminusChTruth->Fill(ptContainerMC);
fEventCounter->Fill(7);
PostData(1, fListOfHistos);
return;
}
Bool_t AliEbyEHigherMomentsTask::ProperVertex(AliAODEvent *fAOD) const{
Bool_t IsVtx = kFALSE;
const AliAODVertex *vertex = fAOD->GetPrimaryVertex();
if(vertex) {
Double32_t fCov[6];
vertex->GetCovarianceMatrix(fCov);
if(vertex->GetNContributors() > 0) {
if(fCov[5] != 0) {
Double_t lvx = vertex->GetX();
Double_t lvy = vertex->GetY();
Double_t lvz = vertex->GetZ();
fEventCounter->Fill(5);
if(TMath::Abs(lvx) < fVxMax) {
if(TMath::Abs(lvy) < fVyMax) {
if(TMath::Abs(lvz) < fVzMax) {
fEventCounter->Fill(6);
fHistQA[0]->Fill(lvz);
fHistVxVy->Fill(lvx,lvy);
IsVtx = kTRUE;
}
}
}
}
}
}
AliCentrality *centrality = fAOD->GetCentrality();
if (centrality->GetQuality() != 0) IsVtx = kFALSE;
return IsVtx;
}
Bool_t AliEbyEHigherMomentsTask::AcceptTrack(AliAODTrack* track) const{
if(!track) return kFALSE;
if( track->Charge() == 0 ) return kFALSE;
Double_t pt = track->Pt();
Double_t eta = track->Eta();
if(!track->TestFilterBit(fAODtrackCutBit)) return kFALSE;
if( pt < fPtLowerLimit || pt > fPtHigherLimit ) return kFALSE;
if( eta < fEtaLowerLimit || eta > fEtaHigherLimit ) return kFALSE;
fHistQA[1]->Fill(pt);
fHistQA[2]->Fill(eta);
fHistQA[3]->Fill(track->Phi());
return kTRUE;
}
Int_t AliEbyEHigherMomentsTask::GetPtBin(Double_t pt){
Int_t bin = 0;
Double_t BinSize = (fPtHigherLimit - fPtLowerLimit)/fNptBins;
for(Int_t iBin = 0; iBin < fNptBins; iBin++){
Double_t xLow = fPtLowerLimit + iBin*BinSize;
Double_t xHigh = fPtLowerLimit + (iBin+1)*BinSize;
if( pt >= xLow && pt < xHigh){
bin = iBin;
break;
}
}
return bin;
}
void AliEbyEHigherMomentsTask::Terminate( Option_t * ){
Info("AliEbyEHigherMomentTask"," Task Successfully finished");
}
AliEbyEHigherMomentsTask.cxx:1 AliEbyEHigherMomentsTask.cxx:2 AliEbyEHigherMomentsTask.cxx:3 AliEbyEHigherMomentsTask.cxx:4 AliEbyEHigherMomentsTask.cxx:5 AliEbyEHigherMomentsTask.cxx:6 AliEbyEHigherMomentsTask.cxx:7 AliEbyEHigherMomentsTask.cxx:8 AliEbyEHigherMomentsTask.cxx:9 AliEbyEHigherMomentsTask.cxx:10 AliEbyEHigherMomentsTask.cxx:11 AliEbyEHigherMomentsTask.cxx:12 AliEbyEHigherMomentsTask.cxx:13 AliEbyEHigherMomentsTask.cxx:14 AliEbyEHigherMomentsTask.cxx:15 AliEbyEHigherMomentsTask.cxx:16 AliEbyEHigherMomentsTask.cxx:17 AliEbyEHigherMomentsTask.cxx:18 AliEbyEHigherMomentsTask.cxx:19 AliEbyEHigherMomentsTask.cxx:20 AliEbyEHigherMomentsTask.cxx:21 AliEbyEHigherMomentsTask.cxx:22 AliEbyEHigherMomentsTask.cxx:23 AliEbyEHigherMomentsTask.cxx:24 AliEbyEHigherMomentsTask.cxx:25 AliEbyEHigherMomentsTask.cxx:26 AliEbyEHigherMomentsTask.cxx:27 AliEbyEHigherMomentsTask.cxx:28 AliEbyEHigherMomentsTask.cxx:29 AliEbyEHigherMomentsTask.cxx:30 AliEbyEHigherMomentsTask.cxx:31 AliEbyEHigherMomentsTask.cxx:32 AliEbyEHigherMomentsTask.cxx:33 AliEbyEHigherMomentsTask.cxx:34 AliEbyEHigherMomentsTask.cxx:35 AliEbyEHigherMomentsTask.cxx:36 AliEbyEHigherMomentsTask.cxx:37 AliEbyEHigherMomentsTask.cxx:38 AliEbyEHigherMomentsTask.cxx:39 AliEbyEHigherMomentsTask.cxx:40 AliEbyEHigherMomentsTask.cxx:41 AliEbyEHigherMomentsTask.cxx:42 AliEbyEHigherMomentsTask.cxx:43 AliEbyEHigherMomentsTask.cxx:44 AliEbyEHigherMomentsTask.cxx:45 AliEbyEHigherMomentsTask.cxx:46 AliEbyEHigherMomentsTask.cxx:47 AliEbyEHigherMomentsTask.cxx:48 AliEbyEHigherMomentsTask.cxx:49 AliEbyEHigherMomentsTask.cxx:50 AliEbyEHigherMomentsTask.cxx:51 AliEbyEHigherMomentsTask.cxx:52 AliEbyEHigherMomentsTask.cxx:53 AliEbyEHigherMomentsTask.cxx:54 AliEbyEHigherMomentsTask.cxx:55 AliEbyEHigherMomentsTask.cxx:56 AliEbyEHigherMomentsTask.cxx:57 AliEbyEHigherMomentsTask.cxx:58 AliEbyEHigherMomentsTask.cxx:59 AliEbyEHigherMomentsTask.cxx:60 AliEbyEHigherMomentsTask.cxx:61 AliEbyEHigherMomentsTask.cxx:62 AliEbyEHigherMomentsTask.cxx:63 AliEbyEHigherMomentsTask.cxx:64 AliEbyEHigherMomentsTask.cxx:65 AliEbyEHigherMomentsTask.cxx:66 AliEbyEHigherMomentsTask.cxx:67 AliEbyEHigherMomentsTask.cxx:68 AliEbyEHigherMomentsTask.cxx:69 AliEbyEHigherMomentsTask.cxx:70 AliEbyEHigherMomentsTask.cxx:71 AliEbyEHigherMomentsTask.cxx:72 AliEbyEHigherMomentsTask.cxx:73 AliEbyEHigherMomentsTask.cxx:74 AliEbyEHigherMomentsTask.cxx:75 AliEbyEHigherMomentsTask.cxx:76 AliEbyEHigherMomentsTask.cxx:77 AliEbyEHigherMomentsTask.cxx:78 AliEbyEHigherMomentsTask.cxx:79 AliEbyEHigherMomentsTask.cxx:80 AliEbyEHigherMomentsTask.cxx:81 AliEbyEHigherMomentsTask.cxx:82 AliEbyEHigherMomentsTask.cxx:83 AliEbyEHigherMomentsTask.cxx:84 AliEbyEHigherMomentsTask.cxx:85 AliEbyEHigherMomentsTask.cxx:86 AliEbyEHigherMomentsTask.cxx:87 AliEbyEHigherMomentsTask.cxx:88 AliEbyEHigherMomentsTask.cxx:89 AliEbyEHigherMomentsTask.cxx:90 AliEbyEHigherMomentsTask.cxx:91 AliEbyEHigherMomentsTask.cxx:92 AliEbyEHigherMomentsTask.cxx:93 AliEbyEHigherMomentsTask.cxx:94 AliEbyEHigherMomentsTask.cxx:95 AliEbyEHigherMomentsTask.cxx:96 AliEbyEHigherMomentsTask.cxx:97 AliEbyEHigherMomentsTask.cxx:98 AliEbyEHigherMomentsTask.cxx:99 AliEbyEHigherMomentsTask.cxx:100 AliEbyEHigherMomentsTask.cxx:101 AliEbyEHigherMomentsTask.cxx:102 AliEbyEHigherMomentsTask.cxx:103 AliEbyEHigherMomentsTask.cxx:104 AliEbyEHigherMomentsTask.cxx:105 AliEbyEHigherMomentsTask.cxx:106 AliEbyEHigherMomentsTask.cxx:107 AliEbyEHigherMomentsTask.cxx:108 AliEbyEHigherMomentsTask.cxx:109 AliEbyEHigherMomentsTask.cxx:110 AliEbyEHigherMomentsTask.cxx:111 AliEbyEHigherMomentsTask.cxx:112 AliEbyEHigherMomentsTask.cxx:113 AliEbyEHigherMomentsTask.cxx:114 AliEbyEHigherMomentsTask.cxx:115 AliEbyEHigherMomentsTask.cxx:116 AliEbyEHigherMomentsTask.cxx:117 AliEbyEHigherMomentsTask.cxx:118 AliEbyEHigherMomentsTask.cxx:119 AliEbyEHigherMomentsTask.cxx:120 AliEbyEHigherMomentsTask.cxx:121 AliEbyEHigherMomentsTask.cxx:122 AliEbyEHigherMomentsTask.cxx:123 AliEbyEHigherMomentsTask.cxx:124 AliEbyEHigherMomentsTask.cxx:125 AliEbyEHigherMomentsTask.cxx:126 AliEbyEHigherMomentsTask.cxx:127 AliEbyEHigherMomentsTask.cxx:128 AliEbyEHigherMomentsTask.cxx:129 AliEbyEHigherMomentsTask.cxx:130 AliEbyEHigherMomentsTask.cxx:131 AliEbyEHigherMomentsTask.cxx:132 AliEbyEHigherMomentsTask.cxx:133 AliEbyEHigherMomentsTask.cxx:134 AliEbyEHigherMomentsTask.cxx:135 AliEbyEHigherMomentsTask.cxx:136 AliEbyEHigherMomentsTask.cxx:137 AliEbyEHigherMomentsTask.cxx:138 AliEbyEHigherMomentsTask.cxx:139 AliEbyEHigherMomentsTask.cxx:140 AliEbyEHigherMomentsTask.cxx:141 AliEbyEHigherMomentsTask.cxx:142 AliEbyEHigherMomentsTask.cxx:143 AliEbyEHigherMomentsTask.cxx:144 AliEbyEHigherMomentsTask.cxx:145 AliEbyEHigherMomentsTask.cxx:146 AliEbyEHigherMomentsTask.cxx:147 AliEbyEHigherMomentsTask.cxx:148 AliEbyEHigherMomentsTask.cxx:149 AliEbyEHigherMomentsTask.cxx:150 AliEbyEHigherMomentsTask.cxx:151 AliEbyEHigherMomentsTask.cxx:152 AliEbyEHigherMomentsTask.cxx:153 AliEbyEHigherMomentsTask.cxx:154 AliEbyEHigherMomentsTask.cxx:155 AliEbyEHigherMomentsTask.cxx:156 AliEbyEHigherMomentsTask.cxx:157 AliEbyEHigherMomentsTask.cxx:158 AliEbyEHigherMomentsTask.cxx:159 AliEbyEHigherMomentsTask.cxx:160 AliEbyEHigherMomentsTask.cxx:161 AliEbyEHigherMomentsTask.cxx:162 AliEbyEHigherMomentsTask.cxx:163 AliEbyEHigherMomentsTask.cxx:164 AliEbyEHigherMomentsTask.cxx:165 AliEbyEHigherMomentsTask.cxx:166 AliEbyEHigherMomentsTask.cxx:167 AliEbyEHigherMomentsTask.cxx:168 AliEbyEHigherMomentsTask.cxx:169 AliEbyEHigherMomentsTask.cxx:170 AliEbyEHigherMomentsTask.cxx:171 AliEbyEHigherMomentsTask.cxx:172 AliEbyEHigherMomentsTask.cxx:173 AliEbyEHigherMomentsTask.cxx:174 AliEbyEHigherMomentsTask.cxx:175 AliEbyEHigherMomentsTask.cxx:176 AliEbyEHigherMomentsTask.cxx:177 AliEbyEHigherMomentsTask.cxx:178 AliEbyEHigherMomentsTask.cxx:179 AliEbyEHigherMomentsTask.cxx:180 AliEbyEHigherMomentsTask.cxx:181 AliEbyEHigherMomentsTask.cxx:182 AliEbyEHigherMomentsTask.cxx:183 AliEbyEHigherMomentsTask.cxx:184 AliEbyEHigherMomentsTask.cxx:185 AliEbyEHigherMomentsTask.cxx:186 AliEbyEHigherMomentsTask.cxx:187 AliEbyEHigherMomentsTask.cxx:188 AliEbyEHigherMomentsTask.cxx:189 AliEbyEHigherMomentsTask.cxx:190 AliEbyEHigherMomentsTask.cxx:191 AliEbyEHigherMomentsTask.cxx:192 AliEbyEHigherMomentsTask.cxx:193 AliEbyEHigherMomentsTask.cxx:194 AliEbyEHigherMomentsTask.cxx:195 AliEbyEHigherMomentsTask.cxx:196 AliEbyEHigherMomentsTask.cxx:197 AliEbyEHigherMomentsTask.cxx:198 AliEbyEHigherMomentsTask.cxx:199 AliEbyEHigherMomentsTask.cxx:200 AliEbyEHigherMomentsTask.cxx:201 AliEbyEHigherMomentsTask.cxx:202 AliEbyEHigherMomentsTask.cxx:203 AliEbyEHigherMomentsTask.cxx:204 AliEbyEHigherMomentsTask.cxx:205 AliEbyEHigherMomentsTask.cxx:206 AliEbyEHigherMomentsTask.cxx:207 AliEbyEHigherMomentsTask.cxx:208 AliEbyEHigherMomentsTask.cxx:209 AliEbyEHigherMomentsTask.cxx:210 AliEbyEHigherMomentsTask.cxx:211 AliEbyEHigherMomentsTask.cxx:212 AliEbyEHigherMomentsTask.cxx:213 AliEbyEHigherMomentsTask.cxx:214 AliEbyEHigherMomentsTask.cxx:215 AliEbyEHigherMomentsTask.cxx:216 AliEbyEHigherMomentsTask.cxx:217 AliEbyEHigherMomentsTask.cxx:218 AliEbyEHigherMomentsTask.cxx:219 AliEbyEHigherMomentsTask.cxx:220 AliEbyEHigherMomentsTask.cxx:221 AliEbyEHigherMomentsTask.cxx:222 AliEbyEHigherMomentsTask.cxx:223 AliEbyEHigherMomentsTask.cxx:224 AliEbyEHigherMomentsTask.cxx:225 AliEbyEHigherMomentsTask.cxx:226 AliEbyEHigherMomentsTask.cxx:227 AliEbyEHigherMomentsTask.cxx:228 AliEbyEHigherMomentsTask.cxx:229 AliEbyEHigherMomentsTask.cxx:230 AliEbyEHigherMomentsTask.cxx:231 AliEbyEHigherMomentsTask.cxx:232 AliEbyEHigherMomentsTask.cxx:233 AliEbyEHigherMomentsTask.cxx:234 AliEbyEHigherMomentsTask.cxx:235 AliEbyEHigherMomentsTask.cxx:236 AliEbyEHigherMomentsTask.cxx:237 AliEbyEHigherMomentsTask.cxx:238 AliEbyEHigherMomentsTask.cxx:239 AliEbyEHigherMomentsTask.cxx:240 AliEbyEHigherMomentsTask.cxx:241 AliEbyEHigherMomentsTask.cxx:242 AliEbyEHigherMomentsTask.cxx:243 AliEbyEHigherMomentsTask.cxx:244 AliEbyEHigherMomentsTask.cxx:245 AliEbyEHigherMomentsTask.cxx:246 AliEbyEHigherMomentsTask.cxx:247 AliEbyEHigherMomentsTask.cxx:248 AliEbyEHigherMomentsTask.cxx:249 AliEbyEHigherMomentsTask.cxx:250 AliEbyEHigherMomentsTask.cxx:251 AliEbyEHigherMomentsTask.cxx:252 AliEbyEHigherMomentsTask.cxx:253 AliEbyEHigherMomentsTask.cxx:254 AliEbyEHigherMomentsTask.cxx:255 AliEbyEHigherMomentsTask.cxx:256 AliEbyEHigherMomentsTask.cxx:257 AliEbyEHigherMomentsTask.cxx:258 AliEbyEHigherMomentsTask.cxx:259 AliEbyEHigherMomentsTask.cxx:260 AliEbyEHigherMomentsTask.cxx:261 AliEbyEHigherMomentsTask.cxx:262 AliEbyEHigherMomentsTask.cxx:263 AliEbyEHigherMomentsTask.cxx:264 AliEbyEHigherMomentsTask.cxx:265 AliEbyEHigherMomentsTask.cxx:266 AliEbyEHigherMomentsTask.cxx:267 AliEbyEHigherMomentsTask.cxx:268 AliEbyEHigherMomentsTask.cxx:269 AliEbyEHigherMomentsTask.cxx:270 AliEbyEHigherMomentsTask.cxx:271 AliEbyEHigherMomentsTask.cxx:272 AliEbyEHigherMomentsTask.cxx:273 AliEbyEHigherMomentsTask.cxx:274 AliEbyEHigherMomentsTask.cxx:275 AliEbyEHigherMomentsTask.cxx:276 AliEbyEHigherMomentsTask.cxx:277 AliEbyEHigherMomentsTask.cxx:278 AliEbyEHigherMomentsTask.cxx:279 AliEbyEHigherMomentsTask.cxx:280 AliEbyEHigherMomentsTask.cxx:281 AliEbyEHigherMomentsTask.cxx:282 AliEbyEHigherMomentsTask.cxx:283 AliEbyEHigherMomentsTask.cxx:284 AliEbyEHigherMomentsTask.cxx:285 AliEbyEHigherMomentsTask.cxx:286 AliEbyEHigherMomentsTask.cxx:287 AliEbyEHigherMomentsTask.cxx:288 AliEbyEHigherMomentsTask.cxx:289 AliEbyEHigherMomentsTask.cxx:290 AliEbyEHigherMomentsTask.cxx:291 AliEbyEHigherMomentsTask.cxx:292 AliEbyEHigherMomentsTask.cxx:293 AliEbyEHigherMomentsTask.cxx:294 AliEbyEHigherMomentsTask.cxx:295 AliEbyEHigherMomentsTask.cxx:296 AliEbyEHigherMomentsTask.cxx:297 AliEbyEHigherMomentsTask.cxx:298 AliEbyEHigherMomentsTask.cxx:299 AliEbyEHigherMomentsTask.cxx:300 AliEbyEHigherMomentsTask.cxx:301 AliEbyEHigherMomentsTask.cxx:302 AliEbyEHigherMomentsTask.cxx:303 AliEbyEHigherMomentsTask.cxx:304 AliEbyEHigherMomentsTask.cxx:305 AliEbyEHigherMomentsTask.cxx:306 AliEbyEHigherMomentsTask.cxx:307 AliEbyEHigherMomentsTask.cxx:308 AliEbyEHigherMomentsTask.cxx:309 AliEbyEHigherMomentsTask.cxx:310 AliEbyEHigherMomentsTask.cxx:311 AliEbyEHigherMomentsTask.cxx:312 AliEbyEHigherMomentsTask.cxx:313 AliEbyEHigherMomentsTask.cxx:314 AliEbyEHigherMomentsTask.cxx:315 AliEbyEHigherMomentsTask.cxx:316 AliEbyEHigherMomentsTask.cxx:317 AliEbyEHigherMomentsTask.cxx:318 AliEbyEHigherMomentsTask.cxx:319 AliEbyEHigherMomentsTask.cxx:320 AliEbyEHigherMomentsTask.cxx:321 AliEbyEHigherMomentsTask.cxx:322 AliEbyEHigherMomentsTask.cxx:323 AliEbyEHigherMomentsTask.cxx:324 AliEbyEHigherMomentsTask.cxx:325 AliEbyEHigherMomentsTask.cxx:326 AliEbyEHigherMomentsTask.cxx:327 AliEbyEHigherMomentsTask.cxx:328 AliEbyEHigherMomentsTask.cxx:329 AliEbyEHigherMomentsTask.cxx:330 AliEbyEHigherMomentsTask.cxx:331 AliEbyEHigherMomentsTask.cxx:332 AliEbyEHigherMomentsTask.cxx:333 AliEbyEHigherMomentsTask.cxx:334 AliEbyEHigherMomentsTask.cxx:335 AliEbyEHigherMomentsTask.cxx:336 AliEbyEHigherMomentsTask.cxx:337 AliEbyEHigherMomentsTask.cxx:338 AliEbyEHigherMomentsTask.cxx:339 AliEbyEHigherMomentsTask.cxx:340 AliEbyEHigherMomentsTask.cxx:341 AliEbyEHigherMomentsTask.cxx:342 AliEbyEHigherMomentsTask.cxx:343 AliEbyEHigherMomentsTask.cxx:344 AliEbyEHigherMomentsTask.cxx:345 AliEbyEHigherMomentsTask.cxx:346 AliEbyEHigherMomentsTask.cxx:347 AliEbyEHigherMomentsTask.cxx:348 AliEbyEHigherMomentsTask.cxx:349 AliEbyEHigherMomentsTask.cxx:350 AliEbyEHigherMomentsTask.cxx:351 AliEbyEHigherMomentsTask.cxx:352 AliEbyEHigherMomentsTask.cxx:353 AliEbyEHigherMomentsTask.cxx:354 AliEbyEHigherMomentsTask.cxx:355 AliEbyEHigherMomentsTask.cxx:356 AliEbyEHigherMomentsTask.cxx:357 AliEbyEHigherMomentsTask.cxx:358 AliEbyEHigherMomentsTask.cxx:359 AliEbyEHigherMomentsTask.cxx:360 AliEbyEHigherMomentsTask.cxx:361 AliEbyEHigherMomentsTask.cxx:362 AliEbyEHigherMomentsTask.cxx:363 AliEbyEHigherMomentsTask.cxx:364 AliEbyEHigherMomentsTask.cxx:365 AliEbyEHigherMomentsTask.cxx:366 AliEbyEHigherMomentsTask.cxx:367 AliEbyEHigherMomentsTask.cxx:368 AliEbyEHigherMomentsTask.cxx:369 AliEbyEHigherMomentsTask.cxx:370 AliEbyEHigherMomentsTask.cxx:371 AliEbyEHigherMomentsTask.cxx:372 AliEbyEHigherMomentsTask.cxx:373 AliEbyEHigherMomentsTask.cxx:374 AliEbyEHigherMomentsTask.cxx:375 AliEbyEHigherMomentsTask.cxx:376 AliEbyEHigherMomentsTask.cxx:377 AliEbyEHigherMomentsTask.cxx:378 AliEbyEHigherMomentsTask.cxx:379 AliEbyEHigherMomentsTask.cxx:380 AliEbyEHigherMomentsTask.cxx:381 AliEbyEHigherMomentsTask.cxx:382 AliEbyEHigherMomentsTask.cxx:383 AliEbyEHigherMomentsTask.cxx:384 AliEbyEHigherMomentsTask.cxx:385 AliEbyEHigherMomentsTask.cxx:386 AliEbyEHigherMomentsTask.cxx:387 AliEbyEHigherMomentsTask.cxx:388 AliEbyEHigherMomentsTask.cxx:389 AliEbyEHigherMomentsTask.cxx:390 AliEbyEHigherMomentsTask.cxx:391 AliEbyEHigherMomentsTask.cxx:392 AliEbyEHigherMomentsTask.cxx:393 AliEbyEHigherMomentsTask.cxx:394 AliEbyEHigherMomentsTask.cxx:395 AliEbyEHigherMomentsTask.cxx:396 AliEbyEHigherMomentsTask.cxx:397 AliEbyEHigherMomentsTask.cxx:398 AliEbyEHigherMomentsTask.cxx:399 AliEbyEHigherMomentsTask.cxx:400 AliEbyEHigherMomentsTask.cxx:401 AliEbyEHigherMomentsTask.cxx:402 AliEbyEHigherMomentsTask.cxx:403 AliEbyEHigherMomentsTask.cxx:404 AliEbyEHigherMomentsTask.cxx:405 AliEbyEHigherMomentsTask.cxx:406 AliEbyEHigherMomentsTask.cxx:407 AliEbyEHigherMomentsTask.cxx:408 AliEbyEHigherMomentsTask.cxx:409 AliEbyEHigherMomentsTask.cxx:410 AliEbyEHigherMomentsTask.cxx:411 AliEbyEHigherMomentsTask.cxx:412 AliEbyEHigherMomentsTask.cxx:413 AliEbyEHigherMomentsTask.cxx:414 AliEbyEHigherMomentsTask.cxx:415 AliEbyEHigherMomentsTask.cxx:416 AliEbyEHigherMomentsTask.cxx:417 AliEbyEHigherMomentsTask.cxx:418 AliEbyEHigherMomentsTask.cxx:419 AliEbyEHigherMomentsTask.cxx:420 AliEbyEHigherMomentsTask.cxx:421 AliEbyEHigherMomentsTask.cxx:422 AliEbyEHigherMomentsTask.cxx:423 AliEbyEHigherMomentsTask.cxx:424 AliEbyEHigherMomentsTask.cxx:425 AliEbyEHigherMomentsTask.cxx:426 AliEbyEHigherMomentsTask.cxx:427 AliEbyEHigherMomentsTask.cxx:428 AliEbyEHigherMomentsTask.cxx:429 AliEbyEHigherMomentsTask.cxx:430 AliEbyEHigherMomentsTask.cxx:431 AliEbyEHigherMomentsTask.cxx:432 AliEbyEHigherMomentsTask.cxx:433 AliEbyEHigherMomentsTask.cxx:434 AliEbyEHigherMomentsTask.cxx:435 AliEbyEHigherMomentsTask.cxx:436 AliEbyEHigherMomentsTask.cxx:437 AliEbyEHigherMomentsTask.cxx:438 AliEbyEHigherMomentsTask.cxx:439 AliEbyEHigherMomentsTask.cxx:440 AliEbyEHigherMomentsTask.cxx:441 AliEbyEHigherMomentsTask.cxx:442 AliEbyEHigherMomentsTask.cxx:443 AliEbyEHigherMomentsTask.cxx:444 AliEbyEHigherMomentsTask.cxx:445 AliEbyEHigherMomentsTask.cxx:446 AliEbyEHigherMomentsTask.cxx:447 AliEbyEHigherMomentsTask.cxx:448 AliEbyEHigherMomentsTask.cxx:449 AliEbyEHigherMomentsTask.cxx:450 AliEbyEHigherMomentsTask.cxx:451 AliEbyEHigherMomentsTask.cxx:452 AliEbyEHigherMomentsTask.cxx:453 AliEbyEHigherMomentsTask.cxx:454 AliEbyEHigherMomentsTask.cxx:455 AliEbyEHigherMomentsTask.cxx:456 AliEbyEHigherMomentsTask.cxx:457 AliEbyEHigherMomentsTask.cxx:458 AliEbyEHigherMomentsTask.cxx:459 AliEbyEHigherMomentsTask.cxx:460 AliEbyEHigherMomentsTask.cxx:461 AliEbyEHigherMomentsTask.cxx:462 AliEbyEHigherMomentsTask.cxx:463 AliEbyEHigherMomentsTask.cxx:464 AliEbyEHigherMomentsTask.cxx:465 AliEbyEHigherMomentsTask.cxx:466 AliEbyEHigherMomentsTask.cxx:467 AliEbyEHigherMomentsTask.cxx:468 AliEbyEHigherMomentsTask.cxx:469 AliEbyEHigherMomentsTask.cxx:470 AliEbyEHigherMomentsTask.cxx:471 AliEbyEHigherMomentsTask.cxx:472 AliEbyEHigherMomentsTask.cxx:473 AliEbyEHigherMomentsTask.cxx:474 AliEbyEHigherMomentsTask.cxx:475 AliEbyEHigherMomentsTask.cxx:476 AliEbyEHigherMomentsTask.cxx:477 AliEbyEHigherMomentsTask.cxx:478 AliEbyEHigherMomentsTask.cxx:479 AliEbyEHigherMomentsTask.cxx:480 AliEbyEHigherMomentsTask.cxx:481 AliEbyEHigherMomentsTask.cxx:482 AliEbyEHigherMomentsTask.cxx:483 AliEbyEHigherMomentsTask.cxx:484 AliEbyEHigherMomentsTask.cxx:485 AliEbyEHigherMomentsTask.cxx:486 AliEbyEHigherMomentsTask.cxx:487 AliEbyEHigherMomentsTask.cxx:488 AliEbyEHigherMomentsTask.cxx:489 AliEbyEHigherMomentsTask.cxx:490 AliEbyEHigherMomentsTask.cxx:491 AliEbyEHigherMomentsTask.cxx:492 AliEbyEHigherMomentsTask.cxx:493 AliEbyEHigherMomentsTask.cxx:494 AliEbyEHigherMomentsTask.cxx:495 AliEbyEHigherMomentsTask.cxx:496 AliEbyEHigherMomentsTask.cxx:497 AliEbyEHigherMomentsTask.cxx:498 AliEbyEHigherMomentsTask.cxx:499 AliEbyEHigherMomentsTask.cxx:500 AliEbyEHigherMomentsTask.cxx:501 AliEbyEHigherMomentsTask.cxx:502 AliEbyEHigherMomentsTask.cxx:503 AliEbyEHigherMomentsTask.cxx:504 AliEbyEHigherMomentsTask.cxx:505 AliEbyEHigherMomentsTask.cxx:506 AliEbyEHigherMomentsTask.cxx:507 AliEbyEHigherMomentsTask.cxx:508 AliEbyEHigherMomentsTask.cxx:509 AliEbyEHigherMomentsTask.cxx:510 AliEbyEHigherMomentsTask.cxx:511 AliEbyEHigherMomentsTask.cxx:512 AliEbyEHigherMomentsTask.cxx:513 AliEbyEHigherMomentsTask.cxx:514 AliEbyEHigherMomentsTask.cxx:515 AliEbyEHigherMomentsTask.cxx:516 AliEbyEHigherMomentsTask.cxx:517 AliEbyEHigherMomentsTask.cxx:518 AliEbyEHigherMomentsTask.cxx:519 AliEbyEHigherMomentsTask.cxx:520 AliEbyEHigherMomentsTask.cxx:521 AliEbyEHigherMomentsTask.cxx:522 AliEbyEHigherMomentsTask.cxx:523 AliEbyEHigherMomentsTask.cxx:524 AliEbyEHigherMomentsTask.cxx:525 AliEbyEHigherMomentsTask.cxx:526 AliEbyEHigherMomentsTask.cxx:527 AliEbyEHigherMomentsTask.cxx:528 AliEbyEHigherMomentsTask.cxx:529 AliEbyEHigherMomentsTask.cxx:530 AliEbyEHigherMomentsTask.cxx:531 AliEbyEHigherMomentsTask.cxx:532 AliEbyEHigherMomentsTask.cxx:533 AliEbyEHigherMomentsTask.cxx:534 AliEbyEHigherMomentsTask.cxx:535 AliEbyEHigherMomentsTask.cxx:536 AliEbyEHigherMomentsTask.cxx:537 AliEbyEHigherMomentsTask.cxx:538 AliEbyEHigherMomentsTask.cxx:539 AliEbyEHigherMomentsTask.cxx:540 AliEbyEHigherMomentsTask.cxx:541 AliEbyEHigherMomentsTask.cxx:542 AliEbyEHigherMomentsTask.cxx:543 AliEbyEHigherMomentsTask.cxx:544 AliEbyEHigherMomentsTask.cxx:545 AliEbyEHigherMomentsTask.cxx:546 AliEbyEHigherMomentsTask.cxx:547 AliEbyEHigherMomentsTask.cxx:548 AliEbyEHigherMomentsTask.cxx:549 AliEbyEHigherMomentsTask.cxx:550 AliEbyEHigherMomentsTask.cxx:551 AliEbyEHigherMomentsTask.cxx:552 AliEbyEHigherMomentsTask.cxx:553 AliEbyEHigherMomentsTask.cxx:554 AliEbyEHigherMomentsTask.cxx:555 AliEbyEHigherMomentsTask.cxx:556 AliEbyEHigherMomentsTask.cxx:557 AliEbyEHigherMomentsTask.cxx:558 AliEbyEHigherMomentsTask.cxx:559 AliEbyEHigherMomentsTask.cxx:560 AliEbyEHigherMomentsTask.cxx:561 AliEbyEHigherMomentsTask.cxx:562 AliEbyEHigherMomentsTask.cxx:563 AliEbyEHigherMomentsTask.cxx:564 AliEbyEHigherMomentsTask.cxx:565 AliEbyEHigherMomentsTask.cxx:566 AliEbyEHigherMomentsTask.cxx:567 AliEbyEHigherMomentsTask.cxx:568