#include <TChain.h>
#include <TTree.h>
#include <TNtuple.h>
#include <TBranch.h>
#include <TClonesArray.h>
#include <TObjArray.h>
#include <TH1F.h>
#include <TH2F.h>
#include <TCanvas.h>
#include <TGraphAsymmErrors.h>
#include <TFile.h>
#include "AliAnalysisTask.h"
#include "AliAnalysisManager.h"
#include "AliMultiplicity.h"
#include "AliVertexerTracks.h"
#include "AliESDtrack.h"
#include "AliExternalTrackParam.h"
#include "AliESDVertex.h"
#include "AliVEvent.h"
#include "AliESDInputHandler.h"
#include "AliTrackReference.h"
#include "AliMCEventHandler.h"
#include "AliMCEvent.h"
#include "AliStack.h"
#include "AliLog.h"
#include "AliGenEventHeader.h"
#include "AliAnalysisTaskVertexESD.h"
ClassImp(AliAnalysisTaskVertexESD)
AliAnalysisTaskVertexESD::AliAnalysisTaskVertexESD(const char *name) :
AliAnalysisTaskSE(name),
fCheckEventType(kTRUE),
fReadMC(kFALSE),
fRecoVtxTPC(kTRUE),
fRecoVtxITSTPC(kTRUE),
fRecoVtxITSTPCHalfEvent(kFALSE),
fOnlyITSTPCTracks(kFALSE),
fOnlyITSSATracks(kFALSE),
fFillNtuple(kFALSE),
fFillTreeBeamSpot(kFALSE),
fESD(0),
fOutput(0),
fNtupleVertexESD(0),
fhSPDVertexX(0),
fhSPDVertexY(0),
fhSPDVertexZ(0),
fhSPDVertexZonly(0),
fhTRKVertexX(0),
fhTRKVertexY(0),
fhTRKVertexZ(0),
fhTPCVertexX(0),
fhTPCVertexY(0),
fhTPCVertexZ(0),
fhTrackRefs(0),
fTreeBeamSpot(0),
fhTriggeredTrklets(0),
fhSPD3DTrklets(0),
fhSPDZTrklets(0),
fhTRKTrklets(0),
fhTRKcTrklets(0),
fhTRKncTrklets(0),
fhTPCTrklets(0),
fhTPCcTrklets(0),
fhTPCncTrklets(0),
fhSPD3DZreco(0),
fhSPDZZreco(0),
fhSPDVertexXPile(0),
fhSPDVertexYPile(0),
fhSPDVertexZPile(0),
fhSPDVertexDiffZPileContr2(0),
fhSPDVertexDiffZPileContr3(0),
fhSPDVertexDiffZPileContr4(0),
fhSPDVertexDiffZPileContr5(0),
fhSPDVertexDiffZPileDefault(0),
fhSPDContributorsPile(0),
fhSPDDispContributors(0),
fTriggerType(AliVEvent::kMB),
fhntrksSPDvsSPDcls(0),
fhntrksZvsSPDcls(0)
{
DefineOutput(1, TList::Class());
}
AliAnalysisTaskVertexESD::~AliAnalysisTaskVertexESD()
{
if (fOutput && !AliAnalysisManager::GetAnalysisManager()->IsProofMode()) {
delete fOutput;
fOutput = 0;
}
}
void AliAnalysisTaskVertexESD::UserCreateOutputObjects()
{
fOutput = new TList;
fOutput->SetOwner();
fNtupleVertexESD = new TNtuple("fNtupleVertexESD","vertices","run:tstamp:bunchcross:triggered:dndygen:xdiam:ydiam:zdiam:xerrdiam:yerrdiam:zerrdiam:xtrue:ytrue:ztrue:xSPD:xerrSPD:ySPD:yerrSPD:zSPD:zerrSPD:ntrksSPD:SPD3D:dphiSPD:xTPC:xerrTPC:yTPC:yerrTPC:zTPC:zerrTPC:ntrksTPC:constrTPC:xTRK:xerrTRK:yTRK:yerrTRK:zTRK:zerrTRK:ntrksTRK:constrTRK:ntrklets:nESDtracks:nITSrefit5or6:nTPCin:nTPCinEta09:SPD0cls:ispileupfromSPDdefault:xSPDp:xerrSPDp:ySPDp:yerrSPDp:zSPDp:zerrSPDp:ntrksSPDp:xTPCnc:xerrTPCnc:yTPCnc:yerrTPCnc:zTPCnc:zerrTPCnc:ntrksTPCnc:xTPCc:xerrTPCc:yTPCc:yerrTPCc:zTPCc:zerrTPCc:ntrksTPCc:xTRKnc:xerrTRKnc:yTRKnc:yerrTRKnc:zTRKnc:zerrTRKnc:ntrksTRKnc:xTRKc:xerrTRKc:yTRKc:yerrTRKc:zTRKc:zerrTRKc:ntrksTRKc:deltaxTRKnc:deltayTRKnc:deltazTRKnc:deltaxerrTRKnc:deltayerrTRKnc:deltazerrTRKnc:ntrksEvenTRKnc:ntrksOddTRKnc");
fOutput->Add(fNtupleVertexESD);
fhSPDVertexX = new TH1F("fhSPDVertexX","SPDVertex x; x vertex [cm]; events",200,-1,1);
fOutput->Add(fhSPDVertexX);
fhSPDVertexY = new TH1F("fhSPDVertexY","SPDVertex y; y vertex [cm]; events",200,-1,1);
fOutput->Add(fhSPDVertexY);
fhSPDVertexZ = new TH1F("fhSPDVertexZ","SPDVertex z; z vertex [cm]; events",250,-25,25);
fOutput->Add(fhSPDVertexZ);
fhSPDVertexZonly = new TH1F("fhSPDVertexZonly","SPDVertexer z; z vertex [cm]; events",250,-25,25);
fOutput->Add(fhSPDVertexZonly);
fhTRKVertexX = new TH1F("fhTRKVertexX","TRKVertex x; x vertex [cm]; events",2000,-1,1);
fOutput->Add(fhTRKVertexX);
fhTRKVertexY = new TH1F("fhTRKVertexY","TRKVertex y; y vertex [cm]; events",2000,-1,1);
fOutput->Add(fhTRKVertexY);
fhTRKVertexZ = new TH1F("fhTRKVertexZ","TRKVertex z; z vertex [cm]; events",250,-25,25);
fOutput->Add(fhTRKVertexZ);
fhTPCVertexX = new TH1F("fhTPCVertexX","TPCVertex x; x vertex [cm]; events",200,-3,3);
fOutput->Add(fhTPCVertexX);
fhTPCVertexY = new TH1F("fhTPCVertexY","TPCVertex y; y vertex [cm]; events",200,-3,3);
fOutput->Add(fhTPCVertexY);
fhTPCVertexZ = new TH1F("fhTPCVertexZ","TPCVertex z; z vertex [cm]; events",250,-25,25);
fOutput->Add(fhTPCVertexZ);
fhSPDVertexXPile = new TH1F("fhSPDVertexXPile","SPDVertexPile x; x vertex [cm]; events",200,-20,20);
fOutput->Add(fhSPDVertexXPile);
fhSPDVertexYPile = new TH1F("fhSPDVertexYPile","SPDVertexPile y; y vertex [cm]; events",200,-20,20);
fOutput->Add(fhSPDVertexYPile);
fhSPDVertexZPile = new TH1F("fhSPDVertexZPile","SPDVertexPile z; z vertex [cm]; events",200,-40,40);
fOutput->Add(fhSPDVertexZPile);
fhSPDVertexDiffZPileContr2 = new TH1F("fhSPDVertexDiffZPileContr2","SPDVertexDiff z; zmain - zpile [cm]; events",2000,-100,100);
fOutput->Add(fhSPDVertexDiffZPileContr2);
fhSPDVertexDiffZPileContr3 = new TH1F("fhSPDVertexDiffZPileContr3","SPDVertexDiff z; zmain - zpile [cm]; events",2000,-100,100);
fOutput->Add(fhSPDVertexDiffZPileContr3);
fhSPDVertexDiffZPileContr4 = new TH1F("fhSPDVertexDiffZPileContr4","SPDVertexDiff z; zmain - zpile [cm]; events",2000,-100,100);
fOutput->Add(fhSPDVertexDiffZPileContr4);
fhSPDVertexDiffZPileContr5 = new TH1F("fhSPDVertexDiffZPileContr5","SPDVertexDiff z; zmain - zpile [cm]; events",2000,-100,100);
fOutput->Add(fhSPDVertexDiffZPileContr5);
fhSPDVertexDiffZPileDefault = new TH1F("fhSPDVertexDiffZPileDefault","SPDVertexDiff z; zmain - zpile [cm]; events",2000,-100,100);
fOutput->Add(fhSPDVertexDiffZPileDefault);
fhTrackRefs = new TH2F("fhTrackRefs","Track references; x; y",1000,-4,4,1000,-4,4);
fOutput->Add(fhTrackRefs);
fTreeBeamSpot = new TTree("fTreeBeamSpot", "BeamSpotTree");
UShort_t triggered, ntrkletsS, ntrksTRKnc;
UInt_t run, bx;
Float_t cetTimeLHC,xTRKnc, yTRKnc, zTRKnc;
fTreeBeamSpot->Branch("run", &run, "run/i");
fTreeBeamSpot->Branch("cetTimeLHC", &cetTimeLHC, "cetTimeLHC/F");
fTreeBeamSpot->Branch("bx", &bx, "bx/i");
fTreeBeamSpot->Branch("triggered", &triggered, "triggered/s");
fTreeBeamSpot->Branch("ntrkletsS", &ntrkletsS, "ntrkletsS/s");
fTreeBeamSpot->Branch("xTRKnc", &xTRKnc, "xTRKnc/F");
fTreeBeamSpot->Branch("yTRKnc", &yTRKnc, "yTRKnc/F");
fTreeBeamSpot->Branch("zTRKnc", &zTRKnc, "zTRKnc/F");
fTreeBeamSpot->Branch("ntrksTRKnc", &ntrksTRKnc, "ntrksTRKnc/s");
fOutput->Add(fTreeBeamSpot);
Int_t nbinTrklets=29;
Float_t lowTrklets[30]={-0.5,0.5,1.5,2.5,3.5,4.5,5.5,7.5,10.5,25.5,50.5,75.5,100.5,150.5,200.5,300.5,400.5,500.5,600.5,800.5,1000.5,1500.5,2000.5,2500.5,3000.5,4000.5,5000.5,6000.5,8000.5,10000.5};
fhTriggeredTrklets = new TH1F("fhTriggeredTrklets","trklets dist for triggered ev.; ntrklets; entries",nbinTrklets,lowTrklets);
fOutput->Add(fhTriggeredTrklets);
fhSPD3DTrklets = new TH1F("fhSPD3DTrklets","trklets dist for SPD3D ev.; ntrklets; entries",nbinTrklets,lowTrklets);
fOutput->Add(fhSPD3DTrklets);
fhSPDZTrklets = new TH1F("fhSPDZTrklets","trklets dist for SPDZ ev.; ntrklets; entries",nbinTrklets,lowTrklets);
fOutput->Add(fhSPDZTrklets);
fhTRKTrklets = new TH1F("fhTRKTrklets","trklets dist for TRK ev.; ntrklets; entries",nbinTrklets,lowTrklets);
fOutput->Add(fhTRKTrklets);
fhTRKcTrklets = new TH1F("fhTRKcTrklets","trklets dist for TRKc ev.; ntrklets; entries",nbinTrklets,lowTrklets);
fOutput->Add(fhTRKcTrklets);
fhTRKncTrklets = new TH1F("fhTRKncTrklets","trklets dist for TRKnc ev.; ntrklets; entries",nbinTrklets,lowTrklets);
fOutput->Add(fhTRKncTrklets);
fhTPCTrklets = new TH1F("fhTPCTrklets","trklets dist for TPC ev.; ntrklets; entries",nbinTrklets,lowTrklets);
fOutput->Add(fhTPCTrklets);
fhTPCcTrklets = new TH1F("fhTPCcTrklets","trklets dist for TPCc ev.; ntrklets; entries",nbinTrklets,lowTrklets);
fOutput->Add(fhTPCcTrklets);
fhTPCncTrklets = new TH1F("fhTPCncTrklets","trklets dist for TPCnc ev.; ntrklets; entries",nbinTrklets,lowTrklets);
fOutput->Add(fhTPCncTrklets);
Int_t nbinZreco = 16;
Double_t lowZreco[17]={-15.0,-10.0,-7.0,-5,-4,-3,-2,-1,0,1,2,3,4,5,7,10,15};
fhSPD3DZreco = new TH1F("fhSPD3DZreco","Zreco dist for SPD3D ev.; Zreco [cm]; entries",nbinZreco,lowZreco);
fOutput->Add(fhSPD3DZreco);
fhSPDZZreco = new TH1F("fhSPDZZreco","Zreco dist for SPDZ ev.; Zreco [cm]; entries",nbinZreco,lowZreco);
fOutput->Add(fhSPDZZreco);
fhSPDContributorsPile = new TH1F("fhSPDContributorsPile","ncontributors pile up vertex; ncontributors; entries",200,-0.5,199.5);
fOutput->Add(fhSPDContributorsPile);
fhSPDDispContributors = new TH2F("fhSPDDispContributors","ncontributors main-pile; ncontributors main; ncontributors pile",200,-0.5,199.5,200,-0.5,199.5);
fOutput->Add(fhSPDDispContributors);
fhntrksSPDvsSPDcls = new TH2F("fhntrksSPDvsSPDcls", "ncontributors SPD3D vs number of cluster SPD; nContributors 3D; nCluster SPD1",300,0.,3000.,400,0.,8000.);
fOutput->Add(fhntrksSPDvsSPDcls);
fhntrksZvsSPDcls = new TH2F("fhntrksZvsSPDcls", "ncontributors SPDZ vs number of cluster SPD; nContributors Z; nCluster SPD1",300,0.,3000.,400,0.,8000.);
fOutput->Add(fhntrksZvsSPDcls);
PostData(1, fOutput);
return;
}
void AliAnalysisTaskVertexESD::UserExec(Option_t *)
{
if (!InputEvent()) {
Printf("ERROR: fESD not available");
return;
}
AliESDEvent* esdE = (AliESDEvent*) InputEvent();
if(fCheckEventType) {
if(esdE->GetEventType()!=7 && esdE->GetEventType()!=0) return;
}
TArrayF mcVertex(3);
mcVertex[0]=9999.; mcVertex[1]=9999.; mcVertex[2]=9999.;
Float_t dNchdy=-999.;
if (fReadMC) {
AliMCEventHandler* eventHandler = dynamic_cast<AliMCEventHandler*> (AliAnalysisManager::GetAnalysisManager()->GetMCtruthEventHandler());
if (!eventHandler) {
Printf("ERROR: Could not retrieve MC event handler");
return;
}
AliMCEvent* mcEvent = eventHandler->MCEvent();
if (!mcEvent) {
Printf("ERROR: Could not retrieve MC event");
return;
}
AliStack* stack = mcEvent->Stack();
if (!stack) {
AliDebug(AliLog::kError, "Stack not available");
return;
}
AliHeader* header = mcEvent->Header();
if (!header) {
AliDebug(AliLog::kError, "Header not available");
return;
}
AliGenEventHeader* genHeader = header->GenEventHeader();
genHeader->PrimaryVertex(mcVertex);
Int_t ngenpart = (Int_t)stack->GetNtrack();
dNchdy=0;
for(Int_t ip=0; ip<ngenpart; ip++) {
TParticle* part = (TParticle*)stack->Particle(ip);
Int_t apdg = TMath::Abs(part->GetPdgCode());
if(apdg!=11 && apdg!=13 && apdg!=211 && apdg!=321 && apdg!=2212) continue;
if(TMath::Sqrt((part->Vx()-mcVertex[0])*(part->Vx()-mcVertex[0])+(part->Vy()-mcVertex[1])*(part->Vy()-mcVertex[1]))>0.0010) continue;
Double_t energy = part->Energy();
if(energy>900.) continue;
Double_t pz = part->Pz();
Double_t y = 100.;
if(energy-pz+1.e-13>0.) y = 0.5*TMath::Log((energy+pz+1.e-13)/(energy-pz+1.e-13));
if(TMath::Abs(y)<1.0) dNchdy += 0.5;
TClonesArray *trefs=0;
Int_t ntrefs = mcEvent->GetParticleAndTR(ip,part,trefs);
if(ntrefs<0) continue;
for(Int_t iref=0; iref<ntrefs; iref++) {
AliTrackReference *tref = (AliTrackReference*)trefs->At(iref);
if(tref->R()>10.) continue;
fhTrackRefs->Fill(tref->X(),tref->Y());
}
}
}
Bool_t eventTriggered = 0;
eventTriggered = (((AliInputEventHandler*)(AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler()))->IsEventSelected() & fTriggerType);
Int_t nInFile = esdE->GetEventNumberInFile();
const AliMultiplicity *alimult = esdE->GetMultiplicity();
Int_t ntrklets=0,spd0cls=0, spd1cls=0;
if(alimult) {
ntrklets = alimult->GetNumberOfTracklets();
for(Int_t l=0;l<alimult->GetNumberOfTracklets();l++){
if(alimult->GetDeltaPhi(l)<-9998.) ntrklets--;
}
spd0cls = alimult->GetNumberOfSingleClusters()+ntrklets;
spd1cls = alimult->GetNumberOfITSClusters(1);
}
UShort_t triggered, ntrkletsS, ntrksTRKnc;
UInt_t run, bx;
Float_t cetTimeLHC,xTRKnc, yTRKnc, zTRKnc;
fTreeBeamSpot->SetBranchAddress("run", &run);
fTreeBeamSpot->SetBranchAddress("cetTimeLHC", &cetTimeLHC);
fTreeBeamSpot->SetBranchAddress("bx", &bx);
fTreeBeamSpot->SetBranchAddress("triggered", &triggered);
fTreeBeamSpot->SetBranchAddress("ntrkletsS", &ntrkletsS);
fTreeBeamSpot->SetBranchAddress("xTRKnc", &xTRKnc);
fTreeBeamSpot->SetBranchAddress("yTRKnc", &yTRKnc);
fTreeBeamSpot->SetBranchAddress("zTRKnc", &zTRKnc);
fTreeBeamSpot->SetBranchAddress("ntrksTRKnc", &ntrksTRKnc);
Double_t tstamp = esdE->GetTimeStamp();
Float_t cetTime =(tstamp-1262304000.)+7200.;
Float_t cetTime1h =(tstamp-1262304000.)+3600.;
cetTimeLHC = (Float_t)cetTime1h;
Int_t ntracks = esdE->GetNumberOfTracks();
Int_t nITS5or6=0,nTPCin=0,nTPCinEta09=0;
for(Int_t itr=0; itr<ntracks; itr++) {
AliESDtrack *t = esdE->GetTrack(itr);
if(t->GetNcls(0)>=5) nITS5or6++;
Double_t z0; t->GetZAt(0,esdE->GetMagneticField(),z0);
if(t->GetNcls(1)>0 && TMath::Abs(t->GetD(0,0,esdE->GetMagneticField()))<2.8 && TMath::Abs(z0)<20) {
nTPCin++;
if(TMath::Abs(t->GetTgl())<1.5) nTPCinEta09++;
}
}
const AliESDVertex *spdv=esdE->GetPrimaryVertexSPD();
const AliESDVertex *spdvp=esdE->GetPileupVertexSPD(0);
const AliESDVertex *tpcv=esdE->GetPrimaryVertexTPC();
const AliESDVertex *trkv=esdE->GetPrimaryVertexTracks();
if(spdv) {
if(spdv->GetNContributors()>0) {
TString title=spdv->GetTitle();
if(title.Contains("3D")) {
fhSPDVertexX->Fill(spdv->GetX());
fhSPDVertexY->Fill(spdv->GetY());
fhSPDVertexZ->Fill(spdv->GetZ());
fhntrksSPDvsSPDcls->Fill(spdv->GetNContributors(), spd0cls);
}
if(title.Contains("Z")){
fhSPDVertexZonly->Fill(spdv->GetZ());
fhntrksZvsSPDcls->Fill(spdv->GetNContributors(), spd1cls);
}
}
}
if(trkv) {
if(trkv->GetNContributors()>0) {
fhTRKVertexX->Fill(trkv->GetX());
fhTRKVertexY->Fill(trkv->GetY());
fhTRKVertexZ->Fill(trkv->GetZ());
}
}
if(tpcv) {
if(tpcv->GetNContributors()>0) {
fhTPCVertexX->Fill(tpcv->GetX());
fhTPCVertexY->Fill(tpcv->GetY());
fhTPCVertexZ->Fill(tpcv->GetZ());
}
}
if(eventTriggered ? 1. : 0.){
fhTriggeredTrklets->Fill(ntrklets);
if(spdv){
if(spdv->GetNContributors()>0.5){
TString spdtitle = spdv->GetTitle();
if(spdtitle.Contains("vertexer: 3D") ? 1. : 0.){
fhSPD3DTrklets->Fill(ntrklets);
fhSPD3DZreco->Fill(spdv->GetZ());
}
else{
fhSPDZTrklets->Fill(ntrklets);
fhSPDZZreco->Fill(spdv->GetZ());
}
}
}
if(trkv){
if(trkv->GetNContributors()>0.5)fhTRKTrklets->Fill(ntrklets);
}
if(fRecoVtxITSTPC) {
AliESDVertex *trkvc = ReconstructPrimaryVertexITSTPC(kTRUE);
if(trkvc->GetNContributors()>0.5)fhTRKcTrklets->Fill(ntrklets);
delete trkvc; trkvc=0;
AliESDVertex *trkvnc = ReconstructPrimaryVertexITSTPC(kFALSE);
if(trkvnc->GetNContributors()>0.5)fhTRKncTrklets->Fill(ntrklets);
delete trkvnc; trkvnc=0;
}
if(tpcv){
if(tpcv->GetNContributors()>0.5)fhTPCTrklets->Fill(ntrklets);
}
if(fRecoVtxTPC) {
AliESDVertex *tpcvc = ReconstructPrimaryVertexTPC(kTRUE);
if(tpcvc->GetNContributors()>0.5)fhTPCcTrklets->Fill(ntrklets);
delete tpcvc; tpcvc=0;
AliESDVertex *tpcvnc = ReconstructPrimaryVertexTPC(kFALSE);
if(tpcvnc->GetNContributors()>0.5)fhTPCncTrklets->Fill(ntrklets);
delete tpcvnc; tpcvnc=0;
}
}
Float_t xpile=-999.;
Float_t ypile=-999.;
Float_t zpile=-999.;
Float_t expile=-999.;
Float_t eypile=-999.;
Float_t ezpile=-999.;
Int_t ntrkspile=-1;
Bool_t isPileUpfromSPD=esdE->IsPileupFromSPD();
if(esdE->GetNumberOfPileupVerticesSPD()>0 && spdvp && spdv){
if(spdvp->GetNContributors()>=2) {
xpile=spdvp->GetX();
expile=spdvp->GetXRes();
ypile=spdvp->GetY();
eypile=spdvp->GetYRes();
zpile=spdvp->GetZ();
ezpile=spdvp->GetZRes();
ntrkspile=spdvp->GetNContributors();
if (esdE->IsPileupFromSPD(2,0.,3.,2.,5.)){
fhSPDVertexDiffZPileContr2->Fill(spdv->GetZ()-spdvp->GetZ());
if(spdvp->GetNContributors()>=3) {fhSPDVertexDiffZPileContr3->Fill(spdv->GetZ()-spdvp->GetZ());}
if(spdvp->GetNContributors()>=4) {fhSPDVertexDiffZPileContr4->Fill(spdv->GetZ()-spdvp->GetZ());}
if(spdvp->GetNContributors()>=5) {fhSPDVertexDiffZPileContr5->Fill(spdv->GetZ()-spdvp->GetZ());}
}
if (isPileUpfromSPD){
fhSPDVertexXPile->Fill(spdvp->GetX());
fhSPDVertexYPile->Fill(spdvp->GetY());
fhSPDVertexZPile->Fill(spdvp->GetZ());
fhSPDContributorsPile->Fill(spdvp->GetNContributors());
fhSPDDispContributors->Fill(spdv->GetNContributors(),spdvp->GetNContributors());
fhSPDVertexDiffZPileDefault->Fill(spdv->GetZ()-spdvp->GetZ());
}
}
}
Int_t isize=89;
Float_t xnt[89]; for(Int_t iii=0;iii<isize;iii++) xnt[iii]=0.;
Int_t isizeSecNt=9;
Float_t secnt[9]; for(Int_t iii=0;iii<isizeSecNt;iii++) secnt[iii]=0.;
Int_t index=0;
Int_t indexSecNt=0;
xnt[index++]=(Float_t)esdE->GetRunNumber();
secnt[indexSecNt++]=(Float_t)esdE->GetRunNumber();
run = (Int_t)esdE->GetRunNumber();
xnt[index++]=cetTime;
secnt[indexSecNt++]=cetTime1h;
xnt[index++]=(Float_t)esdE->GetBunchCrossNumber();
secnt[indexSecNt++]=(Float_t)esdE->GetBunchCrossNumber();
bx = (Int_t)esdE->GetBunchCrossNumber();
xnt[index++]=(eventTriggered ? 1. : 0.);
secnt[indexSecNt++]=(eventTriggered ? 1. : 0.);
triggered = (UShort_t)(eventTriggered ? 1 : 0);
xnt[index++]=(Float_t)dNchdy;
xnt[index++]=(Float_t)esdE->GetDiamondX();
xnt[index++]=(Float_t)esdE->GetDiamondY();
xnt[index++]=(Float_t)esdE->GetDiamondZ();
xnt[index++]=(Float_t)(TMath::Sqrt(esdE->GetSigma2DiamondX()));
xnt[index++]=(Float_t)(TMath::Sqrt(esdE->GetSigma2DiamondY()));
xnt[index++]=(Float_t)(TMath::Sqrt(esdE->GetSigma2DiamondZ()));
xnt[index++]=mcVertex[0];
xnt[index++]=mcVertex[1];
xnt[index++]=mcVertex[2];
xnt[index++]=spdv->GetX();
xnt[index++]=spdv->GetXRes();
xnt[index++]=spdv->GetY();
xnt[index++]=spdv->GetYRes();
xnt[index++]=spdv->GetZ();
xnt[index++]=spdv->GetZRes();
xnt[index++]=spdv->GetNContributors();
TString spdtitle = spdv->GetTitle();
xnt[index++]=(spdtitle.Contains("vertexer: 3D") ? 1. : 0.);
xnt[index++]=spdv->GetDispersion();
xnt[index++]=tpcv->GetX();
xnt[index++]=tpcv->GetXRes();
xnt[index++]=tpcv->GetY();
xnt[index++]=tpcv->GetYRes();
xnt[index++]=tpcv->GetZ();
xnt[index++]=tpcv->GetZRes();
xnt[index++]=tpcv->GetNContributors();
TString tpctitle = tpcv->GetTitle();
xnt[index++]=(tpctitle.Contains("WithConstraint") ? 1. : 0.);
xnt[index++]=trkv->GetX();
xnt[index++]=trkv->GetXRes();
xnt[index++]=trkv->GetY();
xnt[index++]=trkv->GetYRes();
xnt[index++]=trkv->GetZ();
xnt[index++]=trkv->GetZRes();
xnt[index++]=trkv->GetNContributors();
TString trktitle = trkv->GetTitle();
xnt[index++]=(trktitle.Contains("WithConstraint") ? 1. : 0.);
xnt[index++]=float(ntrklets);
secnt[indexSecNt++]=float(ntrklets);
ntrkletsS = (UShort_t)ntrklets;
xnt[index++]=float(ntracks);
xnt[index++]=float(nITS5or6);
xnt[index++]=float(nTPCin);
xnt[index++]=float(nTPCinEta09);
xnt[index++]=spd0cls;
xnt[index++]=Float_t(isPileUpfromSPD);
xnt[index++]=xpile;
xnt[index++]=expile;
xnt[index++]=ypile;
xnt[index++]=eypile;
xnt[index++]=zpile;
xnt[index++]=ezpile;
xnt[index++]=(Float_t)ntrkspile;
if(fRecoVtxTPC) {
AliESDVertex *tpcvnc = ReconstructPrimaryVertexTPC(kFALSE);
xnt[index++]=tpcvnc->GetX();
xnt[index++]=tpcvnc->GetXRes();
xnt[index++]=tpcvnc->GetY();
xnt[index++]=tpcvnc->GetYRes();
xnt[index++]=tpcvnc->GetZ();
xnt[index++]=tpcvnc->GetZRes();
xnt[index++]=tpcvnc->GetNContributors();
delete tpcvnc; tpcvnc=0;
AliESDVertex *tpcvc = ReconstructPrimaryVertexTPC(kTRUE);
xnt[index++]=tpcvc->GetX();
xnt[index++]=tpcvc->GetXRes();
xnt[index++]=tpcvc->GetY();
xnt[index++]=tpcvc->GetYRes();
xnt[index++]=tpcvc->GetZ();
xnt[index++]=tpcvc->GetZRes();
xnt[index++]=tpcvc->GetNContributors();
delete tpcvc; tpcvc=0;
} else index+=14;
if(fRecoVtxITSTPC) {
AliESDVertex *trkvnc = ReconstructPrimaryVertexITSTPC(kFALSE);
xnt[index++]=trkvnc->GetX();
xnt[index++]=trkvnc->GetXRes();
xnt[index++]=trkvnc->GetY();
xnt[index++]=trkvnc->GetYRes();
xnt[index++]=trkvnc->GetZ();
xnt[index++]=trkvnc->GetZRes();
xnt[index++]=trkvnc->GetNContributors();
secnt[indexSecNt++]=trkvnc->GetX();
secnt[indexSecNt++]=trkvnc->GetY();
secnt[indexSecNt++]=trkvnc->GetZ();
secnt[indexSecNt++]=trkvnc->GetNContributors();
xTRKnc = (Float_t)trkvnc->GetX();
yTRKnc = (Float_t)trkvnc->GetY();
zTRKnc = (Float_t)trkvnc->GetZ();
ntrksTRKnc = (trkvnc->GetNContributors()<0 ? 0 : (UShort_t)trkvnc->GetNContributors());
delete trkvnc; trkvnc=0;
AliESDVertex *trkvc = ReconstructPrimaryVertexITSTPC(kTRUE);
xnt[index++]=trkvc->GetX();
xnt[index++]=trkvc->GetXRes();
xnt[index++]=trkvc->GetY();
xnt[index++]=trkvc->GetYRes();
xnt[index++]=trkvc->GetZ();
xnt[index++]=trkvc->GetZRes();
xnt[index++]=trkvc->GetNContributors();
delete trkvc; trkvc=0;
} else index+=14;
if(fRecoVtxITSTPCHalfEvent) {
AliESDVertex *trkvncodd = ReconstructPrimaryVertexITSTPC(kFALSE,1);
AliESDVertex *trkvnceven = ReconstructPrimaryVertexITSTPC(kFALSE,2);
if(trkvncodd->GetNContributors()>0 &&
trkvnceven->GetNContributors()>0) {
xnt[index++]=trkvncodd->GetX()-trkvnceven->GetX();
xnt[index++]=trkvncodd->GetY()-trkvnceven->GetY();
xnt[index++]=trkvncodd->GetZ()-trkvnceven->GetZ();
xnt[index++]=TMath::Sqrt(trkvncodd->GetXRes()*trkvncodd->GetXRes()+trkvnceven->GetXRes()*trkvnceven->GetXRes());
xnt[index++]=TMath::Sqrt(trkvncodd->GetYRes()*trkvncodd->GetYRes()+trkvnceven->GetYRes()*trkvnceven->GetYRes());
xnt[index++]=TMath::Sqrt(trkvncodd->GetZRes()*trkvncodd->GetZRes()+trkvnceven->GetZRes()*trkvnceven->GetZRes());
xnt[index++]=trkvnceven->GetNContributors();
xnt[index++]=trkvncodd->GetNContributors();
} else {
xnt[index++]=0.;
xnt[index++]=0.;
xnt[index++]=0.;
xnt[index++]=0.;
xnt[index++]=0.;
xnt[index++]=0.;
xnt[index++]=-1;
xnt[index++]=-1;
}
delete trkvncodd; trkvncodd=0;
delete trkvnceven; trkvnceven=0;
} else index+=8;
if(index>isize) printf("AliAnalysisTaskVertexESD: ERROR, index!=isize\n");
if(fFillNtuple) fNtupleVertexESD->Fill(xnt);
if(indexSecNt>isizeSecNt) printf("AliAnalysisTaskVertexESD: ERROR, indexSecNt!=isizeSecNt\n");
if(fFillTreeBeamSpot && (nInFile%2 == 0)) fTreeBeamSpot->Fill();
PostData(1, fOutput);
return;
}
void AliAnalysisTaskVertexESD::Terminate(Option_t *)
{
fOutput = dynamic_cast<TList*> (GetOutputData(1));
if (!fOutput) {
Printf("ERROR: fOutput not available");
return;
}
if (!fNtupleVertexESD){
Printf("ERROR: fNtuple not available");
return;
}
fNtupleVertexESD = dynamic_cast<TNtuple*>(fOutput->FindObject("fNtupleVertexESD"));
return;
}
AliESDVertex* AliAnalysisTaskVertexESD::ReconstructPrimaryVertexTPC(Bool_t constr) const {
AliESDEvent* evt = (AliESDEvent*) fInputEvent;
AliVertexerTracks vertexer(evt->GetMagneticField());
if(evt->GetNumberOfTracks()<500) {
vertexer.SetTPCMode();
} else {
vertexer.SetTPCMode(0.1,1.0,5.0,10,1,3.,0.1,1.5,3.,30.,1,1);
}
Float_t diamondcovxy[3]; evt->GetDiamondCovXY(diamondcovxy);
Double_t pos[3]={evt->GetDiamondX(),evt->GetDiamondY(),0};
Double_t cov[6]={diamondcovxy[0],diamondcovxy[1],diamondcovxy[2],0.,0.,10.*10.};
if (cov[0]<1e-10) cov[0] = 1e-2;
if (cov[2]<1e-10) cov[2] = 1e-2;
AliESDVertex *initVertex = new AliESDVertex(pos,cov,1.,1);
vertexer.SetVtxStart(initVertex);
delete initVertex;
if(!constr) vertexer.SetConstraintOff();
return vertexer.FindPrimaryVertex(evt);
}
AliESDVertex* AliAnalysisTaskVertexESD::ReconstructPrimaryVertexITSTPC(Bool_t constr,Int_t mode) const {
AliESDEvent* evt = (AliESDEvent*) fInputEvent;
AliVertexerTracks vertexer(evt->GetMagneticField());
if(evt->GetNumberOfTracks()<500) {
vertexer.SetITSMode();
vertexer.SetMinClusters(3);
} else {
vertexer.SetITSMode(0.1,0.1,0.5,5,1,3.,100.,1000.,3.,30.,1,1);
}
Float_t diamondcovxy[3]; evt->GetDiamondCovXY(diamondcovxy);
Double_t pos[3]={evt->GetDiamondX(),evt->GetDiamondY(),0};
Double_t cov[6]={diamondcovxy[0],diamondcovxy[1],diamondcovxy[2],0.,0.,10.*10.};
if (cov[0]<1e-10) cov[0] = 1e-2;
if (cov[2]<1e-10) cov[2] = 1e-2;
AliESDVertex *initVertex = new AliESDVertex(pos,cov,1.,1);
vertexer.SetVtxStart(initVertex);
delete initVertex;
if(!constr) vertexer.SetConstraintOff();
if(fOnlyITSTPCTracks || fOnlyITSSATracks || mode>0) {
Int_t iskip=0;
Int_t ntracks = evt->GetNumberOfTracks();
Int_t *skip = new Int_t[ntracks];
for(Int_t i=0;i<ntracks;i++) skip[i]=-1;
for(Int_t itr=0;itr<ntracks; itr++) {
AliESDtrack* track = evt->GetTrack(itr);
if(fOnlyITSTPCTracks && track->GetNcls(1)==0) {
skip[iskip++]=itr;
continue;
}
if(fOnlyITSSATracks && track->GetNcls(1)>0) {
skip[iskip++]=itr;
continue;
}
if(mode==1 && itr%2==0) skip[iskip++]=itr;
if(mode==2 && itr%2==1) skip[iskip++]=itr;
}
vertexer.SetSkipTracks(iskip,skip);
delete [] skip; skip=NULL;
}
return vertexer.FindPrimaryVertex(evt);
}
AliAnalysisTaskVertexESD.cxx:1 AliAnalysisTaskVertexESD.cxx:2 AliAnalysisTaskVertexESD.cxx:3 AliAnalysisTaskVertexESD.cxx:4 AliAnalysisTaskVertexESD.cxx:5 AliAnalysisTaskVertexESD.cxx:6 AliAnalysisTaskVertexESD.cxx:7 AliAnalysisTaskVertexESD.cxx:8 AliAnalysisTaskVertexESD.cxx:9 AliAnalysisTaskVertexESD.cxx:10 AliAnalysisTaskVertexESD.cxx:11 AliAnalysisTaskVertexESD.cxx:12 AliAnalysisTaskVertexESD.cxx:13 AliAnalysisTaskVertexESD.cxx:14 AliAnalysisTaskVertexESD.cxx:15 AliAnalysisTaskVertexESD.cxx:16 AliAnalysisTaskVertexESD.cxx:17 AliAnalysisTaskVertexESD.cxx:18 AliAnalysisTaskVertexESD.cxx:19 AliAnalysisTaskVertexESD.cxx:20 AliAnalysisTaskVertexESD.cxx:21 AliAnalysisTaskVertexESD.cxx:22 AliAnalysisTaskVertexESD.cxx:23 AliAnalysisTaskVertexESD.cxx:24 AliAnalysisTaskVertexESD.cxx:25 AliAnalysisTaskVertexESD.cxx:26 AliAnalysisTaskVertexESD.cxx:27 AliAnalysisTaskVertexESD.cxx:28 AliAnalysisTaskVertexESD.cxx:29 AliAnalysisTaskVertexESD.cxx:30 AliAnalysisTaskVertexESD.cxx:31 AliAnalysisTaskVertexESD.cxx:32 AliAnalysisTaskVertexESD.cxx:33 AliAnalysisTaskVertexESD.cxx:34 AliAnalysisTaskVertexESD.cxx:35 AliAnalysisTaskVertexESD.cxx:36 AliAnalysisTaskVertexESD.cxx:37 AliAnalysisTaskVertexESD.cxx:38 AliAnalysisTaskVertexESD.cxx:39 AliAnalysisTaskVertexESD.cxx:40 AliAnalysisTaskVertexESD.cxx:41 AliAnalysisTaskVertexESD.cxx:42 AliAnalysisTaskVertexESD.cxx:43 AliAnalysisTaskVertexESD.cxx:44 AliAnalysisTaskVertexESD.cxx:45 AliAnalysisTaskVertexESD.cxx:46 AliAnalysisTaskVertexESD.cxx:47 AliAnalysisTaskVertexESD.cxx:48 AliAnalysisTaskVertexESD.cxx:49 AliAnalysisTaskVertexESD.cxx:50 AliAnalysisTaskVertexESD.cxx:51 AliAnalysisTaskVertexESD.cxx:52 AliAnalysisTaskVertexESD.cxx:53 AliAnalysisTaskVertexESD.cxx:54 AliAnalysisTaskVertexESD.cxx:55 AliAnalysisTaskVertexESD.cxx:56 AliAnalysisTaskVertexESD.cxx:57 AliAnalysisTaskVertexESD.cxx:58 AliAnalysisTaskVertexESD.cxx:59 AliAnalysisTaskVertexESD.cxx:60 AliAnalysisTaskVertexESD.cxx:61 AliAnalysisTaskVertexESD.cxx:62 AliAnalysisTaskVertexESD.cxx:63 AliAnalysisTaskVertexESD.cxx:64 AliAnalysisTaskVertexESD.cxx:65 AliAnalysisTaskVertexESD.cxx:66 AliAnalysisTaskVertexESD.cxx:67 AliAnalysisTaskVertexESD.cxx:68 AliAnalysisTaskVertexESD.cxx:69 AliAnalysisTaskVertexESD.cxx:70 AliAnalysisTaskVertexESD.cxx:71 AliAnalysisTaskVertexESD.cxx:72 AliAnalysisTaskVertexESD.cxx:73 AliAnalysisTaskVertexESD.cxx:74 AliAnalysisTaskVertexESD.cxx:75 AliAnalysisTaskVertexESD.cxx:76 AliAnalysisTaskVertexESD.cxx:77 AliAnalysisTaskVertexESD.cxx:78 AliAnalysisTaskVertexESD.cxx:79 AliAnalysisTaskVertexESD.cxx:80 AliAnalysisTaskVertexESD.cxx:81 AliAnalysisTaskVertexESD.cxx:82 AliAnalysisTaskVertexESD.cxx:83 AliAnalysisTaskVertexESD.cxx:84 AliAnalysisTaskVertexESD.cxx:85 AliAnalysisTaskVertexESD.cxx:86 AliAnalysisTaskVertexESD.cxx:87 AliAnalysisTaskVertexESD.cxx:88 AliAnalysisTaskVertexESD.cxx:89 AliAnalysisTaskVertexESD.cxx:90 AliAnalysisTaskVertexESD.cxx:91 AliAnalysisTaskVertexESD.cxx:92 AliAnalysisTaskVertexESD.cxx:93 AliAnalysisTaskVertexESD.cxx:94 AliAnalysisTaskVertexESD.cxx:95 AliAnalysisTaskVertexESD.cxx:96 AliAnalysisTaskVertexESD.cxx:97 AliAnalysisTaskVertexESD.cxx:98 AliAnalysisTaskVertexESD.cxx:99 AliAnalysisTaskVertexESD.cxx:100 AliAnalysisTaskVertexESD.cxx:101 AliAnalysisTaskVertexESD.cxx:102 AliAnalysisTaskVertexESD.cxx:103 AliAnalysisTaskVertexESD.cxx:104 AliAnalysisTaskVertexESD.cxx:105 AliAnalysisTaskVertexESD.cxx:106 AliAnalysisTaskVertexESD.cxx:107 AliAnalysisTaskVertexESD.cxx:108 AliAnalysisTaskVertexESD.cxx:109 AliAnalysisTaskVertexESD.cxx:110 AliAnalysisTaskVertexESD.cxx:111 AliAnalysisTaskVertexESD.cxx:112 AliAnalysisTaskVertexESD.cxx:113 AliAnalysisTaskVertexESD.cxx:114 AliAnalysisTaskVertexESD.cxx:115 AliAnalysisTaskVertexESD.cxx:116 AliAnalysisTaskVertexESD.cxx:117 AliAnalysisTaskVertexESD.cxx:118 AliAnalysisTaskVertexESD.cxx:119 AliAnalysisTaskVertexESD.cxx:120 AliAnalysisTaskVertexESD.cxx:121 AliAnalysisTaskVertexESD.cxx:122 AliAnalysisTaskVertexESD.cxx:123 AliAnalysisTaskVertexESD.cxx:124 AliAnalysisTaskVertexESD.cxx:125 AliAnalysisTaskVertexESD.cxx:126 AliAnalysisTaskVertexESD.cxx:127 AliAnalysisTaskVertexESD.cxx:128 AliAnalysisTaskVertexESD.cxx:129 AliAnalysisTaskVertexESD.cxx:130 AliAnalysisTaskVertexESD.cxx:131 AliAnalysisTaskVertexESD.cxx:132 AliAnalysisTaskVertexESD.cxx:133 AliAnalysisTaskVertexESD.cxx:134 AliAnalysisTaskVertexESD.cxx:135 AliAnalysisTaskVertexESD.cxx:136 AliAnalysisTaskVertexESD.cxx:137 AliAnalysisTaskVertexESD.cxx:138 AliAnalysisTaskVertexESD.cxx:139 AliAnalysisTaskVertexESD.cxx:140 AliAnalysisTaskVertexESD.cxx:141 AliAnalysisTaskVertexESD.cxx:142 AliAnalysisTaskVertexESD.cxx:143 AliAnalysisTaskVertexESD.cxx:144 AliAnalysisTaskVertexESD.cxx:145 AliAnalysisTaskVertexESD.cxx:146 AliAnalysisTaskVertexESD.cxx:147 AliAnalysisTaskVertexESD.cxx:148 AliAnalysisTaskVertexESD.cxx:149 AliAnalysisTaskVertexESD.cxx:150 AliAnalysisTaskVertexESD.cxx:151 AliAnalysisTaskVertexESD.cxx:152 AliAnalysisTaskVertexESD.cxx:153 AliAnalysisTaskVertexESD.cxx:154 AliAnalysisTaskVertexESD.cxx:155 AliAnalysisTaskVertexESD.cxx:156 AliAnalysisTaskVertexESD.cxx:157 AliAnalysisTaskVertexESD.cxx:158 AliAnalysisTaskVertexESD.cxx:159 AliAnalysisTaskVertexESD.cxx:160 AliAnalysisTaskVertexESD.cxx:161 AliAnalysisTaskVertexESD.cxx:162 AliAnalysisTaskVertexESD.cxx:163 AliAnalysisTaskVertexESD.cxx:164 AliAnalysisTaskVertexESD.cxx:165 AliAnalysisTaskVertexESD.cxx:166 AliAnalysisTaskVertexESD.cxx:167 AliAnalysisTaskVertexESD.cxx:168 AliAnalysisTaskVertexESD.cxx:169 AliAnalysisTaskVertexESD.cxx:170 AliAnalysisTaskVertexESD.cxx:171 AliAnalysisTaskVertexESD.cxx:172 AliAnalysisTaskVertexESD.cxx:173 AliAnalysisTaskVertexESD.cxx:174 AliAnalysisTaskVertexESD.cxx:175 AliAnalysisTaskVertexESD.cxx:176 AliAnalysisTaskVertexESD.cxx:177 AliAnalysisTaskVertexESD.cxx:178 AliAnalysisTaskVertexESD.cxx:179 AliAnalysisTaskVertexESD.cxx:180 AliAnalysisTaskVertexESD.cxx:181 AliAnalysisTaskVertexESD.cxx:182 AliAnalysisTaskVertexESD.cxx:183 AliAnalysisTaskVertexESD.cxx:184 AliAnalysisTaskVertexESD.cxx:185 AliAnalysisTaskVertexESD.cxx:186 AliAnalysisTaskVertexESD.cxx:187 AliAnalysisTaskVertexESD.cxx:188 AliAnalysisTaskVertexESD.cxx:189 AliAnalysisTaskVertexESD.cxx:190 AliAnalysisTaskVertexESD.cxx:191 AliAnalysisTaskVertexESD.cxx:192 AliAnalysisTaskVertexESD.cxx:193 AliAnalysisTaskVertexESD.cxx:194 AliAnalysisTaskVertexESD.cxx:195 AliAnalysisTaskVertexESD.cxx:196 AliAnalysisTaskVertexESD.cxx:197 AliAnalysisTaskVertexESD.cxx:198 AliAnalysisTaskVertexESD.cxx:199 AliAnalysisTaskVertexESD.cxx:200 AliAnalysisTaskVertexESD.cxx:201 AliAnalysisTaskVertexESD.cxx:202 AliAnalysisTaskVertexESD.cxx:203 AliAnalysisTaskVertexESD.cxx:204 AliAnalysisTaskVertexESD.cxx:205 AliAnalysisTaskVertexESD.cxx:206 AliAnalysisTaskVertexESD.cxx:207 AliAnalysisTaskVertexESD.cxx:208 AliAnalysisTaskVertexESD.cxx:209 AliAnalysisTaskVertexESD.cxx:210 AliAnalysisTaskVertexESD.cxx:211 AliAnalysisTaskVertexESD.cxx:212 AliAnalysisTaskVertexESD.cxx:213 AliAnalysisTaskVertexESD.cxx:214 AliAnalysisTaskVertexESD.cxx:215 AliAnalysisTaskVertexESD.cxx:216 AliAnalysisTaskVertexESD.cxx:217 AliAnalysisTaskVertexESD.cxx:218 AliAnalysisTaskVertexESD.cxx:219 AliAnalysisTaskVertexESD.cxx:220 AliAnalysisTaskVertexESD.cxx:221 AliAnalysisTaskVertexESD.cxx:222 AliAnalysisTaskVertexESD.cxx:223 AliAnalysisTaskVertexESD.cxx:224 AliAnalysisTaskVertexESD.cxx:225 AliAnalysisTaskVertexESD.cxx:226 AliAnalysisTaskVertexESD.cxx:227 AliAnalysisTaskVertexESD.cxx:228 AliAnalysisTaskVertexESD.cxx:229 AliAnalysisTaskVertexESD.cxx:230 AliAnalysisTaskVertexESD.cxx:231 AliAnalysisTaskVertexESD.cxx:232 AliAnalysisTaskVertexESD.cxx:233 AliAnalysisTaskVertexESD.cxx:234 AliAnalysisTaskVertexESD.cxx:235 AliAnalysisTaskVertexESD.cxx:236 AliAnalysisTaskVertexESD.cxx:237 AliAnalysisTaskVertexESD.cxx:238 AliAnalysisTaskVertexESD.cxx:239 AliAnalysisTaskVertexESD.cxx:240 AliAnalysisTaskVertexESD.cxx:241 AliAnalysisTaskVertexESD.cxx:242 AliAnalysisTaskVertexESD.cxx:243 AliAnalysisTaskVertexESD.cxx:244 AliAnalysisTaskVertexESD.cxx:245 AliAnalysisTaskVertexESD.cxx:246 AliAnalysisTaskVertexESD.cxx:247 AliAnalysisTaskVertexESD.cxx:248 AliAnalysisTaskVertexESD.cxx:249 AliAnalysisTaskVertexESD.cxx:250 AliAnalysisTaskVertexESD.cxx:251 AliAnalysisTaskVertexESD.cxx:252 AliAnalysisTaskVertexESD.cxx:253 AliAnalysisTaskVertexESD.cxx:254 AliAnalysisTaskVertexESD.cxx:255 AliAnalysisTaskVertexESD.cxx:256 AliAnalysisTaskVertexESD.cxx:257 AliAnalysisTaskVertexESD.cxx:258 AliAnalysisTaskVertexESD.cxx:259 AliAnalysisTaskVertexESD.cxx:260 AliAnalysisTaskVertexESD.cxx:261 AliAnalysisTaskVertexESD.cxx:262 AliAnalysisTaskVertexESD.cxx:263 AliAnalysisTaskVertexESD.cxx:264 AliAnalysisTaskVertexESD.cxx:265 AliAnalysisTaskVertexESD.cxx:266 AliAnalysisTaskVertexESD.cxx:267 AliAnalysisTaskVertexESD.cxx:268 AliAnalysisTaskVertexESD.cxx:269 AliAnalysisTaskVertexESD.cxx:270 AliAnalysisTaskVertexESD.cxx:271 AliAnalysisTaskVertexESD.cxx:272 AliAnalysisTaskVertexESD.cxx:273 AliAnalysisTaskVertexESD.cxx:274 AliAnalysisTaskVertexESD.cxx:275 AliAnalysisTaskVertexESD.cxx:276 AliAnalysisTaskVertexESD.cxx:277 AliAnalysisTaskVertexESD.cxx:278 AliAnalysisTaskVertexESD.cxx:279 AliAnalysisTaskVertexESD.cxx:280 AliAnalysisTaskVertexESD.cxx:281 AliAnalysisTaskVertexESD.cxx:282 AliAnalysisTaskVertexESD.cxx:283 AliAnalysisTaskVertexESD.cxx:284 AliAnalysisTaskVertexESD.cxx:285 AliAnalysisTaskVertexESD.cxx:286 AliAnalysisTaskVertexESD.cxx:287 AliAnalysisTaskVertexESD.cxx:288 AliAnalysisTaskVertexESD.cxx:289 AliAnalysisTaskVertexESD.cxx:290 AliAnalysisTaskVertexESD.cxx:291 AliAnalysisTaskVertexESD.cxx:292 AliAnalysisTaskVertexESD.cxx:293 AliAnalysisTaskVertexESD.cxx:294 AliAnalysisTaskVertexESD.cxx:295 AliAnalysisTaskVertexESD.cxx:296 AliAnalysisTaskVertexESD.cxx:297 AliAnalysisTaskVertexESD.cxx:298 AliAnalysisTaskVertexESD.cxx:299 AliAnalysisTaskVertexESD.cxx:300 AliAnalysisTaskVertexESD.cxx:301 AliAnalysisTaskVertexESD.cxx:302 AliAnalysisTaskVertexESD.cxx:303 AliAnalysisTaskVertexESD.cxx:304 AliAnalysisTaskVertexESD.cxx:305 AliAnalysisTaskVertexESD.cxx:306 AliAnalysisTaskVertexESD.cxx:307 AliAnalysisTaskVertexESD.cxx:308 AliAnalysisTaskVertexESD.cxx:309 AliAnalysisTaskVertexESD.cxx:310 AliAnalysisTaskVertexESD.cxx:311 AliAnalysisTaskVertexESD.cxx:312 AliAnalysisTaskVertexESD.cxx:313 AliAnalysisTaskVertexESD.cxx:314 AliAnalysisTaskVertexESD.cxx:315 AliAnalysisTaskVertexESD.cxx:316 AliAnalysisTaskVertexESD.cxx:317 AliAnalysisTaskVertexESD.cxx:318 AliAnalysisTaskVertexESD.cxx:319 AliAnalysisTaskVertexESD.cxx:320 AliAnalysisTaskVertexESD.cxx:321 AliAnalysisTaskVertexESD.cxx:322 AliAnalysisTaskVertexESD.cxx:323 AliAnalysisTaskVertexESD.cxx:324 AliAnalysisTaskVertexESD.cxx:325 AliAnalysisTaskVertexESD.cxx:326 AliAnalysisTaskVertexESD.cxx:327 AliAnalysisTaskVertexESD.cxx:328 AliAnalysisTaskVertexESD.cxx:329 AliAnalysisTaskVertexESD.cxx:330 AliAnalysisTaskVertexESD.cxx:331 AliAnalysisTaskVertexESD.cxx:332 AliAnalysisTaskVertexESD.cxx:333 AliAnalysisTaskVertexESD.cxx:334 AliAnalysisTaskVertexESD.cxx:335 AliAnalysisTaskVertexESD.cxx:336 AliAnalysisTaskVertexESD.cxx:337 AliAnalysisTaskVertexESD.cxx:338 AliAnalysisTaskVertexESD.cxx:339 AliAnalysisTaskVertexESD.cxx:340 AliAnalysisTaskVertexESD.cxx:341 AliAnalysisTaskVertexESD.cxx:342 AliAnalysisTaskVertexESD.cxx:343 AliAnalysisTaskVertexESD.cxx:344 AliAnalysisTaskVertexESD.cxx:345 AliAnalysisTaskVertexESD.cxx:346 AliAnalysisTaskVertexESD.cxx:347 AliAnalysisTaskVertexESD.cxx:348 AliAnalysisTaskVertexESD.cxx:349 AliAnalysisTaskVertexESD.cxx:350 AliAnalysisTaskVertexESD.cxx:351 AliAnalysisTaskVertexESD.cxx:352 AliAnalysisTaskVertexESD.cxx:353 AliAnalysisTaskVertexESD.cxx:354 AliAnalysisTaskVertexESD.cxx:355 AliAnalysisTaskVertexESD.cxx:356 AliAnalysisTaskVertexESD.cxx:357 AliAnalysisTaskVertexESD.cxx:358 AliAnalysisTaskVertexESD.cxx:359 AliAnalysisTaskVertexESD.cxx:360 AliAnalysisTaskVertexESD.cxx:361 AliAnalysisTaskVertexESD.cxx:362 AliAnalysisTaskVertexESD.cxx:363 AliAnalysisTaskVertexESD.cxx:364 AliAnalysisTaskVertexESD.cxx:365 AliAnalysisTaskVertexESD.cxx:366 AliAnalysisTaskVertexESD.cxx:367 AliAnalysisTaskVertexESD.cxx:368 AliAnalysisTaskVertexESD.cxx:369 AliAnalysisTaskVertexESD.cxx:370 AliAnalysisTaskVertexESD.cxx:371 AliAnalysisTaskVertexESD.cxx:372 AliAnalysisTaskVertexESD.cxx:373 AliAnalysisTaskVertexESD.cxx:374 AliAnalysisTaskVertexESD.cxx:375 AliAnalysisTaskVertexESD.cxx:376 AliAnalysisTaskVertexESD.cxx:377 AliAnalysisTaskVertexESD.cxx:378 AliAnalysisTaskVertexESD.cxx:379 AliAnalysisTaskVertexESD.cxx:380 AliAnalysisTaskVertexESD.cxx:381 AliAnalysisTaskVertexESD.cxx:382 AliAnalysisTaskVertexESD.cxx:383 AliAnalysisTaskVertexESD.cxx:384 AliAnalysisTaskVertexESD.cxx:385 AliAnalysisTaskVertexESD.cxx:386 AliAnalysisTaskVertexESD.cxx:387 AliAnalysisTaskVertexESD.cxx:388 AliAnalysisTaskVertexESD.cxx:389 AliAnalysisTaskVertexESD.cxx:390 AliAnalysisTaskVertexESD.cxx:391 AliAnalysisTaskVertexESD.cxx:392 AliAnalysisTaskVertexESD.cxx:393 AliAnalysisTaskVertexESD.cxx:394 AliAnalysisTaskVertexESD.cxx:395 AliAnalysisTaskVertexESD.cxx:396 AliAnalysisTaskVertexESD.cxx:397 AliAnalysisTaskVertexESD.cxx:398 AliAnalysisTaskVertexESD.cxx:399 AliAnalysisTaskVertexESD.cxx:400 AliAnalysisTaskVertexESD.cxx:401 AliAnalysisTaskVertexESD.cxx:402 AliAnalysisTaskVertexESD.cxx:403 AliAnalysisTaskVertexESD.cxx:404 AliAnalysisTaskVertexESD.cxx:405 AliAnalysisTaskVertexESD.cxx:406 AliAnalysisTaskVertexESD.cxx:407 AliAnalysisTaskVertexESD.cxx:408 AliAnalysisTaskVertexESD.cxx:409 AliAnalysisTaskVertexESD.cxx:410 AliAnalysisTaskVertexESD.cxx:411 AliAnalysisTaskVertexESD.cxx:412 AliAnalysisTaskVertexESD.cxx:413 AliAnalysisTaskVertexESD.cxx:414 AliAnalysisTaskVertexESD.cxx:415 AliAnalysisTaskVertexESD.cxx:416 AliAnalysisTaskVertexESD.cxx:417 AliAnalysisTaskVertexESD.cxx:418 AliAnalysisTaskVertexESD.cxx:419 AliAnalysisTaskVertexESD.cxx:420 AliAnalysisTaskVertexESD.cxx:421 AliAnalysisTaskVertexESD.cxx:422 AliAnalysisTaskVertexESD.cxx:423 AliAnalysisTaskVertexESD.cxx:424 AliAnalysisTaskVertexESD.cxx:425 AliAnalysisTaskVertexESD.cxx:426 AliAnalysisTaskVertexESD.cxx:427 AliAnalysisTaskVertexESD.cxx:428 AliAnalysisTaskVertexESD.cxx:429 AliAnalysisTaskVertexESD.cxx:430 AliAnalysisTaskVertexESD.cxx:431 AliAnalysisTaskVertexESD.cxx:432 AliAnalysisTaskVertexESD.cxx:433 AliAnalysisTaskVertexESD.cxx:434 AliAnalysisTaskVertexESD.cxx:435 AliAnalysisTaskVertexESD.cxx:436 AliAnalysisTaskVertexESD.cxx:437 AliAnalysisTaskVertexESD.cxx:438 AliAnalysisTaskVertexESD.cxx:439 AliAnalysisTaskVertexESD.cxx:440 AliAnalysisTaskVertexESD.cxx:441 AliAnalysisTaskVertexESD.cxx:442 AliAnalysisTaskVertexESD.cxx:443 AliAnalysisTaskVertexESD.cxx:444 AliAnalysisTaskVertexESD.cxx:445 AliAnalysisTaskVertexESD.cxx:446 AliAnalysisTaskVertexESD.cxx:447 AliAnalysisTaskVertexESD.cxx:448 AliAnalysisTaskVertexESD.cxx:449 AliAnalysisTaskVertexESD.cxx:450 AliAnalysisTaskVertexESD.cxx:451 AliAnalysisTaskVertexESD.cxx:452 AliAnalysisTaskVertexESD.cxx:453 AliAnalysisTaskVertexESD.cxx:454 AliAnalysisTaskVertexESD.cxx:455 AliAnalysisTaskVertexESD.cxx:456 AliAnalysisTaskVertexESD.cxx:457 AliAnalysisTaskVertexESD.cxx:458 AliAnalysisTaskVertexESD.cxx:459 AliAnalysisTaskVertexESD.cxx:460 AliAnalysisTaskVertexESD.cxx:461 AliAnalysisTaskVertexESD.cxx:462 AliAnalysisTaskVertexESD.cxx:463 AliAnalysisTaskVertexESD.cxx:464 AliAnalysisTaskVertexESD.cxx:465 AliAnalysisTaskVertexESD.cxx:466 AliAnalysisTaskVertexESD.cxx:467 AliAnalysisTaskVertexESD.cxx:468 AliAnalysisTaskVertexESD.cxx:469 AliAnalysisTaskVertexESD.cxx:470 AliAnalysisTaskVertexESD.cxx:471 AliAnalysisTaskVertexESD.cxx:472 AliAnalysisTaskVertexESD.cxx:473 AliAnalysisTaskVertexESD.cxx:474 AliAnalysisTaskVertexESD.cxx:475 AliAnalysisTaskVertexESD.cxx:476 AliAnalysisTaskVertexESD.cxx:477 AliAnalysisTaskVertexESD.cxx:478 AliAnalysisTaskVertexESD.cxx:479 AliAnalysisTaskVertexESD.cxx:480 AliAnalysisTaskVertexESD.cxx:481 AliAnalysisTaskVertexESD.cxx:482 AliAnalysisTaskVertexESD.cxx:483 AliAnalysisTaskVertexESD.cxx:484 AliAnalysisTaskVertexESD.cxx:485 AliAnalysisTaskVertexESD.cxx:486 AliAnalysisTaskVertexESD.cxx:487 AliAnalysisTaskVertexESD.cxx:488 AliAnalysisTaskVertexESD.cxx:489 AliAnalysisTaskVertexESD.cxx:490 AliAnalysisTaskVertexESD.cxx:491 AliAnalysisTaskVertexESD.cxx:492 AliAnalysisTaskVertexESD.cxx:493 AliAnalysisTaskVertexESD.cxx:494 AliAnalysisTaskVertexESD.cxx:495 AliAnalysisTaskVertexESD.cxx:496 AliAnalysisTaskVertexESD.cxx:497 AliAnalysisTaskVertexESD.cxx:498 AliAnalysisTaskVertexESD.cxx:499 AliAnalysisTaskVertexESD.cxx:500 AliAnalysisTaskVertexESD.cxx:501 AliAnalysisTaskVertexESD.cxx:502 AliAnalysisTaskVertexESD.cxx:503 AliAnalysisTaskVertexESD.cxx:504 AliAnalysisTaskVertexESD.cxx:505 AliAnalysisTaskVertexESD.cxx:506 AliAnalysisTaskVertexESD.cxx:507 AliAnalysisTaskVertexESD.cxx:508 AliAnalysisTaskVertexESD.cxx:509 AliAnalysisTaskVertexESD.cxx:510 AliAnalysisTaskVertexESD.cxx:511 AliAnalysisTaskVertexESD.cxx:512 AliAnalysisTaskVertexESD.cxx:513 AliAnalysisTaskVertexESD.cxx:514 AliAnalysisTaskVertexESD.cxx:515 AliAnalysisTaskVertexESD.cxx:516 AliAnalysisTaskVertexESD.cxx:517 AliAnalysisTaskVertexESD.cxx:518 AliAnalysisTaskVertexESD.cxx:519 AliAnalysisTaskVertexESD.cxx:520 AliAnalysisTaskVertexESD.cxx:521 AliAnalysisTaskVertexESD.cxx:522 AliAnalysisTaskVertexESD.cxx:523 AliAnalysisTaskVertexESD.cxx:524 AliAnalysisTaskVertexESD.cxx:525 AliAnalysisTaskVertexESD.cxx:526 AliAnalysisTaskVertexESD.cxx:527 AliAnalysisTaskVertexESD.cxx:528 AliAnalysisTaskVertexESD.cxx:529 AliAnalysisTaskVertexESD.cxx:530 AliAnalysisTaskVertexESD.cxx:531 AliAnalysisTaskVertexESD.cxx:532 AliAnalysisTaskVertexESD.cxx:533 AliAnalysisTaskVertexESD.cxx:534 AliAnalysisTaskVertexESD.cxx:535 AliAnalysisTaskVertexESD.cxx:536 AliAnalysisTaskVertexESD.cxx:537 AliAnalysisTaskVertexESD.cxx:538 AliAnalysisTaskVertexESD.cxx:539 AliAnalysisTaskVertexESD.cxx:540 AliAnalysisTaskVertexESD.cxx:541 AliAnalysisTaskVertexESD.cxx:542 AliAnalysisTaskVertexESD.cxx:543 AliAnalysisTaskVertexESD.cxx:544 AliAnalysisTaskVertexESD.cxx:545 AliAnalysisTaskVertexESD.cxx:546 AliAnalysisTaskVertexESD.cxx:547 AliAnalysisTaskVertexESD.cxx:548 AliAnalysisTaskVertexESD.cxx:549 AliAnalysisTaskVertexESD.cxx:550 AliAnalysisTaskVertexESD.cxx:551 AliAnalysisTaskVertexESD.cxx:552 AliAnalysisTaskVertexESD.cxx:553 AliAnalysisTaskVertexESD.cxx:554 AliAnalysisTaskVertexESD.cxx:555 AliAnalysisTaskVertexESD.cxx:556 AliAnalysisTaskVertexESD.cxx:557 AliAnalysisTaskVertexESD.cxx:558 AliAnalysisTaskVertexESD.cxx:559 AliAnalysisTaskVertexESD.cxx:560 AliAnalysisTaskVertexESD.cxx:561 AliAnalysisTaskVertexESD.cxx:562 AliAnalysisTaskVertexESD.cxx:563 AliAnalysisTaskVertexESD.cxx:564 AliAnalysisTaskVertexESD.cxx:565 AliAnalysisTaskVertexESD.cxx:566 AliAnalysisTaskVertexESD.cxx:567 AliAnalysisTaskVertexESD.cxx:568 AliAnalysisTaskVertexESD.cxx:569 AliAnalysisTaskVertexESD.cxx:570 AliAnalysisTaskVertexESD.cxx:571 AliAnalysisTaskVertexESD.cxx:572 AliAnalysisTaskVertexESD.cxx:573 AliAnalysisTaskVertexESD.cxx:574 AliAnalysisTaskVertexESD.cxx:575 AliAnalysisTaskVertexESD.cxx:576 AliAnalysisTaskVertexESD.cxx:577 AliAnalysisTaskVertexESD.cxx:578 AliAnalysisTaskVertexESD.cxx:579 AliAnalysisTaskVertexESD.cxx:580 AliAnalysisTaskVertexESD.cxx:581 AliAnalysisTaskVertexESD.cxx:582 AliAnalysisTaskVertexESD.cxx:583 AliAnalysisTaskVertexESD.cxx:584 AliAnalysisTaskVertexESD.cxx:585 AliAnalysisTaskVertexESD.cxx:586 AliAnalysisTaskVertexESD.cxx:587 AliAnalysisTaskVertexESD.cxx:588 AliAnalysisTaskVertexESD.cxx:589 AliAnalysisTaskVertexESD.cxx:590 AliAnalysisTaskVertexESD.cxx:591 AliAnalysisTaskVertexESD.cxx:592 AliAnalysisTaskVertexESD.cxx:593 AliAnalysisTaskVertexESD.cxx:594 AliAnalysisTaskVertexESD.cxx:595 AliAnalysisTaskVertexESD.cxx:596 AliAnalysisTaskVertexESD.cxx:597 AliAnalysisTaskVertexESD.cxx:598 AliAnalysisTaskVertexESD.cxx:599 AliAnalysisTaskVertexESD.cxx:600 AliAnalysisTaskVertexESD.cxx:601 AliAnalysisTaskVertexESD.cxx:602 AliAnalysisTaskVertexESD.cxx:603 AliAnalysisTaskVertexESD.cxx:604 AliAnalysisTaskVertexESD.cxx:605 AliAnalysisTaskVertexESD.cxx:606 AliAnalysisTaskVertexESD.cxx:607 AliAnalysisTaskVertexESD.cxx:608 AliAnalysisTaskVertexESD.cxx:609 AliAnalysisTaskVertexESD.cxx:610 AliAnalysisTaskVertexESD.cxx:611 AliAnalysisTaskVertexESD.cxx:612 AliAnalysisTaskVertexESD.cxx:613 AliAnalysisTaskVertexESD.cxx:614 AliAnalysisTaskVertexESD.cxx:615 AliAnalysisTaskVertexESD.cxx:616 AliAnalysisTaskVertexESD.cxx:617 AliAnalysisTaskVertexESD.cxx:618 AliAnalysisTaskVertexESD.cxx:619 AliAnalysisTaskVertexESD.cxx:620 AliAnalysisTaskVertexESD.cxx:621 AliAnalysisTaskVertexESD.cxx:622 AliAnalysisTaskVertexESD.cxx:623 AliAnalysisTaskVertexESD.cxx:624 AliAnalysisTaskVertexESD.cxx:625 AliAnalysisTaskVertexESD.cxx:626 AliAnalysisTaskVertexESD.cxx:627 AliAnalysisTaskVertexESD.cxx:628 AliAnalysisTaskVertexESD.cxx:629 AliAnalysisTaskVertexESD.cxx:630 AliAnalysisTaskVertexESD.cxx:631 AliAnalysisTaskVertexESD.cxx:632 AliAnalysisTaskVertexESD.cxx:633 AliAnalysisTaskVertexESD.cxx:634 AliAnalysisTaskVertexESD.cxx:635 AliAnalysisTaskVertexESD.cxx:636 AliAnalysisTaskVertexESD.cxx:637 AliAnalysisTaskVertexESD.cxx:638 AliAnalysisTaskVertexESD.cxx:639 AliAnalysisTaskVertexESD.cxx:640 AliAnalysisTaskVertexESD.cxx:641 AliAnalysisTaskVertexESD.cxx:642 AliAnalysisTaskVertexESD.cxx:643 AliAnalysisTaskVertexESD.cxx:644 AliAnalysisTaskVertexESD.cxx:645 AliAnalysisTaskVertexESD.cxx:646 AliAnalysisTaskVertexESD.cxx:647 AliAnalysisTaskVertexESD.cxx:648 AliAnalysisTaskVertexESD.cxx:649 AliAnalysisTaskVertexESD.cxx:650 AliAnalysisTaskVertexESD.cxx:651 AliAnalysisTaskVertexESD.cxx:652 AliAnalysisTaskVertexESD.cxx:653 AliAnalysisTaskVertexESD.cxx:654 AliAnalysisTaskVertexESD.cxx:655 AliAnalysisTaskVertexESD.cxx:656 AliAnalysisTaskVertexESD.cxx:657 AliAnalysisTaskVertexESD.cxx:658 AliAnalysisTaskVertexESD.cxx:659 AliAnalysisTaskVertexESD.cxx:660 AliAnalysisTaskVertexESD.cxx:661 AliAnalysisTaskVertexESD.cxx:662 AliAnalysisTaskVertexESD.cxx:663 AliAnalysisTaskVertexESD.cxx:664 AliAnalysisTaskVertexESD.cxx:665 AliAnalysisTaskVertexESD.cxx:666 AliAnalysisTaskVertexESD.cxx:667 AliAnalysisTaskVertexESD.cxx:668 AliAnalysisTaskVertexESD.cxx:669 AliAnalysisTaskVertexESD.cxx:670 AliAnalysisTaskVertexESD.cxx:671 AliAnalysisTaskVertexESD.cxx:672 AliAnalysisTaskVertexESD.cxx:673 AliAnalysisTaskVertexESD.cxx:674 AliAnalysisTaskVertexESD.cxx:675 AliAnalysisTaskVertexESD.cxx:676 AliAnalysisTaskVertexESD.cxx:677 AliAnalysisTaskVertexESD.cxx:678 AliAnalysisTaskVertexESD.cxx:679 AliAnalysisTaskVertexESD.cxx:680 AliAnalysisTaskVertexESD.cxx:681 AliAnalysisTaskVertexESD.cxx:682 AliAnalysisTaskVertexESD.cxx:683 AliAnalysisTaskVertexESD.cxx:684 AliAnalysisTaskVertexESD.cxx:685 AliAnalysisTaskVertexESD.cxx:686 AliAnalysisTaskVertexESD.cxx:687 AliAnalysisTaskVertexESD.cxx:688 AliAnalysisTaskVertexESD.cxx:689 AliAnalysisTaskVertexESD.cxx:690 AliAnalysisTaskVertexESD.cxx:691 AliAnalysisTaskVertexESD.cxx:692 AliAnalysisTaskVertexESD.cxx:693 AliAnalysisTaskVertexESD.cxx:694 AliAnalysisTaskVertexESD.cxx:695 AliAnalysisTaskVertexESD.cxx:696 AliAnalysisTaskVertexESD.cxx:697 AliAnalysisTaskVertexESD.cxx:698 AliAnalysisTaskVertexESD.cxx:699 AliAnalysisTaskVertexESD.cxx:700 AliAnalysisTaskVertexESD.cxx:701 AliAnalysisTaskVertexESD.cxx:702 AliAnalysisTaskVertexESD.cxx:703 AliAnalysisTaskVertexESD.cxx:704 AliAnalysisTaskVertexESD.cxx:705 AliAnalysisTaskVertexESD.cxx:706 AliAnalysisTaskVertexESD.cxx:707 AliAnalysisTaskVertexESD.cxx:708 AliAnalysisTaskVertexESD.cxx:709 AliAnalysisTaskVertexESD.cxx:710 AliAnalysisTaskVertexESD.cxx:711 AliAnalysisTaskVertexESD.cxx:712 AliAnalysisTaskVertexESD.cxx:713 AliAnalysisTaskVertexESD.cxx:714 AliAnalysisTaskVertexESD.cxx:715 AliAnalysisTaskVertexESD.cxx:716 AliAnalysisTaskVertexESD.cxx:717 AliAnalysisTaskVertexESD.cxx:718 AliAnalysisTaskVertexESD.cxx:719 AliAnalysisTaskVertexESD.cxx:720 AliAnalysisTaskVertexESD.cxx:721 AliAnalysisTaskVertexESD.cxx:722 AliAnalysisTaskVertexESD.cxx:723 AliAnalysisTaskVertexESD.cxx:724 AliAnalysisTaskVertexESD.cxx:725 AliAnalysisTaskVertexESD.cxx:726 AliAnalysisTaskVertexESD.cxx:727 AliAnalysisTaskVertexESD.cxx:728 AliAnalysisTaskVertexESD.cxx:729 AliAnalysisTaskVertexESD.cxx:730 AliAnalysisTaskVertexESD.cxx:731 AliAnalysisTaskVertexESD.cxx:732 AliAnalysisTaskVertexESD.cxx:733 AliAnalysisTaskVertexESD.cxx:734 AliAnalysisTaskVertexESD.cxx:735 AliAnalysisTaskVertexESD.cxx:736 AliAnalysisTaskVertexESD.cxx:737 AliAnalysisTaskVertexESD.cxx:738 AliAnalysisTaskVertexESD.cxx:739 AliAnalysisTaskVertexESD.cxx:740 AliAnalysisTaskVertexESD.cxx:741 AliAnalysisTaskVertexESD.cxx:742 AliAnalysisTaskVertexESD.cxx:743 AliAnalysisTaskVertexESD.cxx:744 AliAnalysisTaskVertexESD.cxx:745 AliAnalysisTaskVertexESD.cxx:746 AliAnalysisTaskVertexESD.cxx:747 AliAnalysisTaskVertexESD.cxx:748 AliAnalysisTaskVertexESD.cxx:749 AliAnalysisTaskVertexESD.cxx:750 AliAnalysisTaskVertexESD.cxx:751 AliAnalysisTaskVertexESD.cxx:752 AliAnalysisTaskVertexESD.cxx:753 AliAnalysisTaskVertexESD.cxx:754 AliAnalysisTaskVertexESD.cxx:755 AliAnalysisTaskVertexESD.cxx:756 AliAnalysisTaskVertexESD.cxx:757 AliAnalysisTaskVertexESD.cxx:758 AliAnalysisTaskVertexESD.cxx:759 AliAnalysisTaskVertexESD.cxx:760 AliAnalysisTaskVertexESD.cxx:761 AliAnalysisTaskVertexESD.cxx:762 AliAnalysisTaskVertexESD.cxx:763 AliAnalysisTaskVertexESD.cxx:764 AliAnalysisTaskVertexESD.cxx:765 AliAnalysisTaskVertexESD.cxx:766 AliAnalysisTaskVertexESD.cxx:767 AliAnalysisTaskVertexESD.cxx:768 AliAnalysisTaskVertexESD.cxx:769 AliAnalysisTaskVertexESD.cxx:770 AliAnalysisTaskVertexESD.cxx:771 AliAnalysisTaskVertexESD.cxx:772 AliAnalysisTaskVertexESD.cxx:773 AliAnalysisTaskVertexESD.cxx:774 AliAnalysisTaskVertexESD.cxx:775 AliAnalysisTaskVertexESD.cxx:776 AliAnalysisTaskVertexESD.cxx:777 AliAnalysisTaskVertexESD.cxx:778 AliAnalysisTaskVertexESD.cxx:779 AliAnalysisTaskVertexESD.cxx:780 AliAnalysisTaskVertexESD.cxx:781 AliAnalysisTaskVertexESD.cxx:782 AliAnalysisTaskVertexESD.cxx:783 AliAnalysisTaskVertexESD.cxx:784 AliAnalysisTaskVertexESD.cxx:785 AliAnalysisTaskVertexESD.cxx:786 AliAnalysisTaskVertexESD.cxx:787 AliAnalysisTaskVertexESD.cxx:788 AliAnalysisTaskVertexESD.cxx:789 AliAnalysisTaskVertexESD.cxx:790 AliAnalysisTaskVertexESD.cxx:791 AliAnalysisTaskVertexESD.cxx:792 AliAnalysisTaskVertexESD.cxx:793 AliAnalysisTaskVertexESD.cxx:794 AliAnalysisTaskVertexESD.cxx:795 AliAnalysisTaskVertexESD.cxx:796 AliAnalysisTaskVertexESD.cxx:797 AliAnalysisTaskVertexESD.cxx:798 AliAnalysisTaskVertexESD.cxx:799 AliAnalysisTaskVertexESD.cxx:800 AliAnalysisTaskVertexESD.cxx:801 AliAnalysisTaskVertexESD.cxx:802 AliAnalysisTaskVertexESD.cxx:803 AliAnalysisTaskVertexESD.cxx:804 AliAnalysisTaskVertexESD.cxx:805 AliAnalysisTaskVertexESD.cxx:806 AliAnalysisTaskVertexESD.cxx:807 AliAnalysisTaskVertexESD.cxx:808 AliAnalysisTaskVertexESD.cxx:809 AliAnalysisTaskVertexESD.cxx:810 AliAnalysisTaskVertexESD.cxx:811 AliAnalysisTaskVertexESD.cxx:812 AliAnalysisTaskVertexESD.cxx:813 AliAnalysisTaskVertexESD.cxx:814 AliAnalysisTaskVertexESD.cxx:815 AliAnalysisTaskVertexESD.cxx:816 AliAnalysisTaskVertexESD.cxx:817 AliAnalysisTaskVertexESD.cxx:818 AliAnalysisTaskVertexESD.cxx:819 AliAnalysisTaskVertexESD.cxx:820 AliAnalysisTaskVertexESD.cxx:821 AliAnalysisTaskVertexESD.cxx:822 AliAnalysisTaskVertexESD.cxx:823 AliAnalysisTaskVertexESD.cxx:824 AliAnalysisTaskVertexESD.cxx:825 AliAnalysisTaskVertexESD.cxx:826 AliAnalysisTaskVertexESD.cxx:827 AliAnalysisTaskVertexESD.cxx:828 AliAnalysisTaskVertexESD.cxx:829 AliAnalysisTaskVertexESD.cxx:830 AliAnalysisTaskVertexESD.cxx:831 AliAnalysisTaskVertexESD.cxx:832 AliAnalysisTaskVertexESD.cxx:833 AliAnalysisTaskVertexESD.cxx:834 AliAnalysisTaskVertexESD.cxx:835 AliAnalysisTaskVertexESD.cxx:836 AliAnalysisTaskVertexESD.cxx:837 AliAnalysisTaskVertexESD.cxx:838 AliAnalysisTaskVertexESD.cxx:839 AliAnalysisTaskVertexESD.cxx:840 AliAnalysisTaskVertexESD.cxx:841 AliAnalysisTaskVertexESD.cxx:842 AliAnalysisTaskVertexESD.cxx:843 AliAnalysisTaskVertexESD.cxx:844 AliAnalysisTaskVertexESD.cxx:845 AliAnalysisTaskVertexESD.cxx:846 AliAnalysisTaskVertexESD.cxx:847 AliAnalysisTaskVertexESD.cxx:848 AliAnalysisTaskVertexESD.cxx:849 AliAnalysisTaskVertexESD.cxx:850 AliAnalysisTaskVertexESD.cxx:851 AliAnalysisTaskVertexESD.cxx:852 AliAnalysisTaskVertexESD.cxx:853 AliAnalysisTaskVertexESD.cxx:854 AliAnalysisTaskVertexESD.cxx:855 AliAnalysisTaskVertexESD.cxx:856 AliAnalysisTaskVertexESD.cxx:857 AliAnalysisTaskVertexESD.cxx:858 AliAnalysisTaskVertexESD.cxx:859 AliAnalysisTaskVertexESD.cxx:860 AliAnalysisTaskVertexESD.cxx:861 AliAnalysisTaskVertexESD.cxx:862 AliAnalysisTaskVertexESD.cxx:863 AliAnalysisTaskVertexESD.cxx:864 AliAnalysisTaskVertexESD.cxx:865 AliAnalysisTaskVertexESD.cxx:866 AliAnalysisTaskVertexESD.cxx:867 AliAnalysisTaskVertexESD.cxx:868 AliAnalysisTaskVertexESD.cxx:869 AliAnalysisTaskVertexESD.cxx:870 AliAnalysisTaskVertexESD.cxx:871 AliAnalysisTaskVertexESD.cxx:872 AliAnalysisTaskVertexESD.cxx:873 AliAnalysisTaskVertexESD.cxx:874 AliAnalysisTaskVertexESD.cxx:875 AliAnalysisTaskVertexESD.cxx:876 AliAnalysisTaskVertexESD.cxx:877 AliAnalysisTaskVertexESD.cxx:878 AliAnalysisTaskVertexESD.cxx:879 AliAnalysisTaskVertexESD.cxx:880 AliAnalysisTaskVertexESD.cxx:881 AliAnalysisTaskVertexESD.cxx:882 AliAnalysisTaskVertexESD.cxx:883 AliAnalysisTaskVertexESD.cxx:884 AliAnalysisTaskVertexESD.cxx:885 AliAnalysisTaskVertexESD.cxx:886 AliAnalysisTaskVertexESD.cxx:887 AliAnalysisTaskVertexESD.cxx:888 AliAnalysisTaskVertexESD.cxx:889 AliAnalysisTaskVertexESD.cxx:890 AliAnalysisTaskVertexESD.cxx:891 AliAnalysisTaskVertexESD.cxx:892 AliAnalysisTaskVertexESD.cxx:893 AliAnalysisTaskVertexESD.cxx:894 AliAnalysisTaskVertexESD.cxx:895 AliAnalysisTaskVertexESD.cxx:896 AliAnalysisTaskVertexESD.cxx:897 AliAnalysisTaskVertexESD.cxx:898 AliAnalysisTaskVertexESD.cxx:899 AliAnalysisTaskVertexESD.cxx:900 AliAnalysisTaskVertexESD.cxx:901 AliAnalysisTaskVertexESD.cxx:902 AliAnalysisTaskVertexESD.cxx:903 AliAnalysisTaskVertexESD.cxx:904 AliAnalysisTaskVertexESD.cxx:905 AliAnalysisTaskVertexESD.cxx:906 AliAnalysisTaskVertexESD.cxx:907 AliAnalysisTaskVertexESD.cxx:908 AliAnalysisTaskVertexESD.cxx:909 AliAnalysisTaskVertexESD.cxx:910 AliAnalysisTaskVertexESD.cxx:911 AliAnalysisTaskVertexESD.cxx:912 AliAnalysisTaskVertexESD.cxx:913 AliAnalysisTaskVertexESD.cxx:914 AliAnalysisTaskVertexESD.cxx:915 AliAnalysisTaskVertexESD.cxx:916 AliAnalysisTaskVertexESD.cxx:917 AliAnalysisTaskVertexESD.cxx:918 AliAnalysisTaskVertexESD.cxx:919 AliAnalysisTaskVertexESD.cxx:920 AliAnalysisTaskVertexESD.cxx:921 AliAnalysisTaskVertexESD.cxx:922 AliAnalysisTaskVertexESD.cxx:923 AliAnalysisTaskVertexESD.cxx:924