HLIBpro 3.1
Loading...
Searching...
No Matches
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 trunc_norm_t anorm_mode, const double arelative_eps, const double aabsolute_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
 
template<typename value_t >
const TTruncAccacc (const TMatrix< value_t > *) const
 return accuracy description for individual submatrix
 
virtual const TTruncAcc acc (const TIndexSet &, const TIndexSet &) const
 return accuracy description for individual subblock
 
const TTruncAccoperator() (const TBlockCluster *bc) const
 abbreviation via () operator
 
template<typename value_t >
const TTruncAccoperator() (const TMatrix< value_t > *M) const
 abbreviation via () operator
 
const TTruncAcc operator() (const TIndexSet &rowis, const TIndexSet &colis) const
 return accuracy description for individual submatrix
 
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
 
trunc_norm_t norm_mode () const
 return norm mode of truncation
 
TTruncAccoperator= (const TTruncAcc &ta)
 copy operator
 
virtual std::string to_string () const
 return string representation
 

Constructor & Destructor Documentation

◆ TTruncAcc() [1/5]

TTruncAcc ( )
inline

construct accuracy object for exact truncation

◆ TTruncAcc() [2/5]

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

construct accuracy object for fixed rank truncation

◆ TTruncAcc() [3/5]

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

construct accuracy object for fixed accuracy truncation

◆ TTruncAcc() [4/5]

TTruncAcc ( const trunc_norm_t  anorm_mode,
const double  arelative_eps,
const double  aabsolute_eps = CFG::Arith::abs_eps 
)
inline

construct accuracy object for fixed accuracy truncation

◆ TTruncAcc() [5/5]

TTruncAcc ( const TTruncAcc ta)
inline

copy constructor

Member Function Documentation

◆ trunc_rank()

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

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