]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
-- changes for mean pT vs multiplicity studies (M. Knichel)
authorjotwinow <jotwinow@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 14 Apr 2011 13:52:40 +0000 (13:52 +0000)
committerjotwinow <jotwinow@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 14 Apr 2011 13:52:40 +0000 (13:52 +0000)
M    dNdPt/AlidNdPtAnalysis.h
M    dNdPt/AlidNdPtAnalysis.cxx

PWG0/dNdPt/AlidNdPtAnalysis.cxx
PWG0/dNdPt/AlidNdPtAnalysis.h

index c9536c6bab1232f63f3eca14144187aeaa73d285..169244fea5fc13445588796dec81597deb5d76d6 100644 (file)
@@ -423,27 +423,29 @@ void AlidNdPtAnalysis::Init(){
   fRecEventHist->Sumw2();\r
 \r
   //\r
-  Int_t binsTrackHist[3]={100,ptNbins,etaNbins};\r
-  Double_t minTrackHist[3]={-25.,0.,-1.5}; \r
-  Double_t maxTrackHist[3]={25.,50.,1.5}; \r
+  Int_t binsTrackHist[4]={100,ptNbins,etaNbins,150};\r
+  Double_t minTrackHist[4]={-25.,0.,-1.5,-0.5}; \r
+  Double_t maxTrackHist[4]={25.,50.,1.5,149.5}; \r
 \r
-  fRecTrackHist = new THnSparseF("fRecTrackHist","Zv:pT:eta",3,binsTrackHist,minTrackHist,maxTrackHist);\r
+  fRecTrackHist = new THnSparseF("fRecTrackHist","Zv:pT:eta:multRec",4,binsTrackHist,minTrackHist,maxTrackHist);\r
   fRecTrackHist->SetBinEdges(1,binsPt);\r
   fRecTrackHist->SetBinEdges(2,binsEta);\r
   fRecTrackHist->GetAxis(0)->SetTitle("Zv (cm)");\r
   fRecTrackHist->GetAxis(1)->SetTitle("p_{T} (GeV/c)");\r
   fRecTrackHist->GetAxis(2)->SetTitle("#eta");\r
+  fRecTrackHist->GetAxis(3)->SetTitle("multiplicity MB");\r
   fRecTrackHist->Sumw2();\r
 \r
   //\r
   // rec. vs MC correlation matrices\r
   //\r
-  Int_t binsMultTrueEventMatrix[2]={150,150};\r
-  Double_t minMultTrueEventMatrix[2]={-0.5,-0.5}; \r
-  Double_t maxMultTrueEventMatrix[2]={149.5,149.5}; \r
-  fEventMultCorrelationMatrix = new THnSparseF("fEventMultCorrelationMatrix","mult:true_mult",2,binsMultTrueEventMatrix,minMultTrueEventMatrix,maxMultTrueEventMatrix);\r
+  Int_t binsMultTrueEventMatrix[3]={150,150,150};\r
+  Double_t minMultTrueEventMatrix[3]={-0.5,-0.5,-0.5}; \r
+  Double_t maxMultTrueEventMatrix[3]={149.5,149.5,149.5}; \r
+  fEventMultCorrelationMatrix = new THnSparseF("fEventMultCorrelationMatrix","mult:true_mult:multMB",3,binsMultTrueEventMatrix,minMultTrueEventMatrix,maxMultTrueEventMatrix);\r
   fEventMultCorrelationMatrix->GetAxis(0)->SetTitle("track multiplicity");\r
   fEventMultCorrelationMatrix->GetAxis(1)->SetTitle("true multiplicity");\r
+  fEventMultCorrelationMatrix->GetAxis(2)->SetTitle("MB multiplicity");\r
   fEventMultCorrelationMatrix->Sumw2();\r
   \r
   Int_t binsTrackPtCorrelationMatrix[3]={ptNbins,ptNbins,etaNbins};\r
@@ -1327,6 +1329,32 @@ void AlidNdPtAnalysis::Process(AliESDEvent *const esdEvent, AliMCEvent *const mc
 \r
     Int_t entries = allChargedTracks->GetEntries();\r
     //printf("entries %d \n",entries);\r
+    \r
+\r
+    // calculate mult of reconstructed tracks\r
+    Int_t multRecTemp=0;\r
+    for(Int_t i=0; i<entries;++i) \r
+    {\r
+      AliESDtrack *track = (AliESDtrack*)allChargedTracks->At(i);\r
+      if(!track) continue;\r
+      if(track->Charge()==0) continue;\r
+\r
+\r
+      // only postive charged \r
+      if(GetParticleMode() == AlidNdPtHelper::kPlus && track->Charge() < 0) \r
+        continue;\r
+      \r
+      // only negative charged \r
+      if(GetParticleMode() == AlidNdPtHelper::kMinus && track->Charge() > 0) \r
+        continue;\r
+\r
+      if(esdTrackCuts->AcceptTrack(track)) \r
+      {\r
+          if(accCuts->AcceptTrack(track)) multRecTemp++;\r
+      }  \r
+    }\r
+\r
+    \r
 \r
     labelsAll = new Int_t[entries];\r
     labelsAcc = new Int_t[entries];\r
@@ -1428,7 +1456,7 @@ void AlidNdPtAnalysis::Process(AliESDEvent *const esdEvent, AliMCEvent *const mc
         if(tpcTrack) delete tpcTrack; \r
       } \r
 \r
-      FillHistograms(track,stack,vtxESD->GetZv(),AlidNdPtHelper::kAllTracks); \r
+      FillHistograms(track,stack,vtxESD->GetZv(),AlidNdPtHelper::kAllTracks, multRecTemp); \r
       labelsAll[multAll] = TMath::Abs(track->GetLabel());\r
       multAll++;\r
 \r
@@ -1477,7 +1505,7 @@ void AlidNdPtAnalysis::Process(AliESDEvent *const esdEvent, AliMCEvent *const mc
             track->Set(cParam.GetX(),cParam.GetAlpha(),cParam.GetParameter(),cParam.GetCovariance());\r
 \r
              if(accCuts->AcceptTrack(track)) {\r
-               FillHistograms(track,stack,vtxESD->GetZv(),AlidNdPtHelper::kRecTracks); \r
+               FillHistograms(track,stack,vtxESD->GetZv(),AlidNdPtHelper::kRecTracks,multRecTemp); \r
               labelsRec[multRec] = TMath::Abs(track->GetLabel());\r
               multRec++;\r
             }  \r
@@ -1485,19 +1513,19 @@ void AlidNdPtAnalysis::Process(AliESDEvent *const esdEvent, AliMCEvent *const mc
           else {\r
              if(accCuts->AcceptTrack(track)) \r
             {\r
-               FillHistograms(track,stack,vtxESD->GetZv(),AlidNdPtHelper::kRecTracks); \r
+               FillHistograms(track,stack,vtxESD->GetZv(),AlidNdPtHelper::kRecTracks,multRecTemp); \r
               labelsRec[multRec] = TMath::Abs(track->GetLabel());\r
               multRec++;\r
             }\r
           }\r
      }\r
-     if(cosmicCount) \r
+    // if(cosmicCount) \r
        //printf("COSMIC EVENT: number %d , mult %d \n", esdEvent->GetEventNumberInFile(), multRec);\r
 \r
-     if(highPtCount) \r
+    // if(highPtCount) \r
        //printf("HIGH PT EVENT: number %d , mult %d \n", esdEvent->GetEventNumberInFile(), multRec);\r
 \r
-     if(multRec > 30) \r
+    // if(multRec > 30) \r
        //printf("HIGH MULT EVENT: number %d , mult %d \n", esdEvent->GetEventNumberInFile(), multRec);\r
 \r
      // fill track multiplicity histograms\r
@@ -1529,7 +1557,7 @@ void AlidNdPtAnalysis::Process(AliESDEvent *const esdEvent, AliMCEvent *const mc
        if(!isMCEventSelected) return;  \r
      }\r
 \r
-     Double_t vMultTrueEventMatrix[2] = { multRec, multMCTrueTracks };\r
+     Double_t vMultTrueEventMatrix[3] = { multRec, multMCTrueTracks, multMBTracks};\r
      if(isEventOK && isEventTriggered) {   \r
        if(TMath::Abs(vtxMC[2]) < 10.0) // both Rec. and corresponding MC events must be accepted\r
          fEventMultCorrelationMatrix->Fill(vMultTrueEventMatrix);\r
@@ -1821,7 +1849,7 @@ void AlidNdPtAnalysis::FillHistograms(TObjArray *const allChargedTracks,Int_t *c
 }\r
 \r
 //_____________________________________________________________________________\r
-void AlidNdPtAnalysis::FillHistograms(AliESDtrack *const esdTrack, AliStack *const stack, const Double_t zv, AlidNdPtHelper::TrackObject trackObj)\r
+void AlidNdPtAnalysis::FillHistograms(AliESDtrack *const esdTrack, AliStack *const stack, const Double_t zv, AlidNdPtHelper::TrackObject trackObj, Int_t multMB)\r
 {\r
   //\r
   // Fill ESD track and MC histograms \r
@@ -1848,7 +1876,7 @@ void AlidNdPtAnalysis::FillHistograms(AliESDtrack *const esdTrack, AliStack *con
   Double_t values1[3] = {pt,eta,phi};    \r
   fRecTrackHist1[trackObj]->Fill(values1);\r
 \r
-  Double_t values[3] = {zv, pt,eta};     \r
+  Double_t values[4] = {zv, pt,eta, multMB};     \r
   if(trackObj == AlidNdPtHelper::kRecTracks) {\r
     fRecTrackHist->Fill(values);\r
   }\r
index 848fff38c494603982ff0ebc2476aff1f12651e8..684c443a90f7a003105cd8fba2a22f6378c471c3 100644 (file)
@@ -72,7 +72,7 @@ public :
 
 
   // Fill histograms
-  void FillHistograms(AliESDtrack *const esdTrack, AliStack *const stack, const Double_t zv, AlidNdPtHelper::TrackObject trackObj);
+  void FillHistograms(AliESDtrack *const esdTrack, AliStack *const stack, const Double_t zv, AlidNdPtHelper::TrackObject trackObj, Int_t multMB);
   void FillHistograms(AliStack *const stack, Int_t label, AlidNdPtHelper::TrackObject trackObj);
   void FillHistograms(TObjArray *const allChargedTracks,Int_t *const labelsAll,Int_t multAll,Int_t *const labelsAcc,Int_t multAcc,Int_t *const labelsRec,Int_t multRec);
 
@@ -171,7 +171,7 @@ private:
   //
 
   // event rec. track vs true track multiplicity correlation matrix 
-  THnSparseF *fEventMultCorrelationMatrix; //-> mult:mult_true_tracks
+  THnSparseF *fEventMultCorrelationMatrix; //-> mult:mult_true_tracks:multMB
 
   // rec. track pt vs true track pt correlation matrix for given eta
   THnSparseF *fTrackPtCorrelationMatrix; //-> Pt:mcPt:mcEta
@@ -277,7 +277,7 @@ private:
   // Generic histograms to be corrected
   //
   THnSparseF *fRecEventHist; //-> Zv:multMB
-  THnSparseF *fRecTrackHist; //-> Zv:pT:eta
+  THnSparseF *fRecTrackHist; //-> Zv:pT:eta:multRec
 
   //
   // candle events track corrections