ROOT logo
#ifndef ALIANALYSISKINKESDat_H
#define ALIANALYSISKINKESDat_H

/*  See cxx source for full Copyright notice */

//-----------------------------------------------------------------
//                 AliAnalysisKinkESDat class
//         This task is an example of an analysis task
//                  for kink topology Study
//          Authors: Martha Spyropoulou-Stassinaki
//           and members of the Greek group at the
//          Physics Department of Athens University
//                    mspyrop@phys.uoa.gr
//-----------------------------------------------------------------
class AliPIDResponse;
class AliESDVertex;
class AliESDtrack;
class TF1;
class TH1F;
class TH2F;
class TH3F;
class TH1D;
class TH2D;
class TList;
class AliESDtrackCuts;

#include "AliAnalysisTaskSE.h"

class AliAnalysisKinkESDat : public AliAnalysisTaskSE {
 public:
  AliAnalysisKinkESDat(const char *name = "AliAnalysisKinkESDat");
  virtual ~AliAnalysisKinkESDat() {}

  virtual void   UserCreateOutputObjects();
  virtual void   UserExec(Option_t *option);
  virtual void   Terminate(Option_t *);
  
  const AliESDVertex *GetEventVertex(const AliESDEvent* esd) const;
//           Marek multiplicity bins
  void SetMulCut(Int_t low, Int_t up){fLowMulcut=low;fUpMulcut=up;}	  
  void SetKinkRadius(Float_t lRadiusKLow, Float_t lRadiusKUp)  { fKinkRadLow=lRadiusKLow; fKinkRadUp=lRadiusKUp;}	  

  void SetNClusterCut(Int_t lowCluster){fLowCluster=lowCluster;}	  
  void SetQtCut(Float_t   lowQt){fLowQt=lowQt;}	  
         void SetYKRange(Float_t  RapidityK){fRapiK=RapidityK;}
 private:
   TH1F        *fHistPtESD; //Pt spectrum of all ESD inside eta, Pt cuts
   TH1F        *fHistPt; //Pt spectrum of all ESD tracks
   TH1F        *fHistQtAll; //Qt spectrum of all kinks
   TH1F        *fHistQt1; //Qt spectrum of Kaon selected sample
   TH1F        *fHistQt2; //Qt spectrum in Qt region of kaons
   TH1F        *fHistPtKaon; //Pt Kaon spectrum of clean sample
   TH1F        *fHistPtKPDG; //Pt Kaon spectrum , confirmed by  PDG,inside kaon Qt region
   TH1F        *fHistEta; //Eta spectrum of all kinks
   TH1F        *fHistEtaK; //Eta spectrum of kaons selected by kink topology
   TH1F        *fptKMC; //Pt Kaon spectrum MC, inside eta and pt cuts 
   TH1F        *fMultiplMC; //charge multipl MC 
   TH1F        *fESDMult; //ESD charged mult
   TH1F        *fgenpt; //Pt Kaon-Kink->mu  spectrum , MC, inside eta, Pt, radius cuts
   TH1F        *frad; //radius of kinks,  MC , inside the eta nad Pt cuts 
   TH1F        *fKinkKaon; //Pt of PDG Kaons inside the selcted ones by the KInk topology 
   TH1F        *fKinKRbn; //Pt of PDG Kaons inside the selcted ones by the KInk topology 
   TH1F        *fKinkKaonBg; //Pt of the BG inside the kink-Kaon identified spectrum
   TH1F        *fM1kaon; //inv mass of kink-tracks taken as kaons decaying to  mu + neutrino
   TH1F        *fPtKink; //Pt  spectrum   of all kinks  from track bank
   TH1F        *fptKink; //Pt  spectrum of all kinks from kink bank
   TH2F        *fAngMomK; // Decay angle vrs Mother Mom for pdg kaons
   TH2F        *fAngMomPi; // Decay angle vrs Mother Mom for pdg pions
   TH2F        *fAngMomKC; //Decay angle vrs Mother Mom for pdg kaons, inside the selected sample
   TH1F        *fMultESDK; //ESD charged mult
   TH1F        *fMultMCK; //MC K charged mult
   TH2F        *fSignPtNcl;//signPt vrs number of clusters in TPC for kaons from kink sele sample
   TH2F        *fSignPtEta;//signPt vrs Eta  in TPC for kaons from kink sele sample
   TH2F        *fEtaNcl;//Eta    vrs Nclu in TPC for kaons from kink sele sample
   TH1F        *fSignPt;//signPt  in TPC for kaons from kink sele sample
   TH2F        *fChi2NclTPC;//chi2 vrs TPC Nclusters for kaons from kink sele sample
   TH1F        *fRatChi2Ncl;// Ratio chi2/ Ncl  TPC  for kaons from kink sele sample
   TH2F        *fRadiusNcl;//kink  Radius      Ncl  TPC  for kaons from kink sele sample
   TH2F        *fTPCSgnlP;//kink  Radius      Ncl  TPC  for kaons from kink sele sample
   TH2F        *fTPCSgnlPa;//kink  Radius      Ncl  TPC  for  kink sele sample
   TH1D        *fRpr; // Radius of VTX at Y , X plane              
   TH1D        *fZpr; //Z distrio of main vertex                  
   TH1D        *fdcatoVxXY; //dca to Vertex XY  distrio                   
   TH1D        *fnSigmToVx; //nSigma to Vertex  distrio of main vertex                  
   TH2F        *fKinkMothDau; //Mother vrs Daughter                                       
   TH2F        *fZvXv; //two dime of Z vrs X of vtx main           
   TH2F        *fZvYv; // two dime of Z vrs Y of vtx main           
   TH2F        *fXvYv; // two dime of X vrs Y of main tracks vtx main           
   TH1F        *fHistPtKaoP; //Pt Kaon spectrum of clean sample pos
   TH1F        *fHistPtKaoN; //Pt Kaon spectrum of clean sample neg
   TH1F        *frapiKESD;// rapidi K      
   TH1F        *flifetime;//radius of kinks,  MC , inside the eta nad Pt cuts 
   TH1F        *fradLK;//Length  of kinks,  MC , inside the eta nad Pt cuts 
   TH3F        *fradPtRpDt;//radius of kinks,  MC , inside the eta nad Pt cuts 
   TH1F        *fInvMuNuAll;//radius of kinks,  MC , inside the eta nad Pt cuts 
   TH2F        *fQtInvM;// 
   TH1F        *fDCAkink;//!MC dcs kink
   TH2F        *fPosiKink;//!MC position  kink
   TH2F        *fPosiKinkK;//!MC position  kink
   TH2F        *fPosiKinKXZ;//!MC position  kink
   TH2F        *fPosiKinKYZ;//!MC position  kink
   TH2F        *fPosiKinKBg;//!MC position  kink
   TH2F        *fQtMothP;//!qt vrs p mother  
   TH2F        *fTPCSgnlPtpc;//Kink mother moment vrs TPC signal                 
   TH2F        *fTPCMomNSgnl;//kink  mother TPC momentum vrs nsigmas of dEdx                    
   TH2F        *fMothKinkMomSgnl;//kink  mother TPC momentum vrs nsigmas of dEdx                    
   TH1F        *fNSigmTPC;//kink  mother TPC momentum vrs nsigmas of dEdx                    
   TH2F        *fTPCSgnlKinkDau;//Kink mother moment vrs TPC signal                 
   TH1F        *fPtKinkPos; //Pos K Pt  spectrum   of all kinks  from track bank, K0 bins
   TH1F        *fPtKinkNeg; //Neg K Pt  spectrum   of all kinks  from track bank, K0 bins
   TH2F        *fRadNclCln;//kink  Radius      Ncl  TPC  for kaons from kink clean sample
   TH1F        *fRatioCrossedRows; //ratio  crossed rows                                           
   TH1F        *fRatioCrossedRowsKink; //ratio  crossed rows  for kinks                                         
   TH2F        *fRadiusPt;//kinks,  Radius      vs Pt                                        
   TH2F        *fRadiusPtcln;//kinks,  Radius      vs Pt    for clean kaons                                     
   TH2F        *fInvMassMuNuPt;//kinks,Invariant Mass MuNu     vs Pt                                         
   TH2F        *fInvMassMuNuPtAll;//kinks,Invariant Mass MuNu     vs Pt                                         
   TH1F        *fPtCut1; //K Pt  spectrum   of all kinks  from track bank, K0 bins
   TH1F        *fPtCut2; //K Pt  spectrum   of all kinks  from track bank, K0 bins
   TH1F        *fPtCut3; //K Pt  spectrum   of all kinks  from track bank, K0 bins
   TH2F        *fAngMomKKinks;//kinks,  Angle vs Momentum  for K-kinks                                      



   TF1         *f1;
   TF1         *f2;
  TList        *fListOfHistos; // list of histos
//          Marek Multiplicity
Int_t fLowMulcut;  // 
Int_t fUpMulcut;
Float_t fKinkRadUp;
Float_t fKinkRadLow;
Int_t fLowCluster;
Float_t  fLowQt;       
    Float_t  fRapiK;
AliESDtrackCuts* fCutsMul;
AliESDtrackCuts* fMaxDCAtoVtxCut;  
AliPIDResponse *fPIDResponse;     //! PID response object

  AliAnalysisKinkESDat(const AliAnalysisKinkESDat&); // not implemented
  AliAnalysisKinkESDat& operator=(const AliAnalysisKinkESDat&); // not implemented

  ClassDef(AliAnalysisKinkESDat, 1); // example of analysis
};

#endif
 AliAnalysisKinkESDat.h:1
 AliAnalysisKinkESDat.h:2
 AliAnalysisKinkESDat.h:3
 AliAnalysisKinkESDat.h:4
 AliAnalysisKinkESDat.h:5
 AliAnalysisKinkESDat.h:6
 AliAnalysisKinkESDat.h:7
 AliAnalysisKinkESDat.h:8
 AliAnalysisKinkESDat.h:9
 AliAnalysisKinkESDat.h:10
 AliAnalysisKinkESDat.h:11
 AliAnalysisKinkESDat.h:12
 AliAnalysisKinkESDat.h:13
 AliAnalysisKinkESDat.h:14
 AliAnalysisKinkESDat.h:15
 AliAnalysisKinkESDat.h:16
 AliAnalysisKinkESDat.h:17
 AliAnalysisKinkESDat.h:18
 AliAnalysisKinkESDat.h:19
 AliAnalysisKinkESDat.h:20
 AliAnalysisKinkESDat.h:21
 AliAnalysisKinkESDat.h:22
 AliAnalysisKinkESDat.h:23
 AliAnalysisKinkESDat.h:24
 AliAnalysisKinkESDat.h:25
 AliAnalysisKinkESDat.h:26
 AliAnalysisKinkESDat.h:27
 AliAnalysisKinkESDat.h:28
 AliAnalysisKinkESDat.h:29
 AliAnalysisKinkESDat.h:30
 AliAnalysisKinkESDat.h:31
 AliAnalysisKinkESDat.h:32
 AliAnalysisKinkESDat.h:33
 AliAnalysisKinkESDat.h:34
 AliAnalysisKinkESDat.h:35
 AliAnalysisKinkESDat.h:36
 AliAnalysisKinkESDat.h:37
 AliAnalysisKinkESDat.h:38
 AliAnalysisKinkESDat.h:39
 AliAnalysisKinkESDat.h:40
 AliAnalysisKinkESDat.h:41
 AliAnalysisKinkESDat.h:42
 AliAnalysisKinkESDat.h:43
 AliAnalysisKinkESDat.h:44
 AliAnalysisKinkESDat.h:45
 AliAnalysisKinkESDat.h:46
 AliAnalysisKinkESDat.h:47
 AliAnalysisKinkESDat.h:48
 AliAnalysisKinkESDat.h:49
 AliAnalysisKinkESDat.h:50
 AliAnalysisKinkESDat.h:51
 AliAnalysisKinkESDat.h:52
 AliAnalysisKinkESDat.h:53
 AliAnalysisKinkESDat.h:54
 AliAnalysisKinkESDat.h:55
 AliAnalysisKinkESDat.h:56
 AliAnalysisKinkESDat.h:57
 AliAnalysisKinkESDat.h:58
 AliAnalysisKinkESDat.h:59
 AliAnalysisKinkESDat.h:60
 AliAnalysisKinkESDat.h:61
 AliAnalysisKinkESDat.h:62
 AliAnalysisKinkESDat.h:63
 AliAnalysisKinkESDat.h:64
 AliAnalysisKinkESDat.h:65
 AliAnalysisKinkESDat.h:66
 AliAnalysisKinkESDat.h:67
 AliAnalysisKinkESDat.h:68
 AliAnalysisKinkESDat.h:69
 AliAnalysisKinkESDat.h:70
 AliAnalysisKinkESDat.h:71
 AliAnalysisKinkESDat.h:72
 AliAnalysisKinkESDat.h:73
 AliAnalysisKinkESDat.h:74
 AliAnalysisKinkESDat.h:75
 AliAnalysisKinkESDat.h:76
 AliAnalysisKinkESDat.h:77
 AliAnalysisKinkESDat.h:78
 AliAnalysisKinkESDat.h:79
 AliAnalysisKinkESDat.h:80
 AliAnalysisKinkESDat.h:81
 AliAnalysisKinkESDat.h:82
 AliAnalysisKinkESDat.h:83
 AliAnalysisKinkESDat.h:84
 AliAnalysisKinkESDat.h:85
 AliAnalysisKinkESDat.h:86
 AliAnalysisKinkESDat.h:87
 AliAnalysisKinkESDat.h:88
 AliAnalysisKinkESDat.h:89
 AliAnalysisKinkESDat.h:90
 AliAnalysisKinkESDat.h:91
 AliAnalysisKinkESDat.h:92
 AliAnalysisKinkESDat.h:93
 AliAnalysisKinkESDat.h:94
 AliAnalysisKinkESDat.h:95
 AliAnalysisKinkESDat.h:96
 AliAnalysisKinkESDat.h:97
 AliAnalysisKinkESDat.h:98
 AliAnalysisKinkESDat.h:99
 AliAnalysisKinkESDat.h:100
 AliAnalysisKinkESDat.h:101
 AliAnalysisKinkESDat.h:102
 AliAnalysisKinkESDat.h:103
 AliAnalysisKinkESDat.h:104
 AliAnalysisKinkESDat.h:105
 AliAnalysisKinkESDat.h:106
 AliAnalysisKinkESDat.h:107
 AliAnalysisKinkESDat.h:108
 AliAnalysisKinkESDat.h:109
 AliAnalysisKinkESDat.h:110
 AliAnalysisKinkESDat.h:111
 AliAnalysisKinkESDat.h:112
 AliAnalysisKinkESDat.h:113
 AliAnalysisKinkESDat.h:114
 AliAnalysisKinkESDat.h:115
 AliAnalysisKinkESDat.h:116
 AliAnalysisKinkESDat.h:117
 AliAnalysisKinkESDat.h:118
 AliAnalysisKinkESDat.h:119
 AliAnalysisKinkESDat.h:120
 AliAnalysisKinkESDat.h:121
 AliAnalysisKinkESDat.h:122
 AliAnalysisKinkESDat.h:123
 AliAnalysisKinkESDat.h:124
 AliAnalysisKinkESDat.h:125
 AliAnalysisKinkESDat.h:126
 AliAnalysisKinkESDat.h:127
 AliAnalysisKinkESDat.h:128
 AliAnalysisKinkESDat.h:129
 AliAnalysisKinkESDat.h:130
 AliAnalysisKinkESDat.h:131
 AliAnalysisKinkESDat.h:132
 AliAnalysisKinkESDat.h:133
 AliAnalysisKinkESDat.h:134
 AliAnalysisKinkESDat.h:135
 AliAnalysisKinkESDat.h:136
 AliAnalysisKinkESDat.h:137
 AliAnalysisKinkESDat.h:138
 AliAnalysisKinkESDat.h:139
 AliAnalysisKinkESDat.h:140
 AliAnalysisKinkESDat.h:141
 AliAnalysisKinkESDat.h:142
 AliAnalysisKinkESDat.h:143
 AliAnalysisKinkESDat.h:144
 AliAnalysisKinkESDat.h:145
 AliAnalysisKinkESDat.h:146