#include "AliAnalysisNucleiInfo.h"
#include <TMath.h>
#include "TChain.h"
#include "AliInputEventHandler.h"
#include "AliAODEvent.h"
#include "AliESDEvent.h"
#include "AliVEvent.h"
#include "AliAODTrack.h"
#include "AliAODPid.h"
#include "AliCentrality.h"
#include "TH2F.h"
#include "TH2D.h"
#include "TH1F.h"
#include "TH1I.h"
#include "TF1.h"
#include "TF2.h"
#include "TGraph.h"
#include "TProfile.h"
#include "AliESDtrackCuts.h"
#include "AliAnalysisManager.h"
#include "TFile.h"
ClassImp(AliAnalysisNucleiInfo)
AliAnalysisNucleiInfo::AliAnalysisNucleiInfo():
AliAnalysisTaskSE(),
FilterBit(16),
EtaLimit(),
DCAxyCut(1000.),
DCAzCut(1000.),
NsigmaTpcCut(2.0),
StartTimeTofRes(9999.9),
iBconf(0),
kTOF(0),
fAOD(NULL),
fESD(NULL),
fEvent(NULL),
fPIDResponse(NULL)
{
EtaLimit[0]=-99.0;
EtaLimit[1]=99.0;
fList[0]=new TList();
fList[0]->SetName("results");
fList[1]=new TList();
fList[1]->SetName("results2");
}
AliAnalysisNucleiInfo::AliAnalysisNucleiInfo(const char *name):
AliAnalysisTaskSE(name),
FilterBit(16),
EtaLimit(),
DCAxyCut(1000.),
DCAzCut(1000.),
NsigmaTpcCut(2.0),
StartTimeTofRes(9999.9),
iBconf(0),
kTOF(0),
fAOD(NULL),
fESD(NULL),
fEvent(NULL),
fPIDResponse(NULL)
{
EtaLimit[0]=-99.0;
EtaLimit[1]=99.0;
fList[0]=new TList();
DefineOutput(1, TList::Class());
fList[0]->SetName("results");
fList[1]=new TList();
DefineOutput(2, TList::Class());
fList[1]->SetName("results2");
}
AliAnalysisNucleiInfo::~AliAnalysisNucleiInfo()
{
if(fList[0]) delete fList[0];
if(fList[1]) delete fList[1];
}
void AliAnalysisNucleiInfo::UserCreateOutputObjects()
{
Char_t namePart[nPart][30];
snprintf(namePart[0],30,"e");
snprintf(namePart[1],30,"mu");
snprintf(namePart[2],30,"pi");
snprintf(namePart[3],30,"K");
snprintf(namePart[4],30,"p");
snprintf(namePart[5],30,"d");
snprintf(namePart[6],30,"t");
snprintf(namePart[7],30,"He3");
snprintf(namePart[8],30,"He4");
Char_t name[nSpec][30];
snprintf(name[0],20,"e_plus");
snprintf(name[1],20,"mu_plus");
snprintf(name[2],20,"pi_plus");
snprintf(name[3],20,"K_plus");
snprintf(name[4],20,"p");
snprintf(name[5],20,"d");
snprintf(name[6],20,"t");
snprintf(name[7],20,"He3");
snprintf(name[8],20,"He4");
snprintf(name[9],20,"e_minus");
snprintf(name[10],20,"mu_minus");
snprintf(name[11],20,"pi_minus");
snprintf(name[12],20,"K_minus");
snprintf(name[13],20,"p_bar");
snprintf(name[14],20,"d_bar");
snprintf(name[15],20,"t_bar");
snprintf(name[16],20,"He3_bar");
snprintf(name[17],20,"He4_bar");
Int_t hbins[2];
for(Int_t iB=0;iB<nBconf;iB++) {
htemp[iB] = new TH1F("htemp","htemp (avoid the problem with the empty list...);B field",20,-10,10);
htriggerbits[iB][0] = new TH1I("htriggerbits_0","trigger mask; bits",45,-5,40);
htriggerbits[iB][1] = new TH1I("htriggerbits_1","trigger bits (exclusive); bits",45,-5,40);
hZvertex[iB][0] = new TH1F("hZvertex_Selected","Vertex distribution of selected events;z vertex (cm)",240,-30,30);
hZvertex[iB][1] = new TH1F("hZvertex_Analyzed","Vertex distribution of analyzed events;z vertex (cm)",240,-30,30);
hEta[iB] = new TH1F("hEta_Analyzed","|#eta| distribution after the track cuts;#eta",200,-1.0,1.0);
hPhi[iB] = new TH1F("hPhi_Analyzed","#phi distribution after the track cuts;#phi (rad.)",90,0,6.3);
hNtrackAtTof[iB] = new TH1I("hNtrackAtTof","num. tracks when kTOF is required; Number of tracks",3000,0,3000);
hStartTimeRes[iB] = new TH1F("hStartTimeRes","hStartTimeRes;t_{0} (ps)",500,0,500);
hbins[0]=500; hbins[1]=2000;
fdEdxVSp[iB][0] = new TH2F("fdEdxVSp_pos","dE/dx vs p (positive charge); p_{TPC}/z (GeV/c); dE/dx_{TPC} (a.u.)",hbins[0],0,10,hbins[1],0,1000);
fdEdxVSp[iB][1] = new TH2F("fdEdxVSp_neg","dE/dx vs p (negative charge); p_{TPC}/z (GeV/c); dE/dx_{TPC} (a.u.)",hbins[0],0,10,hbins[1],0,1000);
Char_t name_hDeDxExp[nPart][200];
Char_t title_hDeDxExp[nPart][200];
for(Int_t i=0;i<nPart;i++) {
snprintf(name_hDeDxExp[i],200,"hDeDxExp_%s",namePart[i]);
snprintf(title_hDeDxExp[i],200,"Expected dE/dx of %s in the TPC;p_{TPC}/z (GeV/c);dE/dx_{TPC} (a.u.)",namePart[i]);
hDeDxExp[iB][i] = new TProfile(name_hDeDxExp[i],title_hDeDxExp[i],200,0,10,0,1000,"");
}
Char_t name_fNsigmaTpc[nSpec][200];
Char_t title_fNsigmaTpc[nSpec][200];
hbins[0]=200; hbins[1]=200;
for(Int_t i=0;i<nSpec;i++) {
snprintf(name_fNsigmaTpc[i],200,"NsigmaTpc_%s",name[i]);
snprintf(title_fNsigmaTpc[i],200,"NsigmaTpc_%s;p_{TPC}/z (GeV/c);n_{#sigma_{TPC}}^{%s}",name[i],name[i]);
fNsigmaTpc[iB][i] = new TH2F(name_fNsigmaTpc[i],title_fNsigmaTpc[i],hbins[0],0,10,hbins[1],-10,10);
}
hbins[0]=500; hbins[1]=520;
fBetaTofVSp[iB][0] = new TH2F("fBetaTofVSp_pos","#beta_{TOF} vs p/z (positive charge);p(GeV/c);#beta_{TOF}",hbins[0],0,10,hbins[1],0.4,1.05);
fBetaTofVSp[iB][1] = new TH2F("fBetaTofVSp_neg","#beta_{TOF} vs p/z (negative charge);p(GeV/c);#beta_{TOF}",hbins[0],0,10,hbins[1],0.4,1.05);
Char_t name_hBetaExp[nPart][200];
Char_t title_hBetaExp[nPart][200];
for(Int_t i=0;i<nPart;i++) {
snprintf(name_hBetaExp[i],200,"hBetaTofVsP_Exp_%s",namePart[i]);
snprintf(title_hBetaExp[i],200,"Expected #beta_{TOF} vs p/z of %s;p/z (GeV/c); #beta_{TOF}",namePart[i]);
hBetaExp[iB][i] = new TProfile(name_hBetaExp[i],title_hBetaExp[i],200,0,10,0.4,1.05,"");
}
Char_t name_fNsigmaTof[2][nSpec][200];
Char_t title_fNsigmaTof[2][nSpec][200];
hbins[0]=200; hbins[1]=2000;
for(Int_t i=0;i<nSpec;i++) {
snprintf(name_fNsigmaTof[0][i],200,"NsigmaTof_%s",name[i]);
snprintf(title_fNsigmaTof[0][i],200,"NsigmaTof_%s;p_{T}/z (GeV/c);n_{#sigma_{TOF}}^{%s}",name[i],name[i]);
snprintf(name_fNsigmaTof[1][i],200,"NsigmaTofWtpc_%s",name[i]);
snprintf(title_fNsigmaTof[1][i],200,"NsigmaTofWtpc_%s (with a 2#sigma TPC cut);p_{T}/z (GeV/c);n_{#sigma_{TOF}}^{%s}",name[i],name[i]);
}
for(Int_t it=0;it<2;it++) {
for(Int_t i=0;i<nSpec;i++) {
fNsigmaTof[iB][it][i] = new TH2F(name_fNsigmaTof[it][i],title_fNsigmaTof[it][i],hbins[0],0,10,hbins[1],-100,100);
}
}
Char_t name_fTofMinusExp[2][nSpec][200];
Char_t title_fTofMinusExp[2][nSpec][200];
hbins[0]=200; hbins[1]=2000;
for(Int_t i=0;i<nSpec;i++) {
snprintf(name_fTofMinusExp[0][i],200,"TofMinusExp_%s",name[i]);
snprintf(title_fTofMinusExp[0][i],200,"TofMinusExp_%s;p_{T}/z (GeV/c);tof-t_{exp}^{%s} (ps)",name[i],name[i]);
snprintf(name_fTofMinusExp[1][i],200,"TofMinusExpWtpc_%s",name[i]);
snprintf(title_fTofMinusExp[1][i],200,"TofMinusExpWtpc_%s (with a 2#sigma TPC cut);p_{T}/z (GeV/c);tof-t_{exp}^{%s} (ps)",name[i],name[i]);
}
for(Int_t it=0;it<2;it++) {
for(Int_t i=0;i<nSpec;i++) {
fTofMinusExp[iB][it][i] = new TH2F(name_fTofMinusExp[it][i],title_fTofMinusExp[it][i],hbins[0],0,10,hbins[1],-20000,20000);
}
}
Char_t name_h2DCAap[18][200];
Char_t title_h2DCAap[18][200];
for(Int_t iS=0;iS<nSpec;iS++) {
snprintf(name_h2DCAap[iS],200,"h2DCAap_%s",name[iS]);
snprintf(title_h2DCAap[iS],200,"h2DCA_%s in for p_{T}/z<1.5GeV/c;DCA_{xy} (cm);DCA_{z} (cm)",name[iS]);
if(iS==5 || iS==5+9) h2DCAap[iB][iS] = new TH2F(name_h2DCAap[iS],title_h2DCAap[iS],1750,-3.5,3.5,1750,-3.5,3.5);
else h2DCAap[iB][iS] = new TH2F(name_h2DCAap[iS],title_h2DCAap[iS],1,-3.5,3.5,1,-3.5,3.5);
}
fList[iB]->Add(htemp[iB]);
for(Int_t i=0;i<2;i++) fList[iB]->Add(htriggerbits[iB][i]);
for(Int_t i=0;i<2;i++) fList[iB]->Add(hZvertex[iB][i]);
fList[iB]->Add(hEta[iB]);
fList[iB]->Add(hPhi[iB]);
for(Int_t i=0;i<2;i++) fList[iB]->Add(fdEdxVSp[iB][i]);
for(Int_t i=0;i<nPart;i++) {
fList[iB]->Add(hDeDxExp[iB][i]);
}
for(Int_t i=0;i<nSpec;i++) {
fList[iB]->Add(fNsigmaTpc[iB][i]);
}
for(Int_t i=0;i<2;i++) fList[iB]->Add(fBetaTofVSp[iB][i]);
for(Int_t i=0;i<nPart;i++) {
fList[iB]->Add(hBetaExp[iB][i]);
}
fList[iB]->Add(hNtrackAtTof[iB]);
fList[iB]->Add(hStartTimeRes[iB]);
for(Int_t i=0;i<nSpec;i++) {
fList[iB]->Add(fNsigmaTof[iB][0][i]);
}
for(Int_t i=0;i<nSpec;i++) {
fList[iB]->Add(fNsigmaTof[iB][1][i]);
}
for(Int_t i=0;i<nSpec;i++) {
fList[iB]->Add(fTofMinusExp[iB][0][i]);
}
for(Int_t i=0;i<nSpec;i++) {
fList[iB]->Add(fTofMinusExp[iB][1][i]);
}
for(Int_t iS=0;iS<nSpec;iS++) {
if(iS==5 || iS==5+9) fList[iB]->Add(h2DCAap[iB][iS]);
}
PostData(1, fList[0]);
PostData(2, fList[1]);
}
}
void AliAnalysisNucleiInfo::UserExec(Option_t *)
{
fAOD = dynamic_cast<AliAODEvent*>(InputEvent());
fESD = dynamic_cast<AliESDEvent*>(InputEvent());
if(!fAOD && !fESD){
Printf("%s:%d AODEvent and ESDEvent not found in Input Manager",(char*)__FILE__,__LINE__);
return;
}
if(fESD) fEvent = fESD;
else fEvent = fAOD;
AliAnalysisManager *man=AliAnalysisManager::GetAnalysisManager();
AliInputEventHandler* inputHandler = (AliInputEventHandler*) (man->GetInputEventHandler());
fPIDResponse=inputHandler->GetPIDResponse();
Double_t fBfield=fEvent->GetMagneticField();
if(fBfield<0.0) iBconf=0;
else iBconf=1;
for(Int_t i=0;i<nBconf;i++) htemp[i]->Fill(fBfield);
Double_t zvtx = 9999.9;
const AliVVertex* vtxEVENT = fEvent->GetPrimaryVertex();
if(vtxEVENT->GetNContributors()>0) zvtx = vtxEVENT->GetZ();
hZvertex[iBconf][0]->Fill(zvtx);
if(TMath::Abs(zvtx) < 10.0){
Int_t iTrigger=-2;
if(inputHandler->IsEventSelected() & AliVEvent::kMB) iTrigger = 0;
if(inputHandler->IsEventSelected() & AliVEvent::kCentral) iTrigger = 16;
if(inputHandler->IsEventSelected() & AliVEvent::kSemiCentral) iTrigger = 17;
if(iTriggerSel!=-99) {
if(iTrigger!=iTriggerSel) return;
}
for(Int_t i=0;i<32;i++) {
Int_t bit=(1<<i);
if(inputHandler->IsEventSelected() & bit) htriggerbits[iBconf][0]->Fill(i);
}
if(inputHandler->IsEventSelected() & AliVEvent::kAny) htriggerbits[iBconf][0]->Fill(35);
if(inputHandler->IsEventSelected() & AliVEvent::kAnyINT) htriggerbits[iBconf][0]->Fill(36);
htriggerbits[iBconf][1]->Fill(iTrigger);
hZvertex[iBconf][1]->Fill(zvtx);
Int_t nTracks = fEvent->GetNumberOfTracks();
for(Int_t iT = 0; iT < nTracks; iT++) {
AliVTrack* track = (AliVTrack *) fEvent->GetTrack(iT);
if (!track){
continue;
}
Double_t eta = track->Eta();
Bool_t trkFlag = 0;
trkFlag = ((AliAODTrack *) track)->TestFilterBit(FilterBit);
if ((track->Pt() < 0.2) || (eta<EtaLimit[0]) || (eta>EtaLimit[1]) || !trkFlag)
continue;
Double_t b[2] = {-99., -99.};
Double_t bCov[3] = {-99., -99., -99.};
if (!track->PropagateToDCA(fEvent->GetPrimaryVertex(), fEvent->GetMagneticField(), 100., b, bCov))
continue;
Double_t DCAxy = b[0];
Double_t DCAz = b[1];
Bool_t isDCAxyCut=kFALSE;
if(TMath::Abs(DCAxy)<DCAxyCut) isDCAxyCut=kTRUE;
Bool_t isDCAzCut=kFALSE;
if(TMath::Abs(DCAz)<DCAzCut) isDCAzCut=kTRUE;
if (!isDCAxyCut || !isDCAzCut)
continue;
Double_t phi= track->Phi();
Double_t charge = (Double_t)track->Charge();
Double_t p = track->P();
Double_t pt = track->Pt();
Double_t dedx = track->GetTPCsignal();
Double_t pTPC = track->GetTPCmomentum();
Double_t tof = track->GetTOFsignal()-fPIDResponse->GetTOFResponse().GetStartTime(p);
Double_t beta = 0.0;
kTOF = (track->GetStatus() & AliVTrack::kTOFout) && (track->GetStatus() & AliVTrack::kTIME);
Double_t nsigmaTPC[nPart];
Double_t expdedx[nPart];
Int_t stdFlagPid[9] = {1,2,4,8,16,32,64,128,256};
Int_t FlagPid = 0;
for(Int_t iS=0;iS<9;iS++){
nsigmaTPC[iS] = fPIDResponse->NumberOfSigmasTPC(track,(AliPID::EParticleType) iS);
if(TMath::Abs(nsigmaTPC[iS])<NsigmaTpcCut) {
FlagPid += ((Int_t)TMath::Power(2,iS));
}
}
hEta[iBconf]->Fill(eta);
hPhi[iBconf]->Fill(phi);
for(Int_t iS=0;iS<9;iS++){
expdedx[iS] = fPIDResponse->GetTPCResponse().GetExpectedSignal(track, (AliPID::EParticleType) iS, AliTPCPIDResponse::kdEdxDefault, kTRUE);
hDeDxExp[iBconf][iS]->Fill(pTPC,expdedx[iS]);
nsigmaTPC[iS] = fPIDResponse->NumberOfSigmasTPC(track,(AliPID::EParticleType) iS);
if(charge>0) {
fNsigmaTpc[iBconf][iS]->Fill(pTPC,nsigmaTPC[iS]);
}
else {
fNsigmaTpc[iBconf][iS+nPart]->Fill(pTPC,nsigmaTPC[iS]);
}
}
if(charge>0) fdEdxVSp[iBconf][0]->Fill(pTPC,dedx);
else fdEdxVSp[iBconf][1]->Fill(pTPC,dedx);
for(Int_t iS=0;iS<9;iS++){
if(FlagPid & stdFlagPid[iS]) {
if(pt<1.5) {
if(charge>0) {
h2DCAap[iBconf][iS]->Fill(DCAxy,DCAz);
h2DCAap[iBconf][iS]->Fill(-DCAxy,-DCAz);
}
else {
h2DCAap[iBconf][iS+nPart]->Fill(DCAxy,DCAz);
h2DCAap[iBconf][iS+nPart]->Fill(-DCAxy,-DCAz);
}
}
}
}
Double_t massOverZ[9] = {0.000511,0.105658,0.139570,0.493677,0.938272,1.875612859,2.808921005,1.404195741,1.863689620};
if(kTOF) {
Float_t startTimeRes = -9.9;
startTimeRes = fPIDResponse->GetTOFResponse().GetStartTimeRes(p);
if(startTimeRes>StartTimeTofRes) continue;
hStartTimeRes[iBconf]->Fill(startTimeRes);
hNtrackAtTof[iBconf]->Fill(nTracks);
Double_t exptimes[9];
track->GetIntegratedTimes(exptimes);
for(Int_t iN=5;iN<9;iN++) {
exptimes[iN] = exptimes[4]*exptimes[4]*(massOverZ[iN]*massOverZ[iN]/p/p+1)/(massOverZ[4]*massOverZ[4]/p/p+1);
exptimes[iN] = TMath::Sqrt(exptimes[iN]);
}
beta=exptimes[0];
beta=beta/tof;
Double_t nsigmaTOF[9];
for(Int_t iS=0;iS<9;iS++){
nsigmaTOF[iS] = fPIDResponse->NumberOfSigmasTOF(track,(AliPID::EParticleType) iS);
if(charge>0) {
hBetaExp[iBconf][iS]->Fill(p,exptimes[0]/exptimes[iS]);
fNsigmaTof[iBconf][0][iS]->Fill(pt,nsigmaTOF[iS]);
}
else {
hBetaExp[iBconf][iS+nPart]->Fill(p,exptimes[0]/exptimes[iS]);
fNsigmaTof[iBconf][0][iS+nPart]->Fill(pt,nsigmaTOF[iS]);
}
}
if(charge>0) fBetaTofVSp[iBconf][0]->Fill(p,beta);
else fBetaTofVSp[iBconf][1]->Fill(p,beta);
for(Int_t iS=0;iS<9;iS++){
if(charge>0) {
fTofMinusExp[iBconf][0][iS]->Fill(pt,tof-exptimes[iS]);
if(FlagPid & stdFlagPid[iS]) {
fTofMinusExp[iBconf][1][iS]->Fill(pt,tof-exptimes[iS]);
fNsigmaTof[iBconf][1][iS]->Fill(pt,nsigmaTOF[iS]);
}
}
else {
fTofMinusExp[iBconf][0][iS+nPart]->Fill(pt,tof-exptimes[iS]);
if(FlagPid & stdFlagPid[iS]) {
fTofMinusExp[iBconf][1][iS+nPart]->Fill(pt,tof-exptimes[iS]);
fNsigmaTof[iBconf][1][iS+nPart]->Fill(pt,nsigmaTOF[iS]);
}
}
}
}
}
}
}
void AliAnalysisNucleiInfo::Terminate(Option_t *)
{
Printf("Terminate()");
}
AliAnalysisNucleiInfo.cxx:1 AliAnalysisNucleiInfo.cxx:2 AliAnalysisNucleiInfo.cxx:3 AliAnalysisNucleiInfo.cxx:4 AliAnalysisNucleiInfo.cxx:5 AliAnalysisNucleiInfo.cxx:6 AliAnalysisNucleiInfo.cxx:7 AliAnalysisNucleiInfo.cxx:8 AliAnalysisNucleiInfo.cxx:9 AliAnalysisNucleiInfo.cxx:10 AliAnalysisNucleiInfo.cxx:11 AliAnalysisNucleiInfo.cxx:12 AliAnalysisNucleiInfo.cxx:13 AliAnalysisNucleiInfo.cxx:14 AliAnalysisNucleiInfo.cxx:15 AliAnalysisNucleiInfo.cxx:16 AliAnalysisNucleiInfo.cxx:17 AliAnalysisNucleiInfo.cxx:18 AliAnalysisNucleiInfo.cxx:19 AliAnalysisNucleiInfo.cxx:20 AliAnalysisNucleiInfo.cxx:21 AliAnalysisNucleiInfo.cxx:22 AliAnalysisNucleiInfo.cxx:23 AliAnalysisNucleiInfo.cxx:24 AliAnalysisNucleiInfo.cxx:25 AliAnalysisNucleiInfo.cxx:26 AliAnalysisNucleiInfo.cxx:27 AliAnalysisNucleiInfo.cxx:28 AliAnalysisNucleiInfo.cxx:29 AliAnalysisNucleiInfo.cxx:30 AliAnalysisNucleiInfo.cxx:31 AliAnalysisNucleiInfo.cxx:32 AliAnalysisNucleiInfo.cxx:33 AliAnalysisNucleiInfo.cxx:34 AliAnalysisNucleiInfo.cxx:35 AliAnalysisNucleiInfo.cxx:36 AliAnalysisNucleiInfo.cxx:37 AliAnalysisNucleiInfo.cxx:38 AliAnalysisNucleiInfo.cxx:39 AliAnalysisNucleiInfo.cxx:40 AliAnalysisNucleiInfo.cxx:41 AliAnalysisNucleiInfo.cxx:42 AliAnalysisNucleiInfo.cxx:43 AliAnalysisNucleiInfo.cxx:44 AliAnalysisNucleiInfo.cxx:45 AliAnalysisNucleiInfo.cxx:46 AliAnalysisNucleiInfo.cxx:47 AliAnalysisNucleiInfo.cxx:48 AliAnalysisNucleiInfo.cxx:49 AliAnalysisNucleiInfo.cxx:50 AliAnalysisNucleiInfo.cxx:51 AliAnalysisNucleiInfo.cxx:52 AliAnalysisNucleiInfo.cxx:53 AliAnalysisNucleiInfo.cxx:54 AliAnalysisNucleiInfo.cxx:55 AliAnalysisNucleiInfo.cxx:56 AliAnalysisNucleiInfo.cxx:57 AliAnalysisNucleiInfo.cxx:58 AliAnalysisNucleiInfo.cxx:59 AliAnalysisNucleiInfo.cxx:60 AliAnalysisNucleiInfo.cxx:61 AliAnalysisNucleiInfo.cxx:62 AliAnalysisNucleiInfo.cxx:63 AliAnalysisNucleiInfo.cxx:64 AliAnalysisNucleiInfo.cxx:65 AliAnalysisNucleiInfo.cxx:66 AliAnalysisNucleiInfo.cxx:67 AliAnalysisNucleiInfo.cxx:68 AliAnalysisNucleiInfo.cxx:69 AliAnalysisNucleiInfo.cxx:70 AliAnalysisNucleiInfo.cxx:71 AliAnalysisNucleiInfo.cxx:72 AliAnalysisNucleiInfo.cxx:73 AliAnalysisNucleiInfo.cxx:74 AliAnalysisNucleiInfo.cxx:75 AliAnalysisNucleiInfo.cxx:76 AliAnalysisNucleiInfo.cxx:77 AliAnalysisNucleiInfo.cxx:78 AliAnalysisNucleiInfo.cxx:79 AliAnalysisNucleiInfo.cxx:80 AliAnalysisNucleiInfo.cxx:81 AliAnalysisNucleiInfo.cxx:82 AliAnalysisNucleiInfo.cxx:83 AliAnalysisNucleiInfo.cxx:84 AliAnalysisNucleiInfo.cxx:85 AliAnalysisNucleiInfo.cxx:86 AliAnalysisNucleiInfo.cxx:87 AliAnalysisNucleiInfo.cxx:88 AliAnalysisNucleiInfo.cxx:89 AliAnalysisNucleiInfo.cxx:90 AliAnalysisNucleiInfo.cxx:91 AliAnalysisNucleiInfo.cxx:92 AliAnalysisNucleiInfo.cxx:93 AliAnalysisNucleiInfo.cxx:94 AliAnalysisNucleiInfo.cxx:95 AliAnalysisNucleiInfo.cxx:96 AliAnalysisNucleiInfo.cxx:97 AliAnalysisNucleiInfo.cxx:98 AliAnalysisNucleiInfo.cxx:99 AliAnalysisNucleiInfo.cxx:100 AliAnalysisNucleiInfo.cxx:101 AliAnalysisNucleiInfo.cxx:102 AliAnalysisNucleiInfo.cxx:103 AliAnalysisNucleiInfo.cxx:104 AliAnalysisNucleiInfo.cxx:105 AliAnalysisNucleiInfo.cxx:106 AliAnalysisNucleiInfo.cxx:107 AliAnalysisNucleiInfo.cxx:108 AliAnalysisNucleiInfo.cxx:109 AliAnalysisNucleiInfo.cxx:110 AliAnalysisNucleiInfo.cxx:111 AliAnalysisNucleiInfo.cxx:112 AliAnalysisNucleiInfo.cxx:113 AliAnalysisNucleiInfo.cxx:114 AliAnalysisNucleiInfo.cxx:115 AliAnalysisNucleiInfo.cxx:116 AliAnalysisNucleiInfo.cxx:117 AliAnalysisNucleiInfo.cxx:118 AliAnalysisNucleiInfo.cxx:119 AliAnalysisNucleiInfo.cxx:120 AliAnalysisNucleiInfo.cxx:121 AliAnalysisNucleiInfo.cxx:122 AliAnalysisNucleiInfo.cxx:123 AliAnalysisNucleiInfo.cxx:124 AliAnalysisNucleiInfo.cxx:125 AliAnalysisNucleiInfo.cxx:126 AliAnalysisNucleiInfo.cxx:127 AliAnalysisNucleiInfo.cxx:128 AliAnalysisNucleiInfo.cxx:129 AliAnalysisNucleiInfo.cxx:130 AliAnalysisNucleiInfo.cxx:131 AliAnalysisNucleiInfo.cxx:132 AliAnalysisNucleiInfo.cxx:133 AliAnalysisNucleiInfo.cxx:134 AliAnalysisNucleiInfo.cxx:135 AliAnalysisNucleiInfo.cxx:136 AliAnalysisNucleiInfo.cxx:137 AliAnalysisNucleiInfo.cxx:138 AliAnalysisNucleiInfo.cxx:139 AliAnalysisNucleiInfo.cxx:140 AliAnalysisNucleiInfo.cxx:141 AliAnalysisNucleiInfo.cxx:142 AliAnalysisNucleiInfo.cxx:143 AliAnalysisNucleiInfo.cxx:144 AliAnalysisNucleiInfo.cxx:145 AliAnalysisNucleiInfo.cxx:146 AliAnalysisNucleiInfo.cxx:147 AliAnalysisNucleiInfo.cxx:148 AliAnalysisNucleiInfo.cxx:149 AliAnalysisNucleiInfo.cxx:150 AliAnalysisNucleiInfo.cxx:151 AliAnalysisNucleiInfo.cxx:152 AliAnalysisNucleiInfo.cxx:153 AliAnalysisNucleiInfo.cxx:154 AliAnalysisNucleiInfo.cxx:155 AliAnalysisNucleiInfo.cxx:156 AliAnalysisNucleiInfo.cxx:157 AliAnalysisNucleiInfo.cxx:158 AliAnalysisNucleiInfo.cxx:159 AliAnalysisNucleiInfo.cxx:160 AliAnalysisNucleiInfo.cxx:161 AliAnalysisNucleiInfo.cxx:162 AliAnalysisNucleiInfo.cxx:163 AliAnalysisNucleiInfo.cxx:164 AliAnalysisNucleiInfo.cxx:165 AliAnalysisNucleiInfo.cxx:166 AliAnalysisNucleiInfo.cxx:167 AliAnalysisNucleiInfo.cxx:168 AliAnalysisNucleiInfo.cxx:169 AliAnalysisNucleiInfo.cxx:170 AliAnalysisNucleiInfo.cxx:171 AliAnalysisNucleiInfo.cxx:172 AliAnalysisNucleiInfo.cxx:173 AliAnalysisNucleiInfo.cxx:174 AliAnalysisNucleiInfo.cxx:175 AliAnalysisNucleiInfo.cxx:176 AliAnalysisNucleiInfo.cxx:177 AliAnalysisNucleiInfo.cxx:178 AliAnalysisNucleiInfo.cxx:179 AliAnalysisNucleiInfo.cxx:180 AliAnalysisNucleiInfo.cxx:181 AliAnalysisNucleiInfo.cxx:182 AliAnalysisNucleiInfo.cxx:183 AliAnalysisNucleiInfo.cxx:184 AliAnalysisNucleiInfo.cxx:185 AliAnalysisNucleiInfo.cxx:186 AliAnalysisNucleiInfo.cxx:187 AliAnalysisNucleiInfo.cxx:188 AliAnalysisNucleiInfo.cxx:189 AliAnalysisNucleiInfo.cxx:190 AliAnalysisNucleiInfo.cxx:191 AliAnalysisNucleiInfo.cxx:192 AliAnalysisNucleiInfo.cxx:193 AliAnalysisNucleiInfo.cxx:194 AliAnalysisNucleiInfo.cxx:195 AliAnalysisNucleiInfo.cxx:196 AliAnalysisNucleiInfo.cxx:197 AliAnalysisNucleiInfo.cxx:198 AliAnalysisNucleiInfo.cxx:199 AliAnalysisNucleiInfo.cxx:200 AliAnalysisNucleiInfo.cxx:201 AliAnalysisNucleiInfo.cxx:202 AliAnalysisNucleiInfo.cxx:203 AliAnalysisNucleiInfo.cxx:204 AliAnalysisNucleiInfo.cxx:205 AliAnalysisNucleiInfo.cxx:206 AliAnalysisNucleiInfo.cxx:207 AliAnalysisNucleiInfo.cxx:208 AliAnalysisNucleiInfo.cxx:209 AliAnalysisNucleiInfo.cxx:210 AliAnalysisNucleiInfo.cxx:211 AliAnalysisNucleiInfo.cxx:212 AliAnalysisNucleiInfo.cxx:213 AliAnalysisNucleiInfo.cxx:214 AliAnalysisNucleiInfo.cxx:215 AliAnalysisNucleiInfo.cxx:216 AliAnalysisNucleiInfo.cxx:217 AliAnalysisNucleiInfo.cxx:218 AliAnalysisNucleiInfo.cxx:219 AliAnalysisNucleiInfo.cxx:220 AliAnalysisNucleiInfo.cxx:221 AliAnalysisNucleiInfo.cxx:222 AliAnalysisNucleiInfo.cxx:223 AliAnalysisNucleiInfo.cxx:224 AliAnalysisNucleiInfo.cxx:225 AliAnalysisNucleiInfo.cxx:226 AliAnalysisNucleiInfo.cxx:227 AliAnalysisNucleiInfo.cxx:228 AliAnalysisNucleiInfo.cxx:229 AliAnalysisNucleiInfo.cxx:230 AliAnalysisNucleiInfo.cxx:231 AliAnalysisNucleiInfo.cxx:232 AliAnalysisNucleiInfo.cxx:233 AliAnalysisNucleiInfo.cxx:234 AliAnalysisNucleiInfo.cxx:235 AliAnalysisNucleiInfo.cxx:236 AliAnalysisNucleiInfo.cxx:237 AliAnalysisNucleiInfo.cxx:238 AliAnalysisNucleiInfo.cxx:239 AliAnalysisNucleiInfo.cxx:240 AliAnalysisNucleiInfo.cxx:241 AliAnalysisNucleiInfo.cxx:242 AliAnalysisNucleiInfo.cxx:243 AliAnalysisNucleiInfo.cxx:244 AliAnalysisNucleiInfo.cxx:245 AliAnalysisNucleiInfo.cxx:246 AliAnalysisNucleiInfo.cxx:247 AliAnalysisNucleiInfo.cxx:248 AliAnalysisNucleiInfo.cxx:249 AliAnalysisNucleiInfo.cxx:250 AliAnalysisNucleiInfo.cxx:251 AliAnalysisNucleiInfo.cxx:252 AliAnalysisNucleiInfo.cxx:253 AliAnalysisNucleiInfo.cxx:254 AliAnalysisNucleiInfo.cxx:255 AliAnalysisNucleiInfo.cxx:256 AliAnalysisNucleiInfo.cxx:257 AliAnalysisNucleiInfo.cxx:258 AliAnalysisNucleiInfo.cxx:259 AliAnalysisNucleiInfo.cxx:260 AliAnalysisNucleiInfo.cxx:261 AliAnalysisNucleiInfo.cxx:262 AliAnalysisNucleiInfo.cxx:263 AliAnalysisNucleiInfo.cxx:264 AliAnalysisNucleiInfo.cxx:265 AliAnalysisNucleiInfo.cxx:266 AliAnalysisNucleiInfo.cxx:267 AliAnalysisNucleiInfo.cxx:268 AliAnalysisNucleiInfo.cxx:269 AliAnalysisNucleiInfo.cxx:270 AliAnalysisNucleiInfo.cxx:271 AliAnalysisNucleiInfo.cxx:272 AliAnalysisNucleiInfo.cxx:273 AliAnalysisNucleiInfo.cxx:274 AliAnalysisNucleiInfo.cxx:275 AliAnalysisNucleiInfo.cxx:276 AliAnalysisNucleiInfo.cxx:277 AliAnalysisNucleiInfo.cxx:278 AliAnalysisNucleiInfo.cxx:279 AliAnalysisNucleiInfo.cxx:280 AliAnalysisNucleiInfo.cxx:281 AliAnalysisNucleiInfo.cxx:282 AliAnalysisNucleiInfo.cxx:283 AliAnalysisNucleiInfo.cxx:284 AliAnalysisNucleiInfo.cxx:285 AliAnalysisNucleiInfo.cxx:286 AliAnalysisNucleiInfo.cxx:287 AliAnalysisNucleiInfo.cxx:288 AliAnalysisNucleiInfo.cxx:289 AliAnalysisNucleiInfo.cxx:290 AliAnalysisNucleiInfo.cxx:291 AliAnalysisNucleiInfo.cxx:292 AliAnalysisNucleiInfo.cxx:293 AliAnalysisNucleiInfo.cxx:294 AliAnalysisNucleiInfo.cxx:295 AliAnalysisNucleiInfo.cxx:296 AliAnalysisNucleiInfo.cxx:297 AliAnalysisNucleiInfo.cxx:298 AliAnalysisNucleiInfo.cxx:299 AliAnalysisNucleiInfo.cxx:300 AliAnalysisNucleiInfo.cxx:301 AliAnalysisNucleiInfo.cxx:302 AliAnalysisNucleiInfo.cxx:303 AliAnalysisNucleiInfo.cxx:304 AliAnalysisNucleiInfo.cxx:305 AliAnalysisNucleiInfo.cxx:306 AliAnalysisNucleiInfo.cxx:307 AliAnalysisNucleiInfo.cxx:308 AliAnalysisNucleiInfo.cxx:309 AliAnalysisNucleiInfo.cxx:310 AliAnalysisNucleiInfo.cxx:311 AliAnalysisNucleiInfo.cxx:312 AliAnalysisNucleiInfo.cxx:313 AliAnalysisNucleiInfo.cxx:314 AliAnalysisNucleiInfo.cxx:315 AliAnalysisNucleiInfo.cxx:316 AliAnalysisNucleiInfo.cxx:317 AliAnalysisNucleiInfo.cxx:318 AliAnalysisNucleiInfo.cxx:319 AliAnalysisNucleiInfo.cxx:320 AliAnalysisNucleiInfo.cxx:321 AliAnalysisNucleiInfo.cxx:322 AliAnalysisNucleiInfo.cxx:323 AliAnalysisNucleiInfo.cxx:324 AliAnalysisNucleiInfo.cxx:325 AliAnalysisNucleiInfo.cxx:326 AliAnalysisNucleiInfo.cxx:327 AliAnalysisNucleiInfo.cxx:328 AliAnalysisNucleiInfo.cxx:329 AliAnalysisNucleiInfo.cxx:330 AliAnalysisNucleiInfo.cxx:331 AliAnalysisNucleiInfo.cxx:332 AliAnalysisNucleiInfo.cxx:333 AliAnalysisNucleiInfo.cxx:334 AliAnalysisNucleiInfo.cxx:335 AliAnalysisNucleiInfo.cxx:336 AliAnalysisNucleiInfo.cxx:337 AliAnalysisNucleiInfo.cxx:338 AliAnalysisNucleiInfo.cxx:339 AliAnalysisNucleiInfo.cxx:340 AliAnalysisNucleiInfo.cxx:341 AliAnalysisNucleiInfo.cxx:342 AliAnalysisNucleiInfo.cxx:343 AliAnalysisNucleiInfo.cxx:344 AliAnalysisNucleiInfo.cxx:345 AliAnalysisNucleiInfo.cxx:346 AliAnalysisNucleiInfo.cxx:347 AliAnalysisNucleiInfo.cxx:348 AliAnalysisNucleiInfo.cxx:349 AliAnalysisNucleiInfo.cxx:350 AliAnalysisNucleiInfo.cxx:351 AliAnalysisNucleiInfo.cxx:352 AliAnalysisNucleiInfo.cxx:353 AliAnalysisNucleiInfo.cxx:354 AliAnalysisNucleiInfo.cxx:355 AliAnalysisNucleiInfo.cxx:356 AliAnalysisNucleiInfo.cxx:357 AliAnalysisNucleiInfo.cxx:358 AliAnalysisNucleiInfo.cxx:359 AliAnalysisNucleiInfo.cxx:360 AliAnalysisNucleiInfo.cxx:361 AliAnalysisNucleiInfo.cxx:362 AliAnalysisNucleiInfo.cxx:363 AliAnalysisNucleiInfo.cxx:364 AliAnalysisNucleiInfo.cxx:365 AliAnalysisNucleiInfo.cxx:366 AliAnalysisNucleiInfo.cxx:367 AliAnalysisNucleiInfo.cxx:368 AliAnalysisNucleiInfo.cxx:369 AliAnalysisNucleiInfo.cxx:370 AliAnalysisNucleiInfo.cxx:371 AliAnalysisNucleiInfo.cxx:372 AliAnalysisNucleiInfo.cxx:373 AliAnalysisNucleiInfo.cxx:374 AliAnalysisNucleiInfo.cxx:375 AliAnalysisNucleiInfo.cxx:376 AliAnalysisNucleiInfo.cxx:377 AliAnalysisNucleiInfo.cxx:378 AliAnalysisNucleiInfo.cxx:379 AliAnalysisNucleiInfo.cxx:380 AliAnalysisNucleiInfo.cxx:381 AliAnalysisNucleiInfo.cxx:382 AliAnalysisNucleiInfo.cxx:383 AliAnalysisNucleiInfo.cxx:384 AliAnalysisNucleiInfo.cxx:385 AliAnalysisNucleiInfo.cxx:386 AliAnalysisNucleiInfo.cxx:387 AliAnalysisNucleiInfo.cxx:388 AliAnalysisNucleiInfo.cxx:389 AliAnalysisNucleiInfo.cxx:390 AliAnalysisNucleiInfo.cxx:391 AliAnalysisNucleiInfo.cxx:392 AliAnalysisNucleiInfo.cxx:393 AliAnalysisNucleiInfo.cxx:394 AliAnalysisNucleiInfo.cxx:395 AliAnalysisNucleiInfo.cxx:396 AliAnalysisNucleiInfo.cxx:397 AliAnalysisNucleiInfo.cxx:398 AliAnalysisNucleiInfo.cxx:399 AliAnalysisNucleiInfo.cxx:400 AliAnalysisNucleiInfo.cxx:401 AliAnalysisNucleiInfo.cxx:402 AliAnalysisNucleiInfo.cxx:403 AliAnalysisNucleiInfo.cxx:404 AliAnalysisNucleiInfo.cxx:405 AliAnalysisNucleiInfo.cxx:406 AliAnalysisNucleiInfo.cxx:407 AliAnalysisNucleiInfo.cxx:408 AliAnalysisNucleiInfo.cxx:409 AliAnalysisNucleiInfo.cxx:410 AliAnalysisNucleiInfo.cxx:411 AliAnalysisNucleiInfo.cxx:412 AliAnalysisNucleiInfo.cxx:413 AliAnalysisNucleiInfo.cxx:414 AliAnalysisNucleiInfo.cxx:415 AliAnalysisNucleiInfo.cxx:416 AliAnalysisNucleiInfo.cxx:417 AliAnalysisNucleiInfo.cxx:418 AliAnalysisNucleiInfo.cxx:419 AliAnalysisNucleiInfo.cxx:420 AliAnalysisNucleiInfo.cxx:421 AliAnalysisNucleiInfo.cxx:422 AliAnalysisNucleiInfo.cxx:423 AliAnalysisNucleiInfo.cxx:424 AliAnalysisNucleiInfo.cxx:425 AliAnalysisNucleiInfo.cxx:426 AliAnalysisNucleiInfo.cxx:427 AliAnalysisNucleiInfo.cxx:428 AliAnalysisNucleiInfo.cxx:429 AliAnalysisNucleiInfo.cxx:430 AliAnalysisNucleiInfo.cxx:431 AliAnalysisNucleiInfo.cxx:432 AliAnalysisNucleiInfo.cxx:433 AliAnalysisNucleiInfo.cxx:434 AliAnalysisNucleiInfo.cxx:435 AliAnalysisNucleiInfo.cxx:436 AliAnalysisNucleiInfo.cxx:437 AliAnalysisNucleiInfo.cxx:438 AliAnalysisNucleiInfo.cxx:439 AliAnalysisNucleiInfo.cxx:440 AliAnalysisNucleiInfo.cxx:441 AliAnalysisNucleiInfo.cxx:442 AliAnalysisNucleiInfo.cxx:443 AliAnalysisNucleiInfo.cxx:444 AliAnalysisNucleiInfo.cxx:445 AliAnalysisNucleiInfo.cxx:446 AliAnalysisNucleiInfo.cxx:447 AliAnalysisNucleiInfo.cxx:448 AliAnalysisNucleiInfo.cxx:449 AliAnalysisNucleiInfo.cxx:450 AliAnalysisNucleiInfo.cxx:451 AliAnalysisNucleiInfo.cxx:452 AliAnalysisNucleiInfo.cxx:453 AliAnalysisNucleiInfo.cxx:454 AliAnalysisNucleiInfo.cxx:455 AliAnalysisNucleiInfo.cxx:456 AliAnalysisNucleiInfo.cxx:457 AliAnalysisNucleiInfo.cxx:458 AliAnalysisNucleiInfo.cxx:459 AliAnalysisNucleiInfo.cxx:460 AliAnalysisNucleiInfo.cxx:461 AliAnalysisNucleiInfo.cxx:462 AliAnalysisNucleiInfo.cxx:463 AliAnalysisNucleiInfo.cxx:464 AliAnalysisNucleiInfo.cxx:465 AliAnalysisNucleiInfo.cxx:466 AliAnalysisNucleiInfo.cxx:467 AliAnalysisNucleiInfo.cxx:468 AliAnalysisNucleiInfo.cxx:469 AliAnalysisNucleiInfo.cxx:470 AliAnalysisNucleiInfo.cxx:471 AliAnalysisNucleiInfo.cxx:472 AliAnalysisNucleiInfo.cxx:473 AliAnalysisNucleiInfo.cxx:474 AliAnalysisNucleiInfo.cxx:475 AliAnalysisNucleiInfo.cxx:476 AliAnalysisNucleiInfo.cxx:477 AliAnalysisNucleiInfo.cxx:478 AliAnalysisNucleiInfo.cxx:479 AliAnalysisNucleiInfo.cxx:480 AliAnalysisNucleiInfo.cxx:481 AliAnalysisNucleiInfo.cxx:482 AliAnalysisNucleiInfo.cxx:483 AliAnalysisNucleiInfo.cxx:484 AliAnalysisNucleiInfo.cxx:485 AliAnalysisNucleiInfo.cxx:486 AliAnalysisNucleiInfo.cxx:487 AliAnalysisNucleiInfo.cxx:488 AliAnalysisNucleiInfo.cxx:489 AliAnalysisNucleiInfo.cxx:490 AliAnalysisNucleiInfo.cxx:491 AliAnalysisNucleiInfo.cxx:492 AliAnalysisNucleiInfo.cxx:493 AliAnalysisNucleiInfo.cxx:494 AliAnalysisNucleiInfo.cxx:495 AliAnalysisNucleiInfo.cxx:496 AliAnalysisNucleiInfo.cxx:497 AliAnalysisNucleiInfo.cxx:498 AliAnalysisNucleiInfo.cxx:499 AliAnalysisNucleiInfo.cxx:500 AliAnalysisNucleiInfo.cxx:501