if(fGenTrackNDEventMatrix) delete fGenTrackNDEventMatrix; fGenTrackNDEventMatrix=0;\r
if(fGenTrackNSDEventMatrix) delete fGenTrackNSDEventMatrix; fGenTrackNSDEventMatrix=0;\r
\r
- if(fTriggerEventMatrix) delete fTriggerEventMatrix; fTriggerEventMatrix=0;\r
+ if(fTriggerTrackEventMatrix) delete fTriggerTrackEventMatrix; fTriggerTrackEventMatrix=0;\r
if(fTriggerTrackSDEventMatrix) delete fTriggerTrackSDEventMatrix; fTriggerTrackSDEventMatrix=0;\r
if(fTriggerTrackDDEventMatrix) delete fTriggerTrackDDEventMatrix; fTriggerTrackDDEventMatrix=0;\r
if(fTriggerTrackNDEventMatrix) delete fTriggerTrackNDEventMatrix; fTriggerTrackNDEventMatrix=0;\r
//\r
trigSel = GetPhysicsTriggerSelection();\r
if(!trigSel) {\r
- printf("cannot get trigSel \n");\r
+ AliDebug(AliLog::kError, "cannot get trigSel");\r
return;\r
}\r
-\r
- //\r
+ \r
if(IsUseMCInfo()) \r
{ \r
trigSel->SetAnalyzeMC();\r
\r
trigAna = trigSel->GetTriggerAnalysis();\r
if(!trigAna) \r
- return;\r
+ return;\r
\r
//trigAna->SetV0HwPars(0, 0, 125);\r
//trigAna->SetV0AdcThr(0);\r
if( GetAnalysisMode() == AlidNdPtHelper::kTPCITS || \r
GetAnalysisMode() == AlidNdPtHelper::kTPCTrackSPDvtx || \r
GetAnalysisMode() == AlidNdPtHelper::kTPCTrackSPDvtxUpdate || \r
- GetAnalysisMode() == AlidNdPtHelper::kTPCITSHybridTrackSPDvtx || \r
- GetAnalysisMode() == AlidNdPtHelper::kTPCITSHybridTrackSPDvtxDCArPt ||\r
- GetAnalysisMode() == AlidNdPtHelper::kITSStandAloneTrackSPDvtx || \r
- GetAnalysisMode() == AlidNdPtHelper::kITSStandAloneTPCTrackSPDvtx\r
- ) \r
+ GetAnalysisMode() == AlidNdPtHelper::kTPCITSHybridTrackSPDvtx || \r
+ GetAnalysisMode() == AlidNdPtHelper::kTPCITSHybridTrackSPDvtxDCArPt ) \r
{\r
- trigSel->SetBin0CallbackViaPointer(&IsBinZeroTrackSPDvtx);\r
+ trigSel->SetBin0CallbackViaPointer(&AlidNdPtAnalysis::IsBinZeroTrackSPDvtx);\r
} else {\r
- trigSel->SetBin0CallbackViaPointer(&IsBinZeroSPDvtx);\r
+ trigSel->SetBin0CallbackViaPointer(&AlidNdPtAnalysis::IsBinZeroSPDvtx);\r
}\r
\r
if(GetParticleMode() == AlidNdPtHelper::kVZEROCase1)\r
}\r
}\r
\r
+\r
+\r
+\r
+\r
// use MC information\r
AliHeader* header = 0;\r
AliGenEventHeader* genHeader = 0;\r
hs = AlidNdPtHelper::GenerateCorrMatrix(fGenEventMatrix,fTriggerEventMatrix,"zv_mult_trig_MBtoInel_corr_matrix");\r
aFolderObj->Add(hs);\r
\r
- h = AlidNdPtHelper::GenerateCorrMatrix(fGenEventMatrix->Projection(0),fTriggerEventMatrix->Projection(0),"zv_trig_MBtoInel_corr_matrix");\r
- aFolderObj->Add(h);\r
-\r
h2D = AlidNdPtHelper::GenerateCorrMatrix(fGenEventMatrix->Projection(0,1),fTriggerEventMatrix->Projection(0,1),"zv_mult_trig_MBtoInel_corr_matrix_2D");\r
aFolderObj->Add(h2D);\r
\r
+ h = AlidNdPtHelper::GenerateCorrMatrix(fGenEventMatrix->Projection(0),fTriggerEventMatrix->Projection(0),"zv_trig_MBtoInel_corr_matrix");\r
+ aFolderObj->Add(h);\r
\r
h = AlidNdPtHelper::GenerateCorrMatrix(fGenEventMatrix->Projection(1),fTriggerEventMatrix->Projection(1),"mult_trig_MBtoInel_corr_matrix");\r
aFolderObj->Add(h);\r
//
const Int_t multNbins = 47;
-// const Int_t ptNbinsTrackEventCorr = 38;
+ const Int_t ptNbinsTrackEventCorr = 37;
const Int_t ptNbins = 68;
const Int_t etaNbins = 30;
const Int_t zvNbins = 12;
200.5, 300.5, 400.5, 500.5, 600.5, 700.5, 800.5, 900.5, 1000.5, 2000.5,
3000.5, 4000.5, 5000.5, 6000.5, 7000.5, 8000.5, 9000.5, 10000.5 }; // forPbPb
-// Double_t binsPtTrackEventCorr[ptNbinsTrackEventCorr+1] = {0.,0.05,0.1,0.15,0.2,0.25,0.3,0.35,0.4,0.45,0.5,0.55,0.6,0.65,0.7,0.75,0.8,0.85,0.9,0.95,1.0,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8,1.9,2.0,2.2,2.4,2.6,3.0,4.0,6.0,10.0,16.0};
+ Double_t binsPtTrackEventCorr[ptNbinsTrackEventCorr+1] = {0.,0.05,0.1,0.15,0.2,0.25,0.3,0.35,0.4,0.45,0.5,0.55,0.6,0.65,0.7,0.75,0.8,0.85,0.9,0.95,1.0,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8,1.9,2.0,2.2,2.4,2.6,3.0,4.0,20.0,50.0};
Double_t binsPt[ptNbins+1] = {
0.0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45,
Double_t binsZv[zvNbins+1] = {-30.,-25.,-20.,-15.,-10.,-5.,0.,5.,10.,15.,20.,25.,30.};
- Int_t binsTrackEventCorrMatrix[3]={zvNbins,ptNbins,etaNbins};
+ Int_t binsTrackEventCorrMatrix[3]={zvNbins,ptNbinsTrackEventCorr,etaNbins};
+ Int_t binsTrackEvent[3]={zvNbins,ptNbins,etaNbins};
Int_t binsTrackPtCorrelationMatrix[3]={ptNbins,ptNbins,etaNbins};
//
fGenTrackEventMatrix = new THnSparseF("fGenTrackEventMatrix","mcZv:mcPt:mcEta",3,binsTrackEventCorrMatrix);
fGenTrackEventMatrix->SetBinEdges(0,binsZv);
- fGenTrackEventMatrix->SetBinEdges(1,binsPt);
+ fGenTrackEventMatrix->SetBinEdges(1,binsPtTrackEventCorr);
fGenTrackEventMatrix->SetBinEdges(2,binsEta);
fGenTrackEventMatrix->GetAxis(0)->SetTitle("mcZv (cm)");
fGenTrackEventMatrix->GetAxis(1)->SetTitle("mcPt (GeV/c)");
//
fTriggerTrackEventMatrix = new THnSparseF("fTriggerTrackEventMatrix","mcZv:mcPt:mcEta",3,binsTrackEventCorrMatrix);
fTriggerTrackEventMatrix->SetBinEdges(0,binsZv);
- fTriggerTrackEventMatrix->SetBinEdges(1,binsPt);
+ fTriggerTrackEventMatrix->SetBinEdges(1,binsPtTrackEventCorr);
fTriggerTrackEventMatrix->SetBinEdges(2,binsEta);
fTriggerTrackEventMatrix->GetAxis(0)->SetTitle("mcZv (cm)");
fTriggerTrackEventMatrix->GetAxis(1)->SetTitle("mcPt (GeV/c)");
//
fRecTrackEventMatrix = new THnSparseF("fRecTrackEventMatrix","mcZv:mcPt:mcEta",3,binsTrackEventCorrMatrix);
fRecTrackEventMatrix->SetBinEdges(0,binsZv);
- fRecTrackEventMatrix->SetBinEdges(1,binsPt);
+ fRecTrackEventMatrix->SetBinEdges(1,binsPtTrackEventCorr);
fRecTrackEventMatrix->SetBinEdges(2,binsEta);
fRecTrackEventMatrix->GetAxis(0)->SetTitle("mcZv (cm)");
fRecTrackEventMatrix->GetAxis(1)->SetTitle("mcPt (GeV/c)");
//
fGenTrackMatrix = new THnSparseF("fGenTrackMatrix","mcZv:mcPt:mcEta",3,binsTrackEventCorrMatrix);
fGenTrackMatrix->SetBinEdges(0,binsZv);
- fGenTrackMatrix->SetBinEdges(1,binsPt);
+ fGenTrackMatrix->SetBinEdges(1,binsPtTrackEventCorr);
fGenTrackMatrix->SetBinEdges(2,binsEta);
fGenTrackMatrix->GetAxis(0)->SetTitle("mcZv (cm)");
fGenTrackMatrix->GetAxis(1)->SetTitle("mcPt (GeV/c)");
fGenPrimTrackMatrix = new THnSparseF("fGenPrimTrackMatrix","mcZv:mcPt:mcEta",3,binsTrackEventCorrMatrix);
fGenPrimTrackMatrix->SetBinEdges(0,binsZv);
- fGenPrimTrackMatrix->SetBinEdges(1,binsPt);
+ fGenPrimTrackMatrix->SetBinEdges(1,binsPtTrackEventCorr);
fGenPrimTrackMatrix->SetBinEdges(2,binsEta);
fGenPrimTrackMatrix->GetAxis(0)->SetTitle("mcZv (cm)");
fGenPrimTrackMatrix->GetAxis(1)->SetTitle("mcPt (GeV/c)");
fRecPrimTrackMatrix = new THnSparseF("fRecPrimTrackMatrix","mcZv:mcPt:mcEta",3,binsTrackEventCorrMatrix);
fRecPrimTrackMatrix->SetBinEdges(0,binsZv);
- fRecPrimTrackMatrix->SetBinEdges(1,binsPt);
+ fRecPrimTrackMatrix->SetBinEdges(1,binsPtTrackEventCorr);
fRecPrimTrackMatrix->SetBinEdges(2,binsEta);
fRecPrimTrackMatrix->GetAxis(0)->SetTitle("mcZv (cm)");
fRecPrimTrackMatrix->GetAxis(1)->SetTitle("mcPt (GeV/c)");
//
fRecTrackMatrix = new THnSparseF("fRecTrackMatrix","mcZv:mcPt:mcEta",3,binsTrackEventCorrMatrix);
fRecTrackMatrix->SetBinEdges(0,binsZv);
- fRecTrackMatrix->SetBinEdges(1,binsPt);
+ fRecTrackMatrix->SetBinEdges(1,binsPtTrackEventCorr);
fRecTrackMatrix->SetBinEdges(2,binsEta);
fRecTrackMatrix->GetAxis(0)->SetTitle("mcZv (cm)");
fRecTrackMatrix->GetAxis(1)->SetTitle("mcPt (GeV/c)");
fRecSecTrackMatrix = new THnSparseF("fRecSecTrackMatrix","mcZv:mcPt:mcEta",3,binsTrackEventCorrMatrix);
fRecSecTrackMatrix->SetBinEdges(0,binsZv);
- fRecSecTrackMatrix->SetBinEdges(1,binsPt);
+ fRecSecTrackMatrix->SetBinEdges(1,binsPtTrackEventCorr);
fRecSecTrackMatrix->SetBinEdges(2,binsEta);
fRecSecTrackMatrix->GetAxis(0)->SetTitle("mcZv (cm)");
fRecSecTrackMatrix->GetAxis(1)->SetTitle("Pt (GeV/c)");
//
fRecMultTrackMatrix = new THnSparseF("fRecMultTrackMatrix","mcZv:mcPt:mcEta",3,binsTrackEventCorrMatrix);
fRecMultTrackMatrix->SetBinEdges(0,binsZv);
- fRecMultTrackMatrix->SetBinEdges(1,binsPt);
+ fRecMultTrackMatrix->SetBinEdges(1,binsPtTrackEventCorr);
fRecMultTrackMatrix->SetBinEdges(2,binsEta);
fRecMultTrackMatrix->GetAxis(0)->SetTitle("mcZv (cm)");
fRecMultTrackMatrix->GetAxis(1)->SetTitle("mcPt (GeV/c)");
sprintf(name,"fRecTrackHist2_%d",i);
sprintf(title,"Zv:Pt:Eta");
- fRecTrackHist2[i] = new THnSparseF(name,title,3,binsTrackEventCorrMatrix);
+ fRecTrackHist2[i] = new THnSparseF(name,title,3,binsTrackEvent);
fRecTrackHist2[i]->SetBinEdges(0,binsZv);
fRecTrackHist2[i]->SetBinEdges(1,binsPt);
fRecTrackHist2[i]->SetBinEdges(2,binsEta);
#include "AliTracker.h"\r
#include "AliGeomManager.h"\r
\r
+#include "AliESDCentrality.h"\r
#include "AliESDVZERO.h"\r
#include "AliMultiplicity.h"\r
\r
// Get Centrality bin\r
\r
Int_t centrality = -1;\r
+ Float_t centralityF = -1;\r
\r
if (fUseCentrality == 0)\r
return centrality;\r
\r
- AliESDVZERO* esdV0 = fESD->GetVZEROData();\r
- Float_t multV0 = esdV0->GetMTotV0A() + esdV0->GetMTotV0C();\r
+ AliESDCentrality *esdCentrality = fESD->GetCentrality();\r
+ \r
+ // New : 2010-11-18 JMT \r
+ if ( fUseCentrality == 1 )\r
+ centralityF = esdCentrality->GetCentralityPercentile("V0M");\r
+ else if ( fUseCentrality == 2 )\r
+ centralityF = esdCentrality->GetCentralityPercentile("CL1");\r
\r
- Float_t nClusters[6];\r
-\r
- const AliMultiplicity *mult = fESD->GetMultiplicity();\r
- for(Int_t ilay = 0; ilay < 6; ilay++){\r
- nClusters[ilay] = mult->GetNumberOfITSClusters(ilay);\r
- }\r
- \r
- if ( fUseCentrality == 1 ) {\r
- // -- centrality cuts V0\r
-#if 0 \r
- // 2010-11-10 - now old cuts\r
- if ( multV0 >= 0. && multV0 <= 106.75 ) centrality = 90;\r
- else if ( multV0 > 106.75 && multV0 <= 277.55 ) centrality = 80;\r
- else if ( multV0 > 277.55 && multV0 <= 661.85 ) centrality = 70;\r
- else if ( multV0 > 661.85 && multV0 <= 1345.05 ) centrality = 60;\r
- else if ( multV0 > 1345.05 && multV0 <= 2412.55 ) centrality = 50;\r
- else if ( multV0 > 2412.55 && multV0 <= 3907.05 ) centrality = 40;\r
- else if ( multV0 > 3907.05 && multV0 <= 6042.05 ) centrality = 30;\r
- else if ( multV0 > 6042.05 && multV0 <= 8902.95 ) centrality = 20;\r
- else if ( multV0 > 8902.95 && multV0 <= 12788.6 ) centrality = 10;\r
- else if ( multV0 > 12788.6 && multV0 <= 15222.5 ) centrality = 5;\r
- else if ( multV0 > 15222.5 && multV0 <= 19449.8 ) centrality = 0;\r
-#else\r
- // 2010-11-14\r
- if ( multV0 >= 0. && multV0 <= 124.5 ) centrality = 90;\r
- else if ( multV0 > 124.5 && multV0 <= 274.5 ) centrality = 80;\r
- else if ( multV0 > 274.5 && multV0 <= 574.5 ) centrality = 70;\r
- else if ( multV0 > 574.5 && multV0 <= 1224.5 ) centrality = 60;\r
- else if ( multV0 > 1224.5 && multV0 <= 2174.5 ) centrality = 50;\r
- else if ( multV0 > 2174.5 && multV0 <= 3624.5 ) centrality = 40;\r
- else if ( multV0 > 3624.5 && multV0 <= 5574.5 ) centrality = 30;\r
- else if ( multV0 > 5574.5 && multV0 <= 8274.5 ) centrality = 20;\r
- else if ( multV0 > 8274.5 && multV0 <= 12024.5 ) centrality = 10;\r
- else if ( multV0 > 12024.5 && multV0 <= 14674.5 ) centrality = 5;\r
- else if ( multV0 > 14674.5 && multV0 <= 19449.5 ) centrality = 0;\r
-#endif\r
- }\r
- else if ( fUseCentrality == 2 ) {\r
-#if 0 \r
- // 2010-11-10 - now old cuts\r
- if ( nClusters[1] >= 0. && nClusters[1] <= 7.18 ) centrality = 100;\r
- else if ( nClusters[1] > 7.18 && nClusters[1] <= 35.9 ) centrality = 90;\r
- else if ( nClusters[1] > 35.9 && nClusters[1] <= 93.34 ) centrality = 80;\r
- else if ( nClusters[1] > 93.34 && nClusters[1] <= 222.58 ) centrality = 70;\r
- else if ( nClusters[1] > 222.58 && nClusters[1] <= 437.98 ) centrality = 60;\r
- else if ( nClusters[1] > 437.98 && nClusters[1] <= 768.26 ) centrality = 50;\r
- else if ( nClusters[1] > 768.26 && nClusters[1] <= 1242.14 ) centrality = 40;\r
- else if ( nClusters[1] > 1242.14 && nClusters[1] <= 1888.34 ) centrality = 30;\r
- else if ( nClusters[1] > 1888.34 && nClusters[1] <= 2735.58 ) centrality = 20;\r
- else if ( nClusters[1] > 2735.58 && nClusters[1] <= 3884.38 ) centrality = 10;\r
- else if ( nClusters[1] > 3884.38 && nClusters[1] <= 4573.66 ) centrality = 5;\r
- else if ( nClusters[1] > 4573.66 && nClusters[1] <= 6540.98 ) centrality = 0;\r
-#else\r
- // 2010-11-14\r
- if ( nClusters[1] > 0. && nClusters[1] <= 29.5 ) centrality = 90;\r
- else if ( nClusters[1] > 29.5 && nClusters[1] <= 69.5 ) centrality = 80;\r
- else if ( nClusters[1] > 69.5 && nClusters[1] <= 149.5 ) centrality = 70;\r
- else if ( nClusters[1] > 149.5 && nClusters[1] <= 309.5 ) centrality = 60;\r
- else if ( nClusters[1] > 309.5 && nClusters[1] <= 589.5 ) centrality = 50;\r
- else if ( nClusters[1] > 589.5 && nClusters[1] <= 989.5 ) centrality = 40;\r
- else if ( nClusters[1] > 989.5 && nClusters[1] <= 1569.5 ) centrality = 30;\r
- else if ( nClusters[1] > 1569.5 && nClusters[1] <= 2369.5 ) centrality = 20;\r
- else if ( nClusters[1] > 2369.5 && nClusters[1] <= 3509.5 ) centrality = 10;\r
- else if ( nClusters[1] > 3509.5 && nClusters[1] <= 4349.5 ) centrality = 5;\r
- else if ( nClusters[1] > 4349.5 && nClusters[1] <= 6540.5 ) centrality = 0;\r
-#endif\r
- }\r
+ if (centralityF == 0.)\r
+ centralityF = 100.;\r
+\r
+ if ( centralityF >= 0. && centralityF < 5.) centrality = 0;\r
+ else if ( centralityF >= 5. && centralityF < 10.) centrality = 5;\r
+ else if ( centralityF >= 10. && centralityF < 20.) centrality = 10;\r
+ else if ( centralityF >= 20. && centralityF < 30.) centrality = 20;\r
+ else if ( centralityF >= 30. && centralityF < 40.) centrality = 30;\r
+ else if ( centralityF >= 40. && centralityF < 50.) centrality = 40;\r
+ else if ( centralityF >= 50. && centralityF < 60.) centrality = 50;\r
+ else if ( centralityF >= 60. && centralityF < 70.) centrality = 60;\r
+ else if ( centralityF >= 70. && centralityF < 80.) centrality = 70;\r
+ else if ( centralityF >= 80. && centralityF < 90.) centrality = 80;\r
+ else if ( centralityF >= 90. && centralityF <=100.) centrality = 90;\r
\r
return centrality;\r
}\r