1 #ifndef FastJetStability_ClusterAnalysis_h
2 #define FastJetStability_ClusterAnalysis_h
4 #include "JetStabilityDefs.h"
5 #include "ClusteringComparisonIndex.h"
6 #include "AbsFuzzinessCalculator.h"
8 #include "fastjet/ClusterSequence.hh"
15 enum StabilityCalcMethod {
33 ,m_nEvent(0U),m_nEventSize(100U),m_event(m_nEventSize)
34 ,m_nJetSize(50U),m_jets(m_nJetSize)
35 ,m_nJetsInCycle(0U),m_nJets(0U)
36 ,m_jetCycleMap(m_nJetSize),m_partMap(m_nEventSize,0U)
43 ,m_nEvent(0U),m_nEventSize(100U),m_event(m_nEventSize)
44 ,m_nJetSize(50U),m_jets(m_nJetSize)
45 ,m_nJetsInCycle(0U),m_nJets(0U)
46 ,m_jetCycleMap(m_nJetSize),m_partMap(m_nEventSize,0U)
54 void initialize(
const fastjet::ClusterSequence &);
61 void fill(
const fastjet::ClusterSequence &);
64 double doStability(
const ClusteringComparisonIndex &,
const StabilityCalcMethod method=PAIRWISE);
70 inline double dCut()
const {
return m_dCut; }
86 unsigned m_nEventSize;
96 unsigned m_nJetsInCycle;
101 std::vector<unsigned> m_jetCycleMap;
104 std::vector<unsigned> m_partMap;
106 std::vector<std::vector<unsigned> > m_partMapVec;
double doStability(const ClusteringComparisonIndex &, const StabilityCalcMethod method=PAIRWISE)
perform the stability calculation
ClusterAnalysis()
default constructor
double doFuzziness(const AbsFuzzinessCalculator &)
perform the fuzziness calculation
ClusterAnalysis(const double dCut)
Constructor. Initialize the distance paramter (scale cut-off) by dCut.
void fill(const fastjet::ClusterSequence &)
Add results of latest clustering to stability consideration.
double dCut() const
return the distance cut-off value
void initialize(const fastjet::ClusterSequence &)
Initialize internal data from first clustering results.
void clear()
clear the contents