]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWGJE/EMCALJetTasks/AliAnalysisTaskDeltaPt.cxx
Merge branch 'master' of https://git.cern.ch/reps/AliRoot
[u/mrichter/AliRoot.git] / PWGJE / EMCALJetTasks / AliAnalysisTaskDeltaPt.cxx
index 6b35b886e34837477f5a7af41e97616e585de8c3..3a5948324b10f0ccbc51ee96725e5108b8a72664 100644 (file)
@@ -45,6 +45,7 @@ AliAnalysisTaskDeltaPt::AliAnalysisTaskDeltaPt() :
   fEmbCaloClustersCont(0),
   fRandTracksCont(0),
   fRandCaloClustersCont(0),
+  fHistRhovsCent(0),
   fHistRCPhiEta(0), 
   fHistRCPt(0),
   fHistRCPtExLJ(0),
@@ -72,47 +73,25 @@ AliAnalysisTaskDeltaPt::AliAnalysisTaskDeltaPt() :
 {
   // Default constructor.
 
-  fHistRCPt = new TH1*[fNcentBins];
-  fHistRCPtExLJ = new TH1*[fNcentBins];
-  fHistRCPtExPartialLJ = new TH1*[fNcentBins];
-  fHistRCPtRand = new TH1*[fNcentBins];
-  fHistRhoVSRCPt = new TH2*[fNcentBins];
-  fHistDeltaPtRCvsEP = new TH2*[fNcentBins];
-  fHistDeltaPtRCExLJ = new TH1*[fNcentBins];
-  fHistDeltaPtRCExPartialLJ = new TH1*[fNcentBins];
-  fHistDeltaPtRCRand = new TH1*[fNcentBins];
-  fHistEmbJetsPtArea = new TH3*[fNcentBins];
-  fHistEmbJetsCorrPtArea = new TH3*[fNcentBins];
-  fHistEmbPartPtvsJetPt = new TH2*[fNcentBins];
-  fHistEmbPartPtvsJetCorrPt = new TH2*[fNcentBins];
-  fHistJetPtvsJetCorrPt = new TH2*[fNcentBins];
-  fHistDistLeadPart2JetAxis = new TH1*[fNcentBins];
-  fHistEmbBkgArea = new TH2*[fNcentBins];
-  fHistRhoVSEmbBkg = new TH2*[fNcentBins];
-  fHistDeltaPtEmbArea = new TH2*[fNcentBins];
-  fHistDeltaPtEmbvsEP = new TH2*[fNcentBins];
-
-  for (Int_t i = 0; i < fNcentBins; i++) {
-    fHistRCPt[i] = 0;
-    fHistRCPtExLJ[i] = 0;
-    fHistRCPtExPartialLJ[i] = 0;
-    fHistRCPtRand[i] = 0;
-    fHistRhoVSRCPt[i] = 0;
-    fHistDeltaPtRCvsEP[i] = 0;
-    fHistDeltaPtRCExLJ[i] = 0;
-    fHistDeltaPtRCExPartialLJ[i] = 0;
-    fHistDeltaPtRCRand[i] = 0;
-    fHistEmbJetsPtArea[i] = 0;
-    fHistEmbJetsCorrPtArea[i] = 0;
-    fHistEmbPartPtvsJetPt[i] = 0;
-    fHistEmbPartPtvsJetCorrPt[i] = 0;
-    fHistJetPtvsJetCorrPt[i] = 0;
-    fHistDistLeadPart2JetAxis[i] = 0;
-    fHistEmbBkgArea[i] = 0;
-    fHistRhoVSEmbBkg[i] = 0;
-    fHistDeltaPtEmbArea[i] = 0;
-    fHistDeltaPtEmbvsEP[i] = 0;
-  }
+  fHistRCPt = 0;
+  fHistRCPtExLJ = 0;
+  fHistRCPtExPartialLJ = 0;
+  fHistRCPtRand = 0;
+  fHistRhoVSRCPt = 0;
+  fHistDeltaPtRCvsEP = 0;
+  fHistDeltaPtRCExLJ = 0;
+  fHistDeltaPtRCExPartialLJ = 0;
+  fHistDeltaPtRCRand = 0;
+  fHistEmbJetsPtArea = 0;
+  fHistEmbJetsCorrPtArea = 0;
+  fHistEmbPartPtvsJetPt = 0;
+  fHistEmbPartPtvsJetCorrPt = 0;
+  fHistJetPtvsJetCorrPt = 0;
+  fHistDistLeadPart2JetAxis = 0;
+  fHistEmbBkgArea = 0;
+  fHistRhoVSEmbBkg = 0;
+  fHistDeltaPtEmbArea = 0;
+  fHistDeltaPtEmbvsEP = 0;
 
   SetMakeGeneralHistograms(kTRUE);
 }
@@ -136,6 +115,7 @@ AliAnalysisTaskDeltaPt::AliAnalysisTaskDeltaPt(const char *name) :
   fEmbCaloClustersCont(0),
   fRandTracksCont(0),
   fRandCaloClustersCont(0),
+  fHistRhovsCent(0),
   fHistRCPhiEta(0), 
   fHistRCPt(0),
   fHistRCPtExLJ(0),
@@ -163,6 +143,32 @@ AliAnalysisTaskDeltaPt::AliAnalysisTaskDeltaPt(const char *name) :
 {
   // Standard constructor.
 
+  fHistRCPt = 0;
+  fHistRCPtExLJ = 0;
+  fHistRCPtExPartialLJ = 0;
+  fHistRCPtRand = 0;
+  fHistRhoVSRCPt = 0;
+  fHistDeltaPtRCvsEP = 0;
+  fHistDeltaPtRCExLJ = 0;
+  fHistDeltaPtRCExPartialLJ = 0;
+  fHistDeltaPtRCRand = 0;
+  fHistEmbJetsPtArea = 0;
+  fHistEmbJetsCorrPtArea = 0;
+  fHistEmbPartPtvsJetPt = 0;
+  fHistEmbPartPtvsJetCorrPt = 0;
+  fHistJetPtvsJetCorrPt = 0;
+  fHistDistLeadPart2JetAxis = 0;
+  fHistEmbBkgArea = 0;
+  fHistRhoVSEmbBkg = 0;
+  fHistDeltaPtEmbArea = 0;
+  fHistDeltaPtEmbvsEP = 0;
+
+  SetMakeGeneralHistograms(kTRUE);
+}
+
+//________________________________________________________________________
+void AliAnalysisTaskDeltaPt::AllocateHistogramArrays()
+{
   fHistRCPt = new TH1*[fNcentBins];
   fHistRCPtExLJ = new TH1*[fNcentBins];
   fHistRCPtExPartialLJ = new TH1*[fNcentBins];
@@ -204,8 +210,6 @@ AliAnalysisTaskDeltaPt::AliAnalysisTaskDeltaPt(const char *name) :
     fHistDeltaPtEmbArea[i] = 0;
     fHistDeltaPtEmbvsEP[i] = 0;
   }
-
-  SetMakeGeneralHistograms(kTRUE);
 }
 
 //________________________________________________________________________
@@ -215,6 +219,13 @@ void AliAnalysisTaskDeltaPt::UserCreateOutputObjects()
 
   AliAnalysisTaskEmcalJet::UserCreateOutputObjects();
 
+  AllocateHistogramArrays();
+
+  fHistRhovsCent = new TH2F("fHistRhovsCent", "fHistRhovsCent", 101, -1,  100, fNbins, 0, fMaxBinPt*2);
+  fHistRhovsCent->GetXaxis()->SetTitle("Centrality (%)");
+  fHistRhovsCent->GetYaxis()->SetTitle("#rho (GeV/c * rad^{-1})");
+  fOutput->Add(fHistRhovsCent);
+
   fJetsCont = GetJetContainer("Jets");
   fTracksCont = GetParticleContainer("Tracks");
   fCaloClustersCont = GetClusterContainer("CaloClusters");
@@ -258,11 +269,11 @@ void AliAnalysisTaskDeltaPt::UserCreateOutputObjects()
   TString histname;
 
   const Int_t nbinsZ = 12;
-  Float_t binsZ[nbinsZ+1] = {0,1,2,3,4,5,6,7,8,9,10,20,1000};
+  Double_t binsZ[nbinsZ+1] = {0,1,2,3,4,5,6,7,8,9,10,20,1000};
 
-  Float_t *binsPt       = GenerateFixedBinArray(fNbins, fMinBinPt, fMaxBinPt);
-  Float_t *binsCorrPt   = GenerateFixedBinArray(fNbins*2, -fMaxBinPt, fMaxBinPt);
-  Float_t *binsArea     = GenerateFixedBinArray(50, 0, 2);
+  Double_t *binsPt       = GenerateFixedBinArray(fNbins, fMinBinPt, fMaxBinPt);
+  Double_t *binsCorrPt   = GenerateFixedBinArray(fNbins*2, -fMaxBinPt, fMaxBinPt);
+  Double_t *binsArea     = GenerateFixedBinArray(50, 0, 2);
 
   for (Int_t i = 0; i < fNcentBins; i++) {
     if (fTracksCont || fCaloClustersCont) {
@@ -282,8 +293,8 @@ void AliAnalysisTaskDeltaPt::UserCreateOutputObjects()
 
       histname = "fHistDeltaPtRCvsEP_";
       histname += i;
-      fHistDeltaPtRCvsEP[i] = new TH2F(histname.Data(), histname.Data(), 402, -TMath::Pi()*1.01, TMath::Pi()*3.01, fNbins * 2, -fMaxBinPt, fMaxBinPt);
-      fHistDeltaPtRCvsEP[i]->GetXaxis()->SetTitle("#phi_{RC} - #Psi_{EP}");
+      fHistDeltaPtRCvsEP[i] = new TH2F(histname.Data(), histname.Data(), 101, 0, TMath::Pi()*1.01, fNbins * 2, -fMaxBinPt, fMaxBinPt);
+      fHistDeltaPtRCvsEP[i]->GetXaxis()->SetTitle("#phi_{RC} - #psi_{RP}");
       fHistDeltaPtRCvsEP[i]->GetYaxis()->SetTitle("#delta#it{p}_{T}^{RC} (GeV/#it{c})");
       fHistDeltaPtRCvsEP[i]->GetZaxis()->SetTitle("counts");
       fOutput->Add(fHistDeltaPtRCvsEP[i]);
@@ -408,8 +419,7 @@ void AliAnalysisTaskDeltaPt::UserCreateOutputObjects()
 
       histname = "fHistDeltaPtEmbvsEP_";
       histname += i;
-      fHistDeltaPtEmbvsEP[i] = new TH2F(histname.Data(), histname.Data(), 
-                                       402, -TMath::Pi()*1.01, TMath::Pi()*3.01, fNbins * 2, -fMaxBinPt, fMaxBinPt);
+      fHistDeltaPtEmbvsEP[i] = new TH2F(histname.Data(), histname.Data(), 101, 0, TMath::Pi()*1.01, fNbins * 2, -fMaxBinPt, fMaxBinPt);
       fHistDeltaPtEmbvsEP[i]->GetXaxis()->SetTitle("#phi_{jet} - #Psi_{EP}");
       fHistDeltaPtEmbvsEP[i]->GetYaxis()->SetTitle("#delta#it{p}_{T}^{emb} (GeV/#it{c})");
       fHistDeltaPtEmbvsEP[i]->GetZaxis()->SetTitle("counts");
@@ -429,6 +439,8 @@ Bool_t AliAnalysisTaskDeltaPt::FillHistograms()
 {
   // Fill histograms.
 
+  fHistRhovsCent->Fill(fCent, fRhoVal);
+
   // ************
   // Random cones
   // _________________________________
@@ -451,7 +463,12 @@ Bool_t AliAnalysisTaskDeltaPt::FillHistograms()
        fHistRhoVSRCPt[fCentBin]->Fill(fRhoVal * rcArea, RCpt);
        
        fHistRCPt[fCentBin]->Fill(RCpt);
-       fHistDeltaPtRCvsEP[fCentBin]->Fill(RCphi - fEPV0, RCpt - rcArea * fRhoVal);
+
+       Double_t ep = RCphi - fEPV0;
+       while (ep < 0) ep += TMath::Pi();
+       while (ep >= TMath::Pi()) ep -= TMath::Pi();
+
+       fHistDeltaPtRCvsEP[fCentBin]->Fill(ep, RCpt - rcArea * fRhoVal);
       }
 
       if (fJetsCont) {
@@ -536,7 +553,12 @@ Bool_t AliAnalysisTaskDeltaPt::FillHistograms()
       fHistEmbBkgArea[fCentBin]->Fill(embJet->Area(), embJet->Pt() - embJet->MCPt());
       fHistRhoVSEmbBkg[fCentBin]->Fill(fRhoVal * embJet->Area(), embJet->Pt() - embJet->MCPt());
       fHistDeltaPtEmbArea[fCentBin]->Fill(embJet->Area(), embJet->Pt() - embJet->Area() * fRhoVal - embJet->MCPt());
-      fHistDeltaPtEmbvsEP[fCentBin]->Fill(embJet->Phi() - fEPV0, embJet->Pt() - embJet->Area() * fRhoVal - embJet->MCPt());
+
+      Double_t ep = embJet->Phi() - fEPV0;
+      while (ep < 0) ep += TMath::Pi();
+      while (ep >= TMath::Pi()) ep -= TMath::Pi();
+
+      fHistDeltaPtEmbvsEP[fCentBin]->Fill(ep, embJet->Pt() - embJet->Area() * fRhoVal - embJet->MCPt());
 
       embJet = NextEmbeddedJet();
     }