HLIBpro  1.2
Public Member Functions | List of all members
TPartAlgCTBuilder Class Reference

Enhances algebraic clustering by allowing the user to define the first level of index partitioning, e.g. define which index belongs to which son cluster.

#include <TAlgCTBuilder.hh>

Inheritance diagram for TPartAlgCTBuilder:
TAlgCTBuilder

Public Member Functions

 TPartAlgCTBuilder (const TAlgCTBuilder *alg_ct_builder, const std::vector< idx_t > &first_lvl_part, const uint n_min=CFG::Cluster::nmin, const uint min_leaf_lvl=0)
virtual ~TPartAlgCTBuilder ()
 dtor
virtual TClusterdivide (const TGraph &graph, const uint lvl, TPermutation &perm, const idx_t idx_ofs, const uint n_min, const TSparseMatrix *S, const uint max_lvl) const
 divide a graph graph and build corresponding cluster tree
virtual void partition (const TGraph &graph, TNodeSet &left, TNodeSet &right) const
 partition graph in two sub graphs using base clustering algorithm
- Public Member Functions inherited from TAlgCTBuilder
 TAlgCTBuilder (TAlgPartStrat *part_strat, const uint n_min=CFG::Cluster::nmin, const uint min_leaf_lvl=0)
 construct cluster tree builder with given partition strategy and tree parameters
virtual ~TAlgCTBuilder ()
 dtor
void set_high_deg_fac (const uint fac)
 activate/deactivate (if fac = 0) high degree node separation
void set_use_edge_weights (const bool use_edge_weights, const bool sym_edge_weights)
virtual TClusterTreebuild (const TSparseMatrix *S, const idx_t idx_ofs=0) const
 build cluster tree using connectivity in sparse matrix S

Additional Inherited Members

- Protected Member Functions inherited from TAlgCTBuilder
virtual void scc_partition (const TGraph &graph, TNodeSet &left, TNodeSet &right) const
 same as
virtual TClusterbuild_leaf (const TGraph &graph, const idx_t idx_ofs, TPermutation &perm) const
 build leaf node for indices in graph
virtual uint adjust_n_min (const TSparseMatrix *S) const
 adjust n_min based on sparse matrix if default value of 0 was given in constructor
virtual void check_flow (const TGraph &graph, TNodeSet &left, TNodeSet &right, const TSparseMatrix *S) const
 analyze connections between sub graphs left and right and swap if necessary

Constructor & Destructor Documentation

TPartAlgCTBuilder ( const TAlgCTBuilder alg_ct_builder,
const std::vector< idx_t > &  first_lvl_part,
const uint  n_min = CFG::Cluster::nmin,
const uint  min_leaf_lvl = 0 
)

construct cluster tree builder with alg_ct_builder as base algorithm and first_lvl_part as start partition