1 #ifndef ALIANALYSISTASKEMCALDIJETANA_H
2 #define ALIANALYSISTASKEMCALDIJETANA_H
11 class AliAnalysisManager;
12 class AliGenPythiaEventHeader;
14 #include "AliJetContainer.h"
16 #include "AliAnalysisTaskEmcalDiJetBase.h"
18 class AliAnalysisTaskEmcalDiJetAna : public AliAnalysisTaskEmcalDiJetBase {
20 AliAnalysisTaskEmcalDiJetAna();
21 AliAnalysisTaskEmcalDiJetAna(const char *name);
22 virtual ~AliAnalysisTaskEmcalDiJetAna();
24 void UserCreateOutputObjects();
25 void Terminate(Option_t *option);
28 void SetMatchFullCharged(Bool_t b) { fDoMatchFullCharged = b;}
32 Int_t GetPtTriggerBin(Double_t pt);
36 void CorrelateJets(const Int_t type);
37 void CorrelateAllJets(const Int_t type);
38 void CorrelateTwoJets(const Int_t type);
39 void CorrelateLeadingSubleadingJets(const Int_t type);
40 AliEmcalJet *GetLeadingJet(const Int_t type);
41 AliEmcalJet *GetLeadingAssociatedJet(const Int_t type, AliEmcalJet *jetTrig);
42 AliEmcalJet *GetSecondLeadingAssociatedJet(const Int_t type, AliEmcalJet *jetTrig);
44 Bool_t FillHistograms() ;
45 void FillDiJetHistos(const AliEmcalJet *jet1 = 0, const AliEmcalJet *jet2 = 0, const Int_t mode = 0);
46 void FillThreeJetHistos(const AliEmcalJet *jet1 = 0, const AliEmcalJet *jet2 = 0, const AliEmcalJet *jet3 = 0, const Int_t mode = 0);
47 Bool_t RetrieveEventObjects();
49 void FillMatchFullChargedHistos(Int_t cFull,Int_t cCharged);
50 Int_t MatchFullAndChargedJets(Int_t cFull, Int_t cCharged);
53 Bool_t fDoMatchFullCharged; // do full-charged matching histos
54 TH2F *fh2CentRhoCh; //! cent vs rho charged
55 TH2F *fh2CentRhoScaled; //! cent vs rho scaled
56 TH3F *fh3PtEtaPhiJetFull; //! pt,eta,phi of full jets
57 TH3F *fh3PtEtaPhiJetCharged; //! pt,eta,phi of charged jets
59 THnSparse *fhnDiJetVarsFull; //! sparse with di-jet properties (full-full)
60 THnSparse *fhnDiJetVarsCh; //! sparse with di-jet properties (charged-charged)
61 THnSparse *fhnDiJetVarsFullCharged; //! sparse with di-jet properties (full-charged)
62 THnSparse *fhnMatchingFullCharged; //! sparse comparing full with matched charged jet
63 TH3F *fh3JetPtFullFractionDR; //! full jet pt vs highest shared charged fraction vs DeltaR
65 TH3F *fh3DiJetKtNEFPtAssoc[4]; //! dijet kt vs NEF vs pTassoc for 4 trigger intervals
67 TH3F *fCentCorrPtAssocCh[4]; //! default(V0A) vs ZNA centrality vs pT trigger assoc
68 TH3F *fCentCorrPtAssocFuCh[4]; //! default(V0A) vs ZNA centrality vs pT trigger assoc
70 TH3F *fAjPtAssocCentCh[4]; //! Aj vs pT trigger assoc vs centrality
71 TH3F *fAjPtAssocCentFuCh[4]; //! Aj vs pT trigger assoc vs centrality
73 TH3F *fh3PtTrigKt1Kt2Ch; //! ptTrig vs kT1 vs kT2 for 3-jet events
74 TH3F *fh3PtTrigKt1Kt2FuCh; //! ptTrig vs kT1 vs kT2 for 3-jet events
76 TH3F *fh3PtTrigDPhi1DPhi2Ch; //! ptTrig vs DPhi12 vs DPhi13 for 3-jet events
77 TH3F *fh3PtTrigDPhi1DPhi2FuCh; //! ptTrig vs DPhi12 vs DPhi13 for 3-jet events
79 TH3F *fh3PtAssoc1PtAssoc2DPhi23Ch[4]; //! ptAssoc1 vs ptAssoc2 vs DPhi23 for 3-jet events
80 TH3F *fh3PtAssoc1PtAssoc2DPhi23FuCh[4]; //! ptAssoc1 vs ptAssoc2 vs DPhi23 for 3-jet events
82 AliAnalysisTaskEmcalDiJetAna(const AliAnalysisTaskEmcalDiJetAna&); // not implemented
83 AliAnalysisTaskEmcalDiJetAna &operator=(const AliAnalysisTaskEmcalDiJetAna&); // not implemented
85 ClassDef(AliAnalysisTaskEmcalDiJetAna, 8) // dijet analysis task