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

Classes | Public Types | Public Member Functions | Private Attributes | Friends
cluster::Cluster< F > Class Template Reference

Node of a cluster tree. More...

#include <tree.hh>

Collaboration diagram for cluster::Cluster< F >:
Collaboration graph
[legend]

List of all members.

Classes

union  CE
 Data structure to hold a pointer to an element or a child cluster. More...

Public Types

typedef F CF
 Typedef used for interface (trait) of the cluster tree.

Public Member Functions

const concepts::Real3dcenter () const
 Center of the cluster.
Cluster< F > * child (uint j) const
 j-th child of the cluster if the cluster is not a leaf
Cluster< F > * child () const
 First child of the cluster if the cluster is not a leaf.
 Cluster (uint idx, Cluster< F > &chld, const concepts::Real3d &c, concepts::Real r, uint nlf=0)
 Constructor if Cluster is not a leaf in the tree.
 Cluster (const concepts::Element< F > &elm, const BBall< F > &ball, Cluster< F > *lnk)
 Constructor if Cluster is a leaf in the tree.
const concepts::Element< F > * element () const
 Returns element if the cluster is a leaf.
uint index () const
 Index (number) of the cluster.
std::ostream & info (std::ostream &os) const
Cluster< F > * link () const
 Neighbouring cluster.
Cluster< F > *& link ()
uint nleaf () const
 Number of leafs of the cluster.
concepts::Real radius () const
 Radius of the cluster.

Private Attributes

concepts::Real3d c_
 Cluster center.
CE ce_
 Child cluster or element.
uint idx_
 Index (number)
Cluster< F > * lnk_
 Neighbouring cluster.
uint nlf_
 Number of leafs.
concepts::Real r_
 Cluster radius.

Friends

std::ostream & operator<< (std::ostream &os, const Cluster< F > &clst)

Detailed Description

template<class F>
class cluster::Cluster< F >

Node of a cluster tree.

Parameters:
FField (Real or Cmplx)

Definition at line 126 of file tree.hh.


Member Typedef Documentation

template<class F>
typedef F cluster::Cluster< F >::CF

Typedef used for interface (trait) of the cluster tree.

Definition at line 129 of file tree.hh.


Constructor & Destructor Documentation

template<class F >
cluster::Cluster< F >::Cluster ( const concepts::Element< F > &  elm,
const BBall< F > &  ball,
Cluster< F > *  lnk 
)

Constructor if Cluster is a leaf in the tree.

Parameters:
elmElement
ballBounding ball for the element
lnkNeighbouring cluster

Definition at line 227 of file tree.hh.

template<class F >
cluster::Cluster< F >::Cluster ( uint  idx,
Cluster< F > &  chld,
const concepts::Real3d c,
concepts::Real  r,
uint  nlf = 0 
)

Constructor if Cluster is not a leaf in the tree.

Parameters:
idxCluster number
chldPointer to the linked list of children
cCluster center
rCluster radius
nlfNumber of leafs contained in the cluster

Definition at line 215 of file tree.hh.


Member Function Documentation

template<class F>
const concepts::Real3d& cluster::Cluster< F >::center ( ) const [inline]

Center of the cluster.

Definition at line 158 of file tree.hh.

template<class F >
Cluster< F > * cluster::Cluster< F >::child ( ) const [inline]

First child of the cluster if the cluster is not a leaf.

Definition at line 200 of file tree.hh.

template<class F >
Cluster< F > * cluster::Cluster< F >::child ( uint  j) const [inline]

j-th child of the cluster if the cluster is not a leaf

Definition at line 193 of file tree.hh.

Here is the call graph for this function:

template<class F >
const concepts::Element< F > * cluster::Cluster< F >::element ( ) const [inline]

Returns element if the cluster is a leaf.

Definition at line 205 of file tree.hh.

template<class F>
uint cluster::Cluster< F >::index ( ) const [inline]

Index (number) of the cluster.

Definition at line 164 of file tree.hh.

template<class F >
std::ostream & cluster::Cluster< F >::info ( std::ostream &  os) const

Definition at line 236 of file tree.hh.

template<class F>
Cluster<F>* cluster::Cluster< F >::link ( ) const [inline]

Neighbouring cluster.

Definition at line 153 of file tree.hh.

template<class F>
Cluster<F>*& cluster::Cluster< F >::link ( ) [inline]

Definition at line 154 of file tree.hh.

template<class F>
uint cluster::Cluster< F >::nleaf ( ) const [inline]

Number of leafs of the cluster.

Definition at line 162 of file tree.hh.

template<class F>
concepts::Real cluster::Cluster< F >::radius ( ) const [inline]

Radius of the cluster.

Definition at line 160 of file tree.hh.


Friends And Related Function Documentation

template<class F>
std::ostream& operator<< ( std::ostream &  os,
const Cluster< F > &  clst 
) [friend]

Member Data Documentation

template<class F>
concepts::Real3d cluster::Cluster< F >::c_ [private]

Cluster center.

Definition at line 187 of file tree.hh.

template<class F>
CE cluster::Cluster< F >::ce_ [private]

Child cluster or element.

Definition at line 179 of file tree.hh.

template<class F>
uint cluster::Cluster< F >::idx_ [private]

Index (number)

Definition at line 182 of file tree.hh.

template<class F>
Cluster<F>* cluster::Cluster< F >::lnk_ [private]

Neighbouring cluster.

Definition at line 177 of file tree.hh.

template<class F>
uint cluster::Cluster< F >::nlf_ [private]

Number of leafs.

Definition at line 184 of file tree.hh.

template<class F>
concepts::Real cluster::Cluster< F >::r_ [private]

Cluster radius.

Definition at line 189 of file tree.hh.


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

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