00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 #ifndef __CDFMIDPOINTPLUGIN_HH__
00032 #define __CDFMIDPOINTPLUGIN_HH__
00033
00034 #include "fastjet/JetDefinition.hh"
00035
00036
00037
00038 FASTJET_BEGIN_NAMESPACE
00039
00040
00041
00066
00067
00068 class CDFMidPointPlugin : public JetDefinition::Plugin {
00069 public:
00071
00072 enum SplitMergeScale {SM_pt, SM_Et, SM_mt, SM_pttilde};
00073
00113 CDFMidPointPlugin (
00114 double seed_threshold ,
00115 double cone_radius ,
00116 double cone_area_fraction ,
00117 int max_pair_size ,
00118 int max_iterations ,
00119 double overlap_threshold ,
00120 SplitMergeScale sm_scale = SM_pt) :
00121 _seed_threshold (seed_threshold ),
00122 _cone_radius (cone_radius ),
00123 _cone_area_fraction (cone_area_fraction ),
00124 _max_pair_size (max_pair_size ),
00125 _max_iterations (max_iterations ),
00126 _overlap_threshold (overlap_threshold ),
00127 _sm_scale (sm_scale) {}
00128
00136 CDFMidPointPlugin (double cone_radius,
00137 double overlap_threshold,
00138 double seed_threshold = 1.0,
00139 double cone_area_fraction = 1.0) :
00140 _seed_threshold (seed_threshold ),
00141 _cone_radius (cone_radius ),
00142 _cone_area_fraction (cone_area_fraction ),
00143 _max_pair_size (2 ),
00144 _max_iterations (100 ),
00145 _overlap_threshold (overlap_threshold ),
00146 _sm_scale (SM_pt) {}
00147
00148
00149
00150 double seed_threshold () const {return _seed_threshold ;}
00151 double cone_radius () const {return _cone_radius ;}
00152 double cone_area_fraction () const {return _cone_area_fraction ;}
00153 int max_pair_size () const {return _max_pair_size ;}
00154 int max_iterations () const {return _max_iterations ;}
00155 double overlap_threshold () const {return _overlap_threshold ;}
00156
00157
00158
00159 virtual std::string description () const;
00160 virtual void run_clustering(ClusterSequence &) const;
00162 virtual double R() const {return cone_radius();}
00163
00164 private:
00165
00166 double _seed_threshold ;
00167 double _cone_radius ;
00168 double _cone_area_fraction;
00169 int _max_pair_size ;
00170 int _max_iterations ;
00171 double _overlap_threshold ;
00172 SplitMergeScale _sm_scale ;
00173 };
00174
00175 FASTJET_END_NAMESPACE
00176
00177 #endif // __CDFMIDPOINTPLUGIN_HH__