From Salvatore:
authorloizides <loizides@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 24 Jul 2013 21:16:40 +0000 (21:16 +0000)
committerloizides <loizides@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 24 Jul 2013 21:16:40 +0000 (21:16 +0000)
- AliJetResponseMaker: add NEF and z axis in response matrix (optional), fix area axis limits
- AliAnalysisTaskDeltaPt: deltaPt vs. event plane
- AliHadCorr: fix axis limits in QA histograms

PWGJE/EMCALJetTasks/AliAnalysisTaskDeltaPt.cxx
PWGJE/EMCALJetTasks/AliAnalysisTaskDeltaPt.h
PWGJE/EMCALJetTasks/AliHadCorrTask.cxx
PWGJE/EMCALJetTasks/AliJetResponseMaker.cxx
PWGJE/EMCALJetTasks/AliJetResponseMaker.h

index bb712e6..8eb2e7b 100644 (file)
@@ -47,7 +47,7 @@ AliAnalysisTaskDeltaPt::AliAnalysisTaskDeltaPt() :
   fHistRCPtExPartialLJ(0), 
   fHistRCPtRand(0),
   fHistRhoVSRCPt(0),
-  fHistDeltaPtRC(0),
+  fHistDeltaPtRCvsEP(0),
   fHistDeltaPtRCExLJ(0),
   fHistDeltaPtRCExPartialLJ(0),
   fHistDeltaPtRCRand(0),
@@ -64,6 +64,7 @@ AliAnalysisTaskDeltaPt::AliAnalysisTaskDeltaPt() :
   fHistEmbBkgArea(0),
   fHistRhoVSEmbBkg(0),
   fHistDeltaPtEmbArea(0),
+  fHistDeltaPtEmbvsEP(0),
   fHistRCPtExLJVSDPhiLJ(0),
   fHistRCPtExPartialLJVSDPhiLJ(0),
   fHistEmbJetsPhiEta(0),
@@ -76,7 +77,7 @@ AliAnalysisTaskDeltaPt::AliAnalysisTaskDeltaPt() :
   fHistRCPtExPartialLJ = new TH1*[fNcentBins];
   fHistRCPtRand = new TH1*[fNcentBins];
   fHistRhoVSRCPt = new TH2*[fNcentBins];
-  fHistDeltaPtRC = new TH1*[fNcentBins];
+  fHistDeltaPtRCvsEP = new TH2*[fNcentBins];
   fHistDeltaPtRCExLJ = new TH1*[fNcentBins];
   fHistDeltaPtRCExPartialLJ = new TH1*[fNcentBins];
   fHistDeltaPtRCRand = new TH1*[fNcentBins];
@@ -93,6 +94,7 @@ AliAnalysisTaskDeltaPt::AliAnalysisTaskDeltaPt() :
   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;
@@ -100,7 +102,7 @@ AliAnalysisTaskDeltaPt::AliAnalysisTaskDeltaPt() :
     fHistRCPtExPartialLJ[i] = 0;
     fHistRCPtRand[i] = 0;
     fHistRhoVSRCPt[i] = 0;
-    fHistDeltaPtRC[i] = 0;
+    fHistDeltaPtRCvsEP[i] = 0;
     fHistDeltaPtRCExLJ[i] = 0;
     fHistDeltaPtRCExPartialLJ[i] = 0;
     fHistDeltaPtRCRand[i] = 0;
@@ -117,6 +119,7 @@ AliAnalysisTaskDeltaPt::AliAnalysisTaskDeltaPt() :
     fHistEmbBkgArea[i] = 0;
     fHistRhoVSEmbBkg[i] = 0;
     fHistDeltaPtEmbArea[i] = 0;
+    fHistDeltaPtEmbvsEP[i] = 0;
   }
 
   memset(fEmbeddedClusterIds, -1, 999*sizeof(Int_t));
@@ -149,7 +152,7 @@ AliAnalysisTaskDeltaPt::AliAnalysisTaskDeltaPt(const char *name) :
   fHistRCPtExPartialLJ(0), 
   fHistRCPtRand(0),
   fHistRhoVSRCPt(0),
-  fHistDeltaPtRC(0),
+  fHistDeltaPtRCvsEP(0),
   fHistDeltaPtRCExLJ(0),
   fHistDeltaPtRCExPartialLJ(0),
   fHistDeltaPtRCRand(0),
@@ -166,6 +169,7 @@ AliAnalysisTaskDeltaPt::AliAnalysisTaskDeltaPt(const char *name) :
   fHistEmbBkgArea(0),
   fHistRhoVSEmbBkg(0),
   fHistDeltaPtEmbArea(0),
+  fHistDeltaPtEmbvsEP(0),
   fHistRCPtExLJVSDPhiLJ(0),
   fHistRCPtExPartialLJVSDPhiLJ(0),
   fHistEmbJetsPhiEta(0),
@@ -178,7 +182,7 @@ AliAnalysisTaskDeltaPt::AliAnalysisTaskDeltaPt(const char *name) :
   fHistRCPtExPartialLJ = new TH1*[fNcentBins];
   fHistRCPtRand = new TH1*[fNcentBins];
   fHistRhoVSRCPt = new TH2*[fNcentBins];
-  fHistDeltaPtRC = new TH1*[fNcentBins];
+  fHistDeltaPtRCvsEP = new TH2*[fNcentBins];
   fHistDeltaPtRCExLJ = new TH1*[fNcentBins];
   fHistDeltaPtRCExPartialLJ = new TH1*[fNcentBins];
   fHistDeltaPtRCRand = new TH1*[fNcentBins];
@@ -195,6 +199,7 @@ AliAnalysisTaskDeltaPt::AliAnalysisTaskDeltaPt(const char *name) :
   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;
@@ -202,7 +207,7 @@ AliAnalysisTaskDeltaPt::AliAnalysisTaskDeltaPt(const char *name) :
     fHistRCPtExPartialLJ[i] = 0;
     fHistRCPtRand[i] = 0;
     fHistRhoVSRCPt[i] = 0;
-    fHistDeltaPtRC[i] = 0;
+    fHistDeltaPtRCvsEP[i] = 0;
     fHistDeltaPtRCExLJ[i] = 0;
     fHistDeltaPtRCExPartialLJ[i] = 0;
     fHistDeltaPtRCRand[i] = 0;
@@ -219,6 +224,7 @@ AliAnalysisTaskDeltaPt::AliAnalysisTaskDeltaPt(const char *name) :
     fHistEmbBkgArea[i] = 0;
     fHistRhoVSEmbBkg[i] = 0;
     fHistDeltaPtEmbArea[i] = 0;
+    fHistDeltaPtEmbvsEP[i] = 0;
   }
 
   memset(fEmbeddedClusterIds, -1, 999*sizeof(Int_t));
@@ -296,12 +302,13 @@ void AliAnalysisTaskDeltaPt::UserCreateOutputObjects()
       fHistRhoVSRCPt[i]->GetYaxis()->SetTitle("#it{p}_{T} (GeV/#it{c})");
       fOutput->Add(fHistRhoVSRCPt[i]);
 
-      histname = "fHistDeltaPtRC_";
+      histname = "fHistDeltaPtRCvsEP_";
       histname += i;
-      fHistDeltaPtRC[i] = new TH1F(histname.Data(), histname.Data(), fNbins * 2, -fMaxBinPt, fMaxBinPt);
-      fHistDeltaPtRC[i]->GetXaxis()->SetTitle("#delta#it{p}_{T}^{RC} (GeV/#it{c})");
-      fHistDeltaPtRC[i]->GetYaxis()->SetTitle("counts");
-      fOutput->Add(fHistDeltaPtRC[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]->GetYaxis()->SetTitle("#delta#it{p}_{T}^{RC} (GeV/#it{c})");
+      fHistDeltaPtRCvsEP[i]->GetZaxis()->SetTitle("counts");
+      fOutput->Add(fHistDeltaPtRCvsEP[i]);
       
       if (!fJetsName.IsNull()) {
        histname = "fHistRCPtExLJ_";
@@ -443,10 +450,20 @@ void AliAnalysisTaskDeltaPt::UserCreateOutputObjects()
       histname = "fHistDeltaPtEmbArea_";
       histname += i;
       fHistDeltaPtEmbArea[i] = new TH2F(histname.Data(), histname.Data(), 
-                                       50, 0, 2, fNbins * 2, -fMaxBinPt, fMaxBinPt);
+                                           50, 0, 2, fNbins * 2, -fMaxBinPt, fMaxBinPt);
       fHistDeltaPtEmbArea[i]->GetXaxis()->SetTitle("area");
       fHistDeltaPtEmbArea[i]->GetYaxis()->SetTitle("#delta#it{p}_{T}^{emb} (GeV/#it{c})");
+      fHistDeltaPtEmbArea[i]->GetZaxis()->SetTitle("counts");
       fOutput->Add(fHistDeltaPtEmbArea[i]);
+
+      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]->GetXaxis()->SetTitle("#phi_{jet} - #Psi_{EP}");
+      fHistDeltaPtEmbvsEP[i]->GetYaxis()->SetTitle("#delta#it{p}_{T}^{emb} (GeV/#it{c})");
+      fHistDeltaPtEmbvsEP[i]->GetZaxis()->SetTitle("counts");
+      fOutput->Add(fHistDeltaPtEmbvsEP[i]);
     }
   }
 
@@ -484,7 +501,7 @@ Bool_t AliAnalysisTaskDeltaPt::FillHistograms()
        fHistRhoVSRCPt[fCentBin]->Fill(fRhoVal * rcArea, RCpt);
        
        fHistRCPt[fCentBin]->Fill(RCpt);
-       fHistDeltaPtRC[fCentBin]->Fill(RCpt - rcArea * fRhoVal);
+       fHistDeltaPtRCvsEP[fCentBin]->Fill(RCphi - fEPV0, RCpt - rcArea * fRhoVal);
       }
       
       if (fJets) {
@@ -631,6 +648,7 @@ 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());
 
       embJet = NextEmbeddedJet();
     }
index ffe59f4..b35dfd2 100644 (file)
@@ -68,7 +68,7 @@ class AliAnalysisTaskDeltaPt : public AliAnalysisTaskEmcalJet {
   TH1                       **fHistRCPtExPartialLJ;        //!Random cone pt, imposing min distance from leading jet with 1/ncoll probability
   TH1                       **fHistRCPtRand;               //!Random cone pt, randomized particles
   TH2                       **fHistRhoVSRCPt;              //!Area(RC) * rho vs. Pt(RC)
-  TH1                       **fHistDeltaPtRC;              //!deltaPt = Pt(RC) - A * rho
+  TH2                       **fHistDeltaPtRCvsEP;          //!deltaPt = Pt(RC) - A * rho vs. event plane
   TH1                       **fHistDeltaPtRCExLJ;          //!deltaPt = Pt(RC) - A * rho, imposing min distance from leading jet
   TH1                       **fHistDeltaPtRCExPartialLJ;   //!deltaPt = Pt(RC) - A * rho, imposing min distance from leading jet with 1/ncoll probability
   TH1                       **fHistDeltaPtRCRand;          //!deltaPt = Pt(RC) - A * rho, randomzied particles
@@ -86,7 +86,8 @@ class AliAnalysisTaskDeltaPt : public AliAnalysisTaskEmcalJet {
   TH1                       **fHistDistLeadPart2JetAxis;   //!Distance between leading particle and jet axis
   TH2                       **fHistEmbBkgArea;             //!Pt(embjet) - Pt(embtrack) vs. area of embedded jets
   TH2                       **fHistRhoVSEmbBkg;            //!Area(embjet) * rho vs. Pt(embjet) - Pt(embtrack)
-  TH2                       **fHistDeltaPtEmbArea;         //!deltaPt = Pt(embjet) - Area(embjet) * rho - Pt(embtrack)
+  TH2                       **fHistDeltaPtEmbArea;         //!deltaPt = Pt(embjet) - Area(embjet) * rho - Pt(embtrack) vs. Area(embjet)
+  TH2                       **fHistDeltaPtEmbvsEP;         //!deltaPt = Pt(embjet) - Area(embjet) * rho - Pt(embtrack) vs. event plane
   TH2                        *fHistRCPtExLJVSDPhiLJ;       //!Random cone pt, imposing min distance from leading jet, vs. deltaPhi leading jet
   TH2                        *fHistRCPtExPartialLJVSDPhiLJ;//!Random cone pt, imposing min distance from leading jet, vs. deltaPhi leading jet with 1/ncoll probability
   TH2                        *fHistEmbJetsPhiEta;          //!Phi-Eta distribution of embedded jets<
index ccaeda4..ba4bbfd 100644 (file)
@@ -423,8 +423,8 @@ void AliHadCorrTask::UserCreateOutputObjects()
 
   fHistNclusvsCent      = new TH1F("Nclusvscent",      "NclusVsCent",      100, 0, 100);
   fHistNclusMatchvsCent = new TH1F("NclusMatchvscent", "NclusMatchVsCent", 100, 0, 100);
-  fHistEbefore          = new TH1F("Ebefore",          "Ebefore",          fNbins, fMinBinPt, fMaxBinPt);
-  fHistEafter           = new TH1F("Eafter",           "Eafter",           fNbins, fMinBinPt, fMaxBinPt);
+  fHistEbefore          = new TH1F("Ebefore",          "Ebefore",          100, 0, 100);
+  fHistEafter           = new TH1F("Eafter",           "Eafter",           100, 0, 100);
   fHistEoPCent          = new TH2F("EoPCent",          "EoPCent",          100, 0, 100, fNbins*2, 0, 10);
   fHistNMatchCent       = new TH2F("NMatchesCent",     "NMatchesCent",     100, 0, 100, 11, -0.5,  10.5);
   fHistNClusMatchCent   = new TH2F("NClusMatchesCent", "NClusMatchesCent", 100, 0, 100, 11, -0.5,  10.5);
index 7df5658..fe1f2df 100644 (file)
@@ -48,6 +48,8 @@ AliJetResponseMaker::AliJetResponseMaker() :
   fHistoType(0),
   fDeltaPtAxis(0),
   fDeltaEtaDeltaPhiAxis(0),
+  fNEFAxis(0),
+  fZAxis(0),
   fDoJet2Histogram(0),
   fTracks2(0),
   fCaloClusters2(0),
@@ -156,6 +158,8 @@ AliJetResponseMaker::AliJetResponseMaker(const char *name) :
   fHistoType(0),
   fDeltaPtAxis(0),
   fDeltaEtaDeltaPhiAxis(0),
+  fNEFAxis(0),
+  fZAxis(0),
   fDoJet2Histogram(0),
   fTracks2(0),
   fCaloClusters2(0),
@@ -254,7 +258,7 @@ void AliJetResponseMaker::AllocateTH2()
   fHistJets1PhiEta->GetYaxis()->SetTitle("#phi");
   fOutput->Add(fHistJets1PhiEta);
   
-  fHistJets1PtArea = new TH2F("fHistJets1PtArea", "fHistJets1PtArea", fNbins/2, 0, 1, fNbins, fMinBinPt, fMaxBinPt);
+  fHistJets1PtArea = new TH2F("fHistJets1PtArea", "fHistJets1PtArea", fNbins/2, 0, 1.5, fNbins, fMinBinPt, fMaxBinPt);
   fHistJets1PtArea->GetXaxis()->SetTitle("area");
   fHistJets1PtArea->GetYaxis()->SetTitle("p_{T,1} (GeV/c)");
   fHistJets1PtArea->GetZaxis()->SetTitle("counts");
@@ -262,7 +266,7 @@ void AliJetResponseMaker::AllocateTH2()
  
   if (!fRhoName.IsNull()) {
     fHistJets1CorrPtArea = new TH2F("fHistJets1CorrPtArea", "fHistJets1CorrPtArea", 
-                                   fNbins/2, 0, 1, 2*fNbins, -fMaxBinPt, fMaxBinPt);
+                                   fNbins/2, 0, 1.5, 2*fNbins, -fMaxBinPt, fMaxBinPt);
     fHistJets1CorrPtArea->GetXaxis()->SetTitle("area");
     fHistJets1CorrPtArea->GetYaxis()->SetTitle("p_{T,1}^{corr} (GeV/c)");
     fHistJets1CorrPtArea->GetZaxis()->SetTitle("counts");
@@ -294,7 +298,7 @@ void AliJetResponseMaker::AllocateTH2()
   fHistJets2PhiEta->GetYaxis()->SetTitle("#phi");
   fOutput->Add(fHistJets2PhiEta);
 
-  fHistJets2PtArea = new TH2F("fHistJets2PtArea", "fHistJets2PtArea", fNbins/2, 0, 1, fNbins, fMinBinPt, fMaxBinPt);
+  fHistJets2PtArea = new TH2F("fHistJets2PtArea", "fHistJets2PtArea", fNbins/2, 0, 1.5, fNbins, fMinBinPt, fMaxBinPt);
   fHistJets2PtArea->GetXaxis()->SetTitle("area");
   fHistJets2PtArea->GetYaxis()->SetTitle("p_{T,2} (GeV/c)");
   fHistJets2PtArea->GetZaxis()->SetTitle("counts");
@@ -302,7 +306,7 @@ void AliJetResponseMaker::AllocateTH2()
 
   if (!fRho2Name.IsNull()) {
     fHistJets2CorrPtArea = new TH2F("fHistJets2CorrPtArea", "fHistJets2CorrPtArea", 
-                                   fNbins/2, 0, 1, 2*fNbins, -fMaxBinPt, fMaxBinPt);
+                                   fNbins/2, 0, 1.5, 2*fNbins, -fMaxBinPt, fMaxBinPt);
     fHistJets2CorrPtArea->GetXaxis()->SetTitle("area");
     fHistJets2CorrPtArea->GetYaxis()->SetTitle("p_{T,2}^{corr} (GeV/c)");
     fHistJets2CorrPtArea->GetZaxis()->SetTitle("counts");
@@ -315,7 +319,7 @@ void AliJetResponseMaker::AllocateTH2()
   fOutput->Add(fHistJets2PhiEtaAcceptance);
 
   fHistJets2PtAreaAcceptance = new TH2F("fHistJets2PtAreaAcceptance", "fHistJets2PtAreaAcceptance", 
-                                       fNbins/2, 0, 1, fNbins, fMinBinPt, fMaxBinPt);
+                                       fNbins/2, 0, 1.5, fNbins, fMinBinPt, fMaxBinPt);
   fHistJets2PtAreaAcceptance->GetXaxis()->SetTitle("area");
   fHistJets2PtAreaAcceptance->GetYaxis()->SetTitle("p_{T,2} (GeV/c)");
   fHistJets2PtAreaAcceptance->GetZaxis()->SetTitle("counts");
@@ -323,7 +327,7 @@ void AliJetResponseMaker::AllocateTH2()
 
   if (!fRho2Name.IsNull()) {
     fHistJets2CorrPtAreaAcceptance = new TH2F("fHistJets2CorrPtAreaAcceptance", "fHistJets2CorrPtAreaAcceptance", 
-                                             fNbins/2, 0, 1, 2*fNbins, -fMaxBinPt, fMaxBinPt);
+                                             fNbins/2, 0, 1.5, 2*fNbins, -fMaxBinPt, fMaxBinPt);
     fHistJets2CorrPtAreaAcceptance->GetXaxis()->SetTitle("area");
     fHistJets2CorrPtAreaAcceptance->GetYaxis()->SetTitle("p_{T,2}^{corr} (GeV/c)");
     fHistJets2CorrPtAreaAcceptance->GetZaxis()->SetTitle("counts");
@@ -460,14 +464,14 @@ void AliJetResponseMaker::AllocateTH2()
   fOutput->Add(fHistDeltaPtvsCommonEnergy2);
 
   fHistDeltaPtvsArea1 = new TH2F("fHistDeltaPtvsArea1", "fHistDeltaPtvsArea1", 
-                                fNbins/2, 0, 1, 2*fNbins, -fMaxBinPt, fMaxBinPt);
+                                fNbins/2, 0, 1.5, 2*fNbins, -fMaxBinPt, fMaxBinPt);
   fHistDeltaPtvsArea1->GetXaxis()->SetTitle("A_{jet,1}");
   fHistDeltaPtvsArea1->GetYaxis()->SetTitle("#deltap_{T} (GeV/c)");
   fHistDeltaPtvsArea1->GetZaxis()->SetTitle("counts");
   fOutput->Add(fHistDeltaPtvsArea1);
 
   fHistDeltaPtvsArea2 = new TH2F("fHistDeltaPtvsArea2", "fHistDeltaPtvsArea2", 
-                                fNbins/2, 0, 1, 2*fNbins, -fMaxBinPt, fMaxBinPt);
+                                fNbins/2, 0, 1.5, 2*fNbins, -fMaxBinPt, fMaxBinPt);
   fHistDeltaPtvsArea2->GetXaxis()->SetTitle("A_{jet,2}");
   fHistDeltaPtvsArea2->GetYaxis()->SetTitle("#deltap_{T} (GeV/c)");
   fHistDeltaPtvsArea2->GetZaxis()->SetTitle("counts");
@@ -547,14 +551,14 @@ void AliJetResponseMaker::AllocateTH2()
     fOutput->Add(fHistDeltaCorrPtvsCommonEnergy2);
 
     fHistDeltaCorrPtvsArea1 = new TH2F("fHistDeltaCorrPtvsArea1", "fHistDeltaCorrPtvsArea1", 
-                                      fNbins/2, 0, 1, 2*fNbins, -fMaxBinPt, fMaxBinPt);
+                                      fNbins/2, 0, 1.5, 2*fNbins, -fMaxBinPt, fMaxBinPt);
     fHistDeltaCorrPtvsArea1->GetXaxis()->SetTitle("A_{jet,1}");
     fHistDeltaCorrPtvsArea1->GetYaxis()->SetTitle("#deltap_{T}^{corr} (GeV/c)");
     fHistDeltaCorrPtvsArea1->GetZaxis()->SetTitle("counts");
     fOutput->Add(fHistDeltaCorrPtvsArea1);
     
     fHistDeltaCorrPtvsArea2 = new TH2F("fHistDeltaCorrPtvsArea2", "fHistDeltaCorrPtvsArea2", 
-                                      fNbins/2, 0, 1, 2*fNbins, -fMaxBinPt, fMaxBinPt);
+                                      fNbins/2, 0, 1.5, 2*fNbins, -fMaxBinPt, fMaxBinPt);
     fHistDeltaCorrPtvsArea2->GetXaxis()->SetTitle("A_{jet,2}");
     fHistDeltaCorrPtvsArea2->GetYaxis()->SetTitle("#deltap_{T}^{corr} (GeV/c)");
     fHistDeltaCorrPtvsArea2->GetZaxis()->SetTitle("counts");
@@ -634,14 +638,14 @@ void AliJetResponseMaker::AllocateTH2()
     fOutput->Add(fHistDeltaMCPtvsCommonEnergy2);
 
     fHistDeltaMCPtvsArea1 = new TH2F("fHistDeltaMCPtvsArea1", "fHistDeltaMCPtvsArea1", 
-                                    fNbins/2, 0, 1, 2*fNbins, -fMaxBinPt, fMaxBinPt);
+                                    fNbins/2, 0, 1.5, 2*fNbins, -fMaxBinPt, fMaxBinPt);
     fHistDeltaMCPtvsArea1->GetXaxis()->SetTitle("A_{jet,1}");
     fHistDeltaMCPtvsArea1->GetYaxis()->SetTitle("#deltap_{T} (GeV/c)");
     fHistDeltaMCPtvsArea1->GetZaxis()->SetTitle("counts");
     fOutput->Add(fHistDeltaMCPtvsArea1);
 
     fHistDeltaMCPtvsArea2 = new TH2F("fHistDeltaMCPtvsArea2", "fHistDeltaMCPtvsArea2", 
-                                    fNbins/2, 0, 1, 2*fNbins, -fMaxBinPt, fMaxBinPt);
+                                    fNbins/2, 0, 1.5, 2*fNbins, -fMaxBinPt, fMaxBinPt);
     fHistDeltaMCPtvsArea2->GetXaxis()->SetTitle("A_{jet,2}");
     fHistDeltaMCPtvsArea2->GetYaxis()->SetTitle("#deltap_{T} (GeV/c)");
     fHistDeltaMCPtvsArea2->GetZaxis()->SetTitle("counts");
@@ -695,7 +699,7 @@ void AliJetResponseMaker::AllocateTHnSparse()
   title[dim] = "A_{jet}";
   nbins[dim] = fNbins/4;
   min[dim] = 0;
-  max[dim] = 1;
+  max[dim] = 1.5;
   dim++;
 
   title[dim] = "NEF";
@@ -772,13 +776,13 @@ void AliJetResponseMaker::AllocateTHnSparse()
   title[dim] = "A_{jet,1}";
   nbins[dim] = fNbins/4;
   min[dim] = 0;
-  max[dim] = 1;
+  max[dim] = 1.5;
   dim++;
 
   title[dim] = "A_{jet,2}";
   nbins[dim] = fNbins/4;
   min[dim] = 0;
-  max[dim] = 1;
+  max[dim] = 1.5;
   dim++;
 
   title[dim] = "distance";
@@ -861,6 +865,34 @@ void AliJetResponseMaker::AllocateTHnSparse()
       dim++;
     }
   }
+
+  if (fNEFAxis) {
+    title[dim] = "NEF_{1}";
+    nbins[dim] = fNbins/4;
+    min[dim] = 0;
+    max[dim] = 1.2;
+    dim++;
+
+    title[dim] = "NEF_{2}";
+    nbins[dim] = fNbins/4;
+    min[dim] = 0;
+    max[dim] = 1.2;
+    dim++;
+  }
+
+  if (fZAxis) {
+    title[dim] = "Z_{1}";
+    nbins[dim] = fNbins/4;
+    min[dim] = 0;
+    max[dim] = 1.2;
+    dim++;
+
+    title[dim] = "Z_{2}";
+    nbins[dim] = fNbins/4;
+    min[dim] = 0;
+    max[dim] = 1.2;
+    dim++;
+  }
       
   fHistMatching = new THnSparseD("fHistMatching","fHistMatching",dim,nbins,min,max);
     
@@ -1002,7 +1034,9 @@ void AliJetResponseMaker::FillJetHisto(Double_t Phi, Double_t Eta, Double_t Pt,
 }
 
 //________________________________________________________________________
-void AliJetResponseMaker::FillMatchingHistos(Double_t Pt1, Double_t Pt2, Double_t Eta1, Double_t Eta2, Double_t Phi1, Double_t Phi2, Double_t A1, Double_t A2, Double_t d, Double_t CE1, Double_t CE2, Double_t CorrPt1, Double_t CorrPt2, Double_t MCPt1)
+void AliJetResponseMaker::FillMatchingHistos(Double_t Pt1, Double_t Pt2, Double_t Eta1, Double_t Eta2, Double_t Phi1, Double_t Phi2, 
+                                            Double_t A1, Double_t A2, Double_t d, Double_t CE1, Double_t CE2, Double_t CorrPt1, Double_t CorrPt2, 
+                                            Double_t MCPt1, Double_t NEF1, Double_t NEF2, Double_t Z1, Double_t Z2)
 {
   if (fHistoType==1) {
     Double_t contents[20]={0};
@@ -1041,6 +1075,14 @@ void AliJetResponseMaker::FillMatchingHistos(Double_t Pt1, Double_t Pt2, Double_
        contents[i] = MCPt1;
       else if (title=="#deltap_{T}^{MC}")
        contents[i] = MCPt1-Pt2;
+      else if (title=="NEF_{1}")
+       contents[i] = NEF1;
+      else if (title=="NEF_{2}")
+       contents[i] = NEF2;
+      else if (title=="Z_{1}")
+       contents[i] = Z1;
+      else if (title=="Z_{2}")
+       contents[i] = Z2;
       else 
        AliWarning(Form("Unable to fill dimension %s!",title.Data()));
     }
@@ -1848,7 +1890,9 @@ Bool_t AliJetResponseMaker::FillHistograms()
        Double_t corrpt1 = jet2->MatchedJet()->Pt() - fRhoVal * jet2->MatchedJet()->Area();
        Double_t corrpt2 = jet2->Pt() - fRho2Val * jet2->Area();
 
-       FillMatchingHistos(jet2->MatchedJet()->Pt(), jet2->Pt(), jet2->MatchedJet()->Eta(), jet2->Eta(), jet2->MatchedJet()->Phi(), jet2->Phi(), jet2->MatchedJet()->Area(), jet2->Area(), d, ce1, ce2, corrpt1, corrpt2, jet2->MatchedJet()->MCPt());
+       FillMatchingHistos(jet2->MatchedJet()->Pt(), jet2->Pt(), jet2->MatchedJet()->Eta(), jet2->Eta(), jet2->MatchedJet()->Phi(), jet2->Phi(), 
+                          jet2->MatchedJet()->Area(), jet2->Area(), d, ce1, ce2, corrpt1, corrpt2, jet2->MatchedJet()->MCPt(), 
+                          jet2->MatchedJet()->NEF(), jet2->NEF(), jet2->MatchedJet()->MaxPartPt()/jet2->MatchedJet()->Pt(), jet2->MaxPartPt()/jet2->Pt());
       }
     }
   }
index e95d64f..d9b88f7 100644 (file)
@@ -46,6 +46,8 @@ class AliJetResponseMaker : public AliAnalysisTaskEmcalJet {
   void                        SetHistoType(Int_t b)                                           { fHistoType         = b         ; }
   void                        SetDeltaPtAxis(Int_t b)                                         { fDeltaPtAxis       = b         ; }
   void                        SetDeltaEtaDeltaPhiAxis(Int_t b)                                { fDeltaEtaDeltaPhiAxis= b       ; }
+  void                        SetNEFAxis(Int_t b)                                             { fNEFAxis           = b         ; }
+  void                        SetZAxis(Int_t b)                                               { fZAxis             = b         ; }
   void                        SetDoJet2Histogram(Int_t b)                                     { fDoJet2Histogram   = b         ; }
 
  protected:
@@ -61,7 +63,9 @@ class AliJetResponseMaker : public AliAnalysisTaskEmcalJet {
   void                        GetGeometricalMatchingLevel(AliEmcalJet *jet1, AliEmcalJet *jet2, Double_t &d) const;
   void                        GetMCLabelMatchingLevel(AliEmcalJet *jet1, AliEmcalJet *jet2, Double_t &d1, Double_t &d2) const;
   void                        GetSameCollectionsMatchingLevel(AliEmcalJet *jet1, AliEmcalJet *jet2, Double_t &d1, Double_t &d2) const;
-  void                        FillMatchingHistos(Double_t Pt1, Double_t Pt2, Double_t Eta1, Double_t Eta2, Double_t Phi1, Double_t Phi2, Double_t A1, Double_t A2, Double_t d, Double_t CE1, Double_t CE2, Double_t CorrPt1, Double_t CorrPt2, Double_t MCPt1);
+  void                        FillMatchingHistos(Double_t Pt1, Double_t Pt2, Double_t Eta1, Double_t Eta2, Double_t Phi1, Double_t Phi2, 
+                                                Double_t A1, Double_t A2, Double_t d, Double_t CE1, Double_t CE2, Double_t CorrPt1, Double_t CorrPt2, 
+                                                Double_t MCPt1, Double_t NEF1, Double_t NEF2, Double_t Z1, Double_t Z2);
   void                        FillJetHisto(Double_t Phi, Double_t Eta, Double_t Pt, Double_t A, Double_t NEF, Double_t Z, Double_t CorrPt, Double_t MCPt, Int_t Set);
   void                        AllocateTH2();
   void                        AllocateTHnSparse();
@@ -90,6 +94,8 @@ class AliJetResponseMaker : public AliAnalysisTaskEmcalJet {
   Int_t                       fHistoType;                     // histogram type (0=TH2, 1=THnSparse)
   Int_t                       fDeltaPtAxis;                   // add delta pt axis in THnSparse (default=0)
   Int_t                       fDeltaEtaDeltaPhiAxis;          // add delta eta and delta phi axes in THnSparse (default=0)
+  Int_t                       fNEFAxis;                       // add NEF axis in matching THnSparse (default=0)
+  Int_t                       fZAxis;                         // add Z axis in matching THnSparse (default=0)
   Int_t                       fDoJet2Histogram;               // add unbiased jet2 histogram (potentially memory consuming if on particle level)
   TClonesArray               *fTracks2;                       //!Tracks 2
   TClonesArray               *fCaloClusters2;                 //!Clusters 2
@@ -183,6 +189,6 @@ class AliJetResponseMaker : public AliAnalysisTaskEmcalJet {
   AliJetResponseMaker(const AliJetResponseMaker&);            // not implemented
   AliJetResponseMaker &operator=(const AliJetResponseMaker&); // not implemented
 
-  ClassDef(AliJetResponseMaker, 21) // Jet response matrix producing task
+  ClassDef(AliJetResponseMaker, 22) // Jet response matrix producing task
 };
 #endif