33 void constructor_(
const Node* chld,
const Node* prnt);
35 bool info_(std::ostream& os, uint idx,
const Node* nd)
const;
82 std::ostream&
info(std::ostream& os)
const;
95 inline float memory()
const;
103 std::ostream&
info(std::ostream& os, uint idx)
const;
109 + (
float)ncol_ * (
sizeof(
XYCol) + (col_ ? col_->val->memory() : 0))
110 + (float)nfnc_ * (
sizeof(
XYFnc) + blksz_ *
sizeof(F));
123 typedef typename ClstX<Node>::F F;
133 inline float memory()
const;
145 inline std::ostream&
info(std::ostream& os)
const;
149 inline X01<Node>::X01(
const Tree<Node>& tree,
const ExpansionXY<F>& exp)
150 : XY01<Node>(tree, exp) {
172 os <<
", mem = " << memory() / 1024.0 <<
"KB)";
191 typedef typename ClstY<Node>::F F;
201 inline float memory()
const;
213 inline std::ostream&
info(std::ostream& os)
const;
217 inline Y01<Node>::Y01(
const Tree<Node>& tree,
const ExpansionXY<F>& exp)
218 : XY01<Node>(tree, exp) {
240 os <<
", mem = " << memory() / 1024.0 <<
"KB)";
Node::CF F
Field of the node (Real or Cmplx)
const concepts::Space< F > & space() const
Space of the tree.
std::ostream & info(std::ostream &os) const
Returns information in an output stream.
ClstX< Node >::Traits Traits
Interface for the far field X.
void zero()
Sets the auxiliary vectors to zero.
const Tree< Node > & tree() const
Cluster tree.
float memory() const
Size of memory used by X01 in Bytes.
const concepts::Space< F > & space() const
Space.
F * operator[](uint i) const
const concepts::Space< F > & space() const
Space.
float memory() const
Size of memory used by XY01 in Bytes.
const ExpansionXY< F > & exp_
Kernel expansion.
XY01(const Tree< Node > &tree, const ExpansionXY< F > &exp)
const uint blksz_
Size of memory used for the expansion.
const uint nfnc_
Number of auxiliary vectors.
const Tree< Node > & tree() const
Cluster tree.
uint ncol_
Number of expansion coefficients.
std::ostream & info(std::ostream &os, uint idx) const
Detailed information about the unknown idx.
F * operator[](uint i) const
Returns i-th auxiliary vector.
void zero()
Sets auxiliary vectors to zero.
std::ostream & info(std::ostream &os) const
Basic information about the far field X, Y.
XYFnc * fnc_
Auxiliary vectors.
XYCol * col_
Expansion coefficients.
void zero()
Sets the auxiliary vectors to zero.
ClstY< Node >::Traits Traits
Interface for the far field Y.
F * operator[](uint i) const
float memory() const
Size of memory used by Y01 in Bytes.
const Tree< Node > & tree() const
Cluster tree.
const concepts::Space< F > & space() const
Space.
std::ostream & info(std::ostream &os) const
Returns information in an output stream.
std::string typeOf(const T &t)
XYCol * lnk
Coefficients of next DoF.
F * fncval
Pointer to auxiliary vector.
XYCol(XYColExp *value)
Constructor.
XYColExp * val
Vector of expansion coefficients.
F * val
One auxiliary vector.
concepts::Real3d z
Shift vector.
F * pval
Auxiliary vector of parent cluster.