]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWG4/JetTasks/AliAnalysisTaskJetSpectrum2.h
Adding histograms for smearing normized to p_T,Gen
[u/mrichter/AliRoot.git] / PWG4 / JetTasks / AliAnalysisTaskJetSpectrum2.h
index 73435ac18d94e067d17a93c1c5b7323f76a98ded..c9f86eb097b2582c5b648ace55a1adce73d5496e 100644 (file)
@@ -25,7 +25,7 @@ class TChain;
 class TH2F;
 class TH3F;
 class TProfile;
-
+class TSTring;
 
 
 class AliAnalysisTaskJetSpectrum2 : public AliAnalysisTaskSE
@@ -42,18 +42,23 @@ class AliAnalysisTaskJetSpectrum2 : public AliAnalysisTaskSE
     virtual void Terminate(Option_t *option);
     virtual Bool_t Notify();
 
-
+    virtual void SetUseGlobalSelection(Bool_t b){fUseGlobalSelection = b;}
     virtual void SetExternalWeight(Float_t f){fExternalWeight = f;}
     virtual void SetUseExternalWeightOnly(Bool_t b){fUseExternalWeightOnly = b;}
-    virtual void SetAODInput(Bool_t b){fUseAODInput = b;}
+    virtual void SetAODJetInput(Bool_t b){fUseAODJetInput = b;}
+    virtual void SetAODTrackInput(Bool_t b){fUseAODTrackInput = b;}
+    virtual void SetAODMCInput(Bool_t b){fUseAODMCInput = b;}
     virtual void SetLimitGenJetEta(Bool_t b){fLimitGenJetEta = b;}
     virtual void SetRecEtaWindow(Float_t f){fRecEtaWindow = f;}
+    virtual void SetMinJetPt(Float_t f){fMinJetPt = f;}
+    virtual void SetDeltaPhiWindow(Float_t f){fDeltaPhiWindow = f;}
     virtual void SetAnalysisType(Int_t i){fAnalysisType = i;}
     virtual void SetBranchGen(const char* c){fBranchGen = c;}
     virtual void SetBranchRec(const char* c){fBranchRec = c;}
     virtual void SetTrackTypeGen(Int_t i){fTrackTypeGen = i;}
     virtual void SetTrackTypeRec(Int_t i){fTrackTypeRec = i;}
     virtual void SetFilterMask(UInt_t i){fFilterMask = i;}
+    virtual void SetEventSelectionMask(UInt_t i){fEventSelectionMask = i;}
     // use for the CF
 
 
@@ -64,7 +69,7 @@ class AliAnalysisTaskJetSpectrum2 : public AliAnalysisTaskSE
     // AOD reading -> MC from AOD
     // ESD reading -> MC from Kinematics
     // this has to match with our selection of input events
-    enum {kTrackUndef = 0, kTrackAODIn, kTrackAODOut, kTrackKineAll,kTrackKineCharged, kTrackAODMCAll, kTrackAODMCCharged };
+    enum {kTrackUndef = 0, kTrackAOD, kTrackKineAll,kTrackKineCharged, kTrackAODMCAll, kTrackAODMCCharged, kTrackAODMCChargedAcceptance};
     enum {kAnaMC =  0x1, kAnaMCESD = 0x2};
     enum {kMaxJets = 4};
     enum {kMaxCorrelation =  3};
@@ -91,21 +96,30 @@ class AliAnalysisTaskJetSpectrum2 : public AliAnalysisTaskSE
     AliAODEvent  *fAOD; // where we take the jets from can be input or output AOD
     THnSparseF   *fhnJetContainer[kMaxStep*2];   // like particle container in corrfw with different steps need AliCFContainer with Scale(), and clone() to do the same
     THnSparseF   *fhnCorrelation;           // response matrix for unfolding 
+    THnSparseF   *fhnCorrelationPhiZRec;       // response matrix for unfolding in max Z rec bins
 
+    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
 
-    Bool_t        fUseAODInput;           // take jet from input AOD not from ouptu AOD
+    Bool_t        fUseAODJetInput;        // take jet from input AOD not from ouptu AOD
+    Bool_t        fUseAODTrackInput;      // take track from input AOD not from ouptu AOD
+    Bool_t        fUseAODMCInput;         // take MC from input AOD not from ouptu AOD
+    Bool_t        fUseGlobalSelection;    // Limit the eta of the generated jets
     Bool_t        fUseExternalWeightOnly; // use only external weight
     Bool_t        fLimitGenJetEta;        // Limit the eta of the generated jets
-    UInt_t        fFilterMask;             // filter bit for slecected tracks
+    UInt_t        fFilterMask;            // filter bit for slecected tracks
+    UInt_t        fEventSelectionMask;    // Selection information used to filter events
     Int_t         fAnalysisType;          // Analysis type 
     Int_t         fTrackTypeRec;          // type of tracks used for FF 
     Int_t         fTrackTypeGen;          // type of tracks used for FF 
     Float_t       fAvgTrials;             // Average nimber of trials
     Float_t       fExternalWeight;        // external weight
     Float_t       fRecEtaWindow;          // eta window used for corraltion plots between rec and gen 
+    Float_t       fMinJetPt;              // limits the jet p_T in addition to what already is done in the jet finder, this is important for jet matching for JF with lo threshold
+    Float_t       fDeltaPhiWindow;        // minium angle between dijets
+
 
     TProfile*     fh1Xsec;   // pythia cross section and trials
     TH1F*         fh1Trials; // trials are added
@@ -114,21 +128,60 @@ class AliAnalysisTaskJetSpectrum2 : public AliAnalysisTaskSE
     TH1F*         fh1PtHardTrials;  // Number of trials 
     TH1F*         fh1NGenJets;      // nr of gen jets
     TH1F*         fh1NRecJets;      // nr of rec jets
-    
+    TH1F*         fh1PtTrackRec;    // track pt
+    TH1F*         fh1SumPtTrackRec; // sum over all track pT    
+    TH1F*         fh1SumPtTrackAreaRec; // sum over all track pT    
+    TH1F*         fh1TmpRho;            // just temporary histo for calculation
+
+
     TH1F*         fh1PtRecIn[kMaxJets];  // Jet pt for all this info is also in the THNsparse      
     TH1F*         fh1PtGenIn[kMaxJets];  // Jet pt with corellated generated jet    
 
+    TH1F*         fh1PtJetsRecIn;  // Jet pt for all jets
+    TH1F*         fh1PtJetsLeadingRecIn;  // Jet pt for all jets
+    TH1F*         fh1PtTracksRecIn;  // track pt for all tracks
+    TH1F*         fh1PtTracksLeadingRecIn;  // track pt for all tracks
+    TH1F*         fh1PtTracksGenIn;  // track pt for all tracks
+    
+
+    TH2F*         fh2NRecJetsPt;            // Number of found jets above threshold
+    TH2F*         fh2NRecTracksPt;          // Number of found tracks above threshold
+    TH2F*         fh2JetsLeadingPhiEta;     // jet correlation with leading jet
+    TH2F*         fh2JetsLeadingPhiPt;      // jet correlation with leading jet
+    TH2F*         fh2TracksLeadingPhiEta;   // track correlation with leading track
+    TH2F*         fh2TracksLeadingPhiPt;    // track correlation with leading track
+    TH2F*         fh2TracksLeadingJetPhiPt; // track correlation with leading track
+    TH2F*         fh2JetPtJetPhi;           // Phi distribution of accepted jets 
+    TH2F*         fh2TrackPtTrackPhi;       // phi distribution of accepted tracks
+    TH2F*         fh2RelPtFGen;             // relative difference between generated and found 
+    TH2F*         fh2PhiPt[kMaxJets];    // delta phi correlation of tracks with the jet      
+    TH2F*         fh2PhiEta[kMaxJets];   // eta   phi correlation of tracks with the jet      
+    TH2F*         fh2RhoPtRec[kMaxJets];    // jet shape variable rho
+    TH2F*         fh2PsiPtRec[kMaxJets];    // jet shape variable psi
+    TH2F*         fh2RhoPtGen[kMaxJets];    //
+    TH2F*         fh2PsiPtGen[kMaxJets];    //
     TH2F*         fh2FragRec[kMaxJets];     // fragmentation function
     TH2F*         fh2FragLnRec[kMaxJets];   // fragmetation in xi
-
     TH2F*         fh2FragGen[kMaxJets];     // fragmentation function
     TH2F*         fh2FragLnGen[kMaxJets];   // fragmetation in xi
 
 
+
+    // Dijet histos
+    TH2F*   fh2DijetDeltaPhiPt;      // dijet delta phi vs pt
+    TH2F*   fh2DijetAsymPt;          // dijet asym vs pt
+    TH2F*   fh2DijetAsymPtCut;       // dijet asym vs pt after delta phi cut
+    TH2F*   fh2DijetDeltaPhiDeltaEta; // dijet delta phi delta eta
+    TH2F*   fh2DijetPt2vsPt1;          // dijet pt2 vs pt1 
+    TH2F*   fh2DijetDifvsSum;          // dijet dif vs sum
+    TH1F*   fh1DijetMinv;            // dijet inv mass
+    TH1F*   fh1DijetMinvCut;         // dijet inv after delta phi cut
+
+
     TList *fHistList; // Output list
    
 
-    ClassDef(AliAnalysisTaskJetSpectrum2, 1) // Analysis task for standard jet analysis
+    ClassDef(AliAnalysisTaskJetSpectrum2, 6) // Analysis task for standard jet analysis
 };
  
 #endif