#ifndef ALIANALYSISNUCLEIMASS_H
#define ALIANALYSISNUCLEIMASS_H
#include <TList.h>
#include <AliAnalysisTaskSE.h>
#include <AliPIDResponse.h>
class AliAODEvent;
class AliESDEvent;
class AliVEvent;
class TH2F;
class TH2D;
class TH1F;
class TF1;
class TF2;
class TH2D;
class TGraph;
class AliESDtrackCuts;
class TProfile;
class TFile;
class TObject;
class AliAnalysisNucleiMass : public AliAnalysisTaskSE {
public:
AliAnalysisNucleiMass();
AliAnalysisNucleiMass(const char *name);
virtual ~AliAnalysisNucleiMass();
virtual void UserCreateOutputObjects();
virtual void UserExec(Option_t *option);
virtual void Terminate(Option_t *);
void SetCentrality(Double_t CentMin=0., Double_t CentMax=100.) {Centrality[0]=CentMin; Centrality[1]=CentMax;};
void SetFilterBit(Int_t TestFilterBit=16) {FilterBit=TestFilterBit;}
void SetEtaLimit(Double_t etaMin=-0.8, Double_t etaMax=0.8) {EtaLimit[0]=etaMin;EtaLimit[1]=etaMax;}
void SetDCACut(Double_t DCAxyCUT=0.1, Double_t DCAzCUT=1000.0) {DCAxyCut=DCAxyCUT; DCAzCut=DCAzCUT;}
void SetNsigmaTPCCut(Double_t nSigmaTpcCut=2) {NsigmaTpcCut=nSigmaTpcCut;}
void SetNminTPCcluster(Int_t nMinTPCcluster=0) {NminTpcCluster=nMinTPCcluster;}
void SetTrdCut(Int_t kTRDcut=0) {iTrdCut=kTRDcut;}
void SetisSignalCheck(Int_t IsSignalCheck=2) {kSignalCheck=IsSignalCheck;}
void SetMtofMethod(Int_t iMtofMethod=1) {iMtof=iMtofMethod;}
void SetPvtxNucleiCorrection(Int_t kMomVtxCorr=1) {kPvtxCorr=kMomVtxCorr;}
private:
AliAnalysisNucleiMass(const AliAnalysisNucleiMass &old);
AliAnalysisNucleiMass& operator=(const AliAnalysisNucleiMass &source);
static const Int_t nbin=46;
static const Int_t nBconf=2;
static const Int_t nPart=9;
static const Int_t nSpec=18;
Double_t Centrality[2];
Int_t FilterBit;
Double_t EtaLimit[2];
Double_t DCAxyCut;
Double_t DCAzCut;
Double_t NsigmaTpcCut;
Int_t NminTpcCluster;
Int_t iTrdCut;
Int_t kSignalCheck;
Int_t iMtof;
Int_t kPvtxCorr;
Int_t iBconf;
Bool_t kTOF;
static const Int_t iTriggerSel=-99;
AliAODEvent* fAOD;
AliESDEvent* fESD;
AliVEvent* fEvent;
AliPIDResponse *fPIDResponse;
TList *fList[nBconf];
TH1I *htriggerbits[nBconf][2];
TH1F *htemp[nBconf];
TH1F *hCentrality[nBconf][2];
TH1F *hZvertex[nBconf][2];
TH1F *hEta[nBconf];
TH1F *hPhi[nBconf];
TH2F *fEtaPhi[nBconf];
TH1F *hNTpcCluster[nBconf];
TH1F *hNTrdSlices[nBconf];
TH2F *fdEdxVSp[nBconf][2];
TProfile *hDeDxExp[nBconf][9];
TH2F *fNsigmaTpc[nBconf][18];
TH2F *fNsigmaTpc_kTOF[nBconf][18];
TH2F *fBetaTofVSp[nBconf][2];
TProfile *hBetaExp[nBconf][9];
TH2F *fNsigmaTof[nBconf][9];
TH2F *fM2vsP_NoTpcCut[nBconf][1][2];
TH2F *fM2vsP[nBconf][1][18];
TH2F *fM2vsZ[nBconf][10];
TH1D *hDCAxy[nBconf][18][nbin];
TH1D *hDCAz[nBconf][18][nbin];
TH2F *h2DCAap[nBconf][18];
TH1D *hM2CutDCAxy[nBconf][18][nbin];
TH2F *fPmeanVsBetaGamma[nBconf][18];
TProfile *prPmeanVsBetaGamma[nBconf][18];
TF2 *fPvtxTrueVsReco[4];
TProfile *prPvtxTrueVsReco[nBconf][4];
TF1 *fPmeanVsBGcorr[14];
TProfile *prPmeanVsBGcorr[nBconf][14];
void MomVertexCorrection(Double_t p, Double_t *pC, Double_t eta, Int_t FlagPid);
void FillDCAdist(Double_t DCAxy, Double_t DCAz, Double_t charge, Int_t FlagPid, Int_t stdFlagPid[9], Double_t *pC);
void GetMassFromPvertex(Double_t beta, Double_t p, Double_t &M2);
void GetZTpc(Double_t dedx, Double_t pTPC, Double_t M2, Double_t &Z2);
void GetMassFromPvertexCorrected(Double_t beta, Double_t *pC, Double_t *Mass2);
void GetMassFromExpTimes(Double_t beta, Double_t *IntTimes, Double_t *Mass2);
void GetPmeanVsBetaGamma(Double_t *IntTimes, Double_t *pVtx, Int_t FlagPid, Int_t FlagPidTof, Double_t charge);
void GetMassFromMeanMom(Double_t beta, Double_t *IntTimes, Double_t *pVtx, Double_t eta, Double_t charge, Double_t *Mass2, Int_t FlagPid, Int_t FlagPidTof);
void SetPvtxCorrections();
void SetPmeanCorrections();
ClassDef(AliAnalysisNucleiMass, 3);
};
#endif
AliAnalysisNucleiMass.h:1 AliAnalysisNucleiMass.h:2 AliAnalysisNucleiMass.h:3 AliAnalysisNucleiMass.h:4 AliAnalysisNucleiMass.h:5 AliAnalysisNucleiMass.h:6 AliAnalysisNucleiMass.h:7 AliAnalysisNucleiMass.h:8 AliAnalysisNucleiMass.h:9 AliAnalysisNucleiMass.h:10 AliAnalysisNucleiMass.h:11 AliAnalysisNucleiMass.h:12 AliAnalysisNucleiMass.h:13 AliAnalysisNucleiMass.h:14 AliAnalysisNucleiMass.h:15 AliAnalysisNucleiMass.h:16 AliAnalysisNucleiMass.h:17 AliAnalysisNucleiMass.h:18 AliAnalysisNucleiMass.h:19 AliAnalysisNucleiMass.h:20 AliAnalysisNucleiMass.h:21 AliAnalysisNucleiMass.h:22 AliAnalysisNucleiMass.h:23 AliAnalysisNucleiMass.h:24 AliAnalysisNucleiMass.h:25 AliAnalysisNucleiMass.h:26 AliAnalysisNucleiMass.h:27 AliAnalysisNucleiMass.h:28 AliAnalysisNucleiMass.h:29 AliAnalysisNucleiMass.h:30 AliAnalysisNucleiMass.h:31 AliAnalysisNucleiMass.h:32 AliAnalysisNucleiMass.h:33 AliAnalysisNucleiMass.h:34 AliAnalysisNucleiMass.h:35 AliAnalysisNucleiMass.h:36 AliAnalysisNucleiMass.h:37 AliAnalysisNucleiMass.h:38 AliAnalysisNucleiMass.h:39 AliAnalysisNucleiMass.h:40 AliAnalysisNucleiMass.h:41 AliAnalysisNucleiMass.h:42 AliAnalysisNucleiMass.h:43 AliAnalysisNucleiMass.h:44 AliAnalysisNucleiMass.h:45 AliAnalysisNucleiMass.h:46 AliAnalysisNucleiMass.h:47 AliAnalysisNucleiMass.h:48 AliAnalysisNucleiMass.h:49 AliAnalysisNucleiMass.h:50 AliAnalysisNucleiMass.h:51 AliAnalysisNucleiMass.h:52 AliAnalysisNucleiMass.h:53 AliAnalysisNucleiMass.h:54 AliAnalysisNucleiMass.h:55 AliAnalysisNucleiMass.h:56 AliAnalysisNucleiMass.h:57 AliAnalysisNucleiMass.h:58 AliAnalysisNucleiMass.h:59 AliAnalysisNucleiMass.h:60 AliAnalysisNucleiMass.h:61 AliAnalysisNucleiMass.h:62 AliAnalysisNucleiMass.h:63 AliAnalysisNucleiMass.h:64 AliAnalysisNucleiMass.h:65 AliAnalysisNucleiMass.h:66 AliAnalysisNucleiMass.h:67 AliAnalysisNucleiMass.h:68 AliAnalysisNucleiMass.h:69 AliAnalysisNucleiMass.h:70 AliAnalysisNucleiMass.h:71 AliAnalysisNucleiMass.h:72 AliAnalysisNucleiMass.h:73 AliAnalysisNucleiMass.h:74 AliAnalysisNucleiMass.h:75 AliAnalysisNucleiMass.h:76 AliAnalysisNucleiMass.h:77 AliAnalysisNucleiMass.h:78 AliAnalysisNucleiMass.h:79 AliAnalysisNucleiMass.h:80 AliAnalysisNucleiMass.h:81 AliAnalysisNucleiMass.h:82 AliAnalysisNucleiMass.h:83 AliAnalysisNucleiMass.h:84 AliAnalysisNucleiMass.h:85 AliAnalysisNucleiMass.h:86 AliAnalysisNucleiMass.h:87 AliAnalysisNucleiMass.h:88 AliAnalysisNucleiMass.h:89 AliAnalysisNucleiMass.h:90 AliAnalysisNucleiMass.h:91 AliAnalysisNucleiMass.h:92 AliAnalysisNucleiMass.h:93 AliAnalysisNucleiMass.h:94 AliAnalysisNucleiMass.h:95 AliAnalysisNucleiMass.h:96 AliAnalysisNucleiMass.h:97 AliAnalysisNucleiMass.h:98 AliAnalysisNucleiMass.h:99 AliAnalysisNucleiMass.h:100 AliAnalysisNucleiMass.h:101 AliAnalysisNucleiMass.h:102 AliAnalysisNucleiMass.h:103 AliAnalysisNucleiMass.h:104 AliAnalysisNucleiMass.h:105 AliAnalysisNucleiMass.h:106 AliAnalysisNucleiMass.h:107 AliAnalysisNucleiMass.h:108 AliAnalysisNucleiMass.h:109 AliAnalysisNucleiMass.h:110 AliAnalysisNucleiMass.h:111 AliAnalysisNucleiMass.h:112 AliAnalysisNucleiMass.h:113 AliAnalysisNucleiMass.h:114 AliAnalysisNucleiMass.h:115 AliAnalysisNucleiMass.h:116 AliAnalysisNucleiMass.h:117 AliAnalysisNucleiMass.h:118 AliAnalysisNucleiMass.h:119 AliAnalysisNucleiMass.h:120 AliAnalysisNucleiMass.h:121 AliAnalysisNucleiMass.h:122 AliAnalysisNucleiMass.h:123 AliAnalysisNucleiMass.h:124 AliAnalysisNucleiMass.h:125 AliAnalysisNucleiMass.h:126 AliAnalysisNucleiMass.h:127 AliAnalysisNucleiMass.h:128 AliAnalysisNucleiMass.h:129 AliAnalysisNucleiMass.h:130 AliAnalysisNucleiMass.h:131 AliAnalysisNucleiMass.h:132 AliAnalysisNucleiMass.h:133 AliAnalysisNucleiMass.h:134 AliAnalysisNucleiMass.h:135 AliAnalysisNucleiMass.h:136 AliAnalysisNucleiMass.h:137 AliAnalysisNucleiMass.h:138 AliAnalysisNucleiMass.h:139 AliAnalysisNucleiMass.h:140 AliAnalysisNucleiMass.h:141 AliAnalysisNucleiMass.h:142 AliAnalysisNucleiMass.h:143 AliAnalysisNucleiMass.h:144 AliAnalysisNucleiMass.h:145 AliAnalysisNucleiMass.h:146 AliAnalysisNucleiMass.h:147 AliAnalysisNucleiMass.h:148 AliAnalysisNucleiMass.h:149 AliAnalysisNucleiMass.h:150 AliAnalysisNucleiMass.h:151 AliAnalysisNucleiMass.h:152 AliAnalysisNucleiMass.h:153 AliAnalysisNucleiMass.h:154 AliAnalysisNucleiMass.h:155 AliAnalysisNucleiMass.h:156 AliAnalysisNucleiMass.h:157 AliAnalysisNucleiMass.h:158