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

Public Member Functions | Private Attributes
cluster::MultipoleY< F > Class Template Reference

$Y$ part of the Multipole kernel expansion More...

#include <multipoleY.hh>

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

List of all members.

Public Member Functions

void apply (const concepts::Real Y[], const F src[], F dst[]) const
void apply (const XYColExpPtr *Y, const F src[], F dst[]) const
 Application of the expansion.
uint blksz () const
 Size of memory used for the expansion.
void evaluate (const bem::Constant3d001< F > &elm, const concepts::Real3d &c, XYColExpPtr *Y[]) const
void evaluate (const bem::Constant3d002< F > &elm, const concepts::Real3d &c, XYColExpPtr *Y[]) const
void evaluate (const bem::Dirac3d000< F > &elm, const concepts::Real3d &c, XYColExpPtr *Y[]) const
void evaluate (const bem::Linear3d000< F > &elm, const concepts::Real3d &c, XYColExpPtr *Y[]) const
void evaluate (const concepts::Real3d &z, concepts::Real Y[]) const
 Evaluation of the expansion coefficients of one point.
void evaluate (const concepts::Element< F > &elm, const concepts::Real3d &c, XYColExpPtr *Y[]) const
 Computation of the expansion coefficients.
void evaluate (const bem::Constant3d000< F > &elm, const concepts::Real3d &c, XYColExpPtr *Y[]) const
XYColRealgetCol (uint blksz, uint n) const
 Allocates memory for the expansion coefficients and sets it to zero.
uint m () const
 Order of the expansion.
 MultipoleY (uint m, uint gauss)
 Constructor.
template<class FF >
void shift (const concepts::Real3d &z, const FF src[], FF dst[], uint foo) const
void shift (const concepts::Real3d &z, const concepts::Real src[], concepts::Real dst[]) const
 Shifting the expansion.
void shift (const concepts::Real3d &z, const concepts::Cmplx src[], concepts::Cmplx dst[]) const
 ~MultipoleY ()

Private Attributes

uint blksz_
 Memory used for expansion coefficients.
concepts::Realfoo_
 Auxiliary vector.
uint gauss_
 Number of quadrature points.
uint m_
 Expansion order.

Detailed Description

template<class F = concepts::Real>
class cluster::MultipoleY< F >

$Y$ part of the Multipole kernel expansion

Parameters:
FField of the space (Real or Cmplx)

Definition at line 19 of file multipoleY.hh.


Constructor & Destructor Documentation

template<class F = concepts::Real>
cluster::MultipoleY< F >::MultipoleY ( uint  m,
uint  gauss 
)

Constructor.

Parameters:
mExpansion order
gaussNumber of quadrature points
template<class F = concepts::Real>
cluster::MultipoleY< F >::~MultipoleY ( ) [inline]

Definition at line 38 of file multipoleY.hh.


Member Function Documentation

template<class F = concepts::Real>
void cluster::MultipoleY< F >::apply ( const concepts::Real  Y[],
const F  src[],
dst[] 
) const
template<class F >
void cluster::MultipoleY< F >::apply ( const XYColExpPtr XY,
const F  src[],
dst[] 
) const [inline, virtual]

Application of the expansion.

Exceptions:
MissingFeature
Parameters:
XYExpansion coefficients
srcSource
dstDestination (output)

Implements cluster::ExpansionXY< F >.

Definition at line 96 of file multipoleY.hh.

Here is the call graph for this function:

template<class F = concepts::Real>
uint cluster::MultipoleY< F >::blksz ( ) const [inline, virtual]

Size of memory used for the expansion.

Implements cluster::ExpansionXY< F >.

Definition at line 40 of file multipoleY.hh.

template<class F = concepts::Real>
void cluster::MultipoleY< F >::evaluate ( const bem::Linear3d000< F > &  elm,
const concepts::Real3d c,
XYColExpPtr Y[] 
) const
Exceptions:
MissingFeature
template<class F = concepts::Real>
void cluster::MultipoleY< F >::evaluate ( const concepts::Real3d z,
concepts::Real  Y[] 
) const

Evaluation of the expansion coefficients of one point.

Parameters:
zPoint
YExpansion coefficients
template<class F = concepts::Real>
void cluster::MultipoleY< F >::evaluate ( const concepts::Element< F > &  elm,
const concepts::Real3d c,
XYColExpPtr Y[] 
) const [virtual]

Computation of the expansion coefficients.

Exceptions:
MissingFeature
Parameters:
elmElement
cCluster center
YExpansion coefficients (output)

Implements cluster::ExpansionXY< F >.

template<class F = concepts::Real>
void cluster::MultipoleY< F >::evaluate ( const bem::Dirac3d000< F > &  elm,
const concepts::Real3d c,
XYColExpPtr Y[] 
) const
Exceptions:
MissingFeature
template<class F = concepts::Real>
void cluster::MultipoleY< F >::evaluate ( const bem::Constant3d000< F > &  elm,
const concepts::Real3d c,
XYColExpPtr Y[] 
) const
Exceptions:
MissingFeature
template<class F = concepts::Real>
void cluster::MultipoleY< F >::evaluate ( const bem::Constant3d001< F > &  elm,
const concepts::Real3d c,
XYColExpPtr Y[] 
) const
Exceptions:
MissingFeature
template<class F = concepts::Real>
void cluster::MultipoleY< F >::evaluate ( const bem::Constant3d002< F > &  elm,
const concepts::Real3d c,
XYColExpPtr Y[] 
) const
Exceptions:
MissingFeature
template<class F >
XYColReal * cluster::MultipoleY< F >::getCol ( uint  blksz,
uint  n 
) const [inline, virtual]

Allocates memory for the expansion coefficients and sets it to zero.

Parameters:
blkszBlock size of the expansion
nNumber of expansions

Implements cluster::ExpansionXY< F >.

Definition at line 84 of file multipoleY.hh.

template<class F = concepts::Real>
uint cluster::MultipoleY< F >::m ( ) const [inline, virtual]

Order of the expansion.

Implements cluster::ExpansionXY< F >.

Definition at line 41 of file multipoleY.hh.

template<class F = concepts::Real>
template<class FF >
void cluster::MultipoleY< F >::shift ( const concepts::Real3d z,
const FF  src[],
FF  dst[],
uint  foo 
) const
template<class F >
void cluster::MultipoleY< F >::shift ( const concepts::Real3d z,
const concepts::Real  src[],
concepts::Real  dst[] 
) const [inline, virtual]

Shifting the expansion.

Parameters:
zShifting vector
srcOld expansion coefficients
dstNew expansion coefficients (output)

Implements cluster::ExpansionXY< F >.

Definition at line 89 of file multipoleY.hh.

template<class F = concepts::Real>
void cluster::MultipoleY< F >::shift ( const concepts::Real3d z,
const concepts::Cmplx  src[],
concepts::Cmplx  dst[] 
) const [virtual]

Member Data Documentation

template<class F = concepts::Real>
uint cluster::MultipoleY< F >::blksz_ [private]

Memory used for expansion coefficients.

Definition at line 24 of file multipoleY.hh.

template<class F = concepts::Real>
concepts::Real* cluster::MultipoleY< F >::foo_ [private]

Auxiliary vector.

Definition at line 29 of file multipoleY.hh.

template<class F = concepts::Real>
uint cluster::MultipoleY< F >::gauss_ [private]

Number of quadrature points.

Definition at line 26 of file multipoleY.hh.

template<class F = concepts::Real>
uint cluster::MultipoleY< F >::m_ [private]

Expansion order.

Definition at line 22 of file multipoleY.hh.


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

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