]>
Commit | Line | Data |
---|---|---|
70f2ce9d | 1 | #ifndef ALIKMEANSCLUSTERING_H |
2 | #define ALIKMEANSCLUSTERING_H | |
3 | ||
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
7 | // Implemenatation of the K-Means Clustering Algorithm | |
8 | // http://en.wikipedia.org/wiki/K-means_clustering | |
9 | // This particular implementation is the so called Soft K-means algorithm. | |
10 | // It has been modified to work on the cylindrical topology in eta-phi space. | |
11 | // | |
12 | // Author: Andreas Morsch (CERN) | |
13 | // andreas.morsch@cern.ch | |
14 | ||
15 | #include <TObject.h> | |
16 | ||
17 | class AliKMeansClustering : public TObject | |
18 | { | |
19 | public: | |
20 | AliKMeansClustering() {} | |
21 | virtual ~AliKMeansClustering() {} | |
22 | ||
77f42a25 | 23 | static void SoftKMeans (Int_t k, Int_t n, Double_t* x, Double_t* y, Double_t* mx, Double_t* my , Double_t* rk ); |
24 | static void SoftKMeans2(Int_t k, Int_t n, Double_t* x, Double_t* y, Double_t* mx, Double_t* my , Double_t* sigma2, | |
25 | Double_t* rk ); | |
70f2ce9d | 26 | static void SetBeta(Double_t beta) {fBeta = beta;} |
27 | static Double_t d(Double_t mx, Double_t my, Double_t x, Double_t y); | |
28 | protected: | |
29 | static Double_t fBeta; | |
30 | ||
31 | ClassDef(AliKMeansClustering, 1) | |
32 | }; | |
33 | ||
34 | #endif |