HLIBpro  2.6
TSVDLRApx< T > Class Template Reference

Uses exact SVD to compute low rank approximation (WARNING: O(n³) complexity) More...

#include <TLowRankApx.hh>

Inheritance diagram for TSVDLRApx< T >:
TLowRankApx

Public Member Functions

virtual TMatrixbuild (const TBlockCluster *bcl, const TTruncAcc &acc) const
 
virtual TMatrixbuild (const TBlockIndexSet &block_is, const TTruncAcc &acc) const
 
- Public Member Functions inherited from TLowRankApx
virtual bool has_statistics () const
 indicate if algorithm provides statistics
 

Detailed Description

template<typename T>
class HLIB::TSVDLRApx< T >

TSVDLRApx uses singular value decomposition to approximate a given matrix block. The resulting low rank matrix is the best approximation with respect to the given accuracy and rank. However, the computational costs are cubic in the dimension of the matrix block.

Member Function Documentation

◆ build() [1/2]

virtual TMatrix* build ( const TBlockCluster bcl,
const TTruncAcc acc 
) const
virtual

build low rank matrix for block cluster bcl with rank defined by accuracy acc

Implements TLowRankApx.

◆ build() [2/2]

virtual TMatrix* build ( const TBlockIndexSet block_is,
const TTruncAcc acc 
) const
virtual

build low rank matrix for block index set block_is with rank defined by accuracy acc