Algorithms in HLR are split into three different categories. Approximation algorithms are for low-rank approximation for the initial construction of hierarchical matrices and for their arithmetic. Arithmetic algorithms include all arithmetical functions, e.g., matrix multiplication or factorization, with specializations for different formats of hierarchical matrices. Finally, clustering algorithms define the initial partitioning of the row/column index sets used to construct the block partition of hierarchical matrices and have a major influence of the accuracy and efficiency of the H-matrix representation.


low-rank approximation algorithms


different forms of H-matrix arithmetic


algorithms for clustering and partitioning the matrix index sets