Go to the documentation of this file.
20 template <
class Fspc = concepts::Real>
36 for(uint i = 0; i <
blksz-1; i++) os <<
val[i] <<
", ";
58 inline int index_(
int ix,
int iy,
int iz)
const;
69 uint
blksz(uint
m)
const {
return (
m * (
m * (
m + 3) + 2)) / 6;}
70 uint
m()
const {
return m_;}
88 inline void apply(uint
m,
const FColExp* Fexp,
const Fspc src[],
97 return (((m+3)*m+2)*m + ((3-ix)*3*ix)) / 6 + m*ix + iy;
100 template <
class Fspc>
107 fit(m, z, F); ceby2poly(m, z, F);
115 template <
class Fspc>
120 fit(m, z, F); ceby2poly(m, z, F);
124 template <
class Fspc>
126 const Fspc src[], Fspc dst[])
const {
128 if (fexp) {
apply(m, fexp, src, dst);
return;}
uint memory(uint blksz) const
void ceby2poly(uint m, const concepts::Real3d &z, concepts::Real F[]) const
Conversion from Cebysev to monomial basis of interpolation polynom.
void info(std::ostream &os, uint blksz) const
void evaluate(uint m, const concepts::Real3d &z, FColExp *Fexp) const
uint blksz(uint m) const
Size of memory used for the expansion.
Class to hold expansion coefficients of type F.
concepts::Real * x_
Interpolation points.
#define conceptsException(exc)
Prepares an exception for throwing.
concepts::Real ** cebysev_
Values of the Cebysev polynomials.
concepts::Real * d_
Auxiliary vectors.
Class to hold the expansion coefficients.
FColF< concepts::Real > FColReal
void apply(uint m, const FColExp *Fexp, const Fspc src[], Fspc dst[]) const
CebysevLaplaceF(uint m, concepts::Real eta)
Constructor.
virtual FColReal * getCol(uint blksz) const
Allocates memory for the expansion coefficients.
void apply(uint m, const FColReal Fexp[], const Fspc src[], Fspc dst[]) const
Used for the cluster classes for the boundary element method.
Abstract class for the part of a kernel expansion.
concepts::Real eta_
Interpolation coefficient.
part of the Cebysev expansion of the Laplace kernel.
int index_(int ix, int iy, int iz) const
void fit(uint m, const concepts::Real3d &z, concepts::Real F[]) const
Interpolation.
concepts::Real * kernel_
values of the kernel function
Exception class to express a missing feature.
void apply(Operator< F > &op, const Matrix< H > &mX, Matrix< I > &mY)
Multiplication with a matrix.
virtual ~CebysevLaplaceF()
double Real
Type normally used for a floating point number.
Abstract class to hold the expansion coefficients.