43 if ((index < 0) | (index > WS->
maxIndex())) {
44 std::cout <<
"debug clustering: requested index " << index <<
" is <0 or >" << WS->
maxIndex() <<
"\n";
45 throw std::string(
"Error: index is out of range");
63 void create(
const std::string& srcfile);
69 void add_node(
const int nodeidx,
const int timeidx,
const int freqidx,
const int scaleidx,
70 const double value_avg,
const double value_stdev,
71 const bool endnode,
const nodeids& ancestors);
97 void heaviest_path(std::vector<double>& total_weight, std::vector<int>& total_length,
98 std::vector<int>& best_ancestor,
const std::vector<double> weights);
102 std::vector<cluster>
clustering(
const double threshold,
const std::vector<
WSeries<double>* >& data,
const double strip_edges,
const int path_halfwidth,
const double penal_factor,
const std::vector<double>& energy_thresholds);
std::vector< cluster > clustering(const double threshold, const std::vector< WSeries< double > * > &data, const double strip_edges, const int path_halfwidth, const double penal_factor, const std::vector< double > &energy_thresholds)
bool is_compatible(const std::vector< WSeries< double > * > &data)
virtual void rate(double r)
int num_of_time_bins(WSeries< double > *WS)
float freq_res(WSeries< double > *WS)
void heaviest_path(std::vector< double > &total_weight, std::vector< int > &total_length, std::vector< int > &best_ancestor, const std::vector< double > weights)
float get_map00(WSeries< double > *WS, int index)
float time_res(WSeries< double > *WS)
wavenode get_node(int id)
bool is_topologically_sorted()
int num_of_freq_bins(WSeries< double > *WS)
void add_node(const int nodeidx, const int timeidx, const int freqidx, const int scaleidx, const double value_avg, const double value_stdev, const bool endnode, const nodeids &ancestors)
nodeids get_ancestors(int id)
void create(const std::string &srcfile)
int get_scale(WSeries< double > *WS)
WaveDWT< DataType_t > * pWavelet
float get_map90(WSeries< double > *WS, int index)
std::vector< wavenode > nodes