]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWGJE/AliAnalysisTaskJetCore.h
Adapt add macro and particle/cluster containers for the analysis on jets
[u/mrichter/AliRoot.git] / PWGJE / AliAnalysisTaskJetCore.h
index 1b2c873443e3a6cb18aff49358693dd9a20ebe98..2d68707b2bf61b0ce2bb2415f8b5488bd0c1aef5 100644 (file)
@@ -17,6 +17,7 @@ class TH1I;
 class TH2F;
 class TH3F;
 class THnSparse;
+class TRandom3;
 class AliESDEvent;
 class AliAODExtension;
 class AliAODEvent;
@@ -36,7 +37,8 @@ public:
    virtual void     Terminate(const Option_t*);
 
    virtual Int_t      GetNInputTracks();
-     
+     // Rongrong
+   virtual void     SetRunAzimuthalCorrelation(Bool_t run) {fRunAnaAzimuthalCorrelation=run;}  
    Double_t RelativePhi(Double_t angle1,Double_t angle2);     
    Int_t   GetPhiBin(Double_t phi);
    virtual THnSparse* NewTHnSparseF(const char* name, UInt_t entries);
@@ -76,15 +78,27 @@ public:
    virtual void     SetCentMax(Float_t cent) { fCentMax = cent; }
    virtual void     SetNInputTracksMin(Int_t nTr) { fNInputTracksMin = nTr; }
    virtual void     SetNInputTracksMax(Int_t nTr) { fNInputTracksMax = nTr; }
+   virtual void     SetRequireITSRefit(Int_t nref) {fRequireITSRefit=nref;}
+   virtual void     SetSharedClusterCut(Int_t docut){fApplySharedClusterCut=docut;}
    virtual void     SetAngStructCloseTracks(Int_t yesno){fAngStructCloseTracks=yesno;}
    virtual void     SetCheckMethods(Int_t yesno){fCheckMethods=yesno;}
    virtual void     SetEventMixing(Int_t yesno){fDoEventMixing=yesno;}
    virtual void     SetFlagPhiBkg(Int_t yesno){fFlagPhiBkg=yesno;}
    virtual void     SetFlagEtaBkg(Int_t yesno){fFlagEtaBkg=yesno;}
    virtual void     SetFlagJetHadron(Int_t yesno){fFlagJetHadron=yesno;}
+   virtual void     SetFlagFrac(Float_t fraction){fFrac=fraction;} 
+   virtual void     SetTTLowRef(Float_t ttlow){fTTLowRef=ttlow;}
+   virtual void     SetTTUpRef(Float_t ttup){fTTUpRef=ttup;}
+   virtual void     SetTTLowSig(Float_t ttlows){fTTLowSig=ttlows;}
+   virtual void     SetTTUpSig(Float_t ttups){fTTUpSig=ttups;}
+   virtual void     SetFlagHardest(Int_t yesno){fHardest=yesno;}
    virtual void     SetFlagRandom(Int_t yesno){fFlagRandom=yesno;}
    virtual void     SetFlagOnlyRecoil(Int_t yesno){fFlagOnlyRecoil=yesno;}
+   virtual void     SetFlagOnlyHardest(Int_t yesno){fFlagOnlyHardest=yesno;} 
    virtual void     SetNRPBins(Int_t bins){fNRPBins=bins;}
+   virtual void     SetSemigoodCorrect(Int_t yesno){fSemigoodCorrect=yesno;}
+   virtual void     SetHolePos(Float_t poshole) { fHolePos = poshole; }
+   virtual void     SetHoleWidth(Float_t holewidth) { fHoleWidth = holewidth; }
    virtual void     SetTrackTypeRec(Int_t i){fTrackTypeRec = i;}
    virtual void     SetJetEtaMin(Float_t eta) { fJetEtaMin = eta; }
    virtual void     SetJetEtaMax(Float_t eta) { fJetEtaMax = eta; }
@@ -104,6 +118,7 @@ private:
     AliAODEvent *fAODOut;    //! AOD event 
     AliAODExtension  *fAODExtension; //! where we take the jets from can be input or output AOD
     Int_t   GetListOfTracks(TList *list);
+   Int_t   SelectTrigger(TList *list,Double_t minT,Double_t maxT,Int_t &number);
    Int_t   GetHardestTrackBackToJet(AliAODJet *jet);
    Int_t   GetListOfTracksCloseToJet(TList *list,AliAODJet *jet);
    // jets to compare
@@ -129,17 +144,29 @@ private:
    Float_t fCentMax;     // upper bound on centrality
    Int_t   fNInputTracksMin;  // lower bound of nb. of input tracks
    Int_t   fNInputTracksMax;  // upper bound of nb. of input tracks
+   Int_t   fRequireITSRefit;
+   Int_t   fApplySharedClusterCut; // flag to apply shared cluster cut (needed for some AODs where this cut was not applied in the filtering)
    Int_t   fAngStructCloseTracks;//only constituents or all tracks with R<0.8 for the angular structure
    Int_t   fCheckMethods;     //to look into more detail into the core
    Int_t   fDoEventMixing;
    Int_t   fFlagPhiBkg;
    Int_t   fFlagEtaBkg;
    Int_t   fFlagJetHadron;
+   Float_t fFrac;               //fraction of events to evaluate signal
+   Float_t fTTLowRef;
+   Float_t fTTUpRef;
+   Float_t fTTLowSig;
+   Float_t fTTUpSig;
+   Int_t   fHardest;
    Int_t   fFlagRandom;
    Int_t   fFlagOnlyRecoil;
+   Int_t   fFlagOnlyHardest;
    Int_t   fTrackTypeRec;
-   Int_t   fRPAngle;
+   Float_t   fRPAngle;
    Int_t   fNRPBins;
+   Int_t   fSemigoodCorrect;
+   Float_t fHolePos;
+   Float_t fHoleWidth; 
    Float_t fJetEtaMin;        // lower bound on eta for found jets
    Float_t fJetEtaMax;        // upper bound on eta for found jets
    Int_t   fNevents;          // number of events
@@ -152,7 +179,7 @@ private:
    Int_t   fNMatchJets;       // maximal nb. of jets taken for matching
    Double_t fMatchMaxDist;     // maximal distance of matching jets
    Bool_t  fKeepJets;          // keep jets with negative pt after background subtraction
-  
+   Bool_t fRunAnaAzimuthalCorrelation;        // Flag to run azimuthal correlation between trigger track and recoil jets (Rongrong)  
 
    // output objects
    const Int_t fkNbranches;                   //! number of branches to be read
@@ -192,23 +219,28 @@ private:
      TH2F*      fh2AngStructpt3C60;         //C60 pt3
      TH2F*      fh2AngStructpt4C60;         //C60 pt4
   
+     TH1D*      fh1TrigRef;                 //ref multiple triggers
+     TH1D*      fh1TrigSig;                 //sig multiple triggers    
      TH2F*      fh2Ntriggers;              //triggers
-     TH2F*      fh2Ntriggers2;             //centrality bias of triggers 
+     TH2F*      fh2Ntriggers2C10;             //centrality bias of triggers 
+     TH2F*      fh2Ntriggers2C20;             //centrality bias of triggers 
      TH3F*      fh3JetDensity;             //jet density
      TH3F*      fh3JetDensityA4;           //jet density
-     TH2F*      fh2RPJets;                  //reaction plane Jets
-     TH2F*      fh2RPT;                     //reaction plane TT 
-     TH3F*      fh3spectriggeredC20RP;       //spec wrt RP
-     TH3F*      fh3spectriggeredC20;           //triggered spectra
-     TH3F*      fh3spectriggeredC3060;         //triggered spectra
+     TH2F*      fh2RPJetsC10;                  //reaction plane Jets
+     TH2F*      fh2RPJetsC20;
+     TH2F*      fh2RPTC10;                     //reaction plane TT 
+     TH2F*      fh2RPTC20; 
+     THnSparse   *fHJetSpec;               //Recoil jet spectrum
 
-     
      Double_t            fTrigBuffer[10][7];      //!buffer for triggers   
+     TH2F        *fhTTPt;                     //! Trigger track pt for normalization (Rongrong)
+     THnSparse   *fHJetPhiCorr;               //! Azimuthal correlation between trigger track and recoil jets (Rongrong)
+       TRandom3*                   fRandom;          // TRandom3  
 
    AliAnalysisTaskJetCore(const AliAnalysisTaskJetCore&); // not implemented
    AliAnalysisTaskJetCore& operator=(const AliAnalysisTaskJetCore&); // not implemented
 
-   ClassDef(AliAnalysisTaskJetCore, 5);
+   ClassDef(AliAnalysisTaskJetCore, 6);
 };
 
 #endif