HLIBpro  2.5.1
THCA< T >::TGeneratorFn Class Referenceabstract

class defining kernel generator function used by HCA

#include <TLowRankApx.hh>

Inheritance diagram for THCA< T >::TGeneratorFn:
TPermHCAGeneratorFn< T_val > TPermHCAGeneratorFn< complex > TPermHCAGeneratorFn< real > TQuadHCAGenFn< T_ansatzsp, T_testsp, T_val > TQuadHCAGenFn< T_ansatzsp, T_testsp, complex > TQuadHCAGenFn< T_ansatzsp, T_testsp, real > TInvarBasisQuadHCAGenFn< T_ansatzsp, T_testsp, T_val > TInvarBasisQuadHCAGenFn< T_ansatzsp, T_testsp, complex > TInvarBasisQuadHCAGenFn< T_ansatzsp, T_testsp, real > THelmholtzDLPGenFn< T_ansatzsp, T_testsp > THelmholtzSLPGenFn< T_ansatzsp, T_testsp > TLaplaceDLPGenFn< T_ansatzsp, T_testsp > TLaplaceSLPGenFn< T_ansatzsp, T_testsp >

Public Member Functions

virtual bool is_complex () const
 indicate complex nature of function
 
virtual value_t eval (const T3Point &x, const T3Point &y) const =0
 
virtual void integrate_dx (const TIndexSet &is, const std::vector< T3Point > &pts, BLAS::Matrix< value_t > &matrix) const =0
 
virtual void integrate_dy (const TIndexSet &is, const std::vector< T3Point > &pts, BLAS::Matrix< value_t > &matrix) const =0
 

Member Function Documentation

◆ eval()

virtual value_t eval ( const T3Point &  x,
const T3Point &  y 
) const
pure virtual

◆ integrate_dx()

virtual void integrate_dx ( const TIndexSet is,
const std::vector< T3Point > &  pts,
BLAS::Matrix< value_t > &  matrix 
) const
pure virtual

Evaluate $ \int \phi_i(x) D_x \gamma(x, y_{l}) dx$ for i ∈ is and points $ y_{l} $ defined by pts. Store results in matrix at index (i,l).

◆ integrate_dy()

virtual void integrate_dy ( const TIndexSet is,
const std::vector< T3Point > &  pts,
BLAS::Matrix< value_t > &  matrix 
) const
pure virtual

Evaluate $ \int \phi_j(y) D_y \gamma(x_{l}, y) dy$ for j ∈ is and points $ x_{l} $ defined by pts. Store results in matrix at index (j,l).