1 #ifndef MATH_GlobalMultiLevelsPolynomialToeplitzMatrix_H 2 #define MATH_GlobalMultiLevelsPolynomialToeplitzMatrix_H 120 inline static SP::MATH_GlobalMultiLevelsPolynomialToeplitzMatrix
New() {
This class is multi level toeplitz matrix whose product with vector is based on FFT; It delas with th...
Definition: MATH_MultiLevelsFFTToeplitzMatrix.h:24
virtual SP::MATH_MultiLevelsToeplitzMatrix NewInstance() const
new instance
Definition: MATH_GlobalMultiLevelsPolynomialToeplitzMatrix.h:130
virtual void buildRowLeadingDimensions()
build the row indices
Definition: MATH_GlobalMultiLevelsPolynomialToeplitzMatrix.cpp:50
This class manages the execution of Fast Fourier Transform. several fast Fourier Transforms may be ap...
Definition: FFTW_FFT.h:28
This class is multi levels toeplitz matrix. The matrix at level k is composed by toeplitz block matr...
Definition: MATH_MultiLevelsToeplitzMatrix.h:57
virtual void buildColumnLeadingDimensions()
build the column leading dimensions
Definition: MATH_GlobalMultiLevelsPolynomialToeplitzMatrix.cpp:17
SP_OBJECT(MATH_GlobalMultiLevelsPolynomialToeplitzMatrix)
MATH_GlobalMultiLevelsPolynomialToeplitzMatrix(void)
create a multi level toeplitz matrix
Definition: MATH_GlobalMultiLevelsPolynomialToeplitzMatrix.cpp:4
virtual void copy(const MATH_MultiLevelsToeplitzMatrix &mat)
copy the instance
Definition: MATH_MultiLevelsToeplitzMatrix.cpp:29
virtual ~MATH_GlobalMultiLevelsPolynomialToeplitzMatrix(void)
destroy a multi level toeplitz matrix
Definition: MATH_GlobalMultiLevelsPolynomialToeplitzMatrix.cpp:12
This class is a multi level toeplitz matrix whose leaf block are dense matrix of dimension D and with...
Definition: MATH_GlobalMultiLevelsPolynomialToeplitzMatrix.h:84
virtual void copy(const MATH_MultiLevelsToeplitzMatrix &mat)
copy the instance mat
Definition: MATH_GlobalMultiLevelsPolynomialToeplitzMatrix.h:138
#define tUIndex
Definition: types.h:126
virtual void multiply(const FFTW_FFT &Y)
multiply this by the DFTs Y
Definition: FFTW_FFT.h:280
virtual void buildSpectralVectorProjector(FFTW_FFT &proj) const
build the projector of vector in spectral spce
Definition: MATH_GlobalMultiLevelsPolynomialToeplitzMatrix.h:160
virtual void vectorProductInSpectralSpace(const FFTW_FFT &A, FFTW_FFT &Z) const
make the vector product in spectral space
Definition: MATH_GlobalMultiLevelsPolynomialToeplitzMatrix.h:194
virtual void recoverCanonicalSpace()
recover the canonical space from the spectral space
Definition: MATH_GlobalMultiLevelsPolynomialToeplitzMatrix.cpp:130
virtual void buildSpectralVectorProjector(FFTW_FFT &proj) const
build the projector of vector in spectral space
Definition: MATH_MultiLevelsFFTToeplitzMatrix.h:194
#define tReal
Definition: types.h:118
static SP::MATH_GlobalMultiLevelsPolynomialToeplitzMatrix New()
build a new instance of class
Definition: MATH_GlobalMultiLevelsPolynomialToeplitzMatrix.h:120
virtual void buildSpectralSpace()
build the spectral space
Definition: MATH_GlobalMultiLevelsPolynomialToeplitzMatrix.cpp:83
virtual void recoverFromSpectralSpace(const tUIndex &N, tReal *X) const
recover from multi levels space to the initial space
Definition: MATH_GlobalMultiLevelsPolynomialToeplitzMatrix.cpp:189
virtual void projectIntoSpectralSpace(const tUIndex &N, const tReal *X) const
project the vector X from initial space to multi levels space
Definition: MATH_GlobalMultiLevelsPolynomialToeplitzMatrix.cpp:144
class Free introduced for deleting a smart pointer
Definition: CORE_Object.h:141
DEFINE_SPTR(MATH_GlobalMultiLevelsPolynomialToeplitzMatrix)