Abstract class for a cluster tree. More...
#include <tree.hh>

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 TreeTraits< CNode > | Traits |
| Interface of the tree. | |
Public Member Functions | |
| virtual std::ostream & | info (std::ostream &os) const |
| virtual uint | nclst () const =0 |
| Number of clusters. | |
| virtual uint | nleaf () const =0 |
| Number of leafs. | |
| virtual const Node * | root () const =0 |
| Root node of the tree. | |
| const concepts::Space< F > & | space () const |
| Space of the tree. | |
| Tree (const concepts::Space< F > &spc) | |
| Constructor. | |
| virtual | ~Tree () |
Private Member Functions | |
| void | info_ (const Node *clst, concepts::Real &rhomin, concepts::Real &rhomax, concepts::Real &taumin, concepts::Real &taumax, uint &h) const |
| Computes some information used by info() | |
Private Attributes | |
| const concepts::Space< F > & | spc_ |
| Space of the tree. | |
Friends | |
| std::ostream & | operator<< (std::ostream &os, const Tree< CNode > &t) |
Abstract class for a cluster tree.
| CNode | Node type of the cluster tree |
| typedef Traits::F cluster::Tree< CNode >::F |
Field (Real or Cmplx)
Reimplemented in aglowav::Tree01< BiClNode >, aglowav::Tree02< BiClNode >, Tree3d03< CNode >, cluster::Tree01< CNode >, cluster::Tree02< CNode >, and cluster::Tree03< CNode >.
| typedef CNode cluster::Tree< CNode >::Node |
| typedef TreeTraits<CNode> cluster::Tree< CNode >::Traits |
Interface of the tree.
Reimplemented in aglowav::Tree01< BiClNode >, aglowav::Tree02< BiClNode >, Tree3d03< CNode >, cluster::Tree01< CNode >, cluster::Tree02< CNode >, and cluster::Tree03< CNode >.
| cluster::Tree< CNode >::Tree | ( | const concepts::Space< F > & | spc | ) | [inline] |
| virtual cluster::Tree< CNode >::~Tree | ( | ) | [inline, virtual] |
| std::ostream & cluster::Tree< CNode >::info | ( | std::ostream & | os | ) | const [virtual] |
| void cluster::Tree< CNode >::info_ | ( | const Node * | clst, |
| concepts::Real & | rhomin, | ||
| concepts::Real & | rhomax, | ||
| concepts::Real & | taumin, | ||
| concepts::Real & | taumax, | ||
| uint & | h | ||
| ) | const [private] |
Computes some information used by info()
| clst | Node of the tree |
| rhomin | Ratio of child radius divided by cluster radius |
| rhomax | Ratio of child radius divided by cluster radius |
| taumin | Ratio of number of leafs of the child divided by the number of leafs of the cluster |
| h | Longest path in the tree from clst to the leafs |
| virtual uint cluster::Tree< CNode >::nclst | ( | ) | const [pure virtual] |
Number of clusters.
Implemented in aglowav::Tree01< BiClNode >, aglowav::Tree02< BiClNode >, Tree3d03< CNode >, cluster::Tree01< CNode >, cluster::Tree02< CNode >, and cluster::Tree03< CNode >.
| virtual uint cluster::Tree< CNode >::nleaf | ( | ) | const [pure virtual] |
Number of leafs.
Implemented in aglowav::Tree01< BiClNode >, aglowav::Tree02< BiClNode >, Tree3d03< CNode >, cluster::Tree01< CNode >, cluster::Tree02< CNode >, and cluster::Tree03< CNode >.
| virtual const Node* cluster::Tree< CNode >::root | ( | ) | const [pure virtual] |
Root node of the tree.
Implemented in aglowav::Tree01< BiClNode >, aglowav::Tree02< BiClNode >, Tree3d03< CNode >, cluster::Tree01< CNode >, cluster::Tree02< CNode >, and cluster::Tree03< CNode >.
| const concepts::Space<F>& cluster::Tree< CNode >::space | ( | ) | const [inline] |
| std::ostream& operator<< | ( | std::ostream & | os, |
| const Tree< CNode > & | t | ||
| ) | [friend] |
const concepts::Space<F>& cluster::Tree< CNode >::spc_ [private] |