cluster::DTaylorX< Fspc > Class Template Referenceabstract

Normal derivative of the $X$ part of the Taylor kernel expansion. More...

#include <taylor.hh>

Inheritance diagram for cluster::DTaylorX< Fspc >:
cluster::ExpansionXY< concepts::Real >

Public Member Functions

void apply (const XYColExpPtr *X, const Fspc src[], Fspc dst[]) const
 
virtual void apply (const XYColExpPtr *XY, const concepts::Real src[], concepts::Real dst[]) const=0
 Application of the expansion. More...
 
uint blksz () const
 
virtual uint blksz () const=0
 Size of memory used for the expansion. More...
 
 DTaylorX (uint m, uint gauss)
 Constructor. More...
 
void evaluate (const bem::Constant3d000< Fspc > &elm, const concepts::Real3d &c, XYColExpPtr *X[]) const
 
void evaluate (const bem::Constant3d001< Fspc > &elm, const concepts::Real3d &c, XYColExpPtr *X[]) const
 
void evaluate (const bem::Constant3d002< Fspc > &elm, const concepts::Real3d &c, XYColExpPtr *X[]) const
 
void evaluate (const bem::Linear3d000< Fspc > &elm, const concepts::Real3d &c, XYColExpPtr *X[]) const
 
virtual void evaluate (const concepts::Element< concepts::Real > &elm, const concepts::Real3d &c, XYColExpPtr *XY[]) const=0
 Computation of the expansion coefficients. More...
 
void evaluate (const concepts::Element< Fspc > &elm, const concepts::Real3d &c, XYColExpPtr *X[]) const
 Computation of the expansion coefficients. More...
 
void evaluate (const concepts::Real3d &z, const concepts::Unit3d &h, concepts::Real X[]) const
 Evaluation of the expansion coefficients of one point. More...
 
uint gauss () const
 
XYColRealgetCol (uint blksz, uint n) const
 Allocates memory for the expansion coefficients and sets it to zero. More...
 
uint m () const
 
virtual uint m () const=0
 Order of the expansion. More...
 
void shift (const concepts::Real3d &z, const concepts::Cmplx src[], concepts::Cmplx dst[]) const
 
void shift (const concepts::Real3d &z, const concepts::Real src[], concepts::Real dst[]) const
 Shifting the expansion coefficients. More...
 
 ~DTaylorX ()
 

Protected Attributes

Fspc * fee_
 
concepts::Realfoo_
 Auxiliary vectors. More...
 

Private Attributes

uint blksz_
 Memory used for expansion coefficients. More...
 
uint gauss_
 Number of quadrature points. More...
 
uint m_
 Expansion order. More...
 
TaylorX< Fspc > X_
 Expansion used for shift and apply. More...
 

Detailed Description

template<class Fspc = concepts::Real>
class cluster::DTaylorX< Fspc >

Normal derivative of the $X$ part of the Taylor kernel expansion.

Parameters
FspcField of the space (Real or Cmplx)

Definition at line 121 of file taylor.hh.

Constructor & Destructor Documentation

◆ DTaylorX()

template<class Fspc = concepts::Real>
cluster::DTaylorX< Fspc >::DTaylorX ( uint  m,
uint  gauss 
)

Constructor.

Parameters
mExpansion order
gaussNumber of quadrature points

◆ ~DTaylorX()

template<class Fspc = concepts::Real>
cluster::DTaylorX< Fspc >::~DTaylorX ( )
inline

Definition at line 145 of file taylor.hh.

Member Function Documentation

◆ apply() [1/2]

template<class Fspc >
void cluster::DTaylorX< Fspc >::apply ( const XYColExpPtr X,
const Fspc  src[],
Fspc  dst[] 
) const
inline
Exceptions
MissingFeature

Definition at line 209 of file taylor.hh.

◆ apply() [2/2]

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

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() [1/2]

template<class Fspc = concepts::Real>
uint cluster::DTaylorX< Fspc >::blksz ( ) const
inline

Definition at line 147 of file taylor.hh.

◆ blksz() [2/2]

virtual uint cluster::ExpansionXY< concepts::Real >::blksz ( ) const
pure virtualinherited

◆ evaluate() [1/7]

template<class Fspc = concepts::Real>
void cluster::DTaylorX< Fspc >::evaluate ( const bem::Constant3d000< Fspc > &  elm,
const concepts::Real3d c,
XYColExpPtr X[] 
) const
Exceptions
MissingFeature

◆ evaluate() [2/7]

template<class Fspc = concepts::Real>
void cluster::DTaylorX< Fspc >::evaluate ( const bem::Constant3d001< Fspc > &  elm,
const concepts::Real3d c,
XYColExpPtr X[] 
) const
Exceptions
MissingFeature

◆ evaluate() [3/7]

template<class Fspc = concepts::Real>
void cluster::DTaylorX< Fspc >::evaluate ( const bem::Constant3d002< Fspc > &  elm,
const concepts::Real3d c,
XYColExpPtr X[] 
) const
Exceptions
MissingFeature

◆ evaluate() [4/7]

template<class Fspc = concepts::Real>
void cluster::DTaylorX< Fspc >::evaluate ( const bem::Linear3d000< Fspc > &  elm,
const concepts::Real3d c,
XYColExpPtr X[] 
) const
Exceptions
MissingFeature

◆ evaluate() [5/7]

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

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 >.

◆ evaluate() [6/7]

template<class Fspc = concepts::Real>
void cluster::DTaylorX< Fspc >::evaluate ( const concepts::Element< Fspc > &  elm,
const concepts::Real3d c,
XYColExpPtr X[] 
) const

Computation of the expansion coefficients.

Exceptions
MissingFeature
Parameters
elmElement
cCluster center
XExpansion coefficients (output)

◆ evaluate() [7/7]

template<class Fspc = concepts::Real>
void cluster::DTaylorX< Fspc >::evaluate ( const concepts::Real3d z,
const concepts::Unit3d h,
concepts::Real  X[] 
) const

Evaluation of the expansion coefficients of one point.

Parameters
zPoint
hNormal of the element containing the point
XExpansion coefficients

◆ gauss()

template<class Fspc = concepts::Real>
uint cluster::DTaylorX< Fspc >::gauss ( ) const
inline

Definition at line 149 of file taylor.hh.

◆ getCol()

template<class Fspc >
XYColReal * cluster::DTaylorX< Fspc >::getCol ( uint  blksz,
uint  n 
) const
inlinevirtual

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

Parameters
blkszBlock size of the expansion
nNumber of expansions

Implements cluster::ExpansionXY< concepts::Real >.

Definition at line 190 of file taylor.hh.

◆ m() [1/2]

template<class Fspc = concepts::Real>
uint cluster::DTaylorX< Fspc >::m ( ) const
inline

Definition at line 148 of file taylor.hh.

◆ m() [2/2]

◆ shift() [1/2]

template<class Fspc >
void cluster::DTaylorX< Fspc >::shift ( const concepts::Real3d z,
const concepts::Cmplx  src[],
concepts::Cmplx  dst[] 
) const
inlinevirtual

Implements cluster::ExpansionXY< concepts::Real >.

Definition at line 202 of file taylor.hh.

◆ shift() [2/2]

template<class Fspc >
void cluster::DTaylorX< Fspc >::shift ( const concepts::Real3d z,
const concepts::Real  src[],
concepts::Real  dst[] 
) const
inlinevirtual

Shifting the expansion coefficients.

Implements cluster::ExpansionXY< concepts::Real >.

Definition at line 195 of file taylor.hh.

Member Data Documentation

◆ blksz_

template<class Fspc = concepts::Real>
uint cluster::DTaylorX< Fspc >::blksz_
private

Memory used for expansion coefficients.

Definition at line 129 of file taylor.hh.

◆ fee_

template<class Fspc = concepts::Real>
Fspc* cluster::DTaylorX< Fspc >::fee_
protected

Definition at line 136 of file taylor.hh.

◆ foo_

template<class Fspc = concepts::Real>
concepts::Real* cluster::DTaylorX< Fspc >::foo_
protected

Auxiliary vectors.

Definition at line 135 of file taylor.hh.

◆ gauss_

template<class Fspc = concepts::Real>
uint cluster::DTaylorX< Fspc >::gauss_
private

Number of quadrature points.

Definition at line 131 of file taylor.hh.

◆ m_

template<class Fspc = concepts::Real>
uint cluster::DTaylorX< Fspc >::m_
private

Expansion order.

Definition at line 127 of file taylor.hh.

◆ X_

template<class Fspc = concepts::Real>
TaylorX<Fspc> cluster::DTaylorX< Fspc >::X_
private

Expansion used for shift and apply.

Definition at line 124 of file taylor.hh.


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