#include "TH1F.h"
#include "TH2F.h"
#include "THnSparse.h"
#include "TList.h"
#include "TMath.h"
#include "TFolder.h"
#include "AliESDEvent.h"
#include "AliESDtrack.h"
#include "AliESDfriendTrack.h"
#include "AliESDfriend.h"
#include "AliESDtrackCuts.h"
#include "AliESDpid.h"
#include "AliPerfAnalyzeInvPt.h"
#include "AliPerformancePtCalib.h"
using namespace std;
ClassImp(AliPerformancePtCalib)
AliPerformancePtCalib::AliPerformancePtCalib(const Char_t* name, const Char_t* title):
AliPerformanceObject(name,title),
fNThetaBins(0),
fNPhiBins(0),
fMaxPhi(0),
fMinPhi(0),
fMaxTheta(0),
fMinTheta(0),
fRange(0),
fExclRange(0),
fFitGaus(0) ,
fDoRebin(0),
fRebin(0),
fShift(0),
fDeltaInvP(0),
fOptTPC(0),
fESDcuts(0),
fPions(0),
fEtaAcceptance(0),
fCutsRC(0),
fCutsMC(0),
fList(0),
fHistInvPtPtThetaPhi(0),
fHistPtShift0(0),
fHistPrimaryVertexPosX(0),
fHistPrimaryVertexPosY(0),
fHistPrimaryVertexPosZ(0),
fHistTrackMultiplicity(0),
fHistTrackMultiplicityCuts(0),
fHistTPCMomentaPosP(0),
fHistTPCMomentaNegP(0),
fHistTPCMomentaPosPt(0),
fHistTPCMomentaNegPt(0),
fHistUserPtShift(0),
fHistdedxPions(0),
fESDTrackCuts(0),
fESDpid(0),
fAnalysisFolder(0)
{
fShift = kFALSE;
fDeltaInvP = 0.00;
fOptTPC = kTRUE;
fESDcuts = kFALSE;
fPions = kFALSE;
fCutsRC = NULL;
fCutsMC = NULL;
fEtaAcceptance = 0.8;
fFitGaus = kFALSE;
fNThetaBins = 0;
fNPhiBins = 0;
fMaxPhi = 6.5;
fMinPhi = 0.0;
fMaxTheta = 3.0;
fMinTheta = 0.0;
fRange = 0;
fExclRange =0;
fDoRebin = kFALSE;
fRebin = 0;
for(Int_t i=0; i<100; i++) {
fThetaBins[i] = 0.0;
fPhiBins[i] = 0.0;
}
Init();
}
AliPerformancePtCalib::~AliPerformancePtCalib() {
if(fList) delete fList;
if( fHistInvPtPtThetaPhi) delete fHistInvPtPtThetaPhi;fHistInvPtPtThetaPhi=0;
if(fHistPtShift0) delete fHistPtShift0;fHistPtShift0=0;
if(fHistPrimaryVertexPosX) delete fHistPrimaryVertexPosX;fHistPrimaryVertexPosX=0;
if(fHistPrimaryVertexPosY) delete fHistPrimaryVertexPosY;fHistPrimaryVertexPosY=0;
if(fHistPrimaryVertexPosZ) delete fHistPrimaryVertexPosZ;fHistPrimaryVertexPosZ=0;
if(fHistTrackMultiplicity) delete fHistTrackMultiplicity;fHistTrackMultiplicity=0;
if(fHistTrackMultiplicityCuts) delete fHistTrackMultiplicityCuts;fHistTrackMultiplicityCuts=0;
if(fHistTPCMomentaPosP) delete fHistTPCMomentaPosP;fHistTPCMomentaPosP=0;
if(fHistTPCMomentaNegP) delete fHistTPCMomentaNegP;fHistTPCMomentaNegP=0;
if(fHistTPCMomentaPosPt) delete fHistTPCMomentaPosPt;fHistTPCMomentaPosPt=0;
if(fHistTPCMomentaNegPt) delete fHistTPCMomentaNegPt ;fHistTPCMomentaNegPt=0;
if(fHistUserPtShift) delete fHistUserPtShift;fHistUserPtShift=0;
if(fHistdedxPions) delete fHistdedxPions;fHistdedxPions=0;
if(fESDTrackCuts) delete fESDTrackCuts;fESDTrackCuts=0;
if(fESDpid) delete fESDpid;fESDpid=0;
if(fAnalysisFolder) delete fAnalysisFolder; fAnalysisFolder=0;
}
void AliPerformancePtCalib::Init()
{
fList = new TList();
fAnalysisFolder = CreateFolder("folderPt_TPC","Analysis Pt Resolution Folder");
fHistPrimaryVertexPosX = new TH1F("fHistPrimaryVertexPosX", "Primary Vertex Position X;Primary Vertex Position X (cm);Events",100,-0.5,0.5);
fList->Add(fHistPrimaryVertexPosX);
fHistPrimaryVertexPosY = new TH1F("fHistPrimaryVertexPosY", "Primary Vertex Position Y;Primary Vertex Position Y (cm);Events",100,-0.5,0.5);
fList->Add(fHistPrimaryVertexPosY);
fHistPrimaryVertexPosZ = new TH1F("fHistPrimaryVertexPosZ", "Primary Vertex Position Z;Primary Vertex Position Z (cm);Events",200,-2.0,2.0);
fList->Add(fHistPrimaryVertexPosZ);
fHistTrackMultiplicity = new TH1F("fHistTrackMultiplicity", "Multiplicity distribution;Number of tracks;Events", 250, 0, 250);
fList->Add(fHistTrackMultiplicity);
fHistTrackMultiplicityCuts = new TH1F("fHistTrackMultiplicityCuts", "Multiplicity distribution;Number of tracks after cuts;Events", 250, 0, 250);
fList->Add(fHistTrackMultiplicityCuts);
fHistPtShift0 = new TH1F("fHistPtShift0","1/pt dN/pt vs. pt of ESD track ",800,-40.0,40.0);
fList->Add(fHistPtShift0);
const Int_t invPtDims = 4;
fMaxPhi = 6.52;
fMinPhi = 0.0;
fMaxTheta = 3.0;
fMinTheta = 0.0;
Double_t xminInvPt[invPtDims] = {-4.5,-40.0,fMinTheta,fMinPhi};
Double_t xmaxInvPt[invPtDims] = {4.5,40.0,fMaxTheta,fMaxPhi};
Int_t binsInvPt[invPtDims] = {450,400,150,163};
fHistInvPtPtThetaPhi = new THnSparseF("fHistInvPtPtThetaPhi","1/pt vs pt vs #theta vs #phi ",invPtDims,binsInvPt,xminInvPt,xmaxInvPt);
fList->Add(fHistInvPtPtThetaPhi);
fHistTPCMomentaPosP = new TH2F("fHistTPCMomentaPosP","TPC p vs global esd track p pos",300,0.0,15.0,300,0.0,15.0);
fList->Add(fHistTPCMomentaPosP);
fHistTPCMomentaNegP = new TH2F("fHistTPCMomentaNegP","TPC p vs global esd track p neg",300,0.0,15.0,300,0.0,15.0);
fList->Add(fHistTPCMomentaNegP);
fHistTPCMomentaPosPt = new TH2F("fHistTPCMomentaPosPt","TPC pt vs global esd track pt pos",300,0.0,15.0,300,0.0,15.0);
fList->Add(fHistTPCMomentaPosPt);
fHistTPCMomentaNegPt = new TH2F("fHistTPCMomentaNegPt","TPC pt vs global esd track pt neg",300,0.0,15.0,300,0.0,15.0);
fList->Add(fHistTPCMomentaNegPt);
fHistUserPtShift = new TH1F("fHistUserPtShift","user defined shift in 1/pt",100,-0.5,1.5);
fList->Add(fHistUserPtShift);
fHistdedxPions = new TH2F ("fHistdedxPions","dEdx of pions ident. via kPID vs signed Pt",300,-15.05,15.05,200,0.0,400.0);
fList->Add(fHistdedxPions);
fESDpid = new AliESDpid();
fESDTrackCuts =NULL;
}
void AliPerformancePtCalib::SetPtShift(const Double_t shiftVal ) {
if(shiftVal) { fShift=kTRUE; fDeltaInvP = shiftVal; }
}
void AliPerformancePtCalib::Exec(AliMCEvent* const , AliESDEvent *const esdEvent, AliESDfriend * const , const Bool_t , const Bool_t )
{
if(!fESDTrackCuts) {
Printf("no esd track cut");
return;
}
if (!esdEvent) {
Printf("ERROR: Event not available");
return;
}
if (!(esdEvent->GetNumberOfTracks())) return;
const AliESDVertex *vtx = esdEvent->GetPrimaryVertex();
if (!vtx->GetStatus()) return ;
if(fShift) fHistUserPtShift->Fill(fDeltaInvP);
fHistTrackMultiplicity->Fill(esdEvent->GetNumberOfTracks());
Double_t tPrimaryVtxPosition[3];
const AliESDVertex *primaryVtx = esdEvent->GetPrimaryVertexTPC();
tPrimaryVtxPosition[0] = primaryVtx->GetX();
tPrimaryVtxPosition[1] = primaryVtx->GetY();
tPrimaryVtxPosition[2] = primaryVtx->GetZ();
fHistPrimaryVertexPosX->Fill(tPrimaryVtxPosition[0]);
fHistPrimaryVertexPosY->Fill(tPrimaryVtxPosition[1]);
fHistPrimaryVertexPosZ->Fill(tPrimaryVtxPosition[2]);
Int_t count=0;
for(Int_t j = 0;j<esdEvent->GetNumberOfTracks();j++){
AliESDtrack *esdTrack = esdEvent->GetTrack(j);
if(!esdTrack) continue;
if(fESDcuts){
if(!fESDTrackCuts->AcceptTrack(esdTrack))continue;
}
if(fOptTPC){
const AliExternalTrackParam *tpcTrack = esdTrack->GetTPCInnerParam();
if(!tpcTrack) continue;
if(fabs(tpcTrack->Eta())>= fEtaAcceptance) continue;
Double_t signedPt = tpcTrack->GetSignedPt();
if(fPions){
fESDpid->GetTPCResponse().SetBetheBlochParameters(0.0283086,2.63394e+01,5.04114e-11, 2.12543e+00,4.88663e+00);
if( TMath::Abs(fESDpid->NumberOfSigmasTPC(esdTrack,AliPID::kPion)) >1) continue;
fHistdedxPions->Fill(signedPt,esdTrack->GetTPCsignal());
}
Double_t invPt = 0.0;
if(signedPt) {
invPt = 1.0/signedPt;
fHistPtShift0->Fill(signedPt);
if(fShift){Printf("user shift of momentum SET to non zero value!");
invPt += fDeltaInvP;
if(invPt) signedPt = 1.0/invPt;
else continue;
}
Double_t theta = tpcTrack->Theta();
Double_t phi = tpcTrack->Phi();
Double_t momAng[4] = {invPt,signedPt,theta,phi};
fHistInvPtPtThetaPhi->Fill(momAng);
Double_t pTPC = tpcTrack->GetP();
Double_t pESD = esdTrack->GetP();
Double_t ptESD = esdTrack->GetSignedPt();
if(esdTrack->GetSign()>0){
fHistTPCMomentaPosP->Fill(fabs(pESD),fabs(pTPC));
fHistTPCMomentaPosPt->Fill(fabs(ptESD),fabs(signedPt));
}
else{
fHistTPCMomentaNegP->Fill(fabs(pESD),fabs(pTPC));
fHistTPCMomentaNegPt->Fill(fabs(ptESD),fabs(signedPt));
}
count++;
}
else continue;
}
else{
if(fabs(esdTrack->Eta())> fEtaAcceptance) continue;
Double_t invPt = 0.0;
Double_t signedPt = esdTrack->GetSignedPt();
if(signedPt){
invPt = 1.0/signedPt;
fHistPtShift0->Fill(signedPt);
if(fShift){Printf("user shift of momentum SET to non zero value!");
invPt += fDeltaInvP;
if(invPt) signedPt = 1.0/invPt;
else continue;
}
Double_t theta = esdTrack->Theta();
Double_t phi = esdTrack->Phi();
Double_t momAng[4] = {invPt,signedPt,theta,phi};
fHistInvPtPtThetaPhi->Fill(momAng);
count++;
}
}
}
fHistTrackMultiplicityCuts->Fill(count);
}
void AliPerformancePtCalib::Analyse()
{
THnSparseF *copyTHnSparseTheta = (THnSparseF*)fHistInvPtPtThetaPhi->Clone("copyTHnSparseTheta");
if(!copyTHnSparseTheta) return;
copyTHnSparseTheta->GetAxis(3)->SetRangeUser(fMinPhi,fMaxPhi);
TH2F *histInvPtTheta = (TH2F*)copyTHnSparseTheta->Projection(2,0);
THnSparseF *copyTHnSparsePhi = (THnSparseF*)fHistInvPtPtThetaPhi->Clone("copyTHnSparsePhi");
if(!copyTHnSparsePhi) return;
copyTHnSparsePhi->GetAxis(2)->SetRangeUser(fMinTheta,fMaxTheta);
TH2F *histInvPtPhi = (TH2F*)copyTHnSparsePhi->Projection(3,0);
AliPerfAnalyzeInvPt *ana = new AliPerfAnalyzeInvPt("AliPerfAnalyzeInvPt","AliPerfAnalyzeInvPt");
if(!ana) return;
TH1::AddDirectory(kFALSE);
ana->SetProjBinsTheta(fThetaBins,fNThetaBins);
ana->SetProjBinsPhi(fPhiBins,fNPhiBins);
ana->SetMakeFitOption(fFitGaus,fExclRange,fRange);
if(fDoRebin) ana->SetDoRebin(fRebin);
TObjArray *aFolderObj = new TObjArray;
if(!aFolderObj) return;
ana->StartAnalysis(histInvPtTheta,histInvPtPhi,aFolderObj);
fAnalysisFolder = ExportToFolder(aFolderObj);
if(aFolderObj) delete aFolderObj;
if(ana) delete ana;
}
TFolder* AliPerformancePtCalib::ExportToFolder(TObjArray * array)
{
AliPerformancePtCalib * comp=this;
TFolder *folder = comp->GetAnalysisFolder();
TString name, title;
TFolder *newFolder = 0;
Int_t i = 0;
Int_t size = array->GetSize();
if(folder) {
name = folder->GetName();
title = folder->GetTitle();
delete folder;
newFolder = CreateFolder(name.Data(),title.Data());
newFolder->SetOwner();
while(i < size) {
newFolder->Add(array->At(i));
i++;
}
}
return newFolder;
}
Long64_t AliPerformancePtCalib::Merge(TCollection* const list)
{
if (!list)
return 0;
if (list->IsEmpty())
return 1;
TIterator* iter = list->MakeIterator();
TObject* obj = 0;
Int_t count=0;
while((obj = iter->Next()) != 0)
{
AliPerformancePtCalib* entry = dynamic_cast<AliPerformancePtCalib*>(obj);
if (entry == 0) continue;
fHistInvPtPtThetaPhi->Add(entry->fHistInvPtPtThetaPhi);
fHistPtShift0->Add(entry->fHistPtShift0);
fHistPrimaryVertexPosX->Add(entry->fHistPrimaryVertexPosX);
fHistPrimaryVertexPosY->Add(entry->fHistPrimaryVertexPosY);
fHistPrimaryVertexPosZ->Add(entry->fHistPrimaryVertexPosZ);
fHistTrackMultiplicity->Add(entry->fHistTrackMultiplicity);
fHistTrackMultiplicityCuts->Add(entry->fHistTrackMultiplicityCuts);
fHistTPCMomentaPosP->Add(entry->fHistTPCMomentaPosP);
fHistTPCMomentaNegP->Add(entry->fHistTPCMomentaNegP);
fHistTPCMomentaPosPt->Add(entry->fHistTPCMomentaPosPt);
fHistTPCMomentaNegPt->Add(entry->fHistTPCMomentaNegPt);
fHistdedxPions->Add(entry->fHistdedxPions);
count++;
}
return count;
}
TFolder* AliPerformancePtCalib::CreateFolder(TString name,TString title) {
TFolder *folder = 0;
folder = new TFolder(name.Data(),title.Data());
return folder;
}
void AliPerformancePtCalib::SetProjBinsPhi(const Double_t *phiBinArray,const Int_t nphBins, const Double_t minTheta, const Double_t maxTheta){
if(nphBins){
fNPhiBins = nphBins;
for(Int_t k = 0;k<fNPhiBins;k++){
fPhiBins[k] = phiBinArray[k];
}
Printf("AliPerformancePtCalib::SetProjBinsPhi: number of bins in phi set to %i",fNPhiBins);
}
else Printf("Warning AliPerformancePtCalib::SetProjBinsPhi: number of bins in phi NOT set!!! Default values are taken.");
if(fabs(minTheta-maxTheta)<0.001){
Printf("AliPerformancePtCalib::SetProjBinsPhi: theta range for projection on phi and charge/pt is too small. whole range of theta selected.");
}
else{
Printf("AliPerformancePtCalib::SetProjBinsPhi: theta range for projection on phi and charge/pt is selected by user: %1.3f - %1.3f rad",minTheta,maxTheta);
fMinTheta = minTheta;
fMaxTheta = maxTheta;
}
}
void AliPerformancePtCalib::SetProjBinsTheta(const Double_t *thetaBinArray, const Int_t nthBins, const Double_t minPhi, const Double_t maxPhi){
if(nthBins){
fNThetaBins = nthBins;
for(Int_t k = 0;k<fNThetaBins;k++){
fThetaBins[k] = thetaBinArray[k];
}
Printf("AliPerformancePtCalib::SetProjBinsTheta: number of bins in theta set to %i",fNThetaBins);
}
else Printf("Warning AliPerformancePtCalib::SetProjBinsTheta: number of bins in theta NOT set!!! Default values are taken.");
if(fabs(minPhi-maxPhi)<0.001){
Printf("AliPerformancePtCalib::SetProjBinsTheta: phi range for projection on theta and charge/pt is too small. whole range of phi selected.");
}
else{
Printf("AliPerformancePtCalib::SetProjBinsTheta: phi range for projection on theta and charge/pt is selected by user: %1.3f - %1.3f rad",minPhi,maxPhi);
fMinPhi = minPhi;
fMaxPhi = maxPhi;
}
}
void AliPerformancePtCalib::SetMakeFitOption(const Bool_t setGausFit, const Double_t exclusionR,const Double_t fitR ){
fRange = fitR;
fFitGaus = setGausFit;
fExclRange = exclusionR;
if(fFitGaus) Printf("AliPerformancePtCalib::SetMakeFitOption: set MakeGausFit with fit range %2.3f and exclusion range in fabs(1/pt): %2.3f",fRange,fExclRange);
else Printf("AliPerformancePtCalib::SetMakeFitOption: set standard polynomial fit with fit range %2.3f and exclusion range in fabs(1/pt): %2.3f",fRange,fExclRange);
}
AliPerformancePtCalib.cxx:1 AliPerformancePtCalib.cxx:2 AliPerformancePtCalib.cxx:3 AliPerformancePtCalib.cxx:4 AliPerformancePtCalib.cxx:5 AliPerformancePtCalib.cxx:6 AliPerformancePtCalib.cxx:7 AliPerformancePtCalib.cxx:8 AliPerformancePtCalib.cxx:9 AliPerformancePtCalib.cxx:10 AliPerformancePtCalib.cxx:11 AliPerformancePtCalib.cxx:12 AliPerformancePtCalib.cxx:13 AliPerformancePtCalib.cxx:14 AliPerformancePtCalib.cxx:15 AliPerformancePtCalib.cxx:16 AliPerformancePtCalib.cxx:17 AliPerformancePtCalib.cxx:18 AliPerformancePtCalib.cxx:19 AliPerformancePtCalib.cxx:20 AliPerformancePtCalib.cxx:21 AliPerformancePtCalib.cxx:22 AliPerformancePtCalib.cxx:23 AliPerformancePtCalib.cxx:24 AliPerformancePtCalib.cxx:25 AliPerformancePtCalib.cxx:26 AliPerformancePtCalib.cxx:27 AliPerformancePtCalib.cxx:28 AliPerformancePtCalib.cxx:29 AliPerformancePtCalib.cxx:30 AliPerformancePtCalib.cxx:31 AliPerformancePtCalib.cxx:32 AliPerformancePtCalib.cxx:33 AliPerformancePtCalib.cxx:34 AliPerformancePtCalib.cxx:35 AliPerformancePtCalib.cxx:36 AliPerformancePtCalib.cxx:37 AliPerformancePtCalib.cxx:38 AliPerformancePtCalib.cxx:39 AliPerformancePtCalib.cxx:40 AliPerformancePtCalib.cxx:41 AliPerformancePtCalib.cxx:42 AliPerformancePtCalib.cxx:43 AliPerformancePtCalib.cxx:44 AliPerformancePtCalib.cxx:45 AliPerformancePtCalib.cxx:46 AliPerformancePtCalib.cxx:47 AliPerformancePtCalib.cxx:48 AliPerformancePtCalib.cxx:49 AliPerformancePtCalib.cxx:50 AliPerformancePtCalib.cxx:51 AliPerformancePtCalib.cxx:52 AliPerformancePtCalib.cxx:53 AliPerformancePtCalib.cxx:54 AliPerformancePtCalib.cxx:55 AliPerformancePtCalib.cxx:56 AliPerformancePtCalib.cxx:57 AliPerformancePtCalib.cxx:58 AliPerformancePtCalib.cxx:59 AliPerformancePtCalib.cxx:60 AliPerformancePtCalib.cxx:61 AliPerformancePtCalib.cxx:62 AliPerformancePtCalib.cxx:63 AliPerformancePtCalib.cxx:64 AliPerformancePtCalib.cxx:65 AliPerformancePtCalib.cxx:66 AliPerformancePtCalib.cxx:67 AliPerformancePtCalib.cxx:68 AliPerformancePtCalib.cxx:69 AliPerformancePtCalib.cxx:70 AliPerformancePtCalib.cxx:71 AliPerformancePtCalib.cxx:72 AliPerformancePtCalib.cxx:73 AliPerformancePtCalib.cxx:74 AliPerformancePtCalib.cxx:75 AliPerformancePtCalib.cxx:76 AliPerformancePtCalib.cxx:77 AliPerformancePtCalib.cxx:78 AliPerformancePtCalib.cxx:79 AliPerformancePtCalib.cxx:80 AliPerformancePtCalib.cxx:81 AliPerformancePtCalib.cxx:82 AliPerformancePtCalib.cxx:83 AliPerformancePtCalib.cxx:84 AliPerformancePtCalib.cxx:85 AliPerformancePtCalib.cxx:86 AliPerformancePtCalib.cxx:87 AliPerformancePtCalib.cxx:88 AliPerformancePtCalib.cxx:89 AliPerformancePtCalib.cxx:90 AliPerformancePtCalib.cxx:91 AliPerformancePtCalib.cxx:92 AliPerformancePtCalib.cxx:93 AliPerformancePtCalib.cxx:94 AliPerformancePtCalib.cxx:95 AliPerformancePtCalib.cxx:96 AliPerformancePtCalib.cxx:97 AliPerformancePtCalib.cxx:98 AliPerformancePtCalib.cxx:99 AliPerformancePtCalib.cxx:100 AliPerformancePtCalib.cxx:101 AliPerformancePtCalib.cxx:102 AliPerformancePtCalib.cxx:103 AliPerformancePtCalib.cxx:104 AliPerformancePtCalib.cxx:105 AliPerformancePtCalib.cxx:106 AliPerformancePtCalib.cxx:107 AliPerformancePtCalib.cxx:108 AliPerformancePtCalib.cxx:109 AliPerformancePtCalib.cxx:110 AliPerformancePtCalib.cxx:111 AliPerformancePtCalib.cxx:112 AliPerformancePtCalib.cxx:113 AliPerformancePtCalib.cxx:114 AliPerformancePtCalib.cxx:115 AliPerformancePtCalib.cxx:116 AliPerformancePtCalib.cxx:117 AliPerformancePtCalib.cxx:118 AliPerformancePtCalib.cxx:119 AliPerformancePtCalib.cxx:120 AliPerformancePtCalib.cxx:121 AliPerformancePtCalib.cxx:122 AliPerformancePtCalib.cxx:123 AliPerformancePtCalib.cxx:124 AliPerformancePtCalib.cxx:125 AliPerformancePtCalib.cxx:126 AliPerformancePtCalib.cxx:127 AliPerformancePtCalib.cxx:128 AliPerformancePtCalib.cxx:129 AliPerformancePtCalib.cxx:130 AliPerformancePtCalib.cxx:131 AliPerformancePtCalib.cxx:132 AliPerformancePtCalib.cxx:133 AliPerformancePtCalib.cxx:134 AliPerformancePtCalib.cxx:135 AliPerformancePtCalib.cxx:136 AliPerformancePtCalib.cxx:137 AliPerformancePtCalib.cxx:138 AliPerformancePtCalib.cxx:139 AliPerformancePtCalib.cxx:140 AliPerformancePtCalib.cxx:141 AliPerformancePtCalib.cxx:142 AliPerformancePtCalib.cxx:143 AliPerformancePtCalib.cxx:144 AliPerformancePtCalib.cxx:145 AliPerformancePtCalib.cxx:146 AliPerformancePtCalib.cxx:147 AliPerformancePtCalib.cxx:148 AliPerformancePtCalib.cxx:149 AliPerformancePtCalib.cxx:150 AliPerformancePtCalib.cxx:151 AliPerformancePtCalib.cxx:152 AliPerformancePtCalib.cxx:153 AliPerformancePtCalib.cxx:154 AliPerformancePtCalib.cxx:155 AliPerformancePtCalib.cxx:156 AliPerformancePtCalib.cxx:157 AliPerformancePtCalib.cxx:158 AliPerformancePtCalib.cxx:159 AliPerformancePtCalib.cxx:160 AliPerformancePtCalib.cxx:161 AliPerformancePtCalib.cxx:162 AliPerformancePtCalib.cxx:163 AliPerformancePtCalib.cxx:164 AliPerformancePtCalib.cxx:165 AliPerformancePtCalib.cxx:166 AliPerformancePtCalib.cxx:167 AliPerformancePtCalib.cxx:168 AliPerformancePtCalib.cxx:169 AliPerformancePtCalib.cxx:170 AliPerformancePtCalib.cxx:171 AliPerformancePtCalib.cxx:172 AliPerformancePtCalib.cxx:173 AliPerformancePtCalib.cxx:174 AliPerformancePtCalib.cxx:175 AliPerformancePtCalib.cxx:176 AliPerformancePtCalib.cxx:177 AliPerformancePtCalib.cxx:178 AliPerformancePtCalib.cxx:179 AliPerformancePtCalib.cxx:180 AliPerformancePtCalib.cxx:181 AliPerformancePtCalib.cxx:182 AliPerformancePtCalib.cxx:183 AliPerformancePtCalib.cxx:184 AliPerformancePtCalib.cxx:185 AliPerformancePtCalib.cxx:186 AliPerformancePtCalib.cxx:187 AliPerformancePtCalib.cxx:188 AliPerformancePtCalib.cxx:189 AliPerformancePtCalib.cxx:190 AliPerformancePtCalib.cxx:191 AliPerformancePtCalib.cxx:192 AliPerformancePtCalib.cxx:193 AliPerformancePtCalib.cxx:194 AliPerformancePtCalib.cxx:195 AliPerformancePtCalib.cxx:196 AliPerformancePtCalib.cxx:197 AliPerformancePtCalib.cxx:198 AliPerformancePtCalib.cxx:199 AliPerformancePtCalib.cxx:200 AliPerformancePtCalib.cxx:201 AliPerformancePtCalib.cxx:202 AliPerformancePtCalib.cxx:203 AliPerformancePtCalib.cxx:204 AliPerformancePtCalib.cxx:205 AliPerformancePtCalib.cxx:206 AliPerformancePtCalib.cxx:207 AliPerformancePtCalib.cxx:208 AliPerformancePtCalib.cxx:209 AliPerformancePtCalib.cxx:210 AliPerformancePtCalib.cxx:211 AliPerformancePtCalib.cxx:212 AliPerformancePtCalib.cxx:213 AliPerformancePtCalib.cxx:214 AliPerformancePtCalib.cxx:215 AliPerformancePtCalib.cxx:216 AliPerformancePtCalib.cxx:217 AliPerformancePtCalib.cxx:218 AliPerformancePtCalib.cxx:219 AliPerformancePtCalib.cxx:220 AliPerformancePtCalib.cxx:221 AliPerformancePtCalib.cxx:222 AliPerformancePtCalib.cxx:223 AliPerformancePtCalib.cxx:224 AliPerformancePtCalib.cxx:225 AliPerformancePtCalib.cxx:226 AliPerformancePtCalib.cxx:227 AliPerformancePtCalib.cxx:228 AliPerformancePtCalib.cxx:229 AliPerformancePtCalib.cxx:230 AliPerformancePtCalib.cxx:231 AliPerformancePtCalib.cxx:232 AliPerformancePtCalib.cxx:233 AliPerformancePtCalib.cxx:234 AliPerformancePtCalib.cxx:235 AliPerformancePtCalib.cxx:236 AliPerformancePtCalib.cxx:237 AliPerformancePtCalib.cxx:238 AliPerformancePtCalib.cxx:239 AliPerformancePtCalib.cxx:240 AliPerformancePtCalib.cxx:241 AliPerformancePtCalib.cxx:242 AliPerformancePtCalib.cxx:243 AliPerformancePtCalib.cxx:244 AliPerformancePtCalib.cxx:245 AliPerformancePtCalib.cxx:246 AliPerformancePtCalib.cxx:247 AliPerformancePtCalib.cxx:248 AliPerformancePtCalib.cxx:249 AliPerformancePtCalib.cxx:250 AliPerformancePtCalib.cxx:251 AliPerformancePtCalib.cxx:252 AliPerformancePtCalib.cxx:253 AliPerformancePtCalib.cxx:254 AliPerformancePtCalib.cxx:255 AliPerformancePtCalib.cxx:256 AliPerformancePtCalib.cxx:257 AliPerformancePtCalib.cxx:258 AliPerformancePtCalib.cxx:259 AliPerformancePtCalib.cxx:260 AliPerformancePtCalib.cxx:261 AliPerformancePtCalib.cxx:262 AliPerformancePtCalib.cxx:263 AliPerformancePtCalib.cxx:264 AliPerformancePtCalib.cxx:265 AliPerformancePtCalib.cxx:266 AliPerformancePtCalib.cxx:267 AliPerformancePtCalib.cxx:268 AliPerformancePtCalib.cxx:269 AliPerformancePtCalib.cxx:270 AliPerformancePtCalib.cxx:271 AliPerformancePtCalib.cxx:272 AliPerformancePtCalib.cxx:273 AliPerformancePtCalib.cxx:274 AliPerformancePtCalib.cxx:275 AliPerformancePtCalib.cxx:276 AliPerformancePtCalib.cxx:277 AliPerformancePtCalib.cxx:278 AliPerformancePtCalib.cxx:279 AliPerformancePtCalib.cxx:280 AliPerformancePtCalib.cxx:281 AliPerformancePtCalib.cxx:282 AliPerformancePtCalib.cxx:283 AliPerformancePtCalib.cxx:284 AliPerformancePtCalib.cxx:285 AliPerformancePtCalib.cxx:286 AliPerformancePtCalib.cxx:287 AliPerformancePtCalib.cxx:288 AliPerformancePtCalib.cxx:289 AliPerformancePtCalib.cxx:290 AliPerformancePtCalib.cxx:291 AliPerformancePtCalib.cxx:292 AliPerformancePtCalib.cxx:293 AliPerformancePtCalib.cxx:294 AliPerformancePtCalib.cxx:295 AliPerformancePtCalib.cxx:296 AliPerformancePtCalib.cxx:297 AliPerformancePtCalib.cxx:298 AliPerformancePtCalib.cxx:299 AliPerformancePtCalib.cxx:300 AliPerformancePtCalib.cxx:301 AliPerformancePtCalib.cxx:302 AliPerformancePtCalib.cxx:303 AliPerformancePtCalib.cxx:304 AliPerformancePtCalib.cxx:305 AliPerformancePtCalib.cxx:306 AliPerformancePtCalib.cxx:307 AliPerformancePtCalib.cxx:308 AliPerformancePtCalib.cxx:309 AliPerformancePtCalib.cxx:310 AliPerformancePtCalib.cxx:311 AliPerformancePtCalib.cxx:312 AliPerformancePtCalib.cxx:313 AliPerformancePtCalib.cxx:314 AliPerformancePtCalib.cxx:315 AliPerformancePtCalib.cxx:316 AliPerformancePtCalib.cxx:317 AliPerformancePtCalib.cxx:318 AliPerformancePtCalib.cxx:319 AliPerformancePtCalib.cxx:320 AliPerformancePtCalib.cxx:321 AliPerformancePtCalib.cxx:322 AliPerformancePtCalib.cxx:323 AliPerformancePtCalib.cxx:324 AliPerformancePtCalib.cxx:325 AliPerformancePtCalib.cxx:326 AliPerformancePtCalib.cxx:327 AliPerformancePtCalib.cxx:328 AliPerformancePtCalib.cxx:329 AliPerformancePtCalib.cxx:330 AliPerformancePtCalib.cxx:331 AliPerformancePtCalib.cxx:332 AliPerformancePtCalib.cxx:333 AliPerformancePtCalib.cxx:334 AliPerformancePtCalib.cxx:335 AliPerformancePtCalib.cxx:336 AliPerformancePtCalib.cxx:337 AliPerformancePtCalib.cxx:338 AliPerformancePtCalib.cxx:339 AliPerformancePtCalib.cxx:340 AliPerformancePtCalib.cxx:341 AliPerformancePtCalib.cxx:342 AliPerformancePtCalib.cxx:343 AliPerformancePtCalib.cxx:344 AliPerformancePtCalib.cxx:345 AliPerformancePtCalib.cxx:346 AliPerformancePtCalib.cxx:347 AliPerformancePtCalib.cxx:348 AliPerformancePtCalib.cxx:349 AliPerformancePtCalib.cxx:350 AliPerformancePtCalib.cxx:351 AliPerformancePtCalib.cxx:352 AliPerformancePtCalib.cxx:353 AliPerformancePtCalib.cxx:354 AliPerformancePtCalib.cxx:355 AliPerformancePtCalib.cxx:356 AliPerformancePtCalib.cxx:357 AliPerformancePtCalib.cxx:358 AliPerformancePtCalib.cxx:359 AliPerformancePtCalib.cxx:360 AliPerformancePtCalib.cxx:361 AliPerformancePtCalib.cxx:362 AliPerformancePtCalib.cxx:363 AliPerformancePtCalib.cxx:364 AliPerformancePtCalib.cxx:365 AliPerformancePtCalib.cxx:366 AliPerformancePtCalib.cxx:367 AliPerformancePtCalib.cxx:368 AliPerformancePtCalib.cxx:369 AliPerformancePtCalib.cxx:370 AliPerformancePtCalib.cxx:371 AliPerformancePtCalib.cxx:372 AliPerformancePtCalib.cxx:373 AliPerformancePtCalib.cxx:374 AliPerformancePtCalib.cxx:375 AliPerformancePtCalib.cxx:376 AliPerformancePtCalib.cxx:377 AliPerformancePtCalib.cxx:378 AliPerformancePtCalib.cxx:379 AliPerformancePtCalib.cxx:380 AliPerformancePtCalib.cxx:381 AliPerformancePtCalib.cxx:382 AliPerformancePtCalib.cxx:383 AliPerformancePtCalib.cxx:384 AliPerformancePtCalib.cxx:385 AliPerformancePtCalib.cxx:386 AliPerformancePtCalib.cxx:387 AliPerformancePtCalib.cxx:388 AliPerformancePtCalib.cxx:389 AliPerformancePtCalib.cxx:390 AliPerformancePtCalib.cxx:391 AliPerformancePtCalib.cxx:392 AliPerformancePtCalib.cxx:393 AliPerformancePtCalib.cxx:394 AliPerformancePtCalib.cxx:395 AliPerformancePtCalib.cxx:396 AliPerformancePtCalib.cxx:397 AliPerformancePtCalib.cxx:398 AliPerformancePtCalib.cxx:399 AliPerformancePtCalib.cxx:400 AliPerformancePtCalib.cxx:401 AliPerformancePtCalib.cxx:402 AliPerformancePtCalib.cxx:403 AliPerformancePtCalib.cxx:404 AliPerformancePtCalib.cxx:405 AliPerformancePtCalib.cxx:406 AliPerformancePtCalib.cxx:407 AliPerformancePtCalib.cxx:408 AliPerformancePtCalib.cxx:409 AliPerformancePtCalib.cxx:410 AliPerformancePtCalib.cxx:411 AliPerformancePtCalib.cxx:412 AliPerformancePtCalib.cxx:413 AliPerformancePtCalib.cxx:414 AliPerformancePtCalib.cxx:415 AliPerformancePtCalib.cxx:416 AliPerformancePtCalib.cxx:417 AliPerformancePtCalib.cxx:418 AliPerformancePtCalib.cxx:419 AliPerformancePtCalib.cxx:420 AliPerformancePtCalib.cxx:421 AliPerformancePtCalib.cxx:422 AliPerformancePtCalib.cxx:423 AliPerformancePtCalib.cxx:424 AliPerformancePtCalib.cxx:425 AliPerformancePtCalib.cxx:426 AliPerformancePtCalib.cxx:427 AliPerformancePtCalib.cxx:428 AliPerformancePtCalib.cxx:429 AliPerformancePtCalib.cxx:430 AliPerformancePtCalib.cxx:431 AliPerformancePtCalib.cxx:432 AliPerformancePtCalib.cxx:433 AliPerformancePtCalib.cxx:434 AliPerformancePtCalib.cxx:435 AliPerformancePtCalib.cxx:436 AliPerformancePtCalib.cxx:437 AliPerformancePtCalib.cxx:438 AliPerformancePtCalib.cxx:439 AliPerformancePtCalib.cxx:440 AliPerformancePtCalib.cxx:441 AliPerformancePtCalib.cxx:442 AliPerformancePtCalib.cxx:443 AliPerformancePtCalib.cxx:444 AliPerformancePtCalib.cxx:445 AliPerformancePtCalib.cxx:446 AliPerformancePtCalib.cxx:447 AliPerformancePtCalib.cxx:448 AliPerformancePtCalib.cxx:449 AliPerformancePtCalib.cxx:450 AliPerformancePtCalib.cxx:451 AliPerformancePtCalib.cxx:452 AliPerformancePtCalib.cxx:453 AliPerformancePtCalib.cxx:454 AliPerformancePtCalib.cxx:455 AliPerformancePtCalib.cxx:456 AliPerformancePtCalib.cxx:457 AliPerformancePtCalib.cxx:458 AliPerformancePtCalib.cxx:459 AliPerformancePtCalib.cxx:460 AliPerformancePtCalib.cxx:461 AliPerformancePtCalib.cxx:462 AliPerformancePtCalib.cxx:463 AliPerformancePtCalib.cxx:464 AliPerformancePtCalib.cxx:465 AliPerformancePtCalib.cxx:466 AliPerformancePtCalib.cxx:467 AliPerformancePtCalib.cxx:468 AliPerformancePtCalib.cxx:469 AliPerformancePtCalib.cxx:470 AliPerformancePtCalib.cxx:471 AliPerformancePtCalib.cxx:472 AliPerformancePtCalib.cxx:473 AliPerformancePtCalib.cxx:474 AliPerformancePtCalib.cxx:475 AliPerformancePtCalib.cxx:476 AliPerformancePtCalib.cxx:477 AliPerformancePtCalib.cxx:478 AliPerformancePtCalib.cxx:479 AliPerformancePtCalib.cxx:480 AliPerformancePtCalib.cxx:481 AliPerformancePtCalib.cxx:482 AliPerformancePtCalib.cxx:483 AliPerformancePtCalib.cxx:484 AliPerformancePtCalib.cxx:485 AliPerformancePtCalib.cxx:486 AliPerformancePtCalib.cxx:487 AliPerformancePtCalib.cxx:488 AliPerformancePtCalib.cxx:489 AliPerformancePtCalib.cxx:490 AliPerformancePtCalib.cxx:491 AliPerformancePtCalib.cxx:492 AliPerformancePtCalib.cxx:493 AliPerformancePtCalib.cxx:494 AliPerformancePtCalib.cxx:495 AliPerformancePtCalib.cxx:496 AliPerformancePtCalib.cxx:497 AliPerformancePtCalib.cxx:498 AliPerformancePtCalib.cxx:499 AliPerformancePtCalib.cxx:500 AliPerformancePtCalib.cxx:501 AliPerformancePtCalib.cxx:502 AliPerformancePtCalib.cxx:503 AliPerformancePtCalib.cxx:504 AliPerformancePtCalib.cxx:505 AliPerformancePtCalib.cxx:506 AliPerformancePtCalib.cxx:507 AliPerformancePtCalib.cxx:508 AliPerformancePtCalib.cxx:509 AliPerformancePtCalib.cxx:510 AliPerformancePtCalib.cxx:511 AliPerformancePtCalib.cxx:512 AliPerformancePtCalib.cxx:513 AliPerformancePtCalib.cxx:514 AliPerformancePtCalib.cxx:515 AliPerformancePtCalib.cxx:516 AliPerformancePtCalib.cxx:517 AliPerformancePtCalib.cxx:518 AliPerformancePtCalib.cxx:519 AliPerformancePtCalib.cxx:520 AliPerformancePtCalib.cxx:521 AliPerformancePtCalib.cxx:522 AliPerformancePtCalib.cxx:523 AliPerformancePtCalib.cxx:524 AliPerformancePtCalib.cxx:525 AliPerformancePtCalib.cxx:526 AliPerformancePtCalib.cxx:527 AliPerformancePtCalib.cxx:528 AliPerformancePtCalib.cxx:529 AliPerformancePtCalib.cxx:530 AliPerformancePtCalib.cxx:531 AliPerformancePtCalib.cxx:532 AliPerformancePtCalib.cxx:533 AliPerformancePtCalib.cxx:534 AliPerformancePtCalib.cxx:535 AliPerformancePtCalib.cxx:536 AliPerformancePtCalib.cxx:537 AliPerformancePtCalib.cxx:538 AliPerformancePtCalib.cxx:539 AliPerformancePtCalib.cxx:540 AliPerformancePtCalib.cxx:541 AliPerformancePtCalib.cxx:542 AliPerformancePtCalib.cxx:543 AliPerformancePtCalib.cxx:544 AliPerformancePtCalib.cxx:545 AliPerformancePtCalib.cxx:546 AliPerformancePtCalib.cxx:547 AliPerformancePtCalib.cxx:548 AliPerformancePtCalib.cxx:549 AliPerformancePtCalib.cxx:550 AliPerformancePtCalib.cxx:551 AliPerformancePtCalib.cxx:552 AliPerformancePtCalib.cxx:553 AliPerformancePtCalib.cxx:554 AliPerformancePtCalib.cxx:555 AliPerformancePtCalib.cxx:556 AliPerformancePtCalib.cxx:557 AliPerformancePtCalib.cxx:558 AliPerformancePtCalib.cxx:559 AliPerformancePtCalib.cxx:560 AliPerformancePtCalib.cxx:561 AliPerformancePtCalib.cxx:562 AliPerformancePtCalib.cxx:563 AliPerformancePtCalib.cxx:564 AliPerformancePtCalib.cxx:565 AliPerformancePtCalib.cxx:566 AliPerformancePtCalib.cxx:567 AliPerformancePtCalib.cxx:568 AliPerformancePtCalib.cxx:569 AliPerformancePtCalib.cxx:570 AliPerformancePtCalib.cxx:571 AliPerformancePtCalib.cxx:572 AliPerformancePtCalib.cxx:573 AliPerformancePtCalib.cxx:574 AliPerformancePtCalib.cxx:575 AliPerformancePtCalib.cxx:576 AliPerformancePtCalib.cxx:577 AliPerformancePtCalib.cxx:578 AliPerformancePtCalib.cxx:579 AliPerformancePtCalib.cxx:580 AliPerformancePtCalib.cxx:581 AliPerformancePtCalib.cxx:582 AliPerformancePtCalib.cxx:583 AliPerformancePtCalib.cxx:584 AliPerformancePtCalib.cxx:585 AliPerformancePtCalib.cxx:586