HLIBpro  2.8.1
TACAPlus< T > Class Template Reference

Implements ACA+, which corrects some of the deficits of the original ACA algorithm. More...

#include <TLowRankApx.hh>

Inheritance diagram for TACAPlus< T >:
TACA< T > TLowRankApx

Additional Inherited Members

- Public Member Functions inherited from TACA< T >
virtual TMatrixbuild (const TBlockCluster *cl, const TTruncAcc &acc) const
virtual TMatrixbuild (const TBlockIndexSet &block_is, const TTruncAcc &acc) const
virtual bool has_statistics () const
 indicate if algorithm provides statistics

Detailed Description

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

     The crucial point in the ACA algorithm is the search for suitable crosses (pairs of
     rows and columns) to be subtracted from the matrix. To keep costs linear in the
     dimension of the block, only some matrix entries may be checked, which may lead
     to a breakdown of the algorithm before the user defined accuracy was reached.

     ACA+ implements a more sophisticated pivot search, which eliminates some of the
     cases where the original ACA fails to compute adequate low-rank approximations.
     Nevertheless, the computational costs are only slightly higher than ACA.