HLIBpro  2.3.1
Public Member Functions | List of all members
T2DMatrixVis Class Referenceabstract

Implements 2D based matrix visualisation.

#include <TMatrixVis.hh>

Inheritance diagram for T2DMatrixVis:
TMatrixVis TPDFMatrixVis TPSMatrixVis

Public Member Functions

 T2DMatrixVis ()
 construct matrix visualisation object
 
T2DMatrixVis & border (const bool b)
 turn on/off printing of matrix block border (default: on)
 
T2DMatrixVis & structure (const bool b)
 turn on/off printing of structure of matrix (default: on)
 
T2DMatrixVis & indexset (const bool b)
 turn on/off printing of indexsets (default: off)
 
T2DMatrixVis & id (const bool b)
 turn on/off printing of id (default: off)
 
T2DMatrixVis & nonempty (const bool b)
 turn on/off printing of only nonempty blocks (default: off)
 
T2DMatrixVis & only_local (const bool b)
 turn on/off printing of local/non-local matrix blocks (default: off)
 
T2DMatrixVis & entries (const bool b)
 turn on/off printing of matrix coefficients (default: off)
 
T2DMatrixVis & pattern (const bool b)
 turn on/off printing of sparsity pattern (default: off)
 
T2DMatrixVis & sparse_pattern (const bool b)
 turn on/off printing of sparsity pattern of sparse matrices only (default: off)
 
T2DMatrixVis & svd (const bool b)
 turn on/off printing of SVD of matrix-blocks (default: off)
 
T2DMatrixVis & rank_col (const bool b, const std::string &cmap="jet")
 turn on/off colouring matrix blocks according to rank (default: off)
 
T2DMatrixVis & max_size_ratio (const double r)
 
T2DMatrixVis & svd_ref (const double ref_max, const double ref_min=Limits::epsilon< double >())
 
virtual void print (const TMatrix *A, const std::string &filename) const
 print matrix A to file filename
 

Member Function Documentation

T2DMatrixVis& max_size_ratio ( const double  r)

set maximal allowed ratio of block size compared to largest block size (default: 1000); if ratio is exceeded, block will not be printed to limit file size for very large matrices

T2DMatrixVis& svd_ref ( const double  ref_max,
const double  ref_min = Limits::epsilon< double >() 
)

set value of largest/smallest singular value to compare with for each block;

  • if ref_max/ref_min ≤ 0, the largest/smallest local singular values per block are used
  • good choice for ref_max is ∥A∥₂