HLIBpro  2.9.1
TBlockClusterTree Class Reference

Represents a block cluster tree.

#include <TBlockClusterTree.hh>

Public Member Functions

 TBlockClusterTree (TBlockCluster *aroot, const TClusterTree *arow_ct, const TClusterTree *acol_ct)
 
virtual ~TBlockClusterTree ()
 delete block cluster tree (but not the cluster trees)
 
const TBlockClusterroot () const
 return root of block cluster tree
 
const TClusterTreerow_ct () const
 return row cluster tree
 
const TClusterTreecol_ct () const
 return column cluster tree
 
uint nnodes () const
 return number of nodes in tree
 
uint depth () const
 return depth of tree
 
uint compute_c_sp () const
 compute sparsity constant of tree
 
uint compute_c_sh (const uint nprocs) const
 compute sharing constant of tree with distribution onto nprocs processors
 
virtual void collect_leaves (std::list< TBlockCluster * > &leaves, const int adepth=-1, const int level=0) const
 collect leaves or nodes with depth adepth in tree
 
virtual size_t byte_size () const
 return size in bytes used by this object
 

Protected Attributes

TBlockCluster_root
 root of the block cluster tree
 
const TClusterTree_row_ct
 row cluster tree
 
const TClusterTree_col_ct
 column cluster tree
 

Constructor & Destructor Documentation

◆ TBlockClusterTree()

TBlockClusterTree ( TBlockCluster aroot,
const TClusterTree arow_ct,
const TClusterTree acol_ct 
)
inline

construct block cluster tree with aroot as root and arow_ct and acol_ct as corresponding cluster trees