Rev | Line | |
---|
[2] | 1 | #ifndef _MIDPOINT_ALGORITHM_HH_
|
---|
| 2 | #define _MIDPOINT_ALGORITHM_HH_
|
---|
| 3 |
|
---|
| 4 | #include "PhysicsTower.hh"
|
---|
| 5 | #include "Cluster.hh"
|
---|
| 6 | #include <vector>
|
---|
| 7 |
|
---|
| 8 | class MidPointAlgorithm
|
---|
| 9 | {
|
---|
| 10 | private:
|
---|
| 11 | double _seedThreshold;
|
---|
| 12 | double _coneRadius;
|
---|
| 13 | double _coneAreaFraction;
|
---|
| 14 | int _maxPairSize;
|
---|
| 15 | int _maxIterations;
|
---|
| 16 | double _overlapThreshold;
|
---|
| 17 |
|
---|
| 18 | public:
|
---|
| 19 | MidPointAlgorithm():
|
---|
| 20 | _seedThreshold(1),
|
---|
| 21 | _coneRadius(0.7),
|
---|
| 22 | _coneAreaFraction(0.25),
|
---|
| 23 | _maxPairSize(2),
|
---|
| 24 | _maxIterations(100),
|
---|
| 25 | _overlapThreshold(0.75)
|
---|
| 26 | {}
|
---|
| 27 | MidPointAlgorithm(double st, double cr, double caf, int mps, int mi, double ot):
|
---|
| 28 | _seedThreshold(st),
|
---|
| 29 | _coneRadius(cr),
|
---|
| 30 | _coneAreaFraction(caf),
|
---|
| 31 | _maxPairSize(mps),
|
---|
| 32 | _maxIterations(mi),
|
---|
| 33 | _overlapThreshold(ot)
|
---|
| 34 | {}
|
---|
| 35 | void findStableConesFromSeeds(std::vector<PhysicsTower>& particles, std::vector<Cluster>& stableCones);
|
---|
| 36 | void findStableConesFromMidPoints(std::vector<PhysicsTower>& particles, std::vector<Cluster>& stableCones);
|
---|
| 37 | void iterateCone(double startRapidity, double startPhi, double startPt, std::vector<PhysicsTower>& particles,
|
---|
| 38 | std::vector<Cluster>& stableCones, bool reduceConeSize);
|
---|
| 39 | void addClustersToPairs(std::vector<int>& testPair, std::vector< std::vector<int> >& pairs,
|
---|
| 40 | std::vector< std::vector<bool> >& distanceOK, int maxClustersInPair);
|
---|
| 41 | void splitAndMerge(std::vector<Cluster>& stableCones, std::vector<Cluster>& jets);
|
---|
| 42 | void run(std::vector<PhysicsTower>& particles, std::vector<Cluster>& jets);
|
---|
| 43 | };
|
---|
| 44 |
|
---|
| 45 | #endif
|
---|
Note:
See
TracBrowser
for help on using the repository browser.