Class xlifepp::TensorKernel#

class TensorKernel : public xlifepp::Kernel#

Public Functions

inline TensorKernel()#

default constructor

template<typename T>
TensorKernel(const SpectralBasis&, const Matrix<T>&, bool = false)#

constructor from spectral basis with one family and a matrix

template<typename T>
TensorKernel(const SpectralBasis&, const Matrix<T>&, const SpectralBasis&)#

constructor from spectral basis with two families and a matrix

template<typename T>
TensorKernel(const SpectralBasis&, const std::vector<T>&, bool = false)#

constructor from spectral basis with one family and a vector (matrix)

template<typename T>
TensorKernel(const SpectralBasis&, const std::vector<T>&, const SpectralBasis&)#

constructor from spectral basis with two families and a vector (matrix)

template<typename T>
TensorKernel(const std::vector<TermVector>&, const Matrix<T>&, bool = false)#

constructor with one family of TermVectors and a matrix

template<typename T>
TensorKernel(const std::vector<TermVector>&, const Matrix<T>&, const std::vector<TermVector>&)#

constructor with two families of TermVectors and a matrix

template<typename T>
TensorKernel(const std::vector<TermVector>&, const std::vector<T>&, bool = false)#

constructor with one family of TermVectors and a vector (matrix)

template<typename T>
TensorKernel(const std::vector<TermVector>&, const std::vector<T>&, const std::vector<TermVector>&)#

constructor with two families of TermVectors and a vector (matrix)

TensorKernel(const TensorKernel&)#

copy constructor with full copy of SpectralBasis and matrix

clone current kernel (virtual)

template<typename T>
TensorKernel(const Unknown&, const Matrix<T>&, bool = false)#

constructor from unknown with one family and a matrix

template<typename T>
TensorKernel(const Unknown&, const Matrix<T>&, const Unknown&)#

constructor from unknown with two families and a matrix

template<typename T>
TensorKernel(const Unknown&, const std::vector<T>&, bool = false)#

constructor from unknown with one family and a vector (matrix)

template<typename T>
TensorKernel(const Unknown&, const std::vector<T>&, const Unknown&)#

constructor from unknown with two families and a vector (matrix)

template<typename T>
TensorKernel(Function, const Matrix<T>&, bool = false)#

constructor with one family of functions and a matrix

template<typename T>
TensorKernel(Function, const Matrix<T>&, Function)#

constructor with two families of functions and a matrix

template<typename T>
TensorKernel(Function, const std::vector<T>&, bool = false)#

constructor with one family of functions and a vector (matrix)

constructor with one family of functions and a vector(matrix)

template<typename T>
TensorKernel(Function, const std::vector<T>&, Function)#

constructor with two families of functions and a vector (matrix)

constructor with two families of functions and a vector(matrix)

~TensorKernel()#

destructor

virtual TensorKernel *clone() const#

clone current tensor kernel

inline dimen_t dimOfPhi() const#

returns dimension of phi_p

inline dimen_t dimOfPsi() const#

returns dimension of psi_p

inline virtual dimPair dims() const#

returns (phi_p dim , psi_p dim)

inline virtual bool isSymbolic() const#

returns true is kernel is symbolic

template<typename T>
T kernelProduct(number_t, const T&) const#

return A_m*v (n=0,…)

template<typename T>
T kernelProduct(number_t, number_t, const T&) const#

return A_mn*v (n=0,…,m=0,…)

inline number_t nbOfPhi() const#

returns number of phi_p

inline number_t nbOfPsi() const#

returns number of psi_p

inline bool phiIsAnalytic() const#

returns true if phi_p is analytic

virtual void print(std::ostream&) const#

print utilities

inline bool psiIsAnalytic() const#

returns true if psi_p is analytic

inline bool sameBasis() const#

returns true if phi_p==psi_p

virtual StrucType strucType() const#

return kernel structure type (_scalar, _vector or _matrix)

inline virtual TensorKernel *tensorKernel()#

downcast to tensorkernel

inline virtual const TensorKernel *tensorKernel() const#

downcast methods

inline virtual KernelType type() const#

returns kernel type

virtual ValueType valueType() const#

return kernel value type (_real or _complex)

inline const VectorEntry &vectorEntry() const#

accessors

Public Members

bool freeBasis#

if true, delete SpectralBasis object

bool isConjugate#

conjugate phi_p in computation (default=false)

bool isDiag#

true if matrix is a diagonal matrix (assumed M=N)

Function xmap#

geometric transformation applied to point x

Function ymap#

geometric transformation applied to point y