Class to hide some implementation details of the far field matrices X, Y. More...

#include <xy01.hh>

Inheritance diagram for cluster::XY01< Node >:
cluster::X01< Node > cluster::Y01< Node >

Classes

struct  XYCol
 Data structure to hold the expansion coefficients. More...
 
struct  XYFnc
 Data structure for auxiliary vectors (one vector per cluster) More...
 

Public Member Functions

std::ostream & info (std::ostream &os, uint idx) const
 Detailed information about the unknown idx. More...
 
float memory () const
 Size of memory used by XY01 in Bytes. More...
 
Foperator[] (uint i) const
 Returns i-th auxiliary vector. More...
 
const concepts::Space< F > & space () const
 Space. More...
 
const Tree< Node > & tree () const
 Cluster tree. More...
 
 XY01 (const Tree< Node > &tree, const ExpansionXY< F > &exp)
 Constructor. More...
 
void zero ()
 Sets auxiliary vectors to zero. More...
 
 ~XY01 ()
 

Protected Member Functions

std::ostream & info (std::ostream &os) const
 Basic information about the far field X, Y. More...
 

Protected Attributes

const uint blksz_
 Size of memory used for the expansion. More...
 
XYColcol_
 Expansion coefficients. More...
 
const ExpansionXY< F > & exp_
 Kernel expansion. More...
 
XYFncfnc_
 Auxiliary vectors. More...
 
uint ncol_
 Number of expansion coefficients. More...
 
const uint nfnc_
 Number of auxiliary vectors. More...
 

Private Types

typedef Traits::F F
 
typedef TreeTraits< Node > Traits
 Interface for the far field X, Y. More...
 

Private Member Functions

void constructor_ (const Node *chld, const Node *prnt)
 Constructor for recursive calls throw MissingFeature. More...
 
bool info_ (std::ostream &os, uint idx, const Node *nd) const
 Information method used for recursive calls from info(os, idx) More...
 

Private Attributes

Ffncval_
 
const Tree< Node > & tree_
 

Detailed Description

template<class Node>
class cluster::XY01< Node >

Class to hide some implementation details of the far field matrices X, Y.

Parameters
NodeNode type of the cluster tree

Definition at line 20 of file xy01.hh.

Member Typedef Documentation

◆ F

template<class Node >
typedef Traits::F cluster::XY01< Node >::F
private

Definition at line 23 of file xy01.hh.

◆ Traits

template<class Node >
typedef TreeTraits<Node> cluster::XY01< Node >::Traits
private

Interface for the far field X, Y.

Definition at line 22 of file xy01.hh.

Constructor & Destructor Documentation

◆ XY01()

template<class Node >
cluster::XY01< Node >::XY01 ( const Tree< Node > &  tree,
const ExpansionXY< F > &  exp 
)

Constructor.

Parameters
treeCluster tree
expKernel expansion

◆ ~XY01()

template<class Node >
cluster::XY01< Node >::~XY01 ( )

Member Function Documentation

◆ constructor_()

template<class Node >
void cluster::XY01< Node >::constructor_ ( const Node *  chld,
const Node *  prnt 
)
private

Constructor for recursive calls throw MissingFeature.

Parameters
chldChild node
prntParent node

◆ info() [1/2]

template<class Node >
std::ostream& cluster::XY01< Node >::info ( std::ostream &  os) const
protected

Basic information about the far field X, Y.

◆ info() [2/2]

template<class Node >
std::ostream& cluster::XY01< Node >::info ( std::ostream &  os,
uint  idx 
) const

Detailed information about the unknown idx.

◆ info_()

template<class Node >
bool cluster::XY01< Node >::info_ ( std::ostream &  os,
uint  idx,
const Node *  nd 
) const
private

Information method used for recursive calls from info(os, idx)

◆ memory()

template<class Node >
float cluster::XY01< Node >::memory
inline

Size of memory used by XY01 in Bytes.

Definition at line 107 of file xy01.hh.

◆ operator[]()

template<class Node >
F* cluster::XY01< Node >::operator[] ( uint  i) const
inline

Returns i-th auxiliary vector.

Definition at line 93 of file xy01.hh.

◆ space()

template<class Node >
const concepts::Space<F>& cluster::XY01< Node >::space ( ) const
inline

Space.

Definition at line 97 of file xy01.hh.

◆ tree()

template<class Node >
const Tree<Node>& cluster::XY01< Node >::tree ( ) const
inline

Cluster tree.

Definition at line 99 of file xy01.hh.

◆ zero()

template<class Node >
void cluster::XY01< Node >::zero ( )

Sets auxiliary vectors to zero.

Member Data Documentation

◆ blksz_

template<class Node >
const uint cluster::XY01< Node >::blksz_
protected

Size of memory used for the expansion.

Definition at line 70 of file xy01.hh.

◆ col_

template<class Node >
XYCol* cluster::XY01< Node >::col_
protected

Expansion coefficients.

Definition at line 77 of file xy01.hh.

◆ exp_

template<class Node >
const ExpansionXY<F>& cluster::XY01< Node >::exp_
protected

Kernel expansion.

Definition at line 68 of file xy01.hh.

◆ fnc_

template<class Node >
XYFnc* cluster::XY01< Node >::fnc_
protected

Auxiliary vectors.

Definition at line 73 of file xy01.hh.

◆ fncval_

template<class Node >
F* cluster::XY01< Node >::fncval_
private

Definition at line 26 of file xy01.hh.

◆ ncol_

template<class Node >
uint cluster::XY01< Node >::ncol_
protected

Number of expansion coefficients.

Definition at line 79 of file xy01.hh.

◆ nfnc_

template<class Node >
const uint cluster::XY01< Node >::nfnc_
protected

Number of auxiliary vectors.

Definition at line 75 of file xy01.hh.

◆ tree_

template<class Node >
const Tree<Node>& cluster::XY01< Node >::tree_
private

Definition at line 25 of file xy01.hh.


The documentation for this class was generated from the following file:
Page URL: http://wiki.math.ethz.ch/bin/view/Concepts/WebHome
21 August 2020
© 2020 Eidgenössische Technische Hochschule Zürich