Go to the documentation of this file.
6 #ifndef clusterTree01_hh
7 #define clusterTree01_hh
25 Node* lnk) {
return new Node(elm, ball, lnk);}
28 return new Node(idx, chld, c, r, nlf);
31 static Node*
child(
const Node* nd) {
return nd->child();}
32 static Node*
link(
const Node* nd) {
return nd->link();}
33 static Node*&
link(Node* nd) {
return nd->link();}
71 void sketch(std::ostream& os,
const CNode* lnk = 0, uint l = 0);
93 #endif // clusterTree01_hh
An abstract class for an element of a space.
CNode * constructor_(CNode *lfset)
Constructor used for recursive calls.
uint nclst() const
Number of clusters.
Abstract class for a space.
const CNode * root() const
Root node of the tree.
CNode * concat_(CNode *a, CNode *b)
Concats two lists.
TreeTraits01< CNode > Traits
Interface of the tree.
static Node * newNode(uint idx, Node &chld, const concepts::Real3d &c, concepts::Real r, uint nlf=0)
Tree01(const concepts::Space< F > &spc, const BBall< F > &ball, uint nlfmin=1)
Constructor.
static Node * newNode(const concepts::Element< F > &elm, const BBall< F > &ball, Node *lnk)
Interface class for a node in a cluster tree.
static Node *& link(Node *nd)
Abstract class to compute a bounding ball of an element (the leafs of a cluster tree).
void sketch(std::ostream &os, const CNode *lnk=0, uint l=0)
Sketch of a subtree.
Node::CF F
Field of the node (Real or Cmplx)
Abstract class for a cluster tree.
uint nlf_
Number of leafs in the tree.
static Node * link(const Node *nd)
Used for the cluster classes for the boundary element method.
Interface class for a node in the cluster tree Tree01.
uint nclst_
Number of clusters in the tree.
uint nlfmin_
Minimal leafs contained in a cluster.
CNode * root_
Root of the cluster tree.
uint nleaf() const
Number of leafs.
static Node * child(const Node *nd)
void destructor_(CNode *clst)
Destructor used for recursive calls.
double Real
Type normally used for a floating point number.