Home | Doxygen Documentation | Tutorials | Developer Tools (restricted)

Public Types | Public Member Functions | Private Member Functions | Private Attributes
cluster::Tree03< CNode > Class Template Reference

Cluster tree. More...

#include <tree03.hh>

Inheritance diagram for cluster::Tree03< CNode >:
Inheritance graph
[legend]
Collaboration diagram for cluster::Tree03< CNode >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef Traits::F F
 Field (Real or Cmplx)
typedef CNode Node
 Node type of the tree used for the interface of the far field matrices.
typedef TreeTraits03< CNode > Traits
 Interface of the tree.

Public Member Functions

virtual std::ostream & info (std::ostream &os) const
uint nclst () const
 Number of clusters.
uint nleaf () const
 Number of leafs.
const CNode * root () const
 Root node of the tree.
void sketch (std::ostream &os, const CNode *lnk=0, uint l=0)
 Sketch of a subtree.
const concepts::Space< F > & space () const
 Space of the tree.
 Tree03 (const concepts::Space< F > &spc, const BBall< F > &ball, uint nlfmin=1)
 Constructor.
 ~Tree03 ()

Private Member Functions

CNode * concat_ (CNode *a, CNode *b)
 Concats two lists.
CNode * constructor_ (CNode *lfset, CebyCenter< CNode > &cby)
 Constructor used for recursive calls.
void destructor_ (CNode *clst)
 Destructor used for recursive calls.

Private Attributes

uint nclst_
 Number of clusters in the tree.
uint nlf_
 Number of leafs in the tree.
uint nlfmin_
 Minimal leafs contained in a cluster.
CNode * root_
 Root of the cluster tree.

Detailed Description

template<class CNode>
class cluster::Tree03< CNode >

Cluster tree.

The clusters are approximated by the Cebysev ball. The subdivision is done by cutting the ball by a plane perpendicular to the longest vector in between two extremal points.

Parameters:
CNodeNode type of the cluster tree

Definition at line 91 of file tree03.hh.


Member Typedef Documentation

template<class CNode >
typedef Traits::F cluster::Tree03< CNode >::F

Field (Real or Cmplx)

Reimplemented from cluster::Tree< CNode >.

Definition at line 95 of file tree03.hh.

template<class CNode>
typedef CNode cluster::Tree< CNode >::Node [inherited]

Node type of the tree used for the interface of the far field matrices.

Definition at line 291 of file tree.hh.

template<class CNode >
typedef TreeTraits03<CNode> cluster::Tree03< CNode >::Traits

Interface of the tree.

Reimplemented from cluster::Tree< CNode >.

Definition at line 94 of file tree03.hh.


Constructor & Destructor Documentation

template<class CNode >
cluster::Tree03< CNode >::Tree03 ( const concepts::Space< F > &  spc,
const BBall< F > &  ball,
uint  nlfmin = 1 
)

Constructor.

Exceptions:
MissingFeature
Parameters:
spcSpace which elements should be clusterd
ballBounding ball for the elements of the space
nlfminMinimal leafs contained in a cluster
template<class CNode >
cluster::Tree03< CNode >::~Tree03 ( ) [inline]

Definition at line 105 of file tree03.hh.

Here is the call graph for this function:


Member Function Documentation

template<class CNode >
CNode* cluster::Tree03< CNode >::concat_ ( CNode *  a,
CNode *  b 
) [private]

Concats two lists.

template<class CNode >
CNode* cluster::Tree03< CNode >::constructor_ ( CNode *  lfset,
CebyCenter< CNode > &  cby 
) [private]

Constructor used for recursive calls.

Exceptions:
MissingFeature
template<class CNode >
void cluster::Tree03< CNode >::destructor_ ( CNode *  clst) [private]

Destructor used for recursive calls.

template<class CNode >
std::ostream & cluster::Tree< CNode >::info ( std::ostream &  os) const [virtual, inherited]

Definition at line 361 of file tree.hh.

template<class CNode >
uint cluster::Tree03< CNode >::nclst ( ) const [inline, virtual]

Number of clusters.

Implements cluster::Tree< CNode >.

Definition at line 108 of file tree03.hh.

template<class CNode >
uint cluster::Tree03< CNode >::nleaf ( ) const [inline, virtual]

Number of leafs.

Implements cluster::Tree< CNode >.

Definition at line 110 of file tree03.hh.

template<class CNode >
const CNode* cluster::Tree03< CNode >::root ( ) const [inline, virtual]

Root node of the tree.

Implements cluster::Tree< CNode >.

Definition at line 112 of file tree03.hh.

template<class CNode >
void cluster::Tree03< CNode >::sketch ( std::ostream &  os,
const CNode *  lnk = 0,
uint  l = 0 
)

Sketch of a subtree.

Parameters:
osOutput stream
lnkRoot of the subtree which is sketched
lLevel, number of blanks printed on the left side
template<class CNode>
const concepts::Space<F>& cluster::Tree< CNode >::space ( ) const [inline, inherited]

Space of the tree.

Definition at line 307 of file tree.hh.


Member Data Documentation

template<class CNode >
uint cluster::Tree03< CNode >::nclst_ [private]

Number of clusters in the tree.

Definition at line 127 of file tree03.hh.

template<class CNode >
uint cluster::Tree03< CNode >::nlf_ [private]

Number of leafs in the tree.

Definition at line 125 of file tree03.hh.

template<class CNode >
uint cluster::Tree03< CNode >::nlfmin_ [private]

Minimal leafs contained in a cluster.

Definition at line 123 of file tree03.hh.

template<class CNode >
CNode* cluster::Tree03< CNode >::root_ [private]

Root of the cluster tree.

Definition at line 129 of file tree03.hh.


The documentation for this class was generated from the following file:

Home | Doxygen Documentation | Tutorials | Developer Tools (restricted)