]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWGJE/AliAnalysisTaskJetSpectrum2.h
change method name
[u/mrichter/AliRoot.git] / PWGJE / AliAnalysisTaskJetSpectrum2.h
index c03140ee961343651f65cea157a307365d4a18a4..d53ed7470b33c19ce4083ae8797c12d3bc84c928 100644 (file)
@@ -1,4 +1,3 @@
-
 #ifndef ALIANALYSISTASKJETSPECTRUM2_H
 #define ALIANALYSISTASKJETSPECTRUM2_H
  
@@ -23,6 +22,7 @@ class AliVParticle;
 class AliAODJetEventBackground;
 class AliGenPythiaEventHeader;
 class AliCFManager;
+class AliCFContainer;
 class AliTHn;
 
 class TList;
@@ -35,7 +35,6 @@ class TProfile;
 class TProfile2D;
 class TSTring;
 
-
 class AliAnalysisTaskJetSpectrum2 : public AliAnalysisTaskSE
 {
  public:
@@ -63,6 +62,10 @@ class AliAnalysisTaskJetSpectrum2 : public AliAnalysisTaskSE
     virtual void SetNMatchJets(Short_t f){fNMatchJets = f;}
     virtual void SetMinJetPt(Float_t f){fMinJetPt = f;}
     virtual void SetNRPBins(Short_t i){fNRPBins = i;} 
+    virtual void SetTRP(Int_t i){fTRP=i;}
+    virtual void SetDebug(Int_t i){fDebug=i;}
+    virtual void SetNMultBins(Short_t i) {fNBinsMult=i;}
+    virtual void SetNPtLeadingBins(Short_t i) {fNBinsLeadingTrackPt=i;}
     virtual void SetFlagJetType(Int_t iType,Int_t iF){fFlagJetType[iType] = iF;}
     virtual void SetMinTrackPt(Float_t f){fMinTrackPt = f;}
     virtual void SetDeltaPhiWindow(Float_t f){fDeltaPhiWindow = f;}
@@ -89,6 +92,14 @@ class AliAnalysisTaskJetSpectrum2 : public AliAnalysisTaskSE
     virtual void SetNAcceptance(Int_t n);
     virtual void SetAcceptance(Int_t i,Float_t phiMin,Float_t phiMax,Float_t etaMin,Float_t etaMax);// non overlapping regions
     virtual Int_t CheckAcceptance(Float_t phi,Float_t eta);
+
+
+    void    SetMaxVertexZ(Float_t a)      {fMaxVertexZ = a;}
+    void    SetMinNcontributors(Int_t i)  {fMinNcontributors = i;}
+    void    SetPileupRejection(Bool_t a)  {fRejectPileup = a;}
+
+
+
     // Helper
     //
 
@@ -103,12 +114,20 @@ class AliAnalysisTaskJetSpectrum2 : public AliAnalysisTaskSE
     enum {kMaxCorrelation =  3};
     
     // 
-    // 0 all jets
-    // 1 all jet in eta window
-    // 2 all jets with partner
-    // 3 all jets in eta window with partner
-    // 4 all jets with partner in eta window
-    enum {kStep0 = 0, kStep1, kStep2, kStep3, kStep4,kMaxStep};
+    // Stored as function of generated values
+    // 0 all gen jets
+    // 1 all gen jets in eta window
+    // 2 all gen jets with rec partner
+    // 3 all gen jets in eta window with rec partner
+    // 4 all gen jets in eta window with rec partner in eta window
+    // 5 all gen jets in eta window with rec partner in eta window with leading track on reconstructed level
+    // 6 all rec jets in eta window with gen partner
+
+    // Stored as function of reconstructed values:
+    // 7 all rec jets in eta window
+
+
+    enum {kStep0 = 0, kStep1, kStep2, kStep3, kStep4, kStep5, kStep6, kStep7,kMaxStep};
 
 
  private:
@@ -119,8 +138,12 @@ class AliAnalysisTaskJetSpectrum2 : public AliAnalysisTaskSE
     void    MakeJetContainer();
     Int_t   GetListOfTracks(TList *list,Int_t type);
     void    FillTrackHistos(TList &particlesList,int iType);
+    Float_t GetRho(TList &list);
     Float_t GetCentrality();
     Bool_t  CalculateReactionPlaneAngle(const TList *trackList);
+    Double_t RelativePhi(Double_t phi1,Double_t phi2);
+   
     Int_t   GetPhiBin(Double_t phi);
     Double_t GetPhiWeight(Double_t phi,Double_t signedpt);
     Int_t   GetListOfJets(TList *list,TClonesArray* jarray,Int_t type);
@@ -133,16 +156,16 @@ class AliAnalysisTaskJetSpectrum2 : public AliAnalysisTaskSE
     AliVParticle *LeadingTrackFromJetRefs(AliAODJet* jet);
     AliVParticle *LeadingTrackInCone(AliAODJet* jet,TList *list,Float_t r = 0.4);
 
-
     AliJetHeader *fJetHeaderRec;//! The jet header that can be fetched from the userinfo
     AliJetHeader *fJetHeaderGen;//! The jet header that can fetched from the userinfo
     AliAODEvent  *fAODIn; //! where we take the jets from 
     AliAODEvent  *fAODOut; //! where we take the jets from 
     AliAODExtension  *fAODExtension; //! where we take the jets from can be input or output AOD
-    AliTHn   *fhnJetContainer;               //! like particle container in corrfw with different steps need AliCFContainer with Scale(), and clone() to do the same
-    AliTHn   *fhnCorrelation;                //! response matrix for unfolding 
-    THnSparseF   *fhnEvent;                  //! event counts 
-    TF1          *f1PtScale;                 //! correction function to correct to the average true jet energy depending on p_T,rec
+
+    AliCFContainer *fhnJetContainer; //! like particle container in corrfw with different steps need AliCFContainer with Scale(), and clone() to do the same
+    THnSparse    *fhnCorrelation;    //! response matrix for unfolding 
+    THnSparseF   *fhnEvent;          //! event counts 
+    TF1          *f1PtScale;         //! correction function to correct to the average true jet energy depending on p_T,rec
 
     TString       fBranchRec;  // AOD branch name for reconstructed
     TString       fBranchGen;  // AOD brnach for genereated
@@ -161,6 +184,8 @@ class AliAnalysisTaskJetSpectrum2 : public AliAnalysisTaskSE
     Bool_t        fDoMatching;            // switch on the matching between rec and gen
     Short_t       fNMatchJets;            // number of leading jets considered from the list
     Short_t       fNRPBins;               // number of bins with respect to RP
+    Int_t         fTRP;                   //flag to bin the RC in |phi_RP-phi
+    Int_t         fDebug;      
     UInt_t        fJetTriggerExcludeMask; // mask for jet triggers to exclude
     UInt_t        fJetTriggerBestMask; // mask for best jet triggers
     UInt_t        fFilterMask;            // filter bit for slecected tracks
@@ -168,6 +193,8 @@ class AliAnalysisTaskJetSpectrum2 : public AliAnalysisTaskSE
     Int_t         fNTrigger;              // number of triggers for selection
     UInt_t        *fTriggerBit;            //[fNTrigger] trigger bits 
     Int_t         fNAcceptance;            // number of triggers for selection
+    Short_t       fNBinsLeadingTrackPt;   // number of bins leading track pt in sparse. Two options: 1 or 10
+    Short_t       fNBinsMult;             // number of bins in multiplicity in sparse
     Int_t         fAnalysisType;          // Analysis type 
     Int_t         fTrackTypeRec;          // type of tracks used for FF 
     Int_t         fTrackTypeGen;          // type of tracks used for FF 
@@ -193,6 +220,7 @@ class AliAnalysisTaskJetSpectrum2 : public AliAnalysisTaskSE
 
     TProfile*     fh1Xsec;   //! pythia cross section and trials
     TH1F*         fh1Trials; //! trials are added
+    TH1F*         fh1AvgTrials; //! trials are added
     TH1F*         fh1PtHard;  //! Pt har of the event...       
     TH1F*         fh1PtHardNoW;  //! Pt har of the event without weigt       
     TH1F*         fh1PtHardTrials;  //! Number of trials 
@@ -205,7 +233,9 @@ class AliAnalysisTaskJetSpectrum2 : public AliAnalysisTaskSE
     TH2F*         fh2RPCentrality;   //! RP vs centrality
 
     TH2F*         fh2PtFGen;                //! found vs generated 
+    TH3F*         fh2deltaPt1Pt2;           //! ptjet1 - ptjet2 vs ptjet1 vs ptjet2
     TH2F*         fh2RelPtFGen;             //! relative difference between generated and found 
+    TH3F*         fh3RelPtFGenLeadTrkPt;    //! relative difference between generated and found vs leading track pT
 
     
 
@@ -226,8 +256,8 @@ class AliAnalysisTaskJetSpectrum2 : public AliAnalysisTaskSE
     TProfile2D    *fp2MultRPPhiTrackPt[kJetTypes];         //! for mean pT vs RP   
     TProfile2D    *fp2CentRPPhiTrackPt[kJetTypes];         //! for mean pT vs RP   
     THnSparseF    *fhnJetPt[kJetTypes];                  //! jet pt information for analysis
-    THnSparseF    *fhnJetPtBest[kJetTypes];                  //! best jet for analysis
-    THnSparseF    *fhnJetPtRej[kJetTypes];                  //! Rej jet for analysis
+    THnSparseF    *fhnJetPtBest[kJetTypes];              //! best jet for analysis
+    THnSparseF    *fhnJetPtRej[kJetTypes];               //! Rej jet for analysis
     THnSparseF    *fhnJetPtQA[kJetTypes];                //! jet pt information for QA
     THnSparseF    *fhnTrackPt[kJetTypes];                //! track pt information for analysis
     THnSparseF    *fhnTrackPtQA[kJetTypes];              //! track pt information for analysis
@@ -240,11 +270,16 @@ class AliAnalysisTaskJetSpectrum2 : public AliAnalysisTaskSE
     TH2F*   fh2DijetPt2vsPt1[kJetTypes];        //! dijet pt2 vs pt1
     TH2F*   fh2DijetDifvsSum[kJetTypes];        //! dijet dif vs sum
 
+    TH1F*   fh1EvtSelection;
+    Float_t fMaxVertexZ;
+    Int_t   fMinNcontributors;
+    Bool_t  fRejectPileup;
+
 
     TList *fHistList;                  //! Output list
    
 
-    ClassDef(AliAnalysisTaskJetSpectrum2, 21); // Analysis task for standard jet analysis
+    ClassDef(AliAnalysisTaskJetSpectrum2, 23); // Analysis task for standard jet analysis
 };
  
 #endif