cluster::ExpansionXY< F > Class Template Referenceabstract

Abstract class for the $X$ and the $Y$ part of a kernel expansion. More...

#include <expansion.hh>

Public Member Functions

virtual void apply (const XYColExpPtr *XY, const F src[], F dst[]) const =0
 Application of the expansion. More...
 
virtual uint blksz () const =0
 Size of memory used for the expansion. More...
 
virtual void evaluate (const concepts::Element< F > &elm, const concepts::Real3d &c, XYColExpPtr *XY[]) const =0
 Computation of the expansion coefficients. More...
 
virtual XYColExpgetCol (uint blksz, uint n) const =0
 Allocates memory for the expansion coefficients and sets it to zero. More...
 
virtual uint m () const =0
 Order of the expansion. More...
 
virtual void shift (const concepts::Real3d &z, const concepts::Cmplx src[], concepts::Cmplx dst[]) const =0
 
virtual void shift (const concepts::Real3d &z, const concepts::Real src[], concepts::Real dst[]) const =0
 Shifting the expansion. More...
 
virtual ~ExpansionXY ()
 

Detailed Description

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

Abstract class for the $X$ and the $Y$ part of a kernel expansion.

Parameters
FField of the space (Real or Cmplx)

Definition at line 98 of file expansion.hh.

Constructor & Destructor Documentation

◆ ~ExpansionXY()

template<class F = concepts::Real>
virtual cluster::ExpansionXY< F >::~ExpansionXY ( )
inlinevirtual

Definition at line 100 of file expansion.hh.

Member Function Documentation

◆ apply()

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

Application of the expansion.

Exceptions
MissingFeature
Parameters
XYExpansion coefficients
srcSource
dstDestination (output)

Implemented in cluster::TaylorY< concepts::Real >, cluster::MultipoleY< concepts::Real >, cluster::MultipoleX< concepts::Real >, and cluster::TaylorX< concepts::Real >.

◆ blksz()

template<class F = concepts::Real>
virtual uint cluster::ExpansionXY< F >::blksz ( ) const
pure virtual

◆ evaluate()

template<class F = concepts::Real>
virtual void cluster::ExpansionXY< F >::evaluate ( const concepts::Element< F > &  elm,
const concepts::Real3d c,
XYColExpPtr XY[] 
) const
pure virtual

Computation of the expansion coefficients.

Exceptions
MissingFeature
Parameters
elmElement
cCluster center
XYExpansion coefficients (output)

Implemented in cluster::TaylorY< concepts::Real >, cluster::MultipoleY< concepts::Real >, cluster::TaylorX< concepts::Real >, and cluster::MultipoleX< concepts::Real >.

◆ getCol()

template<class F = concepts::Real>
virtual XYColExp* cluster::ExpansionXY< F >::getCol ( uint  blksz,
uint  n 
) const
pure virtual

◆ m()

template<class F = concepts::Real>
virtual uint cluster::ExpansionXY< F >::m ( ) const
pure virtual

◆ shift() [1/2]

◆ shift() [2/2]

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

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