Go to the documentation of this file.
6 #ifndef clusterTree02_hh
7 #define clusterTree02_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();}
73 #endif // clusterTree02_hh
An abstract class for an element of a space.
static Node * link(const Node *nd)
TreeTraits02< CNode > Traits
Interface of the tree.
Abstract class for a space.
uint nleaf() const
Number of leafs.
CNode * root_
First node of the cluster list.
Tree02(const concepts::Space< F > &spc, const BBall< F > &ball)
Constructor.
uint nclst() const
Number of clusters.
static Node * newNode(const concepts::Element< F > &elm, const BBall< F > &ball, Node *lnk)
Cluster list, i.e., all leafs are on level 0.
static Node * newNode(uint idx, Node &chld, const concepts::Real3d &c, concepts::Real r, uint nlf=0)
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).
Node::CF F
Field of the node (Real or Cmplx)
const CNode * root() const
First node of the cluster list.
Abstract class for a cluster tree.
Used for the cluster classes for the boundary element method.
static Node * child(const Node *nd)
uint nlf_
Number of leafs in the tree.
uint nclst_
Number of clusters in the tree.
double Real
Type normally used for a floating point number.
Interface class for a node in the cluster tree Tree02.