HLIBpro  2.9.1
TTruncAcc Class Reference

Defines accuracy for truncation of low rank blocks.

#include <TTruncAcc.hh>

Inheritance diagram for TTruncAcc:
TBlockTruncAcc

Public Member Functions

 TTruncAcc ()
 
 TTruncAcc (const int k, const double absolute_eps=CFG::Arith::abs_eps)
 
 TTruncAcc (const double relative_eps, const double absolute_eps=CFG::Arith::abs_eps)
 
 TTruncAcc (const TTruncAcc &ta)
 
template<typename T >
size_t trunc_rank (const BLAS::Vector< T > &sv) const
 
virtual const TTruncAccacc (const TBlockCluster *) const
 return accuracy description for individual subblock
 
virtual const TTruncAccacc (const TMatrix *) const
 return accuracy description for individual submatrix
 
const TTruncAccoperator() (const TBlockCluster *bc) const
 abbreviation via () operator
 
const TTruncAccoperator() (const TMatrix *M) const
 abbreviation via () operator
 
size_t rank () const
 return fixed rank (nonnegative!)
 
size_t max_rank () const
 return maximal rank (nonnegative!)
 
bool has_max_rank () const
 return true if maximal truncation rank was defined
 
double rel_eps () const
 return relative accuracy
 
double abs_eps () const
 return absolute accuracy
 
bool is_fixed_rank () const
 return true if accuracy is fixed rank
 
bool is_fixed_prec () const
 return true if accuracy is fixed precision
 
bool is_exact () const
 return true if accuracy is "exact"
 
void set_max_rank (const int k)
 set maximal rank in truncation
 
TTruncAccoperator= (const TTruncAcc &ta)
 copy operator
 
virtual std::string to_string () const
 return string representation
 

Constructor & Destructor Documentation

◆ TTruncAcc() [1/4]

TTruncAcc ( )
inline

construct accuracy object for exact truncation

◆ TTruncAcc() [2/4]

TTruncAcc ( const int  k,
const double  absolute_eps = CFG::Arith::abs_eps 
)
inline

construct accuracy object for fixed rank truncation

◆ TTruncAcc() [3/4]

TTruncAcc ( const double  relative_eps,
const double  absolute_eps = CFG::Arith::abs_eps 
)
inline

construct accuracy object for fixed accuracy truncation

◆ TTruncAcc() [4/4]

TTruncAcc ( const TTruncAcc ta)
inline

copy constructor

Member Function Documentation

◆ trunc_rank()

size_t trunc_rank ( const BLAS::Vector< T > &  sv) const

return truncation rank based on internal strategy and given singular values sv