]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWGJE/EMCALJetTasks/UserTasks/AliAnalysisTaskEmcalJetMass.h
bug-fix: rotation of sub-leading jet in di-jet
[u/mrichter/AliRoot.git] / PWGJE / EMCALJetTasks / UserTasks / AliAnalysisTaskEmcalJetMass.h
index 2ce8bc4a27f3aa4ac3a05460f63f3d58a3e76af0..8cf72a51dc1d047fb4a2b036ed02c90a1955ed2f 100644 (file)
@@ -15,6 +15,10 @@ class AliJetContainer;
 
 class AliAnalysisTaskEmcalJetMass : public AliAnalysisTaskEmcalJet {
  public:
+  enum JetMassType {
+    kRaw   = 0,  //mass form anti-kt 4-vector
+    kDeriv = 1   //area based subtracted jet mass
+  };
 
   AliAnalysisTaskEmcalJetMass();
   AliAnalysisTaskEmcalJetMass(const char *name);
@@ -24,30 +28,54 @@ class AliAnalysisTaskEmcalJetMass : public AliAnalysisTaskEmcalJet {
   void                                Terminate(Option_t *option);
 
   //Setters
-  void SetJetContainerBase(Int_t c)                             { fContainerBase = c;}
+  void SetJetContainerBase(Int_t c)                             { fContainerBase     = c   ; }
+  void SetMinFractionShared(Double_t f)                         { fMinFractionShared = f   ; }
+  void SetJetMassType(JetMassType t)                            { fJetMassType       = t   ; }
 
  protected:
   Bool_t                              RetrieveEventObjects();
   Bool_t                              Run();
   Bool_t                              FillHistograms();
 
-  Int_t                               fContainerBase;              // jets to be tagged
-  
- private:
-  TH2F            **fh2PtJet1VsLeadPtAllSel;      //!all jets after std selection vs leading track pt
-  TH2F            **fh2PtJet1VsLeadPtTagged;      //!tagged jets vs leading track pt
-  TH2F            **fh2PtVsMassJet1All;           //!pT vs mass of all jets
-  TH2F            **fh2PtVsMassJet1Tagged;        //!pT vs mass of tagged jets
-  TProfile        **fpPtVsMassJet1All;            //!pT vs avg mass of all jets
-  TProfile        **fpPtVsMassJet1Tagged;         //!pT vs avg mass of tagged jets
-  TH2F            **fh2MassVsAreaJet1All;         //!mass vs area of all jets
-  TH2F            **fh2MassVsAreaJet1Tagged;      //!mass vs area of tagged jets
-  TH2F            **fh2EtMassOverEtRSq;           //!Et vs (M/Et*R)^2
+  Double_t                            GetJetMass(AliEmcalJet *jet);
+  Int_t                               fContainerBase;              // jets to be analyzed
+  Double_t                            fMinFractionShared;          // only fill histos for jets if shared fraction larger than X
+  JetMassType                         fJetMassType;                // jet mass type to be used
+
+  TH3F            **fh3PtJet1VsMassVsLeadPtAllSel;         //!all jets after std selection pt vs mass vs leading track pt
+  TH3F            **fh3PtJet1VsMassVsLeadPtTagged;         //!tagged jets pt vs mass vs leading track pt
+  TH3F            **fh3PtJet1VsMassVsLeadPtTaggedMatch;    //!tagged jets pt vs mass vs leading track pt matched to MC
+  TProfile        **fpPtVsMassJet1All;                     //!pT vs avg mass of all jets
+  TProfile        **fpPtVsMassJet1Tagged;                  //!pT vs avg mass of tagged jets
+  TProfile        **fpPtVsMassJet1TaggedMatch;             //!pT vs avg mass of tagged jets matched to MC
+  TH2F            **fh2MassVsAreaJet1All;                  //!mass vs area of all jets
+  TH2F            **fh2MassVsAreaJet1Tagged;               //!mass vs area of tagged jets
+  TH2F            **fh2MassVsAreaJet1TaggedMatch;          //!mass vs area of tagged jets matched to MC
+  TH2F            **fh2MassVsNConstJet1All;                //!mass vs number of constituents of all jets
+  TH2F            **fh2MassVsNConstJet1Tagged;             //!mass vs number of constituents of tagged jets
+  TH2F            **fh2MassVsNConstJet1TaggedMatch;        //!mass vs number of constituents of tagged jets matched to MC
+
+  TH3F            **fh3PtJet1VsRatVsLeadPtAllSel;          //!all jets after std selection pt vs mass/pt vs leading track pt
+  TH3F            **fh3PtJet1VsRatVsLeadPtTagged;          //!tagged jets pt vs mass/pt vs leading track pt
+  TH3F            **fh3PtJet1VsRatVsLeadPtTaggedMatch;     //!tagged jets pt vs mas/pts vs leading track pt matched to MC
+  TProfile        **fpPtVsRatJet1All;                      //!pT vs avg mass/pt of all jets
+  TProfile        **fpPtVsRatJet1Tagged;                   //!pT vs avg mass/pt of tagged jets
+  TProfile        **fpPtVsRatJet1TaggedMatch;              //!pT vs avg mass/pt of tagged jets matched to MC
+  TH2F            **fh2RatVsAreaJet1All;                   //!mass/pt vs area of all jets
+  TH2F            **fh2RatVsAreaJet1Tagged;                //!mass/pt vs area of tagged jets
+  TH2F            **fh2RatVsAreaJet1TaggedMatch;           //!mass/pt vs area of tagged jets matched to MC
+  TH2F            **fh2RatVsNConstJet1All;                 //!mass/pt vs number of constituents of all jets
+  TH2F            **fh2RatVsNConstJet1Tagged;              //!mass/pt vs number of constituents of tagged jets
+  TH2F            **fh2RatVsNConstJet1TaggedMatch;         //!mass/pt vs number of constituents of tagged jets matched to MC
 
+  TH2F            **fh2EtMassOverEtRSq;                    //!Et vs (M/Et*R)^2
+
+ private:
   AliAnalysisTaskEmcalJetMass(const AliAnalysisTaskEmcalJetMass&);            // not implemented
   AliAnalysisTaskEmcalJetMass &operator=(const AliAnalysisTaskEmcalJetMass&); // not implemented
 
-  ClassDef(AliAnalysisTaskEmcalJetMass, 2)
+  ClassDef(AliAnalysisTaskEmcalJetMass, 7)
 };
 #endif