tree01.hh

Go to the documentation of this file.
1 
6 #ifndef aglowavTree01_hh
7 #define aglowavTree01_hh
8 
9 #include "aglowav/tree.hh"
10 
11 namespace aglowav {
12 
13  // **************************************************************** Tree01 **
14 
18  template<class BiClNode>
19  class Tree01 : public BiTree<BiClNode>, public cluster::Tree<BiClNode> {
20 
21  public:
24  typedef typename Traits::F F;
25 
30  Tree01(const concepts::Space<F>& spc, const cluster::BBall<F>& ball);
31 
33  virtual inline ~Tree01() {destructor_(root_); delete root_;}
34 
36  inline uint nclst() const {return nclst_;}
38  inline uint nleaf() const {return nlf_;}
40  inline const BiClNode* root() const {return root_;}
41 
42  private:
44  uint nlf_;
46  uint nclst_;
48  BiClNode* root_;
49 
51  BiClNode* constructor_(BiClNode* lfset);
53  void destructor_(BiClNode* clst);
54  };
55 
56 } // namespace aglowav
57 
58 #endif // aglowavTree01_hh
Binary tree.
Definition: tree.hh:88
Abstract class for a space.
Binary tree for the cluster and agglomeration algorithm.
Definition: tree01.hh:19
void destructor_(BiClNode *clst)
Private destructor for recursive calls.
BiClNode * constructor_(BiClNode *lfset)
Private constructor for recursive calls.
uint nclst_
Number of clusters.
Definition: tree01.hh:46
Tree01(const concepts::Space< F > &spc, const cluster::BBall< F > &ball)
Constructor.
Abstract class to compute a bounding ball of an element (the leafs of a cluster tree).
Definition: tree.hh:36
virtual ~Tree01()
Destructor.
Definition: tree01.hh:33
Abstract class for a cluster tree.
Definition: tree.hh:274
uint nlf_
Number of leafs.
Definition: tree01.hh:44
Traits for the binary cluster tree algorithm.
Definition: tree.hh:103
cluster::TreeTraits< BiClNode >::F F
Type of element (Real || Cmplx)
Definition: tree.hh:106
const BiClNode * root() const
Root of the tree.
Definition: tree01.hh:40
uint nleaf() const
Number of leafs.
Definition: tree01.hh:38
Used for the aglowav classes for the boundary element method.
Definition: element.hh:21
uint nclst() const
Number of clusters.
Definition: tree01.hh:36
Traits::F F
Definition: tree01.hh:24
ClstBiTreeTraits< BiClNode > Traits
How a node has to behave.
Definition: tree01.hh:23
BiClNode * root_
Root of the tree.
Definition: tree01.hh:48
Page URL: http://wiki.math.ethz.ch/bin/view/Concepts/WebHome
21 August 2020
© 2020 Eidgenössische Technische Hochschule Zürich