Line | |
---|
1 | #ifndef _JETCLU_ALGORITHM_HH_
|
---|
2 | #define _JETCLU_ALGORITHM_HH_
|
---|
3 |
|
---|
4 | #include "PhysicsTower.hh"
|
---|
5 | #include "Cluster.hh"
|
---|
6 | #include <vector>
|
---|
7 |
|
---|
8 | class JetCluAlgorithm
|
---|
9 | {
|
---|
10 | private:
|
---|
11 | double _seedThreshold;
|
---|
12 | double _coneRadius;
|
---|
13 | int _adjacencyCut;
|
---|
14 | int _maxIterations;
|
---|
15 | int _iratch;
|
---|
16 | double _overlapThreshold;
|
---|
17 |
|
---|
18 | public:
|
---|
19 | JetCluAlgorithm():
|
---|
20 | _seedThreshold(1),
|
---|
21 | _coneRadius(0.7),
|
---|
22 | _adjacencyCut(2),
|
---|
23 | _maxIterations(100),
|
---|
24 | _iratch(1),
|
---|
25 | _overlapThreshold(0.75)
|
---|
26 | {}
|
---|
27 | JetCluAlgorithm(double st, double cr, int ac, int mi, int ir, double ot):
|
---|
28 | _seedThreshold(st),
|
---|
29 | _coneRadius(cr),
|
---|
30 | _adjacencyCut(ac),
|
---|
31 | _maxIterations(mi),
|
---|
32 | _iratch(ir),
|
---|
33 | _overlapThreshold(ot)
|
---|
34 | {}
|
---|
35 | void makeSeedTowers(std::vector<PhysicsTower>& towers, std::vector<Cluster>& seedTowers);
|
---|
36 | void buildPreClusters(std::vector<Cluster>& seedTowers, std::vector<PhysicsTower>& towers, std::vector<Cluster>& preClusters);
|
---|
37 | void findStableCones(std::vector<Cluster>& preClusters, std::vector<PhysicsTower>& towers, std::vector<Cluster>& stableCones);
|
---|
38 | void splitAndMerge(std::vector<Cluster>& stableCones, std::vector<Cluster>& jets);
|
---|
39 | void run(std::vector<PhysicsTower>& towers, std::vector<Cluster>& jets);
|
---|
40 | };
|
---|
41 |
|
---|
42 | #endif
|
---|
Note:
See
TracBrowser
for help on using the repository browser.