Skip to content
Toolbox for HODLR and HSS matrices in MATLAB
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
@hm
@hss
data
examples
private
tests
.travis.yml
LICENSE
README.md
cauchy_matvec.m
check_cluster_equality.m
chol_solve.m
compress_factors.m
ek_definite_splitting.m
ek_krylov.m
ek_lyap.m
ek_lyap_blkdiag.m
ek_struct.m
ek_sylv.m
ek_sylv_blkdiag.m
hm2hss.m
hmgallery.m
hmoption.m
hss2hm.m
hssgallery.m
hssoption.m
interpolative.m
interpolative_svd.m
lr_norm.m
rk_struct.m
rk_sylv.m
toeplitz_solve.m
ulv_solve.m

README.md

Hierarchical matrix toolbox

Build status

The hm-toolbox is a toolbox implementing the arithmetic of HODLR and HSS matrices in MATLAB.

The HODLR case is handled in the @hm class, and correspond to H-matrices with partitioning recursively done in 2 x 2 blocks, where the off-diagonal blocks are of low-rank. The HSS arithmetic uses the same partitioning (with nested bases), and is available through the @hss class.

Routines to compute matrix functions [1] and to solve matrix equations are included [1,2].

Chebfun2 is required for the construction of HODLR / HSS matrices which sample (piecewise) regular functions on a grid.

Installation instructions

To install the toolbox download the latest revision from Github by running

 git clone https://github.com/numpi/hm-toolbox.git

or downloading the ZIP file from the webpage github.com/numpi/hm-toolbox. Rename the folder to hm-toolbox if needed. Then, add it to your MATLAB path by running

 >> addpath /path/to/hm-toolbox

You are now ready to create new @hm and @hss objects. Check some examples in the examples/ folder.

References

  1. Massei, S., Palitta, D., & Robol, L. (2018). Solving Rank-Structured Sylvester and Lyapunov Equations. SIAM Journal on Matrix Analysis and Applications, 39(4), 1564-1590.
  2. Kressner, D., Massei, S., & Robol, L. (2017). Low-rank updates and a divide-and-conquer method for linear matrix equations. arXiv preprint arXiv:1712.04349.
You can’t perform that action at this time.