#ifndef ALIPWG4HighPtQAMC_CXX
#define ALIPWG4HighPtQAMC_CXX
#include "AliPWG4HighPtQAMC.h"
#include "TH1.h"
#include "TH2.h"
#include "TH3.h"
#include "TProfile.h"
#include "TList.h"
#include "TFile.h"
#include "TChain.h"
#include "TH3F.h"
#include "TKey.h"
#include "TSystem.h"
#include "AliAnalysisTask.h"
#include "AliAnalysisManager.h"
#include "AliESDInputHandler.h"
#include "AliMCEvent.h"
#include "AliMCEventHandler.h"
#include "AliStack.h"
#include "AliESDtrack.h"
#include "AliESDtrackCuts.h"
#include "AliExternalTrackParam.h"
#include "AliLog.h"
#include "AliGenPythiaEventHeader.h"
#include "AliGenCocktailEventHeader.h"
using namespace std;
ClassImp(AliPWG4HighPtQAMC)
AliPWG4HighPtQAMC::AliPWG4HighPtQAMC()
: AliAnalysisTask("AliPWG4HighPtQAMC", ""),
fESD(0),
fMC(0),
fStack(0),
fVtx(0x0),
fTrackCuts(0),
fTrackCutsReject(),
fTrackType(0),
fSigmaConstrainedMax(1e6),
fPtMax(100.),
fAvgTrials(1),
fNEventAll(0),
fNEventSel(0),
fNEventReject(0),
fh1Xsec(0),
fh1Trials(0),
fh1PtHard(0),
fh1PtHardTrials(0),
fPtAll(0),
fPtSel(0),
fPtSelFakes(0),
fNPointTPCFakes(0),
fPtSelLargeLabel(0),
fMultRec(0),
fNPointTPCMultRec(0),
fDeltaPtMultRec(0),
fPtAllvsPtMC(0),
fPtAllminPtMCvsPtMC(0),
fPtAllminPtMCvsPtAll(0),
fPtAllvsPtMCvsMult(0),
fPtAllminPtMCvsPtAllvsMult(0),
fPtAllminPtMCvsPtAllNPointTPC(0),
fPtAllminPtMCvsPtAllNPointTPCIter1(0),
fPtAllminPtMCvsPtAllChi2TPC(0),
fPtAllminPtMCvsPtAllChi2TPCIter1(0),
fPtAllminPtMCvsPtAllDCAR(0),
fPtAllminPtMCvsPtAllDCAZ(0),
fPtAllminPtMCvsPtAllPhi(0),
fPtAllminPtMCvsPtAllNPointITS(0),
fPtAllminPtMCvsPtAllNSigmaToVertex(0),
fPtAllminPtMCvsPtAllChi2C(0),
fPtAllminPtMCvsPtAllRel1PtUncertainty(0),
fPtAllMC(0),
fPtSelMC(0),
fHistList(0)
{
fPtBinEdges[0][0] = 10.;
fPtBinEdges[0][1] = 1.;
fPtBinEdges[1][0] = 20.;
fPtBinEdges[1][1] = 2.;
fPtBinEdges[2][0] = 100.;
fPtBinEdges[2][1] = 10.;
}
AliPWG4HighPtQAMC::AliPWG4HighPtQAMC(const char *name):
AliAnalysisTask(name,""),
fESD(0),
fMC(0),
fStack(0),
fVtx(0x0),
fTrackCuts(),
fTrackCutsReject(),
fTrackType(0),
fSigmaConstrainedMax(1e6),
fPtMax(100.),
fAvgTrials(1),
fNEventAll(0),
fNEventSel(0),
fNEventReject(0),
fh1Xsec(0),
fh1Trials(0),
fh1PtHard(0),
fh1PtHardTrials(0),
fPtAll(0),
fPtSel(0),
fPtSelFakes(0),
fNPointTPCFakes(0),
fPtSelLargeLabel(0),
fMultRec(0),
fNPointTPCMultRec(0),
fDeltaPtMultRec(0),
fPtAllvsPtMC(0),
fPtAllminPtMCvsPtMC(0),
fPtAllminPtMCvsPtAll(0),
fPtAllvsPtMCvsMult(0),
fPtAllminPtMCvsPtAllvsMult(0),
fPtAllminPtMCvsPtAllNPointTPC(0),
fPtAllminPtMCvsPtAllNPointTPCIter1(0),
fPtAllminPtMCvsPtAllChi2TPC(0),
fPtAllminPtMCvsPtAllChi2TPCIter1(0),
fPtAllminPtMCvsPtAllDCAR(0),
fPtAllminPtMCvsPtAllDCAZ(0),
fPtAllminPtMCvsPtAllPhi(0),
fPtAllminPtMCvsPtAllNPointITS(0),
fPtAllminPtMCvsPtAllNSigmaToVertex(0),
fPtAllminPtMCvsPtAllChi2C(0),
fPtAllminPtMCvsPtAllRel1PtUncertainty(0),
fPtAllMC(0),
fPtSelMC(0),
fHistList(0)
{
AliDebug(2,Form("AliPWG4HighPtQAMC Calling Constructor"));
fPtBinEdges[0][0] = 10.;
fPtBinEdges[0][1] = 1.;
fPtBinEdges[1][0] = 20.;
fPtBinEdges[1][1] = 2.;
fPtBinEdges[2][0] = 100.;
fPtBinEdges[2][1] = 10.;
DefineInput(0, TChain::Class());
DefineOutput(0, TList::Class());
}
void AliPWG4HighPtQAMC::SetPtBinEdges(Int_t region, Double_t ptmax, Double_t ptBinWidth) {
if(region<3) {
fPtBinEdges[region][0] = ptmax;
fPtBinEdges[region][1] = ptBinWidth;
}
else {
AliError("Only 3 regions alowed. Use region 0/1/2\n");
return;
}
}
void AliPWG4HighPtQAMC::ConnectInputData(Option_t *)
{
AliDebug(2,Form(">> AliPWG4HighPtSpectra::ConnectInputData \n"));
TTree* tree = dynamic_cast<TTree*> (GetInputData(0));
if (!tree) {
AliDebug(2,Form( "ERROR: Could not read chain from input slot 0 \n"));
return;
}
AliESDInputHandler *esdH = dynamic_cast<AliESDInputHandler*> (AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler());
if (!esdH) {
AliDebug(2,Form("ERROR: Could not get ESDInputHandler"));
return;
} else
fESD = esdH->GetEvent();
AliMCEventHandler *eventHandler = dynamic_cast<AliMCEventHandler*> (AliAnalysisManager::GetAnalysisManager()->GetMCtruthEventHandler());
if (!eventHandler) {
AliDebug(2,Form( "ERROR: Could not retrieve MC event handler \n"));
}
else
fMC = eventHandler->MCEvent();
}
void AliPWG4HighPtQAMC::CreateOutputObjects() {
AliDebug(2,Form(">> AliPWG4HighPtQATPConly::CreateOutputObjects \n"));
Bool_t oldStatus = TH1::AddDirectoryStatus();
TH1::AddDirectory(kFALSE);
OpenFile(0);
fHistList = new TList();
fHistList->SetOwner(kTRUE);
Float_t fgkPtMin = 0.;
const Float_t ptmin1 = fgkPtMin;
const Float_t ptmax1 = fPtBinEdges[0][0];
const Float_t ptmin2 = ptmax1 ;
const Float_t ptmax2 = fPtBinEdges[1][0];
const Float_t ptmin3 = ptmax2 ;
const Float_t ptmax3 = fPtBinEdges[2][0];
const Int_t nbin11 = (int)((ptmax1-ptmin1)/fPtBinEdges[0][1]);
const Int_t nbin12 = (int)((ptmax2-ptmin2)/fPtBinEdges[1][1])+nbin11;
const Int_t nbin13 = (int)((ptmax3-ptmin3)/fPtBinEdges[2][1])+nbin12;
Int_t fgkNPtBins=nbin13;
Double_t *binsPt=new Double_t[fgkNPtBins+1];
for(Int_t i=0; i<=fgkNPtBins; i++) {
if(i<=nbin11) binsPt[i]=(Double_t)ptmin1 + (ptmax1-ptmin1)/nbin11*(Double_t)i ;
if(i<=nbin12 && i>nbin11) binsPt[i]=(Double_t)ptmin2 + (ptmax2-ptmin2)/(nbin12-nbin11)*((Double_t)i-(Double_t)nbin11) ;
if(i<=nbin13 && i>nbin12) binsPt[i]=(Double_t)ptmin3 + (ptmax3-ptmin3)/(nbin13-nbin12)*((Double_t)i-(Double_t)nbin12) ;
}
Int_t fgkNPhiBins = 18*6;
Float_t kMinPhi = 0.;
Float_t kMaxPhi = 2.*TMath::Pi();
Double_t *binsPhi = new Double_t[fgkNPhiBins+1];
for(Int_t i=0; i<=fgkNPhiBins; i++) binsPhi[i]=(Double_t)kMinPhi + (kMaxPhi-kMinPhi)/fgkNPhiBins*(Double_t)i ;
Int_t fgkResPtBins=80;
Float_t kMinResPt = -1.;
Float_t kMaxResPt = 1.;
Double_t *binsResPt = new Double_t[fgkResPtBins+1];
for(Int_t i=0; i<=fgkResPtBins; i++) binsResPt[i]=(Double_t)kMinResPt + (kMaxResPt-kMinResPt)/fgkResPtBins*(Double_t)i ;
Int_t fgkMultBins=50;
Float_t kMinMult = 0.;
Float_t kMaxMult = 3000.;
Double_t *binsMult = new Double_t[fgkMultBins+1];
for(Int_t i=0; i<=fgkMultBins; i++) binsMult[i]=(Double_t)kMinMult + (kMaxMult-kMinMult)/fgkMultBins*(Double_t)i ;
Int_t fgkNEtaBins=20;
Float_t fgkEtaMin = -1.;
Float_t fgkEtaMax = 1.;
Double_t *binsEta=new Double_t[fgkNEtaBins+1];
for(Int_t i=0; i<=fgkNEtaBins; i++) binsEta[i]=(Double_t)fgkEtaMin + (fgkEtaMax-fgkEtaMin)/fgkNEtaBins*(Double_t)i ;
Int_t fgkNNClustersTPCBins=80;
Float_t fgkNClustersTPCMin = 0.5;
Float_t fgkNClustersTPCMax = 160.5;
Double_t *binsNClustersTPC=new Double_t[fgkNNClustersTPCBins+1];
for(Int_t i=0; i<=fgkNNClustersTPCBins; i++) binsNClustersTPC[i]=(Double_t)fgkNClustersTPCMin + (fgkNClustersTPCMax-fgkNClustersTPCMin)/fgkNNClustersTPCBins*(Double_t)i ;
Int_t fgkNDCA2DBins=80;
Float_t fgkDCA2DMin = -0.2;
Float_t fgkDCA2DMax = 0.2;
if(fTrackType==1 || fTrackType==2 || fTrackType==4) {
fgkDCA2DMin = -2.;
fgkDCA2DMax = 2.;
}
Double_t *binsDCA2D=new Double_t[fgkNDCA2DBins+1];
for(Int_t i=0; i<=fgkNDCA2DBins; i++) binsDCA2D[i]=(Double_t)fgkDCA2DMin + (fgkDCA2DMax-fgkDCA2DMin)/fgkNDCA2DBins*(Double_t)i ;
Int_t fgkNDCAZBins=80;
Float_t fgkDCAZMin = -2.;
Float_t fgkDCAZMax = 2.;
if(fTrackType==1 || fTrackType==2 || fTrackType==4) {
fgkDCAZMin = -5.;
fgkDCAZMax = 5.;
}
Double_t *binsDCAZ=new Double_t[fgkNDCAZBins+1];
for(Int_t i=0; i<=fgkNDCAZBins; i++) binsDCAZ[i]=(Double_t)fgkDCAZMin + (fgkDCAZMax-fgkDCAZMin)/fgkNDCAZBins*(Double_t)i ;
Int_t fgkNNPointITSBins=9;
Float_t fgkNPointITSMin = -0.5;
Float_t fgkNPointITSMax = 8.5;
Double_t *binsNPointITS=new Double_t[fgkNNPointITSBins+1];
for(Int_t i=0; i<=fgkNNPointITSBins; i++) binsNPointITS[i]=(Double_t)fgkNPointITSMin + (fgkNPointITSMax-fgkNPointITSMin)/fgkNNPointITSBins*(Double_t)i ;
Int_t fgkNNSigmaToVertexBins=20;
Float_t fgkNSigmaToVertexMin = 0.;
Float_t fgkNSigmaToVertexMax = 8.;
Double_t *binsNSigmaToVertex=new Double_t[fgkNNSigmaToVertexBins+1];
for(Int_t i=0; i<=fgkNNSigmaToVertexBins; i++) binsNSigmaToVertex[i]=(Double_t)fgkNSigmaToVertexMin + (fgkNSigmaToVertexMax-fgkNSigmaToVertexMin)/fgkNNSigmaToVertexBins*(Double_t)i ;
Int_t fgkNChi2CBins=20;
Float_t fgkChi2CMin = 0.;
Float_t fgkChi2CMax = 100.;
Double_t *binsChi2C=new Double_t[fgkNChi2CBins+1];
for(Int_t i=0; i<=fgkNChi2CBins; i++) binsChi2C[i]=(Double_t)fgkChi2CMin + (fgkChi2CMax-fgkChi2CMin)/fgkNChi2CBins*(Double_t)i ;
Int_t fgkNRel1PtUncertaintyBins=50;
Float_t fgkRel1PtUncertaintyMin = 0.;
Float_t fgkRel1PtUncertaintyMax = 1.;
Double_t *binsRel1PtUncertainty=new Double_t[fgkNRel1PtUncertaintyBins+1];
for(Int_t i=0; i<=fgkNRel1PtUncertaintyBins; i++) binsRel1PtUncertainty[i]=(Double_t)fgkRel1PtUncertaintyMin + (fgkRel1PtUncertaintyMax-fgkRel1PtUncertaintyMin)/fgkNRel1PtUncertaintyBins*(Double_t)i ;
Float_t fgkChi2PerClusMin = 0.;
Float_t fgkChi2PerClusMax = 4.;
Int_t fgkNChi2PerClusBins = (int)(fgkChi2PerClusMax*10.);
Double_t *binsChi2PerClus=new Double_t[fgkNChi2PerClusBins+1];
for(Int_t i=0; i<=fgkNChi2PerClusBins; i++) binsChi2PerClus[i]=(Double_t)fgkChi2PerClusMin + (fgkChi2PerClusMax-fgkChi2PerClusMin)/fgkNChi2PerClusBins*(Double_t)i ;
fNEventAll = new TH1F("fNEventAll","NEventAll",1,-0.5,0.5);
fHistList->Add(fNEventAll);
fNEventSel = new TH1F("fNEventSel","NEvent Selected for analysis",1,-0.5,0.5);
fHistList->Add(fNEventSel);
fNEventReject = new TH1F("fNEventReject","Reason events are rejectected for analysis",20,0,20);
fNEventReject->Fill("noESD",0);
fNEventReject->Fill("Trigger",0);
fNEventReject->Fill("noMCEvent",0);
fNEventReject->Fill("noStack",0);
fNEventReject->Fill("NTracks<2",0);
fNEventReject->Fill("noVTX",0);
fNEventReject->Fill("VtxStatus",0);
fNEventReject->Fill("NCont<2",0);
fNEventReject->Fill("ZVTX>10",0);
fHistList->Add(fNEventReject);
fh1Xsec = new TProfile("fh1Xsec","xsec from pyxsec.root",1,0,1);
fh1Xsec->GetXaxis()->SetBinLabel(1,"<#sigma>");
fHistList->Add(fh1Xsec);
fh1Trials = new TH1F("fh1Trials","trials root file",1,0,1);
fh1Trials->GetXaxis()->SetBinLabel(1,"#sum{ntrials}");
fHistList->Add(fh1Trials);
fh1PtHard = new TH1F("fh1PtHard","PYTHIA Pt hard;p_{T,hard}",350,-.5,349.5);
fHistList->Add(fh1PtHard);
fh1PtHardTrials = new TH1F("fh1PtHardTrials","PYTHIA Pt hard weight with trials;p_{T,hard}",350,-.5,349.5);
fHistList->Add(fh1PtHardTrials);
fPtAll = new TH1F("fPtAll","PtAll",fgkNPtBins, binsPt);
fHistList->Add(fPtAll);
fPtSel = new TH1F("fPtSel","PtSel",fgkNPtBins, binsPt);
fHistList->Add(fPtSel);
fPtSelFakes = new TH1F("fPtSelFakes","PtSelFakes",fgkNPtBins, binsPt);
fHistList->Add(fPtSelFakes);
fNPointTPCFakes = new TH1F("fNPointTPCFakes","fNPointTPCFakes",fgkNNClustersTPCBins, binsNClustersTPC);
fHistList->Add(fNPointTPCFakes);
fPtSelLargeLabel = new TH1F("fPtSelLargeLabel","PtSelLargeLabel",fgkNPtBins, binsPt);
fHistList->Add(fPtSelLargeLabel);
fMultRec = new TH1F("fMultRec","Multiple reconstruction of tracks",fgkMultBins, binsMult);
fHistList->Add(fMultRec);
fNPointTPCMultRec = new TH1F("fNPointTPCMultRec","Multiple reconstruction of tracks",fgkNNClustersTPCBins, binsNClustersTPC);
fHistList->Add(fNPointTPCMultRec);
fDeltaPtMultRec = new TH2F("fDeltaPtMultRec","Delta pT vs pT for multiple reconstructed tracks",50,0.,50.,40,-20.,20.);
fHistList->Add(fDeltaPtMultRec);
fPtAllvsPtMC = new TH2F("fPtAllvsPtMC","fPtAllvsPtMC;p_{T,MC};p_{T,rec}",fgkNPtBins, binsPt,fgkNPtBins, binsPt);
fHistList->Add(fPtAllvsPtMC);
fPtAllminPtMCvsPtMC = new TH2F("fPtAllminPtMCvsPtMC","PtAllminPtMCvsPtMC",fgkNPtBins, binsPt,fgkResPtBins,binsResPt);
fPtAllminPtMCvsPtMC->SetXTitle("p_{t}^{MC}");
fPtAllminPtMCvsPtMC->SetYTitle("(1/p_{t}^{rec}-1/p_{t}^{MC})/(1/p_{t}^{MC})");
fHistList->Add(fPtAllminPtMCvsPtMC);
fPtAllminPtMCvsPtAll = new TH2F("fPtAllminPtMCvsPtAll","PtAllminPtMCvsPtAll",fgkNPtBins, binsPt,fgkResPtBins,binsResPt);
fPtAllminPtMCvsPtAll->SetXTitle("p_{t}^{rec}");
fPtAllminPtMCvsPtAll->SetYTitle("(1/p_{t}^{rec}-1/p_{t}^{MC})/(1/p_{t}^{MC})");
fHistList->Add(fPtAllminPtMCvsPtAll);
fPtAllvsPtMCvsMult = new TH3F("fPtAllvsPtMCvsMult","fPtAllvsPtMCvsMult;p_{T,MC};p_{T,rec};N_{tracks}",fgkNPtBins, binsPt,fgkNPtBins, binsPt,fgkMultBins,binsMult);
fHistList->Add(fPtAllvsPtMCvsMult);
fPtAllminPtMCvsPtAllvsMult = new TH3F("fPtAllminPtMCvsPtAllvsMult","fPtAllminPtMCvsPtAllvsMult",fgkNPtBins, binsPt,fgkResPtBins,binsResPt,fgkMultBins,binsMult);
fPtAllminPtMCvsPtAllvsMult->SetXTitle("p_{t}^{MC}");
fPtAllminPtMCvsPtAllvsMult->SetYTitle("(1/p_{t}^{All}-1/p_{t}^{MC})/(1/p_{t}^{MC})");
fPtAllminPtMCvsPtAllvsMult->SetZTitle("N_{tracks}");
fHistList->Add(fPtAllminPtMCvsPtAllvsMult);
fPtAllminPtMCvsPtAllNPointTPC = new TH3F("fPtAllminPtMCvsPtAllNPointTPC","PtAllminPtMCvsPtAllNPointTPC",fgkNPtBins, binsPt,fgkResPtBins,binsResPt,fgkNNClustersTPCBins, binsNClustersTPC);
fPtAllminPtMCvsPtAllNPointTPC->SetXTitle("p_{t}^{MC}");
fPtAllminPtMCvsPtAllNPointTPC->SetYTitle("(1/p_{t}^{All}-1/p_{t}^{MC})/(1/p_{t}^{MC})");
fPtAllminPtMCvsPtAllNPointTPC->SetZTitle("N_{cls,TPC}");
fHistList->Add(fPtAllminPtMCvsPtAllNPointTPC);
fPtAllminPtMCvsPtAllNPointTPCIter1 = new TH3F("fPtAllminPtMCvsPtAllNPointTPCIter1","PtAllminPtMCvsPtAllNPointTPCIter1",fgkNPtBins, binsPt,fgkResPtBins,binsResPt,fgkNNClustersTPCBins, binsNClustersTPC);
fPtAllminPtMCvsPtAllNPointTPCIter1->SetXTitle("p_{t}^{MC}");
fPtAllminPtMCvsPtAllNPointTPCIter1->SetYTitle("(1/p_{t}^{All}-1/p_{t}^{MC})/(1/p_{t}^{MC})");
fPtAllminPtMCvsPtAllNPointTPCIter1->SetZTitle("N_{clsIter1,TPC}");
fHistList->Add(fPtAllminPtMCvsPtAllNPointTPCIter1);
fPtAllminPtMCvsPtAllChi2TPC = new TH3F("fPtAllminPtMCvsPtAllChi2TPC","PtAllminPtMCvsPtAllChi2TPC",fgkNPtBins, binsPt,fgkResPtBins,binsResPt,fgkNChi2PerClusBins, binsChi2PerClus);
fPtAllminPtMCvsPtAllChi2TPC->SetXTitle("p_{t}^{MC}");
fPtAllminPtMCvsPtAllChi2TPC->SetYTitle("(1/p_{t}^{All}-1/p_{t}^{MC})/(1/p_{t}^{MC})");
fPtAllminPtMCvsPtAllChi2TPC->SetZTitle("#chi^{2} TPC");
fHistList->Add(fPtAllminPtMCvsPtAllChi2TPC);
fPtAllminPtMCvsPtAllChi2TPCIter1 = new TH3F("fPtAllminPtMCvsPtAllChi2TPCIter1","PtAllminPtMCvsPtAllChi2TPCIter1",fgkNPtBins, binsPt,fgkResPtBins,binsResPt,fgkNChi2PerClusBins, binsChi2PerClus);
fPtAllminPtMCvsPtAllChi2TPCIter1->SetXTitle("p_{t}^{MC}");
fPtAllminPtMCvsPtAllChi2TPCIter1->SetYTitle("(1/p_{t}^{All}-1/p_{t}^{MC})/(1/p_{t}^{MC})");
fPtAllminPtMCvsPtAllChi2TPCIter1->SetZTitle("#chi^{2} TPC Iter1");
fHistList->Add(fPtAllminPtMCvsPtAllChi2TPCIter1);
fPtAllminPtMCvsPtAllDCAR = new TH3F("fPtAllminPtMCvsPtAllDCAR","PtAllminPtMCvsPtAllDCAR",fgkNPtBins, binsPt,fgkResPtBins,binsResPt,fgkNDCA2DBins,binsDCA2D);
fPtAllminPtMCvsPtAllDCAR->SetXTitle("p_{t}^{MC}");
fPtAllminPtMCvsPtAllDCAR->SetYTitle("(1/p_{t}^{All}-1/p_{t}^{MC})/(1/p_{t}^{MC})");
fPtAllminPtMCvsPtAllDCAR->SetZTitle("DCA_{R}");
fHistList->Add(fPtAllminPtMCvsPtAllDCAR);
fPtAllminPtMCvsPtAllDCAZ = new TH3F("fPtAllminPtMCvsPtAllDCAZ","PtAllminPtMCvsPtAllDCAZ",fgkNPtBins, binsPt,fgkResPtBins,binsResPt,fgkNDCAZBins,binsDCAZ);
fPtAllminPtMCvsPtAllDCAZ->SetXTitle("p_{t}^{MC}");
fPtAllminPtMCvsPtAllDCAZ->SetYTitle("(1/p_{t}^{All}-1/p_{t}^{MC})/(1/p_{t}^{MC})");
fPtAllminPtMCvsPtAllDCAZ->SetZTitle("DCA_{Z}");
fHistList->Add(fPtAllminPtMCvsPtAllDCAZ);
fPtAllminPtMCvsPtAllPhi = new TH3F("fPtAllminPtMCvsPtAllPhi","PtAllminPtMCvsPtAllPhi",fgkNPtBins, binsPt,fgkResPtBins,binsResPt,fgkNPhiBins,binsPhi);
fPtAllminPtMCvsPtAllPhi->SetXTitle("p_{t}^{MC}");
fPtAllminPtMCvsPtAllPhi->SetYTitle("(1/p_{t}^{All}-1/p_{t}^{MC})/(1/p_{t}^{MC})");
fPtAllminPtMCvsPtAllPhi->SetZTitle("#phi");
fHistList->Add(fPtAllminPtMCvsPtAllPhi);
fPtAllminPtMCvsPtAllNPointITS = new TH3F("fPtAllminPtMCvsPtAllNPointITS","PtAllminPtMCvsPtAllNPointITS",fgkNPtBins, binsPt,fgkResPtBins,binsResPt,fgkNNPointITSBins,binsNPointITS);
fPtAllminPtMCvsPtAllNPointITS->SetXTitle("p_{t}^{MC}");
fPtAllminPtMCvsPtAllNPointITS->SetYTitle("(1/p_{t}^{All}-1/p_{t}^{MC})/(1/p_{t}^{MC})");
fPtAllminPtMCvsPtAllNPointITS->SetZTitle("N_{point,ITS}}");
fHistList->Add(fPtAllminPtMCvsPtAllNPointITS);
fPtAllminPtMCvsPtAllNSigmaToVertex = new TH3F("fPtAllminPtMCvsPtAllNSigmaToVertex","PtAllminPtMCvsPtAllNSigmaToVertex",fgkNPtBins, binsPt,fgkResPtBins,binsResPt,fgkNNSigmaToVertexBins,binsNSigmaToVertex);
fPtAllminPtMCvsPtAllNSigmaToVertex->SetXTitle("p_{t}^{MC}");
fPtAllminPtMCvsPtAllNSigmaToVertex->SetYTitle("(1/p_{t}^{All}-1/p_{t}^{MC})/(1/p_{t}^{MC})");
fPtAllminPtMCvsPtAllNSigmaToVertex->SetZTitle("N#sigma to vertex");
fHistList->Add(fPtAllminPtMCvsPtAllNSigmaToVertex);
fPtAllminPtMCvsPtAllChi2C = new TH3F("fPtAllminPtMCvsPtAllChi2C","PtAllminPtMCvsPtAllChi2C",fgkNPtBins, binsPt,fgkResPtBins,binsResPt,fgkNChi2CBins,binsChi2C);
fPtAllminPtMCvsPtAllChi2C->SetXTitle("p_{t}^{MC}");
fPtAllminPtMCvsPtAllChi2C->SetYTitle("(1/p_{t}^{All}-1/p_{t}^{MC})/(1/p_{t}^{MC})");
fPtAllminPtMCvsPtAllChi2C->SetZTitle("Constrained #chi^{2}");
fHistList->Add(fPtAllminPtMCvsPtAllChi2C);
fPtAllminPtMCvsPtAllRel1PtUncertainty = new TH3F("fPtAllminPtMCvsPtAllRel1PtUncertainty","PtAllminPtMCvsPtAllRel1PtUncertainty",fgkNPtBins, binsPt,fgkResPtBins,binsResPt,fgkNRel1PtUncertaintyBins,binsRel1PtUncertainty);
fPtAllminPtMCvsPtAllRel1PtUncertainty->SetXTitle("p_{t}^{MC}");
fPtAllminPtMCvsPtAllRel1PtUncertainty->SetYTitle("(1/p_{t}^{All}-1/p_{t}^{MC})/(1/p_{t}^{MC})");
fPtAllminPtMCvsPtAllRel1PtUncertainty->SetZTitle("Rel1PtUncertainty");
fHistList->Add(fPtAllminPtMCvsPtAllRel1PtUncertainty);
fPtAllMC = new TH1F("fPtAllMC","PtAll",fgkNPtBins, binsPt);
fHistList->Add(fPtAllMC);
fPtSelMC = new TH1F("fPtSelMC","PtSel",fgkNPtBins, binsPt);
fHistList->Add(fPtSelMC);
TH1::AddDirectory(oldStatus);
PostData(0, fHistList);
if(binsPt) delete [] binsPt;
if(binsResPt) delete [] binsResPt;
if(binsPhi) delete [] binsPhi;
if(binsNClustersTPC) delete [] binsNClustersTPC;
if(binsDCA2D) delete [] binsDCA2D;
if(binsDCAZ) delete [] binsDCAZ;
if(binsNPointITS) delete [] binsNPointITS;
if(binsNSigmaToVertex) delete [] binsNSigmaToVertex;
if(binsChi2C) delete [] binsChi2C;
if(binsEta) delete [] binsEta;
if(binsRel1PtUncertainty) delete [] binsRel1PtUncertainty;
if(binsChi2PerClus) delete [] binsChi2PerClus;
if(binsMult) delete [] binsMult;
}
Bool_t AliPWG4HighPtQAMC::SelectEvent() {
Bool_t selectEvent = kTRUE;
if (!fESD) {
AliDebug(2,Form("ERROR: fInputEvent not available\n"));
fNEventReject->Fill("noESD",1);
selectEvent = kFALSE;
return selectEvent;
}
UInt_t isSelected = ((AliInputEventHandler*)(AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler()))->IsEventSelected();
if(!(isSelected&AliVEvent::kMB)) {
AliDebug(2,Form(" Trigger Selection: event REJECTED ... "));
fNEventReject->Fill("Trigger",1);
selectEvent = kFALSE;
return selectEvent;
}
if(fMC) {
AliDebug(2,Form("MC particles: %d", fMC->GetNumberOfTracks()));
fStack = fMC->Stack();
if(fStack) {
AliDebug(2,Form("MC particles stack: %d", fStack->GetNtrack()));
}
else {
AliDebug(2,Form("ERROR: Could not retrieve MC eventHandler"));
fNEventReject->Fill("noStack",1);
selectEvent = kFALSE;
return selectEvent;
}
} else {
AliDebug(2,Form("ERROR: Could not retrieve stack"));
fNEventReject->Fill("noMCEvent",1);
selectEvent = kFALSE;
return selectEvent;
}
if(!fESD->GetNumberOfTracks() || fESD->GetNumberOfTracks()<2) {
fNEventReject->Fill("NTracks<2",1);
selectEvent = kFALSE;
return selectEvent;
}
if(fTrackType==1) fVtx = fESD->GetPrimaryVertexTPC();
else fVtx = fESD->GetPrimaryVertexSPD();
if(!fVtx) {
fNEventReject->Fill("noVTX",1);
selectEvent = kFALSE;
return selectEvent;
}
if(!fVtx->GetStatus()) {
fNEventReject->Fill("VtxStatus",1);
selectEvent = kFALSE;
return selectEvent;
}
if(fVtx->GetNContributors()<2) {
fNEventReject->Fill("NCont<2",1);
selectEvent = kFALSE;
return selectEvent;
}
double primVtx[3];
fVtx->GetXYZ(primVtx);
if(TMath::Sqrt(primVtx[0]*primVtx[0] + primVtx[1]*primVtx[1])>1. || TMath::Abs(primVtx[2]>10.)){
fNEventReject->Fill("ZVTX>10",1);
selectEvent = kFALSE;
return selectEvent;
}
AliDebug(2,Form("Vertex title %s, status %d, nCont %d\n",fVtx->GetTitle(), fVtx->GetStatus(), fVtx->GetNContributors()));
return selectEvent;
}
void AliPWG4HighPtQAMC::Exec(Option_t *) {
AliDebug(2,Form(">> AliPWG4HighPtQATPConly::Exec \n"));
fNEventAll->Fill(0.);
if(!SelectEvent()) {
PostData(0, fHistList);
return;
}
Double_t ptHard = 0.;
Double_t nTrials = 1;
if(fMC){
AliGenPythiaEventHeader* pythiaGenHeader = GetPythiaEventHeader(fMC);
if(pythiaGenHeader){
nTrials = pythiaGenHeader->Trials();
ptHard = pythiaGenHeader->GetPtHard();
fh1PtHard->Fill(ptHard);
fh1PtHardTrials->Fill(ptHard,nTrials);
fh1Trials->Fill("#sum{ntrials}",fAvgTrials);
}
}
fNEventSel->Fill(0.);
Int_t nTracks = fESD->GetNumberOfTracks();
AliDebug(2,Form("nTracks ESD%d", nTracks));
int nMCtracks = fStack->GetNtrack();
Float_t pt = 0.;
Float_t ptMC = 0.;
Float_t phi = 0.;
Float_t dca2D = 0.;
Float_t dcaZ = 0.;
Int_t nPointITS = 0;
Float_t chi2C = 0.;
Float_t nSigmaToVertex = 0.;
Float_t relUncertainty1Pt = 0.;
int mult = fTrackCuts->CountAcceptedTracks(fESD);
for (Int_t iTrack = 0; iTrack < nTracks; iTrack++) {
AliESDtrack *track = 0;
AliESDtrack *esdtrack = fESD->GetTrack(iTrack);
if(!esdtrack) continue;
if(fTrackType==1) {
track = AliESDtrackCuts::GetTPCOnlyTrack(fESD,esdtrack->GetID());
if(!track) continue;
}
else if(fTrackType==2) {
track = AliESDtrackCuts::GetTPCOnlyTrack(fESD,esdtrack->GetID());
if(!track) continue;
AliExternalTrackParam exParam;
Bool_t relate = track->RelateToVertexTPC(fVtx,fESD->GetMagneticField(),kVeryBig,&exParam);
if( !relate ) {
delete track;
continue;
}
track->Set(exParam.GetX(),exParam.GetAlpha(),exParam.GetParameter(),exParam.GetCovariance());
}
else if(fTrackType==7) {
track = new AliESDtrack(*esdtrack);
}
else
track = esdtrack;
if(!track) continue;
if(fTrackType==2) {
if(track->GetConstrainedChi2TPC() > fSigmaConstrainedMax*fSigmaConstrainedMax) {
delete track;
continue;
}
}
Int_t label = TMath::Abs(track->GetLabel());
if(label>=nMCtracks) {
if (fTrackCuts->AcceptTrack(track)) { fPtSelLargeLabel->Fill(pt); }
if(fTrackType==1 || fTrackType==2 || fTrackType==7) delete track;
continue;
}
TParticle *particle = fStack->Particle(label) ;
if(!particle) {
if(fTrackType==1 || fTrackType==2 || fTrackType==7) {
if(track) delete track;
}
continue;
}
ptMC = particle->Pt();
if(fTrackType==1 || fTrackType==2)
track->GetImpactParametersTPC(dca2D,dcaZ);
else
track->GetImpactParameters(dca2D,dcaZ);
UChar_t itsMap = track->GetITSClusterMap();
for (Int_t i=0; i < 6; i++) {
if (itsMap & (1 << i))
nPointITS ++;
}
fPtAllMC->Fill(ptMC);
if (fTrackCuts->AcceptTrack(track)) {
if(fTrackType==7) {
if(fTrackCutsReject ) {
if(fTrackCutsReject->AcceptTrack(track) ) {
if(track) delete track;
continue;
}
}
if(esdtrack->GetConstrainedParam())
track->Set(esdtrack->GetConstrainedParam()->GetX(),esdtrack->GetConstrainedParam()->GetAlpha(),esdtrack->GetConstrainedParam()->GetParameter(),esdtrack->GetConstrainedParam()->GetCovariance());
}
pt = track->Pt();
phi = track->Phi();
nSigmaToVertex = fTrackCuts->GetSigmaToVertex(track);
chi2C = track->GetConstrainedChi2();
relUncertainty1Pt = TMath::Sqrt(track->GetSigma1Pt2())*pt;
fPtSel->Fill(pt);
if(track->GetLabel()<0) {
fPtSelFakes->Fill(pt);
fNPointTPCFakes->Fill(track->GetTPCNcls());
}
fPtSelMC->Fill(ptMC);
fPtAllvsPtMC->Fill(ptMC,pt);
fPtAllminPtMCvsPtMC->Fill(ptMC,(1./pt-1./ptMC)/(1./ptMC) );
fPtAllminPtMCvsPtAll->Fill(pt,(1./pt-1./ptMC)/(1./ptMC) );
fPtAllminPtMCvsPtAllNPointTPC->Fill(ptMC,(1./pt-1./ptMC)/(1./ptMC),track->GetTPCNcls());
fPtAllminPtMCvsPtAllNPointTPCIter1->Fill(ptMC,(1./pt-1./ptMC)/(1./ptMC),track->GetTPCNclsIter1());
if(track->GetTPCNcls()>0.)
fPtAllminPtMCvsPtAllChi2TPC->Fill(ptMC,(1./pt-1./ptMC)/(1./ptMC),track->GetTPCchi2()/track->GetTPCNcls());
if(track->GetTPCNclsIter1()>0.)
fPtAllminPtMCvsPtAllChi2TPCIter1->Fill(ptMC,(1./pt-1./ptMC)/(1./ptMC),track->GetTPCchi2Iter1()/track->GetTPCNclsIter1());
fPtAllminPtMCvsPtAllDCAR->Fill(ptMC,(1./pt-1./ptMC)/(1./ptMC),dca2D);
fPtAllminPtMCvsPtAllDCAZ->Fill(ptMC,(1./pt-1./ptMC)/(1./ptMC),dcaZ);
fPtAllminPtMCvsPtAllPhi->Fill(ptMC,(1./pt-1./ptMC)/(1./ptMC),phi);
fPtAllminPtMCvsPtAllNPointITS->Fill(ptMC,(1./pt-1./ptMC)/(1./ptMC),nPointITS);
fPtAllminPtMCvsPtAllNSigmaToVertex->Fill(ptMC,(1./pt-1./ptMC)/(1./ptMC),nSigmaToVertex);
fPtAllminPtMCvsPtAllChi2C->Fill(ptMC,(1./pt-1./ptMC)/(1./ptMC),chi2C);
fPtAllminPtMCvsPtAllRel1PtUncertainty->Fill(ptMC,(1./pt-1./ptMC)/(1./ptMC),relUncertainty1Pt);
fPtAllvsPtMCvsMult->Fill(ptMC,pt,mult);
fPtAllminPtMCvsPtAllvsMult->Fill(ptMC,(1./pt-1./ptMC)/(1./ptMC), mult);
}
if(fTrackType==1 || fTrackType==2 || fTrackType==7) {
if(track) delete track;
}
}
PostData(0, fHistList);
}
Bool_t AliPWG4HighPtQAMC::PythiaInfoFromFile(const char* currFile,Float_t &fXsec,Float_t &fTrials){
TString file(currFile);
fXsec = 0;
fTrials = 1;
if(file.Contains("root_archive.zip#")){
Ssiz_t pos1 = file.Index("root_archive",12,TString::kExact);
Ssiz_t pos = file.Index("#",1,pos1,TString::kExact);
file.Replace(pos+1,20,"");
}
else {
file.ReplaceAll(gSystem->BaseName(file.Data()),"");
}
TFile *fxsec = TFile::Open(Form("%s%s",file.Data(),"pyxsec.root"));
if(!fxsec){
fxsec = TFile::Open(Form("%s%s",file.Data(),"pyxsec_hists.root"));
if(!fxsec){
return kFALSE;
}
else{
TKey* key = (TKey*)fxsec->GetListOfKeys()->At(0);
if(!key){
fxsec->Close();
return kFALSE;
}
TList *list = dynamic_cast<TList*>(key->ReadObj());
if(!list){
fxsec->Close();
return kFALSE;
}
fXsec = ((TProfile*)list->FindObject("h1Xsec"))->GetBinContent(1);
fTrials = ((TH1F*)list->FindObject("h1Trials"))->GetBinContent(1);
fxsec->Close();
}
}
else {
TTree *xtree = (TTree*)fxsec->Get("Xsection");
if(!xtree){
fxsec->Close();
return kFALSE;
}
UInt_t ntrials = 0;
Double_t xsection = 0;
xtree->SetBranchAddress("xsection",&xsection);
xtree->SetBranchAddress("ntrials",&ntrials);
xtree->GetEntry(0);
fTrials = ntrials;
fXsec = xsection;
fxsec->Close();
}
return kTRUE;
}
Bool_t AliPWG4HighPtQAMC::Notify()
{
TTree *tree = AliAnalysisManager::GetAnalysisManager()->GetTree();
Float_t xsection = 0;
Float_t ftrials = 1;
fAvgTrials = 1;
if(tree){
TFile *curfile = tree->GetCurrentFile();
if (!curfile) {
Error("Notify","No current file");
return kFALSE;
}
if(!fh1Xsec||!fh1Trials){
return kFALSE;
}
PythiaInfoFromFile(curfile->GetName(),xsection,ftrials);
fh1Xsec->Fill("<#sigma>",xsection);
Float_t nEntries = (Float_t)tree->GetTree()->GetEntries();
if(ftrials>=nEntries && nEntries>0.)fAvgTrials = ftrials/nEntries;
}
return kTRUE;
}
AliGenPythiaEventHeader* AliPWG4HighPtQAMC::GetPythiaEventHeader(AliMCEvent *mcEvent){
if(!mcEvent)return 0;
AliGenEventHeader* genHeader = mcEvent->GenEventHeader();
AliGenPythiaEventHeader* pythiaGenHeader = dynamic_cast<AliGenPythiaEventHeader*>(genHeader);
if(!pythiaGenHeader){
AliGenCocktailEventHeader* genCocktailHeader = dynamic_cast<AliGenCocktailEventHeader*>(genHeader);
if (!genCocktailHeader) {
return 0;
}
TList* headerList = genCocktailHeader->GetHeaders();
for (Int_t i=0; i<headerList->GetEntries(); i++) {
pythiaGenHeader = dynamic_cast<AliGenPythiaEventHeader*>(headerList->At(i));
if (pythiaGenHeader)
break;
}
if(!pythiaGenHeader){
AliWarningGeneral(Form(" %s:%d",(char*)__FILE__,__LINE__),"Pythia event header not found");
return 0;
}
}
return pythiaGenHeader;
}
void AliPWG4HighPtQAMC::Terminate(Option_t *)
{
}
#endif
AliPWG4HighPtQAMC.cxx:100 AliPWG4HighPtQAMC.cxx:101 AliPWG4HighPtQAMC.cxx:102 AliPWG4HighPtQAMC.cxx:103 AliPWG4HighPtQAMC.cxx:104 AliPWG4HighPtQAMC.cxx:105 AliPWG4HighPtQAMC.cxx:106 AliPWG4HighPtQAMC.cxx:107 AliPWG4HighPtQAMC.cxx:108 AliPWG4HighPtQAMC.cxx:109 AliPWG4HighPtQAMC.cxx:110 AliPWG4HighPtQAMC.cxx:111 AliPWG4HighPtQAMC.cxx:112 AliPWG4HighPtQAMC.cxx:113 AliPWG4HighPtQAMC.cxx:114 AliPWG4HighPtQAMC.cxx:115 AliPWG4HighPtQAMC.cxx:116 AliPWG4HighPtQAMC.cxx:117 AliPWG4HighPtQAMC.cxx:118 AliPWG4HighPtQAMC.cxx:119 AliPWG4HighPtQAMC.cxx:120 AliPWG4HighPtQAMC.cxx:121 AliPWG4HighPtQAMC.cxx:122 AliPWG4HighPtQAMC.cxx:123 AliPWG4HighPtQAMC.cxx:124 AliPWG4HighPtQAMC.cxx:125 AliPWG4HighPtQAMC.cxx:126 AliPWG4HighPtQAMC.cxx:127 AliPWG4HighPtQAMC.cxx:128 AliPWG4HighPtQAMC.cxx:129 AliPWG4HighPtQAMC.cxx:130 AliPWG4HighPtQAMC.cxx:131 AliPWG4HighPtQAMC.cxx:132 AliPWG4HighPtQAMC.cxx:133 AliPWG4HighPtQAMC.cxx:134 AliPWG4HighPtQAMC.cxx:135 AliPWG4HighPtQAMC.cxx:136 AliPWG4HighPtQAMC.cxx:137 AliPWG4HighPtQAMC.cxx:138 AliPWG4HighPtQAMC.cxx:139 AliPWG4HighPtQAMC.cxx:140 AliPWG4HighPtQAMC.cxx:141 AliPWG4HighPtQAMC.cxx:142 AliPWG4HighPtQAMC.cxx:143 AliPWG4HighPtQAMC.cxx:144 AliPWG4HighPtQAMC.cxx:145 AliPWG4HighPtQAMC.cxx:146 AliPWG4HighPtQAMC.cxx:147 AliPWG4HighPtQAMC.cxx:148 AliPWG4HighPtQAMC.cxx:149 AliPWG4HighPtQAMC.cxx:150 AliPWG4HighPtQAMC.cxx:151 AliPWG4HighPtQAMC.cxx:152 AliPWG4HighPtQAMC.cxx:153 AliPWG4HighPtQAMC.cxx:154 AliPWG4HighPtQAMC.cxx:155 AliPWG4HighPtQAMC.cxx:156 AliPWG4HighPtQAMC.cxx:157 AliPWG4HighPtQAMC.cxx:158 AliPWG4HighPtQAMC.cxx:159 AliPWG4HighPtQAMC.cxx:160 AliPWG4HighPtQAMC.cxx:161 AliPWG4HighPtQAMC.cxx:162 AliPWG4HighPtQAMC.cxx:163 AliPWG4HighPtQAMC.cxx:164 AliPWG4HighPtQAMC.cxx:165 AliPWG4HighPtQAMC.cxx:166 AliPWG4HighPtQAMC.cxx:167 AliPWG4HighPtQAMC.cxx:168 AliPWG4HighPtQAMC.cxx:169 AliPWG4HighPtQAMC.cxx:170 AliPWG4HighPtQAMC.cxx:171 AliPWG4HighPtQAMC.cxx:172 AliPWG4HighPtQAMC.cxx:173 AliPWG4HighPtQAMC.cxx:174 AliPWG4HighPtQAMC.cxx:175 AliPWG4HighPtQAMC.cxx:176 AliPWG4HighPtQAMC.cxx:177 AliPWG4HighPtQAMC.cxx:178 AliPWG4HighPtQAMC.cxx:179 AliPWG4HighPtQAMC.cxx:180 AliPWG4HighPtQAMC.cxx:181 AliPWG4HighPtQAMC.cxx:182 AliPWG4HighPtQAMC.cxx:183 AliPWG4HighPtQAMC.cxx:184 AliPWG4HighPtQAMC.cxx:185 AliPWG4HighPtQAMC.cxx:186 AliPWG4HighPtQAMC.cxx:187 AliPWG4HighPtQAMC.cxx:188 AliPWG4HighPtQAMC.cxx:189 AliPWG4HighPtQAMC.cxx:190 AliPWG4HighPtQAMC.cxx:191 AliPWG4HighPtQAMC.cxx:192 AliPWG4HighPtQAMC.cxx:193 AliPWG4HighPtQAMC.cxx:194 AliPWG4HighPtQAMC.cxx:195 AliPWG4HighPtQAMC.cxx:196 AliPWG4HighPtQAMC.cxx:197 AliPWG4HighPtQAMC.cxx:198 AliPWG4HighPtQAMC.cxx:199 AliPWG4HighPtQAMC.cxx:200 AliPWG4HighPtQAMC.cxx:201 AliPWG4HighPtQAMC.cxx:202 AliPWG4HighPtQAMC.cxx:203 AliPWG4HighPtQAMC.cxx:204 AliPWG4HighPtQAMC.cxx:205 AliPWG4HighPtQAMC.cxx:206 AliPWG4HighPtQAMC.cxx:207 AliPWG4HighPtQAMC.cxx:208 AliPWG4HighPtQAMC.cxx:209 AliPWG4HighPtQAMC.cxx:210 AliPWG4HighPtQAMC.cxx:211 AliPWG4HighPtQAMC.cxx:212 AliPWG4HighPtQAMC.cxx:213 AliPWG4HighPtQAMC.cxx:214 AliPWG4HighPtQAMC.cxx:215 AliPWG4HighPtQAMC.cxx:216 AliPWG4HighPtQAMC.cxx:217 AliPWG4HighPtQAMC.cxx:218 AliPWG4HighPtQAMC.cxx:219 AliPWG4HighPtQAMC.cxx:220 AliPWG4HighPtQAMC.cxx:221 AliPWG4HighPtQAMC.cxx:222 AliPWG4HighPtQAMC.cxx:223 AliPWG4HighPtQAMC.cxx:224 AliPWG4HighPtQAMC.cxx:225 AliPWG4HighPtQAMC.cxx:226 AliPWG4HighPtQAMC.cxx:227 AliPWG4HighPtQAMC.cxx:228 AliPWG4HighPtQAMC.cxx:229 AliPWG4HighPtQAMC.cxx:230 AliPWG4HighPtQAMC.cxx:231 AliPWG4HighPtQAMC.cxx:232 AliPWG4HighPtQAMC.cxx:233 AliPWG4HighPtQAMC.cxx:234 AliPWG4HighPtQAMC.cxx:235 AliPWG4HighPtQAMC.cxx:236 AliPWG4HighPtQAMC.cxx:237 AliPWG4HighPtQAMC.cxx:238 AliPWG4HighPtQAMC.cxx:239 AliPWG4HighPtQAMC.cxx:240 AliPWG4HighPtQAMC.cxx:241 AliPWG4HighPtQAMC.cxx:242 AliPWG4HighPtQAMC.cxx:243 AliPWG4HighPtQAMC.cxx:244 AliPWG4HighPtQAMC.cxx:245 AliPWG4HighPtQAMC.cxx:246 AliPWG4HighPtQAMC.cxx:247 AliPWG4HighPtQAMC.cxx:248 AliPWG4HighPtQAMC.cxx:249 AliPWG4HighPtQAMC.cxx:250 AliPWG4HighPtQAMC.cxx:251 AliPWG4HighPtQAMC.cxx:252 AliPWG4HighPtQAMC.cxx:253 AliPWG4HighPtQAMC.cxx:254 AliPWG4HighPtQAMC.cxx:255 AliPWG4HighPtQAMC.cxx:256 AliPWG4HighPtQAMC.cxx:257 AliPWG4HighPtQAMC.cxx:258 AliPWG4HighPtQAMC.cxx:259 AliPWG4HighPtQAMC.cxx:260 AliPWG4HighPtQAMC.cxx:261 AliPWG4HighPtQAMC.cxx:262 AliPWG4HighPtQAMC.cxx:263 AliPWG4HighPtQAMC.cxx:264 AliPWG4HighPtQAMC.cxx:265 AliPWG4HighPtQAMC.cxx:266 AliPWG4HighPtQAMC.cxx:267 AliPWG4HighPtQAMC.cxx:268 AliPWG4HighPtQAMC.cxx:269 AliPWG4HighPtQAMC.cxx:270 AliPWG4HighPtQAMC.cxx:271 AliPWG4HighPtQAMC.cxx:272 AliPWG4HighPtQAMC.cxx:273 AliPWG4HighPtQAMC.cxx:274 AliPWG4HighPtQAMC.cxx:275 AliPWG4HighPtQAMC.cxx:276 AliPWG4HighPtQAMC.cxx:277 AliPWG4HighPtQAMC.cxx:278 AliPWG4HighPtQAMC.cxx:279 AliPWG4HighPtQAMC.cxx:280 AliPWG4HighPtQAMC.cxx:281 AliPWG4HighPtQAMC.cxx:282 AliPWG4HighPtQAMC.cxx:283 AliPWG4HighPtQAMC.cxx:284 AliPWG4HighPtQAMC.cxx:285 AliPWG4HighPtQAMC.cxx:286 AliPWG4HighPtQAMC.cxx:287 AliPWG4HighPtQAMC.cxx:288 AliPWG4HighPtQAMC.cxx:289 AliPWG4HighPtQAMC.cxx:290 AliPWG4HighPtQAMC.cxx:291 AliPWG4HighPtQAMC.cxx:292 AliPWG4HighPtQAMC.cxx:293 AliPWG4HighPtQAMC.cxx:294 AliPWG4HighPtQAMC.cxx:295 AliPWG4HighPtQAMC.cxx:296 AliPWG4HighPtQAMC.cxx:297 AliPWG4HighPtQAMC.cxx:298 AliPWG4HighPtQAMC.cxx:299 AliPWG4HighPtQAMC.cxx:300 AliPWG4HighPtQAMC.cxx:301 AliPWG4HighPtQAMC.cxx:302 AliPWG4HighPtQAMC.cxx:303 AliPWG4HighPtQAMC.cxx:304 AliPWG4HighPtQAMC.cxx:305 AliPWG4HighPtQAMC.cxx:306 AliPWG4HighPtQAMC.cxx:307 AliPWG4HighPtQAMC.cxx:308 AliPWG4HighPtQAMC.cxx:309 AliPWG4HighPtQAMC.cxx:310 AliPWG4HighPtQAMC.cxx:311 AliPWG4HighPtQAMC.cxx:312 AliPWG4HighPtQAMC.cxx:313 AliPWG4HighPtQAMC.cxx:314 AliPWG4HighPtQAMC.cxx:315 AliPWG4HighPtQAMC.cxx:316 AliPWG4HighPtQAMC.cxx:317 AliPWG4HighPtQAMC.cxx:318 AliPWG4HighPtQAMC.cxx:319 AliPWG4HighPtQAMC.cxx:320 AliPWG4HighPtQAMC.cxx:321 AliPWG4HighPtQAMC.cxx:322 AliPWG4HighPtQAMC.cxx:323 AliPWG4HighPtQAMC.cxx:324 AliPWG4HighPtQAMC.cxx:325 AliPWG4HighPtQAMC.cxx:326 AliPWG4HighPtQAMC.cxx:327 AliPWG4HighPtQAMC.cxx:328 AliPWG4HighPtQAMC.cxx:329 AliPWG4HighPtQAMC.cxx:330 AliPWG4HighPtQAMC.cxx:331 AliPWG4HighPtQAMC.cxx:332 AliPWG4HighPtQAMC.cxx:333 AliPWG4HighPtQAMC.cxx:334 AliPWG4HighPtQAMC.cxx:335 AliPWG4HighPtQAMC.cxx:336 AliPWG4HighPtQAMC.cxx:337 AliPWG4HighPtQAMC.cxx:338 AliPWG4HighPtQAMC.cxx:339 AliPWG4HighPtQAMC.cxx:340 AliPWG4HighPtQAMC.cxx:341 AliPWG4HighPtQAMC.cxx:342 AliPWG4HighPtQAMC.cxx:343 AliPWG4HighPtQAMC.cxx:344 AliPWG4HighPtQAMC.cxx:345 AliPWG4HighPtQAMC.cxx:346 AliPWG4HighPtQAMC.cxx:347 AliPWG4HighPtQAMC.cxx:348 AliPWG4HighPtQAMC.cxx:349 AliPWG4HighPtQAMC.cxx:350 AliPWG4HighPtQAMC.cxx:351 AliPWG4HighPtQAMC.cxx:352 AliPWG4HighPtQAMC.cxx:353 AliPWG4HighPtQAMC.cxx:354 AliPWG4HighPtQAMC.cxx:355 AliPWG4HighPtQAMC.cxx:356 AliPWG4HighPtQAMC.cxx:357 AliPWG4HighPtQAMC.cxx:358 AliPWG4HighPtQAMC.cxx:359 AliPWG4HighPtQAMC.cxx:360 AliPWG4HighPtQAMC.cxx:361 AliPWG4HighPtQAMC.cxx:362 AliPWG4HighPtQAMC.cxx:363 AliPWG4HighPtQAMC.cxx:364 AliPWG4HighPtQAMC.cxx:365 AliPWG4HighPtQAMC.cxx:366 AliPWG4HighPtQAMC.cxx:367 AliPWG4HighPtQAMC.cxx:368 AliPWG4HighPtQAMC.cxx:369 AliPWG4HighPtQAMC.cxx:370 AliPWG4HighPtQAMC.cxx:371 AliPWG4HighPtQAMC.cxx:372 AliPWG4HighPtQAMC.cxx:373 AliPWG4HighPtQAMC.cxx:374 AliPWG4HighPtQAMC.cxx:375 AliPWG4HighPtQAMC.cxx:376 AliPWG4HighPtQAMC.cxx:377 AliPWG4HighPtQAMC.cxx:378 AliPWG4HighPtQAMC.cxx:379 AliPWG4HighPtQAMC.cxx:380 AliPWG4HighPtQAMC.cxx:381 AliPWG4HighPtQAMC.cxx:382 AliPWG4HighPtQAMC.cxx:383 AliPWG4HighPtQAMC.cxx:384 AliPWG4HighPtQAMC.cxx:385 AliPWG4HighPtQAMC.cxx:386 AliPWG4HighPtQAMC.cxx:387 AliPWG4HighPtQAMC.cxx:388 AliPWG4HighPtQAMC.cxx:389 AliPWG4HighPtQAMC.cxx:390 AliPWG4HighPtQAMC.cxx:391 AliPWG4HighPtQAMC.cxx:392 AliPWG4HighPtQAMC.cxx:393 AliPWG4HighPtQAMC.cxx:394 AliPWG4HighPtQAMC.cxx:395 AliPWG4HighPtQAMC.cxx:396 AliPWG4HighPtQAMC.cxx:397 AliPWG4HighPtQAMC.cxx:398 AliPWG4HighPtQAMC.cxx:399 AliPWG4HighPtQAMC.cxx:400 AliPWG4HighPtQAMC.cxx:401 AliPWG4HighPtQAMC.cxx:402 AliPWG4HighPtQAMC.cxx:403 AliPWG4HighPtQAMC.cxx:404 AliPWG4HighPtQAMC.cxx:405 AliPWG4HighPtQAMC.cxx:406 AliPWG4HighPtQAMC.cxx:407 AliPWG4HighPtQAMC.cxx:408 AliPWG4HighPtQAMC.cxx:409 AliPWG4HighPtQAMC.cxx:410 AliPWG4HighPtQAMC.cxx:411 AliPWG4HighPtQAMC.cxx:412 AliPWG4HighPtQAMC.cxx:413 AliPWG4HighPtQAMC.cxx:414 AliPWG4HighPtQAMC.cxx:415 AliPWG4HighPtQAMC.cxx:416 AliPWG4HighPtQAMC.cxx:417 AliPWG4HighPtQAMC.cxx:418 AliPWG4HighPtQAMC.cxx:419 AliPWG4HighPtQAMC.cxx:420 AliPWG4HighPtQAMC.cxx:421 AliPWG4HighPtQAMC.cxx:422 AliPWG4HighPtQAMC.cxx:423 AliPWG4HighPtQAMC.cxx:424 AliPWG4HighPtQAMC.cxx:425 AliPWG4HighPtQAMC.cxx:426 AliPWG4HighPtQAMC.cxx:427 AliPWG4HighPtQAMC.cxx:428 AliPWG4HighPtQAMC.cxx:429 AliPWG4HighPtQAMC.cxx:430 AliPWG4HighPtQAMC.cxx:431 AliPWG4HighPtQAMC.cxx:432 AliPWG4HighPtQAMC.cxx:433 AliPWG4HighPtQAMC.cxx:434 AliPWG4HighPtQAMC.cxx:435 AliPWG4HighPtQAMC.cxx:436 AliPWG4HighPtQAMC.cxx:437 AliPWG4HighPtQAMC.cxx:438 AliPWG4HighPtQAMC.cxx:439 AliPWG4HighPtQAMC.cxx:440 AliPWG4HighPtQAMC.cxx:441 AliPWG4HighPtQAMC.cxx:442 AliPWG4HighPtQAMC.cxx:443 AliPWG4HighPtQAMC.cxx:444 AliPWG4HighPtQAMC.cxx:445 AliPWG4HighPtQAMC.cxx:446 AliPWG4HighPtQAMC.cxx:447 AliPWG4HighPtQAMC.cxx:448 AliPWG4HighPtQAMC.cxx:449 AliPWG4HighPtQAMC.cxx:450 AliPWG4HighPtQAMC.cxx:451 AliPWG4HighPtQAMC.cxx:452 AliPWG4HighPtQAMC.cxx:453 AliPWG4HighPtQAMC.cxx:454 AliPWG4HighPtQAMC.cxx:455 AliPWG4HighPtQAMC.cxx:456 AliPWG4HighPtQAMC.cxx:457 AliPWG4HighPtQAMC.cxx:458 AliPWG4HighPtQAMC.cxx:459 AliPWG4HighPtQAMC.cxx:460 AliPWG4HighPtQAMC.cxx:461 AliPWG4HighPtQAMC.cxx:462 AliPWG4HighPtQAMC.cxx:463 AliPWG4HighPtQAMC.cxx:464 AliPWG4HighPtQAMC.cxx:465 AliPWG4HighPtQAMC.cxx:466 AliPWG4HighPtQAMC.cxx:467 AliPWG4HighPtQAMC.cxx:468 AliPWG4HighPtQAMC.cxx:469 AliPWG4HighPtQAMC.cxx:470 AliPWG4HighPtQAMC.cxx:471 AliPWG4HighPtQAMC.cxx:472 AliPWG4HighPtQAMC.cxx:473 AliPWG4HighPtQAMC.cxx:474 AliPWG4HighPtQAMC.cxx:475 AliPWG4HighPtQAMC.cxx:476 AliPWG4HighPtQAMC.cxx:477 AliPWG4HighPtQAMC.cxx:478 AliPWG4HighPtQAMC.cxx:479 AliPWG4HighPtQAMC.cxx:480 AliPWG4HighPtQAMC.cxx:481 AliPWG4HighPtQAMC.cxx:482 AliPWG4HighPtQAMC.cxx:483 AliPWG4HighPtQAMC.cxx:484 AliPWG4HighPtQAMC.cxx:485 AliPWG4HighPtQAMC.cxx:486 AliPWG4HighPtQAMC.cxx:487 AliPWG4HighPtQAMC.cxx:488 AliPWG4HighPtQAMC.cxx:489 AliPWG4HighPtQAMC.cxx:490 AliPWG4HighPtQAMC.cxx:491 AliPWG4HighPtQAMC.cxx:492 AliPWG4HighPtQAMC.cxx:493 AliPWG4HighPtQAMC.cxx:494 AliPWG4HighPtQAMC.cxx:495 AliPWG4HighPtQAMC.cxx:496 AliPWG4HighPtQAMC.cxx:497 AliPWG4HighPtQAMC.cxx:498 AliPWG4HighPtQAMC.cxx:499 AliPWG4HighPtQAMC.cxx:500 AliPWG4HighPtQAMC.cxx:501 AliPWG4HighPtQAMC.cxx:502 AliPWG4HighPtQAMC.cxx:503 AliPWG4HighPtQAMC.cxx:504 AliPWG4HighPtQAMC.cxx:505 AliPWG4HighPtQAMC.cxx:506 AliPWG4HighPtQAMC.cxx:507 AliPWG4HighPtQAMC.cxx:508 AliPWG4HighPtQAMC.cxx:509 AliPWG4HighPtQAMC.cxx:510 AliPWG4HighPtQAMC.cxx:511 AliPWG4HighPtQAMC.cxx:512 AliPWG4HighPtQAMC.cxx:513 AliPWG4HighPtQAMC.cxx:514 AliPWG4HighPtQAMC.cxx:515 AliPWG4HighPtQAMC.cxx:516 AliPWG4HighPtQAMC.cxx:517 AliPWG4HighPtQAMC.cxx:518 AliPWG4HighPtQAMC.cxx:519 AliPWG4HighPtQAMC.cxx:520 AliPWG4HighPtQAMC.cxx:521 AliPWG4HighPtQAMC.cxx:522 AliPWG4HighPtQAMC.cxx:523 AliPWG4HighPtQAMC.cxx:524 AliPWG4HighPtQAMC.cxx:525 AliPWG4HighPtQAMC.cxx:526 AliPWG4HighPtQAMC.cxx:527 AliPWG4HighPtQAMC.cxx:528 AliPWG4HighPtQAMC.cxx:529 AliPWG4HighPtQAMC.cxx:530 AliPWG4HighPtQAMC.cxx:531 AliPWG4HighPtQAMC.cxx:532 AliPWG4HighPtQAMC.cxx:533 AliPWG4HighPtQAMC.cxx:534 AliPWG4HighPtQAMC.cxx:535 AliPWG4HighPtQAMC.cxx:536 AliPWG4HighPtQAMC.cxx:537 AliPWG4HighPtQAMC.cxx:538 AliPWG4HighPtQAMC.cxx:539 AliPWG4HighPtQAMC.cxx:540 AliPWG4HighPtQAMC.cxx:541 AliPWG4HighPtQAMC.cxx:542 AliPWG4HighPtQAMC.cxx:543 AliPWG4HighPtQAMC.cxx:544 AliPWG4HighPtQAMC.cxx:545 AliPWG4HighPtQAMC.cxx:546 AliPWG4HighPtQAMC.cxx:547 AliPWG4HighPtQAMC.cxx:548 AliPWG4HighPtQAMC.cxx:549 AliPWG4HighPtQAMC.cxx:550 AliPWG4HighPtQAMC.cxx:551 AliPWG4HighPtQAMC.cxx:552 AliPWG4HighPtQAMC.cxx:553 AliPWG4HighPtQAMC.cxx:554 AliPWG4HighPtQAMC.cxx:555 AliPWG4HighPtQAMC.cxx:556 AliPWG4HighPtQAMC.cxx:557 AliPWG4HighPtQAMC.cxx:558 AliPWG4HighPtQAMC.cxx:559 AliPWG4HighPtQAMC.cxx:560 AliPWG4HighPtQAMC.cxx:561 AliPWG4HighPtQAMC.cxx:562 AliPWG4HighPtQAMC.cxx:563 AliPWG4HighPtQAMC.cxx:564 AliPWG4HighPtQAMC.cxx:565 AliPWG4HighPtQAMC.cxx:566 AliPWG4HighPtQAMC.cxx:567 AliPWG4HighPtQAMC.cxx:568 AliPWG4HighPtQAMC.cxx:569 AliPWG4HighPtQAMC.cxx:570 AliPWG4HighPtQAMC.cxx:571 AliPWG4HighPtQAMC.cxx:572 AliPWG4HighPtQAMC.cxx:573 AliPWG4HighPtQAMC.cxx:574 AliPWG4HighPtQAMC.cxx:575 AliPWG4HighPtQAMC.cxx:576 AliPWG4HighPtQAMC.cxx:577 AliPWG4HighPtQAMC.cxx:578 AliPWG4HighPtQAMC.cxx:579 AliPWG4HighPtQAMC.cxx:580 AliPWG4HighPtQAMC.cxx:581 AliPWG4HighPtQAMC.cxx:582 AliPWG4HighPtQAMC.cxx:583 AliPWG4HighPtQAMC.cxx:584 AliPWG4HighPtQAMC.cxx:585 AliPWG4HighPtQAMC.cxx:586 AliPWG4HighPtQAMC.cxx:587 AliPWG4HighPtQAMC.cxx:588 AliPWG4HighPtQAMC.cxx:589 AliPWG4HighPtQAMC.cxx:590 AliPWG4HighPtQAMC.cxx:591 AliPWG4HighPtQAMC.cxx:592 AliPWG4HighPtQAMC.cxx:593 AliPWG4HighPtQAMC.cxx:594 AliPWG4HighPtQAMC.cxx:595 AliPWG4HighPtQAMC.cxx:596 AliPWG4HighPtQAMC.cxx:597 AliPWG4HighPtQAMC.cxx:598 AliPWG4HighPtQAMC.cxx:599 AliPWG4HighPtQAMC.cxx:600 AliPWG4HighPtQAMC.cxx:601 AliPWG4HighPtQAMC.cxx:602 AliPWG4HighPtQAMC.cxx:603 AliPWG4HighPtQAMC.cxx:604 AliPWG4HighPtQAMC.cxx:605 AliPWG4HighPtQAMC.cxx:606 AliPWG4HighPtQAMC.cxx:607 AliPWG4HighPtQAMC.cxx:608 AliPWG4HighPtQAMC.cxx:609 AliPWG4HighPtQAMC.cxx:610 AliPWG4HighPtQAMC.cxx:611 AliPWG4HighPtQAMC.cxx:612 AliPWG4HighPtQAMC.cxx:613 AliPWG4HighPtQAMC.cxx:614 AliPWG4HighPtQAMC.cxx:615 AliPWG4HighPtQAMC.cxx:616 AliPWG4HighPtQAMC.cxx:617 AliPWG4HighPtQAMC.cxx:618 AliPWG4HighPtQAMC.cxx:619 AliPWG4HighPtQAMC.cxx:620 AliPWG4HighPtQAMC.cxx:621 AliPWG4HighPtQAMC.cxx:622 AliPWG4HighPtQAMC.cxx:623 AliPWG4HighPtQAMC.cxx:624 AliPWG4HighPtQAMC.cxx:625 AliPWG4HighPtQAMC.cxx:626 AliPWG4HighPtQAMC.cxx:627 AliPWG4HighPtQAMC.cxx:628 AliPWG4HighPtQAMC.cxx:629 AliPWG4HighPtQAMC.cxx:630 AliPWG4HighPtQAMC.cxx:631 AliPWG4HighPtQAMC.cxx:632 AliPWG4HighPtQAMC.cxx:633 AliPWG4HighPtQAMC.cxx:634 AliPWG4HighPtQAMC.cxx:635 AliPWG4HighPtQAMC.cxx:636 AliPWG4HighPtQAMC.cxx:637 AliPWG4HighPtQAMC.cxx:638 AliPWG4HighPtQAMC.cxx:639 AliPWG4HighPtQAMC.cxx:640 AliPWG4HighPtQAMC.cxx:641 AliPWG4HighPtQAMC.cxx:642 AliPWG4HighPtQAMC.cxx:643 AliPWG4HighPtQAMC.cxx:644 AliPWG4HighPtQAMC.cxx:645 AliPWG4HighPtQAMC.cxx:646 AliPWG4HighPtQAMC.cxx:647 AliPWG4HighPtQAMC.cxx:648 AliPWG4HighPtQAMC.cxx:649 AliPWG4HighPtQAMC.cxx:650 AliPWG4HighPtQAMC.cxx:651 AliPWG4HighPtQAMC.cxx:652 AliPWG4HighPtQAMC.cxx:653 AliPWG4HighPtQAMC.cxx:654 AliPWG4HighPtQAMC.cxx:655 AliPWG4HighPtQAMC.cxx:656 AliPWG4HighPtQAMC.cxx:657 AliPWG4HighPtQAMC.cxx:658 AliPWG4HighPtQAMC.cxx:659 AliPWG4HighPtQAMC.cxx:660 AliPWG4HighPtQAMC.cxx:661 AliPWG4HighPtQAMC.cxx:662 AliPWG4HighPtQAMC.cxx:663 AliPWG4HighPtQAMC.cxx:664 AliPWG4HighPtQAMC.cxx:665 AliPWG4HighPtQAMC.cxx:666 AliPWG4HighPtQAMC.cxx:667 AliPWG4HighPtQAMC.cxx:668 AliPWG4HighPtQAMC.cxx:669 AliPWG4HighPtQAMC.cxx:670 AliPWG4HighPtQAMC.cxx:671 AliPWG4HighPtQAMC.cxx:672 AliPWG4HighPtQAMC.cxx:673 AliPWG4HighPtQAMC.cxx:674 AliPWG4HighPtQAMC.cxx:675 AliPWG4HighPtQAMC.cxx:676 AliPWG4HighPtQAMC.cxx:677 AliPWG4HighPtQAMC.cxx:678 AliPWG4HighPtQAMC.cxx:679 AliPWG4HighPtQAMC.cxx:680 AliPWG4HighPtQAMC.cxx:681 AliPWG4HighPtQAMC.cxx:682 AliPWG4HighPtQAMC.cxx:683 AliPWG4HighPtQAMC.cxx:684 AliPWG4HighPtQAMC.cxx:685 AliPWG4HighPtQAMC.cxx:686 AliPWG4HighPtQAMC.cxx:687 AliPWG4HighPtQAMC.cxx:688 AliPWG4HighPtQAMC.cxx:689 AliPWG4HighPtQAMC.cxx:690 AliPWG4HighPtQAMC.cxx:691 AliPWG4HighPtQAMC.cxx:692 AliPWG4HighPtQAMC.cxx:693 AliPWG4HighPtQAMC.cxx:694 AliPWG4HighPtQAMC.cxx:695 AliPWG4HighPtQAMC.cxx:696 AliPWG4HighPtQAMC.cxx:697 AliPWG4HighPtQAMC.cxx:698 AliPWG4HighPtQAMC.cxx:699 AliPWG4HighPtQAMC.cxx:700 AliPWG4HighPtQAMC.cxx:701 AliPWG4HighPtQAMC.cxx:702 AliPWG4HighPtQAMC.cxx:703 AliPWG4HighPtQAMC.cxx:704 AliPWG4HighPtQAMC.cxx:705 AliPWG4HighPtQAMC.cxx:706 AliPWG4HighPtQAMC.cxx:707 AliPWG4HighPtQAMC.cxx:708 AliPWG4HighPtQAMC.cxx:709 AliPWG4HighPtQAMC.cxx:710 AliPWG4HighPtQAMC.cxx:711 AliPWG4HighPtQAMC.cxx:712 AliPWG4HighPtQAMC.cxx:713 AliPWG4HighPtQAMC.cxx:714 AliPWG4HighPtQAMC.cxx:715 AliPWG4HighPtQAMC.cxx:716 AliPWG4HighPtQAMC.cxx:717 AliPWG4HighPtQAMC.cxx:718 AliPWG4HighPtQAMC.cxx:719 AliPWG4HighPtQAMC.cxx:720 AliPWG4HighPtQAMC.cxx:721 AliPWG4HighPtQAMC.cxx:722 AliPWG4HighPtQAMC.cxx:723 AliPWG4HighPtQAMC.cxx:724 AliPWG4HighPtQAMC.cxx:725 AliPWG4HighPtQAMC.cxx:726 AliPWG4HighPtQAMC.cxx:727 AliPWG4HighPtQAMC.cxx:728 AliPWG4HighPtQAMC.cxx:729 AliPWG4HighPtQAMC.cxx:730 AliPWG4HighPtQAMC.cxx:731 AliPWG4HighPtQAMC.cxx:732 AliPWG4HighPtQAMC.cxx:733 AliPWG4HighPtQAMC.cxx:734 AliPWG4HighPtQAMC.cxx:735 AliPWG4HighPtQAMC.cxx:736 AliPWG4HighPtQAMC.cxx:737 AliPWG4HighPtQAMC.cxx:738 AliPWG4HighPtQAMC.cxx:739 AliPWG4HighPtQAMC.cxx:740 AliPWG4HighPtQAMC.cxx:741 AliPWG4HighPtQAMC.cxx:742 AliPWG4HighPtQAMC.cxx:743 AliPWG4HighPtQAMC.cxx:744 AliPWG4HighPtQAMC.cxx:745 AliPWG4HighPtQAMC.cxx:746 AliPWG4HighPtQAMC.cxx:747 AliPWG4HighPtQAMC.cxx:748 AliPWG4HighPtQAMC.cxx:749 AliPWG4HighPtQAMC.cxx:750 AliPWG4HighPtQAMC.cxx:751 AliPWG4HighPtQAMC.cxx:752 AliPWG4HighPtQAMC.cxx:753 AliPWG4HighPtQAMC.cxx:754 AliPWG4HighPtQAMC.cxx:755 AliPWG4HighPtQAMC.cxx:756 AliPWG4HighPtQAMC.cxx:757 AliPWG4HighPtQAMC.cxx:758 AliPWG4HighPtQAMC.cxx:759 AliPWG4HighPtQAMC.cxx:760 AliPWG4HighPtQAMC.cxx:761 AliPWG4HighPtQAMC.cxx:762 AliPWG4HighPtQAMC.cxx:763 AliPWG4HighPtQAMC.cxx:764 AliPWG4HighPtQAMC.cxx:765 AliPWG4HighPtQAMC.cxx:766 AliPWG4HighPtQAMC.cxx:767 AliPWG4HighPtQAMC.cxx:768 AliPWG4HighPtQAMC.cxx:769 AliPWG4HighPtQAMC.cxx:770 AliPWG4HighPtQAMC.cxx:771 AliPWG4HighPtQAMC.cxx:772 AliPWG4HighPtQAMC.cxx:773 AliPWG4HighPtQAMC.cxx:774 AliPWG4HighPtQAMC.cxx:775 AliPWG4HighPtQAMC.cxx:776 AliPWG4HighPtQAMC.cxx:777 AliPWG4HighPtQAMC.cxx:778 AliPWG4HighPtQAMC.cxx:779 AliPWG4HighPtQAMC.cxx:780 AliPWG4HighPtQAMC.cxx:781 AliPWG4HighPtQAMC.cxx:782 AliPWG4HighPtQAMC.cxx:783 AliPWG4HighPtQAMC.cxx:784 AliPWG4HighPtQAMC.cxx:785 AliPWG4HighPtQAMC.cxx:786 AliPWG4HighPtQAMC.cxx:787 AliPWG4HighPtQAMC.cxx:788 AliPWG4HighPtQAMC.cxx:789 AliPWG4HighPtQAMC.cxx:790 AliPWG4HighPtQAMC.cxx:791 AliPWG4HighPtQAMC.cxx:792 AliPWG4HighPtQAMC.cxx:793 AliPWG4HighPtQAMC.cxx:794 AliPWG4HighPtQAMC.cxx:795 AliPWG4HighPtQAMC.cxx:796 AliPWG4HighPtQAMC.cxx:797 AliPWG4HighPtQAMC.cxx:798 AliPWG4HighPtQAMC.cxx:799 AliPWG4HighPtQAMC.cxx:800 AliPWG4HighPtQAMC.cxx:801 AliPWG4HighPtQAMC.cxx:802 AliPWG4HighPtQAMC.cxx:803 AliPWG4HighPtQAMC.cxx:804 AliPWG4HighPtQAMC.cxx:805 AliPWG4HighPtQAMC.cxx:806 AliPWG4HighPtQAMC.cxx:807 AliPWG4HighPtQAMC.cxx:808 AliPWG4HighPtQAMC.cxx:809 AliPWG4HighPtQAMC.cxx:810 AliPWG4HighPtQAMC.cxx:811 AliPWG4HighPtQAMC.cxx:812 AliPWG4HighPtQAMC.cxx:813 AliPWG4HighPtQAMC.cxx:814 AliPWG4HighPtQAMC.cxx:815 AliPWG4HighPtQAMC.cxx:816 AliPWG4HighPtQAMC.cxx:817 AliPWG4HighPtQAMC.cxx:818 AliPWG4HighPtQAMC.cxx:819 AliPWG4HighPtQAMC.cxx:820 AliPWG4HighPtQAMC.cxx:821 AliPWG4HighPtQAMC.cxx:822 AliPWG4HighPtQAMC.cxx:823 AliPWG4HighPtQAMC.cxx:824 AliPWG4HighPtQAMC.cxx:825 AliPWG4HighPtQAMC.cxx:826 AliPWG4HighPtQAMC.cxx:827 AliPWG4HighPtQAMC.cxx:828 AliPWG4HighPtQAMC.cxx:829 AliPWG4HighPtQAMC.cxx:830 AliPWG4HighPtQAMC.cxx:831 AliPWG4HighPtQAMC.cxx:832 AliPWG4HighPtQAMC.cxx:833 AliPWG4HighPtQAMC.cxx:834 AliPWG4HighPtQAMC.cxx:835 AliPWG4HighPtQAMC.cxx:836 AliPWG4HighPtQAMC.cxx:837 AliPWG4HighPtQAMC.cxx:838 AliPWG4HighPtQAMC.cxx:839 AliPWG4HighPtQAMC.cxx:840 AliPWG4HighPtQAMC.cxx:841 AliPWG4HighPtQAMC.cxx:842 AliPWG4HighPtQAMC.cxx:843 AliPWG4HighPtQAMC.cxx:844 AliPWG4HighPtQAMC.cxx:845 AliPWG4HighPtQAMC.cxx:846 AliPWG4HighPtQAMC.cxx:847 AliPWG4HighPtQAMC.cxx:848 AliPWG4HighPtQAMC.cxx:849 AliPWG4HighPtQAMC.cxx:850 AliPWG4HighPtQAMC.cxx:851 AliPWG4HighPtQAMC.cxx:852 AliPWG4HighPtQAMC.cxx:853 AliPWG4HighPtQAMC.cxx:854 AliPWG4HighPtQAMC.cxx:855 AliPWG4HighPtQAMC.cxx:856 AliPWG4HighPtQAMC.cxx:857 AliPWG4HighPtQAMC.cxx:858 AliPWG4HighPtQAMC.cxx:859 AliPWG4HighPtQAMC.cxx:860 AliPWG4HighPtQAMC.cxx:861 AliPWG4HighPtQAMC.cxx:862 AliPWG4HighPtQAMC.cxx:863 AliPWG4HighPtQAMC.cxx:864 AliPWG4HighPtQAMC.cxx:865 AliPWG4HighPtQAMC.cxx:866 AliPWG4HighPtQAMC.cxx:867 AliPWG4HighPtQAMC.cxx:868 AliPWG4HighPtQAMC.cxx:869 AliPWG4HighPtQAMC.cxx:870 AliPWG4HighPtQAMC.cxx:871 AliPWG4HighPtQAMC.cxx:872 AliPWG4HighPtQAMC.cxx:873 AliPWG4HighPtQAMC.cxx:874 AliPWG4HighPtQAMC.cxx:875 AliPWG4HighPtQAMC.cxx:876 AliPWG4HighPtQAMC.cxx:877 AliPWG4HighPtQAMC.cxx:878 AliPWG4HighPtQAMC.cxx:879 AliPWG4HighPtQAMC.cxx:880 AliPWG4HighPtQAMC.cxx:881 AliPWG4HighPtQAMC.cxx:882 AliPWG4HighPtQAMC.cxx:883 AliPWG4HighPtQAMC.cxx:884 AliPWG4HighPtQAMC.cxx:885 AliPWG4HighPtQAMC.cxx:886 AliPWG4HighPtQAMC.cxx:887 AliPWG4HighPtQAMC.cxx:888 AliPWG4HighPtQAMC.cxx:889 AliPWG4HighPtQAMC.cxx:890 AliPWG4HighPtQAMC.cxx:891 AliPWG4HighPtQAMC.cxx:892 AliPWG4HighPtQAMC.cxx:893 AliPWG4HighPtQAMC.cxx:894 AliPWG4HighPtQAMC.cxx:895 AliPWG4HighPtQAMC.cxx:896 AliPWG4HighPtQAMC.cxx:897 AliPWG4HighPtQAMC.cxx:898 AliPWG4HighPtQAMC.cxx:899 AliPWG4HighPtQAMC.cxx:900 AliPWG4HighPtQAMC.cxx:901 AliPWG4HighPtQAMC.cxx:902 AliPWG4HighPtQAMC.cxx:903 AliPWG4HighPtQAMC.cxx:904 AliPWG4HighPtQAMC.cxx:905 AliPWG4HighPtQAMC.cxx:906 AliPWG4HighPtQAMC.cxx:907 AliPWG4HighPtQAMC.cxx:908 AliPWG4HighPtQAMC.cxx:909 AliPWG4HighPtQAMC.cxx:910 AliPWG4HighPtQAMC.cxx:911 AliPWG4HighPtQAMC.cxx:912 AliPWG4HighPtQAMC.cxx:913 AliPWG4HighPtQAMC.cxx:914 AliPWG4HighPtQAMC.cxx:915 AliPWG4HighPtQAMC.cxx:916 AliPWG4HighPtQAMC.cxx:917 AliPWG4HighPtQAMC.cxx:918 AliPWG4HighPtQAMC.cxx:919 AliPWG4HighPtQAMC.cxx:920 AliPWG4HighPtQAMC.cxx:921 AliPWG4HighPtQAMC.cxx:922 AliPWG4HighPtQAMC.cxx:923 AliPWG4HighPtQAMC.cxx:924 AliPWG4HighPtQAMC.cxx:925 AliPWG4HighPtQAMC.cxx:926 AliPWG4HighPtQAMC.cxx:927 AliPWG4HighPtQAMC.cxx:928 AliPWG4HighPtQAMC.cxx:929 AliPWG4HighPtQAMC.cxx:930 AliPWG4HighPtQAMC.cxx:931 AliPWG4HighPtQAMC.cxx:932 AliPWG4HighPtQAMC.cxx:933 AliPWG4HighPtQAMC.cxx:934 AliPWG4HighPtQAMC.cxx:935 AliPWG4HighPtQAMC.cxx:936 AliPWG4HighPtQAMC.cxx:937 AliPWG4HighPtQAMC.cxx:938 AliPWG4HighPtQAMC.cxx:939 AliPWG4HighPtQAMC.cxx:940 AliPWG4HighPtQAMC.cxx:941 AliPWG4HighPtQAMC.cxx:942 AliPWG4HighPtQAMC.cxx:943 AliPWG4HighPtQAMC.cxx:944 AliPWG4HighPtQAMC.cxx:945 AliPWG4HighPtQAMC.cxx:946 AliPWG4HighPtQAMC.cxx:947 AliPWG4HighPtQAMC.cxx:948 AliPWG4HighPtQAMC.cxx:949 AliPWG4HighPtQAMC.cxx:950 AliPWG4HighPtQAMC.cxx:951 AliPWG4HighPtQAMC.cxx:952 AliPWG4HighPtQAMC.cxx:953 AliPWG4HighPtQAMC.cxx:954 AliPWG4HighPtQAMC.cxx:955 AliPWG4HighPtQAMC.cxx:956 AliPWG4HighPtQAMC.cxx:957 AliPWG4HighPtQAMC.cxx:958 AliPWG4HighPtQAMC.cxx:959 AliPWG4HighPtQAMC.cxx:960 AliPWG4HighPtQAMC.cxx:961 AliPWG4HighPtQAMC.cxx:962 AliPWG4HighPtQAMC.cxx:963 AliPWG4HighPtQAMC.cxx:964 AliPWG4HighPtQAMC.cxx:965 AliPWG4HighPtQAMC.cxx:966 AliPWG4HighPtQAMC.cxx:967 AliPWG4HighPtQAMC.cxx:968 AliPWG4HighPtQAMC.cxx:969 AliPWG4HighPtQAMC.cxx:970