00001 #ifndef jetsubstructureutils_volatility_header
00002 #define jetsubstructureutils_volatility_header
00003
00004 #include "JetSubStructureUtils/SubstructureCalculator.h"
00005 #include <vector>
00006
00007 namespace JetSubStructureUtils {
00008 class Volatility : public SubstructureCalculator<double> {
00009 public:
00010 Volatility(unsigned int num_iterations, double zcut, double dcut_fctr, double exp_min, double exp_max,
00011 double rigidity, double truncation_fctr = 0.0) :
00012 _num_iterations(num_iterations),
00013 _zcut(zcut), _dcut_fctr(dcut_fctr), _exp_min(exp_min), _exp_max(exp_max),
00014 _rigidity(rigidity), _truncation_fctr(truncation_fctr),
00015 _seed(-1)
00016 {};
00017
00018 using SubstructureCalculator::result;
00019 virtual double result(const fastjet::PseudoJet &jet) const;
00020
00021 void setSeed(unsigned int seed);
00022
00023 private:
00024 unsigned int _num_iterations;
00025 double _zcut, _dcut_fctr, _exp_min, _exp_max, _rigidity, _truncation_fctr;
00026 int _seed;
00027 };
00028 }
00029
00030 #endif