]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGLF/STRANGENESS/Hypernuclei/AliAnalysisTaskAntiHe4.h
updates of anti-alpha task.
[u/mrichter/AliRoot.git] / PWGLF / STRANGENESS / Hypernuclei / AliAnalysisTaskAntiHe4.h
CommitLineData
110805a7 1#ifndef ALIANALYSISTASKANTIHE4_CXX
2#define ALIANALYSISTASKANTIHE4_CXX
3
4// anti-alpha analysis
5// Authors: Alexander Kalweit and Nicole Martin
6
7class TF1;
8class TH1F;
9class TH2F;
d1f5b077 10class TH3F;
110805a7 11class AliESDEvent;
12class AliESDtrackCuts;
13class AliESDVertex;
14
15#include "AliAnalysisTaskSE.h"
16#include "THn.h"
17#include "TH3F.h"
18#include "TGraph.h"
d1f5b077 19#include "AliStack.h"
110805a7 20
21class AliAnalysisTaskAntiHe4 : public AliAnalysisTaskSE {
22 public:
23 AliAnalysisTaskAntiHe4();
24 AliAnalysisTaskAntiHe4(const char *name);
25 virtual ~AliAnalysisTaskAntiHe4() {}
26
27 virtual void UserCreateOutputObjects();
28 virtual void UserExec(Option_t *option);
29 virtual void Terminate(const Option_t*);
30 Int_t Initialize();
31 Int_t SetupEvent();
32 void ResetEvent();
33
34
35 private:
36 AliInputEventHandler *fEventHandler; // for ESDs or AODs
37 AliESDEvent *fESD; // ESD object
38 TH1F *fHistCentralityClass10; //! histo to look at the centrality distribution
39 TH1F *fHistCentralityPercentile; //! histo to look at the centrality distribution
40 TH1F *fHistTriggerStat; //! Trigger statistics
41 TH1F *fHistTriggerStatAfterEventSelection; //! Trigger statistics
42 TH3F *fHistDEDx; //! final histograms for anti-alpha analysis
43 TH3F *fHistTOF3D; //! final histograms for anti-alpha analysis
44 TH1F *fHistAlpha; //! Alpha plot TOF mass
45 TH1F *fHistAlphaSignal; //! Alpha plot TOF mass only signal candidates
46 TGraph *fGraphAlphaSignal; //! TGraph with alphas / dE/dx vs. mom
47 Int_t fNCounter; //! counts alphas
48
49 TH2F *fHistDeDx; //! histo for a dE/dx
50 TH3F *fHistDeDxRegion; //! histo for a dE/dx per Region
51 TH2F *fHistDeDxSharp; //! histo for a dE/dx with sharp cuts
52
53 TH2F *fHistTOF2D; //! histo for a TOF
54 TH2F *fHistTOFnuclei; //! histo for a TOF nuclei
55
56 Int_t fNTriggers; //! N Triggers used
57 Double_t fBBParametersLightParticles[5]; //! Bethe Bloch paramters for light paritcles
58 Double_t fBBParametersNuclei[5]; //! Bethe Bloch paramters for nuclei
59 Bool_t fMCtrue; //! flag if real data or MC is processed
60 Bool_t fTriggerFired[5]; //! TriggerFired 0: MB | 1: CE | 2: SC | 3: EJE | 4: EGA
61 //
62 AliESDtrackCuts *fESDtrackCuts; // basic cut variables
63 AliESDtrackCuts *fESDtrackCutsSharp; // sharp cut variables for final results
64 AliESDpid *fESDpid; // basic TPC object for n-sigma cuts
65 THnF *fAntiAlpha; //! histogram for particle ratios as a function of momentum: (0.) dca, (1.) sign, (2.) particle Type, (3.) p_tot
66
d1f5b077 67 TH1F *fHistHelium4PtGen; //! for MC
68 TH1F *fHistHelium4PtGenPrim; //! for MC
69 TH1F *fHistHelium4PtGenSec; //! for MC
70 TH1F *fHistHelium4PtGenEta; //! for MC
71 TH1F *fHistHelium4PtGenPrimEta; //! for MC
72 TH1F *fHistAntiHelium4PtGen; //! for MC
73 TH1F *fHistAntiHelium4PtGenPrim; //! for MC
74 TH1F *fHistAntiHelium4PtGenSec; //! for MC
75 TH1F *fHistAntiHelium4PtGenEta; //! for MC
76 TH1F *fHistHelium4PtAso; //! for MC
77 TH1F *fHistHelium4PtAsoPrim; //! for MC
78 TH1F *fHistHelium4PtAsoSec; //! for MC
79 TH1F *fHistAntiHelium4PtAso; //! for MC
80
81
110805a7 82 void BinLogAxis(const THn *h, Int_t axisNumber); // define function for log axis for search for Anti-Alpha candidates
83 void BinLogAxis(const TH3 *h, Int_t axisNumber);
84 void BinLogAxis(const TH1 *h);
85 Bool_t IsTriggered();
86 void SetBBParameters(Int_t runnumber);
d1f5b077 87 void MCGenerated(AliStack* stack);
110805a7 88
89 //
90 // output containers
91 //
92 TTree *fTree;
93 TObjArray * fOutputContainer; // ! output data container
94 //
95 // tree variables
96 //
439dd8c8 97 Char_t fName[1000];
98 Int_t fEvnt;
99 Char_t fFileName[1000];
d1f5b077 100 Int_t fEventNumber[1000];
439dd8c8 101 //
102 Int_t fItrk;
103 //
104 Double_t fEta[1000];
105 Int_t fKinkIndex[1000];
106 //
107 UShort_t fTPCNsignal[1000];
108 UShort_t fTPCnCluster[1000];
109 Double_t fChi2PerClusterTPC[1000];
110 Bool_t fTPCRefit[1000];
111 Double_t fTPCsignal0[1000];
112 Double_t fTPCsignal1[1000];
113 Double_t fTPCsignal2[1000];
114 Double_t fTPCsignal3[1000];
115 Int_t fTPCSharedClusters[1000];
116 UShort_t fTPCNclsIter1[1000];
117 //
118 Double_t fITSsignal[1000];
119 Int_t fITSnCluster[1000];
120 Double_t fChi2PerClusterITS[1000];
121 Bool_t fITSRefit[1000];
122 //
123 Bool_t fTOFRefit[1000];
124 Bool_t fTOFtime[1000];
125 Bool_t fTOFout[1000];
126 Double_t fTOFsignalDz[1000];
127 Double_t fTOFsignalDx[1000];
128 //
129 Float_t fDCAZ[1000];
130 Float_t fDCAXY[1000];
131 //
132 Double_t fTrkPtot[1000];
133 Double_t fTPCPtot[1000];
134 Double_t fTrackPt[1000];
135 Double_t fDeDx[1000];
136 Double_t fSign[1000];
137 Float_t fMass[1000];
138 //
d1f5b077 139 Bool_t fAssociated[1000];
439dd8c8 140
110805a7 141 //
142 //
143 AliAnalysisTaskAntiHe4(const AliAnalysisTaskAntiHe4&); // not implemented
144 AliAnalysisTaskAntiHe4& operator=(const AliAnalysisTaskAntiHe4&); // not implemented
145
146 ClassDef(AliAnalysisTaskAntiHe4, 1); // example of analysis
147};
148
149#endif