]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG4/JetTasks/AliAnalysisTaskJFSystematics.h
Possibility to copy the number of the TPC clusters from an AOD track to an ESD track...
[u/mrichter/AliRoot.git] / PWG4 / JetTasks / AliAnalysisTaskJFSystematics.h
CommitLineData
332419dd 1#ifndef ALIANALYSISTASKJFSYSTEMATICS_H
2#define ALIANALYSISTASKJFSYSTEMATICS_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7// **************************************
8// Task used for the correction of determiantion of reconstructed jet spectra
9// Compares input (gen) and output (rec) jets
10// *******************************************
11
12#include "AliAnalysisTaskSE.h"
13#include "THnSparse.h" // cannot forward declare ThnSparseF
14
15////////////////
16class AliJetHeader;
17class AliESDEvent;
18class AliAODEvent;
19class AliAODJet;
20class AliGenPythiaEventHeader;
21
22class TList;
23class TChain;
24class TH2F;
25class TH3F;
26class TProfile;
27
28
29
30class AliAnalysisTaskJFSystematics : public AliAnalysisTaskSE
31{
32 public:
33 AliAnalysisTaskJFSystematics();
34 AliAnalysisTaskJFSystematics(const char* name);
35 virtual ~AliAnalysisTaskJFSystematics() {;}
36 // Implementation of interface methods
37 virtual void UserCreateOutputObjects();
38 virtual void Init();
39 virtual void LocalInit() { Init(); }
40 virtual void UserExec(Option_t *option);
41 virtual void Terminate(Option_t *option);
42 virtual Bool_t Notify();
43
44
45 virtual void SetExternalWeight(Float_t f){fExternalWeight = f;}
46 virtual void SetUseExternalWeightOnly(Bool_t b){fUseExternalWeightOnly = b;}
47 virtual void SetAODInput(Bool_t b){fUseAODInput = b;}
48 virtual void SetLimitGenJetEta(Bool_t b){fLimitGenJetEta = b;}
49 virtual void SetRecEtaWindow(Float_t f){fRecEtaWindow = f;}
50 virtual void SetAnalysisType(UInt_t i){fAnalysisType = i;}
51 virtual void SetBranchGen(const char* c){fBranchGen = c;}
52 virtual void SetBranchRec(const char* c){fBranchRec = c;}
53
54 // ========= TODO Multiplicity dependence ======
55 // ========= TODO z-dependence? ======
56 // ========= TODO flavor dependence ========
57 // ============================================
58 enum {kSysJetOrder = 1, kSysTypes};
59
da74fb15 60 enum {kMaxJets = 6}; // limit to 6 jets...
332419dd 61
62 private:
63
64 AliAnalysisTaskJFSystematics(const AliAnalysisTaskJFSystematics&);
65 AliAnalysisTaskJFSystematics& operator=(const AliAnalysisTaskJFSystematics&);
66
67
68 static const Int_t fgkSysBins[kSysTypes];
69 static const char* fgkSysName[kSysTypes];
70
71 AliJetHeader *fJetHeaderRec;
72 AliJetHeader *fJetHeaderGen;
73 AliAODEvent *fAOD; // where we take the jets from can be input or output AOD
74
75 TString fBranchRec; // AOD branch name for reconstructed
76 TString fBranchGen; // AOD brnach for genereated
77
78 Bool_t fUseAODInput; // use AOD input
79 Bool_t fUseExternalWeightOnly; // use only external weight
80 Bool_t fLimitGenJetEta; // Limit the eta of the generated jets
519378fb 81 UInt_t fAnalysisType; // Analysis type
332419dd 82 Float_t fExternalWeight; // external weight
83 Float_t fRecEtaWindow; // eta window used for corraltion plots between rec and gen
519378fb 84 Float_t fAvgTrials; // average number of trials from pyxsec.root or pysec_hists.root in case trials are not avaiable from the MC Header
332419dd 85 // Event histograms
86 TProfile* fh1Xsec; // pythia cross section and trials
87 TH1F* fh1Trials; // trials are added
88 TH1F* fh1PtHard; // Pt har of the even
89 TH1F* fh1PtHardNoW; // Pt hard of the event without trials
90 TH1F* fh1PtHardTrials; // Number of trials
91 TH1F* fh1NGenJets; // number of generated jets
92 TH1F* fh1NRecJets; // number of reconstructed jets
93
94 TH1F* fh1PtRecIn; // Jet pt for all
95 TH1F* fh1PtRecOut; // Jet pt with corellated generated jet
96 TH1F* fh1PtGenIn; // Detection efficiency for given p_T.gen
97 TH1F* fh1PtGenOut; // gen pT of found jets
98
99 TH2F* fh2PtFGen; // correlation betwen genreated and found jet pT
100 TH2F* fh2PhiFGen; // correlation betwen genreated and found jet phi
101 TH2F* fh2EtaFGen; // correlation betwen genreated and found jet eta
102 TH2F* fh2PtGenDeltaPhi; // difference between generated and found jet phi
103 TH2F* fh2PtGenDeltaEta; // difference between generated and found jet eta
104
105
106 TH3F* fh3RecInEtaPhiPt; // correlation between eta phi and rec pt
107 TH3F* fh3RecOutEtaPhiPt; // correlation between eta phi and rec pt of jets with a partner
108 TH3F* fh3GenInEtaPhiPt; // correlation between eta phi and gen pt
109 TH3F* fh3GenOutEtaPhiPt; // correlation between eta phi and gen pt of jets with a partner
110
111 THnSparseF* fhnCorrelation; // correlation can be used for unfolding
112
113
114 TList *fHistList; // Output list
115
116
519378fb 117 ClassDef(AliAnalysisTaskJFSystematics, 2) // Analysis task for standard jet analysis
332419dd 118};
119
120#endif