#include "AliLog.h"
#include "TH1D.h"
#include "TH2D.h"
#include "TTree.h"
#include "TAxis.h"
#include "AliAODEvent.h"
#include "AliAODTrack.h"
#include "TMath.h"
#include "TString.h"
#include "AliAnalysisTaskMuonHadronCorrelations.h"
#include "AliAnalysisManager.h"
#include "AliInputEventHandler.h"
#include "AliEventPoolManager.h"
ClassImp(AliAnalysisTaskMuonHadronCorrelations)
AliAnalysisTaskMuonHadronCorrelations::AliAnalysisTaskMuonHadronCorrelations() :
AliAnalysisTaskSE(),
fAOD(0x0),
fPoolMgr(0x0),
fTrackCB(0x0),
fTrackMA(0x0),
fFilterBitCentralBarrel(0),
fMaxEtaCentralBarrel(1.0),
fMinEtaCentralBarrel(-1.0),
fMaxChi2Muon(9999999999.),
fMinRAbsMuon(0),
fMaxRAbsMuon(9999999999.),
fTriggerMatchLevelMuon(0),
fNbinsCent(1),
fNbinsPt(1),
fCentAxis(0x0),
fPtAxis(0x0),
fEtaAxis(0x0),
fHistV0Multiplicity(0x0),
fHistITSMultiplicity(0x0),
fHistCentrality(0x0),
fHistEvStat(0x0),
fCentMethod(0),
fOutputList(0x0)
{
for (Int_t iCent=0; iCent<fNMaxBinsCentrality; iCent++) {
for (Int_t iPtBinCB=0; iPtBinCB<fNMaxBinsPt; iPtBinCB++) {
for (Int_t iPtBinMA=0; iPtBinMA<fNMaxBinsPt; iPtBinMA++) {
fHistDeltaPhi[iCent][iPtBinCB][iPtBinMA] = NULL;
fHistDeltaPhiMix[iCent][iPtBinCB][iPtBinMA] = NULL;
fHistEtaDeltaPhi[iCent][iPtBinCB][iPtBinMA] = NULL;
fHistEtaDeltaPhiMix[iCent][iPtBinCB][iPtBinMA] = NULL;
}
}
fHistNTracksCB_vs_NTracksMA[iCent] = NULL;
fHistNTracksCB_vs_NTracksMAmixed[iCent] = NULL;
fHistTracksEtaMAvsEtaCB[iCent] = NULL;
fHistTracksEtaMAvsEtaCBmixed[iCent] = NULL;
fHistSingleMuonsPt[iCent] = NULL;
fHistSingleMuonsPtmixed[iCent] = NULL;
fHistSingleMuonsEtaPt[iCent] = NULL;
fHistSingleMuonsEtaPtmixed[iCent] = NULL;
fHistSingleMuonsTrigMatch[iCent] = NULL;
fHistSingleMuonsChi2[iCent] = NULL;
fHistSingleMuonsEtaVsPt[iCent] = NULL;
fHistSingleMuonsEtaVsRAbs[iCent] = NULL;
}
}
AliAnalysisTaskMuonHadronCorrelations::AliAnalysisTaskMuonHadronCorrelations(const char *name) :
AliAnalysisTaskSE(name),
fAOD(0x0),
fPoolMgr(0x0),
fTrackCB(0x0),
fTrackMA(0x0),
fFilterBitCentralBarrel(0),
fMaxEtaCentralBarrel(1.0),
fMinEtaCentralBarrel(-1.0),
fMaxChi2Muon(9999999999.),
fMinRAbsMuon(0),
fMaxRAbsMuon(9999999999.),
fTriggerMatchLevelMuon(0),
fNbinsCent(1),
fNbinsPt(1),
fCentAxis(0x0),
fPtAxis(0x0),
fEtaAxis(0x0),
fHistV0Multiplicity(0x0),
fHistITSMultiplicity(0x0),
fHistCentrality(0x0),
fHistEvStat(0x0),
fCentMethod(0),
fOutputList(0x0)
{
for (Int_t iCent=0; iCent<fNMaxBinsCentrality; iCent++) {
for (Int_t iPtBinCB=0; iPtBinCB<fNMaxBinsPt; iPtBinCB++) {
for (Int_t iPtBinMA=0; iPtBinMA<fNMaxBinsPt; iPtBinMA++) {
fHistDeltaPhi[iCent][iPtBinCB][iPtBinMA] = NULL;
fHistDeltaPhiMix[iCent][iPtBinCB][iPtBinMA] = NULL;
fHistEtaDeltaPhi[iCent][iPtBinCB][iPtBinMA] = NULL;
fHistEtaDeltaPhiMix[iCent][iPtBinCB][iPtBinMA] = NULL;
}
}
fHistNTracksCB_vs_NTracksMA[iCent] = NULL;
fHistNTracksCB_vs_NTracksMAmixed[iCent] = NULL;
fHistTracksEtaMAvsEtaCB[iCent] = NULL;
fHistTracksEtaMAvsEtaCBmixed[iCent] = NULL;
fHistSingleMuonsPt[iCent] = NULL;
fHistSingleMuonsPtmixed[iCent] = NULL;
fHistSingleMuonsEtaPt[iCent] = NULL;
fHistSingleMuonsEtaPtmixed[iCent] = NULL;
fHistSingleMuonsTrigMatch[iCent] = NULL;
fHistSingleMuonsChi2[iCent] = NULL;
fHistSingleMuonsEtaVsPt[iCent] = NULL;
fHistSingleMuonsEtaVsRAbs[iCent] = NULL;
}
DefineOutput(1, TList::Class());
}
AliAnalysisTaskMuonHadronCorrelations::~AliAnalysisTaskMuonHadronCorrelations() {
delete fCentAxis;
delete fPtAxis;
delete fEtaAxis;
if (fOutputList && !AliAnalysisManager::GetAnalysisManager()->IsProofMode())
delete fOutputList;
}
void AliAnalysisTaskMuonHadronCorrelations::UserCreateOutputObjects() {
fOutputList = new TList();
fOutputList->SetOwner(kTRUE);
for (Int_t iCent=0; iCent<fNbinsCent; iCent++) {
for (Int_t iPtBinCB=0; iPtBinCB<fNbinsPt; iPtBinCB++) {
for (Int_t iPtBinMA=0; iPtBinMA<fNbinsPt; iPtBinMA++) {
fHistDeltaPhi[iCent][iPtBinCB][iPtBinMA] = new TH1D(Form("fHistDeltaPhi_Cent%02d_PtBin%02d_%02d",iCent,iPtBinCB,iPtBinMA),
Form("%d-%d %%, %3.1f<p_{T}^{TPC}<%3.1f, %3.1f<p_{T}^{Muon}<%3.1f",
Int_t(fCentAxis->GetBinLowEdge(iCent+1)),
Int_t(fCentAxis->GetBinUpEdge(iCent+1)),
fPtAxis->GetBinLowEdge(iPtBinCB+1),
fPtAxis->GetBinUpEdge(iPtBinCB+1),
fPtAxis->GetBinLowEdge(iPtBinMA+1),
fPtAxis->GetBinUpEdge(iPtBinMA+1)),
100, -0.5*TMath::RadToDeg()*TMath::Pi(), 1.5*TMath::RadToDeg()*TMath::Pi());
fHistDeltaPhiMix[iCent][iPtBinCB][iPtBinMA] = new TH1D(Form("fHistDeltaPhiMix_Cent%02d_PtBin%02d_%02d",iCent,iPtBinCB,iPtBinMA),
Form("%d-%d %%, %3.1f<p_{T}^{TPC}<%3.1f, %3.1f<p_{T}^{Muon}<%3.1f MIXED",
Int_t(fCentAxis->GetBinLowEdge(iCent+1)),
Int_t(fCentAxis->GetBinUpEdge(iCent+1)),
fPtAxis->GetBinLowEdge(iPtBinCB+1),
fPtAxis->GetBinUpEdge(iPtBinCB+1),
fPtAxis->GetBinLowEdge(iPtBinMA+1),
fPtAxis->GetBinUpEdge(iPtBinMA+1)),
100, -0.5*TMath::RadToDeg()*TMath::Pi(), 1.5*TMath::RadToDeg()*TMath::Pi());
fHistDeltaPhi[iCent][iPtBinCB][iPtBinMA] -> SetXTitle("#Delta#varphi [degrees]");
fHistDeltaPhiMix[iCent][iPtBinCB][iPtBinMA] -> SetXTitle("#Delta#varphi [degrees]");
fHistDeltaPhi[iCent][iPtBinCB][iPtBinMA] -> Sumw2();
fHistDeltaPhiMix[iCent][iPtBinCB][iPtBinMA] -> Sumw2();
fOutputList -> Add(fHistDeltaPhi[iCent][iPtBinCB][iPtBinMA]);
fOutputList -> Add(fHistDeltaPhiMix[iCent][iPtBinCB][iPtBinMA]);
fHistEtaDeltaPhi[iCent][iPtBinCB][iPtBinMA] = new TH2D(Form("fHistEtaDeltaPhi_Cent%02d_PtBin%02d_%02d",iCent,iPtBinCB,iPtBinMA),
Form("%d-%d %%, %3.1f<p_{T}^{TPC}<%3.1f, %3.1f<p_{T}^{Muon}<%3.1f",
Int_t(fCentAxis->GetBinLowEdge(iCent+1)),
Int_t(fCentAxis->GetBinUpEdge(iCent+1)),
fPtAxis->GetBinLowEdge(iPtBinCB+1),
fPtAxis->GetBinUpEdge(iPtBinCB+1),
fPtAxis->GetBinLowEdge(iPtBinMA+1),
fPtAxis->GetBinUpEdge(iPtBinMA+1)),
100, -0.5*TMath::RadToDeg()*TMath::Pi(), 1.5*TMath::RadToDeg()*TMath::Pi(),
fEtaAxis->GetNbins(),(Double_t*)fEtaAxis->GetXbins()->GetArray());
fHistEtaDeltaPhiMix[iCent][iPtBinCB][iPtBinMA] = new TH2D(Form("fHistEtaDeltaPhiMix_Cent%02d_PtBin%02d_%02d",iCent,iPtBinCB,iPtBinMA),
Form("%d-%d %%, %3.1f<p_{T}^{TPC}<%3.1f, %3.1f<p_{T}^{Muon}<%3.1f MIXED",
Int_t(fCentAxis->GetBinLowEdge(iCent+1)),
Int_t(fCentAxis->GetBinUpEdge(iCent+1)),
fPtAxis->GetBinLowEdge(iPtBinCB+1),
fPtAxis->GetBinUpEdge(iPtBinCB+1),
fPtAxis->GetBinLowEdge(iPtBinMA+1),
fPtAxis->GetBinUpEdge(iPtBinMA+1)),
100, -0.5*TMath::RadToDeg()*TMath::Pi(), 1.5*TMath::RadToDeg()*TMath::Pi(),
fEtaAxis->GetNbins(),(Double_t*)fEtaAxis->GetXbins()->GetArray());
fHistEtaDeltaPhi[iCent][iPtBinCB][iPtBinMA] -> SetXTitle("#Delta#varphi [degrees]");
fHistEtaDeltaPhiMix[iCent][iPtBinCB][iPtBinMA] -> SetXTitle("#Delta#varphi [degrees]");
fHistEtaDeltaPhi[iCent][iPtBinCB][iPtBinMA] -> SetYTitle("#eta");
fHistEtaDeltaPhiMix[iCent][iPtBinCB][iPtBinMA] -> SetYTitle("#eta");
fHistEtaDeltaPhi[iCent][iPtBinCB][iPtBinMA] -> Sumw2();
fHistEtaDeltaPhiMix[iCent][iPtBinCB][iPtBinMA] -> Sumw2();
fOutputList -> Add(fHistEtaDeltaPhi[iCent][iPtBinCB][iPtBinMA]);
fOutputList -> Add(fHistEtaDeltaPhiMix[iCent][iPtBinCB][iPtBinMA]);
}
}
fHistNTracksCB_vs_NTracksMA[iCent] = new TH2D(Form("fHistNTracksCB_vs_NTracksMA_Cent%02d",iCent),
Form("%d-%d %%",Int_t(fCentAxis->GetBinLowEdge(iCent+1)),Int_t(fCentAxis->GetBinUpEdge(iCent+1))),
100, 0, 500, 20, 0, 20);
fHistNTracksCB_vs_NTracksMA[iCent] -> SetXTitle("N_{tracks} Central Barrel");
fHistNTracksCB_vs_NTracksMA[iCent] -> SetYTitle("N_{tracks} Muon Arm");
fHistNTracksCB_vs_NTracksMA[iCent] -> Sumw2();
fHistNTracksCB_vs_NTracksMAmixed[iCent] = new TH2D(Form("fHistNTracksCB_vs_NTracksMAmixed_Cent%02d",iCent),
Form("%d-%d %% MIXED",Int_t(fCentAxis->GetBinLowEdge(iCent+1)),Int_t(fCentAxis->GetBinUpEdge(iCent+1))),
100, 0, 500, 20, 0, 20);
fHistNTracksCB_vs_NTracksMAmixed[iCent] -> SetXTitle("N_{tracks} Central Barrel");
fHistNTracksCB_vs_NTracksMAmixed[iCent] -> SetYTitle("N_{tracks} Muon Arm");
fHistNTracksCB_vs_NTracksMAmixed[iCent] -> Sumw2();
fHistTracksEtaMAvsEtaCB[iCent] = new TH2D(Form("fHistTracksEtaMAvsEtaCB_%02d",iCent),
"#eta muon vs #eta barrel",
100,-4.5,-2.,100,-1.5,1.5);
fHistTracksEtaMAvsEtaCBmixed[iCent] = new TH2D(Form("fHistTracksEtaMAvsEtaCBmixed_%02d",iCent),
"#eta muon vs #eta barrel",
100,-4.5,-2.,100,-1.5,1.5);
fOutputList -> Add(fHistNTracksCB_vs_NTracksMA[iCent]);
fOutputList -> Add(fHistNTracksCB_vs_NTracksMAmixed[iCent]);
fOutputList -> Add(fHistTracksEtaMAvsEtaCB[iCent]);
fOutputList -> Add(fHistTracksEtaMAvsEtaCBmixed[iCent]);
fHistSingleMuonsPt[iCent] = new TH1D(Form("fHistSingleMuonPt_Cent%02d",iCent),
"p_{T} for single muons",
fNbinsPt, (Double_t*)fPtAxis->GetXbins()->GetArray());
fHistSingleMuonsPtmixed[iCent] = new TH1D(Form("fHistSingleMuonPtmixed_Cent%02d",iCent),
"p_{T} for single muons",
fNbinsPt, (Double_t*)fPtAxis->GetXbins()->GetArray());
fOutputList -> Add(fHistSingleMuonsPt[iCent]);
fOutputList -> Add(fHistSingleMuonsPtmixed[iCent]);
fHistSingleMuonsEtaPt[iCent] = new TH2D(Form("fHistSingleMuonEtaPt_Cent%02d",iCent),
"#eta vs p_{T} for single muons",
fNbinsPt, (Double_t*)fPtAxis->GetXbins()->GetArray(),
fEtaAxis->GetNbins(),(Double_t*)fEtaAxis->GetXbins()->GetArray());
fHistSingleMuonsEtaPtmixed[iCent] = new TH2D(Form("fHistSingleMuonEtaPtmixed_Cent%02d",iCent),
"#eta vs p_{T} for single muons",
fNbinsPt, (Double_t*)fPtAxis->GetXbins()->GetArray(),
fEtaAxis->GetNbins(),(Double_t*)fEtaAxis->GetXbins()->GetArray());
fOutputList -> Add(fHistSingleMuonsEtaPt[iCent]);
fOutputList -> Add(fHistSingleMuonsEtaPtmixed[iCent]);
fHistSingleMuonsTrigMatch[iCent] = new TH1D(Form("fHistSingleMuonsTrigMatch_Cent%02d",iCent),
"Single muons trigger match flag",10,-0.5,9.5);
fOutputList -> Add(fHistSingleMuonsTrigMatch[iCent]);
fHistSingleMuonsChi2[iCent] = new TH1D(Form("fHistSingleMuonsChi2_Cent%02d",iCent),
"Single muons Chi2",100,0.,10.);
fOutputList -> Add(fHistSingleMuonsChi2[iCent]);
fHistSingleMuonsEtaVsPt[iCent] = new TH2D(Form("fHistSingleMuonsEtaVsPt_Cent%02d",iCent),
"#eta vs p_{T} for single muons",
100, -4.5, -2., 100, 0., 10.);
fOutputList->Add(fHistSingleMuonsEtaVsPt[iCent]);
fHistSingleMuonsEtaVsRAbs[iCent] = new TH2D(Form("fHistSingleMuonsEtaVsRAbs_Cent%02d",iCent),
"#eta vs R_{Abs} for single muons",
100, -4.5, -2., 100, 0, 100);
fOutputList->Add(fHistSingleMuonsEtaVsRAbs[iCent]);
}
fHistV0Multiplicity = new TH1D("fHistV0Multiplicity", "V0 Multiplicity", 500, 0, 1000);
fHistV0Multiplicity -> SetXTitle("Multiplicity");
fHistV0Multiplicity -> Sumw2();
fHistITSMultiplicity = new TH1D("fHistITSMultiplicity", "ITS Multiplicity", 500, 0, 500);
fHistITSMultiplicity -> SetXTitle("N_{Clusters}");
fHistITSMultiplicity -> Sumw2();
fHistCentrality = new TH1D("fHistCentrality", Form("%s Centrality",fCentMethod.Data()), 300, -100, 200);
fHistCentrality -> SetXTitle("Centrality [%]");
fHistCentrality -> Sumw2();
fOutputList -> Add(fHistV0Multiplicity);
fOutputList -> Add(fHistITSMultiplicity);
fOutputList -> Add(fHistCentrality);
fHistEvStat = new TH1D("fHistEvStat","Event cuts statistics",20,-0.5,19.5);
fHistEvStat->SetXTitle("Cut index");
fOutputList->Add(fHistEvStat);
const Int_t kNZvtxBins = 10;
Double_t vertexBins[kNZvtxBins+1] = { -10, -8, -6, -4, -2, 0, 2, 4, 6, 8, 10 };
Int_t nZvtxBins = kNZvtxBins;
Double_t* zvtxbin = vertexBins;
fPoolMgr = new AliEventPoolManager(1000, 20000, fNbinsCent, (Double_t*)fCentAxis->GetXbins()->GetArray(), nZvtxBins, zvtxbin);
PostData(1, fOutputList);
}
void AliAnalysisTaskMuonHadronCorrelations::UserExec(Option_t *) {
fAOD = dynamic_cast<AliAODEvent *>(InputEvent());
if (!fAOD) return;
Int_t cutIndex = 0;
fHistEvStat->Fill(cutIndex++);
if (!(IsTriggerFired())) return;
fHistEvStat->Fill(cutIndex++);
fHistV0Multiplicity -> Fill(GetV0Multiplicity());
fHistITSMultiplicity -> Fill(GetITSMultiplicity());
Int_t centBin = GetCentBin();
if (centBin<0) return;
fHistEvStat->Fill(cutIndex++);
Double_t percentile = fAOD->GetCentrality()->GetCentralityPercentile(fCentMethod.Data());
fHistCentrality->Fill(percentile);
const AliAODVertex* trkVtx = fAOD->GetPrimaryVertex();
if (!trkVtx || trkVtx->GetNContributors()<=0) return;
TString vtxTtl = trkVtx->GetTitle();
if (!vtxTtl.Contains("VertexerTracks")) return;
fHistEvStat->Fill(cutIndex++);
Double_t zvtx = trkVtx->GetZ();
const AliAODVertex* spdVtx = fAOD->GetPrimaryVertexSPD();
if (spdVtx->GetNContributors()<=0) return;
TString vtxTyp = spdVtx->GetTitle();
Double_t cov[6]={0};
spdVtx->GetCovarianceMatrix(cov);
Double_t zRes = TMath::Sqrt(cov[5]);
if (vtxTyp.Contains("vertexer:Z") && (zRes>0.25)) return;
if (TMath::Abs(spdVtx->GetZ() - trkVtx->GetZ())>0.5) return;
fHistEvStat->Fill(cutIndex++);
if (TMath::Abs(zvtx) > 10.) return;
fHistEvStat->Fill(cutIndex++);
TObjArray *tracksMuonArm = GetAcceptedTracksMuonArm(fAOD,centBin);
if (tracksMuonArm->GetEntriesFast() == 0) {
delete tracksMuonArm;
return;
}
fHistEvStat->Fill(cutIndex++);
TObjArray *tracksCentralBarrel = GetAcceptedTracksCentralBarrel(fAOD);
fHistNTracksCB_vs_NTracksMA[centBin] -> Fill(tracksCentralBarrel->GetEntries(), tracksMuonArm->GetEntries());
AliDebug(1, Form("Single Event analysis : nTracksCB = %4d, nTracksMA = %4d", tracksCentralBarrel->GetEntries(), tracksMuonArm->GetEntries()));
for (Int_t iTrMA=0; iTrMA<tracksMuonArm->GetEntriesFast(); iTrMA++) {
fTrackMA = (AliAODTrack*) tracksMuonArm->At(iTrMA);
fHistSingleMuonsPt[centBin]->Fill(fTrackMA->Pt());
fHistSingleMuonsEtaPt[centBin]->Fill(fTrackMA->Pt(),fTrackMA->Eta());
for (Int_t iTrCB=0; iTrCB<tracksCentralBarrel->GetEntriesFast(); iTrCB++) {
fTrackCB = (AliAODTrack*) tracksCentralBarrel -> At(iTrCB);
FillHistograms(centBin, kSingleEvent);
}
}
{
AliEventPool* pool = fPoolMgr->GetEventPool(percentile, zvtx);
if (pool->IsReady() || pool->NTracksInPool() > 2000 || pool->GetCurrentNEvents() >= 5)
for (Int_t jMix=0; jMix<pool->GetCurrentNEvents(); jMix++) {
TObjArray *mixedTracks = pool->GetEvent(jMix);
fHistNTracksCB_vs_NTracksMAmixed[centBin]->Fill(mixedTracks->GetEntriesFast(), tracksMuonArm->GetEntriesFast());
for (Int_t iTrMA=0; iTrMA<tracksMuonArm->GetEntriesFast(); iTrMA++) {
fTrackMA = (AliAODTrack*) tracksMuonArm->At(iTrMA);
fHistSingleMuonsPtmixed[centBin]->Fill(fTrackMA->Pt());
fHistSingleMuonsEtaPtmixed[centBin]->Fill(fTrackMA->Pt(),fTrackMA->Eta());
for (Int_t iTrCB=0; iTrCB<mixedTracks->GetEntriesFast(); iTrCB++) {
fTrackCB = (AliAODTrack*) mixedTracks -> At(iTrCB);
FillHistograms(centBin, kMixedEvent);
}
}
}
pool->UpdatePool(tracksCentralBarrel);
}
delete tracksMuonArm;
PostData(1, fOutputList);
}
void AliAnalysisTaskMuonHadronCorrelations::FillHistograms(Int_t centrality, Int_t option) {
Int_t ptBinTrackCB = fPtAxis -> FindBin(fTrackCB->Pt());
Int_t ptBinTrackMA = fPtAxis -> FindBin(fTrackMA->Pt());
if (ptBinTrackCB<1 || ptBinTrackCB>fNbinsPt || ptBinTrackMA<1 || ptBinTrackMA>fNbinsPt) return;
Double_t deltaPhi = fTrackCB->Phi() - fTrackMA->Phi();
if (deltaPhi > 1.5*TMath::Pi()) deltaPhi -= TMath::TwoPi();
if (deltaPhi < -0.5*TMath::Pi()) deltaPhi += TMath::TwoPi();
if (option==kSingleEvent) fHistDeltaPhi[centrality][ptBinTrackCB-1][ptBinTrackMA-1] -> Fill(TMath::RadToDeg()*deltaPhi);
else if (option==kMixedEvent) fHistDeltaPhiMix[centrality][ptBinTrackCB-1][ptBinTrackMA-1] -> Fill(TMath::RadToDeg()*deltaPhi);
if (option==kSingleEvent) fHistEtaDeltaPhi[centrality][ptBinTrackCB-1][ptBinTrackMA-1] -> Fill(TMath::RadToDeg()*deltaPhi,fTrackMA->Eta());
else if (option==kMixedEvent) fHistEtaDeltaPhiMix[centrality][ptBinTrackCB-1][ptBinTrackMA-1] -> Fill(TMath::RadToDeg()*deltaPhi,fTrackMA->Eta());
if (option==kSingleEvent) fHistTracksEtaMAvsEtaCB[centrality]->Fill(fTrackMA->Eta(),fTrackCB->Eta());
else if (option==kMixedEvent) fHistTracksEtaMAvsEtaCBmixed[centrality]->Fill(fTrackMA->Eta(),fTrackCB->Eta());
}
Bool_t AliAnalysisTaskMuonHadronCorrelations::IsTriggerFired() {
Bool_t isSelected = (((AliInputEventHandler*)(AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler()))->IsEventSelected() & AliVEvent::kINT7);
return isSelected;
}
Float_t AliAnalysisTaskMuonHadronCorrelations::GetV0Multiplicity() {
Float_t multiplicity=0;
for (Int_t iChannel=0; iChannel<64; iChannel++) multiplicity += fAOD->GetVZEROData()->GetMultiplicity(iChannel);
return multiplicity;
}
TObjArray* AliAnalysisTaskMuonHadronCorrelations::GetAcceptedTracksCentralBarrel(AliAODEvent *aodEvent) {
TObjArray *tracks = new TObjArray;
tracks->SetOwner(kTRUE);
Int_t nTracks = aodEvent->GetNumberOfTracks();
AliAODTrack *track = 0;
for (Int_t iTrack=0; iTrack<nTracks; iTrack++) {
track = dynamic_cast<AliAODTrack*>(aodEvent->GetTrack(iTrack));
if(!track) AliFatal("Not a standard AOD");
if (track->TestFilterBit(fFilterBitCentralBarrel) && track->Eta()>fMinEtaCentralBarrel && track->Eta()<fMaxEtaCentralBarrel) {
tracks->Add(new AliAODTrack(*track));
}
}
return tracks;
}
TObjArray* AliAnalysisTaskMuonHadronCorrelations::GetAcceptedTracksMuonArm(AliAODEvent *aodEvent, Int_t centBin) {
TObjArray *tracks = new TObjArray;
tracks->SetOwner(kFALSE);
Int_t nTracks = aodEvent->GetNumberOfTracks();
AliAODTrack *track = 0;
for (Int_t iTrack=0; iTrack<nTracks; iTrack++) {
track = dynamic_cast<AliAODTrack*>(aodEvent->GetTrack(iTrack));
if(!track) AliFatal("Not a standard AOD");
if (track->IsMuonTrack()) fHistSingleMuonsTrigMatch[centBin]->Fill(track->GetMatchTrigger());
if (track->IsMuonTrack() && track->GetMatchTrigger()>=fTriggerMatchLevelMuon) {
fHistSingleMuonsChi2[centBin]->Fill(track->Chi2perNDF());
fHistSingleMuonsEtaVsPt[centBin]->Fill(track->Eta(),track->Pt());
fHistSingleMuonsEtaVsRAbs[centBin]->Fill(track->Eta(),track->GetRAtAbsorberEnd());
if (track->Eta() > -4. && track->Eta() < -2.5) {
Double_t rabs = track->GetRAtAbsorberEnd();
if (rabs > 17.6 && rabs < 89.5) {
tracks->Add(new AliAODTrack(*track));
}
}
}
}
return tracks;
}
void AliAnalysisTaskMuonHadronCorrelations::SetCentBinning(Int_t nBins, Double_t *limits) {
if (nBins>fNMaxBinsCentrality) {
AliInfo(Form("WARNING : only %d centrality bins (out of the %d proposed) will be considered",fNMaxBinsCentrality,nBins));
nBins = fNMaxBinsCentrality;
}
if (nBins<=0) {
AliInfo("WARNING : at least one centrality bin must be considered");
nBins = 1;
}
fNbinsCent = nBins;
fCentAxis = new TAxis(fNbinsCent, limits);
}
void AliAnalysisTaskMuonHadronCorrelations::SetPtBinning(Int_t nBins, Double_t *limits) {
if (nBins>fNMaxBinsPt) {
AliInfo(Form("WARNING : only %d pt bins (out of the %d proposed) will be considered",fNMaxBinsPt,nBins));
nBins = fNMaxBinsPt;
}
if (nBins<=0) {
AliInfo("WARNING : at least one pt bin must be considered");
nBins = 1;
}
fNbinsPt = nBins;
fPtAxis = new TAxis(fNbinsPt, limits);
}
void AliAnalysisTaskMuonHadronCorrelations::SetEtaBinning(Int_t nBins, Double_t *limits) {
if (nBins>fNMaxBinsEta) {
AliInfo(Form("WARNING : only %d pt bins (out of the %d proposed) will be considered",fNMaxBinsEta,nBins));
nBins = fNMaxBinsEta;
}
if (nBins<=0) {
AliInfo("WARNING : at least one pt bin must be considered");
nBins = 1;
}
fEtaAxis = new TAxis(nBins, limits);
}
Int_t AliAnalysisTaskMuonHadronCorrelations::GetCentBin() {
Double_t percentile = fAOD->GetCentrality()->GetCentralityPercentile(fCentMethod.Data());
Int_t bin = fCentAxis->FindBin(percentile) - 1;
if (bin >= fNbinsCent) bin = -1;
return bin;
}
Double_t AliAnalysisTaskMuonHadronCorrelations::GetITSMultiplicity() {
Double_t multiplicity = ((AliVAODHeader*)fAOD->GetHeader())->GetNumberOfITSClusters(1);
return multiplicity;
}
void AliAnalysisTaskMuonHadronCorrelations::Terminate(Option_t *) {
fOutputList = dynamic_cast<TList*> (GetOutputData(1));
if (!fOutputList) {
printf("ERROR: Output list not available\n");
return;
}
}
AliAnalysisTaskMuonHadronCorrelations.cxx:1 AliAnalysisTaskMuonHadronCorrelations.cxx:2 AliAnalysisTaskMuonHadronCorrelations.cxx:3 AliAnalysisTaskMuonHadronCorrelations.cxx:4 AliAnalysisTaskMuonHadronCorrelations.cxx:5 AliAnalysisTaskMuonHadronCorrelations.cxx:6 AliAnalysisTaskMuonHadronCorrelations.cxx:7 AliAnalysisTaskMuonHadronCorrelations.cxx:8 AliAnalysisTaskMuonHadronCorrelations.cxx:9 AliAnalysisTaskMuonHadronCorrelations.cxx:10 AliAnalysisTaskMuonHadronCorrelations.cxx:11 AliAnalysisTaskMuonHadronCorrelations.cxx:12 AliAnalysisTaskMuonHadronCorrelations.cxx:13 AliAnalysisTaskMuonHadronCorrelations.cxx:14 AliAnalysisTaskMuonHadronCorrelations.cxx:15 AliAnalysisTaskMuonHadronCorrelations.cxx:16 AliAnalysisTaskMuonHadronCorrelations.cxx:17 AliAnalysisTaskMuonHadronCorrelations.cxx:18 AliAnalysisTaskMuonHadronCorrelations.cxx:19 AliAnalysisTaskMuonHadronCorrelations.cxx:20 AliAnalysisTaskMuonHadronCorrelations.cxx:21 AliAnalysisTaskMuonHadronCorrelations.cxx:22 AliAnalysisTaskMuonHadronCorrelations.cxx:23 AliAnalysisTaskMuonHadronCorrelations.cxx:24 AliAnalysisTaskMuonHadronCorrelations.cxx:25 AliAnalysisTaskMuonHadronCorrelations.cxx:26 AliAnalysisTaskMuonHadronCorrelations.cxx:27 AliAnalysisTaskMuonHadronCorrelations.cxx:28 AliAnalysisTaskMuonHadronCorrelations.cxx:29 AliAnalysisTaskMuonHadronCorrelations.cxx:30 AliAnalysisTaskMuonHadronCorrelations.cxx:31 AliAnalysisTaskMuonHadronCorrelations.cxx:32 AliAnalysisTaskMuonHadronCorrelations.cxx:33 AliAnalysisTaskMuonHadronCorrelations.cxx:34 AliAnalysisTaskMuonHadronCorrelations.cxx:35 AliAnalysisTaskMuonHadronCorrelations.cxx:36 AliAnalysisTaskMuonHadronCorrelations.cxx:37 AliAnalysisTaskMuonHadronCorrelations.cxx:38 AliAnalysisTaskMuonHadronCorrelations.cxx:39 AliAnalysisTaskMuonHadronCorrelations.cxx:40 AliAnalysisTaskMuonHadronCorrelations.cxx:41 AliAnalysisTaskMuonHadronCorrelations.cxx:42 AliAnalysisTaskMuonHadronCorrelations.cxx:43 AliAnalysisTaskMuonHadronCorrelations.cxx:44 AliAnalysisTaskMuonHadronCorrelations.cxx:45 AliAnalysisTaskMuonHadronCorrelations.cxx:46 AliAnalysisTaskMuonHadronCorrelations.cxx:47 AliAnalysisTaskMuonHadronCorrelations.cxx:48 AliAnalysisTaskMuonHadronCorrelations.cxx:49 AliAnalysisTaskMuonHadronCorrelations.cxx:50 AliAnalysisTaskMuonHadronCorrelations.cxx:51 AliAnalysisTaskMuonHadronCorrelations.cxx:52 AliAnalysisTaskMuonHadronCorrelations.cxx:53 AliAnalysisTaskMuonHadronCorrelations.cxx:54 AliAnalysisTaskMuonHadronCorrelations.cxx:55 AliAnalysisTaskMuonHadronCorrelations.cxx:56 AliAnalysisTaskMuonHadronCorrelations.cxx:57 AliAnalysisTaskMuonHadronCorrelations.cxx:58 AliAnalysisTaskMuonHadronCorrelations.cxx:59 AliAnalysisTaskMuonHadronCorrelations.cxx:60 AliAnalysisTaskMuonHadronCorrelations.cxx:61 AliAnalysisTaskMuonHadronCorrelations.cxx:62 AliAnalysisTaskMuonHadronCorrelations.cxx:63 AliAnalysisTaskMuonHadronCorrelations.cxx:64 AliAnalysisTaskMuonHadronCorrelations.cxx:65 AliAnalysisTaskMuonHadronCorrelations.cxx:66 AliAnalysisTaskMuonHadronCorrelations.cxx:67 AliAnalysisTaskMuonHadronCorrelations.cxx:68 AliAnalysisTaskMuonHadronCorrelations.cxx:69 AliAnalysisTaskMuonHadronCorrelations.cxx:70 AliAnalysisTaskMuonHadronCorrelations.cxx:71 AliAnalysisTaskMuonHadronCorrelations.cxx:72 AliAnalysisTaskMuonHadronCorrelations.cxx:73 AliAnalysisTaskMuonHadronCorrelations.cxx:74 AliAnalysisTaskMuonHadronCorrelations.cxx:75 AliAnalysisTaskMuonHadronCorrelations.cxx:76 AliAnalysisTaskMuonHadronCorrelations.cxx:77 AliAnalysisTaskMuonHadronCorrelations.cxx:78 AliAnalysisTaskMuonHadronCorrelations.cxx:79 AliAnalysisTaskMuonHadronCorrelations.cxx:80 AliAnalysisTaskMuonHadronCorrelations.cxx:81 AliAnalysisTaskMuonHadronCorrelations.cxx:82 AliAnalysisTaskMuonHadronCorrelations.cxx:83 AliAnalysisTaskMuonHadronCorrelations.cxx:84 AliAnalysisTaskMuonHadronCorrelations.cxx:85 AliAnalysisTaskMuonHadronCorrelations.cxx:86 AliAnalysisTaskMuonHadronCorrelations.cxx:87 AliAnalysisTaskMuonHadronCorrelations.cxx:88 AliAnalysisTaskMuonHadronCorrelations.cxx:89 AliAnalysisTaskMuonHadronCorrelations.cxx:90 AliAnalysisTaskMuonHadronCorrelations.cxx:91 AliAnalysisTaskMuonHadronCorrelations.cxx:92 AliAnalysisTaskMuonHadronCorrelations.cxx:93 AliAnalysisTaskMuonHadronCorrelations.cxx:94 AliAnalysisTaskMuonHadronCorrelations.cxx:95 AliAnalysisTaskMuonHadronCorrelations.cxx:96 AliAnalysisTaskMuonHadronCorrelations.cxx:97 AliAnalysisTaskMuonHadronCorrelations.cxx:98 AliAnalysisTaskMuonHadronCorrelations.cxx:99 AliAnalysisTaskMuonHadronCorrelations.cxx:100 AliAnalysisTaskMuonHadronCorrelations.cxx:101 AliAnalysisTaskMuonHadronCorrelations.cxx:102 AliAnalysisTaskMuonHadronCorrelations.cxx:103 AliAnalysisTaskMuonHadronCorrelations.cxx:104 AliAnalysisTaskMuonHadronCorrelations.cxx:105 AliAnalysisTaskMuonHadronCorrelations.cxx:106 AliAnalysisTaskMuonHadronCorrelations.cxx:107 AliAnalysisTaskMuonHadronCorrelations.cxx:108 AliAnalysisTaskMuonHadronCorrelations.cxx:109 AliAnalysisTaskMuonHadronCorrelations.cxx:110 AliAnalysisTaskMuonHadronCorrelations.cxx:111 AliAnalysisTaskMuonHadronCorrelations.cxx:112 AliAnalysisTaskMuonHadronCorrelations.cxx:113 AliAnalysisTaskMuonHadronCorrelations.cxx:114 AliAnalysisTaskMuonHadronCorrelations.cxx:115 AliAnalysisTaskMuonHadronCorrelations.cxx:116 AliAnalysisTaskMuonHadronCorrelations.cxx:117 AliAnalysisTaskMuonHadronCorrelations.cxx:118 AliAnalysisTaskMuonHadronCorrelations.cxx:119 AliAnalysisTaskMuonHadronCorrelations.cxx:120 AliAnalysisTaskMuonHadronCorrelations.cxx:121 AliAnalysisTaskMuonHadronCorrelations.cxx:122 AliAnalysisTaskMuonHadronCorrelations.cxx:123 AliAnalysisTaskMuonHadronCorrelations.cxx:124 AliAnalysisTaskMuonHadronCorrelations.cxx:125 AliAnalysisTaskMuonHadronCorrelations.cxx:126 AliAnalysisTaskMuonHadronCorrelations.cxx:127 AliAnalysisTaskMuonHadronCorrelations.cxx:128 AliAnalysisTaskMuonHadronCorrelations.cxx:129 AliAnalysisTaskMuonHadronCorrelations.cxx:130 AliAnalysisTaskMuonHadronCorrelations.cxx:131 AliAnalysisTaskMuonHadronCorrelations.cxx:132 AliAnalysisTaskMuonHadronCorrelations.cxx:133 AliAnalysisTaskMuonHadronCorrelations.cxx:134 AliAnalysisTaskMuonHadronCorrelations.cxx:135 AliAnalysisTaskMuonHadronCorrelations.cxx:136 AliAnalysisTaskMuonHadronCorrelations.cxx:137 AliAnalysisTaskMuonHadronCorrelations.cxx:138 AliAnalysisTaskMuonHadronCorrelations.cxx:139 AliAnalysisTaskMuonHadronCorrelations.cxx:140 AliAnalysisTaskMuonHadronCorrelations.cxx:141 AliAnalysisTaskMuonHadronCorrelations.cxx:142 AliAnalysisTaskMuonHadronCorrelations.cxx:143 AliAnalysisTaskMuonHadronCorrelations.cxx:144 AliAnalysisTaskMuonHadronCorrelations.cxx:145 AliAnalysisTaskMuonHadronCorrelations.cxx:146 AliAnalysisTaskMuonHadronCorrelations.cxx:147 AliAnalysisTaskMuonHadronCorrelations.cxx:148 AliAnalysisTaskMuonHadronCorrelations.cxx:149 AliAnalysisTaskMuonHadronCorrelations.cxx:150 AliAnalysisTaskMuonHadronCorrelations.cxx:151 AliAnalysisTaskMuonHadronCorrelations.cxx:152 AliAnalysisTaskMuonHadronCorrelations.cxx:153 AliAnalysisTaskMuonHadronCorrelations.cxx:154 AliAnalysisTaskMuonHadronCorrelations.cxx:155 AliAnalysisTaskMuonHadronCorrelations.cxx:156 AliAnalysisTaskMuonHadronCorrelations.cxx:157 AliAnalysisTaskMuonHadronCorrelations.cxx:158 AliAnalysisTaskMuonHadronCorrelations.cxx:159 AliAnalysisTaskMuonHadronCorrelations.cxx:160 AliAnalysisTaskMuonHadronCorrelations.cxx:161 AliAnalysisTaskMuonHadronCorrelations.cxx:162 AliAnalysisTaskMuonHadronCorrelations.cxx:163 AliAnalysisTaskMuonHadronCorrelations.cxx:164 AliAnalysisTaskMuonHadronCorrelations.cxx:165 AliAnalysisTaskMuonHadronCorrelations.cxx:166 AliAnalysisTaskMuonHadronCorrelations.cxx:167 AliAnalysisTaskMuonHadronCorrelations.cxx:168 AliAnalysisTaskMuonHadronCorrelations.cxx:169 AliAnalysisTaskMuonHadronCorrelations.cxx:170 AliAnalysisTaskMuonHadronCorrelations.cxx:171 AliAnalysisTaskMuonHadronCorrelations.cxx:172 AliAnalysisTaskMuonHadronCorrelations.cxx:173 AliAnalysisTaskMuonHadronCorrelations.cxx:174 AliAnalysisTaskMuonHadronCorrelations.cxx:175 AliAnalysisTaskMuonHadronCorrelations.cxx:176 AliAnalysisTaskMuonHadronCorrelations.cxx:177 AliAnalysisTaskMuonHadronCorrelations.cxx:178 AliAnalysisTaskMuonHadronCorrelations.cxx:179 AliAnalysisTaskMuonHadronCorrelations.cxx:180 AliAnalysisTaskMuonHadronCorrelations.cxx:181 AliAnalysisTaskMuonHadronCorrelations.cxx:182 AliAnalysisTaskMuonHadronCorrelations.cxx:183 AliAnalysisTaskMuonHadronCorrelations.cxx:184 AliAnalysisTaskMuonHadronCorrelations.cxx:185 AliAnalysisTaskMuonHadronCorrelations.cxx:186 AliAnalysisTaskMuonHadronCorrelations.cxx:187 AliAnalysisTaskMuonHadronCorrelations.cxx:188 AliAnalysisTaskMuonHadronCorrelations.cxx:189 AliAnalysisTaskMuonHadronCorrelations.cxx:190 AliAnalysisTaskMuonHadronCorrelations.cxx:191 AliAnalysisTaskMuonHadronCorrelations.cxx:192 AliAnalysisTaskMuonHadronCorrelations.cxx:193 AliAnalysisTaskMuonHadronCorrelations.cxx:194 AliAnalysisTaskMuonHadronCorrelations.cxx:195 AliAnalysisTaskMuonHadronCorrelations.cxx:196 AliAnalysisTaskMuonHadronCorrelations.cxx:197 AliAnalysisTaskMuonHadronCorrelations.cxx:198 AliAnalysisTaskMuonHadronCorrelations.cxx:199 AliAnalysisTaskMuonHadronCorrelations.cxx:200 AliAnalysisTaskMuonHadronCorrelations.cxx:201 AliAnalysisTaskMuonHadronCorrelations.cxx:202 AliAnalysisTaskMuonHadronCorrelations.cxx:203 AliAnalysisTaskMuonHadronCorrelations.cxx:204 AliAnalysisTaskMuonHadronCorrelations.cxx:205 AliAnalysisTaskMuonHadronCorrelations.cxx:206 AliAnalysisTaskMuonHadronCorrelations.cxx:207 AliAnalysisTaskMuonHadronCorrelations.cxx:208 AliAnalysisTaskMuonHadronCorrelations.cxx:209 AliAnalysisTaskMuonHadronCorrelations.cxx:210 AliAnalysisTaskMuonHadronCorrelations.cxx:211 AliAnalysisTaskMuonHadronCorrelations.cxx:212 AliAnalysisTaskMuonHadronCorrelations.cxx:213 AliAnalysisTaskMuonHadronCorrelations.cxx:214 AliAnalysisTaskMuonHadronCorrelations.cxx:215 AliAnalysisTaskMuonHadronCorrelations.cxx:216 AliAnalysisTaskMuonHadronCorrelations.cxx:217 AliAnalysisTaskMuonHadronCorrelations.cxx:218 AliAnalysisTaskMuonHadronCorrelations.cxx:219 AliAnalysisTaskMuonHadronCorrelations.cxx:220 AliAnalysisTaskMuonHadronCorrelations.cxx:221 AliAnalysisTaskMuonHadronCorrelations.cxx:222 AliAnalysisTaskMuonHadronCorrelations.cxx:223 AliAnalysisTaskMuonHadronCorrelations.cxx:224 AliAnalysisTaskMuonHadronCorrelations.cxx:225 AliAnalysisTaskMuonHadronCorrelations.cxx:226 AliAnalysisTaskMuonHadronCorrelations.cxx:227 AliAnalysisTaskMuonHadronCorrelations.cxx:228 AliAnalysisTaskMuonHadronCorrelations.cxx:229 AliAnalysisTaskMuonHadronCorrelations.cxx:230 AliAnalysisTaskMuonHadronCorrelations.cxx:231 AliAnalysisTaskMuonHadronCorrelations.cxx:232 AliAnalysisTaskMuonHadronCorrelations.cxx:233 AliAnalysisTaskMuonHadronCorrelations.cxx:234 AliAnalysisTaskMuonHadronCorrelations.cxx:235 AliAnalysisTaskMuonHadronCorrelations.cxx:236 AliAnalysisTaskMuonHadronCorrelations.cxx:237 AliAnalysisTaskMuonHadronCorrelations.cxx:238 AliAnalysisTaskMuonHadronCorrelations.cxx:239 AliAnalysisTaskMuonHadronCorrelations.cxx:240 AliAnalysisTaskMuonHadronCorrelations.cxx:241 AliAnalysisTaskMuonHadronCorrelations.cxx:242 AliAnalysisTaskMuonHadronCorrelations.cxx:243 AliAnalysisTaskMuonHadronCorrelations.cxx:244 AliAnalysisTaskMuonHadronCorrelations.cxx:245 AliAnalysisTaskMuonHadronCorrelations.cxx:246 AliAnalysisTaskMuonHadronCorrelations.cxx:247 AliAnalysisTaskMuonHadronCorrelations.cxx:248 AliAnalysisTaskMuonHadronCorrelations.cxx:249 AliAnalysisTaskMuonHadronCorrelations.cxx:250 AliAnalysisTaskMuonHadronCorrelations.cxx:251 AliAnalysisTaskMuonHadronCorrelations.cxx:252 AliAnalysisTaskMuonHadronCorrelations.cxx:253 AliAnalysisTaskMuonHadronCorrelations.cxx:254 AliAnalysisTaskMuonHadronCorrelations.cxx:255 AliAnalysisTaskMuonHadronCorrelations.cxx:256 AliAnalysisTaskMuonHadronCorrelations.cxx:257 AliAnalysisTaskMuonHadronCorrelations.cxx:258 AliAnalysisTaskMuonHadronCorrelations.cxx:259 AliAnalysisTaskMuonHadronCorrelations.cxx:260 AliAnalysisTaskMuonHadronCorrelations.cxx:261 AliAnalysisTaskMuonHadronCorrelations.cxx:262 AliAnalysisTaskMuonHadronCorrelations.cxx:263 AliAnalysisTaskMuonHadronCorrelations.cxx:264 AliAnalysisTaskMuonHadronCorrelations.cxx:265 AliAnalysisTaskMuonHadronCorrelations.cxx:266 AliAnalysisTaskMuonHadronCorrelations.cxx:267 AliAnalysisTaskMuonHadronCorrelations.cxx:268 AliAnalysisTaskMuonHadronCorrelations.cxx:269 AliAnalysisTaskMuonHadronCorrelations.cxx:270 AliAnalysisTaskMuonHadronCorrelations.cxx:271 AliAnalysisTaskMuonHadronCorrelations.cxx:272 AliAnalysisTaskMuonHadronCorrelations.cxx:273 AliAnalysisTaskMuonHadronCorrelations.cxx:274 AliAnalysisTaskMuonHadronCorrelations.cxx:275 AliAnalysisTaskMuonHadronCorrelations.cxx:276 AliAnalysisTaskMuonHadronCorrelations.cxx:277 AliAnalysisTaskMuonHadronCorrelations.cxx:278 AliAnalysisTaskMuonHadronCorrelations.cxx:279 AliAnalysisTaskMuonHadronCorrelations.cxx:280 AliAnalysisTaskMuonHadronCorrelations.cxx:281 AliAnalysisTaskMuonHadronCorrelations.cxx:282 AliAnalysisTaskMuonHadronCorrelations.cxx:283 AliAnalysisTaskMuonHadronCorrelations.cxx:284 AliAnalysisTaskMuonHadronCorrelations.cxx:285 AliAnalysisTaskMuonHadronCorrelations.cxx:286 AliAnalysisTaskMuonHadronCorrelations.cxx:287 AliAnalysisTaskMuonHadronCorrelations.cxx:288 AliAnalysisTaskMuonHadronCorrelations.cxx:289 AliAnalysisTaskMuonHadronCorrelations.cxx:290 AliAnalysisTaskMuonHadronCorrelations.cxx:291 AliAnalysisTaskMuonHadronCorrelations.cxx:292 AliAnalysisTaskMuonHadronCorrelations.cxx:293 AliAnalysisTaskMuonHadronCorrelations.cxx:294 AliAnalysisTaskMuonHadronCorrelations.cxx:295 AliAnalysisTaskMuonHadronCorrelations.cxx:296 AliAnalysisTaskMuonHadronCorrelations.cxx:297 AliAnalysisTaskMuonHadronCorrelations.cxx:298 AliAnalysisTaskMuonHadronCorrelations.cxx:299 AliAnalysisTaskMuonHadronCorrelations.cxx:300 AliAnalysisTaskMuonHadronCorrelations.cxx:301 AliAnalysisTaskMuonHadronCorrelations.cxx:302 AliAnalysisTaskMuonHadronCorrelations.cxx:303 AliAnalysisTaskMuonHadronCorrelations.cxx:304 AliAnalysisTaskMuonHadronCorrelations.cxx:305 AliAnalysisTaskMuonHadronCorrelations.cxx:306 AliAnalysisTaskMuonHadronCorrelations.cxx:307 AliAnalysisTaskMuonHadronCorrelations.cxx:308 AliAnalysisTaskMuonHadronCorrelations.cxx:309 AliAnalysisTaskMuonHadronCorrelations.cxx:310 AliAnalysisTaskMuonHadronCorrelations.cxx:311 AliAnalysisTaskMuonHadronCorrelations.cxx:312 AliAnalysisTaskMuonHadronCorrelations.cxx:313 AliAnalysisTaskMuonHadronCorrelations.cxx:314 AliAnalysisTaskMuonHadronCorrelations.cxx:315 AliAnalysisTaskMuonHadronCorrelations.cxx:316 AliAnalysisTaskMuonHadronCorrelations.cxx:317 AliAnalysisTaskMuonHadronCorrelations.cxx:318 AliAnalysisTaskMuonHadronCorrelations.cxx:319 AliAnalysisTaskMuonHadronCorrelations.cxx:320 AliAnalysisTaskMuonHadronCorrelations.cxx:321 AliAnalysisTaskMuonHadronCorrelations.cxx:322 AliAnalysisTaskMuonHadronCorrelations.cxx:323 AliAnalysisTaskMuonHadronCorrelations.cxx:324 AliAnalysisTaskMuonHadronCorrelations.cxx:325 AliAnalysisTaskMuonHadronCorrelations.cxx:326 AliAnalysisTaskMuonHadronCorrelations.cxx:327 AliAnalysisTaskMuonHadronCorrelations.cxx:328 AliAnalysisTaskMuonHadronCorrelations.cxx:329 AliAnalysisTaskMuonHadronCorrelations.cxx:330 AliAnalysisTaskMuonHadronCorrelations.cxx:331 AliAnalysisTaskMuonHadronCorrelations.cxx:332 AliAnalysisTaskMuonHadronCorrelations.cxx:333 AliAnalysisTaskMuonHadronCorrelations.cxx:334 AliAnalysisTaskMuonHadronCorrelations.cxx:335 AliAnalysisTaskMuonHadronCorrelations.cxx:336 AliAnalysisTaskMuonHadronCorrelations.cxx:337 AliAnalysisTaskMuonHadronCorrelations.cxx:338 AliAnalysisTaskMuonHadronCorrelations.cxx:339 AliAnalysisTaskMuonHadronCorrelations.cxx:340 AliAnalysisTaskMuonHadronCorrelations.cxx:341 AliAnalysisTaskMuonHadronCorrelations.cxx:342 AliAnalysisTaskMuonHadronCorrelations.cxx:343 AliAnalysisTaskMuonHadronCorrelations.cxx:344 AliAnalysisTaskMuonHadronCorrelations.cxx:345 AliAnalysisTaskMuonHadronCorrelations.cxx:346 AliAnalysisTaskMuonHadronCorrelations.cxx:347 AliAnalysisTaskMuonHadronCorrelations.cxx:348 AliAnalysisTaskMuonHadronCorrelations.cxx:349 AliAnalysisTaskMuonHadronCorrelations.cxx:350 AliAnalysisTaskMuonHadronCorrelations.cxx:351 AliAnalysisTaskMuonHadronCorrelations.cxx:352 AliAnalysisTaskMuonHadronCorrelations.cxx:353 AliAnalysisTaskMuonHadronCorrelations.cxx:354 AliAnalysisTaskMuonHadronCorrelations.cxx:355 AliAnalysisTaskMuonHadronCorrelations.cxx:356 AliAnalysisTaskMuonHadronCorrelations.cxx:357 AliAnalysisTaskMuonHadronCorrelations.cxx:358 AliAnalysisTaskMuonHadronCorrelations.cxx:359 AliAnalysisTaskMuonHadronCorrelations.cxx:360 AliAnalysisTaskMuonHadronCorrelations.cxx:361 AliAnalysisTaskMuonHadronCorrelations.cxx:362 AliAnalysisTaskMuonHadronCorrelations.cxx:363 AliAnalysisTaskMuonHadronCorrelations.cxx:364 AliAnalysisTaskMuonHadronCorrelations.cxx:365 AliAnalysisTaskMuonHadronCorrelations.cxx:366 AliAnalysisTaskMuonHadronCorrelations.cxx:367 AliAnalysisTaskMuonHadronCorrelations.cxx:368 AliAnalysisTaskMuonHadronCorrelations.cxx:369 AliAnalysisTaskMuonHadronCorrelations.cxx:370 AliAnalysisTaskMuonHadronCorrelations.cxx:371 AliAnalysisTaskMuonHadronCorrelations.cxx:372 AliAnalysisTaskMuonHadronCorrelations.cxx:373 AliAnalysisTaskMuonHadronCorrelations.cxx:374 AliAnalysisTaskMuonHadronCorrelations.cxx:375 AliAnalysisTaskMuonHadronCorrelations.cxx:376 AliAnalysisTaskMuonHadronCorrelations.cxx:377 AliAnalysisTaskMuonHadronCorrelations.cxx:378 AliAnalysisTaskMuonHadronCorrelations.cxx:379 AliAnalysisTaskMuonHadronCorrelations.cxx:380 AliAnalysisTaskMuonHadronCorrelations.cxx:381 AliAnalysisTaskMuonHadronCorrelations.cxx:382 AliAnalysisTaskMuonHadronCorrelations.cxx:383 AliAnalysisTaskMuonHadronCorrelations.cxx:384 AliAnalysisTaskMuonHadronCorrelations.cxx:385 AliAnalysisTaskMuonHadronCorrelations.cxx:386 AliAnalysisTaskMuonHadronCorrelations.cxx:387 AliAnalysisTaskMuonHadronCorrelations.cxx:388 AliAnalysisTaskMuonHadronCorrelations.cxx:389 AliAnalysisTaskMuonHadronCorrelations.cxx:390 AliAnalysisTaskMuonHadronCorrelations.cxx:391 AliAnalysisTaskMuonHadronCorrelations.cxx:392 AliAnalysisTaskMuonHadronCorrelations.cxx:393 AliAnalysisTaskMuonHadronCorrelations.cxx:394 AliAnalysisTaskMuonHadronCorrelations.cxx:395 AliAnalysisTaskMuonHadronCorrelations.cxx:396 AliAnalysisTaskMuonHadronCorrelations.cxx:397 AliAnalysisTaskMuonHadronCorrelations.cxx:398 AliAnalysisTaskMuonHadronCorrelations.cxx:399 AliAnalysisTaskMuonHadronCorrelations.cxx:400 AliAnalysisTaskMuonHadronCorrelations.cxx:401 AliAnalysisTaskMuonHadronCorrelations.cxx:402 AliAnalysisTaskMuonHadronCorrelations.cxx:403 AliAnalysisTaskMuonHadronCorrelations.cxx:404 AliAnalysisTaskMuonHadronCorrelations.cxx:405 AliAnalysisTaskMuonHadronCorrelations.cxx:406 AliAnalysisTaskMuonHadronCorrelations.cxx:407 AliAnalysisTaskMuonHadronCorrelations.cxx:408 AliAnalysisTaskMuonHadronCorrelations.cxx:409 AliAnalysisTaskMuonHadronCorrelations.cxx:410 AliAnalysisTaskMuonHadronCorrelations.cxx:411 AliAnalysisTaskMuonHadronCorrelations.cxx:412 AliAnalysisTaskMuonHadronCorrelations.cxx:413 AliAnalysisTaskMuonHadronCorrelations.cxx:414 AliAnalysisTaskMuonHadronCorrelations.cxx:415 AliAnalysisTaskMuonHadronCorrelations.cxx:416 AliAnalysisTaskMuonHadronCorrelations.cxx:417 AliAnalysisTaskMuonHadronCorrelations.cxx:418 AliAnalysisTaskMuonHadronCorrelations.cxx:419 AliAnalysisTaskMuonHadronCorrelations.cxx:420 AliAnalysisTaskMuonHadronCorrelations.cxx:421 AliAnalysisTaskMuonHadronCorrelations.cxx:422 AliAnalysisTaskMuonHadronCorrelations.cxx:423 AliAnalysisTaskMuonHadronCorrelations.cxx:424 AliAnalysisTaskMuonHadronCorrelations.cxx:425 AliAnalysisTaskMuonHadronCorrelations.cxx:426 AliAnalysisTaskMuonHadronCorrelations.cxx:427 AliAnalysisTaskMuonHadronCorrelations.cxx:428 AliAnalysisTaskMuonHadronCorrelations.cxx:429 AliAnalysisTaskMuonHadronCorrelations.cxx:430 AliAnalysisTaskMuonHadronCorrelations.cxx:431 AliAnalysisTaskMuonHadronCorrelations.cxx:432 AliAnalysisTaskMuonHadronCorrelations.cxx:433 AliAnalysisTaskMuonHadronCorrelations.cxx:434 AliAnalysisTaskMuonHadronCorrelations.cxx:435 AliAnalysisTaskMuonHadronCorrelations.cxx:436 AliAnalysisTaskMuonHadronCorrelations.cxx:437 AliAnalysisTaskMuonHadronCorrelations.cxx:438 AliAnalysisTaskMuonHadronCorrelations.cxx:439 AliAnalysisTaskMuonHadronCorrelations.cxx:440 AliAnalysisTaskMuonHadronCorrelations.cxx:441 AliAnalysisTaskMuonHadronCorrelations.cxx:442 AliAnalysisTaskMuonHadronCorrelations.cxx:443 AliAnalysisTaskMuonHadronCorrelations.cxx:444 AliAnalysisTaskMuonHadronCorrelations.cxx:445 AliAnalysisTaskMuonHadronCorrelations.cxx:446 AliAnalysisTaskMuonHadronCorrelations.cxx:447 AliAnalysisTaskMuonHadronCorrelations.cxx:448 AliAnalysisTaskMuonHadronCorrelations.cxx:449 AliAnalysisTaskMuonHadronCorrelations.cxx:450 AliAnalysisTaskMuonHadronCorrelations.cxx:451 AliAnalysisTaskMuonHadronCorrelations.cxx:452 AliAnalysisTaskMuonHadronCorrelations.cxx:453 AliAnalysisTaskMuonHadronCorrelations.cxx:454 AliAnalysisTaskMuonHadronCorrelations.cxx:455 AliAnalysisTaskMuonHadronCorrelations.cxx:456 AliAnalysisTaskMuonHadronCorrelations.cxx:457 AliAnalysisTaskMuonHadronCorrelations.cxx:458 AliAnalysisTaskMuonHadronCorrelations.cxx:459 AliAnalysisTaskMuonHadronCorrelations.cxx:460 AliAnalysisTaskMuonHadronCorrelations.cxx:461 AliAnalysisTaskMuonHadronCorrelations.cxx:462 AliAnalysisTaskMuonHadronCorrelations.cxx:463 AliAnalysisTaskMuonHadronCorrelations.cxx:464 AliAnalysisTaskMuonHadronCorrelations.cxx:465 AliAnalysisTaskMuonHadronCorrelations.cxx:466 AliAnalysisTaskMuonHadronCorrelations.cxx:467 AliAnalysisTaskMuonHadronCorrelations.cxx:468 AliAnalysisTaskMuonHadronCorrelations.cxx:469 AliAnalysisTaskMuonHadronCorrelations.cxx:470 AliAnalysisTaskMuonHadronCorrelations.cxx:471 AliAnalysisTaskMuonHadronCorrelations.cxx:472 AliAnalysisTaskMuonHadronCorrelations.cxx:473 AliAnalysisTaskMuonHadronCorrelations.cxx:474 AliAnalysisTaskMuonHadronCorrelations.cxx:475 AliAnalysisTaskMuonHadronCorrelations.cxx:476 AliAnalysisTaskMuonHadronCorrelations.cxx:477 AliAnalysisTaskMuonHadronCorrelations.cxx:478 AliAnalysisTaskMuonHadronCorrelations.cxx:479 AliAnalysisTaskMuonHadronCorrelations.cxx:480 AliAnalysisTaskMuonHadronCorrelations.cxx:481 AliAnalysisTaskMuonHadronCorrelations.cxx:482 AliAnalysisTaskMuonHadronCorrelations.cxx:483 AliAnalysisTaskMuonHadronCorrelations.cxx:484 AliAnalysisTaskMuonHadronCorrelations.cxx:485 AliAnalysisTaskMuonHadronCorrelations.cxx:486 AliAnalysisTaskMuonHadronCorrelations.cxx:487 AliAnalysisTaskMuonHadronCorrelations.cxx:488 AliAnalysisTaskMuonHadronCorrelations.cxx:489 AliAnalysisTaskMuonHadronCorrelations.cxx:490 AliAnalysisTaskMuonHadronCorrelations.cxx:491 AliAnalysisTaskMuonHadronCorrelations.cxx:492 AliAnalysisTaskMuonHadronCorrelations.cxx:493 AliAnalysisTaskMuonHadronCorrelations.cxx:494 AliAnalysisTaskMuonHadronCorrelations.cxx:495 AliAnalysisTaskMuonHadronCorrelations.cxx:496 AliAnalysisTaskMuonHadronCorrelations.cxx:497 AliAnalysisTaskMuonHadronCorrelations.cxx:498 AliAnalysisTaskMuonHadronCorrelations.cxx:499 AliAnalysisTaskMuonHadronCorrelations.cxx:500 AliAnalysisTaskMuonHadronCorrelations.cxx:501 AliAnalysisTaskMuonHadronCorrelations.cxx:502 AliAnalysisTaskMuonHadronCorrelations.cxx:503 AliAnalysisTaskMuonHadronCorrelations.cxx:504 AliAnalysisTaskMuonHadronCorrelations.cxx:505 AliAnalysisTaskMuonHadronCorrelations.cxx:506 AliAnalysisTaskMuonHadronCorrelations.cxx:507 AliAnalysisTaskMuonHadronCorrelations.cxx:508 AliAnalysisTaskMuonHadronCorrelations.cxx:509 AliAnalysisTaskMuonHadronCorrelations.cxx:510 AliAnalysisTaskMuonHadronCorrelations.cxx:511 AliAnalysisTaskMuonHadronCorrelations.cxx:512 AliAnalysisTaskMuonHadronCorrelations.cxx:513 AliAnalysisTaskMuonHadronCorrelations.cxx:514 AliAnalysisTaskMuonHadronCorrelations.cxx:515 AliAnalysisTaskMuonHadronCorrelations.cxx:516 AliAnalysisTaskMuonHadronCorrelations.cxx:517 AliAnalysisTaskMuonHadronCorrelations.cxx:518 AliAnalysisTaskMuonHadronCorrelations.cxx:519 AliAnalysisTaskMuonHadronCorrelations.cxx:520 AliAnalysisTaskMuonHadronCorrelations.cxx:521 AliAnalysisTaskMuonHadronCorrelations.cxx:522 AliAnalysisTaskMuonHadronCorrelations.cxx:523 AliAnalysisTaskMuonHadronCorrelations.cxx:524 AliAnalysisTaskMuonHadronCorrelations.cxx:525 AliAnalysisTaskMuonHadronCorrelations.cxx:526 AliAnalysisTaskMuonHadronCorrelations.cxx:527 AliAnalysisTaskMuonHadronCorrelations.cxx:528 AliAnalysisTaskMuonHadronCorrelations.cxx:529 AliAnalysisTaskMuonHadronCorrelations.cxx:530 AliAnalysisTaskMuonHadronCorrelations.cxx:531 AliAnalysisTaskMuonHadronCorrelations.cxx:532 AliAnalysisTaskMuonHadronCorrelations.cxx:533 AliAnalysisTaskMuonHadronCorrelations.cxx:534 AliAnalysisTaskMuonHadronCorrelations.cxx:535 AliAnalysisTaskMuonHadronCorrelations.cxx:536 AliAnalysisTaskMuonHadronCorrelations.cxx:537 AliAnalysisTaskMuonHadronCorrelations.cxx:538 AliAnalysisTaskMuonHadronCorrelations.cxx:539 AliAnalysisTaskMuonHadronCorrelations.cxx:540 AliAnalysisTaskMuonHadronCorrelations.cxx:541 AliAnalysisTaskMuonHadronCorrelations.cxx:542 AliAnalysisTaskMuonHadronCorrelations.cxx:543 AliAnalysisTaskMuonHadronCorrelations.cxx:544 AliAnalysisTaskMuonHadronCorrelations.cxx:545 AliAnalysisTaskMuonHadronCorrelations.cxx:546 AliAnalysisTaskMuonHadronCorrelations.cxx:547 AliAnalysisTaskMuonHadronCorrelations.cxx:548 AliAnalysisTaskMuonHadronCorrelations.cxx:549 AliAnalysisTaskMuonHadronCorrelations.cxx:550 AliAnalysisTaskMuonHadronCorrelations.cxx:551 AliAnalysisTaskMuonHadronCorrelations.cxx:552 AliAnalysisTaskMuonHadronCorrelations.cxx:553 AliAnalysisTaskMuonHadronCorrelations.cxx:554 AliAnalysisTaskMuonHadronCorrelations.cxx:555 AliAnalysisTaskMuonHadronCorrelations.cxx:556 AliAnalysisTaskMuonHadronCorrelations.cxx:557 AliAnalysisTaskMuonHadronCorrelations.cxx:558 AliAnalysisTaskMuonHadronCorrelations.cxx:559 AliAnalysisTaskMuonHadronCorrelations.cxx:560 AliAnalysisTaskMuonHadronCorrelations.cxx:561 AliAnalysisTaskMuonHadronCorrelations.cxx:562 AliAnalysisTaskMuonHadronCorrelations.cxx:563 AliAnalysisTaskMuonHadronCorrelations.cxx:564 AliAnalysisTaskMuonHadronCorrelations.cxx:565 AliAnalysisTaskMuonHadronCorrelations.cxx:566 AliAnalysisTaskMuonHadronCorrelations.cxx:567 AliAnalysisTaskMuonHadronCorrelations.cxx:568 AliAnalysisTaskMuonHadronCorrelations.cxx:569 AliAnalysisTaskMuonHadronCorrelations.cxx:570 AliAnalysisTaskMuonHadronCorrelations.cxx:571 AliAnalysisTaskMuonHadronCorrelations.cxx:572 AliAnalysisTaskMuonHadronCorrelations.cxx:573 AliAnalysisTaskMuonHadronCorrelations.cxx:574 AliAnalysisTaskMuonHadronCorrelations.cxx:575 AliAnalysisTaskMuonHadronCorrelations.cxx:576 AliAnalysisTaskMuonHadronCorrelations.cxx:577 AliAnalysisTaskMuonHadronCorrelations.cxx:578 AliAnalysisTaskMuonHadronCorrelations.cxx:579 AliAnalysisTaskMuonHadronCorrelations.cxx:580 AliAnalysisTaskMuonHadronCorrelations.cxx:581 AliAnalysisTaskMuonHadronCorrelations.cxx:582 AliAnalysisTaskMuonHadronCorrelations.cxx:583 AliAnalysisTaskMuonHadronCorrelations.cxx:584 AliAnalysisTaskMuonHadronCorrelations.cxx:585 AliAnalysisTaskMuonHadronCorrelations.cxx:586 AliAnalysisTaskMuonHadronCorrelations.cxx:587 AliAnalysisTaskMuonHadronCorrelations.cxx:588 AliAnalysisTaskMuonHadronCorrelations.cxx:589 AliAnalysisTaskMuonHadronCorrelations.cxx:590 AliAnalysisTaskMuonHadronCorrelations.cxx:591 AliAnalysisTaskMuonHadronCorrelations.cxx:592 AliAnalysisTaskMuonHadronCorrelations.cxx:593 AliAnalysisTaskMuonHadronCorrelations.cxx:594 AliAnalysisTaskMuonHadronCorrelations.cxx:595 AliAnalysisTaskMuonHadronCorrelations.cxx:596 AliAnalysisTaskMuonHadronCorrelations.cxx:597 AliAnalysisTaskMuonHadronCorrelations.cxx:598 AliAnalysisTaskMuonHadronCorrelations.cxx:599 AliAnalysisTaskMuonHadronCorrelations.cxx:600