]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWGJE/AliAnalysisTaskPartonDisc.cxx
add tag to wagon name
[u/mrichter/AliRoot.git] / PWGJE / AliAnalysisTaskPartonDisc.cxx
index c0743a37b3a958238a4b5dff54904f01cb342493..03b99064952cc4858c5f3dfe24c53586ff727ef7 100644 (file)
 #include "AliAnalysisHelperJetTasks.h"
 #include "AliAnalysisTaskPartonDisc.h"
 #include "AliAODVZERO.h"
+#include "TRandom3.h"
+#include "TDatime.h"
 
 // Analysis task for parton discrimination
 
 ClassImp(AliAnalysisTaskPartonDisc)
 
-Double_t *AliAnalysisTaskPartonDisc::fgContainer = 0x0;
+Double_t *AliAnalysisTaskPartonDisc::fgContainer = 0x0; 
 
 //________________________________________________________________________
 AliAnalysisTaskPartonDisc::AliAnalysisTaskPartonDisc() 
-  : AliAnalysisTaskSE(), fAOD(0), fUseAODMC(kFALSE), fPhojetMC(kFALSE), fBranchMC("jetsMC"), fBranchRec("jetsREC"), fBranchSecRec(""), fSqrts(0),  fNtX(0), fJetRadius(0.), fFlavorRadius(0.), fFilterBit(0xFF), fOutputList(0), fJetPt(0), fJetPtSec(0), fJetPtMC(0), fJetEta(0), fJetEtaSec(0), fJetPhi(0), fJetPhiSec(0), fJetEtaMC(0), fJetPhiMC(0), fPtAODMC(0), fPtAOD(0), fEtaAODMC(0), fPhiAODMC(0), fEtaAOD(0), fPhiAOD(0), fFlavor(0), fNJetsMC(0), fNJetsRD(0), fNJetsRDSeco(0), fJetsMultPtMC(0), fJetsMultPtRD(0), fNChTrRD(0), fProfNChTrRD(0), fFracQQ(0), fFracGQ(0), fFracGG(0), fFracOutGoingQQ(0), fFracOutGoingGQ(0), fFracOutGoingGG(0), fh1Xsec(0), fh1Trials(0), fMpdg(0), fProcessJetPt(0), fFlavorLead(0), fProcessLeadJetPt(0), fPDGMothLPart(0), fFlavProc(0), fAvgTrials(1), fUseAODJetInput(kFALSE), fMinTrackPtInNTX(0), fMaxTrackPtInNTX(0), fSCMRD(0), fMinpTVal(0), fZVertex(0), fh1Events(0), fUseOnlyMC(kFALSE), fCheckMCStatus(kTRUE), fEvtCount(0), fNAccJetsMC(0), fNAccJetsRD(0), fNAccJetsRDSeco(0), fEnablePrints(kFALSE), fRecJetPtInclusive(0), fMCJetPtInclusive(0), fRecJetPtLeading(0), fMCJetPtLeading(0), fSecRecJetPtInclusive(0), fSecRecJetPtLeading(0), fHasPerpCone(kTRUE), fEtaPerpCoord(0), fPhiPerpCoord(0), fPtPerpCoord(0), fJetEvent(kFALSE), fPerpCone(0), fNChTrMCPerp(0), fNChTrRecPerp(0), fSCMMCPerp(0), fSCMRecPerp(0), fIsHIevent(kFALSE), fCurrentJetMinPtNT90(0), fBckgSbsJet(0), fCurrentJetMinPtNT90Recalc(0), fNChTrCorrMCQuark(0), fNChTrCorrMCGluon(0), fNChTrCorrMCPerp(0), fIsPossibleToSubstBckg(kTRUE), fNChTrRecECorr(0), fNChTrRecPerpECorr(0), fRefMult(0), fCurrentJetCharge(0), fRefMultWOJet(0), fVZEROMult(0), fMultWOJetVZero(0), fVZero(0), fRefMultFullV0(0), fRefMultV0Corr(0), fFullV0V0Corr(0), fNTXV0MultPt(0), fNTXCBMultPt(0), fMinpTValUE(2.0), fRefMultFullV0UJ(0), fRefMultV0CorrUJ(0), fFullV0V0CorrUJ(0), fMultWOJetVZeroUJ(0), fRefMultWOJetUJ(0), fMaxpTValUE(2.0), fRefAODTrackCount(0), fRefAODTrackCountUJ(0), fTrackCountWOJet(0), fTrackCountWOJetUJ(0), fTrackCountWOJetUJMC(0), fFullV0V0CorrUJMC(0), fMinpTValMC(2.0), fIncExcR(2.0), fForceNotTR(kFALSE), fNotExtDiJEx(kFALSE), fMinTrackPtInNTXRecalc(0), fMaxTrackPtInNTXRecalc(0), fPtDistInJetConeRaw(0), fPtDistInPerpConeRaw(0), fPtInPerpCon(0), fMinTrackPtInNTXR(0), fMaxTrackPtInNTXR(0), fEventCent(0), fJetEtaAll(0), fJetEtaOnlyTPCcut(0), fNChTrRecECorrPPMult(0), fNChTrRecPerpECorrPPMult(0), fForceSkipSJ(kFALSE)
+  : AliAnalysisTaskSE(), fAOD(0), fUseAODMC(kFALSE), fPhojetMC(kFALSE), fBranchMC("jetsMC"), fBranchRec("jetsREC"), fBranchSecRec(""), fSqrts(0),  fNtX(0), fJetRadius(0.), fFlavorRadius(0.), fFilterBit(0xFF), fOutputList(0), fJetPt(0), fJetPtSec(0), fJetPtMC(0), fJetEta(0), fJetEtaSec(0), fJetPhi(0), fJetPhiSec(0), fJetEtaMC(0), fJetPhiMC(0), fPtAODMC(0), fPtAOD(0), fEtaAODMC(0), fPhiAODMC(0), fEtaAOD(0), fPhiAOD(0), fFlavor(0), fNJetsMC(0), fNJetsRD(0), fNJetsRDSeco(0), fJetsMultPtMC(0), fJetsMultPtRD(0), fNChTrRD(0), fProfNChTrRD(0), fFracQQ(0), fFracGQ(0), fFracGG(0), fFracOutGoingQQ(0), fFracOutGoingGQ(0), fFracOutGoingGG(0), fh1Xsec(0), fh1Trials(0), fMpdg(0), fProcessJetPt(0), fFlavorLead(0), fProcessLeadJetPt(0), fPDGMothLPart(0), fFlavProc(0), fAvgTrials(1), fUseAODJetInput(kFALSE), fMinTrackPtInNTX(0), fMaxTrackPtInNTX(0), fSCMRD(0), fMinpTVal(0), fZVertex(0), fh1Events(0), fUseOnlyMC(kFALSE), fCheckMCStatus(kTRUE), fEvtCount(0), fNAccJetsMC(0), fNAccJetsRD(0), fNAccJetsRDSeco(0), fEnablePrints(kFALSE), fRecJetPtInclusive(0), fMCJetPtInclusive(0), fRecJetPtLeading(0), fMCJetPtLeading(0), fSecRecJetPtInclusive(0), fSecRecJetPtLeading(0), fHasPerpCone(kTRUE), fEtaPerpCoord(0), fPhiPerpCoord(0), fPtPerpCoord(0), fJetEvent(kFALSE), fPerpCone(0), fNChTrMCPerp(0), fNChTrRecPerp(0), fSCMMCPerp(0), fSCMRecPerp(0), fIsHIevent(kFALSE), fCurrentJetMinPtNT90(0), fBckgSbsJet(0), fCurrentJetMinPtNT90Recalc(0), fNChTrCorrMCQuark(0), fNChTrCorrMCGluon(0), fNChTrCorrMCPerp(0), fIsPossibleToSubstBckg(kTRUE), fNChTrRecECorr(0), fNChTrRecPerpECorr(0), fRefMult(0), fCurrentJetCharge(0), fRefMultWOJet(0), fVZEROMult(0), fMultWOJetVZero(0), fVZero(0), fRefMultFullV0(0), fRefMultV0Corr(0), fFullV0V0Corr(0), fNTXV0MultPt(0), fNTXCBMultPt(0), fMinpTValUE(2.0), fRefMultFullV0UJ(0), fRefMultV0CorrUJ(0), fFullV0V0CorrUJ(0), fMultWOJetVZeroUJ(0), fRefMultWOJetUJ(0), fMaxpTValUE(2.0), fRefAODTrackCount(0), fRefAODTrackCountUJ(0), fTrackCountWOJet(0), fTrackCountWOJetUJ(0), fTrackCountWOJetUJMC(0), fFullV0V0CorrUJMC(0), fMinpTValMC(2.0), fIncExcR(0.0), fForceNotTR(kFALSE), fNotExtDiJEx(kFALSE), fMinTrackPtInNTXRecalc(0), fMaxTrackPtInNTXRecalc(0), fPtDistInJetConeRaw(0), fPtDistInPerpConeRaw(0), fPtInPerpCon(0), fMinTrackPtInNTXR(0), fMaxTrackPtInNTXR(0), fEventCent(0), fJetEtaAll(0), fJetEtaOnlyTPCcut(0), fNChTrRecECorrPPMult(0), fNChTrRecPerpECorrPPMult(0), fForceSkipSJ(kFALSE), fJetPtCentPbPbRaw(0), fJetPtCentPbPbCorr(0), fJetAcceptance(0.5), fIncreasingExcl(kFALSE), fTotTracksCone(0), fTotTracksInCone(0), fTTrackRandomRejection(0), fJTrackRandomRejection(0), fMinPtInGlobMult(0)
 {
-
   // Constructor
 
   for(Int_t a=0; a<16;a++)
@@ -103,6 +104,16 @@ AliAnalysisTaskPartonDisc::AliAnalysisTaskPartonDisc()
              fNChTrRDMultSEOJMC[a]=0;
              fSCMRDMultSEOJMC[a]=0;
              fNChTrRecPerpMultSEOJ[a]=0;
+             fJEtaMCMultOJ[a]=0;  
+             fJEtaMCMultSEOJ[a]=0;
+             fJEtaRDMultOJ[a]=0;           
+             fJEtaRDMultSEOJ[a]=0;         
+             fJetPtMCMultOJ[a]=0;         
+             fJetPtMCMultSEOJ[a]=0;       
+             fJetPtRDMultOJ[a]=0;        
+             fJetPtRDMultSEOJ[a]=0;       
+             fEntriesQuark[a]=0;          
+             fEntriesGluon[a]=0;          
            }
          if(a<6)
            {
@@ -132,7 +143,7 @@ AliAnalysisTaskPartonDisc::AliAnalysisTaskPartonDisc()
 }
 //________________________________________________________________________
 AliAnalysisTaskPartonDisc::AliAnalysisTaskPartonDisc(const char *name) 
-  : AliAnalysisTaskSE(name), fAOD(0), fUseAODMC(kFALSE), fPhojetMC(kFALSE), fBranchMC("jetsMC"), fBranchRec("jetsREC"), fBranchSecRec(""), fSqrts(0),  fNtX(0), fJetRadius(0.), fFlavorRadius(0.), fFilterBit(0xFF), fOutputList(0), fJetPt(0), fJetPtSec(0), fJetPtMC(0), fJetEta(0), fJetEtaSec(0), fJetPhi(0), fJetPhiSec(0), fJetEtaMC(0), fJetPhiMC(0), fPtAODMC(0), fPtAOD(0), fEtaAODMC(0), fPhiAODMC(0), fEtaAOD(0), fPhiAOD(0), fFlavor(0), fNJetsMC(0), fNJetsRD(0), fNJetsRDSeco(0), fJetsMultPtMC(0), fJetsMultPtRD(0), fNChTrRD(0), fProfNChTrRD(0), fFracQQ(0), fFracGQ(0), fFracGG(0), fFracOutGoingQQ(0), fFracOutGoingGQ(0), fFracOutGoingGG(0), fh1Xsec(0), fh1Trials(0), fMpdg(0), fProcessJetPt(0), fFlavorLead(0), fProcessLeadJetPt(0), fPDGMothLPart(0), fFlavProc(0), fAvgTrials(1), fUseAODJetInput(kFALSE), fMinTrackPtInNTX(0), fMaxTrackPtInNTX(0), fSCMRD(0), fMinpTVal(0), fZVertex(0), fh1Events(0), fUseOnlyMC(kFALSE), fCheckMCStatus(kTRUE), fEvtCount(0), fNAccJetsMC(0), fNAccJetsRD(0), fNAccJetsRDSeco(0), fEnablePrints(kFALSE), fRecJetPtInclusive(0), fMCJetPtInclusive(0), fRecJetPtLeading(0), fMCJetPtLeading(0), fSecRecJetPtInclusive(0), fSecRecJetPtLeading(0), fHasPerpCone(kTRUE), fEtaPerpCoord(0), fPhiPerpCoord(0), fPtPerpCoord(0), fJetEvent(kFALSE), fPerpCone(0), fNChTrMCPerp(0), fNChTrRecPerp(0), fSCMMCPerp(0), fSCMRecPerp(0), fIsHIevent(kFALSE), fCurrentJetMinPtNT90(0), fBckgSbsJet(0), fCurrentJetMinPtNT90Recalc(0), fNChTrCorrMCQuark(0), fNChTrCorrMCGluon(0), fNChTrCorrMCPerp(0), fIsPossibleToSubstBckg(kTRUE), fNChTrRecECorr(0), fNChTrRecPerpECorr(0), fRefMult(0), fCurrentJetCharge(0), fRefMultWOJet(0), fVZEROMult(0), fMultWOJetVZero(0), fVZero(0), fRefMultFullV0(0), fRefMultV0Corr(0), fFullV0V0Corr(0), fNTXV0MultPt(0), fNTXCBMultPt(0), fMinpTValUE(2.0), fRefMultFullV0UJ(0), fRefMultV0CorrUJ(0), fFullV0V0CorrUJ(0), fMultWOJetVZeroUJ(0), fRefMultWOJetUJ(0), fMaxpTValUE(2.0), fRefAODTrackCount(0), fRefAODTrackCountUJ(0), fTrackCountWOJet(0), fTrackCountWOJetUJ(0), fTrackCountWOJetUJMC(0), fFullV0V0CorrUJMC(0), fMinpTValMC(2.0), fIncExcR(2.0), fForceNotTR(kFALSE), fNotExtDiJEx(kFALSE), fMinTrackPtInNTXRecalc(0), fMaxTrackPtInNTXRecalc(0), fPtDistInJetConeRaw(0), fPtDistInPerpConeRaw(0), fPtInPerpCon(0), fMinTrackPtInNTXR(0), fMaxTrackPtInNTXR(0), fEventCent(0), fJetEtaAll(0), fJetEtaOnlyTPCcut(0), fNChTrRecECorrPPMult(0), fNChTrRecPerpECorrPPMult(0), fForceSkipSJ(kFALSE)
+  : AliAnalysisTaskSE(name), fAOD(0), fUseAODMC(kFALSE), fPhojetMC(kFALSE), fBranchMC("jetsMC"), fBranchRec("jetsREC"), fBranchSecRec(""), fSqrts(0),  fNtX(0), fJetRadius(0.), fFlavorRadius(0.), fFilterBit(0xFF), fOutputList(0), fJetPt(0), fJetPtSec(0), fJetPtMC(0), fJetEta(0), fJetEtaSec(0), fJetPhi(0), fJetPhiSec(0), fJetEtaMC(0), fJetPhiMC(0), fPtAODMC(0), fPtAOD(0), fEtaAODMC(0), fPhiAODMC(0), fEtaAOD(0), fPhiAOD(0), fFlavor(0), fNJetsMC(0), fNJetsRD(0), fNJetsRDSeco(0), fJetsMultPtMC(0), fJetsMultPtRD(0), fNChTrRD(0), fProfNChTrRD(0), fFracQQ(0), fFracGQ(0), fFracGG(0), fFracOutGoingQQ(0), fFracOutGoingGQ(0), fFracOutGoingGG(0), fh1Xsec(0), fh1Trials(0), fMpdg(0), fProcessJetPt(0), fFlavorLead(0), fProcessLeadJetPt(0), fPDGMothLPart(0), fFlavProc(0), fAvgTrials(1), fUseAODJetInput(kFALSE), fMinTrackPtInNTX(0), fMaxTrackPtInNTX(0), fSCMRD(0), fMinpTVal(0), fZVertex(0), fh1Events(0), fUseOnlyMC(kFALSE), fCheckMCStatus(kTRUE), fEvtCount(0), fNAccJetsMC(0), fNAccJetsRD(0), fNAccJetsRDSeco(0), fEnablePrints(kFALSE), fRecJetPtInclusive(0), fMCJetPtInclusive(0), fRecJetPtLeading(0), fMCJetPtLeading(0), fSecRecJetPtInclusive(0), fSecRecJetPtLeading(0), fHasPerpCone(kTRUE), fEtaPerpCoord(0), fPhiPerpCoord(0), fPtPerpCoord(0), fJetEvent(kFALSE), fPerpCone(0), fNChTrMCPerp(0), fNChTrRecPerp(0), fSCMMCPerp(0), fSCMRecPerp(0), fIsHIevent(kFALSE), fCurrentJetMinPtNT90(0), fBckgSbsJet(0), fCurrentJetMinPtNT90Recalc(0), fNChTrCorrMCQuark(0), fNChTrCorrMCGluon(0), fNChTrCorrMCPerp(0), fIsPossibleToSubstBckg(kTRUE), fNChTrRecECorr(0), fNChTrRecPerpECorr(0), fRefMult(0), fCurrentJetCharge(0), fRefMultWOJet(0), fVZEROMult(0), fMultWOJetVZero(0), fVZero(0), fRefMultFullV0(0), fRefMultV0Corr(0), fFullV0V0Corr(0), fNTXV0MultPt(0), fNTXCBMultPt(0), fMinpTValUE(2.0), fRefMultFullV0UJ(0), fRefMultV0CorrUJ(0), fFullV0V0CorrUJ(0), fMultWOJetVZeroUJ(0), fRefMultWOJetUJ(0), fMaxpTValUE(2.0), fRefAODTrackCount(0), fRefAODTrackCountUJ(0), fTrackCountWOJet(0), fTrackCountWOJetUJ(0), fTrackCountWOJetUJMC(0), fFullV0V0CorrUJMC(0), fMinpTValMC(2.0), fIncExcR(0.0), fForceNotTR(kFALSE), fNotExtDiJEx(kFALSE), fMinTrackPtInNTXRecalc(0), fMaxTrackPtInNTXRecalc(0), fPtDistInJetConeRaw(0), fPtDistInPerpConeRaw(0), fPtInPerpCon(0), fMinTrackPtInNTXR(0), fMaxTrackPtInNTXR(0), fEventCent(0), fJetEtaAll(0), fJetEtaOnlyTPCcut(0), fNChTrRecECorrPPMult(0), fNChTrRecPerpECorrPPMult(0), fForceSkipSJ(kFALSE), fJetPtCentPbPbRaw(0), fJetPtCentPbPbCorr(0), fJetAcceptance(0.5), fIncreasingExcl(kFALSE), fTotTracksCone(0), fTotTracksInCone(0), fTTrackRandomRejection(0), fJTrackRandomRejection(0), fMinPtInGlobMult(0)
 {
 
   // Constructor
@@ -166,6 +177,16 @@ AliAnalysisTaskPartonDisc::AliAnalysisTaskPartonDisc(const char *name)
              fNChTrRDMultSEOJMC[a]=0;
              fSCMRDMultSEOJMC[a]=0;
              fNChTrRecPerpMultSEOJ[a]=0;               
+             fJEtaMCMultOJ[a]=0;  
+             fJEtaMCMultSEOJ[a]=0;
+             fJEtaRDMultOJ[a]=0;           
+             fJEtaRDMultSEOJ[a]=0;         
+             fJetPtMCMultOJ[a]=0;         
+             fJetPtMCMultSEOJ[a]=0;       
+             fJetPtRDMultOJ[a]=0;        
+             fJetPtRDMultSEOJ[a]=0;       
+             fEntriesQuark[a]=0;          
+             fEntriesGluon[a]=0;          
            }
          if(a<6)
            {
@@ -724,9 +745,10 @@ void AliAnalysisTaskPartonDisc::UserCreateOutputObjects()
   fFullV0V0CorrUJMC->Sumw2();
   fOutputList->Add(fFullV0V0CorrUJMC);
 
-  fMinTrackPtInNTXRecalc = new TH2F("fMinTrackPtInNTXRecalc", "Minimum track pT for the jets after pT correction, raw jet pT", 200, 0., 100., 60, 0., 300.);
+  fMinTrackPtInNTXRecalc = new TH3F("fMinTrackPtInNTXRecalc", "Minimum track pT for the jets after pT correction, raw jet pT", 200, 0., 100., 60, 0., 300.,10,0.5,10.5);
   fMinTrackPtInNTXRecalc->GetXaxis()->SetTitle("p_{T}^{TRACK} (GeV/c)");
   fMinTrackPtInNTXRecalc->GetYaxis()->SetTitle("p_{T}^{JET} (GeV/c)");
+  fMinTrackPtInNTXRecalc->GetZaxis()->SetTitle("Selection Bin");  // 9 selections bins as fNChTrRecECorr
   fMinTrackPtInNTXRecalc->Sumw2();
   fOutputList->Add(fMinTrackPtInNTXRecalc);
 
@@ -793,6 +815,25 @@ void AliAnalysisTaskPartonDisc::UserCreateOutputObjects()
   fNChTrRecPerpECorrPPMult->Sumw2();
   fOutputList->Add(fNChTrRecPerpECorrPPMult);
 
+  fJetPtCentPbPbRaw = new TH2F("fJetPtCentPbPbRaw", "raw p_{T} distribution of reco jets", 60, 0., 300.,10,0.5,10.5);
+  fJetPtCentPbPbRaw->GetXaxis()->SetTitle("p_{T} (GeV/c)");
+  fJetPtCentPbPbRaw->GetYaxis()->SetTitle("Selection Bin");
+  fJetPtCentPbPbRaw->Sumw2();
+  fOutputList->Add(fJetPtCentPbPbRaw);
+
+  fJetPtCentPbPbCorr = new TH2F("fJetPtCentPbPbCorr", "Corrected p_{T} distribution of reco jets", 60, 0., 300.,10,0.5,10.5);
+  fJetPtCentPbPbCorr->GetXaxis()->SetTitle("p_{T} (GeV/c)");
+  fJetPtCentPbPbCorr->GetYaxis()->SetTitle("Selection Bin");
+  fJetPtCentPbPbCorr->Sumw2();
+  fOutputList->Add(fJetPtCentPbPbCorr);
+
+  fTotTracksCone = new TH3F("fTotTracksCone","Total number of tracks in the cone, raw jet pT bin, centrality", 200, 0.5, 200.5, 8, 0.5, 8.5, 10, 0.5, 10.5);
+  fTotTracksCone->GetXaxis()->SetTitle("NTracks");
+  fTotTracksCone->GetYaxis()->SetTitle("p_{T}^{JET} Bin");
+  fTotTracksCone->GetZaxis()->SetTitle("Centrality Bin");
+  fTotTracksCone->Sumw2();
+  fOutputList->Add(fTotTracksCone);
+
   for(Int_t ipt=0;ipt<12;ipt++)
     {
       fNChTr[ipt] = new TH2F(Form("fNChTr[%i]",ipt),"Number of tracks to recover transverse energy, jet_{p_{T}}",101,-0.5,100.5, 60, 0., 300.);
@@ -925,6 +966,66 @@ void AliAnalysisTaskPartonDisc::UserCreateOutputObjects()
          fNChTrRecPerpMultSEOJ[ipt]->GetYaxis()->SetTitle("p_{T}^{JET}");
          fNChTrRecPerpMultSEOJ[ipt]->Sumw2();
          fOutputList->Add(fNChTrRecPerpMultSEOJ[ipt]);
+
+         fJEtaMCMultOJ[ipt] = new TH1F(Form("fJEtaMCMultOJ[%i]",ipt), "Eta distribution of MC jets, V0-like mult. bins, 1 jet", 50, -1.5, 1.5);
+         fJEtaMCMultOJ[ipt]->GetXaxis()->SetTitle("#eta");
+         fJEtaMCMultOJ[ipt]->GetYaxis()->SetTitle("entries");
+         fJEtaMCMultOJ[ipt]->Sumw2();
+         fOutputList->Add(fJEtaMCMultOJ[ipt]);
+
+         fJEtaMCMultSEOJ[ipt] = new TH1F(Form("fJEtaMCMultSEOJ[%i]",ipt), "Eta distribution of MC jets, TPC-like mult. bins, 1 jet", 50, -1.5, 1.5);
+         fJEtaMCMultSEOJ[ipt]->GetXaxis()->SetTitle("#eta");
+         fJEtaMCMultSEOJ[ipt]->GetYaxis()->SetTitle("entries");
+         fJEtaMCMultSEOJ[ipt]->Sumw2();
+         fOutputList->Add(fJEtaMCMultSEOJ[ipt]);
+
+         fJEtaRDMultOJ[ipt] = new TH1F(Form("fJEtaRDMultOJ[%i]",ipt), "Eta distribution of reco jets, V0 mult. bins, 1 jet", 50, -1.5, 1.5);
+         fJEtaRDMultOJ[ipt]->GetXaxis()->SetTitle("#eta");
+         fJEtaRDMultOJ[ipt]->GetYaxis()->SetTitle("entries");
+         fJEtaRDMultOJ[ipt]->Sumw2();
+         fOutputList->Add(fJEtaRDMultOJ[ipt]);
+
+         fJEtaRDMultSEOJ[ipt] = new TH1F(Form("fJEtaRDMultSEOJ[%i]",ipt), "Eta distribution of reco jets, TPC mult. bins, 1 jet", 50, -1.5, 1.5);
+         fJEtaRDMultSEOJ[ipt]->GetXaxis()->SetTitle("#eta");
+         fJEtaRDMultSEOJ[ipt]->GetYaxis()->SetTitle("entries");
+         fJEtaRDMultSEOJ[ipt]->Sumw2();
+         fOutputList->Add(fJEtaRDMultSEOJ[ipt]);
+
+         fJetPtMCMultOJ[ipt] = new TH1F(Form("fJetPtMCMultOJ[%i]",ipt), "pT distribution of MC jets, V0-like mult. bins, 1 jet", 60, 0., 300.);
+         fJetPtMCMultOJ[ipt]->GetXaxis()->SetTitle("p_{T} (GeV/c)");
+         fJetPtMCMultOJ[ipt]->GetYaxis()->SetTitle("entries");
+         fJetPtMCMultOJ[ipt]->Sumw2();
+         fOutputList->Add(fJetPtMCMultOJ[ipt]);
+
+         fJetPtMCMultSEOJ[ipt] = new TH1F(Form("fJetPtMCMultSEOJ[%i]",ipt), "pT distribution of MC jets, TPC-like mult. bins, 1 jet", 60, 0., 300.);
+         fJetPtMCMultSEOJ[ipt]->GetXaxis()->SetTitle("p_{T} (GeV/c)");
+         fJetPtMCMultSEOJ[ipt]->GetYaxis()->SetTitle("entries");
+         fJetPtMCMultSEOJ[ipt]->Sumw2();
+         fOutputList->Add(fJetPtMCMultSEOJ[ipt]);
+
+         fJetPtRDMultOJ[ipt] = new TH1F(Form("fJetPtRDMultOJ[%i]",ipt), "pT distribution of reco jets, V0 mult. bins, 1 jet", 60, 0., 300.);
+         fJetPtRDMultOJ[ipt]->GetXaxis()->SetTitle("p_{T} (GeV/c)");
+         fJetPtRDMultOJ[ipt]->GetYaxis()->SetTitle("entries");
+         fJetPtRDMultOJ[ipt]->Sumw2();
+         fOutputList->Add(fJetPtRDMultOJ[ipt]);
+
+         fJetPtRDMultSEOJ[ipt] = new TH1F(Form("fJetPtRDMultSEOJ[%i]",ipt), "pT distribution of reco jets, TPC mult. bins, 1 jet", 60, 0., 300.);
+         fJetPtRDMultSEOJ[ipt]->GetXaxis()->SetTitle("p_{T} (GeV/c)");
+         fJetPtRDMultSEOJ[ipt]->GetYaxis()->SetTitle("entries");
+         fJetPtRDMultSEOJ[ipt]->Sumw2();
+         fOutputList->Add(fJetPtRDMultSEOJ[ipt]);
+
+         fEntriesQuark[ipt] = new TH2F(Form("fEntriesQuark[%i]",ipt),"NTX of quarks in multiplicity bins, 1 jet, MC",101,-0.5,100.5, 60, 0., 300.);
+         fEntriesQuark[ipt]->GetXaxis()->SetTitle("NTracks");
+         fEntriesQuark[ipt]->GetYaxis()->SetTitle("p_{T}^{JET}");
+         fEntriesQuark[ipt]->Sumw2();
+         fOutputList->Add(fEntriesQuark[ipt]);
+
+         fEntriesGluon[ipt] = new TH2F(Form("fEntriesGluon[%i]",ipt),"NTX of gluons in multiplicity bins, 1 jet, MC",101,-0.5,100.5, 60, 0., 300.);
+         fEntriesGluon[ipt]->GetXaxis()->SetTitle("NTracks");
+         fEntriesGluon[ipt]->GetYaxis()->SetTitle("p_{T}^{JET}");
+         fEntriesGluon[ipt]->Sumw2();
+         fOutputList->Add(fEntriesGluon[ipt]);
        } // end if <8
 
       if(ipt<6)  // only entries for reconstructed || simulated jets
@@ -1003,9 +1104,10 @@ void AliAnalysisTaskPartonDisc::UserCreateOutputObjects()
                  fFragCandidates[ipt]->Sumw2();
                  fOutputList->Add(fFragCandidates[ipt]);
                  
-                 fMinTrackPtInNTXh[ipt] = new TH2F(Form("fMinTrackPtInNTXh[%i]",ipt), "Minimum track pT for the jets", 200, 0., 100., 60, 0., 300.);
+                 fMinTrackPtInNTXh[ipt] = new TH3F(Form("fMinTrackPtInNTXh[%i]",ipt), "Minimum track pT for the jets", 200, 0., 100., 60, 0., 300.,10,0.5,10.5);
                  fMinTrackPtInNTXh[ipt]->GetXaxis()->SetTitle("p_{T}^{TRACK}");
                  fMinTrackPtInNTXh[ipt]->GetYaxis()->SetTitle("p_{T}^{JET}");
+                 fMinTrackPtInNTXh[ipt]->GetZaxis()->SetTitle("Selection Bin"); //9 selection bins as fNChTrRecECorr
                  fMinTrackPtInNTXh[ipt]->Sumw2();
                  fOutputList->Add(fMinTrackPtInNTXh[ipt]);
                  
@@ -1076,6 +1178,17 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
       fEventCent = aodHeader->GetCentrality();
     }
 
+  // Random number generator seeded per event
+  TDatime dt;
+  UInt_t curtime = dt.Get();
+  UInt_t procid = gSystem->GetPid();
+  UInt_t seed = curtime-procid;
+  gRandom->SetSeed(seed);
+
+  // Jet eta exclusion
+  if(fIncreasingExcl)
+    fJetAcceptance = 0.5 - fIncExcR; // if the increase is 0.1 -> only jets within |eta|<0.4 
+
   // First test of reference multiplicity
   Int_t refMultiplicity = fAOD->GetHeader()->GetRefMultiplicity();
   fRefMult->Fill(refMultiplicity);
@@ -1208,14 +1321,18 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
       Int_t softRefMcNoJets = 0;
       Int_t myTotalMultiplicityMc = 0;
       Int_t v0LikeTotalMcMult = 0;
+      Double_t randomNum = 0.;
       for(Int_t aodMCTrack = 0; aodMCTrack < tracksMC; aodMCTrack++ )
        {
          AliAODMCParticle *mctrackf = (AliAODMCParticle*) mcarray->At(aodMCTrack);
          if(!mctrackf) continue;
          if(!mctrackf->IsPhysicalPrimary()) continue;
          if(mctrackf->Charge()==0||mctrackf->Charge()==-99) continue;
+         randomNum = gRandom->Rndm();
+         if(randomNum<fTTrackRandomRejection) continue; //rechaza fTTrackRandomRejection
+
          //Lo del V0, voy a contar particulas primarias cargadas
-         if(mctrackf->Pt()>fMinpTValMC) // cut off en MC
+         if(mctrackf->Pt()>fMinpTValMC) // cut off en MC para MIPs
            {
              //V0A
              if(((mctrackf->Eta())>(2.8))&&((mctrackf->Eta())<(5.1)))
@@ -1241,7 +1358,7 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                    }
                }
            } // end IF jet event
-         if(mctrackf->Pt()>fMinpTValMC) // cut off en MC
+         if(mctrackf->Pt()>fMinPtInGlobMult) // Min pT used in multiplicity estimation
            {
              myTotalMultiplicityMc++; // total multiplicity TPC like
              if(mctrackf->Pt()<fMinpTValUE) continue; // pT cut  fMinpTValUE
@@ -1429,6 +1546,8 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                  if(!mctrack->IsPhysicalPrimary()) continue;
                  if(mctrack->Charge()==0||mctrack->Charge()==-99) continue;
                  if(mctrack->Pt()<fMinpTVal) continue; // MC no cut in the case of track reference, should be in, NO, cut anyhow to be safe
+                 randomNum = gRandom->Rndm();
+                 if(randomNum<fJTrackRandomRejection) continue; //rechaza fJTrackRandomRejection
                  deltaPhiPt += DeltaPhiMC(mcjet, mctrack)*mctrack->Pt();
                  deltaEtaPt += DeltaEtaMC(mcjet, mctrack)*mctrack->Pt();
                  deltaPhiSqPt += DeltaPhiSqMC(mcjet, mctrack)*mctrack->Pt();
@@ -1519,6 +1638,8 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                  if(mctrack->Charge()==0||mctrack->Charge()==-99) continue;
                  if(!IsMCTrackInsideThisJet(mctrack, mcjet, jfr)) continue;
                  if(mctrack->Pt()<fMinpTVal) continue; // MC: HERE PT CUT, NO TRACK REF
+                 randomNum = gRandom->Rndm();
+                 if(randomNum<fJTrackRandomRejection) continue; //rechaza fJTrackRandomRejection
                  deltaPhiPt += DeltaPhiMC(mcjet, mctrack)*mctrack->Pt();
                  deltaEtaPt += DeltaEtaMC(mcjet, mctrack)*mctrack->Pt();
                  deltaPhiSqPt += DeltaPhiSqMC(mcjet, mctrack)*mctrack->Pt();
@@ -1621,6 +1742,8 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                  if(mctrackperp->Charge()==0||mctrackperp->Charge()==-99) continue;
                  if(!IsMCTrackInsideThisJet(mctrackperp, fPerpCone, jfr)) continue;
                  if(mctrackperp->Pt()<fMinpTVal) continue; // MC: HERE PT CUT   
+                 randomNum = gRandom->Rndm();
+                 if(randomNum<fJTrackRandomRejection) continue; //rechaza fJTrackRandomRejection
                  deltaPhiPtPerp += DeltaPhiMC(fPerpCone, mctrackperp)*mctrackperp->Pt();
                  deltaEtaPtPerp += DeltaEtaMC(fPerpCone, mctrackperp)*mctrackperp->Pt();
                  deltaPhiSqPtPerp += DeltaPhiSqMC(fPerpCone, mctrackperp)*mctrackperp->Pt();
@@ -1650,41 +1773,57 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                {
                  fNChTrRDMultOJMC[0]->Fill(nTracksPerc,jetPt);
                  fSCMRDMultOJMC[0]->Fill(secondCentralR,jetPt);
+                 fJEtaMCMultOJ[0]->Fill(mcjet->Eta());
+                 fJetPtMCMultOJ[0]->Fill(mcjet->Pt());
                }
              if(correctedV0LikeMult>=25&&correctedV0LikeMult<50)
                {
                  fNChTrRDMultOJMC[1]->Fill(nTracksPerc,jetPt);
                  fSCMRDMultOJMC[1]->Fill(secondCentralR,jetPt);
+                 fJEtaMCMultOJ[1]->Fill(mcjet->Eta());
+                 fJetPtMCMultOJ[1]->Fill(mcjet->Pt());
                }
              if(correctedV0LikeMult>=50&&correctedV0LikeMult<90)
                {
                  fNChTrRDMultOJMC[2]->Fill(nTracksPerc,jetPt);
                  fSCMRDMultOJMC[2]->Fill(secondCentralR,jetPt);
+                 fJEtaMCMultOJ[2]->Fill(mcjet->Eta());
+                 fJetPtMCMultOJ[2]->Fill(mcjet->Pt());
                }
              if(correctedV0LikeMult>=90&&correctedV0LikeMult<120)
                {
                  fNChTrRDMultOJMC[3]->Fill(nTracksPerc,jetPt);
                  fSCMRDMultOJMC[3]->Fill(secondCentralR,jetPt);
+                 fJEtaMCMultOJ[3]->Fill(mcjet->Eta());
+                 fJetPtMCMultOJ[3]->Fill(mcjet->Pt());
                }
              if(correctedV0LikeMult>=120&&correctedV0LikeMult<150)
                {
                  fNChTrRDMultOJMC[4]->Fill(nTracksPerc,jetPt);
                  fSCMRDMultOJMC[4]->Fill(secondCentralR,jetPt);
+                 fJEtaMCMultOJ[4]->Fill(mcjet->Eta());
+                 fJetPtMCMultOJ[4]->Fill(mcjet->Pt());
                }
              if(correctedV0LikeMult>=150&&correctedV0LikeMult<200)
                {
                  fNChTrRDMultOJMC[5]->Fill(nTracksPerc,jetPt);
                  fSCMRDMultOJMC[5]->Fill(secondCentralR,jetPt);
+                 fJEtaMCMultOJ[5]->Fill(mcjet->Eta());
+                 fJetPtMCMultOJ[5]->Fill(mcjet->Pt());
                }
              if(correctedV0LikeMult>=200&&correctedV0LikeMult<300)
                {
                  fNChTrRDMultOJMC[6]->Fill(nTracksPerc,jetPt);
                  fSCMRDMultOJMC[6]->Fill(secondCentralR,jetPt);
+                 fJEtaMCMultOJ[6]->Fill(mcjet->Eta());
+                 fJetPtMCMultOJ[6]->Fill(mcjet->Pt());
                }
              if(correctedV0LikeMult>=300)
                {
                  fNChTrRDMultOJMC[7]->Fill(nTracksPerc,jetPt);
                  fSCMRDMultOJMC[7]->Fill(secondCentralR,jetPt);
+                 fJEtaMCMultOJ[7]->Fill(mcjet->Eta());
+                 fJetPtMCMultOJ[7]->Fill(mcjet->Pt());
                }
              //Results for inclusive jets
              // 2nd. Reference: set to: TPC tracks minus jet, minus dijet area
@@ -1692,41 +1831,89 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                {
                  fNChTrRDMultSEOJMC[0]->Fill(nTracksPerc,jetPt);
                  fSCMRDMultSEOJMC[0]->Fill(secondCentralR,jetPt);
+                 fJEtaMCMultSEOJ[0]->Fill(mcjet->Eta());
+                 fJetPtMCMultSEOJ[0]->Fill(mcjet->Pt());
+                 if(abs(flavor)==1||abs(flavor)==2||abs(flavor)==3||abs(flavor)==4||abs(flavor)==5) //if quark jet
+                   fEntriesQuark[0]->Fill(nTracksPerc,jetPt);
+                 if(abs(flavor)==21) //if gluon jet
+                   fEntriesGluon[0]->Fill(nTracksPerc,jetPt);
                }
              if(softRefMcNoJets>=5&&softRefMcNoJets<10)
                {
                  fNChTrRDMultSEOJMC[1]->Fill(nTracksPerc,jetPt);
-                 fSCMRDMultSEOJMC[1]->Fill(secondCentralR,jetPt); 
+                 fSCMRDMultSEOJMC[1]->Fill(secondCentralR,jetPt);
+                 fJEtaMCMultSEOJ[1]->Fill(mcjet->Eta());
+                 fJetPtMCMultSEOJ[1]->Fill(mcjet->Pt()); 
+                 if(abs(flavor)==1||abs(flavor)==2||abs(flavor)==3||abs(flavor)==4||abs(flavor)==5) //if quark jet
+                   fEntriesQuark[1]->Fill(nTracksPerc,jetPt);
+                 if(abs(flavor)==21) //if gluon jet
+                   fEntriesGluon[1]->Fill(nTracksPerc,jetPt);
                }
              if(softRefMcNoJets>=10&&softRefMcNoJets<15)
                {
                  fNChTrRDMultSEOJMC[2]->Fill(nTracksPerc,jetPt);
                  fSCMRDMultSEOJMC[2]->Fill(secondCentralR,jetPt);
+                 fJEtaMCMultSEOJ[2]->Fill(mcjet->Eta());
+                 fJetPtMCMultSEOJ[2]->Fill(mcjet->Pt());
+                 if(abs(flavor)==1||abs(flavor)==2||abs(flavor)==3||abs(flavor)==4||abs(flavor)==5) //if quark jet
+                   fEntriesQuark[2]->Fill(nTracksPerc,jetPt);
+                 if(abs(flavor)==21) //if gluon jet
+                   fEntriesGluon[2]->Fill(nTracksPerc,jetPt);
                }
              if(softRefMcNoJets>=15&&softRefMcNoJets<20)
                {
                  fNChTrRDMultSEOJMC[3]->Fill(nTracksPerc,jetPt);
                  fSCMRDMultSEOJMC[3]->Fill(secondCentralR,jetPt);
+                 fJEtaMCMultSEOJ[3]->Fill(mcjet->Eta());
+                 fJetPtMCMultSEOJ[3]->Fill(mcjet->Pt());
+                 if(abs(flavor)==1||abs(flavor)==2||abs(flavor)==3||abs(flavor)==4||abs(flavor)==5) //if quark jet
+                   fEntriesQuark[3]->Fill(nTracksPerc,jetPt);
+                 if(abs(flavor)==21) //if gluon jet
+                   fEntriesGluon[3]->Fill(nTracksPerc,jetPt);
                }
              if(softRefMcNoJets>=20&&softRefMcNoJets<30)
                {
                  fNChTrRDMultSEOJMC[4]->Fill(nTracksPerc,jetPt);
                  fSCMRDMultSEOJMC[4]->Fill(secondCentralR,jetPt);
+                 fJEtaMCMultSEOJ[4]->Fill(mcjet->Eta());
+                 fJetPtMCMultSEOJ[4]->Fill(mcjet->Pt());
+                 if(abs(flavor)==1||abs(flavor)==2||abs(flavor)==3||abs(flavor)==4||abs(flavor)==5) //if quark jet
+                   fEntriesQuark[4]->Fill(nTracksPerc,jetPt);
+                 if(abs(flavor)==21) //if gluon jet
+                   fEntriesGluon[4]->Fill(nTracksPerc,jetPt);
                }
              if(softRefMcNoJets>=30&&softRefMcNoJets<40)
                {
                  fNChTrRDMultSEOJMC[5]->Fill(nTracksPerc,jetPt);
                  fSCMRDMultSEOJMC[5]->Fill(secondCentralR,jetPt);
+                 fJEtaMCMultSEOJ[5]->Fill(mcjet->Eta());
+                 fJetPtMCMultSEOJ[5]->Fill(mcjet->Pt());
+                 if(abs(flavor)==1||abs(flavor)==2||abs(flavor)==3||abs(flavor)==4||abs(flavor)==5) //if quark jet
+                   fEntriesQuark[5]->Fill(nTracksPerc,jetPt);
+                 if(abs(flavor)==21) //if gluon jet
+                   fEntriesGluon[5]->Fill(nTracksPerc,jetPt);
                }
              if(softRefMcNoJets>=40&&softRefMcNoJets<50)
                {
                  fNChTrRDMultSEOJMC[6]->Fill(nTracksPerc,jetPt);
                  fSCMRDMultSEOJMC[6]->Fill(secondCentralR,jetPt);
+                 fJEtaMCMultSEOJ[6]->Fill(mcjet->Eta());
+                 fJetPtMCMultSEOJ[6]->Fill(mcjet->Pt());
+                 if(abs(flavor)==1||abs(flavor)==2||abs(flavor)==3||abs(flavor)==4||abs(flavor)==5) //if quark jet
+                   fEntriesQuark[6]->Fill(nTracksPerc,jetPt);
+                 if(abs(flavor)==21) //if gluon jet
+                   fEntriesGluon[6]->Fill(nTracksPerc,jetPt);
                }
              if(softRefMcNoJets>=50)
                {           
                  fNChTrRDMultSEOJMC[7]->Fill(nTracksPerc,jetPt);
                  fSCMRDMultSEOJMC[7]->Fill(secondCentralR,jetPt);
+                 fJEtaMCMultSEOJ[7]->Fill(mcjet->Eta());
+                 fJetPtMCMultSEOJ[7]->Fill(mcjet->Pt());
+                 if(abs(flavor)==1||abs(flavor)==2||abs(flavor)==3||abs(flavor)==4||abs(flavor)==5) //if quark jet
+                   fEntriesQuark[7]->Fill(nTracksPerc,jetPt);
+                 if(abs(flavor)==21) //if gluon jet
+                   fEntriesGluon[7]->Fill(nTracksPerc,jetPt);
                }
            }
          //End results for inclusive jets,starts parton by parton
@@ -1738,7 +1925,7 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
              fProcessPDG[0]->Fill(jetPt,evtype);
              fHistPtParton[0]->Fill(jetPt);
              fSCM[0]->Fill(secondCentralR,jetPt);
-             fMinTrackPtInNTXh[0]->Fill(fMinTrackPtInNTX,jetPt); // 0 for MC
+             fMinTrackPtInNTXh[0]->Fill(fMinTrackPtInNTX,jetPt,1); // 0 for pp MC
              fMaxTrackPtInNTXh[0]->Fill(fMaxTrackPtInNTX,jetPt); // 0 for MC
              if(fIsPossibleToSubstBckg)
                {
@@ -1755,7 +1942,7 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
              fProcessPDG[1]->Fill(jetPt,evtype);
              fHistPtParton[1]->Fill(jetPt);
              fSCM[1]->Fill(secondCentralR,jetPt);
-             fMinTrackPtInNTXh[0]->Fill(fMinTrackPtInNTX,jetPt); // 0 for MC
+             fMinTrackPtInNTXh[0]->Fill(fMinTrackPtInNTX,jetPt,1); // 0 for pp MC
              fMaxTrackPtInNTXh[0]->Fill(fMaxTrackPtInNTX,jetPt); // 0 for MC
              if(fIsPossibleToSubstBckg)
                {
@@ -1772,7 +1959,7 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
              fProcessPDG[2]->Fill(jetPt,evtype);
              fHistPtParton[2]->Fill(jetPt);
              fSCM[2]->Fill(secondCentralR,jetPt);
-             fMinTrackPtInNTXh[0]->Fill(fMinTrackPtInNTX,jetPt); // 0 for MC
+             fMinTrackPtInNTXh[0]->Fill(fMinTrackPtInNTX,jetPt,1); // 0 for pp MC
              fMaxTrackPtInNTXh[0]->Fill(fMaxTrackPtInNTX,jetPt); // 0 for MC
              if(fIsPossibleToSubstBckg)
                {
@@ -1789,7 +1976,7 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
              fProcessPDG[3]->Fill(jetPt,evtype);
              fHistPtParton[3]->Fill(jetPt);
              fSCM[3]->Fill(secondCentralR,jetPt);
-             fMinTrackPtInNTXh[0]->Fill(fMinTrackPtInNTX,jetPt); // 0 for MC
+             fMinTrackPtInNTXh[0]->Fill(fMinTrackPtInNTX,jetPt,1); // 0 for pp MC
              fMaxTrackPtInNTXh[0]->Fill(fMaxTrackPtInNTX,jetPt); // 0 for MC
              if(fIsPossibleToSubstBckg)
                {
@@ -1806,7 +1993,7 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
              fProcessPDG[4]->Fill(jetPt,evtype);
              fHistPtParton[4]->Fill(jetPt);
              fSCM[4]->Fill(secondCentralR,jetPt);
-             fMinTrackPtInNTXh[0]->Fill(fMinTrackPtInNTX,jetPt); // 0 for MC
+             fMinTrackPtInNTXh[0]->Fill(fMinTrackPtInNTX,jetPt,1); // 0 for pp MC
              fMaxTrackPtInNTXh[0]->Fill(fMaxTrackPtInNTX,jetPt); // 0 for MC
              if(fIsPossibleToSubstBckg)
                {
@@ -1823,7 +2010,7 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
              fProcessPDG[5]->Fill(jetPt,evtype);
              fHistPtParton[5]->Fill(jetPt);
              fSCM[5]->Fill(secondCentralR,jetPt);
-             fMinTrackPtInNTXh[0]->Fill(fMinTrackPtInNTX,jetPt); // 0 for MC
+             fMinTrackPtInNTXh[0]->Fill(fMinTrackPtInNTX,jetPt,1); // 0 for pp MC
              fMaxTrackPtInNTXh[0]->Fill(fMaxTrackPtInNTX,jetPt); // 0 for MC
              if(fIsPossibleToSubstBckg)
                {
@@ -1968,7 +2155,6 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
          aodtracketa = TMath::Abs(aodtrack->Eta());
          if(aodtracketa>0.9) continue;
          if(!aodtrack->TestFilterBit(fFilterBit)) continue; //track filter selection
-         if(!aodtrack->IsPrimaryCandidate()) continue; // only primaries, maybe is redundant with the previous selection...
          fEtaAOD->Fill(aodtrack->Eta(),aodtrack->Eta());
          fPhiAOD->Fill(aodtrack->Phi(),aodtrack->Phi());
          fPtAOD->Fill(aodtrack->Pt(),aodtrack->Pt());
@@ -1984,12 +2170,15 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                }
            } // end if jet event
          //Total TPC multiplicity of primaries
-         myTotalMultRef++;
-         if(aodtrack->Pt()<fMinpTValUE) continue; // pT cut  fMinpTValUE
-         if(aodtrack->Pt()>fMaxpTValUE) continue; // pT cut  fMaxpTValUE
-         myTotalSoftMultRef++;  
-         if(!IsTrackInsideExcludedArea(aodtrack->Eta(), aodtrack->Phi(), aodRecJets)) 
-           refNJMult++;
+         if(aodtrack->Pt()>fMinPtInGlobMult) // Min pT used in multiplicity estimation
+           {
+             myTotalMultRef++;
+             if(aodtrack->Pt()<fMinpTValUE) continue; // pT cut  fMinpTValUE
+             if(aodtrack->Pt()>fMaxpTValUE) continue; // pT cut  fMaxpTValUE
+             myTotalSoftMultRef++;  
+             if(!IsTrackInsideExcludedArea(aodtrack->Eta(), aodtrack->Phi(), aodRecJets)) 
+               refNJMult++;
+           }
        } // end track loop over the event...
 
       fRefMultWOJet->Fill(refMultiplicity,refNJMult); 
@@ -2073,7 +2262,8 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
          secondCentralPhi = 0.0;
          secondCentralEta = 0.0;
          secondCentralR = 0.0;
-         
+         fTotTracksInCone=0; // Underflown at initialization per jet
+
          AliAODJet *rjet = dynamic_cast<AliAODJet*>(aodRecJets->At(indxrec));
          if (!rjet) 
            {
@@ -2138,17 +2328,12 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                      //                      printf("Rejecting track from track refs due to wrong filterbit! \n");
                      continue; //track filter selection
                    }
-                 if(!aodtrack->IsPrimaryCandidate())
-                   {
-                     //                      printf("Rejecting track from track refs due to no primary candidate! \n");
-                     continue; // only primaries
-                   }
                  deltaPhiPt += DeltaPhiTrack(rjet, aodtrack)*aodtrack->Pt();
                  deltaEtaPt += DeltaEtaTrack(rjet, aodtrack)*aodtrack->Pt();
                  deltaPhiSqPt += DeltaPhiSqTrack(rjet, aodtrack)*aodtrack->Pt();
                  deltaEtaSqPt += DeltaEtaSqTrack(rjet, aodtrack)*aodtrack->Pt();
                  totalTrackPt += aodtrack->Pt();
-                 
+                 fTotTracksInCone++; // Counting tracks                  
                  if(!IsEqualRel(aodtrack->Pt(), 0.0)) //!IsEqualRel(totalTrackPtPerp, 0.0) //aodtrack->Pt()!=0
                    aodtrackxi= log(rjet->Pt()/aodtrack->Pt());
                  if(irecj<maxJetNum)
@@ -2184,14 +2369,13 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                  if(!aodtrack) continue;
                  if(!IsTrackInsideThisJet(aodtrack, rjet, jfr)) continue;
                  if(!aodtrack->TestFilterBit(fFilterBit)) continue; //track filter selection
-                 if(!aodtrack->IsPrimaryCandidate()) continue; // only primaries, perhaps redundant with the previous
                  if(aodtrack->Pt()<fMinpTVal) continue; //DATA: PT CUT
                  deltaPhiPt += DeltaPhiTrack(rjet, aodtrack)*aodtrack->Pt();
                  deltaEtaPt += DeltaEtaTrack(rjet, aodtrack)*aodtrack->Pt();
                  deltaPhiSqPt += DeltaPhiSqTrack(rjet, aodtrack)*aodtrack->Pt();
                  deltaEtaSqPt += DeltaEtaSqTrack(rjet, aodtrack)*aodtrack->Pt();
                  totalTrackPt += aodtrack->Pt();
-                 
+                 fTotTracksInCone++; // Counting tracks          
                  if(!IsEqualRel(aodtrack->Pt(), 0.0)) //!IsEqualRel(totalTrackPt, 0.0) //aodtrack->Pt()!=0
                    aodtrackxi= log(rjet->Pt()/aodtrack->Pt());
                  if(irecj<maxJetNum)
@@ -2262,7 +2446,6 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                  if(!aodtrackperprec) continue;
                  if(!IsTrackInsideThisJet(aodtrackperprec, fPerpCone, jfr)) continue;
                  if(!aodtrackperprec->TestFilterBit(fFilterBit)) continue; //track filter selection
-                 if(!aodtrackperprec->IsPrimaryCandidate()) continue; // only primaries, perhaps redundant with the previous
                  if(aodtrackperprec->Pt()<fMinpTVal) continue; //DATA: PT CUT
                  deltaPhiPtPerp += DeltaPhiTrack(fPerpCone, aodtrackperprec)*aodtrackperprec->Pt();
                  deltaEtaPtPerp += DeltaEtaTrack(fPerpCone, aodtrackperprec)*aodtrackperprec->Pt();
@@ -2314,6 +2497,8 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                {
                  fNChTrRDMultOJ[0]->Fill(ntxreco,rjet->Pt());
                  fSCMRDMultOJ[0]->Fill(secondCentralR,rjet->Pt());
+                 fJEtaRDMultOJ[0]->Fill(rjet->Eta());
+                 fJetPtRDMultOJ[0]->Fill(rjet->Pt());
                }
            }
          if(v0CorrMult>=25&&v0CorrMult<50)
@@ -2325,6 +2510,8 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                {
                  fNChTrRDMultOJ[1]->Fill(ntxreco,rjet->Pt());
                  fSCMRDMultOJ[1]->Fill(secondCentralR,rjet->Pt());
+                 fJEtaRDMultOJ[1]->Fill(rjet->Eta());
+                 fJetPtRDMultOJ[1]->Fill(rjet->Pt());
                }
            }
          if(v0CorrMult>=50&&v0CorrMult<90)
@@ -2336,6 +2523,8 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                {
                  fNChTrRDMultOJ[2]->Fill(ntxreco,rjet->Pt());
                  fSCMRDMultOJ[2]->Fill(secondCentralR,rjet->Pt());
+                 fJEtaRDMultOJ[2]->Fill(rjet->Eta());
+                 fJetPtRDMultOJ[2]->Fill(rjet->Pt());
                }
            }
          if(v0CorrMult>=90&&v0CorrMult<120)
@@ -2347,6 +2536,8 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                {
                  fNChTrRDMultOJ[3]->Fill(ntxreco,rjet->Pt());
                  fSCMRDMultOJ[3]->Fill(secondCentralR,rjet->Pt());
+                 fJEtaRDMultOJ[3]->Fill(rjet->Eta());
+                 fJetPtRDMultOJ[3]->Fill(rjet->Pt());
                }
            }
          if(v0CorrMult>=120&&v0CorrMult<150)
@@ -2358,6 +2549,8 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                {
                  fNChTrRDMultOJ[4]->Fill(ntxreco,rjet->Pt());
                  fSCMRDMultOJ[4]->Fill(secondCentralR,rjet->Pt());
+                 fJEtaRDMultOJ[4]->Fill(rjet->Eta());
+                 fJetPtRDMultOJ[4]->Fill(rjet->Pt());
                }
            }
          if(v0CorrMult>=150&&v0CorrMult<200)
@@ -2369,6 +2562,8 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                {
                  fNChTrRDMultOJ[5]->Fill(ntxreco,rjet->Pt());
                  fSCMRDMultOJ[5]->Fill(secondCentralR,rjet->Pt());
+                 fJEtaRDMultOJ[5]->Fill(rjet->Eta());
+                 fJetPtRDMultOJ[5]->Fill(rjet->Pt());
                }
            }
          if(v0CorrMult>=200&&v0CorrMult<300)
@@ -2380,6 +2575,8 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                {
                  fNChTrRDMultOJ[6]->Fill(ntxreco,rjet->Pt());
                  fSCMRDMultOJ[6]->Fill(secondCentralR,rjet->Pt());
+                 fJEtaRDMultOJ[6]->Fill(rjet->Eta());
+                 fJetPtRDMultOJ[6]->Fill(rjet->Pt());
                }
            }
          if(v0CorrMult>=300)
@@ -2391,6 +2588,8 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                {
                  fNChTrRDMultOJ[7]->Fill(ntxreco,rjet->Pt());
                  fSCMRDMultOJ[7]->Fill(secondCentralR,rjet->Pt());
+                 fJEtaRDMultOJ[7]->Fill(rjet->Eta());
+                 fJetPtRDMultOJ[7]->Fill(rjet->Pt());
                }
            }
 
@@ -2404,6 +2603,8 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                {
                  fNChTrRDMultSEOJ[0]->Fill(ntxreco,rjet->Pt());
                  fSCMRDMultSEOJ[0]->Fill(secondCentralR,rjet->Pt());
+                 fJEtaRDMultSEOJ[0]->Fill(rjet->Eta());
+                 fJetPtRDMultSEOJ[0]->Fill(rjet->Pt());
                  if(!IsEqualRel(fCurrentJetMinPtNT90, 7000.))
                    fNChTrRecPerpMultSEOJ[0]->Fill(nTRecAboveThresholdPerp,rjet->Pt());  
                  if(fIsPossibleToSubstBckg) // if it was possible to calculate a perpendicular cone
@@ -2422,6 +2623,8 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                {
                  fNChTrRDMultSEOJ[1]->Fill(ntxreco,rjet->Pt());
                  fSCMRDMultSEOJ[1]->Fill(secondCentralR,rjet->Pt());
+                 fJEtaRDMultSEOJ[1]->Fill(rjet->Eta());
+                 fJetPtRDMultSEOJ[1]->Fill(rjet->Pt());
                  if(!IsEqualRel(fCurrentJetMinPtNT90, 7000.))
                    fNChTrRecPerpMultSEOJ[1]->Fill(nTRecAboveThresholdPerp,rjet->Pt());  
                  if(fIsPossibleToSubstBckg) // if it was possible to calculate a perpendicular cone
@@ -2440,6 +2643,8 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                {
                  fNChTrRDMultSEOJ[2]->Fill(ntxreco,rjet->Pt());
                  fSCMRDMultSEOJ[2]->Fill(secondCentralR,rjet->Pt());
+                 fJEtaRDMultSEOJ[2]->Fill(rjet->Eta());
+                 fJetPtRDMultSEOJ[2]->Fill(rjet->Pt());
                  if(!IsEqualRel(fCurrentJetMinPtNT90, 7000.))
                    fNChTrRecPerpMultSEOJ[2]->Fill(nTRecAboveThresholdPerp,rjet->Pt()); 
                  if(fIsPossibleToSubstBckg) // if it was possible to calculate a perpendicular cone
@@ -2458,6 +2663,8 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                {
                  fNChTrRDMultSEOJ[3]->Fill(ntxreco,rjet->Pt());
                  fSCMRDMultSEOJ[3]->Fill(secondCentralR,rjet->Pt());
+                 fJEtaRDMultSEOJ[3]->Fill(rjet->Eta());
+                 fJetPtRDMultSEOJ[3]->Fill(rjet->Pt());
                  if(!IsEqualRel(fCurrentJetMinPtNT90, 7000.))
                    fNChTrRecPerpMultSEOJ[3]->Fill(nTRecAboveThresholdPerp,rjet->Pt()); 
                  if(fIsPossibleToSubstBckg) // if it was possible to calculate a perpendicular cone
@@ -2476,6 +2683,8 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                {
                  fNChTrRDMultSEOJ[4]->Fill(ntxreco,rjet->Pt());
                  fSCMRDMultSEOJ[4]->Fill(secondCentralR,rjet->Pt());
+                 fJEtaRDMultSEOJ[4]->Fill(rjet->Eta());
+                 fJetPtRDMultSEOJ[4]->Fill(rjet->Pt());
                  if(!IsEqualRel(fCurrentJetMinPtNT90, 7000.))
                    fNChTrRecPerpMultSEOJ[4]->Fill(nTRecAboveThresholdPerp,rjet->Pt());  
                  if(fIsPossibleToSubstBckg) // if it was possible to calculate a perpendicular cone
@@ -2494,6 +2703,8 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                {
                  fNChTrRDMultSEOJ[5]->Fill(ntxreco,rjet->Pt());
                  fSCMRDMultSEOJ[5]->Fill(secondCentralR,rjet->Pt());
+                 fJEtaRDMultSEOJ[5]->Fill(rjet->Eta());
+                 fJetPtRDMultSEOJ[5]->Fill(rjet->Pt());
                  if(!IsEqualRel(fCurrentJetMinPtNT90, 7000.))
                    fNChTrRecPerpMultSEOJ[5]->Fill(nTRecAboveThresholdPerp,rjet->Pt());  
                  if(fIsPossibleToSubstBckg) // if it was possible to calculate a perpendicular cone
@@ -2512,6 +2723,8 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                {
                  fNChTrRDMultSEOJ[6]->Fill(ntxreco,rjet->Pt());
                  fSCMRDMultSEOJ[6]->Fill(secondCentralR,rjet->Pt());
+                 fJEtaRDMultSEOJ[6]->Fill(rjet->Eta());
+                 fJetPtRDMultSEOJ[6]->Fill(rjet->Pt());
                  if(!IsEqualRel(fCurrentJetMinPtNT90, 7000.))
                    fNChTrRecPerpMultSEOJ[6]->Fill(nTRecAboveThresholdPerp,rjet->Pt());  
                  if(fIsPossibleToSubstBckg) // if it was possible to calculate a perpendicular cone
@@ -2530,6 +2743,8 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                {
                  fNChTrRDMultSEOJ[7]->Fill(ntxreco,rjet->Pt());
                  fSCMRDMultSEOJ[7]->Fill(secondCentralR,rjet->Pt());
+                 fJEtaRDMultSEOJ[7]->Fill(rjet->Eta());
+                 fJetPtRDMultSEOJ[7]->Fill(rjet->Pt());
                  if(!IsEqualRel(fCurrentJetMinPtNT90, 7000.))
                    fNChTrRecPerpMultSEOJ[7]->Fill(nTRecAboveThresholdPerp,rjet->Pt());  
                  if(fIsPossibleToSubstBckg) // if it was possible to calculate a perpendicular cone
@@ -2554,41 +2769,49 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                      if((rjet->Pt()>10.)&&(rjet->Pt()<20.))
                        {
                          fPtInPerpCon->Fill(fPerpCone->Pt(),1,1);
+                         fTotTracksCone->Fill(fTotTracksInCone,1,1);
                          FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 1, 1);
                        }
                      if((rjet->Pt()>20.)&&(rjet->Pt()<30.))
                        {
                          fPtInPerpCon->Fill(fPerpCone->Pt(),2,1);
+                         fTotTracksCone->Fill(fTotTracksInCone,2,1);
                          FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 1, 2);
                        }
                      if((rjet->Pt()>30.)&&(rjet->Pt()<40.))
                        {
                          fPtInPerpCon->Fill(fPerpCone->Pt(),3,1);
+                         fTotTracksCone->Fill(fTotTracksInCone,3,1);
                          FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 1, 3);
                        }
                      if((rjet->Pt()>40.)&&(rjet->Pt()<50.))
                        {
                          fPtInPerpCon->Fill(fPerpCone->Pt(),4,1);
+                         fTotTracksCone->Fill(fTotTracksInCone,4,1);
                          FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 1, 4);
                        }
                      if((rjet->Pt()>50.)&&(rjet->Pt()<60.))
                        {
                          fPtInPerpCon->Fill(fPerpCone->Pt(),5,1);
+                         fTotTracksCone->Fill(fTotTracksInCone,5,1);
                          FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 1, 5);
                        }
                      if((rjet->Pt()>60.)&&(rjet->Pt()<70.))
                        {
                          fPtInPerpCon->Fill(fPerpCone->Pt(),6,1);
+                         fTotTracksCone->Fill(fTotTracksInCone,6,1);
                          FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 1, 6);
                        }
                      if((rjet->Pt()>70.)&&(rjet->Pt()<80.))
                        {
                          fPtInPerpCon->Fill(fPerpCone->Pt(),7,1);
+                         fTotTracksCone->Fill(fTotTracksInCone,7,1);
                          FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 1, 7);
                        }
                      if((rjet->Pt()>80.)&&(rjet->Pt()<90.))
                        {
                          fPtInPerpCon->Fill(fPerpCone->Pt(),8,1); 
+                         fTotTracksCone->Fill(fTotTracksInCone,8,1);
                          FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 1, 8);
                        }
                    }
@@ -2598,47 +2821,59 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                  if(fEventCent>=0&&fEventCent<10.)
                    {
                      fNChTrRecECorr->Fill(ntxrecoRecalc,pTbs,2); //filling first centrality bin
+                     fJetPtCentPbPbRaw->Fill(rjet->Pt(),2); 
+                     fJetPtCentPbPbCorr->Fill(pTbs,2); 
                      if(!IsEqualRel(fCurrentJetMinPtNT90Recalc, 7000.))
                        {
                          fNChTrRecPerpECorr->Fill(nTRecAboveThresholdPerpRecalc,pTbs,2); //filling first centrality bin
+                         fMinTrackPtInNTXRecalc->Fill(fMinTrackPtInNTXR,rjet->Pt(),2); 
+                         fMinTrackPtInNTXh[1]->Fill(fMinTrackPtInNTX,rjet->Pt(),2); 
                          if((rjet->Pt()>10.)&&(rjet->Pt()<20.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),1,2);
+                             fTotTracksCone->Fill(fTotTracksInCone,1,2);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 2, 1);
                            }
                          if((rjet->Pt()>20.)&&(rjet->Pt()<30.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),2,2);
+                             fTotTracksCone->Fill(fTotTracksInCone,2,2);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 2, 2);
                            }
                          if((rjet->Pt()>30.)&&(rjet->Pt()<40.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),3,2);
+                             fTotTracksCone->Fill(fTotTracksInCone,3,2);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 2, 3);
                            }
                          if((rjet->Pt()>40.)&&(rjet->Pt()<50.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),4,2);
+                             fTotTracksCone->Fill(fTotTracksInCone,4,2);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 2, 4);
                            }
                          if((rjet->Pt()>50.)&&(rjet->Pt()<60.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),5,2);
+                             fTotTracksCone->Fill(fTotTracksInCone,5,2);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 2, 5);
                            }
                          if((rjet->Pt()>60.)&&(rjet->Pt()<70.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),6,2);
+                             fTotTracksCone->Fill(fTotTracksInCone,6,2);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 2, 6);
                            }
                          if((rjet->Pt()>70.)&&(rjet->Pt()<80.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),7,2);
+                             fTotTracksCone->Fill(fTotTracksInCone,7,2);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 2, 7);
                            }
                          if((rjet->Pt()>80.)&&(rjet->Pt()<90.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),8,2);
+                             fTotTracksCone->Fill(fTotTracksInCone,8,2);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 2, 8);
                            }
                        }
@@ -2646,47 +2881,59 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                  if(fEventCent>=10&&fEventCent<20.)
                    {
                      fNChTrRecECorr->Fill(ntxrecoRecalc,pTbs,3); //filling second centrality bin
+                     fJetPtCentPbPbRaw->Fill(rjet->Pt(),3); 
+                     fJetPtCentPbPbCorr->Fill(pTbs,3); 
                      if(!IsEqualRel(fCurrentJetMinPtNT90Recalc, 7000.))
                        {
                          fNChTrRecPerpECorr->Fill(nTRecAboveThresholdPerpRecalc,pTbs,3); //filling second centrality bin
+                         fMinTrackPtInNTXRecalc->Fill(fMinTrackPtInNTXR,rjet->Pt(),3); 
+                         fMinTrackPtInNTXh[1]->Fill(fMinTrackPtInNTX,rjet->Pt(),3); 
                          if((rjet->Pt()>10.)&&(rjet->Pt()<20.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),1,3);
+                             fTotTracksCone->Fill(fTotTracksInCone,1,3);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 3, 1);
                            }
                          if((rjet->Pt()>20.)&&(rjet->Pt()<30.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),2,3);
+                             fTotTracksCone->Fill(fTotTracksInCone,2,3);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 3, 2);
                            }
                          if((rjet->Pt()>30.)&&(rjet->Pt()<40.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),3,3);
+                             fTotTracksCone->Fill(fTotTracksInCone,3,3);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 3, 3);
                            }
                          if((rjet->Pt()>40.)&&(rjet->Pt()<50.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),4,3);
+                             fTotTracksCone->Fill(fTotTracksInCone,4,3);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 3, 4);
                            }
                          if((rjet->Pt()>50.)&&(rjet->Pt()<60.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),5,3);
+                             fTotTracksCone->Fill(fTotTracksInCone,5,3);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 3, 5);
                            }
                          if((rjet->Pt()>60.)&&(rjet->Pt()<70.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),6,3);
+                             fTotTracksCone->Fill(fTotTracksInCone,6,3);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 3, 6);
                            }
                          if((rjet->Pt()>70.)&&(rjet->Pt()<80.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),7,3);
+                             fTotTracksCone->Fill(fTotTracksInCone,7,3);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 3, 7);
                            }
                          if((rjet->Pt()>80.)&&(rjet->Pt()<90.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),8,3);
+                             fTotTracksCone->Fill(fTotTracksInCone,8,3);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 3, 8);
                            }
                        }
@@ -2694,47 +2941,59 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                  if(fEventCent>=20&&fEventCent<30.)
                    {
                      fNChTrRecECorr->Fill(ntxrecoRecalc,pTbs,4); //filling third centrality bin
+                     fJetPtCentPbPbRaw->Fill(rjet->Pt(),4); 
+                     fJetPtCentPbPbCorr->Fill(pTbs,4); 
                      if(!IsEqualRel(fCurrentJetMinPtNT90Recalc, 7000.))
                        {
                          fNChTrRecPerpECorr->Fill(nTRecAboveThresholdPerpRecalc,pTbs,4); //filling third centrality bin
+                         fMinTrackPtInNTXRecalc->Fill(fMinTrackPtInNTXR,rjet->Pt(),4); 
+                         fMinTrackPtInNTXh[1]->Fill(fMinTrackPtInNTX,rjet->Pt(),4); 
                          if((rjet->Pt()>10.)&&(rjet->Pt()<20.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),1,4);
+                             fTotTracksCone->Fill(fTotTracksInCone,1,4);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 4, 1);
                            }
                          if((rjet->Pt()>20.)&&(rjet->Pt()<30.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),2,4);
+                             fTotTracksCone->Fill(fTotTracksInCone,2,4);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 4, 2);
                            }
                          if((rjet->Pt()>30.)&&(rjet->Pt()<40.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),3,4);
+                             fTotTracksCone->Fill(fTotTracksInCone,3,4);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 4, 3);
                            }
                          if((rjet->Pt()>40.)&&(rjet->Pt()<50.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),4,4);
+                             fTotTracksCone->Fill(fTotTracksInCone,4,4);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 4, 4);
                            }
                          if((rjet->Pt()>50.)&&(rjet->Pt()<60.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),5,4);
+                             fTotTracksCone->Fill(fTotTracksInCone,5,4);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 4, 5);
                            }
                          if((rjet->Pt()>60.)&&(rjet->Pt()<70.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),6,4);
+                             fTotTracksCone->Fill(fTotTracksInCone,6,4);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 4, 6);
                            }
                          if((rjet->Pt()>70.)&&(rjet->Pt()<80.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),7,4);
+                             fTotTracksCone->Fill(fTotTracksInCone,7,4);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 4, 7);
                            }
                          if((rjet->Pt()>80.)&&(rjet->Pt()<90.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),8,4);
+                             fTotTracksCone->Fill(fTotTracksInCone,8,4);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 4, 8);
                            }
                        }
@@ -2742,47 +3001,59 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                  if(fEventCent>=30&&fEventCent<40.)
                    {
                      fNChTrRecECorr->Fill(ntxrecoRecalc,pTbs,5); //filling fourth centrality bin
+                     fJetPtCentPbPbRaw->Fill(rjet->Pt(),5); 
+                     fJetPtCentPbPbCorr->Fill(pTbs,5); 
                      if(!IsEqualRel(fCurrentJetMinPtNT90Recalc, 7000.))
                        {
                          fNChTrRecPerpECorr->Fill(nTRecAboveThresholdPerpRecalc,pTbs,5); //filling fourth centrality bin
+                         fMinTrackPtInNTXRecalc->Fill(fMinTrackPtInNTXR,rjet->Pt(),5); 
+                         fMinTrackPtInNTXh[1]->Fill(fMinTrackPtInNTX,rjet->Pt(),5); 
                          if((rjet->Pt()>10.)&&(rjet->Pt()<20.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),1,5);
+                             fTotTracksCone->Fill(fTotTracksInCone,1,5);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 5, 1);
                            }
                          if((rjet->Pt()>20.)&&(rjet->Pt()<30.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),2,5);
+                             fTotTracksCone->Fill(fTotTracksInCone,2,5);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 5, 2);
                            }
                          if((rjet->Pt()>30.)&&(rjet->Pt()<40.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),3,5);
+                             fTotTracksCone->Fill(fTotTracksInCone,3,5);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 5, 3);
                            }
                          if((rjet->Pt()>40.)&&(rjet->Pt()<50.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),4,5);
+                             fTotTracksCone->Fill(fTotTracksInCone,4,5);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 5, 4);
                            }
                          if((rjet->Pt()>50.)&&(rjet->Pt()<60.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),5,5);
+                             fTotTracksCone->Fill(fTotTracksInCone,5,5);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 5, 5);
                            }
                          if((rjet->Pt()>60.)&&(rjet->Pt()<70.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),6,5);
+                             fTotTracksCone->Fill(fTotTracksInCone,6,5);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 5, 6);
                            }
                          if((rjet->Pt()>70.)&&(rjet->Pt()<80.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),7,5);
+                             fTotTracksCone->Fill(fTotTracksInCone,7,5);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 5, 7);
                            }
                          if((rjet->Pt()>80.)&&(rjet->Pt()<90.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),8,5);
+                             fTotTracksCone->Fill(fTotTracksInCone,8,5);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 5, 8);
                            }
                        }
@@ -2790,47 +3061,59 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                  if(fEventCent>=40&&fEventCent<50.)
                    {
                      fNChTrRecECorr->Fill(ntxrecoRecalc,pTbs,6); //filling fourth centrality bin
+                     fJetPtCentPbPbRaw->Fill(rjet->Pt(),6); 
+                     fJetPtCentPbPbCorr->Fill(pTbs,6); 
                      if(!IsEqualRel(fCurrentJetMinPtNT90Recalc, 7000.))
                        {
                          fNChTrRecPerpECorr->Fill(nTRecAboveThresholdPerpRecalc,pTbs,6); //filling fourth centrality bin
+                         fMinTrackPtInNTXRecalc->Fill(fMinTrackPtInNTXR,rjet->Pt(),6); 
+                         fMinTrackPtInNTXh[1]->Fill(fMinTrackPtInNTX,rjet->Pt(),6); 
                          if((rjet->Pt()>10.)&&(rjet->Pt()<20.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),1,6);
+                             fTotTracksCone->Fill(fTotTracksInCone,1,6);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 6, 1);
                            }
                          if((rjet->Pt()>20.)&&(rjet->Pt()<30.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),2,6);
+                             fTotTracksCone->Fill(fTotTracksInCone,2,6);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 6, 2);
                            }
                          if((rjet->Pt()>30.)&&(rjet->Pt()<40.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),3,6);
+                             fTotTracksCone->Fill(fTotTracksInCone,3,6);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 6, 3);
                            }
                          if((rjet->Pt()>40.)&&(rjet->Pt()<50.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),4,6);
+                             fTotTracksCone->Fill(fTotTracksInCone,4,6);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 6, 4);
                            }
                          if((rjet->Pt()>50.)&&(rjet->Pt()<60.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),5,6);
+                             fTotTracksCone->Fill(fTotTracksInCone,5,6);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 6, 5);
                            }
                          if((rjet->Pt()>60.)&&(rjet->Pt()<70.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),6,6);
+                             fTotTracksCone->Fill(fTotTracksInCone,6,6);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 6, 6);
                            }
                          if((rjet->Pt()>70.)&&(rjet->Pt()<80.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),7,6);
+                             fTotTracksCone->Fill(fTotTracksInCone,7,6);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 6, 7);
                            }
                          if((rjet->Pt()>80.)&&(rjet->Pt()<90.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),8,6);
+                             fTotTracksCone->Fill(fTotTracksInCone,8,6);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 6, 8);
                            }
                        }
@@ -2838,47 +3121,59 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                  if(fEventCent>=50&&fEventCent<60.)
                    {
                      fNChTrRecECorr->Fill(ntxrecoRecalc,pTbs,7); //filling fourth centrality bin
+                     fJetPtCentPbPbRaw->Fill(rjet->Pt(),7); 
+                     fJetPtCentPbPbCorr->Fill(pTbs,7); 
                      if(!IsEqualRel(fCurrentJetMinPtNT90Recalc, 7000.))
                        {
                          fNChTrRecPerpECorr->Fill(nTRecAboveThresholdPerpRecalc,pTbs,7); //filling fourth centrality bin
+                         fMinTrackPtInNTXRecalc->Fill(fMinTrackPtInNTXR,rjet->Pt(),7); 
+                         fMinTrackPtInNTXh[1]->Fill(fMinTrackPtInNTX,rjet->Pt(),7); 
                          if((rjet->Pt()>10.)&&(rjet->Pt()<20.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),1,7);
+                             fTotTracksCone->Fill(fTotTracksInCone,1,7);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 7, 1);
                            }
                          if((rjet->Pt()>20.)&&(rjet->Pt()<30.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),2,7);
+                             fTotTracksCone->Fill(fTotTracksInCone,2,7);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 7, 2);
                            }
                          if((rjet->Pt()>30.)&&(rjet->Pt()<40.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),3,7);
+                             fTotTracksCone->Fill(fTotTracksInCone,3,7);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 7, 3);
                            }
                          if((rjet->Pt()>40.)&&(rjet->Pt()<50.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),4,7);
+                             fTotTracksCone->Fill(fTotTracksInCone,4,7);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 7, 4);
                            }
                          if((rjet->Pt()>50.)&&(rjet->Pt()<60.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),5,7);
+                             fTotTracksCone->Fill(fTotTracksInCone,5,7);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 7, 5);
                            }
                          if((rjet->Pt()>60.)&&(rjet->Pt()<70.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),6,7);
+                             fTotTracksCone->Fill(fTotTracksInCone,6,7);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 7, 6);
                            }
                          if((rjet->Pt()>70.)&&(rjet->Pt()<80.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),7,7);
+                             fTotTracksCone->Fill(fTotTracksInCone,7,7);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 7, 7);
                            }
                          if((rjet->Pt()>80.)&&(rjet->Pt()<90.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),8,7);
+                             fTotTracksCone->Fill(fTotTracksInCone,8,7);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 7, 8);
                            }
                        }
@@ -2886,47 +3181,59 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                  if(fEventCent>=60&&fEventCent<70.)
                    {
                      fNChTrRecECorr->Fill(ntxrecoRecalc,pTbs,8); //filling fourth centrality bin
+                     fJetPtCentPbPbRaw->Fill(rjet->Pt(),8); 
+                     fJetPtCentPbPbCorr->Fill(pTbs,8); 
                      if(!IsEqualRel(fCurrentJetMinPtNT90Recalc, 7000.))
                        {
                          fNChTrRecPerpECorr->Fill(nTRecAboveThresholdPerpRecalc,pTbs,8); //filling fourth centrality bin
+                         fMinTrackPtInNTXRecalc->Fill(fMinTrackPtInNTXR,rjet->Pt(),8);
+                         fMinTrackPtInNTXh[1]->Fill(fMinTrackPtInNTX,rjet->Pt(),8);  
                          if((rjet->Pt()>10.)&&(rjet->Pt()<20.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),1,8);
+                             fTotTracksCone->Fill(fTotTracksInCone,1,8);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 8, 1);
                            }
                          if((rjet->Pt()>20.)&&(rjet->Pt()<30.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),2,8);
+                             fTotTracksCone->Fill(fTotTracksInCone,2,8);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 8, 2);
                            }
                          if((rjet->Pt()>30.)&&(rjet->Pt()<40.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),3,8);
+                             fTotTracksCone->Fill(fTotTracksInCone,3,8);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 8, 3);
                            }
                          if((rjet->Pt()>40.)&&(rjet->Pt()<50.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),4,8);
+                             fTotTracksCone->Fill(fTotTracksInCone,4,8);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 8, 4);
                            }
                          if((rjet->Pt()>50.)&&(rjet->Pt()<60.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),5,8);
+                             fTotTracksCone->Fill(fTotTracksInCone,5,8);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 8, 5);
                            }
                          if((rjet->Pt()>60.)&&(rjet->Pt()<70.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),6,8);
+                             fTotTracksCone->Fill(fTotTracksInCone,6,8);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 8, 6);
                            }
                          if((rjet->Pt()>70.)&&(rjet->Pt()<80.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),7,8);
+                             fTotTracksCone->Fill(fTotTracksInCone,7,8);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 8, 7);
                            }
                          if((rjet->Pt()>80.)&&(rjet->Pt()<90.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),8,8);
+                             fTotTracksCone->Fill(fTotTracksInCone,8,8);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 8, 8);
                            }
                        }
@@ -2934,47 +3241,59 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                  if(fEventCent>=70&&fEventCent<80.)
                    {
                      fNChTrRecECorr->Fill(ntxrecoRecalc,pTbs,9); //filling fourth centrality bin
+                     fJetPtCentPbPbRaw->Fill(rjet->Pt(),9); 
+                     fJetPtCentPbPbCorr->Fill(pTbs,9); 
                      if(!IsEqualRel(fCurrentJetMinPtNT90Recalc, 7000.))
                        {
                          fNChTrRecPerpECorr->Fill(nTRecAboveThresholdPerpRecalc,pTbs,9); //filling fourth centrality bin
+                         fMinTrackPtInNTXRecalc->Fill(fMinTrackPtInNTXR,rjet->Pt(),9); 
+                         fMinTrackPtInNTXh[1]->Fill(fMinTrackPtInNTX,rjet->Pt(),9); 
                          if((rjet->Pt()>10.)&&(rjet->Pt()<20.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),1,9);
+                             fTotTracksCone->Fill(fTotTracksInCone,1,9);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 9, 1);
                            }
                          if((rjet->Pt()>20.)&&(rjet->Pt()<30.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),2,9);
+                             fTotTracksCone->Fill(fTotTracksInCone,2,9);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 9, 2);
                            }
                          if((rjet->Pt()>30.)&&(rjet->Pt()<40.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),3,9);
+                             fTotTracksCone->Fill(fTotTracksInCone,3,9);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 9, 3);
                            }
                          if((rjet->Pt()>40.)&&(rjet->Pt()<50.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),4,9);
+                             fTotTracksCone->Fill(fTotTracksInCone,4,9);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 9, 4);
                            }
                          if((rjet->Pt()>50.)&&(rjet->Pt()<60.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),5,9);
+                             fTotTracksCone->Fill(fTotTracksInCone,5,9);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 9, 5);
                            }
                          if((rjet->Pt()>60.)&&(rjet->Pt()<70.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),6,9);
+                             fTotTracksCone->Fill(fTotTracksInCone,6,9);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 9, 6);
                            }
                          if((rjet->Pt()>70.)&&(rjet->Pt()<80.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),7,9);
+                             fTotTracksCone->Fill(fTotTracksInCone,7,9);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 9, 7);
                            }
                          if((rjet->Pt()>80.)&&(rjet->Pt()<90.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),8,9);
+                             fTotTracksCone->Fill(fTotTracksInCone,8,9);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 9, 8);
                            }
                        }
@@ -2982,47 +3301,59 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
                  if(fEventCent>=80&&fEventCent<100.)
                    {
                      fNChTrRecECorr->Fill(ntxrecoRecalc,pTbs,10); //filling sixth centrality bin
+                     fJetPtCentPbPbRaw->Fill(rjet->Pt(),10); 
+                     fJetPtCentPbPbCorr->Fill(pTbs,10); 
                      if(!IsEqualRel(fCurrentJetMinPtNT90Recalc, 7000.))
                        {
                          fNChTrRecPerpECorr->Fill(nTRecAboveThresholdPerpRecalc,pTbs,10); //filling sixth centrality bin
+                         fMinTrackPtInNTXRecalc->Fill(fMinTrackPtInNTXR,rjet->Pt(),10); 
+                         fMinTrackPtInNTXh[1]->Fill(fMinTrackPtInNTX,rjet->Pt(),10); 
                          if((rjet->Pt()>10.)&&(rjet->Pt()<20.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),1,10);
+                             fTotTracksCone->Fill(fTotTracksInCone,1,10);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 10, 1);
                            }
                          if((rjet->Pt()>20.)&&(rjet->Pt()<30.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),2,10);
+                             fTotTracksCone->Fill(fTotTracksInCone,2,10);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 10, 2);
                            }
                          if((rjet->Pt()>30.)&&(rjet->Pt()<40.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),3,10);
+                             fTotTracksCone->Fill(fTotTracksInCone,3,10);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 10, 3);
                            }
                          if((rjet->Pt()>40.)&&(rjet->Pt()<50.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),4,10);
+                             fTotTracksCone->Fill(fTotTracksInCone,4,10);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 10, 4);
                            }
                          if((rjet->Pt()>50.)&&(rjet->Pt()<60.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),5,10);
+                             fTotTracksCone->Fill(fTotTracksInCone,5,10);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 10, 5);
                            }
                          if((rjet->Pt()>60.)&&(rjet->Pt()<70.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),6,10);
+                             fTotTracksCone->Fill(fTotTracksInCone,6,10);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 10, 6);
                            }
                          if((rjet->Pt()>70.)&&(rjet->Pt()<80.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),7,10);
+                             fTotTracksCone->Fill(fTotTracksInCone,7,10);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 10, 7);
                            }
                          if((rjet->Pt()>80.)&&(rjet->Pt()<90.))
                            {
                              fPtInPerpCon->Fill(fPerpCone->Pt(),8,10);
+                             fTotTracksCone->Fill(fTotTracksInCone,8,10);
                              FillPerpConeHisto(fPtDistInPerpConeRaw, tracksAOD, fAOD, 10, 8);
                            }
                        }
@@ -3032,11 +3363,13 @@ void AliAnalysisTaskPartonDisc::UserExec(Option_t *)
 
          AliDebug(4,"Before filling the histograms for this jet of min and max pT in NTX \n"); 
          AliDebug(4,Form("Min:%f, Max:%f \n",fMinTrackPtInNTX,fMaxTrackPtInNTX));
-         fMinTrackPtInNTXh[1]->Fill(fMinTrackPtInNTX,rjet->Pt());
+         fMinTrackPtInNTXh[1]->Fill(fMinTrackPtInNTX,rjet->Pt(),1); // for rec pp or inclusive PbPb
+         fJetPtCentPbPbRaw->Fill(rjet->Pt(),1); // for rec pp or inclusive PbPb
+         fJetPtCentPbPbCorr->Fill(pTbs,1); // for rec pp or inclusive PbPb
          fMaxTrackPtInNTXh[1]->Fill(fMaxTrackPtInNTX,rjet->Pt());
          if(fIsPossibleToSubstBckg) // if it was possible to calculate a perpendicular cone
            {
-             fMinTrackPtInNTXRecalc->Fill(fMinTrackPtInNTXR,rjet->Pt());
+             fMinTrackPtInNTXRecalc->Fill(fMinTrackPtInNTXR,rjet->Pt(),1); // for rec pp or inclusive PbPb
              fMaxTrackPtInNTXRecalc->Fill(fMaxTrackPtInNTXR,rjet->Pt());
            }
          AliDebug(4,"After filling the histograms for this jet of min and max pT in NTX \n");
@@ -3259,11 +3592,11 @@ Int_t AliAnalysisTaskPartonDisc::GetPhojetEventType(AliMCEvent *mcEvent)
 Bool_t AliAnalysisTaskPartonDisc::IsInsideAcceptance(AliAODJet *jet)
 {
   //
-  // Check if the jet is inside abs(eta)<=0.5
+  // Check if the jet is inside abs(eta)<=fJetAcceptance
   //
 
   Double_t jeteta = jet->Eta();
-  if(TMath::Abs(jeteta)<=0.5)
+  if(TMath::Abs(jeteta)<=fJetAcceptance)
     return kTRUE;
   else 
     return kFALSE;
@@ -3388,6 +3721,8 @@ Int_t AliAnalysisTaskPartonDisc::GetNumberOfMcChargedTracks(Int_t percentage,Ali
   AllocateStaticContainer(arraysize);
   InitializeStaticContainer(arraysize);
 
+  Double_t randomNum = 0.;
+
   if(!rfTrkFlag)  // if not track ref, check track by track
     {
       AliDebug(4,Form("Empty Track Refs (mc)!"));  
@@ -3403,7 +3738,9 @@ Int_t AliAnalysisTaskPartonDisc::GetNumberOfMcChargedTracks(Int_t percentage,Ali
              if(mctrack->Charge()!=0&&mctrack->Charge()!=-99)
                {
                  if(GetDeltaR(jeteta, jetphi, tracketa, trackphi)<=jr)
-                   {          
+                   {
+                     randomNum = gRandom->Rndm();
+                     if(randomNum<fJTrackRandomRejection) continue; //rechaza fJTrackRandomRejection dentro del cono          
                      currentNumber++;
                      fCurrentJetCharge=fCurrentJetCharge+mctrack->Charge(); //add the charge of this track              
                      fgContainer[currentNumber-1] = mctrack->Pt();  // save the current pt in the container
@@ -3422,6 +3759,8 @@ Int_t AliAnalysisTaskPartonDisc::GetNumberOfMcChargedTracks(Int_t percentage,Ali
          if(!vtrack) continue;
          if(vtrack->Charge()!=0&&vtrack->Charge()!=-99)
            {
+             randomNum = gRandom->Rndm();
+             if(randomNum<fJTrackRandomRejection) continue; //rechaza fJTrackRandomRejection dentro del cono          
              currentNumber++;
              fCurrentJetCharge=fCurrentJetCharge+vtrack->Charge(); //add the charge of this track               
              fgContainer[currentNumber-1] = vtrack->Pt();  // save the current pt in the container
@@ -3479,7 +3818,6 @@ Int_t AliAnalysisTaskPartonDisc::GetNumberOfChargedTracks(Int_t percentage,AliAO
          if(GetDeltaR(jeteta, jetphi, tracketa, trackphi)<=jr)
            {
              if(!aodtrack->TestFilterBit(fFilterBit)) continue; //track filter selection
-             if(!aodtrack->IsPrimaryCandidate()) continue; // only primaries
              if(aodtrack->Pt()<fMinpTVal) continue; // pT cut, not using track refs          
              currentNumber++;
              fCurrentJetCharge=fCurrentJetCharge+aodtrack->Charge();
@@ -4258,7 +4596,7 @@ Bool_t AliAnalysisTaskPartonDisc::NumberOfReadEventsAOD(const char* currFile, In
          fnev->Close();
          return kFALSE;
        }
-      fNEvents = ((TH1*)list->FindObject("NJetsH"))->GetEntries();
+      fNEvents = Int_t(((TH1*)list->FindObject("NJetsH"))->GetEntries());
       fnev->Close();
     }
   return kTRUE;
@@ -4342,7 +4680,7 @@ void AliAnalysisTaskPartonDisc::HasOverlapedCones(TClonesArray *JetArray)
        } // end of skip of single track jets condition
 
       // First check if the current jet has its axis inside acceptance
-      if(!(TMath::Abs(etaCoordinates[inxoj])<=0.5)) //
+      if(!(TMath::Abs(etaCoordinates[inxoj])<=fJetAcceptance)) //
        {
          fJetFlags[inxoj]=kFALSE;
          continue;
@@ -4358,7 +4696,7 @@ void AliAnalysisTaskPartonDisc::HasOverlapedCones(TClonesArray *JetArray)
            continue;
          if(!fJetFlags[idx2]) // if the other jet is already not usable
            continue;
-         if(!(TMath::Abs(etaCoordinates[idx2])<=0.5)) // if the jet is outside acceptance
+         if(!(TMath::Abs(etaCoordinates[idx2])<=fJetAcceptance)) // if the jet is outside acceptance
            continue;
          deltaeta = etaCoordinates[currentIdxJet]-etaCoordinates[idx2];
          deltaphi = phiCoordinates[currentIdxJet]-phiCoordinates[idx2];
@@ -4465,6 +4803,8 @@ Int_t AliAnalysisTaskPartonDisc::GetNMcChargedTracksAboveThreshold(AliAODJet *je
   if(IsEqualRel(fCurrentJetMinPtNT90, 7000.)) // fCurrentJetMinPtNT90==7000.
     return 1000; //dummy val for debugging
 
+  Double_t randomNum = 0.;
+
   for (Int_t iTracks = 0; iTracks < ntracks; iTracks++) 
     {
       AliAODMCParticle *mctrack = (AliAODMCParticle*) mcarray->At(iTracks);
@@ -4477,7 +4817,9 @@ Int_t AliAnalysisTaskPartonDisc::GetNMcChargedTracksAboveThreshold(AliAODJet *je
          if(mctrack->Charge()!=0&&mctrack->Charge()!=-99)
            {
              if(GetDeltaR(jeteta, jetphi, tracketa, trackphi)<=jr)
-               {              
+               {
+                 randomNum = gRandom->Rndm();
+                 if(randomNum<fJTrackRandomRejection) continue; //rechaza fJTrackRandomRejection              
                  currentNumber++;               
                } // end if inside jet
            } // end charged
@@ -4519,6 +4861,8 @@ Int_t AliAnalysisTaskPartonDisc::GetNMcChargedTracksAboveThreshold(AliAODJet *je
   AllocateStaticContainer(arraysize);
   InitializeStaticContainer(arraysize);
 
+  Double_t randomNum = 0.;
+
   if(!rfTrkFlag)  // if not track ref, check track by track
     {
       AliDebug(4,Form("Empty Track Refs (mc)!"));  
@@ -4534,7 +4878,9 @@ Int_t AliAnalysisTaskPartonDisc::GetNMcChargedTracksAboveThreshold(AliAODJet *je
              if(mctrack->Charge()!=0&&mctrack->Charge()!=-99)
                {
                  if(GetDeltaR(jeteta, jetphi, tracketa, trackphi)<=jr)
-                   {          
+                   {
+                     randomNum = gRandom->Rndm();
+                     if(randomNum<fJTrackRandomRejection) continue; //rechaza fJTrackRandomRejection          
                      currentNumber++;           
                      fgContainer[currentNumber-1] = mctrack->Pt();  // save the current pt in the container
                    } // end if inside jet
@@ -4552,6 +4898,8 @@ Int_t AliAnalysisTaskPartonDisc::GetNMcChargedTracksAboveThreshold(AliAODJet *je
          if(!vtrack) continue;
          if(vtrack->Charge()!=0&&vtrack->Charge()!=-99)
            {
+             randomNum = gRandom->Rndm();
+             if(randomNum<fJTrackRandomRejection) continue; //rechaza fJTrackRandomRejection
              currentNumber++;
              fgContainer[currentNumber-1] = vtrack->Pt();  // save the current pt in the container
            } 
@@ -4620,6 +4968,8 @@ Int_t AliAnalysisTaskPartonDisc::GetRecalcNMcChTrUpThr(AliAODJet *jet, Int_t ntr
   if(IsEqualRel(jetpT, 0.0)) //IsEqualRel(jetpT, 0.0) //jetpT==0
     return 0;    
 
+  Double_t randomNum = 0.;
+
   for (Int_t iTracks = 0; iTracks < ntracks; iTracks++) 
     {
       AliAODMCParticle *mctrack = (AliAODMCParticle*) mcarray->At(iTracks);
@@ -4632,7 +4982,9 @@ Int_t AliAnalysisTaskPartonDisc::GetRecalcNMcChTrUpThr(AliAODJet *jet, Int_t ntr
          if(mctrack->Charge()!=0&&mctrack->Charge()!=-99)
            {
              if(GetDeltaR(jeteta, jetphi, tracketa, trackphi)<=jr)
-               {              
+               {
+                 randomNum = gRandom->Rndm();
+                 if(randomNum<fJTrackRandomRejection) continue; //rechaza fJTrackRandomRejection              
                  currentNumber++;               
                } // end if inside jet
            } // end charged
@@ -4673,7 +5025,6 @@ Int_t AliAnalysisTaskPartonDisc::GetNRecChargedTracksAboveThreshold(AliAODJet *j
       if(GetDeltaR(jeteta, jetphi, tracketa, trackphi)<=jr)
        {
          if(!aodtrack->TestFilterBit(fFilterBit)) continue; //track filter selection
-         if(!aodtrack->IsPrimaryCandidate()) continue; // only primaries
          if(aodtrack->Pt()<fCurrentJetMinPtNT90) continue;           
          currentNumber++;               
        } // end if inside jet  
@@ -4723,7 +5074,6 @@ Int_t AliAnalysisTaskPartonDisc::GetRecalcNTXRec(Int_t percentage,AliAODJet *ori
          if(GetDeltaR(jeteta, jetphi, tracketa, trackphi)<=jr)
            {
              if(!aodtrack->TestFilterBit(fFilterBit)) continue; //track filter selection
-             if(!aodtrack->IsPrimaryCandidate()) continue; // only primaries
              if(aodtrack->Pt()<fMinpTVal) continue; // pT cut, not using track refs          
              currentNumber++;           
              fgContainer[currentNumber-1] = aodtrack->Pt();  // save the current pt in the container
@@ -4783,7 +5133,6 @@ Int_t AliAnalysisTaskPartonDisc::GetRecalcNRecChTrUpThr(AliAODJet *jet, Int_t nt
       if(GetDeltaR(jeteta, jetphi, tracketa, trackphi)<=jr)
        {
          if(!aodtrack->TestFilterBit(fFilterBit)) continue; //track filter selection
-         if(!aodtrack->IsPrimaryCandidate()) continue; // only primaries
          if(aodtrack->Pt()<fCurrentJetMinPtNT90Recalc) continue;             
          currentNumber++;               
        } // end if inside jet  
@@ -4808,7 +5157,7 @@ Bool_t AliAnalysisTaskPartonDisc::IsTrackInsideExcludedArea(Double_t tracketa, D
   Double_t deltaeta = 0.0;
   Double_t deltaphi = 0.0;
   Double_t deltar = 0.0;
-  Double_t extendedRadius = fJetRadius+fIncExcR; //default R+0.1
+  Double_t extendedRadius = fJetRadius+fIncExcR; 
   Double_t extendedRadiusDiJet = 0.0;
   Double_t phiCurrJetExArL = 0.0; // preliminary left boundary of exluded phi of current jet
   Double_t phiCurrJetExArR = 0.0; // preliminary right boundary of exluded phi of current jet
@@ -5192,7 +5541,6 @@ void AliAnalysisTaskPartonDisc::FillPerpConeHisto(TH3F *currenthisto, Int_t ntra
       aodtracketaC = TMath::Abs(aodtrackC->Eta());
       if(aodtracketaC>0.9) continue;
       if(!aodtrackC->TestFilterBit(fFilterBit)) continue; //track filter selection
-      if(!aodtrackC->IsPrimaryCandidate()) continue; // only primaries, maybe is redundant with the previous selection...
       if(fJetEvent) // if has an accepted jet, calculate the perpendicular cone
        {
          if(HasPerpendicularCone()) // If there is a perpendicular cone available