#include <Riostream.h>
#include <TTree.h>
#include <TChain.h>
#include <TString.h>
#include <AliLog.h>
#include <AliAnalysisTask.h>
#include <AliAnalysisManager.h>
#include <AliESD.h>
#include <AliESDEvent.h>
#include <AliESDInputHandler.h>
#include <AliESDtrackCuts.h>
#include <AliExternalTrackParam.h>
#include <AliMCEvent.h>
#include <AliMCEventHandler.h>
#include <AliMCVertex.h>
#include <AliStack.h>
#include <TParticle.h>
#include <TParticlePDG.h>
#include <TMCProcess.h>
#include <AliTriggerAnalysis.h>
#include <AliCentrality.h>
#include <AliESDUtils.h>
#include <AliESDpid.h>
#include <TH1D.h>
#include <TH2D.h>
#include <TList.h>
#include <TProfile.h>
#include <TFile.h>
#include "AliLnID.h"
#include "AliLnHistoMap.h"
#include "AliAnalysisTaskB2.h"
ClassImp(AliAnalysisTaskB2)
AliAnalysisTaskB2::AliAnalysisTaskB2()
: AliAnalysisTask()
, fSpecies("Proton")
, fPartCode(AliPID::kProton)
, fHeavyIons(0)
, fSimulation(0)
, fMultTriggerFired(0)
, fCentTriggerFired(0)
, fTriggerFired(0)
, fGoodVertex(0)
, fPileUpEvent(0)
, fV0AND(0)
, fNoFastOnly(0)
, fNtrkMultTrigger(0)
, fMinKNOmult(-10)
, fMaxKNOmult(100000)
, fMinCentrality(0)
, fMaxCentrality(100)
, fNch(0)
, fNtrk(0)
, fMeanNtrk(1)
, fKNOmult(1)
, fMinVx(-1)
, fMaxVx(1)
, fMinVy(-1)
, fMaxVy(1)
, fMinVz(-10)
, fMaxVz(10)
, fMinDCAxy(-1)
, fMaxDCAxy(1)
, fMinDCAz(-2)
, fMaxDCAz(2)
, fMaxNSigma(3)
, fMinEta(-0.8)
, fMaxEta(0.8)
, fMinY(-0.5)
, fMaxY(0.5)
, fMCevent(0)
, fESDevent(0)
, fOutputContainer(0)
, fHistoMap(0)
, fTrackCuts(0)
, fLnID(0)
, fMaxNSigmaITS(3)
, fMaxNSigmaTPC(3)
, fMaxNSigmaTOF(3)
, fTrigAna(0)
, fESDpid(0)
, fIsPidOwner(0)
, fTimeZeroType(AliESDpid::kTOF_T0)
, fTOFmatch(0)
, fMinM2(2.)
, fMaxM2(6.)
, fMomentumCorrection(0)
, fMoCpfx(0)
{
AliLog::SetGlobalLogLevel(AliLog::kFatal);
fTrigAna = new AliTriggerAnalysis();
}
AliAnalysisTaskB2::AliAnalysisTaskB2(const char* name)
: AliAnalysisTask(name,"")
, fSpecies("Proton")
, fPartCode(AliPID::kProton)
, fHeavyIons(0)
, fSimulation(0)
, fMultTriggerFired(0)
, fCentTriggerFired(0)
, fTriggerFired(0)
, fGoodVertex(0)
, fPileUpEvent(0)
, fV0AND(0)
, fNoFastOnly(0)
, fNtrkMultTrigger(0)
, fMinKNOmult(-10)
, fMaxKNOmult(100000)
, fMinCentrality(-1)
, fMaxCentrality(100)
, fNch(0)
, fNtrk(0)
, fMeanNtrk(1)
, fKNOmult(1)
, fMinVx(-1)
, fMaxVx(1)
, fMinVy(-1)
, fMaxVy(1)
, fMinVz(-10)
, fMaxVz(10)
, fMinDCAxy(-1)
, fMaxDCAxy(1)
, fMinDCAz(-2)
, fMaxDCAz(2)
, fMaxNSigma(3)
, fMinEta(-0.8)
, fMaxEta(0.8)
, fMinY(-0.5)
, fMaxY(0.5)
, fMCevent(0)
, fESDevent(0)
, fOutputContainer(0)
, fHistoMap(0)
, fTrackCuts(0)
, fLnID(0)
, fMaxNSigmaITS(3)
, fMaxNSigmaTPC(3)
, fMaxNSigmaTOF(3)
, fTrigAna(0)
, fESDpid(0)
, fIsPidOwner(0)
, fTimeZeroType(AliESDpid::kTOF_T0)
, fTOFmatch(0)
, fMinM2(2.)
, fMaxM2(6.)
, fMomentumCorrection(0)
, fMoCpfx(0)
{
DefineInput(0, TChain::Class());
DefineOutput(0, TTree::Class());
DefineOutput(1, TList::Class());
AliLog::SetGlobalLogLevel(AliLog::kFatal);
fTrigAna = new AliTriggerAnalysis();
}
void AliAnalysisTaskB2::ConnectInputData(Option_t *)
{
TTree* tree = dynamic_cast<TTree*> (GetInputData(0));
if(!tree)
{
this->Error("ConnectInputData", "could not read chain from input slot 0");
return;
}
AliAnalysisManager* mgr = AliAnalysisManager::GetAnalysisManager();
if (!mgr)
{
this->Error("ConnectInputData", "could not get analysis manager");
return;
}
AliESDInputHandler* esdH = dynamic_cast<AliESDInputHandler*>(mgr->GetInputEventHandler());
if (!esdH)
{
this->Error("ConnectInputData", "could not get ESDInputHandler");
return;
}
fESDevent = esdH->GetEvent();
fESDpid = esdH->GetESDpid();
if(!fESDpid)
{
fESDpid = new AliESDpid();
fIsPidOwner = kTRUE;
}
}
void AliAnalysisTaskB2::CreateOutputObjects()
{
if(fHistoMap == 0) AliFatal("no histogram map");
fOutputContainer = new TList();
fOutputContainer->SetOwner(kTRUE);
TObjString* key;
TIter iter(fHistoMap->GetMap());
while((key = dynamic_cast<TObjString*>(iter.Next()))) fOutputContainer->Add((TH1*)fHistoMap->Get(key));
PostData(1, fOutputContainer);
}
AliAnalysisTaskB2::~AliAnalysisTaskB2()
{
delete fHistoMap;
delete fOutputContainer;
delete fTrackCuts;
delete fLnID;
delete fTrigAna;
if(fIsPidOwner) delete fESDpid;
delete fMoCpfx;
}
void AliAnalysisTaskB2::SetParticleSpecies(const TString& species)
{
fSpecies = species;
fPartCode = this->GetPidCode(species);
}
void AliAnalysisTaskB2::Exec(Option_t* )
{
if(fESDevent == 0)
{
this->Error("Exec", "AliESDEvent not available");
return;
}
if(fTrackCuts == 0) AliFatal("track cuts not set");
if(fLnID == 0) AliFatal("PID not set");
if(fSimulation)
{
AliMCEventHandler* mcH = dynamic_cast<AliMCEventHandler*> (AliAnalysisManager::GetAnalysisManager()->GetMCtruthEventHandler());
if(mcH == 0) return;
fMCevent = mcH->MCEvent();
if(fMCevent == 0) return;
}
fNtrk = AliESDtrackCuts::GetReferenceMultiplicity(fESDevent, AliESDtrackCuts::kTrackletsITSTPC, fMaxEta);
if(fSimulation) fNch = this->GetChargedMultiplicity(fMaxEta);
fKNOmult = fNtrk/fMeanNtrk;
((TH1D*)fHistoMap->Get(fSpecies + "_Event_Ntrk"))->Fill(fNtrk);
((TH1D*)fHistoMap->Get(fSpecies + "_Event_Zmult"))->Fill(fKNOmult);
fMultTriggerFired = (fNtrk > 0) && (fKNOmult >= fMinKNOmult) && (fKNOmult < fMaxKNOmult);
if(fHeavyIons)
{
AliCentrality* esdCent = fESDevent->GetCentrality();
Float_t centrality = esdCent->GetCentralityPercentile("V0M");
fCentTriggerFired = (centrality >= fMinCentrality) && (centrality < fMaxCentrality);
Float_t v0ScaMult;
Float_t v0Mult = AliESDUtils::GetCorrV0(fESDevent,v0ScaMult);
((TH1D*)fHistoMap->Get(fSpecies + "_V0_Mult"))->Fill(v0Mult);
((TH1D*)fHistoMap->Get(fSpecies + "_V0_Scaled_Mult"))->Fill(v0ScaMult);
}
AliInputEventHandler* eventH = dynamic_cast<AliInputEventHandler*>(AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler());
if(eventH == 0)
{
this->Error("Exec", "could not get AliInputEventHandler");
return;
}
UInt_t triggerBits = eventH->IsEventSelected();
if(fHeavyIons)
{
fTriggerFired = ( this->IsMB(triggerBits) && fCentTriggerFired );
}
else
{
fTriggerFired = this->IsMB(triggerBits);
if(fNoFastOnly) fTriggerFired = ( fTriggerFired && !this->IsFastOnly(triggerBits) );
if(fV0AND) fTriggerFired = ( fTriggerFired && this->IsV0AND() );
if(fNtrkMultTrigger) fTriggerFired = ( fTriggerFired && fMultTriggerFired );
}
fGoodVertex = kFALSE;
const AliESDVertex* vtx = fESDevent->GetPrimaryVertex();
if(vtx->GetStatus())
{
fGoodVertex=kTRUE;
((TH2D*)fHistoMap->Get(fSpecies + "_Vertex_YX"))->Fill(vtx->GetX(), vtx->GetY());
((TH2D*)fHistoMap->Get(fSpecies + "_Vertex_YZ"))->Fill(vtx->GetZ(), vtx->GetY());
((TH2D*)fHistoMap->Get(fSpecies + "_Vertex_XZ"))->Fill(vtx->GetZ(), vtx->GetX());
}
if(fESDevent->GetPrimaryVertex()->IsFromVertexerZ())
{
if(fESDevent->GetPrimaryVertex()->GetDispersion() > 0.02) fGoodVertex=kFALSE;
if(fESDevent->GetPrimaryVertex()->GetZRes() > 0.25 ) fGoodVertex=kFALSE;
}
if( (vtx->GetX() <= fMinVx) || (vtx->GetX() >= fMaxVx) ) fGoodVertex=kFALSE;
if( (vtx->GetY() <= fMinVy) || (vtx->GetY() >= fMaxVy) ) fGoodVertex=kFALSE;
if( (vtx->GetZ() <= fMinVz) || (vtx->GetZ() >= fMaxVz) ) fGoodVertex=kFALSE;
fPileUpEvent = fESDevent->IsPileupFromSPDInMultBins();
((TH1D*)fHistoMap->Get(fSpecies + "_Stats"))->Fill(0);
if(fTriggerFired)
{
((TH1D*)fHistoMap->Get(fSpecies + "_Stats"))->Fill(1);
if(vtx->GetStatus())
{
((TH1D*)fHistoMap->Get(fSpecies + "_Stats"))->Fill(3);
if((vtx->GetZ() > fMinVz) && (vtx->GetZ() < fMaxVz))
{
((TH1D*)fHistoMap->Get(fSpecies + "_Stats"))->Fill(4);
if( (vtx->GetX() > fMinVx) && (vtx->GetX() < fMaxVx)
&& (vtx->GetY() > fMinVy) && (vtx->GetY() < fMaxVy))
{
((TH1D*)fHistoMap->Get(fSpecies + "_Stats"))->Fill(5);
if(fGoodVertex)
{
((TH1D*)fHistoMap->Get(fSpecies + "_Stats"))->Fill(6);
if(!fPileUpEvent)
{
((TH1D*)fHistoMap->Get(fSpecies + "_Stats"))->Fill(7);
}
}
}
}
}
}
if(fSimulation) this->GetParticles();
this->GetTracks();
PostData(1, fOutputContainer);
}
Int_t AliAnalysisTaskB2::GetParticles()
{
Int_t nParticles = 0;
AliStack* stack = fMCevent->Stack();
if (!stack)
{
AliDebug(AliLog::kWarning, "stack not available");
return 0;
}
for (Int_t i = 0; i < fMCevent->GetNumberOfTracks(); ++i)
{
TParticle* iParticle = stack->Particle(i);
if(!iParticle) continue;
Int_t pid = fLnID->GetPID(iParticle);
if(pid != fPartCode) continue;
if(!stack->IsPhysicalPrimary(i)) continue;
TString particle = fSpecies;
if(iParticle->GetPDG()->Charge() < 0) particle.Prepend("Anti");
Double_t genP = iParticle->P();
Double_t genPt = iParticle->Pt();
Double_t genY = iParticle->Y();
Double_t genPhi = iParticle->Phi();
Double_t genEta = iParticle->Eta();
if( fHeavyIons && !fCentTriggerFired) continue;
if( fNtrkMultTrigger && !fMultTriggerFired) continue;
((TH1D*)fHistoMap->Get(particle + "_Gen_Prim_P"))->Fill(genP);
((TH1D*)fHistoMap->Get(particle + "_Gen_Prim_Pt"))->Fill(genPt);
((TH1D*)fHistoMap->Get(particle + "_Gen_Prim_Y"))->Fill(genY);
((TH1D*)fHistoMap->Get(particle + "_Gen_Prim_Phi"))->Fill(genPhi);
((TH1D*)fHistoMap->Get(particle + "_Gen_Prim_Eta"))->Fill(genEta);
((TH2D*)fHistoMap->Get(particle + "_Gen_Prim_PtY"))->Fill(genY, genPt);
((TH2D*)fHistoMap->Get(particle + "_Gen_Prim_EtaY"))->Fill(genY, genEta);
if(TMath::Abs(genY) >= fMaxY) continue;
((TH1D*)fHistoMap->Get(particle + "_Gen_PhS_Prim_P"))->Fill(genP);
((TH1D*)fHistoMap->Get(particle + "_Gen_PhS_Prim_Pt"))->Fill(genPt);
if(!fTriggerFired)
{
((TH1D*)fHistoMap->Get(particle + "_Gen_NoTrig_Prim_Pt"))->Fill(genPt);
continue;
}
((TH1D*)fHistoMap->Get(particle + "_Gen_Trig_Prim_Pt"))->Fill(genPt);
if(!fESDevent->GetPrimaryVertex()->GetStatus())
{
((TH1D*)fHistoMap->Get(particle + "_Gen_NoVtx_Prim_Pt"))->Fill(genPt);
}
if(!fGoodVertex) continue;
if(fPileUpEvent) continue;
((TH1D*)fHistoMap->Get(particle + "_Gen_Nch"))->Fill(fNch);
((TH1D*)fHistoMap->Get(particle + "_Gen_Vtx_Prim_Pt"))->Fill(genPt);
if(TMath::Abs(genEta) >= fMaxEta) continue;
((TH2D*)fHistoMap->Get(particle + "_Gen_Acc_Prim_PtY"))->Fill(genY,genPt);
((TH1D*)fHistoMap->Get(particle + "_Gen_Acc_Prim_P"))->Fill(genP);
((TH1D*)fHistoMap->Get(particle + "_Gen_Acc_Prim_Pt"))->Fill(genPt);
((TH1D*)fHistoMap->Get(particle + "_Gen_Acc_Prim_Phi"))->Fill(genPhi);
((TH1D*)fHistoMap->Get(particle + "_Gen_Acc_Prim_Y"))->Fill(genY);
}
return nParticles;
}
Int_t AliAnalysisTaskB2::GetTracks()
{
using namespace std;
Int_t nTracks = 0;
if(!fTriggerFired) return 0;
if(!fGoodVertex) return 0;
if(fPileUpEvent) return 0;
((TH1D*)fHistoMap->Get(fSpecies + "_Stats"))->Fill(2);
((TH1D*)fHistoMap->Get(fSpecies + "_Ana_Event_Ntrk"))->Fill(fNtrk);
((TH1D*)fHistoMap->Get(fSpecies + "_Ana_Event_Zmult"))->Fill(fKNOmult);
if(fSimulation)
{
((TH2D*)fHistoMap->Get(fSpecies + "_Ana_Event_Nch_Ntrk"))->Fill(fNtrk, fNch);
}
const AliESDVertex* vtx = fESDevent->GetPrimaryVertex();
((TH2D*)fHistoMap->Get(fSpecies + "_Ana_Vertex_YX"))->Fill(vtx->GetX(), vtx->GetY());
((TH2D*)fHistoMap->Get(fSpecies + "_Ana_Vertex_YZ"))->Fill(vtx->GetZ(), vtx->GetY());
((TH2D*)fHistoMap->Get(fSpecies + "_Ana_Vertex_XZ"))->Fill(vtx->GetZ(), vtx->GetX());
if(fHeavyIons)
{
Float_t v0ScaMult;
Float_t v0Mult = AliESDUtils::GetCorrV0(fESDevent,v0ScaMult);
((TH1D*)fHistoMap->Get(fSpecies + "_Ana_V0_Mult"))->Fill(v0Mult);
((TH1D*)fHistoMap->Get(fSpecies + "_Ana_V0_Scaled_Mult"))->Fill(v0ScaMult);
}
for(Int_t i = 0; i < fESDevent->GetNumberOfTracks(); ++i)
{
AliESDtrack* iTrack = fESDevent->GetTrack(i);
if(!iTrack) continue;
TString particle = fSpecies;
if(iTrack->GetSign() < 0) particle.Prepend("Anti");
Float_t dcaxy, dcaz;
iTrack->GetImpactParameters(dcaxy, dcaz);
if(iTrack->GetSign() < 0)
{
dcaxy = -dcaxy;
dcaz = -dcaz;
}
Double_t nSigmaVtx = fTrackCuts->GetSigmaToVertex(iTrack);
Double_t p = iTrack->GetP();
Double_t pt = iTrack->Pt();
Double_t pz = iTrack->Pz();
Double_t eta = iTrack->Eta();
Double_t phi = this->GetPhi(iTrack);
((TH2D*)fHistoMap->Get(particle + "_Before_Phi_Eta"))->Fill(eta,phi);
if(!fTrackCuts->AcceptTrack(iTrack)) continue;
if(fTOFmatch && !this->AcceptTOFtrack(iTrack)) continue;
++nTracks;
((TH2D*)fHistoMap->Get(particle + "_After_Phi_Eta"))->Fill(eta, phi);
((TH1D*)fHistoMap->Get(particle + "_TrackCuts_DCAxy"))->Fill(dcaxy);
((TH1D*)fHistoMap->Get(particle + "_TrackCuts_DCAz"))->Fill(dcaz);
((TH1D*)fHistoMap->Get(particle + "_TrackCuts_NSigma"))->Fill(nSigmaVtx);
((TH1D*)fHistoMap->Get(particle + "_TrackCuts_ITSchi2PerCls"))->Fill(this->GetITSchi2PerCluster(iTrack));
((TH1D*)fHistoMap->Get(particle + "_TrackCuts_TPCncls"))->Fill(iTrack->GetTPCNcls());
((TH1D*)fHistoMap->Get(particle + "_TrackCuts_TPCxRowsOverF"))->Fill(static_cast<Double_t>(iTrack->GetTPCCrossedRows())/static_cast<Double_t>(iTrack->GetTPCNclsF()));
((TH1D*)fHistoMap->Get(particle + "_TrackCuts_TPCxRows"))->Fill(iTrack->GetTPCCrossedRows());
((TH1D*)fHistoMap->Get(particle + "_TrackCuts_TPCchi2PerCls"))->Fill(iTrack->GetTPCchi2()/iTrack->GetTPCNcls());
((TH1D*)fHistoMap->Get(particle + "_TrackCuts_TPCchi2Global"))->Fill(iTrack->GetChi2TPCConstrainedVsGlobal(fESDevent->GetPrimaryVertex()));
Double_t pITS = this->GetITSmomentum(iTrack);
Double_t pTPC = iTrack->GetTPCmomentum();
Double_t pTOF = this->GetTOFmomentum(iTrack);
Double_t dEdxITS = iTrack->GetITSsignal();
Double_t dEdxTPC = iTrack->GetTPCsignal();
Int_t nPointsITS = this->GetITSnPointsPID(iTrack);
Int_t nPointsTPC = iTrack->GetTPCsignalN();
Double_t beta = 0;
Double_t mass = 0;
Double_t m2 = 0;
((TH2D*)fHistoMap->Get(particle + "_ITS_dEdx_P"))->Fill(pITS, dEdxITS);
((TH2D*)fHistoMap->Get(particle + "_TPC_dEdx_P"))->Fill(pTPC, dEdxTPC);
if(fTOFmatch)
{
beta = this->GetBeta(iTrack);
m2 = this->GetMassSquared(p, beta);
mass = TMath::Sqrt(TMath::Abs(m2));
((TH2D*)fHistoMap->Get(particle + "_TOF_Beta_P"))->Fill(pTOF, beta);
((TH2D*)fHistoMap->Get(particle + "_TOF_Mass_P"))->Fill(pTOF, mass);
}
Int_t pid = fLnID->GetPID( fPartCode, pITS, dEdxITS, nPointsITS, pTPC, dEdxTPC, nPointsTPC, pTOF, beta, fMaxNSigmaITS, fMaxNSigmaTPC, fMaxNSigmaTOF);
Int_t offset = AliPID::kDeuteron - 5;
if(pid != -1)
{
Int_t iBin = (pid > AliPID::kProton) ? pid - offset : pid;
((TH1D*)fHistoMap->Get(fSpecies + "_Stats_PID"))->Fill(iBin);
}
if(fPartCode > AliPID::kTriton)
{
p *= 2.;
pt *= 2.;
pz *= 2.;
}
if(fMomentumCorrection)
{
pt += this->GetMomentumCorrection(pt);
p = TMath::Sqrt(pt*pt + pz*pz);
if(fTOFmatch)
{
m2 = this->GetMassSquared(p, beta);
mass = TMath::Sqrt(TMath::Abs(m2));
}
}
Double_t simPt = 0;
Double_t simPhi = 0;
Double_t simY = 0;
Int_t simpid = -1;
TParticle* iParticle = 0;
if(fSimulation)
{
iParticle = this->GetParticle(iTrack);
if(iParticle == 0) continue;
simPt = iParticle->Pt();
simPhi = iParticle->Phi();
simY = iParticle->Y();
simpid = fLnID->GetPID(iParticle);
if(simpid == fPartCode)
{
TString simparticle = fSpecies;
if(this->GetSign(iParticle)<0) simparticle.Prepend("Anti");
((TH2D*)fHistoMap->Get(simparticle + "_Sim_PtY"))->Fill(simY, simPt);
if(TMath::Abs(simY) < fMaxY)
{
((TH2D*)fHistoMap->Get(simparticle + "_Response_Matrix"))->Fill(pt, simPt);
if(this->IsPhysicalPrimary(iParticle))
{
((TH1D*)fHistoMap->Get(simparticle + "_Sim_Ntrk"))->Fill(fNtrk);
}
if(!this->IsFakeTrack(iTrack))
{
((TH1D*)fHistoMap->Get(simparticle + "_Sim_Pt"))->Fill(simPt);
if(this->IsPhysicalPrimary(iParticle))
{
((TH1D*)fHistoMap->Get(simparticle + "_Sim_Prim_Pt"))->Fill(simPt);
((TH1D*)fHistoMap->Get(simparticle + "_Sim_Prim_Y"))->Fill(simY);
((TH1D*)fHistoMap->Get(simparticle + "_Sim_Prim_Phi"))->Fill(simPhi);
((TH1D*)fHistoMap->Get(simparticle + "_Sim_Prim_Rec_Pt"))->Fill(pt);
((TH2D*)fHistoMap->Get(simparticle + "_Sim_Prim_DCAxy_Pt"))->Fill(simPt,dcaxy);
((TH2D*)fHistoMap->Get(simparticle + "_Prim_Response_Matrix"))->Fill(pt, simPt);
((TH2D*)fHistoMap->Get(simparticle + "_Prim_DiffPt_RecPt"))->Fill(pt,simPt-pt);
if(fTOFmatch)
{
((TH2D*)fHistoMap->Get(simparticle + "_Sim_Prim_M2_P"))->Fill(pTOF, m2);
((TH2D*)fHistoMap->Get(simparticle + "_Sim_Prim_M2_Pt"))->Fill(pt, m2);
}
}
else if(this->IsFromWeakDecay(iParticle))
{
((TH1D*)fHistoMap->Get(simparticle + "_Sim_Fdwn_Pt"))->Fill(simPt);
((TH2D*)fHistoMap->Get(simparticle + "_Sim_Fdwn_DCAxy_Pt"))->Fill(simPt,dcaxy);
}
else
{
((TH1D*)fHistoMap->Get(simparticle + "_Sim_Mat_Pt"))->Fill(simPt);
((TH2D*)fHistoMap->Get(simparticle + "_Sim_Mat_DCAxy_Pt"))->Fill(simPt,dcaxy);
}
}
else
{
((TH1D*)fHistoMap->Get(simparticle + "_Sim_Fake_Pt"))->Fill(simPt);
if(this->IsPhysicalPrimary(iParticle))
{
((TH1D*)fHistoMap->Get(simparticle + "_Sim_Fake_Prim_Pt"))->Fill(simPt);
}
else if(this->IsFromWeakDecay(iParticle))
{
((TH1D*)fHistoMap->Get(simparticle + "_Sim_Fake_Fdwn_Pt"))->Fill(simPt);
}
else
{
((TH1D*)fHistoMap->Get(simparticle + "_Sim_Fake_Mat_Pt"))->Fill(simPt);
}
}
}
}
Int_t sim = (simpid > AliPID::kProton) ? simpid - offset : simpid;
Int_t rec = (pid > AliPID::kProton) ? pid - offset : pid;
if((sim > -1) && (rec > -1))
{
((TH2D*)fHistoMap->Get(fSpecies + "_Stats_PID_Table"))->Fill(sim, rec);
((TH2D*)fHistoMap->Get(fSpecies + "_Stats_PID_Table"))->Fill(9, rec);
}
if(sim > -1)
{
((TH2D*)fHistoMap->Get(fSpecies + "_Stats_PID_Table"))->Fill(sim, 9);
}
}
if(pid != fPartCode) continue;
Bool_t goodPid = 0;
if(fSimulation)
{
goodPid = ( simpid == pid );
}
((TH2D*)fHistoMap->Get(particle + "_PID_Ntrk_pTPC"))->Fill(pTPC,fNtrk);
((TH2D*)fHistoMap->Get(particle + "_PID_Zmult_pTPC"))->Fill(pTPC,fKNOmult);
((TH2D*)fHistoMap->Get(particle + "_PID_ITSdEdx_P"))->Fill(pITS, dEdxITS);
((TH2D*)fHistoMap->Get(particle + "_PID_TPCdEdx_P"))->Fill(pTPC, dEdxTPC);
if(fTOFmatch)
{
((TH2D*)fHistoMap->Get(particle + "_PID_Beta_P"))->Fill(pTOF, beta);
((TH2D*)fHistoMap->Get(particle + "_PID_Mass_P"))->Fill(pTOF, mass);
if(fSimulation && goodPid)
{
((TH1D*)fHistoMap->Get(particle + "_Sim_PID_Mass"))->Fill(mass);
}
}
Double_t y = this->GetRapidity(p, pz, AliPID::ParticleMass(fPartCode));
((TH1D*)fHistoMap->Get(particle + "_PID_Y"))->Fill(y);
((TH2D*)fHistoMap->Get(particle + "_PID_Pt_Y"))->Fill(y, pt);
if(TMath::Abs(y) >= fMaxY) continue;
((TH1D*)fHistoMap->Get(particle + "_PID_Pt"))->Fill(pt);
((TH1D*)fHistoMap->Get(particle + "_PID_Phi"))->Fill(phi);
if(iTrack->IsOn(AliESDtrack::kTRDin))
{
((TH1D*)fHistoMap->Get(particle + "_PID_TRDin_Pt"))->Fill(pt);
if(iTrack->IsOn(AliESDtrack::kTRDout)) ((TH1D*)fHistoMap->Get(particle + "_PID_TRDin_TRDout_Pt"))->Fill(pt);
if(iTrack->IsOn(AliESDtrack::kTOFout)) ((TH1D*)fHistoMap->Get(particle + "_PID_TRDin_TOFout_Pt"))->Fill(pt);
}
if(iTrack->IsOn(AliESDtrack::kTOFin))
{
((TH1D*)fHistoMap->Get(particle + "_PID_TOFin_Pt"))->Fill(pt);
if(iTrack->IsOn(AliESDtrack::kTOFout)) ((TH1D*)fHistoMap->Get(particle + "_PID_TOFin_TOFout_Pt"))->Fill(pt);
}
if(fTOFmatch)
{
Double_t dm2 = this->GetM2Difference(beta, pTOF, AliPID::ParticleMass(fPartCode));
Double_t t = this->GetTimeOfFlight(iTrack)*1.e-3;
Double_t dt = t - this->GetExpectedTime(iTrack, AliPID::ParticleMass(fPartCode))*1.e-3;
((TH2D*)fHistoMap->Get(particle + "_PID_M2_Pt"))->Fill(pt, m2);
((TH2D*)fHistoMap->Get(particle + "_PID_DM2_Pt"))->Fill(pt, dm2);
((TH2D*)fHistoMap->Get(particle + "_PID_Time_Pt"))->Fill(pt, t);
((TH2D*)fHistoMap->Get(particle + "_PID_DTime_Pt"))->Fill(pt, dt);
((TH1D*)fHistoMap->Get(particle + "_PID_TOFmatch_Pt"))->Fill(pt);
}
Bool_t m2match = kTRUE;
if( fTOFmatch && (fLnID->GetPidProcedure() > AliLnID::kMaxLikelihood))
{
if ((m2 < fMinM2) || (m2 >= fMaxM2)) m2match = kFALSE;
}
if(m2match)
{
((TH2D*)fHistoMap->Get(particle + "_PID_DCAxy_Pt"))->Fill(pt, dcaxy);
((TH2D*)fHistoMap->Get(particle + "_PID_DCAz_Pt"))->Fill(pt, dcaz);
((TH2D*)fHistoMap->Get(particle + "_PID_NSigma_Pt"))->Fill(pt, nSigmaVtx);
}
if(fSimulation && goodPid)
{
if(!this->IsFakeTrack(iTrack))
{
((TH1D*)fHistoMap->Get(particle + "_Sim_PID_Pt"))->Fill(simPt);
if(fTOFmatch)
{
((TH2D*)fHistoMap->Get(particle + "_Sim_PID_M2_Pt"))->Fill(pt, m2);
}
if(this->IsPhysicalPrimary(iParticle))
{
((TH1D*)fHistoMap->Get(particle + "_Sim_PID_Prim_Pt"))->Fill(simPt);
}
if(m2match)
{
if(this->IsPhysicalPrimary(iParticle))
{
((TH2D*)fHistoMap->Get(particle + "_Sim_PID_Prim_DCAxy_Pt"))->Fill(pt, dcaxy);
((TH2D*)fHistoMap->Get(particle + "_Sim_PID_Prim_DCAz_Pt"))->Fill(pt, dcaz);
((TH2D*)fHistoMap->Get(particle + "_Sim_PID_Prim_NSigma_Pt"))->Fill(pt, nSigmaVtx);
}
else if(this->IsFromWeakDecay(iParticle))
{
((TH2D*)fHistoMap->Get(particle + "_Sim_PID_Fdwn_DCAxy_Pt"))->Fill(pt, dcaxy);
((TH2D*)fHistoMap->Get(particle + "_Sim_PID_Fdwn_DCAz_Pt"))->Fill(pt, dcaz);
((TH2D*)fHistoMap->Get(particle + "_Sim_PID_Fdwn_NSigma_Pt"))->Fill(pt, nSigmaVtx);
}
else
{
((TH2D*)fHistoMap->Get(particle + "_Sim_PID_Mat_DCAxy_Pt"))->Fill(pt, dcaxy);
((TH2D*)fHistoMap->Get(particle + "_Sim_PID_Mat_DCAz_Pt"))->Fill(pt, dcaz);
((TH2D*)fHistoMap->Get(particle + "_Sim_PID_Mat_NSigma_Pt"))->Fill(pt, nSigmaVtx);
}
}
}
else
{
((TH1D*)fHistoMap->Get(particle + "_Sim_PID_Fake_Pt"))->Fill(simPt);
if(m2match)
{
if(this->IsPhysicalPrimary(iParticle))
{
((TH2D*)fHistoMap->Get(particle + "_Sim_PID_Fake_Prim_DCAxy_Pt"))->Fill(pt, dcaxy);
}
else if(this->IsFromWeakDecay(iParticle))
{
((TH2D*)fHistoMap->Get(particle + "_Sim_PID_Fake_Fdwn_DCAxy_Pt"))->Fill(pt, dcaxy);
}
else
{
((TH2D*)fHistoMap->Get(particle + "_Sim_PID_Fake_Mat_DCAxy_Pt"))->Fill(pt, dcaxy);
}
}
}
}
}
return nTracks;
}
void AliAnalysisTaskB2::Terminate(Option_t* )
{
}
Bool_t AliAnalysisTaskB2::IsV0AND() const
{
return ( fTrigAna->IsOfflineTriggerFired(fESDevent, AliTriggerAnalysis::kV0A) &&
fTrigAna->IsOfflineTriggerFired(fESDevent, AliTriggerAnalysis::kV0C) );
}
Bool_t AliAnalysisTaskB2::IsFastOnly(UInt_t triggerBits) const
{
return ( (triggerBits&AliVEvent::kFastOnly) == AliVEvent::kFastOnly );
}
Bool_t AliAnalysisTaskB2::IsMB(UInt_t triggerBits) const
{
return ( (triggerBits&AliVEvent::kMB) == AliVEvent::kMB );
}
Bool_t AliAnalysisTaskB2::AcceptTOFtrack(const AliESDtrack* trk) const
{
if( !fTOFmatch ) return kFALSE;
if( trk->GetIntegratedLength() < 350) return kFALSE;
if( trk->GetTOFsignal() < 1e-6) return kFALSE;
return kTRUE;
}
TParticle* AliAnalysisTaskB2::GetParticle(const AliESDtrack* trk) const
{
AliStack* stack = fMCevent->Stack();
Int_t label = TMath::Abs(trk->GetLabel());
if( label >= fMCevent->GetNumberOfTracks() ) return 0;
return stack->Particle(label);
}
Bool_t AliAnalysisTaskB2::IsFakeTrack(const AliESDtrack* trk) const
{
return ( trk->GetLabel() < 0 );
}
Bool_t AliAnalysisTaskB2::IsPhysicalPrimary(const TParticle* prt) const
{
AliStack* stack = fMCevent->Stack();
Int_t index = stack->Particles()->IndexOf(prt);
return stack->IsPhysicalPrimary(index);
}
Bool_t AliAnalysisTaskB2::IsFromMaterial(const TParticle* prt) const
{
AliStack* stack = fMCevent->Stack();
Int_t index = stack->Particles()->IndexOf(prt);
return stack->IsSecondaryFromMaterial(index);
}
Bool_t AliAnalysisTaskB2::IsFromWeakDecay(const TParticle* prt) const
{
AliStack* stack = fMCevent->Stack();
Int_t index = stack->Particles()->IndexOf(prt);
return stack->IsSecondaryFromWeakDecay(index);
}
Double_t AliAnalysisTaskB2::GetSign(TParticle* prt) const
{
TParticlePDG* pdg = prt->GetPDG();
if(pdg != 0) return pdg->Charge();
return 0;
}
Double_t AliAnalysisTaskB2::GetPhi(const AliESDtrack* trk) const
{
Double_t px = trk->Px();
Double_t py = trk->Py();
return TMath::Pi()+TMath::ATan2(-py, -px);
}
Double_t AliAnalysisTaskB2::GetTheta(const AliESDtrack* trk) const
{
Double_t p = trk->GetP();
Double_t pz = trk->Pz();
return (pz == 0) ? TMath::PiOver2() : TMath::ACos(pz/p);
}
Double_t AliAnalysisTaskB2::GetITSmomentum(const AliESDtrack* trk) const
{
Double_t pDCA = trk->GetP();
Double_t pTPC = trk->GetTPCmomentum();
return (pDCA+pTPC)/2.;
}
Double_t AliAnalysisTaskB2::GetTOFmomentum(const AliESDtrack* trk) const
{
Double_t pIn = trk->GetTPCmomentum();
const AliExternalTrackParam* param = trk->GetOuterParam();
Double_t pOut = param ? param->GetP() : trk->GetP();
return (pIn+pOut)/2.;
}
Double_t AliAnalysisTaskB2::GetBeta(const AliESDtrack* trk) const
{
Double_t t = this->GetTimeOfFlight(trk);
Double_t l = trk->GetIntegratedLength();
if(t <= 0) return 1.e6;
return (l/t)/2.99792458e-2;
}
Double_t AliAnalysisTaskB2::GetExpectedTime(const AliESDtrack* trk, Double_t m) const
{
Double_t p = (fPartCode>AliPID::kTriton) ? 2.*this->GetTOFmomentum(trk) : this->GetTOFmomentum(trk);
Double_t beta = p/TMath::Sqrt(p*p + m*m);
Double_t l = trk->GetIntegratedLength();
return l/beta/2.99792458e-2;
}
Double_t AliAnalysisTaskB2::GetMassSquared(Double_t p, Double_t beta) const
{
return p*p*(1./(beta*beta) - 1.);
}
Double_t AliAnalysisTaskB2::GetM2Difference(Double_t beta, Double_t p, Double_t m) const
{
Double_t expBeta2 = p*p/(p*p+m*m);
return p*p*(1./(beta*beta)-1./expBeta2);
}
Int_t AliAnalysisTaskB2::GetChargedMultiplicity(Double_t etaMax) const
{
AliStack* stack = fMCevent->Stack();
Int_t nch = 0;
for (Int_t i=0; i < stack->GetNtrack(); ++i)
{
if(!stack->IsPhysicalPrimary(i)) continue;
TParticle* iParticle = stack->Particle(i);
if(TMath::Abs(iParticle->Eta()) >= etaMax) continue;
TParticlePDG* iPDG = iParticle->GetPDG();
if (iPDG && iPDG->Charge() == 0) continue;
++nch;
}
return nch;
}
Double_t AliAnalysisTaskB2::GetTimeOfFlight(const AliESDtrack* trk) const
{
if(!fESDevent->GetTOFHeader())
{
Float_t t0spread[10];
Float_t intrinsicTOFres=100;
for (Int_t j=0; j<10; j++) t0spread[j] = (TMath::Sqrt(fESDevent->GetSigma2DiamondZ()))/0.03;
fESDpid->GetTOFResponse().SetT0resolution(t0spread);
fESDpid->GetTOFResponse().SetTimeResolution(intrinsicTOFres);
fESDpid->SetTOFResponse(fESDevent, (AliESDpid::EStartTimeType_t)fTimeZeroType);
}
if(fESDevent->GetTOFHeader() && fIsPidOwner) fESDpid->SetTOFResponse(fESDevent, (AliESDpid::EStartTimeType_t)fTimeZeroType);
Double_t timeZero = fESDpid->GetTOFResponse().GetStartTime(trk->P());
return trk->GetTOFsignal()-timeZero;
}
Int_t AliAnalysisTaskB2::GetITSnClusters(const AliESDtrack* trk) const
{
UChar_t map = trk->GetITSClusterMap();
Int_t npoints=0;
for(Int_t j=0; j<6; j++)
{
if(map&(1<<j)) ++npoints;
}
return npoints;
}
Double_t AliAnalysisTaskB2::GetITSchi2PerCluster(const AliESDtrack* trk) const
{
Double_t chi2 = trk->GetITSchi2();
Int_t ncls = this->GetITSnClusters(trk);
Double_t chi2ncls = (ncls==0) ? 1.e10 : chi2/ncls;
return chi2ncls;
}
Int_t AliAnalysisTaskB2::GetITSnPointsPID(const AliESDtrack* trk) const
{
UChar_t map = trk->GetITSClusterMap();
Int_t npoints = 0;
for(Int_t j=2; j<6; j++)
{
if(map&(1<<j)) ++npoints;
}
return npoints;
}
Int_t AliAnalysisTaskB2::GetPidCode(const TString& species) const
{
TString name = species;
name.ToLower();
if(name == "electron") return AliPID::kElectron;
if(name == "muon") return AliPID::kMuon;
if(name == "pion") return AliPID::kPion;
if(name == "kaon") return AliPID::kKaon;
if(name == "proton") return AliPID::kProton;
if(name == "deuteron") return AliPID::kDeuteron;
if(name == "triton") return AliPID::kTriton;
if(name == "he3") return AliPID::kHe3;
if(name == "alpha") return AliPID::kAlpha;
return -1;
}
Double_t AliAnalysisTaskB2::GetMomentumCorrection(Double_t ptrec) const
{
if(fMoCpfx == 0) return 0;
return fMoCpfx->Interpolate(ptrec);
}
Double_t AliAnalysisTaskB2::GetRapidity(Double_t p, Double_t pz, Double_t m) const
{
Double_t e = TMath::Sqrt(p*p + m*m);
if(e <= pz) return 1.e+16;
return 0.5*TMath::Log( (e+pz)/(e-pz) );
}
AliAnalysisTaskB2.cxx:100 AliAnalysisTaskB2.cxx:101 AliAnalysisTaskB2.cxx:102 AliAnalysisTaskB2.cxx:103 AliAnalysisTaskB2.cxx:104 AliAnalysisTaskB2.cxx:105 AliAnalysisTaskB2.cxx:106 AliAnalysisTaskB2.cxx:107 AliAnalysisTaskB2.cxx:108 AliAnalysisTaskB2.cxx:109 AliAnalysisTaskB2.cxx:110 AliAnalysisTaskB2.cxx:111 AliAnalysisTaskB2.cxx:112 AliAnalysisTaskB2.cxx:113 AliAnalysisTaskB2.cxx:114 AliAnalysisTaskB2.cxx:115 AliAnalysisTaskB2.cxx:116 AliAnalysisTaskB2.cxx:117 AliAnalysisTaskB2.cxx:118 AliAnalysisTaskB2.cxx:119 AliAnalysisTaskB2.cxx:120 AliAnalysisTaskB2.cxx:121 AliAnalysisTaskB2.cxx:122 AliAnalysisTaskB2.cxx:123 AliAnalysisTaskB2.cxx:124 AliAnalysisTaskB2.cxx:125 AliAnalysisTaskB2.cxx:126 AliAnalysisTaskB2.cxx:127 AliAnalysisTaskB2.cxx:128 AliAnalysisTaskB2.cxx:129 AliAnalysisTaskB2.cxx:130 AliAnalysisTaskB2.cxx:131 AliAnalysisTaskB2.cxx:132 AliAnalysisTaskB2.cxx:133 AliAnalysisTaskB2.cxx:134 AliAnalysisTaskB2.cxx:135 AliAnalysisTaskB2.cxx:136 AliAnalysisTaskB2.cxx:137 AliAnalysisTaskB2.cxx:138 AliAnalysisTaskB2.cxx:139 AliAnalysisTaskB2.cxx:140 AliAnalysisTaskB2.cxx:141 AliAnalysisTaskB2.cxx:142 AliAnalysisTaskB2.cxx:143 AliAnalysisTaskB2.cxx:144 AliAnalysisTaskB2.cxx:145 AliAnalysisTaskB2.cxx:146 AliAnalysisTaskB2.cxx:147 AliAnalysisTaskB2.cxx:148 AliAnalysisTaskB2.cxx:149 AliAnalysisTaskB2.cxx:150 AliAnalysisTaskB2.cxx:151 AliAnalysisTaskB2.cxx:152 AliAnalysisTaskB2.cxx:153 AliAnalysisTaskB2.cxx:154 AliAnalysisTaskB2.cxx:155 AliAnalysisTaskB2.cxx:156 AliAnalysisTaskB2.cxx:157 AliAnalysisTaskB2.cxx:158 AliAnalysisTaskB2.cxx:159 AliAnalysisTaskB2.cxx:160 AliAnalysisTaskB2.cxx:161 AliAnalysisTaskB2.cxx:162 AliAnalysisTaskB2.cxx:163 AliAnalysisTaskB2.cxx:164 AliAnalysisTaskB2.cxx:165 AliAnalysisTaskB2.cxx:166 AliAnalysisTaskB2.cxx:167 AliAnalysisTaskB2.cxx:168 AliAnalysisTaskB2.cxx:169 AliAnalysisTaskB2.cxx:170 AliAnalysisTaskB2.cxx:171 AliAnalysisTaskB2.cxx:172 AliAnalysisTaskB2.cxx:173 AliAnalysisTaskB2.cxx:174 AliAnalysisTaskB2.cxx:175 AliAnalysisTaskB2.cxx:176 AliAnalysisTaskB2.cxx:177 AliAnalysisTaskB2.cxx:178 AliAnalysisTaskB2.cxx:179 AliAnalysisTaskB2.cxx:180 AliAnalysisTaskB2.cxx:181 AliAnalysisTaskB2.cxx:182 AliAnalysisTaskB2.cxx:183 AliAnalysisTaskB2.cxx:184 AliAnalysisTaskB2.cxx:185 AliAnalysisTaskB2.cxx:186 AliAnalysisTaskB2.cxx:187 AliAnalysisTaskB2.cxx:188 AliAnalysisTaskB2.cxx:189 AliAnalysisTaskB2.cxx:190 AliAnalysisTaskB2.cxx:191 AliAnalysisTaskB2.cxx:192 AliAnalysisTaskB2.cxx:193 AliAnalysisTaskB2.cxx:194 AliAnalysisTaskB2.cxx:195 AliAnalysisTaskB2.cxx:196 AliAnalysisTaskB2.cxx:197 AliAnalysisTaskB2.cxx:198 AliAnalysisTaskB2.cxx:199 AliAnalysisTaskB2.cxx:200 AliAnalysisTaskB2.cxx:201 AliAnalysisTaskB2.cxx:202 AliAnalysisTaskB2.cxx:203 AliAnalysisTaskB2.cxx:204 AliAnalysisTaskB2.cxx:205 AliAnalysisTaskB2.cxx:206 AliAnalysisTaskB2.cxx:207 AliAnalysisTaskB2.cxx:208 AliAnalysisTaskB2.cxx:209 AliAnalysisTaskB2.cxx:210 AliAnalysisTaskB2.cxx:211 AliAnalysisTaskB2.cxx:212 AliAnalysisTaskB2.cxx:213 AliAnalysisTaskB2.cxx:214 AliAnalysisTaskB2.cxx:215 AliAnalysisTaskB2.cxx:216 AliAnalysisTaskB2.cxx:217 AliAnalysisTaskB2.cxx:218 AliAnalysisTaskB2.cxx:219 AliAnalysisTaskB2.cxx:220 AliAnalysisTaskB2.cxx:221 AliAnalysisTaskB2.cxx:222 AliAnalysisTaskB2.cxx:223 AliAnalysisTaskB2.cxx:224 AliAnalysisTaskB2.cxx:225 AliAnalysisTaskB2.cxx:226 AliAnalysisTaskB2.cxx:227 AliAnalysisTaskB2.cxx:228 AliAnalysisTaskB2.cxx:229 AliAnalysisTaskB2.cxx:230 AliAnalysisTaskB2.cxx:231 AliAnalysisTaskB2.cxx:232 AliAnalysisTaskB2.cxx:233 AliAnalysisTaskB2.cxx:234 AliAnalysisTaskB2.cxx:235 AliAnalysisTaskB2.cxx:236 AliAnalysisTaskB2.cxx:237 AliAnalysisTaskB2.cxx:238 AliAnalysisTaskB2.cxx:239 AliAnalysisTaskB2.cxx:240 AliAnalysisTaskB2.cxx:241 AliAnalysisTaskB2.cxx:242 AliAnalysisTaskB2.cxx:243 AliAnalysisTaskB2.cxx:244 AliAnalysisTaskB2.cxx:245 AliAnalysisTaskB2.cxx:246 AliAnalysisTaskB2.cxx:247 AliAnalysisTaskB2.cxx:248 AliAnalysisTaskB2.cxx:249 AliAnalysisTaskB2.cxx:250 AliAnalysisTaskB2.cxx:251 AliAnalysisTaskB2.cxx:252 AliAnalysisTaskB2.cxx:253 AliAnalysisTaskB2.cxx:254 AliAnalysisTaskB2.cxx:255 AliAnalysisTaskB2.cxx:256 AliAnalysisTaskB2.cxx:257 AliAnalysisTaskB2.cxx:258 AliAnalysisTaskB2.cxx:259 AliAnalysisTaskB2.cxx:260 AliAnalysisTaskB2.cxx:261 AliAnalysisTaskB2.cxx:262 AliAnalysisTaskB2.cxx:263 AliAnalysisTaskB2.cxx:264 AliAnalysisTaskB2.cxx:265 AliAnalysisTaskB2.cxx:266 AliAnalysisTaskB2.cxx:267 AliAnalysisTaskB2.cxx:268 AliAnalysisTaskB2.cxx:269 AliAnalysisTaskB2.cxx:270 AliAnalysisTaskB2.cxx:271 AliAnalysisTaskB2.cxx:272 AliAnalysisTaskB2.cxx:273 AliAnalysisTaskB2.cxx:274 AliAnalysisTaskB2.cxx:275 AliAnalysisTaskB2.cxx:276 AliAnalysisTaskB2.cxx:277 AliAnalysisTaskB2.cxx:278 AliAnalysisTaskB2.cxx:279 AliAnalysisTaskB2.cxx:280 AliAnalysisTaskB2.cxx:281 AliAnalysisTaskB2.cxx:282 AliAnalysisTaskB2.cxx:283 AliAnalysisTaskB2.cxx:284 AliAnalysisTaskB2.cxx:285 AliAnalysisTaskB2.cxx:286 AliAnalysisTaskB2.cxx:287 AliAnalysisTaskB2.cxx:288 AliAnalysisTaskB2.cxx:289 AliAnalysisTaskB2.cxx:290 AliAnalysisTaskB2.cxx:291 AliAnalysisTaskB2.cxx:292 AliAnalysisTaskB2.cxx:293 AliAnalysisTaskB2.cxx:294 AliAnalysisTaskB2.cxx:295 AliAnalysisTaskB2.cxx:296 AliAnalysisTaskB2.cxx:297 AliAnalysisTaskB2.cxx:298 AliAnalysisTaskB2.cxx:299 AliAnalysisTaskB2.cxx:300 AliAnalysisTaskB2.cxx:301 AliAnalysisTaskB2.cxx:302 AliAnalysisTaskB2.cxx:303 AliAnalysisTaskB2.cxx:304 AliAnalysisTaskB2.cxx:305 AliAnalysisTaskB2.cxx:306 AliAnalysisTaskB2.cxx:307 AliAnalysisTaskB2.cxx:308 AliAnalysisTaskB2.cxx:309 AliAnalysisTaskB2.cxx:310 AliAnalysisTaskB2.cxx:311 AliAnalysisTaskB2.cxx:312 AliAnalysisTaskB2.cxx:313 AliAnalysisTaskB2.cxx:314 AliAnalysisTaskB2.cxx:315 AliAnalysisTaskB2.cxx:316 AliAnalysisTaskB2.cxx:317 AliAnalysisTaskB2.cxx:318 AliAnalysisTaskB2.cxx:319 AliAnalysisTaskB2.cxx:320 AliAnalysisTaskB2.cxx:321 AliAnalysisTaskB2.cxx:322 AliAnalysisTaskB2.cxx:323 AliAnalysisTaskB2.cxx:324 AliAnalysisTaskB2.cxx:325 AliAnalysisTaskB2.cxx:326 AliAnalysisTaskB2.cxx:327 AliAnalysisTaskB2.cxx:328 AliAnalysisTaskB2.cxx:329 AliAnalysisTaskB2.cxx:330 AliAnalysisTaskB2.cxx:331 AliAnalysisTaskB2.cxx:332 AliAnalysisTaskB2.cxx:333 AliAnalysisTaskB2.cxx:334 AliAnalysisTaskB2.cxx:335 AliAnalysisTaskB2.cxx:336 AliAnalysisTaskB2.cxx:337 AliAnalysisTaskB2.cxx:338 AliAnalysisTaskB2.cxx:339 AliAnalysisTaskB2.cxx:340 AliAnalysisTaskB2.cxx:341 AliAnalysisTaskB2.cxx:342 AliAnalysisTaskB2.cxx:343 AliAnalysisTaskB2.cxx:344 AliAnalysisTaskB2.cxx:345 AliAnalysisTaskB2.cxx:346 AliAnalysisTaskB2.cxx:347 AliAnalysisTaskB2.cxx:348 AliAnalysisTaskB2.cxx:349 AliAnalysisTaskB2.cxx:350 AliAnalysisTaskB2.cxx:351 AliAnalysisTaskB2.cxx:352 AliAnalysisTaskB2.cxx:353 AliAnalysisTaskB2.cxx:354 AliAnalysisTaskB2.cxx:355 AliAnalysisTaskB2.cxx:356 AliAnalysisTaskB2.cxx:357 AliAnalysisTaskB2.cxx:358 AliAnalysisTaskB2.cxx:359 AliAnalysisTaskB2.cxx:360 AliAnalysisTaskB2.cxx:361 AliAnalysisTaskB2.cxx:362 AliAnalysisTaskB2.cxx:363 AliAnalysisTaskB2.cxx:364 AliAnalysisTaskB2.cxx:365 AliAnalysisTaskB2.cxx:366 AliAnalysisTaskB2.cxx:367 AliAnalysisTaskB2.cxx:368 AliAnalysisTaskB2.cxx:369 AliAnalysisTaskB2.cxx:370 AliAnalysisTaskB2.cxx:371 AliAnalysisTaskB2.cxx:372 AliAnalysisTaskB2.cxx:373 AliAnalysisTaskB2.cxx:374 AliAnalysisTaskB2.cxx:375 AliAnalysisTaskB2.cxx:376 AliAnalysisTaskB2.cxx:377 AliAnalysisTaskB2.cxx:378 AliAnalysisTaskB2.cxx:379 AliAnalysisTaskB2.cxx:380 AliAnalysisTaskB2.cxx:381 AliAnalysisTaskB2.cxx:382 AliAnalysisTaskB2.cxx:383 AliAnalysisTaskB2.cxx:384 AliAnalysisTaskB2.cxx:385 AliAnalysisTaskB2.cxx:386 AliAnalysisTaskB2.cxx:387 AliAnalysisTaskB2.cxx:388 AliAnalysisTaskB2.cxx:389 AliAnalysisTaskB2.cxx:390 AliAnalysisTaskB2.cxx:391 AliAnalysisTaskB2.cxx:392 AliAnalysisTaskB2.cxx:393 AliAnalysisTaskB2.cxx:394 AliAnalysisTaskB2.cxx:395 AliAnalysisTaskB2.cxx:396 AliAnalysisTaskB2.cxx:397 AliAnalysisTaskB2.cxx:398 AliAnalysisTaskB2.cxx:399 AliAnalysisTaskB2.cxx:400 AliAnalysisTaskB2.cxx:401 AliAnalysisTaskB2.cxx:402 AliAnalysisTaskB2.cxx:403 AliAnalysisTaskB2.cxx:404 AliAnalysisTaskB2.cxx:405 AliAnalysisTaskB2.cxx:406 AliAnalysisTaskB2.cxx:407 AliAnalysisTaskB2.cxx:408 AliAnalysisTaskB2.cxx:409 AliAnalysisTaskB2.cxx:410 AliAnalysisTaskB2.cxx:411 AliAnalysisTaskB2.cxx:412 AliAnalysisTaskB2.cxx:413 AliAnalysisTaskB2.cxx:414 AliAnalysisTaskB2.cxx:415 AliAnalysisTaskB2.cxx:416 AliAnalysisTaskB2.cxx:417 AliAnalysisTaskB2.cxx:418 AliAnalysisTaskB2.cxx:419 AliAnalysisTaskB2.cxx:420 AliAnalysisTaskB2.cxx:421 AliAnalysisTaskB2.cxx:422 AliAnalysisTaskB2.cxx:423 AliAnalysisTaskB2.cxx:424 AliAnalysisTaskB2.cxx:425 AliAnalysisTaskB2.cxx:426 AliAnalysisTaskB2.cxx:427 AliAnalysisTaskB2.cxx:428 AliAnalysisTaskB2.cxx:429 AliAnalysisTaskB2.cxx:430 AliAnalysisTaskB2.cxx:431 AliAnalysisTaskB2.cxx:432 AliAnalysisTaskB2.cxx:433 AliAnalysisTaskB2.cxx:434 AliAnalysisTaskB2.cxx:435 AliAnalysisTaskB2.cxx:436 AliAnalysisTaskB2.cxx:437 AliAnalysisTaskB2.cxx:438 AliAnalysisTaskB2.cxx:439 AliAnalysisTaskB2.cxx:440 AliAnalysisTaskB2.cxx:441 AliAnalysisTaskB2.cxx:442 AliAnalysisTaskB2.cxx:443 AliAnalysisTaskB2.cxx:444 AliAnalysisTaskB2.cxx:445 AliAnalysisTaskB2.cxx:446 AliAnalysisTaskB2.cxx:447 AliAnalysisTaskB2.cxx:448 AliAnalysisTaskB2.cxx:449 AliAnalysisTaskB2.cxx:450 AliAnalysisTaskB2.cxx:451 AliAnalysisTaskB2.cxx:452 AliAnalysisTaskB2.cxx:453 AliAnalysisTaskB2.cxx:454 AliAnalysisTaskB2.cxx:455 AliAnalysisTaskB2.cxx:456 AliAnalysisTaskB2.cxx:457 AliAnalysisTaskB2.cxx:458 AliAnalysisTaskB2.cxx:459 AliAnalysisTaskB2.cxx:460 AliAnalysisTaskB2.cxx:461 AliAnalysisTaskB2.cxx:462 AliAnalysisTaskB2.cxx:463 AliAnalysisTaskB2.cxx:464 AliAnalysisTaskB2.cxx:465 AliAnalysisTaskB2.cxx:466 AliAnalysisTaskB2.cxx:467 AliAnalysisTaskB2.cxx:468 AliAnalysisTaskB2.cxx:469 AliAnalysisTaskB2.cxx:470 AliAnalysisTaskB2.cxx:471 AliAnalysisTaskB2.cxx:472 AliAnalysisTaskB2.cxx:473 AliAnalysisTaskB2.cxx:474 AliAnalysisTaskB2.cxx:475 AliAnalysisTaskB2.cxx:476 AliAnalysisTaskB2.cxx:477 AliAnalysisTaskB2.cxx:478 AliAnalysisTaskB2.cxx:479 AliAnalysisTaskB2.cxx:480 AliAnalysisTaskB2.cxx:481 AliAnalysisTaskB2.cxx:482 AliAnalysisTaskB2.cxx:483 AliAnalysisTaskB2.cxx:484 AliAnalysisTaskB2.cxx:485 AliAnalysisTaskB2.cxx:486 AliAnalysisTaskB2.cxx:487 AliAnalysisTaskB2.cxx:488 AliAnalysisTaskB2.cxx:489 AliAnalysisTaskB2.cxx:490 AliAnalysisTaskB2.cxx:491 AliAnalysisTaskB2.cxx:492 AliAnalysisTaskB2.cxx:493 AliAnalysisTaskB2.cxx:494 AliAnalysisTaskB2.cxx:495 AliAnalysisTaskB2.cxx:496 AliAnalysisTaskB2.cxx:497 AliAnalysisTaskB2.cxx:498 AliAnalysisTaskB2.cxx:499 AliAnalysisTaskB2.cxx:500 AliAnalysisTaskB2.cxx:501 AliAnalysisTaskB2.cxx:502 AliAnalysisTaskB2.cxx:503 AliAnalysisTaskB2.cxx:504 AliAnalysisTaskB2.cxx:505 AliAnalysisTaskB2.cxx:506 AliAnalysisTaskB2.cxx:507 AliAnalysisTaskB2.cxx:508 AliAnalysisTaskB2.cxx:509 AliAnalysisTaskB2.cxx:510 AliAnalysisTaskB2.cxx:511 AliAnalysisTaskB2.cxx:512 AliAnalysisTaskB2.cxx:513 AliAnalysisTaskB2.cxx:514 AliAnalysisTaskB2.cxx:515 AliAnalysisTaskB2.cxx:516 AliAnalysisTaskB2.cxx:517 AliAnalysisTaskB2.cxx:518 AliAnalysisTaskB2.cxx:519 AliAnalysisTaskB2.cxx:520 AliAnalysisTaskB2.cxx:521 AliAnalysisTaskB2.cxx:522 AliAnalysisTaskB2.cxx:523 AliAnalysisTaskB2.cxx:524 AliAnalysisTaskB2.cxx:525 AliAnalysisTaskB2.cxx:526 AliAnalysisTaskB2.cxx:527 AliAnalysisTaskB2.cxx:528 AliAnalysisTaskB2.cxx:529 AliAnalysisTaskB2.cxx:530 AliAnalysisTaskB2.cxx:531 AliAnalysisTaskB2.cxx:532 AliAnalysisTaskB2.cxx:533 AliAnalysisTaskB2.cxx:534 AliAnalysisTaskB2.cxx:535 AliAnalysisTaskB2.cxx:536 AliAnalysisTaskB2.cxx:537 AliAnalysisTaskB2.cxx:538 AliAnalysisTaskB2.cxx:539 AliAnalysisTaskB2.cxx:540 AliAnalysisTaskB2.cxx:541 AliAnalysisTaskB2.cxx:542 AliAnalysisTaskB2.cxx:543 AliAnalysisTaskB2.cxx:544 AliAnalysisTaskB2.cxx:545 AliAnalysisTaskB2.cxx:546 AliAnalysisTaskB2.cxx:547 AliAnalysisTaskB2.cxx:548 AliAnalysisTaskB2.cxx:549 AliAnalysisTaskB2.cxx:550 AliAnalysisTaskB2.cxx:551 AliAnalysisTaskB2.cxx:552 AliAnalysisTaskB2.cxx:553 AliAnalysisTaskB2.cxx:554 AliAnalysisTaskB2.cxx:555 AliAnalysisTaskB2.cxx:556 AliAnalysisTaskB2.cxx:557 AliAnalysisTaskB2.cxx:558 AliAnalysisTaskB2.cxx:559 AliAnalysisTaskB2.cxx:560 AliAnalysisTaskB2.cxx:561 AliAnalysisTaskB2.cxx:562 AliAnalysisTaskB2.cxx:563 AliAnalysisTaskB2.cxx:564 AliAnalysisTaskB2.cxx:565 AliAnalysisTaskB2.cxx:566 AliAnalysisTaskB2.cxx:567 AliAnalysisTaskB2.cxx:568 AliAnalysisTaskB2.cxx:569 AliAnalysisTaskB2.cxx:570 AliAnalysisTaskB2.cxx:571 AliAnalysisTaskB2.cxx:572 AliAnalysisTaskB2.cxx:573 AliAnalysisTaskB2.cxx:574 AliAnalysisTaskB2.cxx:575 AliAnalysisTaskB2.cxx:576 AliAnalysisTaskB2.cxx:577 AliAnalysisTaskB2.cxx:578 AliAnalysisTaskB2.cxx:579 AliAnalysisTaskB2.cxx:580 AliAnalysisTaskB2.cxx:581 AliAnalysisTaskB2.cxx:582 AliAnalysisTaskB2.cxx:583 AliAnalysisTaskB2.cxx:584 AliAnalysisTaskB2.cxx:585 AliAnalysisTaskB2.cxx:586 AliAnalysisTaskB2.cxx:587 AliAnalysisTaskB2.cxx:588 AliAnalysisTaskB2.cxx:589 AliAnalysisTaskB2.cxx:590 AliAnalysisTaskB2.cxx:591 AliAnalysisTaskB2.cxx:592 AliAnalysisTaskB2.cxx:593 AliAnalysisTaskB2.cxx:594 AliAnalysisTaskB2.cxx:595 AliAnalysisTaskB2.cxx:596 AliAnalysisTaskB2.cxx:597 AliAnalysisTaskB2.cxx:598 AliAnalysisTaskB2.cxx:599 AliAnalysisTaskB2.cxx:600 AliAnalysisTaskB2.cxx:601 AliAnalysisTaskB2.cxx:602 AliAnalysisTaskB2.cxx:603 AliAnalysisTaskB2.cxx:604 AliAnalysisTaskB2.cxx:605 AliAnalysisTaskB2.cxx:606 AliAnalysisTaskB2.cxx:607 AliAnalysisTaskB2.cxx:608 AliAnalysisTaskB2.cxx:609 AliAnalysisTaskB2.cxx:610 AliAnalysisTaskB2.cxx:611 AliAnalysisTaskB2.cxx:612 AliAnalysisTaskB2.cxx:613 AliAnalysisTaskB2.cxx:614 AliAnalysisTaskB2.cxx:615 AliAnalysisTaskB2.cxx:616 AliAnalysisTaskB2.cxx:617 AliAnalysisTaskB2.cxx:618 AliAnalysisTaskB2.cxx:619 AliAnalysisTaskB2.cxx:620 AliAnalysisTaskB2.cxx:621 AliAnalysisTaskB2.cxx:622 AliAnalysisTaskB2.cxx:623 AliAnalysisTaskB2.cxx:624 AliAnalysisTaskB2.cxx:625 AliAnalysisTaskB2.cxx:626 AliAnalysisTaskB2.cxx:627 AliAnalysisTaskB2.cxx:628 AliAnalysisTaskB2.cxx:629 AliAnalysisTaskB2.cxx:630 AliAnalysisTaskB2.cxx:631 AliAnalysisTaskB2.cxx:632 AliAnalysisTaskB2.cxx:633 AliAnalysisTaskB2.cxx:634 AliAnalysisTaskB2.cxx:635 AliAnalysisTaskB2.cxx:636 AliAnalysisTaskB2.cxx:637 AliAnalysisTaskB2.cxx:638 AliAnalysisTaskB2.cxx:639 AliAnalysisTaskB2.cxx:640 AliAnalysisTaskB2.cxx:641 AliAnalysisTaskB2.cxx:642 AliAnalysisTaskB2.cxx:643 AliAnalysisTaskB2.cxx:644 AliAnalysisTaskB2.cxx:645 AliAnalysisTaskB2.cxx:646 AliAnalysisTaskB2.cxx:647 AliAnalysisTaskB2.cxx:648 AliAnalysisTaskB2.cxx:649 AliAnalysisTaskB2.cxx:650 AliAnalysisTaskB2.cxx:651 AliAnalysisTaskB2.cxx:652 AliAnalysisTaskB2.cxx:653 AliAnalysisTaskB2.cxx:654 AliAnalysisTaskB2.cxx:655 AliAnalysisTaskB2.cxx:656 AliAnalysisTaskB2.cxx:657 AliAnalysisTaskB2.cxx:658 AliAnalysisTaskB2.cxx:659 AliAnalysisTaskB2.cxx:660 AliAnalysisTaskB2.cxx:661 AliAnalysisTaskB2.cxx:662 AliAnalysisTaskB2.cxx:663 AliAnalysisTaskB2.cxx:664 AliAnalysisTaskB2.cxx:665 AliAnalysisTaskB2.cxx:666 AliAnalysisTaskB2.cxx:667 AliAnalysisTaskB2.cxx:668 AliAnalysisTaskB2.cxx:669 AliAnalysisTaskB2.cxx:670 AliAnalysisTaskB2.cxx:671 AliAnalysisTaskB2.cxx:672 AliAnalysisTaskB2.cxx:673 AliAnalysisTaskB2.cxx:674 AliAnalysisTaskB2.cxx:675 AliAnalysisTaskB2.cxx:676 AliAnalysisTaskB2.cxx:677 AliAnalysisTaskB2.cxx:678 AliAnalysisTaskB2.cxx:679 AliAnalysisTaskB2.cxx:680 AliAnalysisTaskB2.cxx:681 AliAnalysisTaskB2.cxx:682 AliAnalysisTaskB2.cxx:683 AliAnalysisTaskB2.cxx:684 AliAnalysisTaskB2.cxx:685 AliAnalysisTaskB2.cxx:686 AliAnalysisTaskB2.cxx:687 AliAnalysisTaskB2.cxx:688 AliAnalysisTaskB2.cxx:689 AliAnalysisTaskB2.cxx:690 AliAnalysisTaskB2.cxx:691 AliAnalysisTaskB2.cxx:692 AliAnalysisTaskB2.cxx:693 AliAnalysisTaskB2.cxx:694 AliAnalysisTaskB2.cxx:695 AliAnalysisTaskB2.cxx:696 AliAnalysisTaskB2.cxx:697 AliAnalysisTaskB2.cxx:698 AliAnalysisTaskB2.cxx:699 AliAnalysisTaskB2.cxx:700 AliAnalysisTaskB2.cxx:701 AliAnalysisTaskB2.cxx:702 AliAnalysisTaskB2.cxx:703 AliAnalysisTaskB2.cxx:704 AliAnalysisTaskB2.cxx:705 AliAnalysisTaskB2.cxx:706 AliAnalysisTaskB2.cxx:707 AliAnalysisTaskB2.cxx:708 AliAnalysisTaskB2.cxx:709 AliAnalysisTaskB2.cxx:710 AliAnalysisTaskB2.cxx:711 AliAnalysisTaskB2.cxx:712 AliAnalysisTaskB2.cxx:713 AliAnalysisTaskB2.cxx:714 AliAnalysisTaskB2.cxx:715 AliAnalysisTaskB2.cxx:716 AliAnalysisTaskB2.cxx:717 AliAnalysisTaskB2.cxx:718 AliAnalysisTaskB2.cxx:719 AliAnalysisTaskB2.cxx:720 AliAnalysisTaskB2.cxx:721 AliAnalysisTaskB2.cxx:722 AliAnalysisTaskB2.cxx:723 AliAnalysisTaskB2.cxx:724 AliAnalysisTaskB2.cxx:725 AliAnalysisTaskB2.cxx:726 AliAnalysisTaskB2.cxx:727 AliAnalysisTaskB2.cxx:728 AliAnalysisTaskB2.cxx:729 AliAnalysisTaskB2.cxx:730 AliAnalysisTaskB2.cxx:731 AliAnalysisTaskB2.cxx:732 AliAnalysisTaskB2.cxx:733 AliAnalysisTaskB2.cxx:734 AliAnalysisTaskB2.cxx:735 AliAnalysisTaskB2.cxx:736 AliAnalysisTaskB2.cxx:737 AliAnalysisTaskB2.cxx:738 AliAnalysisTaskB2.cxx:739 AliAnalysisTaskB2.cxx:740 AliAnalysisTaskB2.cxx:741 AliAnalysisTaskB2.cxx:742 AliAnalysisTaskB2.cxx:743 AliAnalysisTaskB2.cxx:744 AliAnalysisTaskB2.cxx:745 AliAnalysisTaskB2.cxx:746 AliAnalysisTaskB2.cxx:747 AliAnalysisTaskB2.cxx:748 AliAnalysisTaskB2.cxx:749 AliAnalysisTaskB2.cxx:750 AliAnalysisTaskB2.cxx:751 AliAnalysisTaskB2.cxx:752 AliAnalysisTaskB2.cxx:753 AliAnalysisTaskB2.cxx:754 AliAnalysisTaskB2.cxx:755 AliAnalysisTaskB2.cxx:756 AliAnalysisTaskB2.cxx:757 AliAnalysisTaskB2.cxx:758 AliAnalysisTaskB2.cxx:759 AliAnalysisTaskB2.cxx:760 AliAnalysisTaskB2.cxx:761 AliAnalysisTaskB2.cxx:762 AliAnalysisTaskB2.cxx:763 AliAnalysisTaskB2.cxx:764 AliAnalysisTaskB2.cxx:765 AliAnalysisTaskB2.cxx:766 AliAnalysisTaskB2.cxx:767 AliAnalysisTaskB2.cxx:768 AliAnalysisTaskB2.cxx:769 AliAnalysisTaskB2.cxx:770 AliAnalysisTaskB2.cxx:771 AliAnalysisTaskB2.cxx:772 AliAnalysisTaskB2.cxx:773 AliAnalysisTaskB2.cxx:774 AliAnalysisTaskB2.cxx:775 AliAnalysisTaskB2.cxx:776 AliAnalysisTaskB2.cxx:777 AliAnalysisTaskB2.cxx:778 AliAnalysisTaskB2.cxx:779 AliAnalysisTaskB2.cxx:780 AliAnalysisTaskB2.cxx:781 AliAnalysisTaskB2.cxx:782 AliAnalysisTaskB2.cxx:783 AliAnalysisTaskB2.cxx:784 AliAnalysisTaskB2.cxx:785 AliAnalysisTaskB2.cxx:786 AliAnalysisTaskB2.cxx:787 AliAnalysisTaskB2.cxx:788 AliAnalysisTaskB2.cxx:789 AliAnalysisTaskB2.cxx:790 AliAnalysisTaskB2.cxx:791 AliAnalysisTaskB2.cxx:792 AliAnalysisTaskB2.cxx:793 AliAnalysisTaskB2.cxx:794 AliAnalysisTaskB2.cxx:795 AliAnalysisTaskB2.cxx:796 AliAnalysisTaskB2.cxx:797 AliAnalysisTaskB2.cxx:798 AliAnalysisTaskB2.cxx:799 AliAnalysisTaskB2.cxx:800 AliAnalysisTaskB2.cxx:801 AliAnalysisTaskB2.cxx:802 AliAnalysisTaskB2.cxx:803 AliAnalysisTaskB2.cxx:804 AliAnalysisTaskB2.cxx:805 AliAnalysisTaskB2.cxx:806 AliAnalysisTaskB2.cxx:807 AliAnalysisTaskB2.cxx:808 AliAnalysisTaskB2.cxx:809 AliAnalysisTaskB2.cxx:810 AliAnalysisTaskB2.cxx:811 AliAnalysisTaskB2.cxx:812 AliAnalysisTaskB2.cxx:813 AliAnalysisTaskB2.cxx:814 AliAnalysisTaskB2.cxx:815 AliAnalysisTaskB2.cxx:816 AliAnalysisTaskB2.cxx:817 AliAnalysisTaskB2.cxx:818 AliAnalysisTaskB2.cxx:819 AliAnalysisTaskB2.cxx:820 AliAnalysisTaskB2.cxx:821 AliAnalysisTaskB2.cxx:822 AliAnalysisTaskB2.cxx:823 AliAnalysisTaskB2.cxx:824 AliAnalysisTaskB2.cxx:825 AliAnalysisTaskB2.cxx:826 AliAnalysisTaskB2.cxx:827 AliAnalysisTaskB2.cxx:828 AliAnalysisTaskB2.cxx:829 AliAnalysisTaskB2.cxx:830 AliAnalysisTaskB2.cxx:831 AliAnalysisTaskB2.cxx:832 AliAnalysisTaskB2.cxx:833 AliAnalysisTaskB2.cxx:834 AliAnalysisTaskB2.cxx:835 AliAnalysisTaskB2.cxx:836 AliAnalysisTaskB2.cxx:837 AliAnalysisTaskB2.cxx:838 AliAnalysisTaskB2.cxx:839 AliAnalysisTaskB2.cxx:840 AliAnalysisTaskB2.cxx:841 AliAnalysisTaskB2.cxx:842 AliAnalysisTaskB2.cxx:843 AliAnalysisTaskB2.cxx:844 AliAnalysisTaskB2.cxx:845 AliAnalysisTaskB2.cxx:846 AliAnalysisTaskB2.cxx:847 AliAnalysisTaskB2.cxx:848 AliAnalysisTaskB2.cxx:849 AliAnalysisTaskB2.cxx:850 AliAnalysisTaskB2.cxx:851 AliAnalysisTaskB2.cxx:852 AliAnalysisTaskB2.cxx:853 AliAnalysisTaskB2.cxx:854 AliAnalysisTaskB2.cxx:855 AliAnalysisTaskB2.cxx:856 AliAnalysisTaskB2.cxx:857 AliAnalysisTaskB2.cxx:858 AliAnalysisTaskB2.cxx:859 AliAnalysisTaskB2.cxx:860 AliAnalysisTaskB2.cxx:861 AliAnalysisTaskB2.cxx:862 AliAnalysisTaskB2.cxx:863 AliAnalysisTaskB2.cxx:864 AliAnalysisTaskB2.cxx:865 AliAnalysisTaskB2.cxx:866 AliAnalysisTaskB2.cxx:867 AliAnalysisTaskB2.cxx:868 AliAnalysisTaskB2.cxx:869 AliAnalysisTaskB2.cxx:870 AliAnalysisTaskB2.cxx:871 AliAnalysisTaskB2.cxx:872 AliAnalysisTaskB2.cxx:873 AliAnalysisTaskB2.cxx:874 AliAnalysisTaskB2.cxx:875 AliAnalysisTaskB2.cxx:876 AliAnalysisTaskB2.cxx:877 AliAnalysisTaskB2.cxx:878 AliAnalysisTaskB2.cxx:879 AliAnalysisTaskB2.cxx:880 AliAnalysisTaskB2.cxx:881 AliAnalysisTaskB2.cxx:882 AliAnalysisTaskB2.cxx:883 AliAnalysisTaskB2.cxx:884 AliAnalysisTaskB2.cxx:885 AliAnalysisTaskB2.cxx:886 AliAnalysisTaskB2.cxx:887 AliAnalysisTaskB2.cxx:888 AliAnalysisTaskB2.cxx:889 AliAnalysisTaskB2.cxx:890 AliAnalysisTaskB2.cxx:891 AliAnalysisTaskB2.cxx:892 AliAnalysisTaskB2.cxx:893 AliAnalysisTaskB2.cxx:894 AliAnalysisTaskB2.cxx:895 AliAnalysisTaskB2.cxx:896 AliAnalysisTaskB2.cxx:897 AliAnalysisTaskB2.cxx:898 AliAnalysisTaskB2.cxx:899 AliAnalysisTaskB2.cxx:900 AliAnalysisTaskB2.cxx:901 AliAnalysisTaskB2.cxx:902 AliAnalysisTaskB2.cxx:903 AliAnalysisTaskB2.cxx:904 AliAnalysisTaskB2.cxx:905 AliAnalysisTaskB2.cxx:906 AliAnalysisTaskB2.cxx:907 AliAnalysisTaskB2.cxx:908 AliAnalysisTaskB2.cxx:909 AliAnalysisTaskB2.cxx:910 AliAnalysisTaskB2.cxx:911 AliAnalysisTaskB2.cxx:912 AliAnalysisTaskB2.cxx:913 AliAnalysisTaskB2.cxx:914 AliAnalysisTaskB2.cxx:915 AliAnalysisTaskB2.cxx:916 AliAnalysisTaskB2.cxx:917 AliAnalysisTaskB2.cxx:918 AliAnalysisTaskB2.cxx:919 AliAnalysisTaskB2.cxx:920 AliAnalysisTaskB2.cxx:921 AliAnalysisTaskB2.cxx:922 AliAnalysisTaskB2.cxx:923 AliAnalysisTaskB2.cxx:924 AliAnalysisTaskB2.cxx:925 AliAnalysisTaskB2.cxx:926 AliAnalysisTaskB2.cxx:927 AliAnalysisTaskB2.cxx:928 AliAnalysisTaskB2.cxx:929 AliAnalysisTaskB2.cxx:930 AliAnalysisTaskB2.cxx:931 AliAnalysisTaskB2.cxx:932 AliAnalysisTaskB2.cxx:933 AliAnalysisTaskB2.cxx:934 AliAnalysisTaskB2.cxx:935 AliAnalysisTaskB2.cxx:936 AliAnalysisTaskB2.cxx:937 AliAnalysisTaskB2.cxx:938 AliAnalysisTaskB2.cxx:939 AliAnalysisTaskB2.cxx:940 AliAnalysisTaskB2.cxx:941 AliAnalysisTaskB2.cxx:942 AliAnalysisTaskB2.cxx:943 AliAnalysisTaskB2.cxx:944 AliAnalysisTaskB2.cxx:945 AliAnalysisTaskB2.cxx:946 AliAnalysisTaskB2.cxx:947 AliAnalysisTaskB2.cxx:948 AliAnalysisTaskB2.cxx:949 AliAnalysisTaskB2.cxx:950 AliAnalysisTaskB2.cxx:951 AliAnalysisTaskB2.cxx:952 AliAnalysisTaskB2.cxx:953 AliAnalysisTaskB2.cxx:954 AliAnalysisTaskB2.cxx:955 AliAnalysisTaskB2.cxx:956 AliAnalysisTaskB2.cxx:957 AliAnalysisTaskB2.cxx:958 AliAnalysisTaskB2.cxx:959 AliAnalysisTaskB2.cxx:960 AliAnalysisTaskB2.cxx:961 AliAnalysisTaskB2.cxx:962 AliAnalysisTaskB2.cxx:963 AliAnalysisTaskB2.cxx:964 AliAnalysisTaskB2.cxx:965 AliAnalysisTaskB2.cxx:966 AliAnalysisTaskB2.cxx:967 AliAnalysisTaskB2.cxx:968 AliAnalysisTaskB2.cxx:969 AliAnalysisTaskB2.cxx:970 AliAnalysisTaskB2.cxx:971 AliAnalysisTaskB2.cxx:972 AliAnalysisTaskB2.cxx:973 AliAnalysisTaskB2.cxx:974 AliAnalysisTaskB2.cxx:975 AliAnalysisTaskB2.cxx:976 AliAnalysisTaskB2.cxx:977 AliAnalysisTaskB2.cxx:978 AliAnalysisTaskB2.cxx:979 AliAnalysisTaskB2.cxx:980 AliAnalysisTaskB2.cxx:981 AliAnalysisTaskB2.cxx:982 AliAnalysisTaskB2.cxx:983 AliAnalysisTaskB2.cxx:984 AliAnalysisTaskB2.cxx:985 AliAnalysisTaskB2.cxx:986 AliAnalysisTaskB2.cxx:987 AliAnalysisTaskB2.cxx:988 AliAnalysisTaskB2.cxx:989 AliAnalysisTaskB2.cxx:990 AliAnalysisTaskB2.cxx:991 AliAnalysisTaskB2.cxx:992 AliAnalysisTaskB2.cxx:993 AliAnalysisTaskB2.cxx:994 AliAnalysisTaskB2.cxx:995 AliAnalysisTaskB2.cxx:996 AliAnalysisTaskB2.cxx:997 AliAnalysisTaskB2.cxx:998 AliAnalysisTaskB2.cxx:999 AliAnalysisTaskB2.cxx:1000 AliAnalysisTaskB2.cxx:1001 AliAnalysisTaskB2.cxx:1002 AliAnalysisTaskB2.cxx:1003 AliAnalysisTaskB2.cxx:1004 AliAnalysisTaskB2.cxx:1005 AliAnalysisTaskB2.cxx:1006 AliAnalysisTaskB2.cxx:1007 AliAnalysisTaskB2.cxx:1008 AliAnalysisTaskB2.cxx:1009 AliAnalysisTaskB2.cxx:1010 AliAnalysisTaskB2.cxx:1011 AliAnalysisTaskB2.cxx:1012 AliAnalysisTaskB2.cxx:1013 AliAnalysisTaskB2.cxx:1014 AliAnalysisTaskB2.cxx:1015 AliAnalysisTaskB2.cxx:1016 AliAnalysisTaskB2.cxx:1017 AliAnalysisTaskB2.cxx:1018 AliAnalysisTaskB2.cxx:1019 AliAnalysisTaskB2.cxx:1020 AliAnalysisTaskB2.cxx:1021 AliAnalysisTaskB2.cxx:1022 AliAnalysisTaskB2.cxx:1023 AliAnalysisTaskB2.cxx:1024 AliAnalysisTaskB2.cxx:1025 AliAnalysisTaskB2.cxx:1026 AliAnalysisTaskB2.cxx:1027 AliAnalysisTaskB2.cxx:1028 AliAnalysisTaskB2.cxx:1029 AliAnalysisTaskB2.cxx:1030 AliAnalysisTaskB2.cxx:1031 AliAnalysisTaskB2.cxx:1032 AliAnalysisTaskB2.cxx:1033 AliAnalysisTaskB2.cxx:1034 AliAnalysisTaskB2.cxx:1035 AliAnalysisTaskB2.cxx:1036 AliAnalysisTaskB2.cxx:1037 AliAnalysisTaskB2.cxx:1038 AliAnalysisTaskB2.cxx:1039 AliAnalysisTaskB2.cxx:1040 AliAnalysisTaskB2.cxx:1041 AliAnalysisTaskB2.cxx:1042 AliAnalysisTaskB2.cxx:1043 AliAnalysisTaskB2.cxx:1044 AliAnalysisTaskB2.cxx:1045 AliAnalysisTaskB2.cxx:1046 AliAnalysisTaskB2.cxx:1047 AliAnalysisTaskB2.cxx:1048 AliAnalysisTaskB2.cxx:1049 AliAnalysisTaskB2.cxx:1050 AliAnalysisTaskB2.cxx:1051 AliAnalysisTaskB2.cxx:1052 AliAnalysisTaskB2.cxx:1053 AliAnalysisTaskB2.cxx:1054 AliAnalysisTaskB2.cxx:1055 AliAnalysisTaskB2.cxx:1056 AliAnalysisTaskB2.cxx:1057 AliAnalysisTaskB2.cxx:1058 AliAnalysisTaskB2.cxx:1059 AliAnalysisTaskB2.cxx:1060 AliAnalysisTaskB2.cxx:1061 AliAnalysisTaskB2.cxx:1062 AliAnalysisTaskB2.cxx:1063 AliAnalysisTaskB2.cxx:1064 AliAnalysisTaskB2.cxx:1065 AliAnalysisTaskB2.cxx:1066 AliAnalysisTaskB2.cxx:1067 AliAnalysisTaskB2.cxx:1068 AliAnalysisTaskB2.cxx:1069 AliAnalysisTaskB2.cxx:1070 AliAnalysisTaskB2.cxx:1071 AliAnalysisTaskB2.cxx:1072 AliAnalysisTaskB2.cxx:1073 AliAnalysisTaskB2.cxx:1074 AliAnalysisTaskB2.cxx:1075 AliAnalysisTaskB2.cxx:1076 AliAnalysisTaskB2.cxx:1077 AliAnalysisTaskB2.cxx:1078 AliAnalysisTaskB2.cxx:1079 AliAnalysisTaskB2.cxx:1080 AliAnalysisTaskB2.cxx:1081 AliAnalysisTaskB2.cxx:1082 AliAnalysisTaskB2.cxx:1083 AliAnalysisTaskB2.cxx:1084 AliAnalysisTaskB2.cxx:1085 AliAnalysisTaskB2.cxx:1086 AliAnalysisTaskB2.cxx:1087 AliAnalysisTaskB2.cxx:1088 AliAnalysisTaskB2.cxx:1089 AliAnalysisTaskB2.cxx:1090 AliAnalysisTaskB2.cxx:1091 AliAnalysisTaskB2.cxx:1092 AliAnalysisTaskB2.cxx:1093 AliAnalysisTaskB2.cxx:1094 AliAnalysisTaskB2.cxx:1095 AliAnalysisTaskB2.cxx:1096 AliAnalysisTaskB2.cxx:1097 AliAnalysisTaskB2.cxx:1098 AliAnalysisTaskB2.cxx:1099 AliAnalysisTaskB2.cxx:1100 AliAnalysisTaskB2.cxx:1101 AliAnalysisTaskB2.cxx:1102 AliAnalysisTaskB2.cxx:1103 AliAnalysisTaskB2.cxx:1104 AliAnalysisTaskB2.cxx:1105 AliAnalysisTaskB2.cxx:1106 AliAnalysisTaskB2.cxx:1107 AliAnalysisTaskB2.cxx:1108 AliAnalysisTaskB2.cxx:1109 AliAnalysisTaskB2.cxx:1110 AliAnalysisTaskB2.cxx:1111 AliAnalysisTaskB2.cxx:1112 AliAnalysisTaskB2.cxx:1113 AliAnalysisTaskB2.cxx:1114 AliAnalysisTaskB2.cxx:1115 AliAnalysisTaskB2.cxx:1116 AliAnalysisTaskB2.cxx:1117 AliAnalysisTaskB2.cxx:1118 AliAnalysisTaskB2.cxx:1119 AliAnalysisTaskB2.cxx:1120 AliAnalysisTaskB2.cxx:1121 AliAnalysisTaskB2.cxx:1122 AliAnalysisTaskB2.cxx:1123 AliAnalysisTaskB2.cxx:1124 AliAnalysisTaskB2.cxx:1125 AliAnalysisTaskB2.cxx:1126 AliAnalysisTaskB2.cxx:1127 AliAnalysisTaskB2.cxx:1128 AliAnalysisTaskB2.cxx:1129 AliAnalysisTaskB2.cxx:1130 AliAnalysisTaskB2.cxx:1131 AliAnalysisTaskB2.cxx:1132 AliAnalysisTaskB2.cxx:1133 AliAnalysisTaskB2.cxx:1134 AliAnalysisTaskB2.cxx:1135 AliAnalysisTaskB2.cxx:1136 AliAnalysisTaskB2.cxx:1137 AliAnalysisTaskB2.cxx:1138 AliAnalysisTaskB2.cxx:1139 AliAnalysisTaskB2.cxx:1140 AliAnalysisTaskB2.cxx:1141 AliAnalysisTaskB2.cxx:1142 AliAnalysisTaskB2.cxx:1143 AliAnalysisTaskB2.cxx:1144 AliAnalysisTaskB2.cxx:1145 AliAnalysisTaskB2.cxx:1146 AliAnalysisTaskB2.cxx:1147 AliAnalysisTaskB2.cxx:1148 AliAnalysisTaskB2.cxx:1149 AliAnalysisTaskB2.cxx:1150 AliAnalysisTaskB2.cxx:1151 AliAnalysisTaskB2.cxx:1152 AliAnalysisTaskB2.cxx:1153 AliAnalysisTaskB2.cxx:1154 AliAnalysisTaskB2.cxx:1155 AliAnalysisTaskB2.cxx:1156 AliAnalysisTaskB2.cxx:1157 AliAnalysisTaskB2.cxx:1158 AliAnalysisTaskB2.cxx:1159 AliAnalysisTaskB2.cxx:1160 AliAnalysisTaskB2.cxx:1161 AliAnalysisTaskB2.cxx:1162 AliAnalysisTaskB2.cxx:1163 AliAnalysisTaskB2.cxx:1164 AliAnalysisTaskB2.cxx:1165 AliAnalysisTaskB2.cxx:1166 AliAnalysisTaskB2.cxx:1167 AliAnalysisTaskB2.cxx:1168 AliAnalysisTaskB2.cxx:1169 AliAnalysisTaskB2.cxx:1170 AliAnalysisTaskB2.cxx:1171 AliAnalysisTaskB2.cxx:1172 AliAnalysisTaskB2.cxx:1173 AliAnalysisTaskB2.cxx:1174 AliAnalysisTaskB2.cxx:1175 AliAnalysisTaskB2.cxx:1176 AliAnalysisTaskB2.cxx:1177 AliAnalysisTaskB2.cxx:1178 AliAnalysisTaskB2.cxx:1179 AliAnalysisTaskB2.cxx:1180 AliAnalysisTaskB2.cxx:1181 AliAnalysisTaskB2.cxx:1182 AliAnalysisTaskB2.cxx:1183 AliAnalysisTaskB2.cxx:1184 AliAnalysisTaskB2.cxx:1185 AliAnalysisTaskB2.cxx:1186 AliAnalysisTaskB2.cxx:1187 AliAnalysisTaskB2.cxx:1188 AliAnalysisTaskB2.cxx:1189 AliAnalysisTaskB2.cxx:1190 AliAnalysisTaskB2.cxx:1191 AliAnalysisTaskB2.cxx:1192 AliAnalysisTaskB2.cxx:1193 AliAnalysisTaskB2.cxx:1194 AliAnalysisTaskB2.cxx:1195 AliAnalysisTaskB2.cxx:1196 AliAnalysisTaskB2.cxx:1197 AliAnalysisTaskB2.cxx:1198 AliAnalysisTaskB2.cxx:1199 AliAnalysisTaskB2.cxx:1200 AliAnalysisTaskB2.cxx:1201 AliAnalysisTaskB2.cxx:1202 AliAnalysisTaskB2.cxx:1203 AliAnalysisTaskB2.cxx:1204 AliAnalysisTaskB2.cxx:1205 AliAnalysisTaskB2.cxx:1206 AliAnalysisTaskB2.cxx:1207 AliAnalysisTaskB2.cxx:1208 AliAnalysisTaskB2.cxx:1209 AliAnalysisTaskB2.cxx:1210 AliAnalysisTaskB2.cxx:1211 AliAnalysisTaskB2.cxx:1212 AliAnalysisTaskB2.cxx:1213 AliAnalysisTaskB2.cxx:1214 AliAnalysisTaskB2.cxx:1215 AliAnalysisTaskB2.cxx:1216 AliAnalysisTaskB2.cxx:1217 AliAnalysisTaskB2.cxx:1218 AliAnalysisTaskB2.cxx:1219 AliAnalysisTaskB2.cxx:1220 AliAnalysisTaskB2.cxx:1221 AliAnalysisTaskB2.cxx:1222 AliAnalysisTaskB2.cxx:1223 AliAnalysisTaskB2.cxx:1224 AliAnalysisTaskB2.cxx:1225 AliAnalysisTaskB2.cxx:1226 AliAnalysisTaskB2.cxx:1227 AliAnalysisTaskB2.cxx:1228 AliAnalysisTaskB2.cxx:1229 AliAnalysisTaskB2.cxx:1230 AliAnalysisTaskB2.cxx:1231 AliAnalysisTaskB2.cxx:1232 AliAnalysisTaskB2.cxx:1233 AliAnalysisTaskB2.cxx:1234 AliAnalysisTaskB2.cxx:1235 AliAnalysisTaskB2.cxx:1236 AliAnalysisTaskB2.cxx:1237 AliAnalysisTaskB2.cxx:1238 AliAnalysisTaskB2.cxx:1239 AliAnalysisTaskB2.cxx:1240 AliAnalysisTaskB2.cxx:1241 AliAnalysisTaskB2.cxx:1242 AliAnalysisTaskB2.cxx:1243 AliAnalysisTaskB2.cxx:1244 AliAnalysisTaskB2.cxx:1245 AliAnalysisTaskB2.cxx:1246 AliAnalysisTaskB2.cxx:1247 AliAnalysisTaskB2.cxx:1248 AliAnalysisTaskB2.cxx:1249 AliAnalysisTaskB2.cxx:1250 AliAnalysisTaskB2.cxx:1251 AliAnalysisTaskB2.cxx:1252 AliAnalysisTaskB2.cxx:1253 AliAnalysisTaskB2.cxx:1254 AliAnalysisTaskB2.cxx:1255 AliAnalysisTaskB2.cxx:1256 AliAnalysisTaskB2.cxx:1257 AliAnalysisTaskB2.cxx:1258 AliAnalysisTaskB2.cxx:1259 AliAnalysisTaskB2.cxx:1260 AliAnalysisTaskB2.cxx:1261 AliAnalysisTaskB2.cxx:1262 AliAnalysisTaskB2.cxx:1263 AliAnalysisTaskB2.cxx:1264 AliAnalysisTaskB2.cxx:1265 AliAnalysisTaskB2.cxx:1266 AliAnalysisTaskB2.cxx:1267 AliAnalysisTaskB2.cxx:1268 AliAnalysisTaskB2.cxx:1269 AliAnalysisTaskB2.cxx:1270 AliAnalysisTaskB2.cxx:1271 AliAnalysisTaskB2.cxx:1272 AliAnalysisTaskB2.cxx:1273 AliAnalysisTaskB2.cxx:1274 AliAnalysisTaskB2.cxx:1275 AliAnalysisTaskB2.cxx:1276