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