Some new plots added.
[u/mrichter/AliRoot.git] / JETAN / AliAnalysisTaskKMeans.h
1 #ifndef AliAnalysisTaskKMeans_cxx
2 #define AliAnalysisTaskKMeans_cxx
3  /* Copyright(c) 1998-2007, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id$ */
7
8 //-------------------------------------------------------------------------
9 //     Analysis Task that uses the Soft K-Means Algorithm to find clusters in
10 //     the eta-phi space of Minimum Bias. No pt information is used for the clustering.
11 //     
12 //
13 //     Author: Andreas Morsch (CERN)
14 //     andreas.morsch@cern.ch
15 //-------------------------------------------------------------------------
16
17 class TH1F;
18 class TH2F;
19 class TList;
20 class TProfile;
21
22 class AliESDEvent;
23 class AliESDtrack;
24 class AliESDtrackCuts;
25
26
27 #include "AliAnalysisTaskSE.h"
28
29 class AliAnalysisTaskKMeans : public AliAnalysisTaskSE {
30  public:
31     AliAnalysisTaskKMeans();
32   AliAnalysisTaskKMeans(const char *name);
33   virtual ~AliAnalysisTaskKMeans() {}
34   virtual void     UserCreateOutputObjects();
35   virtual void     UserExec(Option_t *option);
36   virtual void     Terminate(Option_t *);
37   virtual void     SetCuts(AliESDtrackCuts* cuts) {fCuts = cuts;}
38   virtual Double_t DeltaPhi(Double_t phi1, Double_t phi2);
39   virtual Double_t DeltaR(Double_t phi1, Double_t eta1, Double_t phi2, Double_t eta2);
40   
41  private:
42   // Others
43   TList*           fHists;         // Histograms
44   TH1F*            fH1CEta;        // Eta distribution of clusters
45   TH1F*            fH1CPhi;        // Phi distribution of clusters  
46   TH1F*            fH1CEtaR;       // Eta distribution of clusters for rndm evnt
47   TH2F*            fH2N1N2;        // Cluster sizes 
48   TH1F*            fH1Pt;          // pt outside clusters
49   TH1F*            fH1PtC;         // pt outside clusters
50   TH1F*            fH1PtC1;        // pt dr > 0.4
51   TH1F*            fH1PtC2;        // pt dr > 0.2 
52   TH1F*            fH1SPt;         // sum pt
53   TH1F*            fH1SPtC;        // sum pt
54   TH1F*            fH1DPhi;        // Dphi wr to cluster
55   TH1F*            fH1DR;          // DR   wr to cluster
56   TH1F*            fH1DRR;         // DR   wr to cluster from rndm events   
57   TH2F*            fH2DPhiEta;     // eta-phi wr to cluster
58   TH2F*            fH2DPhiEtaR;    // eta-phi wr to cluster for rndm events 
59   TH2F*            fH2DPhiEtaL;    // eta-phi of leading particle
60   TH2F*            fH2DPhiEtaC;    // eta-phi of Clusters
61   TH2F*            fH2DPhiEtaCR;   // eta-phi of Clusters
62   
63   AliESDtrackCuts* fCuts;             // List of cuts
64   ClassDef(AliAnalysisTaskKMeans, 1); // A k-means clustering analysis
65 };
66
67 #endif