]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
seletc HIJING particles optional
authorsaiola <salvatore.aiola@cern.ch>
Thu, 10 Jul 2014 04:11:33 +0000 (00:11 -0400)
committersaiola <salvatore.aiola@cern.ch>
Thu, 10 Jul 2014 04:11:33 +0000 (00:11 -0400)
PWG/EMCAL/AliEmcalTrackingQATask.cxx
PWG/EMCAL/AliEmcalTrackingQATask.h
PWG/EMCAL/macros/AddTaskTrackingQA.C

index 42da16ee81c9749446b6d55a1f0d799cd4033b7c..db437a5c35276a8f8d3007ef3b83d136d9c9a4d1 100644 (file)
@@ -20,6 +20,7 @@ ClassImp(AliEmcalTrackingQATask)
 //________________________________________________________________________
 AliEmcalTrackingQATask::AliEmcalTrackingQATask() : 
   AliAnalysisTaskEmcal("AliEmcalTrackingQA", kTRUE),
+  fSelectHIJING(kTRUE),
   fGeneratorLevel(0),
   fDetectorLevel(0),
   fTracksAll(0),
@@ -37,6 +38,7 @@ AliEmcalTrackingQATask::AliEmcalTrackingQATask() :
 //________________________________________________________________________
 AliEmcalTrackingQATask::AliEmcalTrackingQATask(const char *name) : 
   AliAnalysisTaskEmcal(name, kTRUE),
+  fSelectHIJING(kTRUE),
   fGeneratorLevel(0),
   fDetectorLevel(0),
   fTracksAll(0),
@@ -85,12 +87,14 @@ void AliEmcalTrackingQATask::UserCreateOutputObjects()
       fTracksAll[i][j]->GetZaxis()->SetTitle("#it{p}_{T} (GeV/#it{c})");
       fOutput->Add(fTracksAll[i][j]);
 
-      histname = Form("fTracksSelected_%d_%d",i,j);
-      fTracksSelected[i][j] = new TH3F(histname,histname, 100, -1, 1, 101, 0, TMath::Pi() * 2.02, fNbins, fMinBinPt, fMaxBinPt);
-      fTracksSelected[i][j]->GetXaxis()->SetTitle("#eta");
-      fTracksSelected[i][j]->GetYaxis()->SetTitle("#phi");
-      fTracksSelected[i][j]->GetZaxis()->SetTitle("#it{p}_{T} (GeV/#it{c})");
-      fOutput->Add(fTracksSelected[i][j]);
+      if (fSelectHIJING) {
+       histname = Form("fTracksSelected_%d_%d",i,j);
+       fTracksSelected[i][j] = new TH3F(histname,histname, 100, -1, 1, 101, 0, TMath::Pi() * 2.02, fNbins, fMinBinPt, fMaxBinPt);
+       fTracksSelected[i][j]->GetXaxis()->SetTitle("#eta");
+       fTracksSelected[i][j]->GetYaxis()->SetTitle("#phi");
+       fTracksSelected[i][j]->GetZaxis()->SetTitle("#it{p}_{T} (GeV/#it{c})");
+       fOutput->Add(fTracksSelected[i][j]);
+      }
     }
 
     histname = Form("fParticlesAllPhysPrim_%d",i);
@@ -100,12 +104,14 @@ void AliEmcalTrackingQATask::UserCreateOutputObjects()
     fParticlesAllPhysPrim[i]->GetZaxis()->SetTitle("#it{p}_{T} (GeV/#it{c})");
     fOutput->Add(fParticlesAllPhysPrim[i]);
 
-    histname = Form("fParticlesSelected_%d",i);
-    fParticlesSelected[i] = new TH3F(histname,histname, 100, -1, 1, 101, 0, TMath::Pi() * 2.02, fNbins, fMinBinPt, fMaxBinPt);
-    fParticlesSelected[i]->GetXaxis()->SetTitle("#eta");
-    fParticlesSelected[i]->GetYaxis()->SetTitle("#phi");
-    fParticlesSelected[i]->GetZaxis()->SetTitle("#it{p}_{T} (GeV/#it{c})");
-    fOutput->Add(fParticlesSelected[i]);
+    if (fSelectHIJING) {
+      histname = Form("fParticlesSelected_%d",i);
+      fParticlesSelected[i] = new TH3F(histname,histname, 100, -1, 1, 101, 0, TMath::Pi() * 2.02, fNbins, fMinBinPt, fMaxBinPt);
+      fParticlesSelected[i]->GetXaxis()->SetTitle("#eta");
+      fParticlesSelected[i]->GetYaxis()->SetTitle("#phi");
+      fParticlesSelected[i]->GetZaxis()->SetTitle("#it{p}_{T} (GeV/#it{c})");
+      fOutput->Add(fParticlesSelected[i]);
+    }
   }
 
   AllocateFindableParticlesTHnSparse();
@@ -353,14 +359,15 @@ Bool_t AliEmcalTrackingQATask::FillHistograms()
 
       Int_t label = TMath::Abs(track->GetLabel());
 
-      if (label==0 || track->GetGeneratorIndex() == 0) {  // reject particles generated from other generators in the cocktail but keep fake tracks (label == 0)
+      if (fSelectHIJING && (label==0 || track->GetGeneratorIndex() == 0)) {  
+       // reject particles generated from other generators in the cocktail but keep fake tracks (label == 0)
        fTracksSelected[fCentBin][type]->Fill(track->Eta(), track->Phi(), track->Pt());
       }
       
       if (label > 0) {
        AliAODMCParticle *part =  static_cast<AliAODMCParticle*>(fGeneratorLevel->GetAcceptParticleWithLabel(label));
        if (part) {
-         if (part->GetGeneratorIndex() == 0) {
+         if (!fSelectHIJING || part->GetGeneratorIndex() == 0) {
            Int_t pdg = TMath::Abs(part->PdgCode());
            // select charged pions, protons, kaons , electrons, muons
            if (pdg == 211 || pdg == 2212 || pdg == 321 || pdg == 11 || pdg == 13) {
@@ -380,9 +387,8 @@ Bool_t AliEmcalTrackingQATask::FillHistograms()
   AliAODMCParticle *part = static_cast<AliAODMCParticle*>(fGeneratorLevel->GetNextAcceptParticle(0));
   while (part != 0) {
     fParticlesAllPhysPrim[fCentBin]->Fill(part->Eta(), part->Phi(), part->Pt());
-
-    if (part->GetGeneratorIndex() == 0) {
-      fParticlesSelected[fCentBin]->Fill(part->Eta(), part->Phi(), part->Pt());
+    if (!fSelectHIJING || part->GetGeneratorIndex() == 0) {
+      if (fSelectHIJING) fParticlesSelected[fCentBin]->Fill(part->Eta(), part->Phi(), part->Pt());
 
       Int_t pdg = TMath::Abs(part->PdgCode());
       // select charged pions, protons, kaons , electrons, muons
index 50e108a7e41c534a46b53d7b9576d0a03a9a4c07..b8057f73dead26275154b1291dac07a827391051 100644 (file)
@@ -17,6 +17,7 @@ class AliEmcalTrackingQATask : public AliAnalysisTaskEmcal {
   void                   UserCreateOutputObjects();
   void                   SetGeneratorLevelName(const char* name);
   void                   SetDetectorLevelName(const char* name);
+  void                   SetSelectHIJING(Bool_t s)  {fSelectHIJING=s;}
 
  protected:
   Bool_t                 FillHistograms()                               ;
@@ -28,6 +29,7 @@ class AliEmcalTrackingQATask : public AliAnalysisTaskEmcal {
                                                       Double_t trackEta, Double_t trackPhi, Double_t trackPt, Byte_t trackType);
 
   // Task configuration
+  Bool_t                fSelectHIJING          ; //  select HIJING particles
 
   // Service fields (non-streamed)
   AliParticleContainer* fGeneratorLevel        ; //! generator level container
index 07b38789340093f30eed2fedf2e8305693ce5498..cf392be0c00af8a319ce176e623f135065b8a62b 100644 (file)
@@ -1,5 +1,6 @@
 AliEmcalTrackingQATask* AddTaskTrackingQA(const char *nGenLev      = "mcparticles",
-                                         const char *nDetLev      = "PicoTracks")
+                                         const char *nDetLev      = "PicoTracks",
+                                         Bool_t      selHIJING    = kTRUE)
 {  
   // Get the pointer to the existing analysis manager via the static access method.
   //==============================================================================
@@ -26,6 +27,7 @@ AliEmcalTrackingQATask* AddTaskTrackingQA(const char *nGenLev      = "mcparticle
   AliEmcalTrackingQATask *qaTask = new AliEmcalTrackingQATask(name);
   qaTask->SetGeneratorLevelName(nGenLev);
   qaTask->SetDetectorLevelName(nDetLev);
+  qaTask->SetSelectHIJING(selHIJING);
   qaTask->SetVzRange(-10,10);
 
   //-------------------------------------------------------