20 template <
class F = concepts::Real>
42 uint
blksz()
const {
return blksz_;}
43 uint
m()
const {
return m_;}
96 shift<concepts::Real>(z, src, dst, 0);
103 if (X) {apply(X->value(), src, dst);
return;}
#define conceptsException(exc)
void shift(const concepts::Real3d &z, const concepts::Real src[], concepts::Real dst[]) const
Shifting the expansion coefficients.
void evaluate(const concepts::Real3d &z, concepts::Real X[]) const
void evaluate(const bem::Constant3d002< F > &elm, const concepts::Real3d &c, XYColExpPtr *X[]) const
void evaluate(const concepts::Element< F > &elm, const concepts::Real3d &c, XYColExpPtr *X[]) const
uint m() const
Order of the expansion.
XYColReal * getCol(uint blksz, uint n) const
void evaluate(const bem::Constant3d001< F > &elm, const concepts::Real3d &c, XYColExpPtr *X[]) const
uint blksz() const
Size of memory used for the expansion.
MultipoleX(uint m, uint gauss)
void evaluate(const bem::Dirac3d000< F > &elm, const concepts::Real3d &c, XYColExpPtr *X[]) const
void apply(const concepts::Real X[], const F src[], F dst[]) const
void apply(const XYColExpPtr *Xexp, const F src[], F dst[]) const
void evaluate(const bem::Linear3d000< F > &elm, const concepts::Real3d &c, XYColExpPtr *X[]) const
void evaluate(const bem::Constant3d000< F > &elm, const concepts::Real3d &c, XYColExpPtr *X[]) const
std::complex< Real > Cmplx
Type for a complex number. It also depends on the setting of Real.